anhtld commited on
Commit
bceeaea
·
verified ·
1 Parent(s): 52d0693

Auto-sync: 2026-06-30 09:33:44 (part 3)

Browse files
results/paper_analysis.json CHANGED
@@ -1,6 +1,6 @@
1
  {
2
  "best_clean_key": "residual_k4_composemasked_dropnmnoop_grid035040045_noopbonus003_nmchallenger001",
3
- "generated_utc": "2026-06-30T09:13:25+00:00",
4
  "mechanism_gap": {
5
  "best_clean_vs_direct_same_ckpt": 0.0776811594202898,
6
  "best_clean_vs_h16": 0.06318840579710144,
@@ -8129,6 +8129,16 @@
8129
  },
8130
  "source": "results/h16_lattice_no_expert_policy_baseline_margin000_summary.json",
8131
  "std_success": 0.04906690775535958
 
 
 
 
 
 
 
 
 
 
8132
  }
8133
  },
8134
  "paired_deltas": {
 
1
  {
2
  "best_clean_key": "residual_k4_composemasked_dropnmnoop_grid035040045_noopbonus003_nmchallenger001",
3
+ "generated_utc": "2026-06-30T13:38:53+00:00",
4
  "mechanism_gap": {
5
  "best_clean_vs_direct_same_ckpt": 0.0776811594202898,
6
  "best_clean_vs_h16": 0.06318840579710144,
 
8129
  },
8130
  "source": "results/h16_lattice_no_expert_policy_baseline_margin000_summary.json",
8131
  "std_success": 0.04906690775535958
8132
+ },
8133
+ "typed_proposal_lattice_types6_prepend_margin000": {
8134
+ "label": "Typed proposal lattice head, six families, policy-prepended margin 0.00",
8135
+ "missing": true,
8136
+ "source": "results/h16_policy_ckpt_near_miss_policy_bc5_typedprop_p2_bestpt_proposal_lattice_types6_prepend_margin0p00_summary.json"
8137
+ },
8138
+ "typed_proposal_lattice_types6_prepend_margin005": {
8139
+ "label": "Typed proposal lattice head, six families, policy-prepended margin 0.05",
8140
+ "missing": true,
8141
+ "source": "results/h16_policy_ckpt_near_miss_policy_bc5_typedprop_p2_bestpt_proposal_lattice_types6_prepend_margin0p05_summary.json"
8142
  }
8143
  },
8144
  "paired_deltas": {
results/paper_analysis.md CHANGED
@@ -1,6 +1,6 @@
1
  # Paper Analysis
2
 
3
- Generated: `2026-06-30T09:13:25+00:00`
4
 
5
  ## Main Seed Statistics
6
 
@@ -60,6 +60,8 @@ Generated: `2026-06-30T09:13:25+00:00`
60
  | residual_k4_composemasked_dropnmnoop_grid035040045_noopbonus003_nmchallenger001_scales035040 | K4 compatible tangents, no-op bonus 0.03, near-miss challenger gate 0.01, scale-gated 0.35/0.40 | 3 | 36.00% +/- 1.31 | +/- 3.26 | 57.37% | 0.407 | +6.26 pp |
61
  | residual_k4_composemasked_dropnmnoop_grid035040045_noopbonus003_nmchallenger003 | K4 compatible tangents, no-op bonus 0.03, near-miss challenger gate 0.03 | 3 | 35.94% +/- 1.28 | +/- 3.18 | 57.36% | 0.407 | +6.20 pp |
62
  | residual_k4_composemasked_dropnmnoop_grid035040045_noopbonus003_nmwgchallenger001 | K4 compatible tangents, no-op bonus 0.03, near-miss/wrong-gripper challenger gate 0.01 | 3 | 35.94% +/- 1.13 | +/- 2.81 | 57.40% | 0.424 | +6.20 pp |
 
 
63
  | residual_k4_composemasked_dropnmnoop_grid035040045_noopbonus003_nmbonus001 | K4 composed compatible tangents, no-op bonus 0.03, singleton near-miss bonus 0.01 | 3 | 35.59% +/- 0.99 | +/- 2.46 | 57.10% | 0.406 | +5.86 pp |
64
  | residual_k4_composemasked_dropnmnoop_grid035040045_noopbonus003_nmbonus002 | K4 composed compatible tangents, no-op bonus 0.03, singleton near-miss bonus 0.02 | 3 | 35.59% +/- 0.99 | +/- 2.46 | 57.10% | 0.406 | +5.86 pp |
65
  | residual_k4_composemasked_dropnmnoop_grid035040045_srcscorebonus002 | K4 composed type-consensus tangents, masked, drop near-miss+no-op composite, source-score bonus 0.02 | 3 | 35.48% +/- 1.22 | +/- 3.02 | 57.02% | 0.408 | +5.74 pp |
 
1
  # Paper Analysis
2
 
3
+ Generated: `2026-06-30T13:38:53+00:00`
4
 
5
  ## Main Seed Statistics
6
 
 
60
  | residual_k4_composemasked_dropnmnoop_grid035040045_noopbonus003_nmchallenger001_scales035040 | K4 compatible tangents, no-op bonus 0.03, near-miss challenger gate 0.01, scale-gated 0.35/0.40 | 3 | 36.00% +/- 1.31 | +/- 3.26 | 57.37% | 0.407 | +6.26 pp |
61
  | residual_k4_composemasked_dropnmnoop_grid035040045_noopbonus003_nmchallenger003 | K4 compatible tangents, no-op bonus 0.03, near-miss challenger gate 0.03 | 3 | 35.94% +/- 1.28 | +/- 3.18 | 57.36% | 0.407 | +6.20 pp |
62
  | residual_k4_composemasked_dropnmnoop_grid035040045_noopbonus003_nmwgchallenger001 | K4 compatible tangents, no-op bonus 0.03, near-miss/wrong-gripper challenger gate 0.01 | 3 | 35.94% +/- 1.13 | +/- 2.81 | 57.40% | 0.424 | +6.20 pp |
63
+ | typed_proposal_lattice_types6_prepend_margin000 | Typed proposal lattice head, six families, policy-prepended margin 0.00 | 0 | missing | missing | missing | missing | missing |
64
+ | typed_proposal_lattice_types6_prepend_margin005 | Typed proposal lattice head, six families, policy-prepended margin 0.05 | 0 | missing | missing | missing | missing | missing |
65
  | residual_k4_composemasked_dropnmnoop_grid035040045_noopbonus003_nmbonus001 | K4 composed compatible tangents, no-op bonus 0.03, singleton near-miss bonus 0.01 | 3 | 35.59% +/- 0.99 | +/- 2.46 | 57.10% | 0.406 | +5.86 pp |
66
  | residual_k4_composemasked_dropnmnoop_grid035040045_noopbonus003_nmbonus002 | K4 composed compatible tangents, no-op bonus 0.03, singleton near-miss bonus 0.02 | 3 | 35.59% +/- 0.99 | +/- 2.46 | 57.10% | 0.406 | +5.86 pp |
67
  | residual_k4_composemasked_dropnmnoop_grid035040045_srcscorebonus002 | K4 composed type-consensus tangents, masked, drop near-miss+no-op composite, source-score bonus 0.02 | 3 | 35.48% +/- 1.22 | +/- 3.02 | 57.02% | 0.408 | +5.74 pp |
results/paper_core_results.md CHANGED
@@ -61,6 +61,7 @@ lattice is `+27.25 pp`, and the remaining clean-to-same-state proposal gap is
61
  | K4 compatible residual retrieval, unique candidate-oracle prefix K=8 | No | No | 43.07% diagnostic | +13.33 pp diagnostic | Diagnostic-only measured oracle over generated clean candidate prefix; unique-action trace shows real selector headroom, not duplicate-action inflation |
62
  | K4 compatible residual retrieval + near-miss challenger gate 0.01 | No | No | 36.06% | +6.32 pp | Current best clean deployment row; a two-stage selector keeps the robust compatible-chart anchor and only lets singleton near-miss tangents override under a tightly calibrated positive field margin |
63
  | K4 compatible residual retrieval + near-miss challenger fine calibration | No | No | 36.00-36.00% | +6.26 pp | Margins 0.005/0.015/0.02 form a near-tie plateau around the 0.01 optimum; scale-gating the challenger to 0.35 or 0.35/0.40 lowers MSE slightly but does not recover the lost success; 0.03 and near-miss+wrong-gripper are lower or higher-MSE, so the effect is calibrated singleton near-miss geometry rather than broad residual mixing |
 
64
  | K4 compatible residual retrieval, margin 0.10 | No | No | 34.67% | +4.93 pp | Naively lowering abstention selects too many bad nonzero tangents and falls below the 36.06% top row |
65
  | K4 composed type-consensus residual retrieval, exact compatibility mask + source-score prior | No | No | 35.48% | +5.74 pp | Measured train-source reward confidence does not replace the sparse typed prior on the compatible chart; useful negative calibration |
66
  | K4 composed type-consensus residual retrieval, exact compatibility mask + no-op/source-score priors | No | No | 35.54% | +5.80 pp | Adding measured train-source reward confidence to the current typed-prior chart ties near-best but does not beat exact compatibility masking alone |
 
61
  | K4 compatible residual retrieval, unique candidate-oracle prefix K=8 | No | No | 43.07% diagnostic | +13.33 pp diagnostic | Diagnostic-only measured oracle over generated clean candidate prefix; unique-action trace shows real selector headroom, not duplicate-action inflation |
62
  | K4 compatible residual retrieval + near-miss challenger gate 0.01 | No | No | 36.06% | +6.32 pp | Current best clean deployment row; a two-stage selector keeps the robust compatible-chart anchor and only lets singleton near-miss tangents override under a tightly calibrated positive field margin |
63
  | K4 compatible residual retrieval + near-miss challenger fine calibration | No | No | 36.00-36.00% | +6.26 pp | Margins 0.005/0.015/0.02 form a near-tie plateau around the 0.01 optimum; scale-gating the challenger to 0.35 or 0.35/0.40 lowers MSE slightly but does not recover the lost success; 0.03 and near-miss+wrong-gripper are lower or higher-MSE, so the effect is calibrated singleton near-miss geometry rather than broad residual mixing |
64
+ | Typed proposal lattice head, six primitive families | No | No | pending | pending | New clean support-gap test: the model generates expert/non-expert primitive proposals directly and the field scores them with a policy fallback; train/eval/summary chain is `14962264` -> `14962356`/`14962357` -> `14962363`/`14962364` |
65
  | K4 compatible residual retrieval, margin 0.10 | No | No | 34.67% | +4.93 pp | Naively lowering abstention selects too many bad nonzero tangents and falls below the 36.06% top row |
66
  | K4 composed type-consensus residual retrieval, exact compatibility mask + source-score prior | No | No | 35.48% | +5.74 pp | Measured train-source reward confidence does not replace the sparse typed prior on the compatible chart; useful negative calibration |
67
  | K4 composed type-consensus residual retrieval, exact compatibility mask + no-op/source-score priors | No | No | 35.54% | +5.80 pp | Adding measured train-source reward confidence to the current typed-prior chart ties near-best but does not beat exact compatibility masking alone |
results/paper_story_memo.md CHANGED
@@ -34,6 +34,7 @@ when queried on proposal geometry that matches those local counterfactuals.
34
  | Singleton near-miss priors do not open a new clean route | adding a small exact `residual_near_miss` singleton prior 0.01 or 0.02 on the compatible chart ties the previous 35.59% compatibility row and slightly raises progress to 57.10% | Tie diagnostic: revived near-miss tangents are high-precision but too sparse to close the clean-to-same-state proposal gap |
35
  | Candidate-prefix oracle needs unique-action hygiene | the first K=8 prefix diagnostic was archived as `_nonunique`; the deduplicated unique-action trace reaches 43.07% candidate-oracle success with mean best branch rank 2.85 | Supported diagnostic: proposal headroom is real, but branch success falls with rank, so selector calibration must be conditional |
36
  | Near-miss challenger calibration improves clean deployment | the trace-motivated two-stage selector keeps the compatible-chart anchor and lets singleton near-miss tangents override only under a tightly calibrated margin; margin 0.01 reaches 36.06%, while 0.005/0.015/0.02 and scale-gated 0.35 or 0.35/0.40 variants tie at 36.00% | Current best clean row; small but story-aligned selector-calibration gain, with scale-gating explaining MSE but not improving success and wrong-gripper challengers rejected by lower success or higher MSE |
 
37
  | Component-wise composite priors do not add the gain | propagating the no-op bonus into composite types reaches 35.36%, below the exact-prior masked composition row at 35.54% and the exact compatibility row at 35.59% | Negative/near-tie diagnostic: sparse exact priors are better than broadly rewarding every no-op-containing composite |
38
  | Composite trust-radius penalty explains but does not improve the success top line | composite-only L2 penalty 0.02 ties 35.54% while lowering action MSE from 0.4106 to 0.4079; with the exact compatibility mask it lowers MSE further to 0.4048 but drops back to 35.54% | Tie/negative diagnostic: composed tangents need a local trust radius, but compatibility masking gives the success optimum |
39
  | Minimum-energy residual regularization does not add the gain | action L2 penalty 0.05 ties the previous 35.42% scale-grid row, while 0.10/0.20 reach 35.36% | Negative/tie diagnostic: the clean bridge is not explained by shortest-action bias |
 
34
  | Singleton near-miss priors do not open a new clean route | adding a small exact `residual_near_miss` singleton prior 0.01 or 0.02 on the compatible chart ties the previous 35.59% compatibility row and slightly raises progress to 57.10% | Tie diagnostic: revived near-miss tangents are high-precision but too sparse to close the clean-to-same-state proposal gap |
35
  | Candidate-prefix oracle needs unique-action hygiene | the first K=8 prefix diagnostic was archived as `_nonunique`; the deduplicated unique-action trace reaches 43.07% candidate-oracle success with mean best branch rank 2.85 | Supported diagnostic: proposal headroom is real, but branch success falls with rank, so selector calibration must be conditional |
36
  | Near-miss challenger calibration improves clean deployment | the trace-motivated two-stage selector keeps the compatible-chart anchor and lets singleton near-miss tangents override only under a tightly calibrated margin; margin 0.01 reaches 36.06%, while 0.005/0.015/0.02 and scale-gated 0.35 or 0.35/0.40 variants tie at 36.00% | Current best clean row; small but story-aligned selector-calibration gain, with scale-gating explaining MSE but not improving success and wrong-gripper challengers rejected by lower success or higher MSE |
37
+ | Typed proposal generation tests the remaining support gap | a new optional proposal head predicts expert plus primitive non-expert action families, then `proposal_lattice` lets the field score the generated set with policy fallback; jobs `14962264` -> `14962356`/`14962357` -> `14962363`/`14962364` are pending | Hypothesis test: if clean proposal support is the bottleneck, a learned typed lattice should close part of the 20.93 pp clean-to-same-state gap without same-state candidate leakage |
38
  | Component-wise composite priors do not add the gain | propagating the no-op bonus into composite types reaches 35.36%, below the exact-prior masked composition row at 35.54% and the exact compatibility row at 35.59% | Negative/near-tie diagnostic: sparse exact priors are better than broadly rewarding every no-op-containing composite |
39
  | Composite trust-radius penalty explains but does not improve the success top line | composite-only L2 penalty 0.02 ties 35.54% while lowering action MSE from 0.4106 to 0.4079; with the exact compatibility mask it lowers MSE further to 0.4048 but drops back to 35.54% | Tie/negative diagnostic: composed tangents need a local trust radius, but compatibility masking gives the success optimum |
40
  | Minimum-energy residual regularization does not add the gain | action L2 penalty 0.05 ties the previous 35.42% scale-grid row, while 0.10/0.20 reach 35.36% | Negative/tie diagnostic: the clean bridge is not explained by shortest-action bias |
results/paper_table_status.json CHANGED
@@ -1543,6 +1543,44 @@
1543
  "best_config": null,
1544
  "gain_vs_h16_policy": 0.06202898550724639
1545
  },
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1546
  {
1547
  "key": "retrieval_residual_k4_composemasked_dropnmnoop_grid035040045_noopbonus003_nmbonus001",
1548
  "label": "K4 composed compatible residual retrieval, no-op bonus 0.03, singleton near-miss bonus 0.01",
 
1543
  "best_config": null,
1544
  "gain_vs_h16_policy": 0.06202898550724639
1545
  },
1546
+ {
1547
+ "key": "typed_proposal_lattice_types6_prepend_margin000",
1548
+ "label": "Typed proposal lattice head, six families, policy-prepended margin 0.00",
1549
+ "path": "h16_policy_ckpt_near_miss_policy_bc5_typedprop_p2_bestpt_proposal_lattice_types6_prepend_margin0p00_summary.json",
1550
+ "clean_deployment": "yes",
1551
+ "same_state_proposals": "no",
1552
+ "expert_proposal": "no",
1553
+ "story_role": "model-generated counterfactual proposal support test; field scores typed proposals rather than retrieved train-state residuals",
1554
+ "fallback_success": null,
1555
+ "pending_job": "14962264/14962356/14962363",
1556
+ "path_exists": false,
1557
+ "status": "pending",
1558
+ "success": null,
1559
+ "std_success": null,
1560
+ "completed_seeds": null,
1561
+ "num_completed": null,
1562
+ "best_config": null,
1563
+ "gain_vs_h16_policy": null
1564
+ },
1565
+ {
1566
+ "key": "typed_proposal_lattice_types6_prepend_margin005",
1567
+ "label": "Typed proposal lattice head, six families, policy-prepended margin 0.05",
1568
+ "path": "h16_policy_ckpt_near_miss_policy_bc5_typedprop_p2_bestpt_proposal_lattice_types6_prepend_margin0p05_summary.json",
1569
+ "clean_deployment": "yes",
1570
+ "same_state_proposals": "no",
1571
+ "expert_proposal": "no",
1572
+ "story_role": "model-generated counterfactual proposal support test with a conservative policy-abstention margin",
1573
+ "fallback_success": null,
1574
+ "pending_job": "14962264/14962357/14962364",
1575
+ "path_exists": false,
1576
+ "status": "pending",
1577
+ "success": null,
1578
+ "std_success": null,
1579
+ "completed_seeds": null,
1580
+ "num_completed": null,
1581
+ "best_config": null,
1582
+ "gain_vs_h16_policy": null
1583
+ },
1584
  {
1585
  "key": "retrieval_residual_k4_composemasked_dropnmnoop_grid035040045_noopbonus003_nmbonus001",
1586
  "label": "K4 composed compatible residual retrieval, no-op bonus 0.03, singleton near-miss bonus 0.01",
results/paper_table_status.md CHANGED
@@ -84,6 +84,8 @@ Baseline h=16 policy: 29.74%
84
  | retrieval_residual_k4_composemasked_dropnmnoop_grid035040045_noopbonus003_nmchallenger001_scales035040 | K4 compatible residual retrieval, near-miss challenger gate 0.01, scale-gated 0.35/0.40 | complete | 36.00% | +6.26 pp | yes | no | no | trace-motivated near-miss challenger with tangent-length reliability gating over the two shortest scales |
85
  | retrieval_residual_k4_composemasked_dropnmnoop_grid035040045_noopbonus003_nmchallenger003 | K4 compatible residual retrieval, near-miss challenger gate 0.03 | complete | 35.94% | +6.20 pp | yes | no | no | upper-margin sensitivity for trace-motivated singleton near-miss challenger calibration |
86
  | retrieval_residual_k4_composemasked_dropnmnoop_grid035040045_noopbonus003_nmwgchallenger001 | K4 compatible residual retrieval, near-miss/wrong-gripper challenger gate 0.01 | complete | 35.94% | +6.20 pp | yes | no | no | trace-motivated challenger calibration test for whether wrong-gripper residuals carry conditional selector headroom |
 
 
87
  | retrieval_residual_k4_composemasked_dropnmnoop_grid035040045_noopbonus003_nmbonus001 | K4 composed compatible residual retrieval, no-op bonus 0.03, singleton near-miss bonus 0.01 | complete | 35.59% | +5.86 pp | yes | no | no | revive high-precision singleton near-miss tangents without boosting toxic near-miss+no-op composites |
88
  | retrieval_residual_k4_composemasked_dropnmnoop_grid035040045_noopbonus003_nmbonus002 | K4 composed compatible residual retrieval, no-op bonus 0.03, singleton near-miss bonus 0.02 | complete | 35.59% | +5.86 pp | yes | no | no | stronger singleton near-miss revival prior on the compatible local tangent chart |
89
  | retrieval_residual_k4_composemasked_dropnmnoop_grid035040045_srcscorebonus002 | K4 composed type-consensus residual retrieval, masked, drop near-miss+no-op composite, source-score bonus 0.02 | complete | 35.48% | +5.74 pp | yes | no | no | train-measured source-score prior on the compatible local tangent chart |
 
84
  | retrieval_residual_k4_composemasked_dropnmnoop_grid035040045_noopbonus003_nmchallenger001_scales035040 | K4 compatible residual retrieval, near-miss challenger gate 0.01, scale-gated 0.35/0.40 | complete | 36.00% | +6.26 pp | yes | no | no | trace-motivated near-miss challenger with tangent-length reliability gating over the two shortest scales |
85
  | retrieval_residual_k4_composemasked_dropnmnoop_grid035040045_noopbonus003_nmchallenger003 | K4 compatible residual retrieval, near-miss challenger gate 0.03 | complete | 35.94% | +6.20 pp | yes | no | no | upper-margin sensitivity for trace-motivated singleton near-miss challenger calibration |
86
  | retrieval_residual_k4_composemasked_dropnmnoop_grid035040045_noopbonus003_nmwgchallenger001 | K4 compatible residual retrieval, near-miss/wrong-gripper challenger gate 0.01 | complete | 35.94% | +6.20 pp | yes | no | no | trace-motivated challenger calibration test for whether wrong-gripper residuals carry conditional selector headroom |
87
+ | typed_proposal_lattice_types6_prepend_margin000 | Typed proposal lattice head, six families, policy-prepended margin 0.00 | pending 14962264/14962356/14962363 | pending | pending | yes | no | no | model-generated counterfactual proposal support test; field scores typed proposals rather than retrieved train-state residuals |
88
+ | typed_proposal_lattice_types6_prepend_margin005 | Typed proposal lattice head, six families, policy-prepended margin 0.05 | pending 14962264/14962357/14962364 | pending | pending | yes | no | no | model-generated counterfactual proposal support test with a conservative policy-abstention margin |
89
  | retrieval_residual_k4_composemasked_dropnmnoop_grid035040045_noopbonus003_nmbonus001 | K4 composed compatible residual retrieval, no-op bonus 0.03, singleton near-miss bonus 0.01 | complete | 35.59% | +5.86 pp | yes | no | no | revive high-precision singleton near-miss tangents without boosting toxic near-miss+no-op composites |
90
  | retrieval_residual_k4_composemasked_dropnmnoop_grid035040045_noopbonus003_nmbonus002 | K4 composed compatible residual retrieval, no-op bonus 0.03, singleton near-miss bonus 0.02 | complete | 35.59% | +5.86 pp | yes | no | no | stronger singleton near-miss revival prior on the compatible local tangent chart |
91
  | retrieval_residual_k4_composemasked_dropnmnoop_grid035040045_srcscorebonus002 | K4 composed type-consensus residual retrieval, masked, drop near-miss+no-op composite, source-score bonus 0.02 | complete | 35.48% | +5.74 pp | yes | no | no | train-measured source-score prior on the compatible local tangent chart |
scripts/build_paper_analysis.py CHANGED
@@ -457,6 +457,22 @@ METHODS = [
457
  "k4_composemasked_dropnmnoop_grid035040045_safe_margin0p20_noopbonus0p03_nmwgchallenger0p01_summary.json"
458
  ),
459
  ),
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
460
  MethodSpec(
461
  key="residual_k4_composemasked_dropnmnoop_grid035040045_noopbonus003_nmbonus001",
462
  label="K4 composed compatible tangents, no-op bonus 0.03, singleton near-miss bonus 0.01",
 
457
  "k4_composemasked_dropnmnoop_grid035040045_safe_margin0p20_noopbonus0p03_nmwgchallenger0p01_summary.json"
458
  ),
459
  ),
460
+ MethodSpec(
461
+ key="typed_proposal_lattice_types6_prepend_margin000",
462
+ label="Typed proposal lattice head, six families, policy-prepended margin 0.00",
463
+ summary_path=(
464
+ "h16_policy_ckpt_near_miss_policy_bc5_typedprop_p2_bestpt_"
465
+ "proposal_lattice_types6_prepend_margin0p00_summary.json"
466
+ ),
467
+ ),
468
+ MethodSpec(
469
+ key="typed_proposal_lattice_types6_prepend_margin005",
470
+ label="Typed proposal lattice head, six families, policy-prepended margin 0.05",
471
+ summary_path=(
472
+ "h16_policy_ckpt_near_miss_policy_bc5_typedprop_p2_bestpt_"
473
+ "proposal_lattice_types6_prepend_margin0p05_summary.json"
474
+ ),
475
+ ),
476
  MethodSpec(
477
  key="residual_k4_composemasked_dropnmnoop_grid035040045_noopbonus003_nmbonus001",
478
  label="K4 composed compatible tangents, no-op bonus 0.03, singleton near-miss bonus 0.01",
scripts/build_paper_table_status.py CHANGED
@@ -825,6 +825,26 @@ SPECS = [
825
  story_role="trace-motivated challenger calibration test for whether wrong-gripper residuals carry conditional selector headroom",
826
  pending_job="14954530/14954531",
827
  ),
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
828
  ResultSpec(
829
  key="retrieval_residual_k4_composemasked_dropnmnoop_grid035040045_noopbonus003_nmbonus001",
830
  label="K4 composed compatible residual retrieval, no-op bonus 0.03, singleton near-miss bonus 0.01",
 
825
  story_role="trace-motivated challenger calibration test for whether wrong-gripper residuals carry conditional selector headroom",
826
  pending_job="14954530/14954531",
827
  ),
828
+ ResultSpec(
829
+ key="typed_proposal_lattice_types6_prepend_margin000",
830
+ label="Typed proposal lattice head, six families, policy-prepended margin 0.00",
831
+ path="h16_policy_ckpt_near_miss_policy_bc5_typedprop_p2_bestpt_proposal_lattice_types6_prepend_margin0p00_summary.json",
832
+ clean_deployment="yes",
833
+ same_state_proposals="no",
834
+ expert_proposal="no",
835
+ story_role="model-generated counterfactual proposal support test; field scores typed proposals rather than retrieved train-state residuals",
836
+ pending_job="14962264/14962356/14962363",
837
+ ),
838
+ ResultSpec(
839
+ key="typed_proposal_lattice_types6_prepend_margin005",
840
+ label="Typed proposal lattice head, six families, policy-prepended margin 0.05",
841
+ path="h16_policy_ckpt_near_miss_policy_bc5_typedprop_p2_bestpt_proposal_lattice_types6_prepend_margin0p05_summary.json",
842
+ clean_deployment="yes",
843
+ same_state_proposals="no",
844
+ expert_proposal="no",
845
+ story_role="model-generated counterfactual proposal support test with a conservative policy-abstention margin",
846
+ pending_job="14962264/14962357/14962364",
847
+ ),
848
  ResultSpec(
849
  key="retrieval_residual_k4_composemasked_dropnmnoop_grid035040045_noopbonus003_nmbonus001",
850
  label="K4 composed compatible residual retrieval, no-op bonus 0.03, singleton near-miss bonus 0.01",
scripts/eval_maniskill_policy_rollout.py CHANGED
@@ -42,6 +42,7 @@ def main(argv: list[str] | None = None) -> int:
42
  "policy",
43
  "field",
44
  "field_optim",
 
45
  "lattice",
46
  "retrieval_lattice",
47
  "retrieval_residual",
@@ -50,6 +51,7 @@ def main(argv: list[str] | None = None) -> int:
50
  help="'policy' executes the deterministic policy mean; 'field' scores model-generated "
51
  "candidates with the learned interventional field; 'field_optim' additionally "
52
  "optimizes model-generated candidates with projected action-space gradient ascent; "
 
53
  "'lattice' scores the current state's CIL action lattice without reading rewards; "
54
  "'retrieval_lattice' scores the nearest train-state lattice for the current state; "
55
  "'retrieval_residual' translates nearest train-state counterfactual residuals around "
 
42
  "policy",
43
  "field",
44
  "field_optim",
45
+ "proposal_lattice",
46
  "lattice",
47
  "retrieval_lattice",
48
  "retrieval_residual",
 
51
  help="'policy' executes the deterministic policy mean; 'field' scores model-generated "
52
  "candidates with the learned interventional field; 'field_optim' additionally "
53
  "optimizes model-generated candidates with projected action-space gradient ascent; "
54
+ "'proposal_lattice' scores the model's typed proposal head; "
55
  "'lattice' scores the current state's CIL action lattice without reading rewards; "
56
  "'retrieval_lattice' scores the nearest train-state lattice for the current state; "
57
  "'retrieval_residual' translates nearest train-state counterfactual residuals around "
scripts/slurm/summarize_h16_policy_ckpt.sbatch CHANGED
@@ -61,6 +61,7 @@ for result_path in sorted(base_dir.glob(f"seed_*/{out_name}")):
61
  "selection_mode": data.get("selection_mode"),
62
  "num_candidates": data.get("num_candidates"),
63
  "candidate_sigma": data.get("candidate_sigma"),
 
64
  "selection_margin": data.get("selection_margin", 0.0),
65
  "prepend_policy_candidate": data.get("prepend_policy_candidate", False),
66
  "field_optim_steps": data.get("field_optim_steps", 0),
 
61
  "selection_mode": data.get("selection_mode"),
62
  "num_candidates": data.get("num_candidates"),
63
  "candidate_sigma": data.get("candidate_sigma"),
64
+ "proposal_types": data.get("proposal_types", []),
65
  "selection_margin": data.get("selection_margin", 0.0),
66
  "prepend_policy_candidate": data.get("prepend_policy_candidate", False),
67
  "field_optim_steps": data.get("field_optim_steps", 0),
scripts/slurm/train_dovla_h16_policy_ckpt.sbatch CHANGED
@@ -27,6 +27,7 @@ RUN_ROOT="${RUN_ROOT:-$SCRATCH_ROOT/experiments/dovla_h16_policy_ckpt_runs}"
27
  OBJECTIVE="${OBJECTIVE:-base}"
28
  POLICY_TARGET_TYPES="${POLICY_TARGET_TYPES:-}"
29
  POLICY_TARGET_MAP="${POLICY_TARGET_MAP:-}"
 
30
  SEED=$SLURM_ARRAY_TASK_ID
31
  OUT_DIR="$RUN_ROOT/$OBJECTIVE/seed_$SEED"
32
 
@@ -54,6 +55,9 @@ fi
54
  if [[ -n "$POLICY_TARGET_MAP" ]]; then
55
  TRAIN_EXTRA_ARGS+=(--policy-target-map "$POLICY_TARGET_MAP")
56
  fi
 
 
 
57
  if [[ -n "${EXTRA_TRAIN_ARGS:-}" ]]; then
58
  # shellcheck disable=SC2206
59
  EXTRA_SPLIT=($EXTRA_TRAIN_ARGS)
@@ -67,6 +71,7 @@ echo "Dataset: $DATASET"
67
  echo "Output: $OUT_DIR"
68
  echo "Policy target types: ${POLICY_TARGET_TYPES:-<best-any>}"
69
  echo "Policy target map: ${POLICY_TARGET_MAP:-<none>}"
 
70
  echo "=================================================="
71
 
72
  "${PYTHON_CMD[@]}" -c "
 
27
  OBJECTIVE="${OBJECTIVE:-base}"
28
  POLICY_TARGET_TYPES="${POLICY_TARGET_TYPES:-}"
29
  POLICY_TARGET_MAP="${POLICY_TARGET_MAP:-}"
30
+ PROPOSAL_TYPES="${PROPOSAL_TYPES:-}"
31
  SEED=$SLURM_ARRAY_TASK_ID
32
  OUT_DIR="$RUN_ROOT/$OBJECTIVE/seed_$SEED"
33
 
 
55
  if [[ -n "$POLICY_TARGET_MAP" ]]; then
56
  TRAIN_EXTRA_ARGS+=(--policy-target-map "$POLICY_TARGET_MAP")
57
  fi
58
+ if [[ -n "$PROPOSAL_TYPES" ]]; then
59
+ TRAIN_EXTRA_ARGS+=(--proposal-types "$PROPOSAL_TYPES")
60
+ fi
61
  if [[ -n "${EXTRA_TRAIN_ARGS:-}" ]]; then
62
  # shellcheck disable=SC2206
63
  EXTRA_SPLIT=($EXTRA_TRAIN_ARGS)
 
71
  echo "Output: $OUT_DIR"
72
  echo "Policy target types: ${POLICY_TARGET_TYPES:-<best-any>}"
73
  echo "Policy target map: ${POLICY_TARGET_MAP:-<none>}"
74
+ echo "Proposal types: ${PROPOSAL_TYPES:-<none>}"
75
  echo "=================================================="
76
 
77
  "${PYTHON_CMD[@]}" -c "
scripts/train_dovla.py CHANGED
@@ -92,6 +92,11 @@ def main(argv: list[str] | None = None) -> int:
92
  help="JSON mapping group_id to policy BC target record_id. Missing groups fall back "
93
  "to --policy-target-types or best-in-group.",
94
  )
 
 
 
 
 
95
  parser.add_argument(
96
  "--loss-weight",
97
  action="append",
@@ -137,6 +142,9 @@ def main(argv: list[str] | None = None) -> int:
137
  item.strip() for item in args.policy_target_types.split(",") if item.strip()
138
  ),
139
  policy_target_map=args.policy_target_map,
 
 
 
140
  losses=loss_weights,
141
  )
142
  result = DoVLATrainer(config).train()
 
92
  help="JSON mapping group_id to policy BC target record_id. Missing groups fall back "
93
  "to --policy-target-types or best-in-group.",
94
  )
95
+ parser.add_argument(
96
+ "--proposal-types",
97
+ default="",
98
+ help="Comma-separated candidate_type names for an optional typed proposal lattice head.",
99
+ )
100
  parser.add_argument(
101
  "--loss-weight",
102
  action="append",
 
142
  item.strip() for item in args.policy_target_types.split(",") if item.strip()
143
  ),
144
  policy_target_map=args.policy_target_map,
145
+ proposal_types=tuple(
146
+ item.strip() for item in args.proposal_types.split(",") if item.strip()
147
+ ),
148
  losses=loss_weights,
149
  )
150
  result = DoVLATrainer(config).train()