Skip to content

Latest commit

 

History

History
801 lines (671 loc) · 55.5 KB

File metadata and controls

801 lines (671 loc) · 55.5 KB

Gate 012 — is the pose basin a property of the GOAL SET, or of the ZERO INITIALIZATION?

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".


Why this gate exists, and why it is not the transfer gate

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:

  1. The fitness-channel hypothesis is falsified. SandboxOccDomain / SandboxPolicyMemoryOcc (src/sandbox.mojo:746-805) restrict the ES loss to the 16 occupancy dims. Run on room variant 0 against goals pre-filtered to demand genuine occupancy movement, both the 18-dim control arm and the 16-dim arm produced Dgrid = 0.0 on 10 of 10 goals, and their mean occ-fitness came out bit-identical. Restricting which BC dims the score reads changed nothing whatsoever.
  2. M1's pushable family is equally saturated. Gate 009's own secondary push_room cells — push ON, SB_SEED_BLOCKS = 12, K4 admission, FEW_ITERS_M1 = 12 — returned COLLAPSE / TIE_end = 1.000 at 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.


Hypothesis

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.


The four arms (a 2×2, frozen)

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 treatment — admit_occ_dominant (zero free parameters)

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_POOL draws 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 at tests/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 FROZEN and BMOVE were measured against in Gate 009, and it is a strict subset of K4's refs (under policy_argmax's first-max tie-break the zero policy is always-up).
  • sandbox_bc, policy_score, calculate_fitness, BC_DIM and capacity() 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 / SandboxPolicyMemoryOcc are not used by this gate, for that reason and for a second one recorded under Disclosure 5.

Metric + consumer

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).


Bars — both inherited, neither placed here

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 scatterbelow 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.


Thresholds (committed now)

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:

  1. any reproduction-contract clause fails (below);
  2. 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;
  3. PF-OCC, the treatment was never appliedOCC_SHARE = median_g share(g) over the admitted goal set fails OCC_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 labelled GOALSET is 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;
  4. PF-1, the policy-class floor — Gate 009's clause, reused verbatim: COLLAPSE_rand(1.00) > 0.50 in 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;
  5. the phenomenon is absentTIE_end(BASE) < 0.50 in ≥ 2 of the 6 primary cells. The thing being fixed must be shown present in this draw before a fix is scored;
  6. goal supply — fewer than NUM_GOALS = 48 goals are admitted from the fixed CAL_POOL = 256 in 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 than N_DEC_MIN = 8 admitted 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 + ISO holds exactly in every cell, every arm;
  • RES(GOALSET) ≥ 0.95 at all three room seeds;
  • RES(INIT) < 0.95 at ≥ 2 of 3 room seeds — 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;
  • scatter does 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.1667 at all three room seeds but short of 0.95. The instrument becomes usable; the successor transfer gate may be registered, but must consume the measured RES as its own decidability budget rather than assuming 48 goals;
  • PARTIAL (INIT-mechanism)INIT clears a bar that GOALSET does not, at ≥ 2 of 3 room seeds. 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)BOTH clears a bar that neither GOALSET nor INIT clears 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. Define TIE_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. If 1 − TIE_cross ≥ 0.95 at all three room seeds while RES(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's NF was cold-vs-cold and its n_dec was warm-vs-warm, so the warm-vs-cold tie rate has never been read. X-RES may 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);
  • room and scatter name different mechanisms;
  • the LCG screening table names different mechanisms at different bases;
  • ≥ 2 of 6 primary cells are flagged extrapolated on the DRIVE interpolation.

STOP — the licensed lever's cheap form is spent (fires at ≥ 2 of 3 room seeds):

  • neither GOALSET nor BOTH reaches RES ≥ 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).


Frozen constants

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.

The RHO ladder note — discharging Gate 009 erratum E1

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.


Seed plan and the frozen draw order

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.


Refuting controls

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 if DRIVE(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 if RES(INIT) is not better than RES(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.

Reproduction contract (checked FIRST; failure ⇒ NOT-TESTABLE)

  1. 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 in bc and the cell keys in cells), make_demos, fit_operator, policy_score, calculate_fitness, and randn_float64 for the spread origin. The action-recording rollout is reconstructed harness-side from the exported sandbox_obs / policy_forward / policy_argmax / sandbox_step, exactly as Gate 009's roll_record does. SandboxOccDomain and SandboxPolicyMemoryOcc are not imported (Disclosure 5).
  2. 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.
  3. 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 all comptime, so the chain folds to if False and the compiler emits "unreachable code" — that warning is the check passing, and it may not be silenced.
  4. 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 (the EliteMap it constructs is empty and only contains is called), so no value frozen here could have been chosen to favour a warm start.
  5. G009CHK — the anchor. BASE's per-cell TIE_end, COLLAPSE, BLIND_abs, ISO, TRAVEL_med, FROZEN and CONV_med reproduce 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 of BASE. Per Gate 011's G010CHK lesson, 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.
  6. GCHK — the generator is inert. admit_occ_dominant, run with its ranking filter disabled, reproduces gen_family_s's goal set bitwise at the same seed and stream position. A harness-local candidate generator that drifts from src's by one draw would silently score a different world; Gate 010's GCHK precedent, reused.
  7. Stream integrity. A random_float64 drawn 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.


Anti-stone-soup clause

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/1 or FEW_ALPHA0/1 anywhere in this gate — including "just to see". The INIT/BOTH arms 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.5 is used because it already exists and is already the goal-generating scale. Trying 0.1 or 1.0 after seeing RES(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 editing sandbox_bc, policy_score, calculate_fitness or BC_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_operator returns, consume zero RNG, and may never feed a fit.
  • Raising CAL_POOL, max_tries or NUM_GOALS, or re-drawing a goal set, variant or seed that produced an inconvenient number.
  • Post-hoc movement of any frozen value: the RHO ladder, 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(ρ), the share(g) distribution beyond PF-OCC's registered role. The Gate 007 RECOV precedent.
  • Best-of-seeds, dropped seed, dropped arm, dropped world, mean-over-cells when a per-cell condition fails. In particular: dropping INIT because it wins, or dropping scatter because 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.


Disclosure — the ways this gate is weaker than it looks

  1. INIT changes 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.
  2. 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.md candidate #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.
  3. 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.
  4. The verdict is read on room alone, with scatter as 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.
  5. A live src/ defect, found while designing this gate and deliberately not fixed in it. SandboxPolicyMemoryOcc.apply (src/sandbox.mojo:786-805) calls sandbox_rollout, which always writes 18 floats into dst, while SandboxOccDomain.capacity() returns BC_BLOCKS = 16capacity() governs how many floats the distance reads, not how many apply writes. The ES hot loop hands each sample a grid_capacity-sized stripe (src/esper_evolution.mojo:171, :257), so with ESWorkspace[SandboxPolicyMemoryOcc](BC_BLOCKS, FEW_N) — as at tests/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 touching src/ 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.
  6. variant is 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 distinct room layouts, so this gate is unaffected — but room variants 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 on variant, 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.
  7. 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".

Compute cost

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.


Consequence

  • 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") on GOALSET's admission rule, consuming this gate's published MDE and RES.
  • PARTIAL (usable, not resolved) ⇒ the same successor, but it must budget its decidability from the measured RES rather than from NUM_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.

Result — NOT-TESTABLE (2026-08-23)

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.

The NOT-TESTABLE ladder, in the registered order

# 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.

The scored clause — PF-OCC (all 6 primary cells, nothing omitted)

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.

The published share distribution (the registered deliverable)

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.

The published curve (the registered deliverable) — and the one thing it found

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 floorCOLLAPSE_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.

The reproduction contract, clause by clause

clause outcome
1. zero src/ change PASSgit 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.

No scaffolding, and the temptation this gate named in advance

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.

What this verdict does and does not say

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.

Consequence, as registered

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: G009CHK is undischarged, and the first successor to reach a fit block on this harness inherits the obligation to discharge it before publishing a BASE number.