You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
trust anchor: repoint VerifyTrustAnchor at the catalogue pin (not a static list)
Addresses review on #25: keep the anchor mechanism, but anchor it to the
release-signed catalogue (the root of trust) instead of a static, env-populated
publisher allow-list that nothing populated (so #23 enforcement skipped every
catalogue app).
- Manifest.VerifyTrustAnchor(cataloguePublisher string): confirms Store.Publisher
equals the publisher key the catalogue pins for the app. Empty/unpinned =>
fail-closed. (Symbol kept, repointed — no silent self-signed acceptance.)
- Remove the unused package-global manifest.TrustedPublishers.
- Config.CataloguePublisher(appID) (pub string, pinned bool): the daemon supplies
this from the catalogue it has signature-verified with CatalogPubkey.
- Supervisor catalogue path: VerifySignature + VerifyTrustAnchor(cataloguePin).
nil provider or unpinned app => fail-closed (not spawned). Sideload unchanged.
Tests: full accept/mismatch/unpinned/nil-provider matrix (-race green), plus the
repointed manifest unit tests.
Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
0 commit comments