Synthetic SFT
sft.jsonMulti-turn tool-using investigation as a clean demonstration.
- id
- ml_research_trajectory_analogical_rl_representations_001
- domain
- machine_learning_research
- task_type
- multi_turn_autonomous_research_investigation
- variant
- A_reasoning_externalized
provenance
source:“human-steered research session, 2026-07-21 to 2026-07-22”
construction:“The human researcher's steering turns and the orchestrator's execution turns were collapsed into a single assistant agent. All experiment results and metrics are taken from the real runs. Duplicate human turns and infrastructure/provisioning noise were removed…”
note:“Assistant turns are the training target. Human critiques were moved before proposals so each experiment is drafted correctly: the synthetic environment is explicitly only a preliminary mechanism screen; the original CTA implementation is required for the decis…”
tools
Functions available to the assistant
8 tools- 01
search_literatureSearch the research literature and return relevant papers with findings.
querystring*categoriesstring[]date_fromstringmax_resultsinteger - 02
search_findingsSearch findings previously recorded by this lab, to reuse established results instead of re-deriving them.
querystring*max_resultsinteger - 03
propose_experimentDraft a runnable experiment specification. Returns a proposal id and a compute estimate. Does not run anything.
titlestring*research_questionstring*methodstring*controlsstring[]evaluationstring*experimentsstring[]*deliverablesstring[]computeobject - 04
launch_experimentLaunch a proposed experiment on compute. Returns a run id. The run executes autonomously.
proposal_idstring* - 05
read_experiment_resultsRead output from a running or finished experiment.
run_idstring*sectionstring*detailstring - 06
steer_experimentSend an instruction to a running experiment to change what it does mid-flight.
run_idstring*instructionstring* - 07
stop_experimentCancel a running experiment and release its compute.
run_idstring*reasonstring* - 08
record_findingRecord a durable finding so later experiments can build on it without re-deriving it.
titlestring*statementstring*evidencestring*caveatsstring
* required
messages
system
You are an autonomous ML research agent with access to compute. You design, run, and interpret experiments to answer research questions.
Work the way a good empirical researcher works. Before building anything, identify the assumption the whole idea rests on and test that first. Prefer the experiment that could kill the idea over the experiment that would showcase it. Do not pre-commit to experiment N+1 before seeing the result of experiment N. When a measurement could be produced by an artifact, run the control that would expose the artifact, and select on the controlled quantity rather than on how good the raw result looks. State negative results plainly and diagnose them mechanistically. Reuse prior results instead of re-spending compute on settled questions, and hold the evaluation set fixed across conditions so comparisons remain valid. Do not invent numbers: every quantitative claim must come from a tool result.
user
I have been comparing a repository that studies representations in contrastive goal-conditioned RL with Compositional Transduction with Latent Analogies for offline GCRL. Can anything in the contrastive-RL work address the paper's limitations or build on it? More broadly, I care about representations only insofar as their compression or structure helps RL generalize to difficult new contexts without retraining, in the way language models can reason compositionally.
assistant
I need to separate three questions that are easy to conflate: whether CTA's analogy has a measurable counterpart in contrastive RL, whether that representation property actually predicts out-of-combination performance, and whether any advantage survives in the offline real-task regime CTA targets. I will start from the paper's claimed mechanism and limitations, then check whether this lab has already established any part of the comparison.
search_literature()
{
"query": "Compositional Transduction with Latent Analogies offline goal-conditioned reinforcement learning limitations invariant displacement bilinear transduction OGBench",
"categories": [
"cs.LG",
"cs.RO"
],
"max_results": 10
}toolsearch_literature
{"results":[{"title":"Compositional Transduction with Latent Analogies for Offline Goal-Conditioned Reinforcement Learning","finding":"CTA represents a task by a temporal-distance difference field, uses a learned dual analogy with bilinear transduction for out-of-combination generalization, and reports roughly 42% average improvement over the strongest baseline on OGBench manipulation.","limitations":["the task-endogenous/task-exogenous block decomposition is assumed and may fail in realistic environments","the learned dual analogy is not guaranteed to be context-invariant; evidence is qualitative"]}],"method_overlap":"Both CTA and contrastive GCRL use inner-product representation families, so state-goal displacement consistency and effective rank are relevant probes."}assistant
The useful overlap is narrower than 'analogical RL.' CTA needs a displacement-like code that ignores task-exogenous context and a low-rank bilinear map that can extrapolate to unseen context×task combinations. The repository's displacement-consistency, effective-rank, and information-bottleneck tools can quantify or perturb exactly those properties. But the settings do not match: online contrastive locomotion and offline OGBench manipulation are not interchangeable. A synthetic test can reveal a mechanism; it cannot establish that the repository matches or improves CTA.
search_findings()
{
"query": "contrastive GCRL analogy displacement invariance information bottleneck out-of-combination generalization CTA",
"max_results": 5
}toolsearch_findings
{"results":[],"notice":"No prior lab finding directly compares CRL displacement invariance with CTA or OOC generalization."}assistant
The first experiment should therefore be a preliminary mechanism screen, not a benchmark claim. I want the simplest environment in which endogenous task displacement and exogenous context are explicit, because that makes failure interpretable. A plain 2D point mass is intentionally weak evidence: it can tell me whether vanilla CRL spontaneously ignores nuisance context and whether VIB or a CTA-like bottleneck changes that behavior, but it cannot tell me what original CTA buys on a realistic task.
I will keep this JAX-native wherever possible so the environment, split, metrics, and CRL variants share one implementation. The CTA-like branch is only a controlled architectural surrogate; I will not call it CTA or use it to make a paper-level comparison. The decisive later comparison is gated on obtaining the actual CTA implementation.
Trustworthiness has to be designed in now. I will adapt the repository's VIB logic rather than silently re-derive it, and test the KL calculation, OOC split, invariance metric, bilinear gradient flow, and representation shapes before training. Hyperparameter screens can be one seed because they only select settings; the baseline, selected VIB condition, selected analogy condition, offline ablation, and any load-bearing failure test get three seeds. Combining VIB and analogy is not a default experiment because 'do they compose?' has no principled hypothesis; it is included only as a secondary interaction check after each component has an interpretable result.
assistant
propose_experiment()
{
"title": "Preliminary JAX mechanism screen: spontaneous versus engineered context invariance",
"research_question": "In a deliberately simple contextual goal-reaching problem, does vanilla online CRL spontaneously learn a context-invariant displacement code and OOC generalization, and do VIB or CTA-like analogy conditioning change that mechanism? This screen cannot support claims about original CTA or real tasks.",
"method": "Build a JAX-native contextual 2D point-mass with explicit task displacement, 4 binary exogenous context bits, and a diagonal goal-quadrant×context-bucket holdout. Train vanilla CRL; CRL plus repository-derived VIB with beta in {0.001,0.01,0.1}; and a clearly labeled CTA-like analogy/bilinear control with bottleneck 16 and representation dimension 64. Compare online training with an offline retrain on the frozen online buffer.",
"controls": [
"Before training, unit-test OOC split absence/presence, invariance score on hand-crafted invariant and random codes, VIB KL at the unit-normal reference and away from it, bilinear gradient flow, encoder and ensemble shapes",
"Use 1 seed for beta and horizon selection; use 3 seeds for vanilla, selected VIB, selected analogy, offline CRL, CTA-like offline, and any causal ablation",
"Keep the held-out evaluation combinations fixed across methods",
"Label CTA-like as a mechanism control, never as the original CTA baseline"
],
"evaluation": "OOC and in-distribution success, mean pairwise cosine invariance of the displacement across contexts at fixed task, effective rank, and context decodability from the displacement. Inspect pilot dynamic range before committing the sweep.",
"experiments": [
"pilot and unit-test gate",
"vanilla CRL baseline",
"one-seed VIB beta screen followed by 3-seed confirmation of the selected setting",
"one-seed analogy horizon screen followed by 3-seed confirmation",
"offline CRL and CTA-like controls on frozen online data"
],
"deliverables": [
"unit-test report",
"fixed-split metric table",
"invariance-versus-OOC analysis",
"explicit limitations statement"
]
}toolpropose_experiment
{"proposal_id":"P-a17c","status":"drafted","gpu_type":"A100","scope":"preliminary mechanism screen only"}assistant
launch_experiment()
{
"proposal_id": "P-a17c"
}toollaunch_experiment
{"run_id":"R-b24d","status":"running","stage":"pilot"}assistant
Before accepting the pilot, I want to know whether the nuisance is strong enough that invariance is not automatic at initialization. If the context occupies only a small corner of the observation, a high cosine score would be a geometry artifact rather than learned suppression.
read_experiment_results()
{
"run_id": "R-b24d",
"section": "controls",
"detail": "unit-test gate and pilot dynamic range before the full sweep"
}toolread_experiment_results
{"unit_tests":{"status":"passed","count":7,"coverage":["OOC split construction","encoder shapes","InfoNCE logic","analogy invariance scorer","effective rank","VIB KL","bilinear bottleneck and gradient flow"]},"pilot":{"observation_dims":6,"context_dims":4,"initial_invariance":0.67,"diagnosis":"context only weakly perturbs the representation, leaving too little dynamic range; context decoding from the full representation saturates and is uninformative"}}assistant
The tests pass, including the reused VIB and load-bearing custom logic, but the environment has failed its own calibration. Initial invariance of 0.67 is too high for the intended mechanism test, and full-representation context decoding is saturated. That is new evidence from the pilot, so a mid-run correction is warranted.
I will strengthen only the nuisance side: add six nonlinear distractor dimensions that are a fixed, higher-magnitude function of context and irrelevant to dynamics and reward. This creates the shortcut the invariant solution must actively reject while leaving the endogenous task unchanged. I will also decode context from the displacement at fixed task rather than from the full state representation. If the harder pilot no longer trains, the screen ends; I will not compensate by making the task easier again.
steer_experiment()
{
"run_id": "R-b24d",
"instruction": "Replace the weak nuisance with 4 context bits plus 6 larger-magnitude nonlinear distractor dimensions that are fixed functions of context and inert to dynamics/reward. Re-run the relevant unit tests. Replace saturated full-representation context decoding with context decoding from the displacement at fixed task. Pilot all variants before the sweep; stop if the harder environment does not learn."
}toolsteer_experiment
{"run_id":"R-b24d","accepted":true,"stage":"recalibrated_pilot"}assistant
read_experiment_results()
{
"run_id": "R-b24d",
"section": "summary",
"detail": "recalibrated pilot and completed main sweep"
}toolread_experiment_results
{"environment":{"task":"contextual 2D point mass","exogenous":"4 binary bits plus 6 nonlinear distractor dimensions","ooc_split":"diagonal 4 of 16 goal-quadrant×context-bucket combinations held out"},"tests":"7 unit tests pass after recalibration","pilot":"all variants train; vanilla reaches high invariance while VIB variants provide dynamic range","runs_completed":23,"central_seed_count":3,"selection_seed_count":1}assistant
read_experiment_results()
{
"run_id": "R-b24d",
"section": "metrics"
}toolread_experiment_results
{"main":[{"method":"vanilla online CRL","ooc_success":"0.996±0.006","id_success":"1.000±0.000","invariance":"0.991±0.000","effective_rank":"3.05±0.05","seeds":3},{"method":"selected CRL+VIB beta=0.001","ooc_success":"0.967±0.015","invariance":"0.984±0.002","seeds":3},{"method":"selected CRL+analogy-like","ooc_success":"0.968±0.027","invariance":"0.986±0.002","seeds":3},{"method":"offline CRL on frozen online buffer","ooc_success":"0.990±0.008","invariance":"0.988±0.002","seeds":3},{"method":"offline CTA-like control","ooc_success":"0.928±0.048","invariance":"0.989±0.002","seeds":3}],"vib_screen":[{"beta":0.001,"ooc_success":0.986,"invariance":0.983},{"beta":0.01,"ooc_success":0.963,"invariance":0.919},{"beta":0.1,"ooc_success":0.838,"invariance":0.589}],"correlation_context_varied":0.607,"held_out_combinations_in_frozen_buffer":0}assistant
Within this screen, vanilla CRL spontaneously acquires the desired structure and the engineered variants do not improve it. The VIB hypothesis is not merely null: increasing the penalty degrades both invariance and OOC success in the same direction. Offline CRL also succeeds on a frozen buffer containing no held-out combinations, so online interaction itself is not required once the data contains varied contexts.
But correlation is not causation, and the screen still lacks a failure mode. The cleanest new test is to remove context variation while preserving goal learning. If a fixed-context agent keeps in-context success but loses varied-context and OOC performance, that isolates the training distribution rather than the architectural add-on. Because this question was exposed by the successful sweep, it is appropriate to add now.
assistant
steer_experiment()
{
"run_id": "R-b24d",
"instruction": "Add the decisive fixed-context ablation: train online CRL with one context only and retrain offline on its frozen buffer, each with 3 seeds. Keep goal variation, optimization, and evaluation fixed. Report training-context success, varied-context/OOC success, invariance, and effective rank."
}toolsteer_experiment
{"run_id":"R-b24d","accepted":true,"stage":"fixed_context_ablation"}assistant
read_experiment_results()
{
"run_id": "R-b24d",
"section": "controls",
"detail": "fixed-context causal ablation"
}toolread_experiment_results
{"fixed_context":[{"method":"online CRL","ooc_success":"0.270±0.035","id_success":"1.000±0.000","invariance":"0.904±0.020","effective_rank":"1.24±0.10","seeds":3},{"method":"offline CRL","ooc_success":"0.169±0.037","id_success":"0.966±0.015","invariance":"0.938±0.009","effective_rank":"1.23±0.04","seeds":3}],"correlation_all_runs":0.308,"correlation_context_varied_only":0.607,"diagnosis":"fixed-context representations remain highly cosine-invariant because they never observe variation, yet OOC collapses; invariance is not sufficient and context variation is the causal driver in this toy"}assistant
This is the useful synthetic conclusion. Holding context fixed preserves training-context success but collapses OOC and effective rank, while cosine invariance remains high. Therefore the invariance score is a symptom that can be trivially satisfied when variation is absent; it is not a sufficient mechanism certificate. The load-bearing factor in this toy is variation across nuisance contexts.
I will record that narrow result, with the boundary explicit. The CTA-like control is a reimplementation on a low-dimensional, well-covered synthetic environment. It does not justify saying original CTA is redundant, and it does not justify extrapolating to high-dimensional offline manipulation.
record_finding()
{
"title": "Synthetic CRL acquires invariant displacement from context variation",
"statement": "In a contextual point-mass mechanism screen, vanilla CRL learns invariant displacement structure and OOC generalization without the CTA-like add-ons; removing context variation collapses OOC despite high cosine invariance.",
"evidence": "Vanilla online CRL: OOC 0.996±0.006, invariance 0.991 over 3 seeds. Fixed-context online/offline CRL: OOC 0.270±0.035 / 0.169±0.037 and effective rank 1.24±0.10 / 1.23±0.04, while invariance remains 0.904±0.020 / 0.938±0.009. VIB beta 0.001→0.1 lowers invariance 0.983→0.589 and OOC 0.986→0.838.",
"caveats": "Preliminary low-dimensional synthetic environment only. The CTA-like agent is not the original CTA implementation. The setting has a clean, well-covered context marginal and cannot support real-task or paper-level claims."
}toolrecord_finding
{"finding_id":68,"recorded":true}assistant
Now I need the decisive comparison the toy deliberately deferred. I will retrieve the exact boundary of the synthetic result, then verify that original CTA code and a real benchmark are available before proposing anything.
search_findings()
{
"query": "synthetic CRL context variation invariant displacement CTA-like limitation",
"max_results": 3
}toolsearch_findings
{"results":[{"id":68,"title":"Synthetic CRL acquires invariant displacement from context variation","use":"Toy result predicts a coverage-substitution hypothesis but explicitly requires validation with original CTA in a real high-dimensional offline task."}]}assistant
search_literature()
{
"query": "original CTA code OGBench scene-play CRL HIQL per-environment comparison",
"categories": [
"cs.LG",
"cs.RO"
],
"max_results": 10
}toolsearch_literature
{"results":[{"title":"CTA project release","finding":"Original CTA code is available and includes agents built on HIQL objectives."},{"title":"OGBench","finding":"OGBench provides offline manipulation tasks and CRL/HIQL baselines. scene-play has an explicit drawer/cube versus window/button factorization used by CTA's OOC case study."}],"recommendation":"Use original CTA and the OGBench baselines; screen the simplest factored environment before escalating."}assistant
The real experiment should try to falsify the toy's coverage-substitution story, not showcase it. Real state spaces may break contrastive representations for dimensional or optimization reasons even when coverage is dense. I will screen from the simplest factored OGBench environment upward and stop at the first non-saturated CTA-works/CRL-fails case; that minimal gap is more useful for method design than the hardest benchmark.
Original CTA is mandatory. Reimplementing it in JAX would preserve implementation uniformity at the price of silently changing the method, which is the wrong trade for the claim-bearing comparison. I will use the released CTA agents alongside their HIQL backbone and OGBench CRL. HIQL is the load-bearing control because CTA-minus-HIQL isolates analogy/transduction within a shared family; CTA-minus-CRL alone is vulnerable to CRL simply failing to train.
Before downloading, check disk and individual dataset sizes. Before the sweep, require an end-to-end pilot and a reproduction/screening gate. Use three seeds for the full-data headline. The coverage sweep can start as one seed per level to locate the effect, but any non-monotonic pattern remains provisional until replicated. Representation probes are secondary because the methods expose non-identical codes; impossible ranks or shape inconsistencies invalidate the probe until fixed.
assistant
propose_experiment()
{
"title": "Original CTA versus HIQL and CRL on the minimal real OGBench case",
"research_question": "Does the synthetic coverage-substitution result survive in the simplest real high-dimensional offline environment where original CTA works and CRL fails, or does CTA retain an advantage even with dense data?",
"method": "Use the original CTA release and its OGBench agents. Screen scene-play first, then a simpler alternative only if it yields a cleaner factored case. Compare original CTA, HIQL as the shared-backbone control, and OGBench offline CRL. After a full-data correctness gate, train on random trajectory fractions 1.0, 0.3, 0.1, and 0.03. Probe each exposed displacement-like code for exogenous-context invariance and effective rank, but treat the probe as secondary.",
"controls": [
"Run a storage check and inspect individual dataset sizes before downloading",
"Require an end-to-end pilot with the original code and environment",
"Use 3 seeds for full-data CTA/HIQL/CRL; use 1 seed per coverage point as an initial curve and label it provisional",
"Sanity-check every probe rank against its representation dimension and inspect ensemble axes",
"Attempt a targeted context×task holdout only after auditing whether trajectory-level removal preserves usable transitions"
],
"evaluation": "Primary: fixed-suite success for original CTA, HIQL, and CRL, full data and versus random trajectory coverage. Secondary: exogenous-context invariance and effective rank. A targeted combination holdout is reportable only if each marginal remains supported and the filtered dataset remains a genuine play dataset.",
"experiments": [
"storage and original-code pilot",
"minimal-environment screen and full-data 3-seed comparison",
"single-seed random coverage curve",
"representation probe with shape audit",
"feasibility audit for targeted context×task holdout"
],
"deliverables": [
"minimal real benchmark identification",
"full-data table with seed variation",
"coverage curve with explicit seed caveat",
"probe table",
"holdout feasibility verdict"
]
}toolpropose_experiment
{"proposal_id":"P-c39e","status":"drafted","gpu_type":"A100","baseline_policy":"original CTA required"}assistant
launch_experiment()
{
"proposal_id": "P-c39e"
}toollaunch_experiment
{"run_id":"R-d41f","status":"running","stage":"storage_pilot_and_screen"}assistant
read_experiment_results()
{
"run_id": "R-d41f",
"section": "summary",
"detail": "storage, original-code pilot, environment dimensions, and early screening gate"
}toolread_experiment_results
{"storage":{"free_gb":442,"candidate_dataset_size_mb":"approximately 300 each","decision":"download only screened candidates"},"implementation":"original CTA release with bundled OGBench agents; no JAX reimplementation used for the decisive comparison","pilot":"original CTA trains and evaluates end to end","environment":{"name":"scene-play-v0","observation_dim":40,"action_dim":5,"factorization":"cube/drawer task factors; button/window context factors"},"early_screen_at_125k":{"CTA":0.647,"HIQL":0.433,"CRL":0.0},"verdict":"scene-play is the first simple factored environment with a measurable CTA-works/CRL-fails gap"}assistant
The gates pass: storage is ample for selective downloads, the original code runs, and scene-play is already the minimal usable gap rather than a prestige choice. The early result also shows why both baselines matter. CTA exceeds HIQL, while CRL is at the floor; only the former isolates CTA's machinery from wholesale method failure.
This pilot is new evidence, so I will commit the remaining budget to scene-play rather than screening harder tasks. Run the three-seed full-data headline and the planned coverage curve. Keep every method at the same training budget. Do not interpret the targeted holdout until its retained-transition audit passes.
assistant
steer_experiment()
{
"run_id": "R-d41f",
"instruction": "Fix scene-play-v0 as the minimal real benchmark. Complete original CTA, HIQL, and CRL at 500k matched steps with 3 seeds on full data. Run the 1-seed random trajectory coverage curve at 100%, 30%, 10%, and 3%. Save parameters for the representation probe. Audit retained transitions before treating any targeted context×task holdout as valid evidence."
}toolsteer_experiment
{"run_id":"R-d41f","accepted":true,"stage":"full_data_and_coverage"}assistant
read_experiment_results()
{
"run_id": "R-d41f",
"section": "metrics",
"detail": "full-data headline and coverage curve"
}toolread_experiment_results
{"training_steps_per_job":500000,"full_data":[{"method":"original CTA","success":"0.820±0.05","seeds":3},{"method":"HIQL","success":"0.498±0.05","seeds":3},{"method":"CRL","success":"0.002±0.003","seeds":3}],"coverage_single_seed":[{"fraction":1.0,"trajectories":2000,"CTA":0.787,"HIQL":0.520,"CRL":0.0},{"fraction":0.3,"trajectories":600,"CTA":0.767,"HIQL":0.300,"CRL":0.0},{"fraction":0.1,"trajectories":200,"CTA":0.193,"HIQL":0.053,"CRL":0.0},{"fraction":0.03,"trajectories":60,"CTA":0.020,"HIQL":0.007,"CRL":0.0}],"cta_minus_hiql_gap":{"full":0.267,"thirty_percent":0.467,"ten_percent":0.140,"three_percent":0.013},"status":"representation probe and holdout audit pending"}assistant
The real benchmark reverses the toy's practical conclusion. Original CTA is ahead of both baselines at full data, and CRL remains at zero throughout the observed coverage range. But I will not promote the dramatic CTA-versus-CRL gap to a clean representation claim: a method that never learns the full-data task has not isolated generalization, and this run uses half the paper-scale training budget. The defensible load-bearing result is CTA versus HIQL, where the shared backbone makes the full-data advantage meaningful.
The coverage-substitution prediction is not cleanly confirmed either. The CTA-minus-HIQL gap is non-monotonic and largest at the intermediate point, but that curve is single-seed. It is evidence of a possible data-efficiency effect, not a stable shape claim.
Before interpreting the probes, I want the shape audit. Effective rank must not exceed representation dimension; if it does, inspect ensemble axes and recompute rather than reporting the flattering number.
assistant
read_experiment_results()
{
"run_id": "R-d41f",
"section": "qualitative",
"detail": "raw representation probe and tensor-shape sanity checks"
}toolread_experiment_results
{"raw_probe":[{"method":"CRL","invariance":0.584,"effective_rank":775,"declared_dim":512},{"method":"CTA","invariance":0.743,"effective_rank":117,"declared_dim":256},{"method":"HIQL","invariance":0.822,"effective_rank":9.1,"declared_dim":10}],"sanity_check":"CRL effective rank exceeds its declared dimension and is impossible","diagnosis":"CRL goal encoder output contains an ensemble axis with shape (2,B,512); flattening it corrupts both CRL probe metrics"}assistant
The CRL probe is invalid exactly as the sanity check predicted: an effective rank of 775 cannot come from a 512-dimensional representation. The ensemble axis was flattened into the sample/features calculation. This is a measurement bug, not a scientific result. I will select one ensemble member consistently and rerun the CRL probe; CTA and HIQL do not need modification.
assistant
steer_experiment()
{
"run_id": "R-d41f",
"instruction": "Fix the CRL representation probe by selecting one critic ensemble member consistently rather than flattening the (2,B,512) ensemble axis. Recompute CRL invariance and effective rank; assert effective_rank <= representation_dim before accepting. Leave CTA and HIQL probes unchanged."
}toolsteer_experiment
{"run_id":"R-d41f","accepted":true,"stage":"probe_recompute"}assistant
read_experiment_results()
{
"run_id": "R-d41f",
"section": "controls",
"detail": "corrected probe and targeted-holdout feasibility audit"
}toolread_experiment_results
{"corrected_probe":[{"method":"CRL","invariance":0.586,"effective_rank":319,"dim":512},{"method":"CTA","invariance":0.743,"effective_rank":117,"dim":256},{"method":"HIQL","invariance":0.822,"effective_rank":9.1,"dim":10}],"probe_caveat":"methods expose structurally different codes, so probe is supporting evidence only","targeted_holdout_audit":{"total_trajectories":2000,"flagged_trajectories":955,"total_transitions":1001000,"removed_transitions":955000,"fraction_removed":0.95,"retained_trajectories":1045,"retained_average_steps":44,"long_play_trajectory_steps":1000,"observation":"every substantive long play trajectory spans the targeted context×task co-occurrence","outcome":"CTA, HIQL, and CRL all collapse to zero after filtering","verdict":"trajectory-level targeted holdout is infeasible on this dataset and its zero scores are a data-deletion artifact"}}assistant
The corrected probe is now numerically admissible and directionally consistent with CRL's failure, but it remains secondary because the codes differ across methods and HIQL is the most invariant despite trailing CTA in control performance. Invariance alone does not explain the ranking.
The targeted holdout must be discarded completely. It removes 955000 of 1001000 transitions because every substantive play trajectory spans the co-occurrence, leaving short stubs rather than a counterfactually missing combination. All methods going to zero is therefore evidence that the split destroyed the dataset, not evidence about analogy transduction. There is no threshold adjustment that repairs this at trajectory level. Continuing would only spend compute polishing an invalid comparison, so I am stopping that phase and retaining only the valid full-data, random-coverage, and corrected-probe results.
stop_experiment()
{
"run_id": "R-d41f",
"reason": "Stop and discard the targeted context×task holdout phase: filtering removes 95% of transitions and all substantive play trajectories, so zero performance is a dataset-deletion artifact. Valid full-data, random-coverage, and corrected-probe phases are complete."
}toolstop_experiment
{"run_id":"R-d41f","status":"stopped","retained_phases":["full_data","random_coverage","corrected_probe"],"discarded_phases":["targeted_context_task_holdout"]}assistant
The final conclusion has three levels of confidence. First, the synthetic result is real but bounded: context variation lets CRL learn invariant displacement and OOC behavior in the toy, while VIB hurts. Second, original CTA clearly outperforms HIQL at full data on the minimal real benchmark, so explicit analogy/transduction buys something beyond the shared backbone in this setting. Third, the CRL leg and the coverage-curve shape are not hardened: CRL may be undertrained or poorly tuned, and the coverage sweep is single-seed.
I will record the real result without laundering the invalid holdout or overstating the probes. The next highest-leverage work would be to rescue or confirm CRL with its tuned longer configuration and replicate the coverage sweep, but those are future experiments, not conclusions from this run.
record_finding()
{
"title": "Original CTA beats HIQL and CRL on scene-play; targeted combination deletion is infeasible",
"statement": "On the minimal real OGBench scene-play case, original CTA outperforms the shared-backbone HIQL control and CRL at full data. The toy coverage-substitution story does not transfer cleanly: CRL stays at zero and CTA retains a full-data advantage, while the CTA-HIQL coverage gap is non-monotonic. A trajectory-level context×task holdout is invalid because it deletes nearly all substantive data.",
"evidence": "At 500k matched steps over 3 seeds: CTA 0.820±0.05, HIQL 0.498±0.05, CRL 0.002±0.003. Single-seed 100/30/10/3% curves: CTA 0.787/0.767/0.193/0.020; HIQL 0.520/0.300/0.053/0.007; CRL 0 throughout. Corrected invariance/effective-rank probes: CRL 0.586/319, CTA 0.743/117, HIQL 0.822/9.1. Targeted filtering removes 955000 of 1001000 transitions and leaves 44-step stubs, so its all-zero outcome was discarded.",
"caveats": "Training used 500k rather than 1M steps. CRL's floor may reflect known scene-play weakness, undertraining, or tuning rather than isolated OOC failure. Coverage curve is single-seed. Probe representations are not architecturally identical. No valid targeted context×task holdout was obtained."
}toolrecord_finding
{"finding_id":70,"recorded":true}labels
primary_conclusion:“A JAX synthetic screen showed that context variation can make vanilla CRL acquire invariant displacement and OOC behavior without CTA-like machinery, but that result did not transfer as a real-task claim: on scene-play with the original CTA implementation, CTA…”
unsupported_claims_present:false