Bridge-Dose Recombination Curriculum
The one idea you need
This model sorts a list or counts matches fine alone, but stalls when a task fuses both in a pairing it never trained on. Show it a couple of fully worked-out solutions of that exact pairing, steps and all, and it starts solving new versions itself.
The question
If a small model already knows two skills separately, how many examples of them combined does it need before it can solve brand-new combinations on its own?
What we found
Yes, but only with the right examples. With none, the model solved just 7% of never-seen skill pairings; adding as few as two to four exact worked examples of each pairing lifted that to about 30%, a nearly five-fold jump. Lookalike examples stalled near 8%, and piling on too many quietly dragged familiar-task accuracy down from 86% to 58%.
Why it matters
When a model can't fuse two skills it already has, don't retrain on piles of similar-looking data. Add a few exact worked examples of that exact fusion, and keep the dose small — too many erode ordinary tasks.
On this page
Results at a glance 6
How to read
Horizontal axis is how many exact combined examples were added per skill-pairing; vertical is percent of tasks solved, higher is better. The bottom line is never-seen combinations; the two upper lines are familiar and reformatted-familiar tasks.
Takeaway → The unseen-combinations line climbs steeply from 7% to about 30% by two-to-four examples, then flattens — a small dose does the work.
Data table
| Exact bridge examples per held-out pair (dose) | recombination holdout | seen IID | format shift |
|---|---|---|---|
| 0 | 6.7% | 77.8% | 80.6% |
| 1 | 15% | 86.1% | 80.6% |
| 2 | 28.3% | 83.3% | 75% |
| 4 | 31.7% | 72.2% | 77.8% |
| 8 | 30% | 58.3% | 80.6% |
Numbers from reports/final_results.csv (also README table)
Technical framing
A handful of exact bridge examples unlocks recombination repair — Holdout repair jumps from 6.7% to ~30% by dose 2-4, but heavy dosing (8) erodes seen-IID performance; dose 2 is the sweet spot.
How to read
Each bar is a training recipe; height is percent of unseen combinations solved, higher is better. Left to right: no combined examples, near-miss lookalikes, then two and four exact combined examples per pairing.
Takeaway → Lookalikes stay at the no-example floor near 8% while exact examples reach about 30%, so similar-looking data is no substitute.
Data table
| Training curriculum | trace-trained adapter |
|---|---|
| no bridges (dose 0) | 6.7% |
| near-miss focus | 8.3% |
| dose 2 exact bridges | 28.3% |
| dose 4 exact bridges | 31.7% |
Numbers from reports/final_results.csv (also README table)
Technical framing
Near-miss examples do not substitute for exact bridge pairs — A near-miss-heavy curriculum stays at 8.3%, near the 6.7% no-bridge baseline; only exact factor-pair bridges lift holdout repair to ~30%.
How to read
Each bar is a variant of the heaviest dose; height is percent of unseen combinations solved, higher is better. The first keeps the reasoning steps aligned in teaching and testing; the others remove or scramble them at teaching or test time.
Takeaway → Only the aligned-steps bar reaches about 30%; every stripped or scrambled variant collapses back to the 7-8% floor.
Data table
| Dose-8 condition | dose 8 |
|---|---|
| trace-trained + trace prompt | 30% |
| no-trace trained | 8.3% |
| shuffled-trace trained | 8.3% |
| trace-trained, no-trace prompt | 8.3% |
| trace-trained, shuffled-trace prompt | 6.7% |
Numbers from reports/final_results.csv
Technical framing
Recombination gains require an aligned trace at train and test time — Removing or shuffling the trace at training or prompt time collapses the dose-8 recombination gain back to the ~7-8% floor.
How to read
Each cluster is a withheld skill-pairing family; bars within it are different doses (none, light, heavy, and near-miss lookalike); height is percent solved, higher is better.
Takeaway → One family jumps to near-perfect once dosed while another never improves at any dose — the benefit is concentrated, not spread evenly.
Data table
| Withheld recombination family | Dose 0 trace | Dose 2 trace | Dose 8 trace | Near-miss focus trace |
|---|---|---|---|---|
| length_contains_code | 0% | 0% | 33.3% | 0% |
| modulo_sum_label | 0% | 0% | 0% | 0% |
| sorted_contains_count | 0% | 100% | 91.7% | 0% |
| sorted_tuple_affine | 33.3% | 33.3% | 16.7% | 41.7% |
| tuple_branch_label | 0% | 8.3% | 8.3% | 0% |
Numbers from report table (Recombination Holdout By Family), reports/bridge_dose_recombination_curriculum_report.md
Technical framing
Which withheld families the bridge dose actually unlocks — The dose gain is concentrated: sorted_contains_count jumps to 91-100% while modulo_sum_label never repairs at any dose.
How to read
Each bar is a basic skill involved in a withheld pairing; height is percent of those tasks solved at the heaviest dose, higher is better. Bars are sorted easiest-to-hardest to fuse.
Takeaway → Step-through iteration and text-cleanup skills fuse at about 92% while remainder and arithmetic skills stay near zero — a wide spread across skill types.
Data table
| Primitive factor in the withheld pair | Dose 8 trace |
|---|---|
| sequence_iteration | 91.7% |
| string_normalization | 91.7% |
| string_match | 62.5% |
| ordering | 54.2% |
| aggregation | 45.8% |
| string_format | 33.3% |
| length | 33.3% |
| arithmetic | 14.6% |
| branching | 13.9% |
| modulo | 0% |
Numbers from report table (Dose 8 Holdout By Factor), reports/bridge_dose_recombination_curriculum_report.md
Technical framing
Dose 8 holdout repair varies hugely by primitive factor — Iteration and string-normalization factors repair at 91.7% while modulo stays at 0%; tuple_access (12.5%) omitted to fit 10 bars.
How to read
Horizontal axis is how many combined examples were added; vertical is percent solved, higher is better. One line is familiar tasks, the other is reformatted versions of those same familiar tasks.
Takeaway → Familiar-task accuracy peaks near 86% at a light dose then slides to 58% at the heaviest, while reformatted tasks hold steady — a hidden cost.
Data table
| Bridge examples per withheld family (k) | Seen-combination IID | Format shift |
|---|---|---|
| 0 | 77.8% | 80.6% |
| 1 | 86.1% | 80.6% |
| 2 | 83.3% | 75% |
| 4 | 72.2% | 77.8% |
| 8 | 58.3% | 80.6% |
Numbers from README table, experiments/bridge_dose_recombination_curriculum/README.md
Technical framing
Bridge dose has a cost: seen-task accuracy drops at dose 8 — Higher doses displace seen-combination training data: seen-IID repair falls from 86.1% to 58.3% while format-shift robustness holds.
In the author’s words from the Overview · “Final Result Snapshot”
Final evaluation completed for all 39 planned jobs across seen IID, format-shift, and recombination-holdout splits. Core readout: Exact bridge examples caused a large recombination jump: dose 0 to dose 8 improved holdout repair from 6.7% to 30.0%. Dose 4 was the best absolute holdout condition at 31.7%, but dose 2 captured most of the gain while preserving stronger seen-IID behavior. Near-miss focus did not substitute for exact bridge pairs: 8.3% holdout despite strong seen/format performance. Trace alignment was necessary. Dose 8 no-trace and shuffled-trace controls stayed at 8.3% holdout, and prompt-time trace ablations collapsed the trained dose 8 trace adapter. The full report is in reports/bridge_dose_recombination_curriculum_report.md.
Overview
Standalone experiment package for testing whether a small number of exact factor-pair bridge examples is enough to unlock trace-conditioned recombination generalization.
Final Result Snapshot
Final evaluation completed for all 39 planned jobs across seen IID, format-shift, and recombination-holdout splits.
| Condition | Seen IID | Format Shift | Recombination Holdout |
|---|---|---|---|
| Frozen trace | 0.0% (0/36) | 0.0% (0/36) | 0.0% (0/60) |
| Dose 0 trace | 77.8% (28/36) | 80.6% (29/36) | 6.7% (4/60) |
| Dose 1 trace | 86.1% (31/36) | 80.6% (29/36) | 15.0% (9/60) |
| Dose 2 trace | 83.3% (30/36) | 75.0% (27/36) | 28.3% (17/60) |
| Dose 4 trace | 72.2% (26/36) | 77.8% (28/36) | 31.7% (19/60) |
| Dose 8 trace | 58.3% (21/36) | 80.6% (29/36) | 30.0% (18/60) |
| Near-miss focus trace | 83.3% (30/36) | 80.6% (29/36) | 8.3% (5/60) |
Core readout:
- Exact bridge examples caused a large recombination jump: dose 0 to dose 8 improved holdout repair from 6.7% to 30.0%.
- Dose 4 was the best absolute holdout condition at 31.7%, but dose 2 captured most of the gain while preserving stronger seen-IID behavior.
- Near-miss focus did not substitute for exact bridge pairs: 8.3% holdout despite strong seen/format performance.
- Trace alignment was necessary. Dose 8 no-trace and shuffled-trace controls stayed at 8.3% holdout, and prompt-time trace ablations collapsed the trained dose 8 trace adapter.
The full report is in reports/bridge_dose_recombination_curriculum_report.md.
Layout
configs/experiment.json: fixed design, model, training, and evaluation settings.data/: generated JSONL datasets and dataset manifest.scripts/: dataset generation, LoRA training runner, final evaluation runner, evaluator, and report generator.reports/: training manifests, final evaluation JSON, CSV summaries, and markdown report.figures/: generated plots.logs/experiment_log.md: chronological run log.run_logs/: raw console logs for dataset build, training, evaluation, and report generation.
Large model artifacts are intentionally outside this directory:
large_artifacts/bridge_dose_recombination_curriculum/models/
The compact experiment directory should contain scripts, logs, data, reports, and figures only. Adapter weights and training checkpoints are separated so this directory can be downloaded without multi-GB model files.
Key Outputs
reports/bridge_dose_recombination_curriculum_report.md: final narrative report.reports/final_results.csv: one-row-per-condition/split evaluation summary.reports/final_results_by_family.csv: recombination holdout broken down by synthetic family.reports/final_results_by_factor.csv: recombination holdout broken down by primitive factor.reports/final/final_evaluation_jobs.json: complete final evaluation job manifest.reports/training/training_jobs.json: complete training job manifest.figures/final_repair_by_condition_split.png: main split-level repair chart.figures/recombination_holdout_by_family.png: family-level holdout chart.logs/experiment_log.md: chronological run log with decisions, commands, and observations.
Download Notes
Download experiments/bridge_dose_recombination_curriculum/ for the complete compact experiment package. It contains data, code, logs, reports, figures, and run manifests.
Do not include large_artifacts/bridge_dose_recombination_curriculum/ unless adapter weights/checkpoints are needed. That directory contains the multi-GB LoRA outputs and checkpoint files.
Core Commands
Build data:
python experiments/bridge_dose_recombination_curriculum/scripts/build_bridge_dataset.py \
--output-dir experiments/bridge_dose_recombination_curriculum/dataTrain adapters:
python experiments/bridge_dose_recombination_curriculum/scripts/run_training.py --suite allRun final evaluations:
python experiments/bridge_dose_recombination_curriculum/scripts/run_final_evaluations.py --suite allGenerate report:
python experiments/bridge_dose_recombination_curriculum/scripts/make_report.pyReport
Rendered from reports/bridge_dose_recombination_curriculum_report.md
Question
How many exact bridge examples are needed before trace-conditioned repair generalizes across withheld factor-pair cells?
Design
- Every trained condition uses a fixed 240-record budget.
- Dose conditions add
kexamples from each withheld factor-pair family, withkin{0, 1, 2, 4, 8}. - Seen-combination records are removed as bridge examples are added, so gains cannot come from a larger dataset.
- A near-miss focus control uses no exact withheld pairs but reallocates examples toward families sharing one primitive factor with the withheld pairs.
- Endpoint no-trace and shuffled-trace controls test whether any bridge effect depends on aligned trace evidence.
- Checkpoints and adapter weights are stored outside this experiment directory under
large_artifacts/bridge_dose_recombination_curriculum/models/.
Overall Results
| Condition | Seen-Combination IID | Format Shift | Recombination Holdout |
|---|---|---|---|
| Frozen trace | 0.0% (0/36) | 0.0% (0/36) | 0.0% (0/60) |
| Dose 0 trace | 77.8% (28/36) | 80.6% (29/36) | 6.7% (4/60) |
| Dose 1 trace | 86.1% (31/36) | 80.6% (29/36) | 15.0% (9/60) |
| Dose 2 trace | 83.3% (30/36) | 75.0% (27/36) | 28.3% (17/60) |
| Dose 4 trace | 72.2% (26/36) | 77.8% (28/36) | 31.7% (19/60) |
| Dose 8 trace | 58.3% (21/36) | 80.6% (29/36) | 30.0% (18/60) |
| Near-miss focus trace | 83.3% (30/36) | 80.6% (29/36) | 8.3% (5/60) |
| Dose 0 no-trace | 27.8% (10/36) | 22.2% (8/36) | 5.0% (3/60) |
| Dose 0 shuffled-trace train | 25.0% (9/36) | 27.8% (10/36) | 6.7% (4/60) |
| Dose 8 no-trace | 30.6% (11/36) | 30.6% (11/36) | 8.3% (5/60) |
| Dose 8 shuffled-trace train | 19.4% (7/36) | 33.3% (12/36) | 8.3% (5/60) |
Dose Curve
| Condition | Seen-Combination IID | Format Shift | Recombination Holdout |
|---|---|---|---|
| Dose 0 trace | 77.8% (28/36) | 80.6% (29/36) | 6.7% (4/60) |
| Dose 1 trace | 86.1% (31/36) | 80.6% (29/36) | 15.0% (9/60) |
| Dose 2 trace | 83.3% (30/36) | 75.0% (27/36) | 28.3% (17/60) |
| Dose 4 trace | 72.2% (26/36) | 77.8% (28/36) | 31.7% (19/60) |
| Dose 8 trace | 58.3% (21/36) | 80.6% (29/36) | 30.0% (18/60) |
| Near-miss focus trace | 83.3% (30/36) | 80.6% (29/36) | 8.3% (5/60) |
Prompt Ablations
| Condition | Seen-Combination IID | Format Shift | Recombination Holdout |
|---|---|---|---|
| Dose 8 trace | 58.3% (21/36) | 80.6% (29/36) | 30.0% (18/60) |
| Dose 8 trace, no-trace prompt | 19.4% (7/36) | 13.9% (5/36) | 8.3% (5/60) |
| Dose 8 trace, shuffled-trace prompt | 5.6% (2/36) | 11.1% (4/36) | 6.7% (4/60) |
Recombination Holdout By Family
| Family | Dose 0 trace | Dose 2 trace | Dose 8 trace | Near-miss focus trace | Dose 8 no-trace | Dose 8 shuffled-trace train |
|---|---|---|---|---|---|---|
| length_contains_code | 0.0% (0/12) | 0.0% (0/12) | 33.3% (4/12) | 0.0% (0/12) | 0.0% (0/12) | 0.0% (0/12) |
| modulo_sum_label | 0.0% (0/12) | 0.0% (0/12) | 0.0% (0/12) | 0.0% (0/12) | 0.0% (0/12) | 0.0% (0/12) |
| sorted_contains_count | 0.0% (0/12) | 100.0% (12/12) | 91.7% (11/12) | 0.0% (0/12) | 0.0% (0/12) | 0.0% (0/12) |
| sorted_tuple_affine | 33.3% (4/12) | 33.3% (4/12) | 16.7% (2/12) | 41.7% (5/12) | 41.7% (5/12) | 41.7% (5/12) |
| tuple_branch_label | 0.0% (0/12) | 8.3% (1/12) | 8.3% (1/12) | 0.0% (0/12) | 0.0% (0/12) | 0.0% (0/12) |
Dose 8 Holdout By Factor
| Factor | repair@1 |
|---|---|
| aggregation | 45.8% (11/24) |
| arithmetic | 14.6% (7/48) |
| branching | 13.9% (5/36) |
| length | 33.3% (4/12) |
| modulo | 0.0% (0/12) |
| ordering | 54.2% (13/24) |
| sequence_iteration | 91.7% (11/12) |
| string_format | 33.3% (16/48) |
| string_match | 62.5% (15/24) |
| string_normalization | 91.7% (11/12) |
| tuple_access | 12.5% (3/24) |
Readout
- Best core recombination result: Dose 4 trace at 31.7% (19/60).
- Dose response from
k=0tok=8: 6.7% (4/60) to 30.0% (18/60), delta 23.3%. - Pair anchoring check: dose 8 trace 30.0% (18/60) vs near-miss focus 8.3% (5/60).
Figures
experiments/bridge_dose_recombination_curriculum/figures/final_repair_by_condition_split.pngexperiments/bridge_dose_recombination_curriculum/figures/recombination_holdout_by_family.png
Artifact Layout
- Compact artifacts:
experiments/bridge_dose_recombination_curriculum/. - Large artifacts:
large_artifacts/bridge_dose_recombination_curriculum/. - Dataset manifest:
experiments/bridge_dose_recombination_curriculum/data/dataset_manifest.json. - Evaluation manifest:
experiments/bridge_dose_recombination_curriculum/reports/final/final_evaluation_jobs.json.
Experiment log 7
Show the running log (7 entries, 2026-06-21)
2026-06-21
- Created standalone experiment directory at
experiments/bridge_dose_recombination_curriculum/. - Created large-artifact directory at
large_artifacts/bridge_dose_recombination_curriculum/models/. - Defined the central question: how many exact bridge examples are needed before trace-conditioned repair generalizes across withheld factor-pair cells?
Planned a fixed-budget bridge-dose curriculum:
- every trained condition has 240 records,
- bridge doses are
k = 0, 1, 2, 4, 8examples per withheld factor-pair family, - adding bridge examples removes seen-combination examples so dataset size is constant,
- a near-miss focus control has no exact withheld factor pairs but reallocates examples toward related primitive factors,
- endpoint no-trace and shuffled-trace controls test whether any bridge effect depends on aligned trace evidence.
Implemented the experiment package:
scripts/build_bridge_dataset.pyscripts/eval_bridge.pyscripts/run_training.pyscripts/run_final_evaluations.pyscripts/make_report.py
The builder validates every generated record before writing:
- wrong implementation fails visible tests,
- target corrective diff applies,
- target implementation passes visible and hidden tests,
- visible and hidden inputs are disjoint.
Next step: build and validate the datasets, then inspect the manifest before starting training.
Dataset Build
- Ran
scripts/build_bridge_dataset.pywith seed20260621. - Completed executable validation for all generated records.
Wrote six 240-record training files:
repair_train_dose0.jsonlrepair_train_dose1.jsonlrepair_train_dose2.jsonlrepair_train_dose4.jsonlrepair_train_dose8.jsonlrepair_train_near_miss_focus.jsonl
Wrote three fixed evaluation splits:
repair_val_seen_iid.jsonl: 36 records.repair_val_format_shift.jsonl: 36 records.repair_val_recombination_holdout.jsonl: 60 records.
Verified bridge-count invariants from
data/dataset_manifest.json:repair_train_dose0: no exact bridge examples.repair_train_dose1: 1 example for each withheld factor pair.repair_train_dose2: 2 examples for each withheld factor pair.repair_train_dose4: 4 examples for each withheld factor pair.repair_train_dose8: 8 examples for each withheld factor pair.repair_train_near_miss_focus: no exact bridge examples.
Withheld factor pairs:
aggregation+modulobranching+tuple_accesslength+string_matchordering+string_matchordering+tuple_access
- Compact experiment directory after dataset build: about 11 MB.
- Large artifact directory remains empty before training.
Next step: train the dose curve adapters and endpoint controls.
Training
- Ran
scripts/run_training.py --suite all. Trained all 10 planned LoRA adapters with the shared configuration:
- base model:
Qwen/Qwen2.5-Coder-3B-Instruct - revision:
488639f1ff808d1d3d0ba301aef8c11461451ec5 - epochs: 3
- learning rate:
1.5e-4 - LoRA rank/alpha/dropout:
32/64/0.05 - max sequence length:
3072 - gradient accumulation:
8 - checkpoint/eval cadence: every 30 optimizer steps
- base model:
- Adapter outputs were written under
large_artifacts/bridge_dose_recombination_curriculum/models/, not inside the compact experiment directory. - All jobs completed successfully. Runtime per adapter was about 7 minutes.
Held-out recombination validation loss by epoch:
| adapter | epoch 1 | epoch 2 | epoch 3 |
|---|---|---|---|
dose0_trace | 0.1122 | 0.1312 | 0.1495 |
dose1_trace | 0.08764 | 0.07808 | 0.07351 |
dose2_trace | 0.07014 | 0.05168 | 0.05419 |
dose4_trace | 0.05970 | 0.04071 | 0.04115 |
dose8_trace | 0.05468 | 0.03958 | 0.03626 |
near_miss_focus_trace | 0.1525 | 0.1286 | 0.1355 |
dose0_no_trace | 0.1918 | 0.1806 | 0.1962 |
dose0_shuffled_trace | 0.1790 | 0.1966 | 0.2040 |
dose8_no_trace | 0.1201 | 0.1001 | 0.09461 |
dose8_shuffled_trace | 0.1251 | 0.1056 | 0.09834 |
Interim observations before final exact-match evaluation:
- Zero-dose trace overfit the seen combinations by held-out loss: 0.1122 -> 0.1495.
- Exact bridge examples produced a monotonic endpoint improvement across the trace dose curve: dose 1, 2, 4, and 8 all beat dose 0, with dose 8 best at 0.03626.
- The near-miss focus control failed to substitute for exact bridge examples despite low training loss.
- Removing traces at dose 0 was much worse than coherent traces; shuffling trace lines was similarly poor.
- At dose 8, no-trace and shuffled-trace controls improved versus their dose 0 counterparts, but stayed far behind coherent trace. This suggests exact bridge coverage and coherent trace conditioning are complementary.
Next step: run the fixed final evaluation matrix across seen IID, format shift, and recombination holdout splits.
Final Evaluation
- Ran
scripts/run_final_evaluations.py --suite all. - Completed all 39 planned final evaluation jobs.
- Wrote the evaluation manifest to
reports/final/final_evaluation_jobs.json. Wrote aggregate CSV outputs:
reports/final_results.csvreports/final_results_by_family.csvreports/final_results_by_factor.csv
Generated figures:
Overall repair@1 results:
| Condition | Seen IID | Format Shift | Recombination Holdout |
|---|---|---|---|
| Frozen trace | 0.0% (0/36) | 0.0% (0/36) | 0.0% (0/60) |
| Dose 0 trace | 77.8% (28/36) | 80.6% (29/36) | 6.7% (4/60) |
| Dose 1 trace | 86.1% (31/36) | 80.6% (29/36) | 15.0% (9/60) |
| Dose 2 trace | 83.3% (30/36) | 75.0% (27/36) | 28.3% (17/60) |
| Dose 4 trace | 72.2% (26/36) | 77.8% (28/36) | 31.7% (19/60) |
| Dose 8 trace | 58.3% (21/36) | 80.6% (29/36) | 30.0% (18/60) |
| Near-miss focus trace | 83.3% (30/36) | 80.6% (29/36) | 8.3% (5/60) |
| Dose 0 no-trace | 27.8% (10/36) | 22.2% (8/36) | 5.0% (3/60) |
| Dose 0 shuffled-trace train | 25.0% (9/36) | 27.8% (10/36) | 6.7% (4/60) |
| Dose 8 no-trace | 30.6% (11/36) | 30.6% (11/36) | 8.3% (5/60) |
| Dose 8 shuffled-trace train | 19.4% (7/36) | 33.3% (12/36) | 8.3% (5/60) |
Prompt ablations on the dose 8 trace adapter:
| Prompt condition | Seen IID | Format Shift | Recombination Holdout |
|---|---|---|---|
| Trace prompt | 58.3% (21/36) | 80.6% (29/36) | 30.0% (18/60) |
| No-trace prompt | 19.4% (7/36) | 13.9% (5/36) | 8.3% (5/60) |
| Shuffled-trace prompt | 5.6% (2/36) | 11.1% (4/36) | 6.7% (4/60) |
Recombination holdout by selected family:
| Family | Dose 0 trace | Dose 2 trace | Dose 8 trace | Near-miss focus trace | Dose 8 no-trace | Dose 8 shuffled-trace train |
|---|---|---|---|---|---|---|
| length_contains_code | 0/12 | 0/12 | 4/12 | 0/12 | 0/12 | 0/12 |
| modulo_sum_label | 0/12 | 0/12 | 0/12 | 0/12 | 0/12 | 0/12 |
| sorted_contains_count | 0/12 | 12/12 | 11/12 | 0/12 | 0/12 | 0/12 |
| sorted_tuple_affine | 4/12 | 4/12 | 2/12 | 5/12 | 5/12 | 5/12 |
| tuple_branch_label | 0/12 | 1/12 | 1/12 | 0/12 | 0/12 | 0/12 |
Interpretation:
- Exact bridge examples are the main lever. The trace dose curve moved recombination holdout from 4/60 at dose 0 to 9/60, 17/60, 19/60, and 18/60 at doses 1, 2, 4, and 8.
- Dose 2 is the practical frontier: it captures most of the recombination gain while retaining 30/36 seen-IID repairs. Dose 4 is best on holdout by two additional examples but costs seen-IID accuracy. Dose 8 adds no further holdout gain and sharply reduces seen-IID performance.
- Pair anchoring matters. The near-miss focus control retained strong seen-IID and format-shift performance but reached only 5/60 on recombination holdout.
- Coherent traces matter at both train time and prompt time. No-trace and shuffled-trace training stayed near floor on holdout, and removing or shuffling trace context at inference collapsed the dose 8 trace adapter.
- Gains are concentrated rather than uniform.
sorted_contains_countbecame mostly solved under the bridge curriculum, whilemodulo_sum_labelremained 0/12 across measured conditions andtuple_branch_labelbarely moved.
Report Generation
- Ran
scripts/make_report.py. - Wrote the final markdown report to
reports/bridge_dose_recombination_curriculum_report.md. - Updated
README.mdwith the final result snapshot, key output list, and download guidance.
Artifact Split
- Compact experiment directory:
experiments/bridge_dose_recombination_curriculum/. - Large model artifact directory:
large_artifacts/bridge_dose_recombination_curriculum/models/. - All LoRA adapters and checkpoints were written to the large artifact directory.
- The compact directory is intended to be downloaded independently and should contain no
.safetensors,.bin,.pt, or.pthfiles.
Final next-experiment implication:
- The most promising follow-up is not a larger global bridge dose. The useful next step is a targeted per-family bridge allocation experiment that starts from the dose 2 frontier, reallocates bridge budget toward persistent failure families (
modulo_sum_label,tuple_branch_label, andlength_contains_code), and preserves enough seen-combination coverage to avoid the dose 8 seen-IID regression.
Final Verification
python -m py_compile experiments/bridge_dose_recombination_curriculum/scripts/*.pycompleted successfully.- Verified
reports/final/final_evaluation_jobs.jsoncontains 39 jobs and all have statuscompleted. - Verified
reports/final_results.csvcontains 39 rows and uses the expectedrepair_at_1metric column. - Confirmed no
.safetensors,.bin,.pt, or.pthfiles are present underexperiments/bridge_dose_recombination_curriculum/. - Confirmed no
__pycache__directories remain after cleanup. Final directory sizes:
- Compact experiment directory: 22 MB.
- Large artifact directory: 13 GB.
- Large artifact file count under
large_artifacts/bridge_dose_recombination_curriculum/models/: 80 files.
Status: complete. The standalone experiment directory is ready to download without large model artifacts; adapter weights and checkpoints remain split out under large_artifacts/.
Figures 2
Data files 4
Result tables and metrics copied from the experiment folder — preview inline or open the raw file.
reports/final_results.csv15 kBreports/final_results_by_factor.csv44 kBreports/final_results_by_family.csv37 kBreports/final/final_evaluation_jobs.json55 kB
Reproduce
Run steps are documented inside the experiment folder (README and scripts).

