chore(trust): flip the signing checks to the new release root
v1.7.122-alpha was the last release signed with the old root — it is the release that installed the new pin on every node. From v1.7.123 the new root signs, and a node running .122+ rejects an old-key signature. The ARCHY_RELEASE_ROOT_PUBKEY override is no longer needed either: the signer built from this tree pins the same key we now sign with. Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
This commit is contained in:
co-authored by
Claude Fable 5
parent
27c1b151f8
commit
cfd1b4c731
@@ -29,11 +29,9 @@ fail() { echo "Error: $*" >&2; exit 1; }
|
||||
# with the pinned release-root anchor refuse to auto-apply unsigned manifests,
|
||||
# and enforcement will tighten to hard-reject — an unsigned publish would
|
||||
# strand them. Grep proves presence; ceremony verify proves the crypto.
|
||||
# ⚠ ROTATION IN FLIGHT (v1.7.122-alpha) — OLD root on purpose; see the same
|
||||
# block in create-release.sh. Nodes still run the previous binary and pin the
|
||||
# old key, so the manifest this release publishes must carry an old-key
|
||||
# signature. Flip both to z6Mkfu5LT…DLWT for v1.7.123+.
|
||||
EXPECTED_DID="did:key:z6MkkidEnEpo6qHMCNSZoNKWtvQvxq3whnaME9wGgEFhq7ur"
|
||||
# Release root ROTATED 2026-08-05; see create-release.sh. New root from
|
||||
# v1.7.123 onward.
|
||||
EXPECTED_DID="did:key:z6Mkfu5LT8d4DjETtrkATvHh9Dvcbnr7zBCUwfau8Sw7DLWT"
|
||||
grep -q '"signature":' "$PROJECT_ROOT/releases/manifest.json" \
|
||||
&& grep -q "\"signed_by\": \"$EXPECTED_DID\"" "$PROJECT_ROOT/releases/manifest.json" \
|
||||
|| fail "releases/manifest.json is not signed by the release root — run: bash scripts/sign-manifest.sh"
|
||||
|
||||
Reference in New Issue
Block a user