From 654835d8f3590f1f800c213ae7dfffc8379c08cd Mon Sep 17 00:00:00 2001 From: igneum-labs <337424239+igneum-labs@users.noreply.github.com> Date: Mon, 5 Oct 2026 23:15:40 +0000 Subject: [PATCH] Rollout plan section 4: publish 1 flips the fleet to 4d8f8bb6 --- docs/plans/counter-asic-2-rollout.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/docs/plans/counter-asic-2-rollout.md b/docs/plans/counter-asic-2-rollout.md index 5651607b6..88521be1b 100644 --- a/docs/plans/counter-asic-2-rollout.md +++ b/docs/plans/counter-asic-2-rollout.md @@ -30,7 +30,7 @@ The same nine-field object goes verbatim into the override files of Mac node 1, ## 4. The order -TWO MANIFESTS, never one (C39, confirmed to the shipper 23:12 UTC): the engine writes a manifest's consensus.override at the take and restarts the node with it at the next safe window whatever binary is installed, and a 0.3.10 node refuses a file carrying program_class_v3 or the proving v1 fields (deny_unknown_fields) and dies; so publish 1 goes in this order (C40: the 0.3.11 binary itself flips the digest from the fleet's 1f4b4425 to c562d70e because the class v3 field enters it at never, so the apps must not take 0.3.11 before the hand nodes): FIRST the hand nodes and the seed on the 0.3.11 binaries with the four-field file, each printing 4d8f8bb668828a3dcf7b783b995f3d3ebfde32a092dd1dbd5bf4373c5c65a62c (measured on a 22-s scratch node at 23:13:54 UTC: the 0.3.11 node with the fleet's live four-field file; c562d70e... is its digest with NO override file, the node agent's pinned case), THEN the first 0.3.11 manifest with the live four-field object UNCHANGED and update-now to the apps machine by machine, every app's node joining at 4d8f8bb6; the apps still on 0.3.10 are refused by the new side from the moment the hand nodes move until each updates (the fee switch's 8 min 47 s shape), and PC 1 stays refused on 1f4b4425 until its morning relaunch; and only when every reporting app and node is on 0.3.11 does the second manifest carry the nine-field object (N4 = N5 re-pinned to tip + 14,400 rounded up to 3,600 at that moment if the 10,800 floor has passed), the hand nodes' and the seed's files switched, the digest sweep to the activation digest. The DMG's packaged nine-field line is fine for a fresh install. +TWO MANIFESTS, never one (C39, confirmed to the shipper 23:12 UTC): the engine writes a manifest's consensus.override at the take and restarts the node with it at the next safe window whatever binary is installed, and a 0.3.10 node refuses a file carrying program_class_v3 or the proving v1 fields (deny_unknown_fields) and dies; so publish 1 goes in this order (C40: the 0.3.11 binary itself flips the digest from the fleet's 1f4b4425 to 4d8f8bb6 (with the live four-field file; c562d70e is the no-file case) because the class v3 field enters it at never, so the apps must not take 0.3.11 before the hand nodes): FIRST the hand nodes and the seed on the 0.3.11 binaries with the four-field file, each printing 4d8f8bb668828a3dcf7b783b995f3d3ebfde32a092dd1dbd5bf4373c5c65a62c (measured on a 22-s scratch node at 23:13:54 UTC: the 0.3.11 node with the fleet's live four-field file; c562d70e... is its digest with NO override file, the node agent's pinned case), THEN the first 0.3.11 manifest with the live four-field object UNCHANGED and update-now to the apps machine by machine, every app's node joining at 4d8f8bb6; the apps still on 0.3.10 are refused by the new side from the moment the hand nodes move until each updates (the fee switch's 8 min 47 s shape), and PC 1 stays refused on 1f4b4425 until its morning relaunch; and only when every reporting app and node is on 0.3.11 does the second manifest carry the nine-field object (N4 = N5 re-pinned to tip + 14,400 rounded up to 3,600 at that moment if the 10,800 floor has passed), the hand nodes' and the seed's files switched, the digest sweep to the activation digest. The DMG's packaged nine-field line is fine for a fresh install. 1. The digest flip: a node build that carries `program_class_v3_activation_daa` at never on every node (hand nodes and the seed first: `infra/devnet/restart-hand-nodes.sh ''`, then the app version through the manifest; every node prints the same `Consensus params digest`). 2. Fix N4, cut the app version (`packaging/mac/packaged-config.sh`, the three version files), commit as igneum-labs.