Fresh-Surface Budget-Commit Universal Curriculum
The one idea you need
Take the practice set that nearly worked before, rewrite every exercise with brand-new vocabulary, and add a new lesson that teaches working to a strict step budget and committing an answer the moment the budget says stop.
The question
Does the near-miss practice set still work when its vocabulary is completely replaced, and does budget-and-commit practice fix the run-on answers that kept failing the screen?
What we found
The rewritten practice set beat both comparison models on the big screen — more right answers (69 vs 63 and 62 of 104), many fewer run-on answers (7 vs 18 and 13), and 31 percent shorter output — on vocabulary it had never trained on. But the screen also required four of eight rule-guessing tasks right, and every model scored zero of eight there, so nothing advanced to the benchmark. The budget lesson made things worse, not better.
Why it matters
The practice set's benefit binds to structure, not to specific words — the first positive mechanism reading in this line. And the screen's rule-guessing requirement is now known to be impossible for this model family, so future tests must either attack rule-guessing differently or measure what can actually move.
On this page
Results at a glance 1
How to read
Grouped bars per model: right answers and cleanly finished answers (of 104), and run-on answers (fewer is better).
Takeaway → The rewritten set beats both comparisons on every headline number, but the screen's rule-guessing requirement was zero-for-eight for every model, so nothing advanced.
Data table
| explicit merged composite | correct (of 104) | parsed (of 104) | cap contacts |
|---|---|---|---|
| parent | 63 | 87 | 18 |
| replay_repeat | 62 | 91 | 13 |
| designed_fresh | 69 | 97 | 7 |
| budget_commit | 62 | 88 | 16 |
Numbers from experiments/qwen35_4b_universal_fresh_surface_budget_commit_target_match/reports/report.md
Technical framing
104-task local gate: totals by arm (seed 88013) — designed_fresh won all four preregistered strict comparisons on never-trained surfaces and cut generation 31%, but the induct floor (>=4/8) was 0/8 for every arm, so no candidate promoted and aggregate seed 78,143 stays sealed. budget_commit was at-or-below replay everywhere.
In the author’s words from the Overview · “Results”
All three arms trained from green checkpoints with zero skipped rows and exactly matched exposure (losses: replay 0.4063, designed 0.4634, budget 0.5106), merged as authenticated explicit composites, and evaluated in the one frozen 104-task local gate event at seed 88,013. Totals (correct / parsed / cap contacts of 104): parent 63/87/18; replay_repeat 62/91/13; designed_fresh 69/97/7; budget_commit 62/88/16. Mean generated tokens: parent 515.8, replay 534.0, designed_fresh 357.2, budget_commit 396.2. designed_fresh passed the correct (≥68), parse (≥96), caps (≤8), and route-abstention bars and won ALL FOUR preregistered strict comparisons (total and the 24-row execute+induct+probe subtotal, versus both parent and replay). … Read the full result →
Overview
Re-dose the proven 160-row designed distribution on six disjoint fresh surfaces from the authenticated parent, and ablate 40 of those rows into a bounded-check budget-commit lesson, under a three-axis exact-exposure replay control and a quadrupled 104-task local gate.
Research Program
- Program:
agentic_breadth_installation. - Program question: can synthetic curricula install general capability that lifts the held-out aggregate without a negative family?
- Prior anchors: mid-density near-miss (19/26 with parse and caps each one item short); close-weight redistribution negative; terminal successful-sibling availability stops closing harvest-based supervision.
Question
Is the 160-row designed dose surface-general — does it install when rendered on six entirely fresh surfaces from the current parent — and does substituting 40 rows with a designed bounded-computation budget-commit lesson repair the termination seam (cap contacts, unparsed answers) at exactly matched exposure?
Hypothesis
The designed dose binds to structure, not surface tokens, so a fresh-surface re-dose from the replay-refreshed parent should reproduce the mid-density accuracy gain on a gate that renders only original surfaces (a built-in transfer test). The remaining deployment seam is termination; a lesson whose content is monitored bounded computation with a mandatory canonical commit — never a loss-weight knob and never an idealized long trace — should reduce cap contacts and unparsed answers without losing semantics. Exact three-axis exposure matching (forward tokens, loss-bearing targets, absolute loss mass) against an active replay continuation makes any win attributable to content.
Setup
- Model: only
Qwen/Qwen3.5-4B, revision851bf6e806efd8d0a36b00ddf55e13ccb7b8cd0a. - Parent: authenticated explicit composite
replay_after_close(weights7ab4c419...e2e6); runtime LoRA is forbidden. - Treatment corpora (construction seed 77,116):
designed_fresh= 160 rows at the frozen designed160 per-skill quotas on six fresh surfaces (greek, elements, animals, ordinals, gems, digraphs) with fresh separators, attributes, and routing capabilities;budget_commit= a deterministic 120-row subset of the same corpus plus 40 budget lessons (hard check allowance, stop-on-first-hit, mandatoryBUDGETcommit on exhaustion, decoy planted immediately past the cutoff). A banned-vocabulary audit proves zero leakage of predecessor surfaces, gym family names, and public benchmark family names. - Streams: 1,280 shared position-aligned replay rows plus a 240-row variable block per arm; the two treatment blocks (160 treatment + 80 replay filler) and the 240-row replay control block are matched EXACTLY on forward tokens, nonzero loss-bearing targets, and absolute loss mass (MILP, namespace seed 55,117).
- Training: one event per arm, 1,520 rows, 190 optimizer steps, batch 1, accumulation 8, LR 1e-5, rank 32, alpha 64, think/close weights 0.2/0.2, seed 51, warm start from the parent adapter (
bb59d3bd...154d), zero skipped rows required. - Local gate: fresh seed 88,013, 104 tasks (8 per each of 13 skills) from the ORIGINAL-surface generator, explicit merged composites on the pinned vLLM geometry, greedy, natural thinking, 1,024-token cap. Bars per candidate: parsed ≥ 96, correct ≥ 68, cap contacts ≤ 8, route abstentions ≤ 4, execute/induct/probe ≥ 4/8 each, plus strict wins over parent AND replay on total correct and the 24-row execute+induct+probe subtotal. Single-winner promotion: higher total, then target subtotal, then fewer caps, then
budget_commit. - Conditional aggregate: sealed fresh seed 78,143, quick tier, think budget 1,024, same-backend paired event over base, parent, replay control, and the promoted candidate. Promotion requires the candidate to strictly lift the aggregate AND every one of the ten public families versus base, and to strictly beat both the replay control and the parent on aggregate.
- Hidden boundary:
benchmarks/remains unread; independent higher-tier confirmation and matched-compute sample-more remain mandatory before any universal claim.
Run
Smoke:
PYTHONDONTWRITEBYTECODE=1 .venv/bin/python -B experiments/qwen35_4b_universal_fresh_surface_budget_commit_target_match/scripts/run.py --smokeCheckpointed stages (each requires its prerequisite committed at a clean, pushed, green main):
.venv/bin/python -B experiments/qwen35_4b_universal_fresh_surface_budget_commit_target_match/scripts/run.py --stage train-control
.venv/bin/python -B experiments/qwen35_4b_universal_fresh_surface_budget_commit_target_match/scripts/run.py --stage train-designed
.venv/bin/python -B experiments/qwen35_4b_universal_fresh_surface_budget_commit_target_match/scripts/run.py --stage train-budget
.venv/bin/python -B experiments/qwen35_4b_universal_fresh_surface_budget_commit_target_match/scripts/run.py --stage merge-arms
.venv/bin/python -B experiments/qwen35_4b_universal_fresh_surface_budget_commit_target_match/scripts/run.py --stage local
.venv/bin/python -B experiments/qwen35_4b_universal_fresh_surface_budget_commit_target_match/scripts/run.py --stage benchmarkResults
All three arms trained from green checkpoints with zero skipped rows and exactly matched exposure (losses: replay 0.4063, designed 0.4634, budget 0.5106), merged as authenticated explicit composites, and evaluated in the one frozen 104-task local gate event at seed 88,013.
Totals (correct / parsed / cap contacts of 104): parent 63/87/18; replay_repeat 62/91/13; designed_fresh 69/97/7; budget_commit 62/88/16. Mean generated tokens: parent 515.8, replay 534.0, designed_fresh 357.2, budget_commit 396.2.
designed_fresh passed the correct (≥68), parse (≥96), caps (≤8), and route-abstention bars and won ALL FOUR preregistered strict comparisons (total and the 24-row execute+induct+probe subtotal, versus both parent and replay). It failed only the per-kind floors: execute 3/8 and induct 0/8 (probe 6/8 passed). budget_commit failed broadly and was at-or-below replay on every headline number. Decisively: induct was 0/8 for every arm including the parent, so the induct ≥ 4/8 floor was structurally unpassable in this event. No candidate promoted; per the frozen contract, aggregate seed 78,143 is permanently sealed and no benchmark event ran.
Interpretation
Three separable findings.
- The preregistered surface-generality reading is POSITIVE: the designed dose, re-rendered on six entirely fresh surfaces, strictly beat both the parent and the exactly-matched replay control on total correct and on the target subtotal, on gate tasks whose surfaces it never saw — while also cutting cap contacts by 11, raising parses by 10, and shortening generation by 31% versus the parent. The designed-160 effect binds to structure, not to its original surface vocabulary. This is a single-seed local mechanism screen, not a capability claim.
- The budget lesson is falsified as designed: substituting 40 designed rows for bounded-scan lessons made termination WORSE (16 caps vs 7), not better — the stop-on-contract behavior did not leave its narrow format, and the lost designed rows cost semantics.
- The gate's per-kind induct floor (≥4/8) is unpassable by this lineage: at eight induction tasks the wall (C38/C39) shows as exactly zero for every arm. Under the 26-task predecessor gate the same floor (≥1/2) was occasionally passable by luck; quadrupling the screen exposed it as structural. Any successor must either treat induction with a fundamentally different mechanism or preregister a gate whose floors are achievable given the known wall.
Terminal Disposition
No later event is authorized here. Aggregate seed 78,143 was never opened and is spent-by-sealing; do not lower the induct floor, re-run the local event, or benchmark the unpromoted composites from this directory. The designed_fresh adapter, composite, and receipts are published and may serve as a parent for successors with their own lifecycle.
Knowledgebase Update
- Program evidence updated: terminal local negative with the positive surface-generality mechanism reading and the budget-lesson negative recorded.
- Program backlog updated: the generic-dose line closes; the goal-gap axis-curriculum successor is queued.
- Claim ledger updated: no; local mechanism screens do not mint claims.
Artifacts
data/sft_fresh_designed160.jsonl,data/sft_fresh_budget160.jsonl,data/corpus_manifest.json: frozen fresh-surface corpora.data/sft_blend.jsonl: frozen replay pool (byte-identical to predecessors).data/stream_manifest.json,data/stream_token_receipt.json: three-axis exposure receipts.data/local_tasks_seed88013.jsonl,data/local_input_seed88013.jsonl,data/local_design_receipt.json: frozen local gate.reports/preregistration.md,reports/design_review.md: prospective contract and adversarial authorization.reports/artifact_manifest.yaml: external parent and conditional model-artifact plan.
Report
Rendered from reports/report.md
Summary
The experiment is closed as a terminal local negative with a positive preregistered mechanism reading. All three exactly-matched arms trained and merged cleanly; in the one frozen 104-task surface-transfer gate event, designed_fresh won all four strict comparisons over parent and replay (69 vs 63/62 correct; 9 vs 6/7 on the 24 target rows) with 7 cap contacts and 97 parses, but the induct floor (≥4/8) was 0/8 for every arm — structurally unpassable — so no candidate promoted and aggregate seed 78,143 is permanently sealed. The budget-commit substitution was worse than replay across the board.
Research Program Fit
This trial claims the program's queued bounded-computation plus canonical-answer commitment successor slot with a designed, non-harvested mechanism, after the two successful-sibling stops closed harvest-based supervision. It simultaneously tests the doctrine's open surface-diversity question: whether the near-miss designed dose binds to structure rather than to its original surface vocabulary.
Method
- Arm D (
designed_fresh): the frozen designed160 per-skill distribution rendered over six fresh surface pools (greek, elements, animals, ordinals, gems, digraphs) with fresh separators, record attributes, and routing capabilities; construction seed 77,116; zero banned-vocabulary occurrences. - Arm B (
budget_commit): a deterministic 120-row largest-remainder subset of arm D plus 40 budget lessons — ordered scan under a hard check allowance, stop at the first hit, mandatoryBUDGETcommit on exhaustion, and a decoy satisfier planted immediately past the cutoff so violating the contract is parseable-but-wrong. 27 hit / 13 exhaust outcomes. - Control (
replay_repeat): 240 replay rows solved jointly with the two 80-row filler sets by one MILP so that all three 240-row variable blocks are EXACTLY equal on forward tokens (142,211), nonzero loss-bearing targets (63,739), and absolute loss mass in fifths (72,755). Solve time 7.1 s; deterministic re-solve verified. - Streams: 1,280 shared position-aligned replay rows + the arm block = 1,520 rows and 1,356,964 forward tokens per arm; zero encoder-skipped rows; slot permutation seed 55,117.
- Training plan: one event per arm from the authenticated
replay_after_closeparent adapter, 190 optimizer steps, LR 1e-5, think/close weights 0.2/0.2, seed 51. - Local gate: 104 fresh tasks (8 per skill) from the ORIGINAL-surface generator at seed 88,013 — training never sees these surfaces, so the gate is itself a surface-transfer test. Frozen bars: parsed ≥ 96, correct ≥ 68, caps ≤ 8, route abstentions ≤ 4, execute/induct/probe ≥ 4/8, strict wins over parent AND replay on totals and the 24-row target subtotal; single-winner promotion with a frozen tiebreak.
- Conditional aggregate: sealed seed 78,143, quick tier, think budget 1,024, four merged composites (base, parent, replay control, promoted candidate); promotion needs a strict lift of the aggregate and every public family versus base plus aggregate wins over replay and parent.
Results
- Training (each 1,520 rows, 0 skipped, 190 updates, seed 51): replay 0.4063, designed 0.4634, budget 0.5106 train loss.
- Local gate totals (correct/parsed/caps of 104): parent 63/87/18; replay 62/91/13; designed_fresh 69/97/7; budget_commit 62/88/16. Mean generated tokens 515.8/534.0/357.2/396.2.
- designed_fresh strict wins: total 69>63 and 69>62; target24 9>6 and 9>7 — all four preregistered comparisons, on surfaces it never trained on.
- Per-kind floors: designed_fresh execute 3/8, induct 0/8, probe 6/8. Induct was 0/8 in every arm including the parent.
- No promotion; seed 78,143 sealed; no benchmark event. Frozen artifact hashes: corpora
e599f156...84d5/ecece8e2...9800; exposure receiptc90873af...bb54; local receipt and promotion record underruns/local/.
Controls
The explicit parent composite is the baseline; the exact-exposure replay continuation is the mechanism-falsifying control; arm B versus arm D is a 40-row content-substitution ablation at identical exposure. Retention is measured on all 13 skills, not inferred.
Oracle Versus Deployable Evidence
Executable truth grades outputs only and is stripped from every model-facing byte. benchmarks/ remains unread; only the trusted gateway's aggregate and public per-family scores will be consumed.
Next Stage
None. The experiment is closed terminally under the frozen no-promotion rule. The published designed_fresh adapter and composite may parent a successor with its own lifecycle; the program pivot (goal-gap axis curriculum) is recorded in the backlog.
Artifact Manifest
All model-free artifacts are tracked in-repo. The parent composite, parent adapter, and reserialized base are external with pinned checksums. Future adapters and merged composites will live under large_artifacts/ with tracked receipts.
Experiment log 7
Show the running log (7 entries, 2026-07-14 → 15)
2026-07-14 — Model-free design freeze
- Opened after the residual successful-sibling terminal stop published green; this trial claims the program's queued bounded-computation plus canonical-answer commitment successor slot with a designed, non-harvested mechanism.
- Wrote
scripts/gen_fresh_curriculum.py: the thirteen predecessor lesson constructors over six fresh surface pools (greek, elements, animals, ordinals, gems, digraphs), fresh separators/attributes/capabilities, plus the newu_budgetbounded-check lesson with a planted decoy immediately past the allowance cutoff. - Froze the corpora at construction seed 77,116: arm D
sft_fresh_designed160.jsonl(160 rows, designed160 quotas, shae599f156...84d5) and arm Bsft_fresh_budget160.jsonl(120-row deterministic subset of arm D plus 40 budget lessons, 27 hits / 13 exhausts, shaecece8e2...9800). Banned-vocabulary audit passes;--checkregenerates byte-identically. - Reserved fresh construction/slot-match/training/local/aggregate seeds
77116/55117/51/88013/78143; aggregate seed sealed. - Preregistered the full contract in
reports/preregistration.md: three-axis exact exposure match, one training event per arm from the authenticatedreplay_after_closeparent, a 104-task original-surface local gate with strict wins over parent and replay, single-winner promotion, and a four-model conditional aggregate pilot (strictly lift aggregate and every public family versus base; strictly beat replay and parent on aggregate). - No model, GPU, training, local, or benchmark event has run.
2026-07-14 — Authenticated control training
train-controlran only after design-freeze commit1d82b6c7matchedorigin/mainwith both workflows green and a clean worktree.replay_repeattrained 1,520/1,520 rows with 0 skipped over 190 updates (train loss 0.4063, 1,341.9 wrapper seconds); receipt and log published underruns/training/and their hashes pinned fail-closed intrain_trial.py.- No evaluation ran; the treatment arms remain untrained until this checkpoint publishes green.
2026-07-14 — Authenticated designed-fresh training
train-designedran only after control checkpointcd1cba9ematchedorigin/mainwith both workflows green and a clean worktree.designed_freshtrained 1,520/1,520 rows with 0 skipped over 190 updates (train loss 0.4634, 1,334.7 wrapper seconds); receipt/log published and pinned.- The budget arm remains untrained until this checkpoint publishes green.
2026-07-15 — Authenticated budget-commit training
train-budgetran only after designed checkpointc54a5378matchedorigin/mainwith both workflows green and a clean worktree.budget_committrained 1,520/1,520 rows with 0 skipped over 190 updates (train loss 0.5106, 1,393.4 wrapper seconds); receipt/log published and pinned.- All three arms are trained; merges are the only next stage.
2026-07-15 — Merge-gate pin amendment (model-free)
- The merge stage refused to open:
merge_trained_arm.pydemands its own hash under the receipt'scode_sha256.merge, but the receipt generator had listed it as pin-deferred — an implementation inconsistency between two harness files, caught by the gate itself failing closed. No composite was produced. merge_trained_arm.pycarries no orchestrator-filled constants, so it is now pinned at receipt level; the receipt regenerated with the frozen local tasks and oracle-free input byte-identical (be817bd0...,7cba75dc...). Bars, seeds, and every other frozen field are unchanged.- No model, GPU, or evaluation event ran during the amendment.
2026-07-15 — Authenticated explicit composites
merge-armsran only after the amendment checkpoint6a6f7ee7matchedorigin/mainwith both workflows green; the PASS_CONTROL_MERGE verdict and the merge self-pin were both required and verified.- All three arms merged through the pinned external merger (scale 2.0, 128/128 nonzero modules, fingerprint-verified): tree hashes
f2aa4a76...2523(replay_repeat),93433aa2...0255(designed_fresh),8faf6f68...ff18(budget_commit); receipts and logs underruns/merges/. - The three merged-tree pins are now filled fail-closed in the local evaluator. The one frozen local gate event is the only next stage.
2026-07-15 — Terminal local gate event and closure
- The one frozen local event ran from merge checkpoint
e443682a(clean synced greenmain): four sequential authenticated vLLM engine runs over the frozen 104-task oracle-free input, greedy, natural thinking, 1,024-token cap. - Totals (correct/parsed/caps of 104): parent 63/87/18; replay 62/91/13; designed_fresh 69/97/7; budget_commit 62/88/16. Mean generated tokens 515.8 / 534.0 / 357.2 / 396.2.
designed_freshpassed correct/parse/caps/abstention bars and all four strict wins, failing only the execute (3/8) and induct (0/8) floors;budget_commitfailed broadly. Induct was 0/8 for every arm including the parent — the floor was structurally unpassable in this event.- No candidate promoted. Aggregate seed 78,143 is permanently sealed; no benchmark event ran;
runs/local/holds the complete raw outputs, metadata, logs, receipt, and promotion record. - Harness note: the eval and stage exit nonzero on no-promotion by design after publishing complete receipts; the preserved traceback in the stage log is the fail-closed signal, not an artifact loss.
Reproduce
Smoke test
PYTHONDONTWRITEBYTECODE=1 .venv/bin/python -B experiments/qwen35_4b_universal_fresh_surface_budget_commit_target_match/scripts/run.py --smokeFull run
checkpointed scripts/run.py stages onlyRun steps are documented inside the experiment folder (README and scripts).