diff --git a/docs/plans/counter-asic-3-status.md b/docs/plans/counter-asic-3-status.md index d1ddf1fa..6d0aaee6 100644 --- a/docs/plans/counter-asic-3-status.md +++ b/docs/plans/counter-asic-3-status.md @@ -433,7 +433,7 @@ SUB-VERSION 3 PASSES BOTH GATES (the attack-pass lane, the close line dated 7 Oc | 2,700 | 136.85 | 443.2 | 0.309 | 136.54 | 312.4 | 0.437 | | 2,550 | 136.77 | 402.9 | 0.340 | | | | -Reading so far: the class v4 premium at the unlocked clock is +145 W on this card tonight (against the +80 W of the 6 October measurement at a different cap state), and 73 W of it is recovered at the 2,550 MHz lock for 0.05 percent of rate; the rate is memory-bound and flat as the clock falls, so the project lead's thesis holds so far; the steps 2,472 down to 1,400 run to about 19:20Z, the TABLE at the close. THE IN-HOUSE PASS's FIRST FINDING (adv-accept a22d5ba0, 19:51 BST, 1.6 box-hours; the defender's review: confirmed and bounded, no dispute on the numbers): one accepted class v4 sub-version 3 program (seed 100767 in the F8 label space, program id 9d68e6286fc817d4, attempt 2) passes every part of the frozen rule including (c'') (its distinct-index ratio 0.9988 at 2^20, inside the clean spread) and on the live dataset at 2^24 nonces reads a hot set: the top 0.1 percent of items take 2.05x the window model's share (X_f +0.155 percent, X_f/f 1.55; the largest 64-item bucket +294.8 sigma), attributed to one site (instruction 23, source r6, a quarter window; r6 last written by a mad at instruction 4, zero in 0.0126 percent of evaluations, under (c')'s 1 percent) whose hot items are the images of small source values under the era stride at multiples of 2^19; the other sites 0.00 to 0.21 percent against 0.10 expected. The chip price, the lane's and the defender's alike: a 1 MB on-die copy of the hot items serves 0.31 percent of loads instead of 0.15, a 1.002x gain, no chip-model row moves. What is new: the stand-in ratio is a cheap seed selector (the four lowest-ratio seeds of 4,600 accepted programs all beyond 1.2x live, 1.29x to 2.05x; 23 random accepted programs at most 1.043x), and the finding attributes one of AP-F8-1's unattributed tail by value. Routing (main): FINDING (bounded) on sub-version 3, published whole, no change to the frozen object or Devnet 3; MAIN'S ORDER: class v5's acceptance rule carries the fix before tonight's v5 object freezes (a per-site hot-item test at live scale, or a value-level source test, whichever reaches the lineage-fresh constant; known-failed first on seed 100767's shape under the v5 state-derived dataset; the selector's false-positive rate read); if it cannot be in tonight's object with the suite green, the v5 crossing clock moves with the reason. adv-cache FINAL (49ef7747, 0.55 box-hours, 0 pod-hours): every row BOUND (the defender's review: Q1b, Q1c and Q4 BOUND, the Q1b curve equal to its log row for row; Q2 and Q3 readings for adv-cache-2 to confirm); its three sibling definitions implemented as a harness for adv-cache-3, not run. Plans on the mirror from all eight started lanes; adv-accept-3 spawned as the cap gave way. CLASS V5 TONIGHT, THE READINGS (19:0x to 19:2x UTC). The site: aacbcd24 (the sortable table) live at 18:53:41Z; the Hive flight-sheet column landed on the mirror's master at fc32ecf3, its deploy ordered. The kits: every measured platform reads 82b19cbde8557ea5 on v5-dn3-epoch0 (Metal 18:34:47Z, Apple OpenCL 18:34:59Z, CUDA on a one-shot RunPod 4090 at 18:57:45Z, driver 580.159.04, 62.76 MH/s over five 2^24 dispatches, the pod destroyed 18:57:51Z); AMD placed on PC 1 after the 9070 XT G1; Intel deferred (no card without a click). THE ACCEPTANCE FIX (main's order, the cheapest first): (c''') at class-v5 ab6f980b, the per-site distinct-index floor raised from 0.98 to 0.995 on the ratio pass's own 2^20 run, keyed on the state flag (no class v4 verdict moves, no new sample, no 2^24 run; the verdict at attempt 2); the known-failed test first on adv-accept's exemplar (seed 100767: class v4 accepts it, class v5 names site 6 under 0.995 and moves past attempt 2, both genesis draws clear the floor); the box build and test running; the 4,600-seed census (the clean spread, the count under floors 0.98 to 0.999, the attempts histogram v4 against v5, the seeds whose v5 draw moves) on box 2 after it; the per-site hot-item test not needed if the floor's clean rejection rate reads under 1 percent (the two statistics are the same distinct count; adv-accept read the exemplar at 0.9919 closed and 0.9920 live at the acceptance's own sample). TWO EXCEPTIONS: (1) the flip-stale harness re-run (18:58 to 19:02Z) read FAIL on v5_ids_equal_the_cli_v5_id, sinks_agree and block_counts_agree, binary skew not a rule defect (the fork binaries of 17:56Z predate the AP-F4-1 and AP-F1-1 rules of 18:27Z and 18:37Z; the ids differ at epochs 9 and 10, equal at 11); the fork rebuilds once on the (c''') tip and the harness re-runs on the matched pair. (2) class_signal.rs decide() with the v5 object set and both floors at 0 read epochs under the window as class v3 regardless of the v4 floor (e0:v3 e1:v3 e2:v4), which on Devnet 3 would have made a node re-read day one as v3 and refuse the chain; FIXED by the node lane at b1680b57 on class-v5-node-wire (19:14Z): the under-window base takes the floor's class and never a bare v3 (unfull_window_base), the known-failed test first (v4 floor 0 with the v5 object set reads v4 at epochs 0 and 1; the v4 floor at never reads v3; at or past the v5 floor, v5), kaspa-consensus 123 of 123 on build-2 at 19:13:16Z; the branch also carries the snapshot wire's day streams (7737ebd9), the day-state witness (6d827c5d) and the stale-chip unit test (40c03806), all green; nothing reaches Devnet 3 before the v5 object commit on release-0.3.23-node, which waits on the (c''') tip; the 0.3.23 line at a4415ab2 with its gates running, Devnet 3's digest 83eb50cd restored at a099594f. THE IN-HOUSE PASS: adv-accept Q2 (the stand-in gap) BOUND on 54 accepted programs (closed-form and live per-site ratios agree to 0.0004 at 2^20, 0 verdict disagreements; no steering through the gap); the selector widened and honest: 6 of the 8 lowest-ratio seeds beyond 1.2x live, 2 not (103378 at 1.157x, 105756 at 0.9996x), the random control 0 of 4 beyond, so the stand-in ratio is a noisy selector at the 0.996 level; 2.6 box-hours. adv-accept-2 (header grinding for locality): the two real and 8 drawn programs match the windowed random baseline at the mean, minimum and 1e-3 to 1e-5 tails for rows, lines and items; one-bit header flips move 100.00 percent of the 4,096 unit addresses; 2 to 4 of 16 load sites header-predictable in iteration 0, none later; both plants fire; the one GPU confirmation on the fleet's A6000 pod due about 21:45Z, pod spend USD 1.59. The crypto lane's per-box sweep lock (one sweep per box under flock, up to 88 threads on cores 8 to 95, nice 10) after the boxes read loads of 496 and 527 on 96 cores at 18:55Z. THE CLASS V4 EFFICIENCY PASS, THE TABLE (run-ca3-pc1-v4-eff-5090-20261007-b, PC 1, the RTX 5090 alone, driver 617.14, app 0.3.20, every lock through the Power Helper task with no prompt, memory 13,801 MHz throughout, every fingerprint on every step equal to the Mac's, exit 0 at 19:16:27Z after 2,165 s; measured 18:40 to 19:16Z, 60 s steps): +Reading so far: the class v4 premium at the unlocked clock is +145 W on this card tonight (against the +80 W of the 6 October measurement at a different cap state), and 73 W of it is recovered at the 2,550 MHz lock for 0.05 percent of rate; the rate is memory-bound and flat as the clock falls, so the founder's thesis holds so far; the steps 2,472 down to 1,400 run to about 19:20Z, the TABLE at the close. THE IN-HOUSE PASS's FIRST FINDING (adv-accept a22d5ba0, 19:51 BST, 1.6 box-hours; the defender's review: confirmed and bounded, no dispute on the numbers): one accepted class v4 sub-version 3 program (seed 100767 in the F8 label space, program id 9d68e6286fc817d4, attempt 2) passes every part of the frozen rule including (c'') (its distinct-index ratio 0.9988 at 2^20, inside the clean spread) and on the live dataset at 2^24 nonces reads a hot set: the top 0.1 percent of items take 2.05x the window model's share (X_f +0.155 percent, X_f/f 1.55; the largest 64-item bucket +294.8 sigma), attributed to one site (instruction 23, source r6, a quarter window; r6 last written by a mad at instruction 4, zero in 0.0126 percent of evaluations, under (c')'s 1 percent) whose hot items are the images of small source values under the era stride at multiples of 2^19; the other sites 0.00 to 0.21 percent against 0.10 expected. The chip price, the lane's and the defender's alike: a 1 MB on-die copy of the hot items serves 0.31 percent of loads instead of 0.15, a 1.002x gain, no chip-model row moves. What is new: the stand-in ratio is a cheap seed selector (the four lowest-ratio seeds of 4,600 accepted programs all beyond 1.2x live, 1.29x to 2.05x; 23 random accepted programs at most 1.043x), and the finding attributes one of AP-F8-1's unattributed tail by value. Routing (main): FINDING (bounded) on sub-version 3, published whole, no change to the frozen object or Devnet 3; MAIN'S ORDER: class v5's acceptance rule carries the fix before tonight's v5 object freezes (a per-site hot-item test at live scale, or a value-level source test, whichever reaches the lineage-fresh constant; known-failed first on seed 100767's shape under the v5 state-derived dataset; the selector's false-positive rate read); if it cannot be in tonight's object with the suite green, the v5 crossing clock moves with the reason. adv-cache FINAL (49ef7747, 0.55 box-hours, 0 pod-hours): every row BOUND (the defender's review: Q1b, Q1c and Q4 BOUND, the Q1b curve equal to its log row for row; Q2 and Q3 readings for adv-cache-2 to confirm); its three sibling definitions implemented as a harness for adv-cache-3, not run. Plans on the mirror from all eight started lanes; adv-accept-3 spawned as the cap gave way. CLASS V5 TONIGHT, THE READINGS (19:0x to 19:2x UTC). The site: aacbcd24 (the sortable table) live at 18:53:41Z; the Hive flight-sheet column landed on the mirror's master at fc32ecf3, its deploy ordered. The kits: every measured platform reads 82b19cbde8557ea5 on v5-dn3-epoch0 (Metal 18:34:47Z, Apple OpenCL 18:34:59Z, CUDA on a one-shot RunPod 4090 at 18:57:45Z, driver 580.159.04, 62.76 MH/s over five 2^24 dispatches, the pod destroyed 18:57:51Z); AMD placed on PC 1 after the 9070 XT G1; Intel deferred (no card without a click). THE ACCEPTANCE FIX (main's order, the cheapest first): (c''') at class-v5 ab6f980b, the per-site distinct-index floor raised from 0.98 to 0.995 on the ratio pass's own 2^20 run, keyed on the state flag (no class v4 verdict moves, no new sample, no 2^24 run; the verdict at attempt 2); the known-failed test first on adv-accept's exemplar (seed 100767: class v4 accepts it, class v5 names site 6 under 0.995 and moves past attempt 2, both genesis draws clear the floor); the box build and test running; the 4,600-seed census (the clean spread, the count under floors 0.98 to 0.999, the attempts histogram v4 against v5, the seeds whose v5 draw moves) on box 2 after it; the per-site hot-item test not needed if the floor's clean rejection rate reads under 1 percent (the two statistics are the same distinct count; adv-accept read the exemplar at 0.9919 closed and 0.9920 live at the acceptance's own sample). TWO EXCEPTIONS: (1) the flip-stale harness re-run (18:58 to 19:02Z) read FAIL on v5_ids_equal_the_cli_v5_id, sinks_agree and block_counts_agree, binary skew not a rule defect (the fork binaries of 17:56Z predate the AP-F4-1 and AP-F1-1 rules of 18:27Z and 18:37Z; the ids differ at epochs 9 and 10, equal at 11); the fork rebuilds once on the (c''') tip and the harness re-runs on the matched pair. (2) class_signal.rs decide() with the v5 object set and both floors at 0 read epochs under the window as class v3 regardless of the v4 floor (e0:v3 e1:v3 e2:v4), which on Devnet 3 would have made a node re-read day one as v3 and refuse the chain; FIXED by the node lane at b1680b57 on class-v5-node-wire (19:14Z): the under-window base takes the floor's class and never a bare v3 (unfull_window_base), the known-failed test first (v4 floor 0 with the v5 object set reads v4 at epochs 0 and 1; the v4 floor at never reads v3; at or past the v5 floor, v5), kaspa-consensus 123 of 123 on build-2 at 19:13:16Z; the branch also carries the snapshot wire's day streams (7737ebd9), the day-state witness (6d827c5d) and the stale-chip unit test (40c03806), all green; nothing reaches Devnet 3 before the v5 object commit on release-0.3.23-node, which waits on the (c''') tip; the 0.3.23 line at a4415ab2 with its gates running, Devnet 3's digest 83eb50cd restored at a099594f. THE IN-HOUSE PASS: adv-accept Q2 (the stand-in gap) BOUND on 54 accepted programs (closed-form and live per-site ratios agree to 0.0004 at 2^20, 0 verdict disagreements; no steering through the gap); the selector widened and honest: 6 of the 8 lowest-ratio seeds beyond 1.2x live, 2 not (103378 at 1.157x, 105756 at 0.9996x), the random control 0 of 4 beyond, so the stand-in ratio is a noisy selector at the 0.996 level; 2.6 box-hours. adv-accept-2 (header grinding for locality): the two real and 8 drawn programs match the windowed random baseline at the mean, minimum and 1e-3 to 1e-5 tails for rows, lines and items; one-bit header flips move 100.00 percent of the 4,096 unit addresses; 2 to 4 of 16 load sites header-predictable in iteration 0, none later; both plants fire; the one GPU confirmation on the fleet's A6000 pod due about 21:45Z, pod spend USD 1.59. The crypto lane's per-box sweep lock (one sweep per box under flock, up to 88 threads on cores 8 to 95, nice 10) after the boxes read loads of 496 and 527 on 96 cores at 18:55Z. THE CLASS V4 EFFICIENCY PASS, THE TABLE (run-ca3-pc1-v4-eff-5090-20261007-b, PC 1, the RTX 5090 alone, driver 617.14, app 0.3.20, every lock through the Power Helper task with no prompt, memory 13,801 MHz throughout, every fingerprint on every step equal to the Mac's, exit 0 at 19:16:27Z after 2,165 s; measured 18:40 to 19:16Z, 60 s steps): | Core lock MHz | v4 MH/s | v4 W | v4 MH/W | v3 MH/s | v3 W | v3 MH/W | sm MHz read | |---|---|---|---|---|---|---|---| @@ -455,8 +455,8 @@ Reading so far: the class v4 premium at the unlocked clock is +145 W on this car | 1,400 | 134.98 | 316.3 | 0.427 | 134.68 | 228.0 | 0.591 | 1,387 | | unlocked, end | 136.75 | 473.0 | | 136.5x | 329.7 | | 2,843 / 2,850 | -Reading: the class v4 premium is 145.3 W at the unlocked clock (not the 80 W of 6 October, which was read at the app's tuned cap) and 88.3 W at the 1,400 MHz lock; v4's rate is +0.18 percent over v3 unlocked and +0.23 percent at the lock; the rate is memory-bound on the whole grid (136.8 to 135.0 MH/s from 2,850 to 1,400); the best MH per watt sits at the lowest lock on the grid, so the knee is below 1,400 MHz. the project lead's thesis holds in part: 57 W of the 145 W premium comes back by the lock alone; 88 W stays as the shadow's ALU work at the floor clock. Throttle reasons: the SW power-cap governor (0x400) from unlocked to 2,163, the lock itself (0x4) from 2,100 down on v4 and 1,650 down on v3; 75 C at the top, 59 C at 1,400. The owed 5090 clock rows (2,781 / 2,472 / 2,163 / 1,854) are in this table. Per tier: a 5090 owner on class v4 who locks the core at 1,400 MHz pays 316 W instead of 476 W for 1.4 percent less rate, MH per watt up 48 percent, the v4 premium down from 145 to 88 W; the lever is NVIDIA's -lgc through the helper; AMD has the helper's ADLX tune line or nothing; the Mac has no lever. MAIN'S ORDERS ON IT (20:2x UK): (1) the second pass now, 1,400 MHz down to the driver's floor in 100 MHz steps on v4 and the v3 control, to find the knee and the premium at it, then the same grid on the 5080; (2) the knob into Ember Tune for 0.3.23 (after the power-cap search, a core-clock search downward from the cap's point until the rate falls more than 1 percent, taking the best MH/W, the fingerprint on every step, stored per card; the Mac stated as no lever) through the UI lane; (3) the bench table's 5090 row gains the locked point and the class v4 cost column reads the locked premium beside the unlocked one (done: the 1,400 MHz row 134.98 MH/s at 316.3 W, 0.427 MH/W, the Hive values 1,400 / 13,801 / 575 as the driver's default limit). DEVNET 3's FIRST LOCK (the fleet lane): 19:02:46Z, checkpoint 235 LOCKED on block 50266abe... (blue score 7,050), identical on dn3-g1 (signed 98.4 percent of active) and dn3-g2 (100.1 percent), at DAA about 7,298 (the 7,200 window filled at 19:01Z); wave 1 of the second nodes GREEN on all five at 19:17:00Z, wave 2 from 19:17Z; the 0.3.22 pin candidate 34a2dbaa passed its last gate at 19:07Z (the join-and-restart read on dn3-c1 with the N15 line) and the Devnet 3 sweep to it runs. The fleet's 19:03Z table: 43 rows, 44 GPUs, USD 257 a day, today about USD 460 of the ceiling at 19:20Z; dn3-twin (a broken CUDA host) and dn3-q02 (never answered) destroyed; p12-vast, w-target and w-poison repurposed to Devnet 3. THE SITE: a0e0c83a deployed 19:17:28Z with the Hive column. THE BOXES: build-1 read 601 / 552 / 471 and build-2 401 / 417 / 400 at 19:17Z, the sum being adversarial binaries started by hand over ssh at 64 to 89 threads each (the crypto lane's one-sweep lock not holding the sum); MAIN'S RULE for every lane under this one: no run starts on a box except through the build-server lane's `lease pool -- cmd` (landing within the quarter hour); hand-started runs killed by their kill files and re-queued through the lease; the release builds and the v5 suites outrank the sweeps. THE SHIPPER cuts class v5 as 0.3.24 the minute every v5 gate is green, at any hour; this lane's gate board is the only clock. A SHARED-DEVNET FACT FROM THE FLEET (not this lane's, with the shipper and the infra lane): the Hetzner live seed 188.245.5.161:26611 is still on the old override object (digest eada4bda) 1 h 40 min after the 0.3.20 sweep (the fleet never touches Hetzner nodes, so it was outside the sweep); the 0.3.21 wipe canary c22-1 took five digest-mismatch rejects from it; an app with the packaged peers is refused at the seed and syncs through node1 and the hub only, a fresh joiner with only the seed cannot join, the 14 voters and the hub are unaffected; the owner puts the floor file ov16-floor-900000.json (sha 294f1f80) and the c4459193 pin on it. 0.3.21's STAGING (the node lane): the order dry-merges onto 55768f88 with nothing moving to 0.3.22; the late-join fix is 52e96c94 (70e4601e rebased onto 55768f88, exec suite 33 green with both new tests); f067f7c1, b0444f51 and 437f0438 merge clean in order; 2e32d5f6's one conflict (DST_ADDRESS beside pool-finish's DST_BINDING in consensus/core/src/finality.rs) kept both; the live-file digest eada4bda after each (every switch at never); the staging waits on the shipper's sweep-end word; the re-pin held. PC 2 DOWN AGAIN (main, 16:5x UK): the project lead takes PC 2 down for cable work (PC 1 back but his desk); both PCs out of the sweep's waves, each updates on its poller on return; no PC job to PC 1; the Windows G1 completed before the outage, nothing reruns. 0.3.21's SECOND GATE LINE on 55768f88 (sha256 279b1b690e854fc9): the ten-minute mixed-version gate beside the 5899f603 pair, 13:37:40Z to 13:47:52Z, SUMMARY PASS (one digest b0afb2ee on five nodes; 223 new and 381 old blocks accepted by the old hub, 0 rejected; counts equal at 319, 486 and 604 through both clean joins and the restart step at 13:45:22Z; no panic); the node lane's two lines on 0.3.21's first candidate complete, in plan 6.9 on ca3-v4-node; the fleet's set on it (the bare-child 12 GB line, the wipe, the kept read, the cases) is the fleet's. 0.3.21's FIRST GATE LINE on 55768f88 (sha256 279b1b690e854fc9, the string read back; pairing igneum-pow 8c728ca3 at byte 5): the digest gate 13:35:41Z to 13:37:19Z SUMMARY PASS (a89be8a7 on both binaries with the peers; db9a85f9 refused, no peer; the live file's eada4bda unmoved); the ten-minute mixed-version gate from 13:37:40Z, line about 13:50Z. The 0.3.21 order as the shipper sent it: 55768f88; f067f7c1 and 70e4601e; b0444f51; 6eb21fc9; db28d331; then the re-pin from 8bdcbdd8 on the coordinator's word; suites between, the digest read after every one; the mirror's release-0.3.20-node back at the pin c4459193, release-0.3.21-node open at 55768f88. THE LATE-JOIN COMMIT (N9's second half, the node lane): 70e4601e on the box mirror as branch proof-hold-fix, from c4459193, two files (igneum/exec/src/proving.rs, protocol/flows/src/v10/proving.rs); the gap was the fetch side on the joiner (the served record ran the native check against the joiner's trailing exec state before anything was stored, the check refused it, the proof was never held, the body rule read "not held" for 20 s and failed the IBD); the fix holds the proof by hash before the checks (the pool entry still needs them) and the serve side says when it holds fewer than asked; the exec suite 32 passed at 13:26Z with the known-failed shape first, the flows check green 13:28Z, igneumd on build-1 at the 0321 worktree path built 13:32Z, sha256 17649eeb2f7d1290, string read back; with the testnet lane (the resume form, B alone); it joins the 0.3.21 staging as its own commit. THE WIPE CANARY ON c19-1, c4459193 (sha 45be9b02d1b002f5, string read back): FORM END rc 0 at 13:50:53Z. Wipe synced 13:35:50Z (57 minutes, inside the 98-minute class); mining 13:36:00Z to 13:47:07Z, 66 mined, 66 accepted, 0 rejected, isSynced true at the tip throughout; the hub holds 41 of its blocks in its last 700 with 0 rejects (13:47:09Z); the restart on its kept datadir at 13:47:15Z: the old process stopped at once (the new process's first lock line seven seconds after the marker; the watchdog held nothing, the b7cc37e7 fault closed), synced again at 13:48:39Z after 84 s, 109 templates read with max 3,432 ms and 0 timeouts; the kept read on pool-1's 0.3.17 copy on the same pod passed at 13:38Z (the rewrite line once, a clean second start). The pin's set on c4459193: the digest gate PASS, the mixed-version gate PASS, the wipe canary PASS, the kept read PASS, the restart PASS, the 12 GB line proves and verifies (paid is a race, not a gate); CASES END from c20-1 (about 14:50Z) is the last pin line. THE INTEROP FACT stands from the void run: the 5899f603 hub accepted 235 object-byte-5 blocks from the 8097d600 node with 0 rejected, one digest on all five nodes on the live sixteen-field file. The gates: the digest test and the kaspa-pow vector test (the amended devnet epoch-0 id 1a4230699a6b9c60 must equal, c120d7963abdcd96 must differ, the v3 control unchanged) on the box; the mixed-version Devnet 2 gate (the amended 0.3.20 node beside a 5899f603 node for ten minutes on the live file without the v4 fields) after the Mac build; the fresh-join canary the 0.3.20 cut's | -| Main's rulings (7 October, morning) | no generator change to v4 on the live devnet; the record's null is the window model with numbers, sent by the hash lane to the attack-pass lane so AP-F8-1 re-gates against it; a fault beyond the model (a low-entropy source at site 15) stops at the coordinator with the two options priced (a 0.3.19 class amendment before the flip, or the flip held at the floor), nothing shipping without the project lead's word; the tighter tail, an acceptance bound on the hot-set share, is a CLASS V5 item (sent to the v5 lane a6410f3b8abefb762 with the 64-seed census as its gate; the bound's number follows from the model) | +Reading: the class v4 premium is 145.3 W at the unlocked clock (not the 80 W of 6 October, which was read at the app's tuned cap) and 88.3 W at the 1,400 MHz lock; v4's rate is +0.18 percent over v3 unlocked and +0.23 percent at the lock; the rate is memory-bound on the whole grid (136.8 to 135.0 MH/s from 2,850 to 1,400); the best MH per watt sits at the lowest lock on the grid, so the knee is below 1,400 MHz. the founder's thesis holds in part: 57 W of the 145 W premium comes back by the lock alone; 88 W stays as the shadow's ALU work at the floor clock. Throttle reasons: the SW power-cap governor (0x400) from unlocked to 2,163, the lock itself (0x4) from 2,100 down on v4 and 1,650 down on v3; 75 C at the top, 59 C at 1,400. The owed 5090 clock rows (2,781 / 2,472 / 2,163 / 1,854) are in this table. Per tier: a 5090 owner on class v4 who locks the core at 1,400 MHz pays 316 W instead of 476 W for 1.4 percent less rate, MH per watt up 48 percent, the v4 premium down from 145 to 88 W; the lever is NVIDIA's -lgc through the helper; AMD has the helper's ADLX tune line or nothing; the Mac has no lever. MAIN'S ORDERS ON IT (20:2x UK): (1) the second pass now, 1,400 MHz down to the driver's floor in 100 MHz steps on v4 and the v3 control, to find the knee and the premium at it, then the same grid on the 5080; (2) the knob into Ember Tune for 0.3.23 (after the power-cap search, a core-clock search downward from the cap's point until the rate falls more than 1 percent, taking the best MH/W, the fingerprint on every step, stored per card; the Mac stated as no lever) through the UI lane; (3) the bench table's 5090 row gains the locked point and the class v4 cost column reads the locked premium beside the unlocked one (done: the 1,400 MHz row 134.98 MH/s at 316.3 W, 0.427 MH/W, the Hive values 1,400 / 13,801 / 575 as the driver's default limit). DEVNET 3's FIRST LOCK (the fleet lane): 19:02:46Z, checkpoint 235 LOCKED on block 50266abe... (blue score 7,050), identical on dn3-g1 (signed 98.4 percent of active) and dn3-g2 (100.1 percent), at DAA about 7,298 (the 7,200 window filled at 19:01Z); wave 1 of the second nodes GREEN on all five at 19:17:00Z, wave 2 from 19:17Z; the 0.3.22 pin candidate 34a2dbaa passed its last gate at 19:07Z (the join-and-restart read on dn3-c1 with the N15 line) and the Devnet 3 sweep to it runs. The fleet's 19:03Z table: 43 rows, 44 GPUs, USD 257 a day, today about USD 460 of the ceiling at 19:20Z; dn3-twin (a broken CUDA host) and dn3-q02 (never answered) destroyed; p12-vast, w-target and w-poison repurposed to Devnet 3. THE SITE: a0e0c83a deployed 19:17:28Z with the Hive column. THE BOXES: build-1 read 601 / 552 / 471 and build-2 401 / 417 / 400 at 19:17Z, the sum being adversarial binaries started by hand over ssh at 64 to 89 threads each (the crypto lane's one-sweep lock not holding the sum); MAIN'S RULE for every lane under this one: no run starts on a box except through the build-server lane's `lease pool -- cmd` (landing within the quarter hour); hand-started runs killed by their kill files and re-queued through the lease; the release builds and the v5 suites outrank the sweeps. THE SHIPPER cuts class v5 as 0.3.24 the minute every v5 gate is green, at any hour; this lane's gate board is the only clock. THE (c''') CENSUS NUMBER (the v5 lane, 21:03 UK; 4,600 f8 seeds, box 2, 48 cores, 1,256 s; log docs/design/class-v5-harness/v5-census-4600-0.log): the 0.995 per-site floor rejects 112 of 4,600 class v4 sub-version 3 accepted programs (2.435 percent); the same 112 move to a later class v5 attempt; the attempts mean 2.174 to 2.248 (+3.4 percent; the tail unchanged, max 24 on both); 0 class v5 accepted programs under the floor. The spread of the v4-accepted programs' minimum site ratio at the 2^20 sample: min 0.9807, p0.1 0.9831, p1 0.9906, p5 0.9962, median 0.9999; under 0.98 none, under 0.99 43 (0.935 percent), under 0.995 112, under 0.998 517, under 0.999 868. Two corrections to the relayed premise: the clean spread is not "0.9960 minimum, p1 0.9990" on the chain's own draw (a smaller sample), and 0.99 would NOT refuse the exemplar (0.9919). So 0.995 is the lowest round floor that refuses seed 100767 with the model's spread under it, at one extra draw attempt on 2.4 percent of epochs (about 0.3 s of acceptance each, no consensus cost, no change to the hash or the kits); the band it rejects is where every measured program so far is a weak hot-set program (adv-accept's live-low20 row: the first read, seed 3664 at 1.31x, beyond the 1.2x gate; its four measured lowest-ratio seeds all beyond). The per-site hot-item test is the same statistic at the 2^20 sample and costs 30 s per candidate at 2^24 against the floor's 0 extra, so it is not a competitor. The defender's call: keep 0.995; the freeze commit carries the number into accept.rs and section 14 and goes the minute the full suite and the gate read green (f17849eb staged). THE PRE-PUBLIC SCRUB: master's text pass (9b8eb23a, 3b4b6c63) names the founder as "the founder" in every tracked text file and the CI check founder-strings refuses the name; this record follows it from here (three lines of the efficiency pass reintroduced the name through a merge and are fixed). A SHARED-DEVNET FACT FROM THE FLEET (not this lane's, with the shipper and the infra lane): the Hetzner live seed 188.245.5.161:26611 is still on the old override object (digest eada4bda) 1 h 40 min after the 0.3.20 sweep (the fleet never touches Hetzner nodes, so it was outside the sweep); the 0.3.21 wipe canary c22-1 took five digest-mismatch rejects from it; an app with the packaged peers is refused at the seed and syncs through node1 and the hub only, a fresh joiner with only the seed cannot join, the 14 voters and the hub are unaffected; the owner puts the floor file ov16-floor-900000.json (sha 294f1f80) and the c4459193 pin on it. 0.3.21's STAGING (the node lane): the order dry-merges onto 55768f88 with nothing moving to 0.3.22; the late-join fix is 52e96c94 (70e4601e rebased onto 55768f88, exec suite 33 green with both new tests); f067f7c1, b0444f51 and 437f0438 merge clean in order; 2e32d5f6's one conflict (DST_ADDRESS beside pool-finish's DST_BINDING in consensus/core/src/finality.rs) kept both; the live-file digest eada4bda after each (every switch at never); the staging waits on the shipper's sweep-end word; the re-pin held. PC 2 DOWN AGAIN (main, 16:5x UK): the founder takes PC 2 down for cable work (PC 1 back but his desk); both PCs out of the sweep's waves, each updates on its poller on return; no PC job to PC 1; the Windows G1 completed before the outage, nothing reruns. 0.3.21's SECOND GATE LINE on 55768f88 (sha256 279b1b690e854fc9): the ten-minute mixed-version gate beside the 5899f603 pair, 13:37:40Z to 13:47:52Z, SUMMARY PASS (one digest b0afb2ee on five nodes; 223 new and 381 old blocks accepted by the old hub, 0 rejected; counts equal at 319, 486 and 604 through both clean joins and the restart step at 13:45:22Z; no panic); the node lane's two lines on 0.3.21's first candidate complete, in plan 6.9 on ca3-v4-node; the fleet's set on it (the bare-child 12 GB line, the wipe, the kept read, the cases) is the fleet's. 0.3.21's FIRST GATE LINE on 55768f88 (sha256 279b1b690e854fc9, the string read back; pairing igneum-pow 8c728ca3 at byte 5): the digest gate 13:35:41Z to 13:37:19Z SUMMARY PASS (a89be8a7 on both binaries with the peers; db9a85f9 refused, no peer; the live file's eada4bda unmoved); the ten-minute mixed-version gate from 13:37:40Z, line about 13:50Z. The 0.3.21 order as the shipper sent it: 55768f88; f067f7c1 and 70e4601e; b0444f51; 6eb21fc9; db28d331; then the re-pin from 8bdcbdd8 on the coordinator's word; suites between, the digest read after every one; the mirror's release-0.3.20-node back at the pin c4459193, release-0.3.21-node open at 55768f88. THE LATE-JOIN COMMIT (N9's second half, the node lane): 70e4601e on the box mirror as branch proof-hold-fix, from c4459193, two files (igneum/exec/src/proving.rs, protocol/flows/src/v10/proving.rs); the gap was the fetch side on the joiner (the served record ran the native check against the joiner's trailing exec state before anything was stored, the check refused it, the proof was never held, the body rule read "not held" for 20 s and failed the IBD); the fix holds the proof by hash before the checks (the pool entry still needs them) and the serve side says when it holds fewer than asked; the exec suite 32 passed at 13:26Z with the known-failed shape first, the flows check green 13:28Z, igneumd on build-1 at the 0321 worktree path built 13:32Z, sha256 17649eeb2f7d1290, string read back; with the testnet lane (the resume form, B alone); it joins the 0.3.21 staging as its own commit. THE WIPE CANARY ON c19-1, c4459193 (sha 45be9b02d1b002f5, string read back): FORM END rc 0 at 13:50:53Z. Wipe synced 13:35:50Z (57 minutes, inside the 98-minute class); mining 13:36:00Z to 13:47:07Z, 66 mined, 66 accepted, 0 rejected, isSynced true at the tip throughout; the hub holds 41 of its blocks in its last 700 with 0 rejects (13:47:09Z); the restart on its kept datadir at 13:47:15Z: the old process stopped at once (the new process's first lock line seven seconds after the marker; the watchdog held nothing, the b7cc37e7 fault closed), synced again at 13:48:39Z after 84 s, 109 templates read with max 3,432 ms and 0 timeouts; the kept read on pool-1's 0.3.17 copy on the same pod passed at 13:38Z (the rewrite line once, a clean second start). The pin's set on c4459193: the digest gate PASS, the mixed-version gate PASS, the wipe canary PASS, the kept read PASS, the restart PASS, the 12 GB line proves and verifies (paid is a race, not a gate); CASES END from c20-1 (about 14:50Z) is the last pin line. THE INTEROP FACT stands from the void run: the 5899f603 hub accepted 235 object-byte-5 blocks from the 8097d600 node with 0 rejected, one digest on all five nodes on the live sixteen-field file. The gates: the digest test and the kaspa-pow vector test (the amended devnet epoch-0 id 1a4230699a6b9c60 must equal, c120d7963abdcd96 must differ, the v3 control unchanged) on the box; the mixed-version Devnet 2 gate (the amended 0.3.20 node beside a 5899f603 node for ten minutes on the live file without the v4 fields) after the Mac build; the fresh-join canary the 0.3.20 cut's | +| Main's rulings (7 October, morning) | no generator change to v4 on the live devnet; the record's null is the window model with numbers, sent by the hash lane to the attack-pass lane so AP-F8-1 re-gates against it; a fault beyond the model (a low-entropy source at site 15) stops at the coordinator with the two options priced (a 0.3.19 class amendment before the flip, or the flip held at the floor), nothing shipping without the founder's word; the tighter tail, an acceptance bound on the hot-set share, is a CLASS V5 item (sent to the v5 lane a6410f3b8abefb762 with the 64-seed census as its gate; the bound's number follows from the model) | ### AP-F4-1, the weak-day MUL draw (the attack-pass lane, 7 October, morning): PASS against v4, a class v5 rule diff --git a/tools/site-deploy-from-mirror.sh b/tools/site-deploy-from-mirror.sh index e3776023..31867106 100755 --- a/tools/site-deploy-from-mirror.sh +++ b/tools/site-deploy-from-mirror.sh @@ -12,7 +12,7 @@ REF="${1:-build/master}" git fetch -q build master SHA=$(git rev-parse "$REF"); SHORT=${SHA:0:8} # a GIT-LESS export (main, 7 Oct 2026 19:4x BST: the worktree deploy G72XWh48k was BLOCKED by the team's commit-author check, which -# cannot resolve 337424239+[removed] while the GitHub account is suspended; an export carries no Git +# cannot resolve the commit author's noreply address while the GitHub account is suspended; an export carries no Git # metadata, so the check does not apply). The deploy directory must hold no .git; the check below refuses otherwise. W=$(mktemp -d "${TMPDIR:-/tmp}/site-deploy.XXXXXX") trap 'rm -rf "$W"' EXIT