Build capsules/per-isa-doe.4th: per-ISA campaign driver (N=3, 18 trials/ISA)
Build / build-amd64-iso (push) Canceled after 0s
Build / build-aarch64-iso (push) Canceled after 0s
Build / build-riscv64-img (push) Canceled after 0s

Thin wrapper over multiuser-doe.4th's own MU-EXEC-CAMPAIGN, which already
implements the ratified 6-cell factorial generically -- adds only what
FABRIC-3.md §XXXIV.4's per-ISA pivot needed: one fixed seed per ISA,
N=3 reps/cell=18 trials/ISA (ratified over §XXXV.5's own N=2 safety-margin
recommendation, Captain Bob's explicit choice), an ISA tag threaded into
the trial marker so records from all 3 ISAs' sequential campaigns can be
told apart on the shared disk/artemis.img, and three single-word
no-argument entry points (RUN-AMD64-CAMPAIGN/RUN-AARCH64-CAMPAIGN/
RUN-RISCV64-CAMPAIGN).

Blocks 5117-5119 -- the only 3 remaining in the [2048,5120) user block
namespace; mkcapsule --lint caught the first draft going one block past
the ceiling. Verified live, load-only: both capsules load with zero
UNKNOWN WORD/redefinition/error lines, all 3 entry words resolve,
constants compile correctly. No campaign trial has been run yet --
build+verify only, per explicit scope for this pass.

FABRIC-3.md §XXXV.8/.9 records the decision and verification.

Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
This commit is contained in:
Robert Allan James
2026-09-17 12:30:43 -04:00
co-authored by Claude Sonnet 5
parent 3223fac2a0
commit 8b8e8e1405
4 changed files with 9355 additions and 4 deletions
+6 -2
View File
@@ -1,5 +1,5 @@
# Capsule Block Manifest — Auto-generated
<!-- Generated by mkcapsule --manifest 2026-09-16T19:45:24Z -->
<!-- Generated by mkcapsule --manifest 2026-09-17T16:28:31Z -->
<!-- DO NOT EDIT — re-run mkcapsule --manifest to refresh. -->
<!-- Hand-written justifications and immutability notes live -->
<!-- in MANIFEST.md alongside this auto-generated index. -->
@@ -28,6 +28,7 @@
| `init.4th` | 2049, 2050, 2057 | `0x1ef4939ed32ec1e6` | yes |
| `lib.4th` | 4050 | `0x4b216635c359ef73` | yes |
| `multiuser-doe.4th` | 5044, 5045, 5046, 5047, 5048, 5049, 5050, 5051, 5052, 5053, 5054, 5055 | `0x22140588ee7c39e6` | yes |
| `per-isa-doe.4th` | 5117, 5118, 5119 | `0xe3a6c1352d3ecaed` | yes |
| `process.4th` | 4300, 4301 | `0x781afc1dbd0294f7` | yes |
| `sdk.4th` | 5109, 5110, 5111, 5112, 5113, 5114, 5115 | `0x008fdbbb62c94a3a` | yes |
| `turtle.4th` | 5100, 5101, 5102, 5103, 5104, 5105, 5106, 5107, 5108 | `0x4d470418ca543365` | yes |
@@ -409,10 +410,13 @@
| 5114 | `sdk.4th` | `0x008fdbbb62c94a3a` | ok |
| 5115 | `sdk.4th` | `0x008fdbbb62c94a3a` | ok |
| 5116 | `hermes:init.4th` | `0x2df61924448a6812` | ok |
| 5117 | `per-isa-doe.4th` | `0xe3a6c1352d3ecaed` | ok |
| 5118 | `per-isa-doe.4th` | `0xe3a6c1352d3ecaed` | ok |
| 5119 | `per-isa-doe.4th` | `0xe3a6c1352d3ecaed` | ok |
## Conflicts
None.
---
*39 capsule(s) scanned. Re-run `mkcapsule --manifest <dir>` to refresh.*
*40 capsule(s) scanned. Re-run `mkcapsule --manifest <dir>` to refresh.*
+45
View File
@@ -0,0 +1,45 @@
Block 5117
( per-isa-doe.4th - per-ISA DoE driver. FABRIC-3 SXXXIV.4/ )
( SXXXV.5/.7: 6-cell factorial from multiuser-doe.4th's own )
( MU-EXEC-CAMPAIGN, unchanged. Adds: one fixed seed per ISA, )
( N=3 reps/cell=18 trials/ISA (ratified 2026-09-17, not the )
( N=2 SXXXV.5 recommended). Load multiuser-doe.4th FIRST. )
20260917 CONSTANT AMD64-SEED
20260918 CONSTANT AARCH64-SEED
20260919 CONSTANT RISCV64-SEED
18 CONSTANT PER-ISA-NREPS
CREATE PER-ISA-TAG-BUF 16 ALLOT
VARIABLE PER-ISA-TAG-LEN
: PER-ISA-TAG! ( c-addr u -- )
DUP 16 MIN PER-ISA-TAG-LEN !
PER-ISA-TAG-BUF PER-ISA-TAG-LEN @ CMOVE ;
S" ?" PER-ISA-TAG!
Block 5118
( artemis.img is shared across all 3 ISAs' sequential runs )
( (SXXXV.2 item 2) -- tag each trial so records can be told )
( apart. Redefines MU-EMIT-TRIAL-MARKER (not ACL-pinned in )
( multiuser-doe.4th): same fields, isa= prefixed. )
: MU-EMIT-TRIAL-MARKER ( -- )
." MU-TRIAL isa=" PER-ISA-TAG-BUF PER-ISA-TAG-LEN @ TYPE
." run=" MU-RUN-ID @ .
." cfg=" MU-CFG @ .
." rep=" MU-REP @ .
." nw=" MU-NW @ .
." mode=" MU-MODE @ .
." fail=" MU-FAIL-COUNT @ . CR ;
Block 5119
( Per-ISA entry points, single word, no args -- for boot )
( injection or the live console. Run ONE per boot: this repo's )
( one-QEMU-at-a-time rule keeps the 3 ISAs separate, sequential)
( boots, never auto-chained here. )
: RUN-AMD64-CAMPAIGN ( -- )
S" amd64" PER-ISA-TAG!
AMD64-SEED PER-ISA-NREPS MU-EXEC-CAMPAIGN ;
: RUN-AARCH64-CAMPAIGN ( -- )
S" aarch64" PER-ISA-TAG!
AARCH64-SEED PER-ISA-NREPS MU-EXEC-CAMPAIGN ;
: RUN-RISCV64-CAMPAIGN ( -- )
S" riscv64" PER-ISA-TAG!
RISCV64-SEED PER-ISA-NREPS MU-EXEC-CAMPAIGN ;