diff --git a/docs/plans/pool.md b/docs/plans/pool.md index 30c21215..fd2b13d8 100644 --- a/docs/plans/pool.md +++ b/docs/plans/pool.md @@ -236,3 +236,5 @@ a wrong-size cache and mismatched silently); a pool on a class v4 network needs Building the pool crate on igneum-build-1: the pool reads the fork through the `vendor/igneum-node` symlink; lib.sh syncs the fork worktree it points at (`vendor/igneum-node-pr`) as a whole repository, and the symlink itself is created once on the box by hand (`ln -s igneum-node-pr /srv/builds//vendor/igneum-node`), the one step the scripts do not do. + +**Rule (7 October 2026, the Devnet 3 pair):** a pool daemon is built from the same repo tree as the chain's node, never a release behind; the 0.3.21-tree daemon hashed class v4 sub-version 2 against Devnet 3's re-pinned sub-version 3 and refused every share as WRONG HASH. The Devnet 3 pair runs the 0.3.22-tree daemon (c15b39b0, fork 69d1b56e). diff --git a/docs/plans/release-0.3.22.md b/docs/plans/release-0.3.22.md index eac04242..5838c1f7 100644 --- a/docs/plans/release-0.3.22.md +++ b/docs/plans/release-0.3.22.md @@ -69,3 +69,19 @@ Three commits on 96161037: bd710a36 the sub-version 3 re-pin (byte 7, igneum-pow **The 0.3.22 app tree at 19:15 BST, release-0.3.22 c977786b on the box mirror:** 27ab317e (release-0.3.21 44b63ac9 + driver-check 46cc41e9) + pool-finish-21 8f2aae75 (the Devnet 3 split-read tool) + signing-22 e1b01654 (vote on by default pinned by test; Overview and Cards rows read signing or silent with the reason) + key-22 6501558f (scene/live-dag.js 2.0.5 legend, the app's chain card renders it, the site untouched) + c977786b (node_peers adds dn3-g1 64.119.209.250:21703 and dn3-g2 154.64.230.67:27017; self-test reads four). App gate on build-2 GREEN at every step (last 259 + 33 + 8, rc 0); pre-push 56 on each push. Riding if on the mirror by 19:45 BST, else 0.3.23: boot-start-22 (the engine starts at boot without a logon on Windows; a headless engine never reads a closed stdin as the host leaving), the export-wait reliability item (a worker never waits on the export past one retry interval), the driver-check hold-every-card-of-the-vendor rule, the UI lane's shard words. The Mac node pair builds on 34a2dbaa under the lock from 19:12 BST (r0322/mac-node-34a2dbaa.sh), then the DMG. **PC 2 tonight:** the take-4 0.3.21 installer (mingw host, run-20261007-175020) was picked up at 18:51:57 BST before its removal deployed and the runner's abort ended the install in its first second (the build-server lane's fault, two rules added to the job tooling: an installs-app job is never removable without --force; never remove a published job without reading the machine's latest line); the update-return lane re-ran the kept installer at 19:07:56 BST and the 0.3.21 engine then restarted four times a minute apart and died ("quit requested by the window host went away (stdin closed)" 3 s after the node start: an engine started by a parent whose stdin closes at once); the project lead reinstalled PC 2 by hand with the public 0.3.20 installer (45b2f3fb, the MSVC host; the public alias confirmed as that file by hash at 19:12:54 BST). PC 2 is read-only for every lane until its app uploads as 0.3.20; then the 0.3.22 installer job (--installs-app) and the smoke, one job at a time; then the Intel lane's driver retry with the minidump copy folded in (one UAC click). PC 1: released to the Counter lane's queue at 19:04:37 BST (the 0.3.21 MSVC host e223db18 built there in 9 s, collected by the relay Blob); one slot for the 0.3.22 host (app/windows/version.h moved to 0.3.22, host.cpp untouched). + +## 8. Published: the Mac entry and the hive, both download folders (20:0x BST) + +**The 0.3.22 tree closed at 5a84925b (19:46 BST)** = c977786b + MF-14 7a9c8371 (export wait) + driver-hold-22 f8ed911e (every card of the vendor) + boot-start-22 345336d8 (boot start, headless engine, no stdin quit) + shards-22 9a4d3429 + the pool daemon fix 9fd3b258 + window-22 07a97c65 (the opening size from the primary monitor) + boot-start-22 8da235e6 (the window host gate) + ota-cut a4f58820 (ui/VERSION 1.0.2, the pair check) + driver-hold-22 d571a120 (Intel 6733 row); app gate GREEN on build-2 at every step (last 269 + 34 + 8), UI 83, pre-push 59; then 58409175 (the Windows node pin to 34a2dbaa) and 4cdcab31 (the pool split-read tool) on the packaging and tools side only. + +**Interface 1.0.2 LIVE 19:45:33 BST** in the 0.3.21 manifest (the Prove switch fix, cut from the 0.3.22 UI tree at 1d975bcc, min_engine 0.3.21, bundle 84b679ce), after the project lead's Mac screenshot showed interface 1.0.1 (cut from 0.3.20) serving the pre-fix rules over the packaged 0.3.21 UI; the version-pair gate (pair-check.mjs) now refuses a manifest whose interface bundle is not from the app entry's tree. + +**The token rotation (main's A, 19:5x BST):** the current dl token sits once in history (564acab5, a deleted bench log), so it rotates in 0.3.22: dl-token.next minted on the Mac (the first value voided at 19:54 BST after one tool trace printed it, its folder removed; the replacement's fingerprint 6a5f3d09, never printed), the new folder created, every cut from then reads the .next file (build-dmg.sh and make-payload.sh by default), the 0.3.22 manifests written in BOTH folders (publish-manifest.sh --dest and --base-url for the new one, the override, min_supported and the signed 1.0.2 interface entry carried by hand; the interface entry keeps its old-folder URL until 0.3.23 re-signs it in the new folder; the two manifests differ only in the folder inside the URLs), one deploy; the old value is refused 24 hours after the intake shows no header on the old path, the same clock as the floor file's removal; the history rewrite masks it. publish.mjs (ui-ota) reads dl-token directly and takes the .next rule on 0.3.23. The hive package carries no token. New jobs publish with URLs in the new folder. + +**Mac LIVE 20:00:42 BST, channel devnet-3, both folders:** Igneum-Miner-0.3.22-34a2dbaa.dmg 5ec57528 (45,442,838 bytes; app 5a84925b, the Mac node pair 7346022d/d91ad025 built on the Mac under the lock from 34a2dbaa; packaged config igneum-devnet-3, four peers, no override file, the new folder's manifest URL), interface 1.0.2 with ui_version stamped, the floor file kept for the 0.3.20 and 0.3.21 apps; the old folder's manifest advertises 0.3.22, so every app moves on its next check; read back from both folders. Runbook r0322/deploy.sh (preflight: both manifests same fields, every mac URL inside its own folder). **HiveOS 20:03:07 BST:** igneum-hive-0.3.22.tar.gz 8ad6dcef (the 34a2dbaa hive pair glibc 2.31, the two hive-class workers, the two kit zips under packs/ incl. the Devnet 3 epoch-0 pack fce15bf61030be57, smoked in ubuntu:20.04) in both folders and at the public alias (publish-public.sh names the alias target from igneum-hive-.tar.gz, so the public copy carries the plain name); the fleet sweeps the Devnet 3 nodes to 34a2dbaa after wave 1 (dn3-g1 first; the live shared-devnet nodes stay on c4459193 until the apps have moved). + +**Devnet 3 first lock 20:02:46 BST:** checkpoint 235 LOCKED on both genesis boxes (block 50266abe, blue score 7050; dn3-g2 signed 100.1 percent of active, dn3-g1 98.4 percent), 1 h 56 min after the first accepted block; finality active from DAA 7,200; wave 1 of the standing boxes' second nodes started 20:03:06 BST. Proven share, first hour (19:59 BST read): 0.285 cumulative since genesis (no prover in the chain's first 51 minutes); ten provers claiming at about 1.2 times the chain's rate; the 24-hour window for mandatory verification counts from the first hour whose own segments read one. Relay cases on Devnet 3: CASES END rc 0 at 19:49:06 BST with the relay cell READ on the relay's own log (the poison's digest refused twice, 0 peers, 0 blocks); the hub-holds-target cell on a fresh pod goes in the record. The card (r0322/discord-card-devnet3-0322.md) read by main at 20:05 BST, three edits taken; it publishes the minute the Windows entry is live. + +**Rule from the pool lane (recorded here and in the pool plan):** a pool daemon is built from the same repo tree as the chain's node, never a release behind; the 0.3.21-tree daemon hashed class v4 sub-version 2 against Devnet 3's sub-version 3 and refused every share as WRONG HASH; the Devnet 3 pair runs the 0.3.22-tree daemon (c15b39b0) since 20:02 BST. Also: a template every second on a 1-block-a-second chain outlived the 12-job window (25,477 unknown_job shares); the daemon keeps jobs 60 s or 256 per member (9fd3b258, in 0.3.22). + +**Windows, in flight:** the 0.3.21 Windows entry is skipped in favour of 0.3.22's; window-22 changed host.cpp and the host gate refuses a host without the cut's version, so a fresh MSVC host builds on PC 1 in a slot after the hash lane's 5090 pass (about 20:20 BST, unelevated, no click), then host.sha256, the kit, the PC 2 installer job (--installs-app) and the smoke (0.3.21 to 0.3.22, the LG-4 timed steps as one measured row "one run, PC 2, not a fresh image"); reading about 21:30 BST. The rights-at-install step (3fbf4280) raises one UAC on a first install and the project lead's rule tonight is no click, so it rides 0.3.22 only with a "deferred in a job session" commit by 20:20 BST, else 0.3.23. PC 1's elevated passes cannot run under the no-click rule; the hash lane rebuilt the efficiency pass through the Power Helper task (unelevated).