Skip to content

ops: one-off rotation of io.pilot.wallet's publisher pin - #130

Merged
TeoSlayer merged 1 commit into
mainfrom
ops/rotate-wallet-publisher
Oct 8, 2026
Merged

TeoSlayer merged 1 commit into
mainfrom
ops/rotate-wallet-publisher

Conversation

@TeoSlayer

Copy link
Copy Markdown
Contributor

The key the catalogue pins for io.pilot.wallet (ed25519:VF8fdEP…) is held by no workflow. Wallet 0.4.0 (all four platforms, plus key recovery) could not be signed with it: its release stopped at signing.

  • cmd/rotate-publisher runs the same admin-gated rotation that the publish-server's /admin/rotate-key does (publish.RotatePublisher). It re-points the pin and opens the catalogue PR, re-signed with CATALOG_SIGN_KEY.
  • rotate-wallet-publisher.yml (manual only) runs it for io.pilot.wallet only, re-pinning to ed25519:xAD0ai5GYWo8v0cmdhytZYRjSbi2edgEthWkBnO+1ik=. That key is held as pilot-protocol/wallet's PILOT_APP_PUBLISHER_KEY. The app id and key are fixed in the file, so it can't re-pin anything else.

I'll delete the workflow once the rotation PR has merged. Wallet 0.4.0 then goes through the normal submission pipeline, signed with the new key.

🤖 Generated with Claude Code

The key the catalogue pins for the wallet is held by no workflow, so
wallet 0.4.0 (all four platforms, key recovery) could not be signed. A
small command runs the same admin-gated rotation the publish-server's
/admin/rotate-key does (publish.RotatePublisher, re-signed with
CATALOG_SIGN_KEY), and a manual workflow runs it for io.pilot.wallet
only, with the new key fixed in the file. The workflow is to be deleted
once the rotation has merged.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
@TeoSlayer
TeoSlayer merged commit a1472e8 into main Oct 8, 2026
6 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant