Mid-Density Token-Matched Universal Curriculum
The one idea you need
Very small doses of abstract lessons did not install reliable execution, while a much larger earlier dose learned locally but displaced broad behavior. This experiment tests two doses between those endpoints while keeping training exposure exactly equal to replay-only practice.
The question
Can a middle-sized dose of abstract skill lessons cross the local installation threshold without sacrificing the replay practice that protects broad capability?
What we found
The 160-lesson stream improved fresh local accuracy from 17 to 19 of 26 cases, raised readable answers from 18 to 23, and cut answer-limit contacts from nine to three. It still missed the readability and length gates by one case each. Adding 80 more lessons erased the accuracy gain, so no model advanced to broad evaluation.
Why it matters
The middle dose moved the right behaviors and came close, while the larger dose moved backward. That narrows the next intervention to concise answer commitment at the 160-lesson mix instead of adding more generic lessons or weakening the gate.
On this page
Results at a glance 2
How to read
Every bar totals 1,520 rows. The designed streams replace two or three token-matched 80-row replay blocks while the 1,280-row replay core stays fixed.
Takeaway → The frozen ladder isolates lesson density at equal token exposure; all three streams trained cleanly.
Data table
| frozen dose component | replay_repeat | designed160 | designed240 |
|---|---|---|---|
| shared replay | 1280 | 1280 | 1280 |
| designed curriculum | 0 | 160 | 240 |
| matched replay replacements | 240 | 80 | 0 |
Numbers from experiments/qwen35_4b_universal_mid_density_token_match/data/dose_manifest.json
Technical framing
Mid-density doses replace exactly 0, 160, or 240 replay rows — All arms share slot order, contain 1,520 rows, ran 190 optimizer steps, and totaled exactly 1,405,510 forward tokens. All three trained with zero skips; the fresh local comparison is pending.
How to read
Each model has bars for exact-answer accuracy and readable-answer rate on the same 26 fresh cases. The 160-lesson stream leads both, but readable answers remain one case short; its three answer-limit contacts are also one above the ceiling.
Takeaway → A middle dose improves correctness and concise completion, while 240 lessons reverse part of the gain; no arm is eligible for broad evaluation.
Data table
| fresh local metric | inherited anchor | replay_repeat | designed160 | designed240 |
|---|---|---|---|---|
| accuracy | 0.654 | 0.654 | 0.731 | 0.654 |
| parse rate | 0.692 | 0.692 | 0.885 | 0.846 |
Numbers from experiments/qwen35_4b_universal_mid_density_token_match/runs/local/seed88005_promotion.json
Technical framing
The 160-row dose nearly clears the fresh local gate — Frozen gates required at least 65% accuracy, at least 90% parse rate, and at most two cap contacts. Cap contacts were 9, 9, 3, and 5 respectively; no arm was eligible.
In the author’s words from the Overview · “Results”
Every arm cleared the 0.65 accuracy bar and feasible-route abstention check. No arm simultaneously cleared parse ≥0.90 and cap contacts ≤2. designed160 was one parsed case and one cap contact short; designed240 was worse on all three primary metrics. The promotion receipt is empty, no model was merged, and aggregate seed 78,135 remained sealed.
Overview
Research program
- Program:
agentic_breadth_installation - Parent:
qwen35_4b_universal_low_density_token_match - Prior anchors:
qwen35_4b_universal_curriculum,qwen35_4b_universal_replay_anchor, and the authenticated replay-refresh policy
Question
Can a representative 160- or 240-row truth-audited designed dose cross the fresh local installation gate from the strong replay-refresh anchor without returning to the parent 400-row density that failed broad retention?
Hypothesis
The 80-row arm improved parseability and cap behavior directionally but was below the local threshold, while the earlier 400-row arm passed locally from a weaker start and then displaced broad capability. A mid-density dose should cross the installation threshold while leaving more replay mass than the 400-row mixture. If neither 160 nor 240 rows passes, representative dose interpolation alone is not the missing mechanism.
Setup
- Model: only
Qwen/Qwen3.5-4B, revision851bf6e.... - Start: authenticated
replay_refreshadapter from the replay-anchor experiment. - Arms:
replay_repeat(0 designed),designed160, anddesigned240. - Shared dose: 1,280 identical replay rows in identical shuffled slots.
- Replacements: three disjoint 80-row designed blocks, each covering all 13 skills, and three disjoint replay blocks with exactly matching forward-token sums.
- Feasibility boundary: a representative 320-row arm was rejected before freeze because 320 proportional designed rows were shorter than the 320 shortest replay rows; exact matching would have required an unregistered length-biased curriculum.
- Compute: every arm has 1,520 rows, 190 effective-batch-8 steps, and exactly 1,405,510 forward tokens with zero tokenizer skips.
- Training: one epoch, learning rate
1e-5, rank 32 / alpha 64,w_think=0.2, seed 43, and max length 4,096. - Local screen: fresh procedural seed 88,005; every arm is gated independently at accuracy ≥0.65, parse ≥0.90, cap contacts ≤2, and no repeated feasible-route abstention.
- Conditional paired pilot: aggregate-only quick@1,024 seed 78,135 on one explicitly merged vLLM backend.
- Controls: base,
blend, inherited replay-refresh anchor, and a new exact-token replay continuation. Both designed doses are prospectively registered. - Hidden-label boundary: invoke only the trusted aggregate gateway. Never read or import benchmark items, sources, transcripts, or private output.
Run
Smoke and staged run:
.venv/bin/python experiments/qwen35_4b_universal_mid_density_token_match/scripts/run.py --smoke.venv/bin/python experiments/qwen35_4b_universal_mid_density_token_match/scripts/run.py --stage train-control
.venv/bin/python experiments/qwen35_4b_universal_mid_density_token_match/scripts/run.py --stage train-d160
.venv/bin/python experiments/qwen35_4b_universal_mid_density_token_match/scripts/run.py --stage train-d240
.venv/bin/python experiments/qwen35_4b_universal_mid_density_token_match/scripts/run.py --stage local
.venv/bin/python experiments/qwen35_4b_universal_mid_density_token_match/scripts/run.py --stage merge
.venv/bin/python experiments/qwen35_4b_universal_mid_density_token_match/scripts/run.py --stage benchmarkResults
All three arms completed 190/190 updates over their authenticated 1,520-row, 1,405,510-forward-token streams with zero skips. Fresh local seed 88,005 produced:
- inherited anchor: 17/26 accuracy, 18/26 parsed, 9 cap contacts;
replay_repeat: 17/26 accuracy, 18/26 parsed, 9 cap contacts;designed160: 19/26 accuracy, 23/26 parsed, 3 cap contacts;designed240: 17/26 accuracy, 22/26 parsed, 5 cap contacts.
Every arm cleared the 0.65 accuracy bar and feasible-route abstention check. No arm simultaneously cleared parse ≥0.90 and cap contacts ≤2. designed160 was one parsed case and one cap contact short; designed240 was worse on all three primary metrics. The promotion receipt is empty, no model was merged, and aggregate seed 78,135 remained sealed.
Interpretation
Representative dose interpolation has a sharp, nonmonotonic local effect. The 160-row dose adds two correct cases over exact-token replay and cuts missing answers from eight to three, cap contacts from nine to three, and mean generation from 729 to 511 tokens. Adding another 80 designed rows reverses the accuracy gain and worsens parse and cap behavior. The next result-separated experiment should keep the 160-row capability mix fixed and target the remaining answer-commit/termination seam with exact-token controls; it must not lower these observed gates or spend the sealed benchmark seed.
Knowledgebase Update
- Program evidence: exact-token 160-row near-miss and 240-row reversal recorded.
- Program backlog: termination-focused successor queued with fresh seeds.
- Claim ledger: unchanged; a single pilot cannot establish a universal-feature claim.
Artifacts
data/source_token_lengths.json: tokenizer-frozen source-row lengths.data/dose_manifest.json: exact representative selection, slot, and hash receipt.data/dose_token_receipt.json: zero-skip proof and exact arm exposure.scripts/materialize_doses.py: deterministic nested exact-token constructor.reports/design_review.mdandreports/preregistration.md: frozen threats and gates.reports/artifact_manifest.yaml: external adapter and merged-model locations.runs/local/seed88005.json: complete experiment-owned local receipt.runs/local/seed88005_promotion.json: empty promotion decision; benchmark sealed.
Report
Rendered from reports/report.md
Summary
Completed local negative. A representative nested 0/160/240-row designed-dose ladder was trained from replay refresh with exact forward-token matching; no arm passed the fresh local gate, so merge and benchmark remained sealed.
Research Program Fit
This is the direct result-separated follow-up to the 0/40/80 local negative. It bridges the known gap between an 80-row dose that did not install locally and the earlier 400-row mixture that installed locally but lost broad capability.
Method
Every arm shares 1,280 replay rows in the same slots. Three disjoint 80-row designed blocks each cover all 13 skills and have disjoint replay counterparts with exactly the same token sums. Replay repeat uses all replay blocks, designed160 replaces A and B, and designed240 replaces A, B, and C. Every arm contains 1,520 rows, 1,405,510 forward tokens, and 190 updates from the same parent.
Results
All three exact-token arms completed 190/190 updates over 1,520 rows with zero skips. On fresh local seed 88,005, anchor and replay repeat each scored 17/26 accuracy, 18/26 parse, and 9 cap contacts. designed160 scored 19/26, 23/26, and 3; designed240 scored 17/26, 22/26, and 5. Every arm passed accuracy ≥0.65 and the route check, but none passed parse ≥0.90 and cap contacts ≤2. Promotion was empty, so no merge or paired benchmark occurred.
Controls
- Exact-token replay continuation from the same anchor.
- Inherited replay-refresh anchor,
blend, and pinned base. - Fresh local seed 88,005 and conditional aggregate-only seed 78,135.
- Explicit merges and one
qwen_vllmbenchmark backend. - Both doses registered before any model training.
Oracle Versus Deployable Evidence
Only deployable greedy local outputs and trusted aggregate benchmark fields are admissible. There is no oracle selector, private-item inspection, or benchmark-shaped training signal.
Interpretation
The 160-row dose is a real near-threshold local improvement: versus exact-token replay it adds two correct cases, five parsed answers, removes six cap contacts, and shortens mean output by about 218 tokens. The effect is not monotonic: 240 rows lose the accuracy gain and regress parse/cap behavior relative to 160. This rejects representative dose interpolation as sufficient, not the curriculum signal. The remaining local bottleneck is concise answer commitment at the 160-row capability mix. There is no broad-transfer evidence because the benchmark correctly stayed sealed.
Next Experiments
Use a new experiment and fresh local seed to hold the 160-row capability mix fixed while adding a small truth-audited answer-commit/termination intervention with an exact-token active control. Do not add more representative dose, lower the observed gate, reuse seed 88,005, or spend aggregate seed 78,135. Any later pilot pass still requires independent quick replication, medium@2,048, paired uncertainty, and matched-compute sampling.
Artifact Manifest
See artifact_manifest.yaml; planned entries must be replaced with authenticated checksums immediately after each successful stage.
Experiment log 5
Show the running log (5 entries, 2026-07-13)
2026-07-13 — intake, feasibility revision, and design freeze
- Created as the result-separated successor to the exact-token 0/40/80 local negative; the closest near-duplicate is named in
idea_intake.md. - Copied the authenticated 800-row designed and 2,240-row replay sources. No benchmark content was read or copied.
- Rejected the initially proposed 320-row arm before freeze: proportional designed rows were collectively shorter than the shortest row-matched replay selection.
- Froze a representative 0/160/240 ladder with a 1,280-row common replay core and three all-skill 80-row blocks. Each designed/replay block matches forward tokens exactly at 33,613, 34,091, and 33,015.
- Materialized three position-aligned 1,520-row arms. Each has exactly 1,405,510 forward tokens, zero skipped rows, and 190 optimizer steps.
- Froze training seed 43, local seed 88,005, and conditional aggregate-only quick@1,024 seed 78,135 before training.
- Adversarial design review passed after the 320-row feasibility revision. No model training or new evaluation event has run.
2026-07-13 — replay-only exact-token control training
- Ran
scripts/run.py --stage train-controlfrom design commit49e42f0b. - The wrapper reauthenticated the replay-refresh parent, checked-in
replay_repeatbytes, and zero-skip token receipt before launching training. - Completed 190/190 optimizer steps over 1,520 rows with zero skips in 1,396.686 wall seconds. Final training loss was 0.4199.
- Adapter weights: 169,903,320 bytes, SHA-256
7db84c6313fbf479ec7d08334cfa41a1b4883c95a7a0215eb40b2059e55d2ac5. Adapter config SHA-256:12943a035cdbe3cbded978903911fad6e135dddeb1872a1298371269ade3cd4f. - Durable receipt:
runs/training/replay_repeat.json, SHA-256950d30cd3a69ebe1957729e6da099913096f7eb2a2443585c4e25bed6c053eed. Normalized full log:runs/training/replay_repeat.log, SHA-256e8a72ef7fde6cdb7d3f642ffeb5e93755a8783f2c1bfe9feaf6f2b7c7a6c83f8. - No local or benchmark evaluation was performed at this checkpoint.
2026-07-13 — 160-row exact-token arm training
- Ran
scripts/run.py --stage train-d160from published replay-control commit0ad7ca07. - The wrapper reauthenticated the replay-refresh parent, checked-in
designed160bytes, and zero-skip token receipt before launching training. - Completed 190/190 optimizer steps over 1,520 rows with zero skips in 1,390.190 wall seconds. Final training loss was 0.6606.
- Adapter weights: 169,903,320 bytes, SHA-256
f05c13ae66e19bbd29abbd2b62ae3c1a577642efefbdba435879012bf4494654. Adapter config SHA-256:0cd3ca7c710e48c264fd1d4c019c304ec0b9e5b13098b89a5b4aa0b171191e58. - Durable receipt:
runs/training/designed160.json, SHA-256485e3a76a8ef45d92df0a60dbcc338d5c1d4ddfc53fbb4e83acb10af7e75d258. Normalized full log:runs/training/designed160.log, SHA-25634ce943073908585c933991161f84a076a734b98cc8a23c0fc953dde1db995f3. - No local or benchmark evaluation was performed at this checkpoint.
2026-07-13 — 240-row exact-token arm training
- Ran
scripts/run.py --stage train-d240from published 160-row checkpoint71d6e641. - The wrapper reauthenticated the replay-refresh parent, checked-in
designed240bytes, and zero-skip token receipt before launching training. - Completed 190/190 optimizer steps over 1,520 rows with zero skips in 1,373.185 wall seconds. Final training loss was 0.7284.
- Adapter weights: 169,903,320 bytes, SHA-256
9b159156a7fd59f259454427371e7eb6f72dc2bb1f4e51d6cb6c9dc169af0116. Adapter config SHA-256:66fb435d789ce43a741a04cdbceca1f3c133f157310e2751cbead79d7e51531c. - Durable receipt:
runs/training/designed240.json, SHA-2568bc2f0528f75766c0954ec55455cf9873e4396324c55707f8b1a617af707d82d. Normalized full log:runs/training/designed240.log, SHA-2563c2e0692742ac13f3712a0825d86fb728ef561eca22c3a551b1d8923aca77838. - All three exact-token arms are now trained. No local or benchmark evaluation was performed at this checkpoint.
2026-07-13 — fresh local gate negative
- Ran
scripts/run.py --stage localfrom published all-arms checkpoint68667bea. - Consumed the single registered experiment-owned seed 88,005 event across the inherited anchor and all three arms at greedy decode and 1,024 generated tokens.
- Anchor and
replay_repeateach scored 17/26 accuracy, 18/26 parse, and 9 cap contacts.designed160scored 19/26, 23/26, and 3;designed240scored 17/26, 22/26, and 5. All candidates had zero feasible-route abstentions. - Every arm passed accuracy ≥0.65 and the route check. Every arm failed parse ≥0.90 and cap contacts ≤2. The 160-row arm missed each remaining bar by one case.
- Full receipt:
runs/local/seed88005.json, SHA-256ca1a33612ba7dcd430c05a90ee3953358b1137b345101ec78e829e64137bffb3. Promotion receipt:runs/local/seed88005_promotion.json, SHA-2563bdad3e9e7536972e7d6178484d02098503d5c77a7a14cb530f46af0173ea41a. - Gate receipt hashes: replay
5e2861186d11a454695a47b9e806391d58950fd12d1dfacc3b8fc7c6a8f39279, 160 rowsee70d0fd88400a4909b4e0b7b45537f2bfe4697ed47521126a56f971bcba03b0, and 240 rows7fca078a2050586f91d0eaa233932f9991704315175a98fa5a48b3830082dbd8. - Eligible list was empty. No merge or benchmark ran; seed 78,135 remains sealed.
Reproduce
Smoke test
.venv/bin/python experiments/qwen35_4b_universal_mid_density_token_match/scripts/run.py --smokeFull run
.venv/bin/python experiments/qwen35_4b_universal_mid_density_token_match/scripts/run.py --stage allRun steps are documented inside the experiment folder (README and scripts).