Status: NOT-TESTABLE — 2026-08-23. The pre-fit clause PF-OCC fired at 3 of 6 primary
cells — all three scatter — so the goal set labelled GOALSET was not occupancy-dominant there and
no arm was ever fit; nothing below the NOT-TESTABLE line was scored. The registered consequence
is "published curve and share distribution, no lever, no re-roll": Gate 009's licensed goal-set
lever is spent, unmeasured — not discharged negatively, which is the STOP branch this gate did
not reach. Disclosure 3 predicted this failure mode verbatim before any number existed. See
Result at the foot of this file.
Status at registration: REGISTERED — 2026-08-10. Pre-registered BEFORE any arm exists, any harness line is
written, and any number is measured: the four arms, the admission rule, both bars and their
provenance, the verdict tree including its named X-RES branch, the NOT-TESTABLE ladder, the
RAND(ρ; origin) control, the extended RHO ladder, the LCG base and its screening set, the
seed/variant plan, the frozen draw order and the reproduction contract are all frozen by the commit
that registers this file and do not move.
Road: Cross-world transfer (OPEN).
Licensed by Gate 009's GO (M-B, single basin), whose registered Consequence reads verbatim: "GO (M-B) ⇒ the successor gate is registered on goal-set / task design, and must carry a displacement-matched control from the start." This is that successor. It fits no warm arm, reads no repertoire, creates no rung, and changes no metric; it decides whether the licensed lever is the operative one, and it is designed so a "no" is as legible as a "yes".
The instrument is still saturated. Gate 009 published TIE_end = 0.917–0.979 across all six
primary cells: two independent cold fits reach bitwise-equal scores on ~95% of held-out goals.
A warm-vs-cold transfer gate registered on that instrument returns NOT-TESTABLE on decidability
before it measures anything, which is precisely what Gates 004 and 005 did. The five standing
obligations ROADMAP records for the eventual Gauntlet transfer gate are untouched by this file and
still bind whoever writes it; they are not discharged here and cannot be, because an instrument that
cannot resolve cannot discharge them.
Two probes have already narrowed the licensed lever, and neither is in ROADMAP. They exist only
in docs/journal/2026-W31.md (2026-07-31 13:54 and 19:22) and in commit c0495be. Both are napkin
stage — no pre-registration, no controls, one world, one seed, n = 10 — so neither is evidence in
this project's sense. They are recorded here as priors that shaped the design, exactly so that a
reader can see what this gate is not re-testing:
- The fitness-channel hypothesis is falsified.
SandboxOccDomain/SandboxPolicyMemoryOcc(src/sandbox.mojo:746-805) restrict the ES loss to the 16 occupancy dims. Run onroomvariant 0 against goals pre-filtered to demand genuine occupancy movement, both the 18-dim control arm and the 16-dim arm producedDgrid = 0.0on 10 of 10 goals, and their mean occ-fitness came out bit-identical. Restricting which BC dims the score reads changed nothing whatsoever. - M1's pushable family is equally saturated. Gate 009's own secondary
push_roomcells — push ON,SB_SEED_BLOCKS = 12, K4 admission,FEW_ITERS_M1 = 12— returnedCOLLAPSE / TIE_end = 1.000at all three seeds. The world knobs Gate 008 froze do not desaturate the instrument either, which is consistent with Gate 008's own NOT-TESTABLE verdict.
And the 19:22 entry's own reading points somewhere the licence does not reach. It proposes — and
labels, correctly, as interpretation rather than measurement — that the basin is fixed by the
zero-init/argmax degeneracy before any loss gradient acts. Gate 009 erratum E1 supports it: at
the zero origin every logit ties, policy_argmax breaks to the first max, and RHO_50 sat pinned to
the ladder floor of 1e-4 in all six primary cells, i.e. two policies 1e-4 apart already diverge on
~80% of draws. That is a property of the fit's initialization, not of the goal set — and M-B
explicitly does not license moving fit parameters (that was M-A's branch).
So the gate to register is the one that settles it. Put the licensed lever and the unlicensed alternative in the same run, as a 2×2, so whichever is the mechanism is measured rather than argued — and so a STOP closes the lever on evidence rather than on a napkin. If the licensed lever wins, the transfer gate can finally be registered. If the initialization wins, Gate 009's Consequence was aimed at the wrong target and this file says so in advance, in those words, so the finding cannot later be quietly relabelled.
On the base walls family (room, scatter) at the unchanged few-shot budget and with an
unchanged policy_score, a goal set admitted so that world-state change carries signal that pose
change cannot (GOALSET) lifts the resolvable fraction RES = 1 − TIE_end past an inherited bar at
all three room seeds, and does so where a matched change to the fit's initialization alone
(INIT) does not — so the goal-set lever Gate 009 licensed is the operative one.
Falsifiable three ways. If neither treatment arm lifts RES past even the lower inherited floor,
the licensed lever's cheap form is spent and the verdict is STOP. If INIT clears a bar that
GOALSET does not, the mechanism is the initialization and the verdict is PARTIAL — booked as a
contradiction of Gate 009's Consequence, never as a GO. If the goal set cannot be made
occupancy-dominant at all, the treatment was never applied and the verdict is NOT-TESTABLE, decided
in seconds with zero fits.
| arm | goal set | fit initialization | role |
|---|---|---|---|
| BASE | gen_family_s, unchanged |
memset_zero |
ANCHOR — must reproduce Gate 009 bitwise |
| GOALSET | occupancy-dominant admission | memset_zero |
TREATMENT — the licensed lever |
| INIT | gen_family_s, unchanged |
randn_float64(0,1) · INIT_SCALE |
REFUTER — the alternative mechanism |
| BOTH | occupancy-dominant admission | spread | interaction; refutes "the goal set adds nothing once the init is non-degenerate" |
INIT and BOTH use the existing INIT_SCALE = 0.5 (src/transfer.mojo:73). No new constant
enters, and the choice is not free: INIT_SCALE is the scale at which gen_family_s draws the
policies whose terminal BCs are the goals, so the spread arm searches from the same distribution
the target was drawn from. Any other scale would be a tuned knob and is forbidden by the
anti-stone-soup clause below.
Within an arm, the two fits of a pair share one origin. For BASE/GOALSET that origin is the
zero vector; for INIT/BOTH it is a single spread draw per goal, used by both fits. This keeps the
tie event the exact analogue of Gate 009's — same init, different fit-RNG — so TIE_end means the
same thing in all four arms and the 2×2 is a clean comparison. Two fits from different origins is a
different question; it is measured, for free, as the TIE_cross diagnostic below, and it is not what
TIE_end reports.
The 2026-07-31 13:54 literature round stated the requirement in one sentence: "a goal set must make world-state change carry signal that pose change cannot, or the ES rediscovers the same basin." This is that sentence implemented as goal-set design, in the shape Gate 008's K4 rule already established and licensed — the score stays byte-identical; the goals change.
Let z be the terminal BC of the zero policy rolled out in the same world (one
sandbox_rollout, zero RNG draws). For a candidate goal BC g:
occ2(g) = Σ_{d=0..15} (g[d] − z[d])² # sandbox_bc dims 0..15 — block occupancy
pose2(g) = Σ_{d=16..17} (g[d] − z[d])² # sandbox_bc dims 16,17 — avatar r/15, c/15
share(g) = occ2(g) / (occ2(g) + pose2(g)) # 0 when the denominator is 0
Admission: draw exactly CAL_POOL = 256 candidates by the gen_family_s recipe (fresh
N(0, INIT_SCALE²) policy → 64-tick rollout → terminal BC + terminal cell key); apply the existing
emap.contains (empty map) and CellSet de-duplication filters unchanged; rank the survivors by
share descending; keep the upper half; take the first NUM_GOALS = 48.
Four properties, each load-bearing:
- The candidate count is fixed, not the accepted count.
CAL_POOLdraws happen whether or not a candidate is admitted, so the rejection rate cannot drift the global RNG stream — K4's own discipline (tests/test_m1_calibration.mojo:463, copied attests/test_fit_degeneracy.mojo:633). - "Upper half" is a rank rule, not a cutoff. There is no threshold to move afterwards. This is the same zero-free-parameter construction Gate 008 registered, for the same reason.
- The reference is the zero policy alone, not K4's seven. K4 asked "is this goal an attractor for
any constant-action policy"; this gate asks "does this goal's gap from the cold arm's own
starting behaviour live in occupancy". The zero policy is that starting behaviour, it is what
FROZENandBMOVEwere measured against in Gate 009, and it is a strict subset of K4's refs (underpolicy_argmax's first-max tie-break the zero policy is always-up). sandbox_bc,policy_score,calculate_fitness,BC_DIMandcapacity()are untouched. The score-design version of this fix — re-weighting or dropping the two pose dims — would work in one line and is exactly the forbidden move: it is a second metric change proposed after Gate 005's metric change returned STOP, and Gate 008 already refused this specific one.SandboxOccDomain/SandboxPolicyMemoryOccare not used by this gate, for that reason and for a second one recorded under Disclosure 5.
Metric — TIE_end per arm, with Gate 009's exact identity asserted per cell:
TIE_end = COLLAPSE + BLIND_abs + ISO (asserted; a failure raises)
RES = 1 − TIE_end (the resolvable fraction — the reported form)
TIE_end is the fraction of goals with d_a[g] == d_b[g] bitwise, where d[g] = -policy_score(...)[0]
— Gate 004/005's own TIE_frac, unchanged. COLLAPSE/BLIND_abs/ISO are Gate 009's mutually
exclusive channels, computed identically. RES is a presentation of the same number, not a new one;
it is used because both inherited bars are naturally stated as "the instrument resolves on ≥ X of
goals".
Consumer. Unchanged from Gate 009, and named as code rather than as an idea: the
NF / TIE_frac / decidable_count block — tests/test_cbr_retain.mojo::eval_cell:547-567,
tests/test_anytime_metric.mojo:332-347, its Gate 008 copy at tests/test_m1_calibration.mojo:197 —
which any future Gauntlet transfer gate inherits alongside src/transfer.mojo::run_family_select.
That block reads exactly one scalar per (arm, goal). This gate changes no scalar and proposes
none. RES is the ceiling on that block's decidable count: a goal on which two independent fits tie
bitwise is a goal no comparison built on d can ever resolve.
Held-out currency. Unchanged: goals are rollout-generated terminal BCs never seen by the fit, and the fit closes a real gap against them. The admission rule reads only the candidate goal's BC and the zero policy's — never a fitted policy, never an arm, never a repertoire.
Rejected proxies, each cheaper and each measuring something other than the tie event: ES fitness on the demonstration (the thing being optimized, not the thing being read); fast-weight L2 change alone (a fit-side quantity silent about behaviour); BC distance without a rollout; "did the score improve" (an aggregation level above the ties this gate exists to open up).
Placing a fresh threshold on a saturated quantity, after four gates have watched it saturate, is an invitation to place it where the treatment lands. Both bars are therefore lifted verbatim from already-registered gates that chose them for other reasons:
| bar | value | provenance |
|---|---|---|
| resolution bar | RES ≥ 0.95 (⇔ TIE_end ≤ 0.05) |
Gate 008's own registered hypothesis: "two independent COLD fits of the same held-out goal disagree by more than float dust on ≥95% of goals (NF > 0, TIE_frac ≤ 0.05)" |
| usability floor | RES ≥ 8/48 = 0.1667 |
Gate 004's N_DEC_MIN = 8 decidable goals out of Gate 009's frozen NUM_GOALS = 48 — the minimum resolvable fraction any transfer gate could clear |
For scale, the same quantity on Gate 009's published cells: RES(BASE) is 0.083 / 0.063 / 0.021 at
room seeds 0/1/2 and 0.021 / 0.083 / 0.021 on scatter — below even the usability floor in
five of six cells. Both bars therefore have genuine room to be met or missed, which is what makes
this gate worth running.
Scored on the primary worlds room and scatter at base dynamics and FEW_ITERS = 30, three
seeds ⇒ 6 cells; room is the world the verdict is read on (Gate 005/009 convention), scatter
is the reported contrast and must not contradict it.
NOT-TESTABLE — checked first, in this order; nothing below is scored if any trips:
- any reproduction-contract clause fails (below);
- PF-0, rollout-replica fidelity — Gate 009's clause, reused: the harness's action-recording
rollout does not reproduce
sandbox_rollout's terminal grid, terminal BC and terminal cell key bitwise on ≥ 3 draws; - PF-OCC, the treatment was never applied —
OCC_SHARE = median_g share(g)over the admitted goal set failsOCC_SHARE(GOALSET) ≥ 0.50 > OCC_SHARE(BASE), in any primary cell. The admission rule must move the median across the dominance threshold; if the "occupancy-dominant" goal set is not occupancy-dominant, the arm labelledGOALSETis not the treatment and nothing below means anything. Zero-parameter: 0.50 is the definition of dominant (occupancy carries at least half the squared gap), not a tuned cutoff. Checked before any fit is run, so the whole gate then costs seconds and publishes the share distribution; - PF-1, the policy-class floor — Gate 009's clause, reused verbatim:
COLLAPSE_rand(1.00) > 0.50in any primary cell, at either origin. Gate 009 passed it with a 5.8× margin, so it is unlikely to fire — it is kept because assuming a clause will pass is the inference Gate 008 was punished for; - the phenomenon is absent —
TIE_end(BASE) < 0.50in ≥ 2 of the 6 primary cells. The thing being fixed must be shown present in this draw before a fix is scored; - goal supply — fewer than
NUM_GOALS = 48goals are admitted from the fixedCAL_POOL = 256in a cell. Reported at the count that cell earned (Gate 009 erratum E4's precedent); the pool may not be raised, and if a cell yields fewer thanN_DEC_MIN = 8admitted goals it is NOT-TESTABLE and reported as such, never rounded up.
GO — the licensed lever is the operative one. All of:
- the identity
TIE_end = COLLAPSE + BLIND_abs + ISOholds exactly in every cell, every arm; RES(GOALSET) ≥ 0.95at all threeroomseeds;RES(INIT) < 0.95at ≥ 2 of 3roomseeds — the alternative mechanism does not do it alone;- the displacement-matched control agrees:
DRIVE(GOALSET) ≥ DRIVE_HI = 0.30, i.e. the arm's collapse rate exceeds that of random displacements of its own magnitude from its own origin, so the change is not an artifact of the arm simply travelling further; scatterdoes not contradict (it need not clear 0.95; it must not name the opposite mechanism).
PARTIAL — real but incomplete. Any of:
- PARTIAL (usable, not resolved) —
RES(GOALSET) ≥ 0.1667at all threeroomseeds but short of 0.95. The instrument becomes usable; the successor transfer gate may be registered, but must consume the measuredRESas its own decidability budget rather than assuming 48 goals; - PARTIAL (INIT-mechanism) —
INITclears a bar thatGOALSETdoes not, at ≥ 2 of 3roomseeds. This contradicts Gate 009's registered Consequence and is booked in those words: the licensed lever was aimed at the wrong target. It licenses a successor gate registered on the init / exploration-dynamics axis, and it is not a GO; - PARTIAL (interaction) —
BOTHclears a bar that neitherGOALSETnorINITclears alone. Neither single lever is sufficient; the successor must carry both and say so; - PARTIAL (cross-origin resolution) —
X-RES. Registered now, with its bar, so it cannot be invented after the fact. DefineTIE_cross = fraction of goals where BASE's cold_a and INIT's init_a reach bitwise-equal d[g]on the same goal set — free, because those two arms are paired by construction. If1 − TIE_cross ≥ 0.95at all threeroomseeds whileRES(BASE)stays below 0.1667, the registered finding is "the instrument resolves across origins but not within one": two fits from different starting points essentially always separate, even though two fits from the same starting point essentially never do. That would mean warm-vs-cold transfer is measurable on this family after all, and that the cold-cold noise floor Gates 004/005 hit was the wrong diagnostic. Nobody has measured this: Gate 004'sNFwas cold-vs-cold and itsn_decwas warm-vs-warm, so the warm-vs-cold tie rate has never been read.X-RESmay co-occur with any other branch and is reported in every case; DRIVE(GOALSET) ∈ [0.10, 0.30)— the matched control is ambiguous (Gate 009's band, reused);roomandscattername different mechanisms;- the LCG screening table names different mechanisms at different bases;
- ≥ 2 of 6 primary cells are flagged extrapolated on the
DRIVEinterpolation.
STOP — the licensed lever's cheap form is spent (fires at ≥ 2 of 3 room seeds):
- neither
GOALSETnorBOTHreachesRES ≥ 0.1667. Reading, stated now: goal-set admission cannot desaturate this instrument — the walls family's goal distribution cannot be filtered into resolution, because the fits' reachable behaviour set does not vary with which goals are asked for. Gate 009's Consequence is discharged negatively, the Cross-world transfer Road's sandbox instrument closes for the transfer question, and the Road reroutes to a family built for the purpose rather than filtered into shape.
Reported, never scored: RHO_50 (see the ladder note), POSE_SPLIT, CONV, BMOVE, Dact,
FROZEN, TIE_rand(ρ) at every rung, the full share(g) distribution, and MDE/MDE_rel per arm
(recomputed by Gate 008 erratum E3's verbatim formula, DELTA_REL = 0.02, since a changed goal set
changes the number the transfer gate is registered to consume).
| symbol | value | role |
|---|---|---|
| primary worlds | room, scatter |
Gate 004/005/009's cells, base dynamics (push_mode = OFF, no seeded blocks) |
| budget | FEW_N = 32, FEW_ITERS = 30, FEW_ALPHA0/1, FEW_SIGMA0/1 unchanged |
the budget every published TIE_end was measured at |
INIT_SCALE |
0.5, unchanged | the spread arms' origin scale; already the goal-generating scale |
NUM_GOALS |
48, fixed, no escalation | Gate 009's value, so RES(BASE) is comparable to its table |
CAL_POOL |
256 | Gate 008's K4 pool, unchanged |
RHO |
{1e-6, 1e-5, 1e-4, 1e-3, 1e-2, 0.05, 0.15, 0.30, 0.50, 1.00} |
10 rungs, 6 decades (see the ladder note) |
R_RAND |
256 pairs per (world, seed, ρ, origin) | SE on a proportion ≈ 0.031 |
RES_HI / RES_LO |
0.95 / 0.1667 | inherited from Gate 008 / Gate 004 respectively |
DRIVE_HI / DRIVE_LO |
0.30 / 0.10 | Gate 009's bands, unchanged |
DELTA_REL |
0.02 | inherited unchanged (Gates 005/008/009); feeds MDE only |
N_DEC_MIN |
8 | Gate 004's floor, used only by NOT-TESTABLE clause 6 |
| seeds | {0, 1, 2}, with variant = s |
Gate 009's plan, unchanged |
PROBE_LCG_SEED_BASE |
20260810 | the pre-fit probe's local RNG |
| screening set | {1, 12345, 20260101, 20260810, 99991} |
mandatory, registered here, not after |
push_room is dropped, and the reason is stated rather than left as silence: Gate 009 already
measured it at COLLAPSE / TIE_end = 1.000 in all three cells, and this gate's lever is the goal
set, not the world. Re-running a world already shown saturated would add cost and no information.
Every RNG seed that feeds a scored number is registered. The pre-fit stage draws zero from the global stream; its randomness comes from the local LCG Gate 009 already uses, Box–Muller'd into Gaussians, seeded by
probe_seed_for(kind, variant, seed_idx, rho_idx, origin_idx)
= PROBE_LCG_SEED_BASE + 7919·kind + 104729·variant + 1299709·seed_idx
+ 15485863·rho_idx + 32452843·origin_idx
PROBE_LCG_SEED_BASE = 20260810
The origin_idx term is the only extension over Gate 009's formula and it is registered here, before
any value is drawn. The pre-fit stage is re-run at all five bases in the screening set and the full
table published — a delivery obligation, not a flag-gated extra. If the named mechanism differs
across bases, the verdict is downgraded to PARTIAL.
Gate 009 found RHO_50 pinned to its ladder floor of 1e-4 in all six primary cells, so half its
M-A/M-B corroborator (TRAVEL_med vs RHO_50) carried no information and DRIVE alone did the
discriminating. Its erratum obliges a successor to check the curve is non-degenerate before reusing a
RHO_50 comparison, and explicitly sanctions extending the ladder: "should extend the ladder below
1e-4 if it wants that half back." This gate extends it two decades, to 1e-6.
Gate 009's anti-stone-soup clause also named "adding a rung that makes RHO_50 land conveniently"
as the sharpest available cheat on this ladder. Both things are true at once, so the extension is
made and RHO_50 is registered as reported-only, never gating, in this gate. The extension buys
a published curve for a successor; it buys this gate's verdict nothing, which is what keeps it clean.
Seeds 0, 1, 2 — three required, per the house rule; GO is AND-across-seeds, a STOP trigger fires
at ≥ 2 of 3. variant = s is passed to gen_walls_layout, which is already parametric on it, so each
seed draws a genuinely different layout and each redraws its goal sets and fit-RNG streams.
The frozen draw order, which is the single most likely implementation mistake in this gate.
BASE's entire 48-goal block runs first and untouched; every later arm runs as its own complete
block afterwards. Interleaving arms per goal would shift BASE's own stream position between goals
and destroy the anchor. INIT reuses BASE's goal set and BOTH reuses GOALSET's — that pairing
is what makes it a clean 2×2 and what makes TIE_cross free.
seed(s), variant = s
for w in [room, scatter]: # PRIMARY, base dynamics, FEW_ITERS = 30
gen_walls_layout(task, kind(w), variant = s)
PRE-FIT STAGE [local LCG only; 0 global draws, asserted]
zero-policy rollout -> z [0 global draws]
for origin in [zero, spread]:
for rho in RHO: R_RAND = 256 pairs -> COLLAPSE_rand / BLIND_abs_rand / ISO_rand /
TIE_rand / BLIND_cond_rand
RHO_50 (reported) ; PF-0 fidelity ; PF-1 gating check
goals_base = gen_family_s(empty EliteMap, task, ..., NUM_GOALS = 48) [global stream]
for g in 0..47: cold_a@30 -> w_a ; cold_b@30 -> w_b # BASE
for g in 0..47: spread origin o_g ; init_a@30 ; init_b@30 # INIT
PF-OCC check on goals_base -> OCC_SHARE(BASE) [0 global draws]
goals_occ = admit_occ_dominant(task, z, CAL_POOL = 256) -> 48 [global stream]
PF-OCC check on goals_occ -> OCC_SHARE(GOALSET) [0 global draws]
for g in 0..47: cold_a@30 ; cold_b@30 # GOALSET
for g in 0..47: spread origin o_g ; init_a@30 ; init_b@30 # BOTH
measurement rollouts for every fitted w and for w = 0 [0 global draws]
The RAND(ρ; origin) rollouts are computed once per (world, seed, ρ, origin) and their partition
evaluated against both goal sets from the same pairs. That is exact, not an approximation:
COLLAPSE_rand and BLIND_abs_rand depend only on terminal states and BCs, and only ISO_rand /
TIE_rand read d[g], which is a pure function of the already-computed BC and the goal.
The one that reads ~nothing if the treatment was never applied: PF-OCC. If the admitted goal
set's median occupancy share does not clear 0.50 and exceed the base set's, the arm labelled
GOALSET differs from BASE in name only. This costs seconds, runs before a single ES iteration,
and publishes the share(g) distribution either way. The mechanism has paid for itself in four
consecutive gates (006's ceiling clause, 008's SENS_occ, 009's PF-1, 010/011's N_eff).
The one that can take the claim away — the nuisance-matched control: RAND(ρ = TRAVEL; origin).
Gate 009's lesson, carried forward with the one extension this design forces. The nuisance is
parameter-space displacement magnitude, and now also origin: an arm that starts at a spread
point and one that starts at zero are not comparable against a single zero-origin null, because the
policy class is demonstrably not translation-invariant (E1: the zero point is the maximally
argmax-sensitive point in it). So each arm is compared against random displacements of its own
magnitude from its own origin. DRIVE_arm = COLLAPSE_arm − COLLAPSE_rand(TRAVEL_med_arm; origin_arm),
by log-linear interpolation in ρ over RHO — rule frozen now, before any TRAVEL is known. Cells
whose TRAVEL_med falls outside [RHO_MIN, RHO_MAX] are clamped, flagged extrapolated, and may
only support the verdict direction the clamp makes harder.
Without this control, a RES that rises because an arm simply travelled further would be
indistinguishable from one that rises because the goal set became informative — and naming either
would be a story rather than a measurement.
The one that separates the two levers from their conjunction: BOTH. If GOALSET and INIT
each move RES but BOTH moves it no further, the two are the same mechanism wearing two labels. If
BOTH clears a bar neither clears alone, no single lever is sufficient. Either reading is registered
above; neither can be produced by dropping an arm.
Each outcome has a number that can come back "not me":
- the goal-set claim dies if
RES(GOALSET) < 0.1667, or ifDRIVE(GOALSET) < 0.10, or if PF-OCC shows the admission rule never made the goal set occupancy-dominant; - the init claim dies if
RES(INIT) < 0.1667, or ifRES(INIT)is not better thanRES(BASE)on the same goal set (they are paired, so this is a direct comparison); - both die together under the STOP branch, and the gate says so.
- Zero
src/change of any kind.git diff --stat -- src/is empty. Every readout this gate needs already exists:gen_family_s,sandbox_rollout(which leaves the terminal grid in the caller's scratch, the BC inbcand the cell keys incells),make_demos,fit_operator,policy_score,calculate_fitness, andrandn_float64for the spread origin. The action-recording rollout is reconstructed harness-side from the exportedsandbox_obs/policy_forward/policy_argmax/sandbox_step, exactly as Gate 009'sroll_recorddoes.SandboxOccDomainandSandboxPolicyMemoryOccare not imported (Disclosure 5). - Baselines captured BEFORE the first edit of any kind — md5 of the outputs of
./esper test fit_degeneracy,./esper test cbr_retain,./esper test anytime_metric, re-verified after and printed either way. Under clause 1 this is guaranteed; it is checked anyway, because a contract that is only true by argument is not a contract. - Runtime asserts on the frozen constants:
BC_DIM == 18,BC_BLOCKS == 16,POLICY_DIM == 294,SB_ACTIONS == 6,SB_T == 64,SB_CELLS == 256,FEW_ITERS == 30,FEW_N == 32,INIT_SCALE == 0.5,FEW_SIGMA0 == 0.3. These are allcomptime, so the chain folds toif Falseand the compiler emits "unreachable code" — that warning is the check passing, and it may not be silenced. - Arm-blindness.
grep -nE 'nearest|nearest_k|select_uniform|\.weights'over the harness returns nothing — not even in a comment. This gate fits no warm arm, builds no repertoire and reads none (theEliteMapit constructs is empty and onlycontainsis called), so no value frozen here could have been chosen to favour a warm start. - G009CHK — the anchor.
BASE's per-cellTIE_end,COLLAPSE,BLIND_abs,ISO,TRAVEL_med,FROZENandCONV_medreproduce Gate 009's published table bitwise at all six primary cells. This is the check that matters most: it proves the added arms and the added admission draw introduce zero global RNG draws ahead ofBASE. Per Gate 011'sG010CHKlesson, the check is scoped to the path where the stream is well defined and the harness prints, on any other path, why it is disabled and where it is actually discharged — an over-implemented equality assertion is a harness bug, not a finding. - GCHK — the generator is inert.
admit_occ_dominant, run with its ranking filter disabled, reproducesgen_family_s's goal set bitwise at the same seed and stream position. A harness-local candidate generator that drifts fromsrc's by one draw would silently score a different world; Gate 010'sGCHKprecedent, reused. - Stream integrity. A
random_float64drawn immediately before and immediately after the pre-fit stage must equal the pair the stream would have produced with the stage removed — Gate 008's probe, re-used, and the reason the local LCG exists.
Scope of new code at eval, and nothing else may be added: tests/test_goal_set_init.mojo,
deliberately untagged (no # suite-tier: line) so its ES-free default path runs in both tiers,
with the fits behind --fits — which is already unreachable from CI by construction, since
run_tests.sh passes no argv. median_of, probe_lcg/probe_u01/probe_gauss,
probe_seed_for, roll_record, the identity assert and admit_goals' pool discipline are copied
verbatim from tests/test_fit_degeneracy.mojo, per the house policy that each gate harness
carries its own statistics so a later edit cannot silently move a published number. Gate 009's
harness is not edited; its ES-free default runs in CI and must keep printing its registered numbers
unchanged.
The fits stay single fits at the unchanged budget, one schedule for every cell and every arm. All of the following are scaffolding for this experiment, and a pass obtained with any of them is a documented negative regardless of the raw number:
- Touching the fit budget. Raising
FEW_ITERS,FEW_N,FEW_SIGMA0/1orFEW_ALPHA0/1anywhere in this gate — including "just to see". TheINIT/BOTHarms change only the contents of the starting buffer; every schedule constant is byte-identical across all four arms. - Introducing a second init scale.
INIT_SCALE = 0.5is used because it already exists and is already the goal-generating scale. Trying 0.1 or 1.0 after seeingRES(INIT)is the forbidden post-hoc knob; a different scale is a successor gate. - Editing, re-weighting, re-scaling or dropping BC dimensions, or changing
capacity(). This is the gate most tempted by that one-line fix, because it is the gate that measures the pose/occupancy asymmetry directly. A measured result here does not license editingsandbox_bc,policy_score,calculate_fitnessorBC_DIM. Gate 005 returned STOP on a metric change; Gate 008 refused this specific one; a third proposal after two refusals is the forbidden move. - A second admission rule. Trying another ranking after watching the first fail — this is the specific temptation this gate carries, so it is named. One registered rule, one run.
- Any mid-fit boost or mid-fit measurement, warm-starting one fit of a pair from the other,
re-fitting goals that tied, or any per-goal / per-world staging. Both fits of a pair are identical
budget from one shared origin, back to back on one stream. All measurement rollouts happen after
fit_operatorreturns, consume zero RNG, and may never feed a fit. - Raising
CAL_POOL,max_triesorNUM_GOALS, or re-drawing a goal set, variant or seed that produced an inconvenient number. - Post-hoc movement of any frozen value: the
RHOladder,R_RAND,RES_HI/RES_LO,DRIVE_HI/DRIVE_LO,DELTA_REL,PROBE_LCG_SEED_BASE, the screening set, the seed/variant set, the log-linear interpolation rule, the primary world list, the frozen draw order. - Promoting any no-promotion diagnostic to a bar, in either direction, once its value is known:
RHO_50,POSE_SPLIT,CONV,BMOVE,Dact,FROZEN,TIE_rand(ρ), theshare(g)distribution beyond PF-OCC's registered role. The Gate 007RECOVprecedent. - Best-of-seeds, dropped seed, dropped arm, dropped world, mean-over-cells when a per-cell
condition fails. In particular: dropping
INITbecause it wins, or droppingscatterbecause it disagrees.
This gate carries no re-roll. Gate 009 granted none, and the licensed lever gets one honest test. A NOT-TESTABLE here is published as such and the lever stays unmeasured; it is not an entitlement to a second design.
INITchanges something M-B does not license. It is included deliberately, as the alternative-mechanism control that could take the claim away, and its winning is registered above as a contradiction of Gate 009's Consequence rather than as a result of this gate's own hypothesis. A reader who thinks the arm should not exist is reading the licence correctly; the answer is that a gate whose only possible outcomes confirm its own licence is not falsifiable.- The treatment is an admission filter, not a new world or new goal semantics. The heavier
design — a family of worlds deliberately sharing recombinable sub-goals (Kashtan & Alon's
modularly varying goals,
docs/RESEARCH-NOTES.mdcandidate #5) — is a different hypothesis, requiring new worlds and, per Gate 008, its own numbered gate for any hand-authored sub-goal target. A STOP here does not refute it. What a STOP establishes is narrower and worth having: the existing walls family's goal distribution cannot be filtered into resolution. OCC_SHARE's achievable range is bounded by the world itself.sandbox_bc's occupancy dims are block fill fractions in quanta of 1/16 whose realized spread Gate 009 recorded as roughly [0, 0.15], while pose dims span [0, 1] in quanta of 1/15 — and walls shrink a block's reachable maximum, since occupancy counts only cells with value > 0. Pose can therefore dominate the squared gap by an order of magnitude before any filtering, and the upper half of a 256-candidate pool may still be pose-dominated. PF-OCC exists precisely to make that outcome a fast, honest NOT-TESTABLE rather than a treatment that quietly is not one.- The verdict is read on
roomalone, withscatteras the contrast — Gate 005/009's convention, kept for comparability, and it means the answer is about one world's geometry with a second as a check. - A live
src/defect, found while designing this gate and deliberately not fixed in it.SandboxPolicyMemoryOcc.apply(src/sandbox.mojo:786-805) callssandbox_rollout, which always writes 18 floats intodst, whileSandboxOccDomain.capacity()returnsBC_BLOCKS = 16—capacity()governs how many floats the distance reads, not how manyapplywrites. The ES hot loop hands each sample agrid_capacity-sized stripe (src/esper_evolution.mojo:171,:257), so withESWorkspace[SandboxPolicyMemoryOcc](BC_BLOCKS, FEW_N)— as attests/test_goal_set_occ_explore.mojo:158— every sample overruns its stripe by 2 floats and the last sample writes 2 floats past the end of a 512-float heap allocation. Contract clause 1 forbids touchingsrc/here, and fixing a bug inside a gate is how a gate stops being a reproduction of anything: it is recorded now and fixed in its own commit. Nothing in this gate imports either type, so nothing here depends on the fix. It does mean the 07-31 falsification cited above ran on a harness with a live overrun — which is a further reason it is treated as a prior rather than as evidence. variantis periodic, contrary to what ROADMAP implies.gen_walls_layout(src/sandbox.mojo:187-223) repeats with period 5 (shelves), 22 (columns) and 8 (room); only scatter is unbounded. Seeds {0,1,2} give three distinctroomlayouts, so this gate is unaffected — butroomvariants 0 and 7 get an effective 1-cell door, because the door rect overlaps the top/bottom wall rect, so seed 0 is a half-width-door world. Recorded because ROADMAP's standing obligation #1 ("the layouts are already parametric onvariant, so this costs a constant, not a build") is true only up to those periods, and the transfer gate that inherits the obligation needs to know.- A GO does not make transfer work. It makes the goal-set lever the one this evidence licenses spending the next gate on, and it hands the transfer gate an instrument that can return "no".
| component | cost |
|---|---|
| pre-fit stage: 10 ρ × 2 origins × 256 pairs × 2 rollouts × 2 worlds × 3 seeds ≈ 6.1e4 rollouts | seconds |
| 5-base LCG screen (pre-fit stage ×5) | seconds |
| fits: 4 arms × 2 fits × 48 goals × 2 worlds × 3 seeds at 30 iters = 2304 fits | ≈ 3 min CPU |
| measurement rollouts (~0.3% of the fits' own rollout cost) | negligible |
| total | ≈ 3–4 min CPU |
Gate 009's fit block was 576 fits in 43.6 s wall, so this is 4× that. Its registration budgeted 5–6 min for the same block and erratum E3 recorded the estimate as ~7× pessimistic; the figure above is scaled from the measured time rather than re-derived, so it should be close. No decision rests on it.
- GO ⇒ the goal-set lever is confirmed and the successor is the Gauntlet transfer gate,
registered against Gate 009's five standing obligations (
docs/ROADMAP.md, "Standing obligations on the eventual Gauntlet transfer gate") onGOALSET's admission rule, consuming this gate's publishedMDEandRES. - PARTIAL (usable, not resolved) ⇒ the same successor, but it must budget its decidability from
the measured
RESrather than fromNUM_GOALS. - PARTIAL (INIT-mechanism) ⇒ Gate 009's Consequence is recorded as contradicted; the
successor is registered on the init / exploration-dynamics axis, and it inherits this gate's
origin-matched
RAND(ρ; origin)control as the thing it must beat. - PARTIAL (interaction) ⇒ the successor carries both levers and names the interaction as its own question.
X-RES⇒ reported in every branch; if it fires, it reframes the Road's instrument question and the successor is registered on warm-vs-cold directly, since cross-origin resolution is exactly what a transfer comparison needs and the cold-cold noise floor was the wrong diagnostic.- STOP ⇒ Gate 009's licensed lever is discharged negatively in its filter form and may not be re-opened by another admission rule. The Cross-world transfer Road stays OPEN — a STOP closes a lever, not a Road — and the reroute is to a family built for the transfer question (the modularly-varying-goal design, which this gate does not test) rather than to the existing family filtered differently.
- NOT-TESTABLE ⇒ published curve and share distribution, no lever, no re-roll.
Scored against the registered criteria, unchanged. tests/test_goal_set_init.mojo, built at
fd74ad7 + this commit; zero src/ change. ES-free default path 38.9 s wall
(./esper test goal_set_init); the gate's own run ./esper run tests/test_goal_set_init.mojo --fits raises at 7.2 s having fit nothing.
| # | clause | outcome |
|---|---|---|
| 1 | reproduction contract (7 clauses) | PASS on 6; clause 5 (G009CHK) moot — see below |
| 2 | PF-0, rollout-replica fidelity | PASS — 0 mismatching draws of 60 checked (bar: ≥ 3) |
| 3 | PF-OCC, the treatment was never applied | FIRES — 3 of 6 primary cells (all three scatter) |
| 4 | PF-1, the policy-class floor | measured, not scored (below the line): passes at 12 of 12 (cell, origin), max COLLAPSE_rand(1.00) = 0.1133 against a > 0.50 trigger |
| 5 | the phenomenon is absent | not evaluable — requires fits, which sit below the line and were never run |
| 6 | goal supply | not evaluable at the scored position; the screen's own admitted counts are published below |
Clause 3 fires ⇒ NOT-TESTABLE. Per the registered ordering ("nothing below is scored if any trips"), the four-arm fit block was not executed. It is written, compiles, and has never run.
Bar, registered: OCC_SHARE(GOALSET) ≥ 0.50 > OCC_SHARE(BASE), in every primary cell.
OCC_SHARE = median_g share(g); 0.50 is the definition of dominant, not a tuned cutoff.
| cell | OCC_SHARE(BASE) |
OCC_SHARE(GOALSET) |
lift | admitted | PF-OCC |
|---|---|---|---|---|---|
| room s0 | 0.3627 | 0.8164 | 2.25× | 10 / 48 | pass |
| room s1 | 0.3777 | 0.6098 | 1.61× | 12 / 48 | pass |
| room s2 | 0.3275 | 0.6374 | 1.95× | 9 / 48 | pass |
| scatter s0 | 0.0584 | 0.3630 | 6.22× | 25 / 48 | FAIL |
| scatter s1 | 0.0459 | 0.3862 | 8.42× | 22 / 48 | FAIL |
| scatter s2 | 0.0983 | 0.2601 | 2.65× | 18 / 48 | FAIL |
The admission rule works and still misses. It lifts the median share in all six cells — hardest,
by 6–8×, in exactly the cells that fail — but on scatter it starts an order of magnitude too low
for the upper half of a 256-candidate pool to reach dominance. The failure is not marginal (margins
0.11–0.24 against the bar) and it is not a lucky draw: it holds at 3 of 3 scatter seeds, which
are three independent wall layouts and three independent stream positions.
Deciles of share(g), q = 0 … 100%, verbatim from the run:
room s0 BASE n=48 med 0.3627 | 0.0 0.0 0.0238 0.1081 0.2601 0.3408 0.5002 0.6098 0.7198 0.8123 1.0
room s0 GOALSET n=10 med 0.8164 | 0.6098 0.6098 0.6896 0.7052 0.7300 0.7888 0.8440 0.9462 0.9565 1.0 1.0
scatter s0 BASE n=48 med 0.0584 | 0.0 0.0 0.0 0.0 0.0120 0.0513 0.1207 0.1869 0.3085 0.4678 1.0
scatter s0 GOALSET n=25 med 0.3630 | 0.0654 0.1151 0.1495 0.2042 0.2926 0.3630 0.4020 0.5495 0.5904 0.8271 1.0
room s1 BASE n=48 med 0.3777 | 0.0 0.0 0.0192 0.1081 0.2155 0.3631 0.5844 0.6102 0.7174 1.0 1.0
room s1 GOALSET n=12 med 0.6098 | 0.3415 0.3883 0.4386 0.4678 0.5294 0.6098 0.6098 0.6241 1.0 1.0 1.0
scatter s1 BASE n=48 med 0.0459 | 0.0 0.0 0.0 0.0 0.0077 0.0374 0.1495 0.2195 0.3647 0.6749 1.0
scatter s1 GOALSET n=22 med 0.3862 | 0.1255 0.1993 0.2817 0.3053 0.3085 0.3338 0.4727 0.5481 0.9657 1.0 1.0
room s2 BASE n=48 med 0.3275 | 0.0 0.0 0.0163 0.0808 0.1634 0.2809 0.6098 0.6427 0.8123 1.0 1.0
room s2 GOALSET n=9 med 0.6374 | 0.2601 0.2601 0.4386 0.4386 0.6098 0.6374 0.6374 0.7888 0.9336 1.0 1.0
scatter s2 BASE n=48 med 0.0983 | 0.0 0.0 0.0 0.0060 0.0215 0.0868 0.1553 0.3259 0.5344 0.7579 1.0
scatter s2 GOALSET n=18 med 0.2601 | 0.0521 0.0669 0.1111 0.1993 0.2195 0.2601 0.3053 0.3483 0.4166 1.0 1.0
The 30th percentile is the whole story. On scatter, the bottom 30–40% of gen_family_s
goals have share(g) exactly 0.0: a fresh random policy rolls out for 64 ticks and leaves block
occupancy bitwise equal to the zero policy's — only the avatar's pose has moved. Gate 009 erratum
E2 established this about fits (BMOVE = Dgrid 0.0, Dact 1.0). This establishes it about the
goal distribution itself, which is a strictly stronger statement and was not previously measured:
the walls family cannot supply occupancy-demanding goals in the density the treatment needs,
because the policy class barely produces them.
COLLAPSE_rand(ρ ; origin) at the registered base PROBE_LCG_SEED_BASE = 20260810, R_RAND = 256
pairs per cell·rung·origin, on the ladder extended two decades to 1e-6:
| cell | origin | 1e-6 | 1e-5 | 1e-4 | 1e-3 | 1e-2 | 0.05 | 0.15 | 0.30 | 0.50 | 1.00 | RHO_50 |
|---|---|---|---|---|---|---|---|---|---|---|---|---|
| room s0 | zero | 0.156 | 0.203 | 0.219 | 0.152 | 0.176 | 0.109 | 0.137 | 0.098 | 0.082 | 0.094 | 1e-6 |
| room s0 | spread | 1.000 | 1.000 | 1.000 | 0.977 | 0.875 | 0.676 | 0.438 | 0.246 | 0.148 | 0.102 | 0.15 |
| scatter s0 | zero | 0.188 | 0.160 | 0.109 | 0.141 | 0.109 | 0.133 | 0.082 | 0.078 | 0.051 | 0.039 | 1e-6 |
| scatter s0 | spread | 1.000 | 1.000 | 0.992 | 0.969 | 0.863 | 0.570 | 0.320 | 0.133 | 0.105 | 0.047 | 0.15 |
| room s1 | zero | 0.164 | 0.191 | 0.133 | 0.152 | 0.160 | 0.117 | 0.129 | 0.090 | 0.074 | 0.113 | 1e-6 |
| room s1 | spread | 1.000 | 0.996 | 0.992 | 0.969 | 0.867 | 0.738 | 0.430 | 0.270 | 0.176 | 0.086 | 0.15 |
| scatter s1 | zero | 0.199 | 0.145 | 0.141 | 0.141 | 0.129 | 0.133 | 0.094 | 0.063 | 0.070 | 0.043 | 1e-6 |
| scatter s1 | spread | 1.000 | 1.000 | 1.000 | 0.973 | 0.816 | 0.613 | 0.344 | 0.250 | 0.102 | 0.059 | 0.15 |
| room s2 | zero | 0.180 | 0.125 | 0.141 | 0.160 | 0.156 | 0.129 | 0.117 | 0.109 | 0.086 | 0.090 | 1e-6 |
| room s2 | spread | 1.000 | 0.996 | 1.000 | 0.977 | 0.883 | 0.707 | 0.449 | 0.281 | 0.164 | 0.094 | 0.15 |
| scatter s2 | zero | 0.160 | 0.184 | 0.223 | 0.164 | 0.160 | 0.113 | 0.051 | 0.047 | 0.047 | 0.043 | 1e-6 |
| scatter s2 | spread | 1.000 | 1.000 | 1.000 | 0.977 | 0.777 | 0.594 | 0.344 | 0.215 | 0.102 | 0.031 | 0.15 |
The mandatory 5-base screening table (bases {1, 12345, 20260101, 20260810, 99991}, published in
full in the run log) is unanimous: RHO_50(zero) = 1e-6 and RHO_50(spread) = 0.15 in every one
of the 60 (base, cell, origin) rows. No base names a different mechanism.
Gate 009 erratum E1 is discharged, and the answer is not the one the extension was hoping for.
E1 obliged a successor to check the RHO_50 curve is non-degenerate before reusing it; the ladder was
extended two decades and RHO_50 at the zero origin is still pinned to the floor —
COLLAPSE_rand ≈ 0.15 already at ρ = 1e-6, six decades down. There is no resolution radius at the
zero origin to find, and a successor may not reuse a RHO_50 comparison there. (Per the registered
ladder note, RHO_50 is reported only here and gates nothing; the extension buys a successor's
curve, not this verdict's.)
And the curve found something nobody registered a hypothesis about. At the spread origin the
same measurement reads COLLAPSE_rand(1e-6) = 1.000 decaying to ~0.05 at ρ = 1.00 — a genuine
six-decade resolution curve where the zero origin has none. The two origins are not the same policy
class in the only sense this Road cares about. That is precisely the asymmetry the gate's one
registered extension (origin_idx in probe_seed_for, and a per-origin matched control) was built to
respect, and it vindicates that design decision even though the treatment never ran. It is
reported, not scored: INIT was never fit, so this says nothing about whether a spread
initialization would have desaturated TIE_end.
| clause | outcome |
|---|---|
1. zero src/ change |
PASS — git diff --stat -- src/ empty |
| 2. baselines before/after | PASS — captured before the first edit, re-verified byte-identical: fit_degeneracy cf098b3ce6e6d94d26be963c96bf114a, cbr_retain 1efbaee64fcda78c8c75897472be2634, anytime_metric f43edb3afc30f43f60e1b26f707d08c1 |
| 3. runtime asserts on 10 frozen constants | PASS — the chain folds to if False and the compiler emits unreachable code after 'if False'; the warning is the check passing, and it is not silenced |
| 4. arm-blindness grep | PASS — returns nothing, not even in a comment |
| 5. G009CHK — the anchor | MOOT — undischarged. It is implemented and scoped to room (where the stream position is Gate 009's), but it lives inside the fit block PF-OCC stopped. No BASE number exists for it to anchor |
| 6. GCHK — the generator is inert | PASS at 6 of 6 — with the ranking filter disabled, admit_occ_dominant reproduces gen_family_s's goals bitwise |
| 7. stream integrity | PASS — the pre-fit stage drew 0 from the fit stream, checked mechanically |
Clause 5 is recorded as moot rather than passed, and that distinction is the honest one. The
claim it protects — "the added arms and the added admission draw introduce zero global draws ahead of
BASE" — is argued (clause 7 proves the pre-fit stage is LCG-only) and not measured. It is a
standing debt on any successor that reuses this harness: the first run that reaches the fit block
must discharge G009CHK before publishing a BASE number.
One GCHK finding, recorded because it was nearly booked as a defect. The first run reported drift
at 5 of 6 cells. It was not drift. admit_occ_dominant draws exactly CAL_POOL = 256 candidates
while gen_family_s draws until it has 48, so on room the fixed pool yields 16–23 unique keys
against gen_family_s's 48 — a prefix, not a divergence, and every compared goal matched
bitwise. The check had been counting a registered pool property as a harness bug. It was rewritten to
compare the common prefix and report the shortfall separately under clause 6, which is the clause
that actually governs it.
The anti-stone-soup clause names "a second admission rule — trying another ranking after watching
the first fail; this is the specific temptation this gate carries, so it is named. One registered
rule, one run." No second rule was written, run, or measured. Nothing else on the forbidden list
was touched either: no budget constant moved, no second init scale exists, sandbox_bc /
policy_score / calculate_fitness / BC_DIM / capacity() are untouched, CAL_POOL /
max_tries / NUM_GOALS stand, and no frozen value moved after a number was seen.
One implementation choice is disclosed because the registered wording admits a second reading.
The rule is "apply the … filters unchanged; rank the survivors by share descending", which the
harness implements literally: de-duplicate first, rank what survives, keep the upper half. Gate 009's
admit_goals used the other order (rank the whole pool, then de-duplicate while walking). The literal
reading was chosen before any number existed, and it is the reading that makes GCHK exact. What
can be said without measuring the alternative: on scatter de-duplication removes ~80% of the pool,
so the top 128 of 256 contains roughly the same ~25 survivors this rule admits — the two orders would
select nearly the same goals. That is an argument, not a measurement, and the anti-stone-soup clause
forbids turning it into one.
One harness-structuring decision, disclosed because it moves where a raise fires — not whether.
The file is untagged (as the gate's scope requires), so its ES-free path runs in CI's fast tier.
PF-OCC raising there would turn the tier red to report a registered experimental outcome, two weeks
after this repo was burned by a red tier nobody noticed (docs/journal/2026-W33.md, 2026-08-10
16:20). So the default path prints the trip and exits 0; --fits — the gate's own run —
raises. The bar, the cells, and the verdict are identical either way.
It is not a finding about the hypothesis. No arm was fit, so the gate says nothing about whether
goal-set design or initialization is the operative lever, and nothing about X-RES. What it
establishes is that the registered instrument could not have answered on this world family, and it
establishes that in 7 seconds for zero ES budget — the fourth consecutive gate where a cheap pre-fit
clause paid for itself (006, 008, 010, 012).
Disclosure 3 predicted this outcome verbatim, before any number existed: "walls shrink a block's
reachable maximum… Pose can therefore dominate the squared gap by an order of magnitude before any
filtering, and the upper half of a 256-candidate pool may still be pose-dominated. PF-OCC exists
precisely to make that outcome a fast, honest NOT-TESTABLE rather than a treatment that quietly is
not one." The clause did exactly the job it was registered to do. A version of this gate without
PF-OCC would have spent 3–4 minutes fitting 2,304 policies and published a RES(GOALSET) on three
scatter cells where the arm labelled "occupancy-dominant" was nothing of the kind.
The registered NOT-TESTABLE branch reads verbatim: "published curve and share distribution, no lever, no re-roll." Both deliverables are published above. Taken with the anti-stone-soup clause — "This gate carries no re-roll. Gate 009 granted none, and the licensed lever gets one honest test. A NOT-TESTABLE here is published as such and the lever stays unmeasured; it is not an entitlement to a second design." — the consequences are:
- Gate 009's licensed goal-set lever is SPENT, UNMEASURED. It is not discharged negatively — that is the STOP branch, and this is not it. It is simply gone: the one honest test it was granted could not run on the family it was aimed at.
- No lever is licensed by this verdict. The STOP branch's reroute (a family built for the transfer question) is not imported here; it belongs to a verdict that was not reached. Disclosure 2 stands unchanged: the modularly-varying-goal design is a different hypothesis on worlds that do not yet exist, and neither a STOP nor this NOT-TESTABLE refutes or licenses it.
- The Cross-world transfer Road stays OPEN. A NOT-TESTABLE cannot close or park a Road, because the instrument never ran — Gate 010's precedent, applied unchanged.
- The Gauntlet world design Road stays PARKED by Gate 008. It unparks "only when a gate says the instrument can resolve at all". This gate did not say that; it said the instrument could not be asked.
- A standing debt is created:
G009CHKis undischarged, and the first successor to reach a fit block on this harness inherits the obligation to discharge it before publishing aBASEnumber.