← trajectories

Long-Horizon Offline GCRL Value Errors

Synthetic SFT

sft.json

Multi-turn tool-using investigation as a clean demonstration.

id
ml_research_trajectory_long_horizon_gcrl_errors_001
domain
machine_learning_research
task_type
multi_turn_autonomous_research_investigation
variant
A_reasoning_externalized

provenance

source:human-steered research session, 2026-07-30 to 2026-08-02
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. Repeated GPU provisioning failures and identical relaunches were collaps…
note:Assistant turns are the training target. Human corrections about geometry being a diagnostic rather than the main question, oracle/distance leakage, excluding the anomalous MC condition, and replacing weak direct/stitchable masks were moved before the proposal…

tools

Functions available to the assistant

8 tools
  1. 01search_literature

    Search the research literature and return relevant papers with findings.

    querystring*categoriesstring[]date_fromstringmax_resultsinteger
  2. 02search_findings

    Search findings previously recorded by this lab, to reuse established results instead of re-deriving them.

    querystring*max_resultsinteger
  3. 03propose_experiment

    Draft 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
  4. 04launch_experiment

    Launch a proposed experiment on compute. Returns a run id. The run executes autonomously.

    proposal_idstring*
  5. 05read_experiment_results

    Read output from a running or finished experiment.

    run_idstring*sectionstring*detailstring
  6. 06steer_experiment

    Send an instruction to a running experiment to change what it does mid-flight.

    run_idstring*instructionstring*
  7. 07stop_experiment

    Cancel a running experiment and release its compute.

    run_idstring*reasonstring*
  8. 08record_finding

    Record 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
Offline goal-conditioned reinforcement learning (GCRL) seeks to obtain goal-reaching policies from fixed, pre-collected datasets without further environment interaction. A central component of many such methods is a goal-conditioned value function, but learning a reliable one is difficult in long-horizon tasks with sparse rewards, where reward signals must be propagated over many steps. Existing methods often degrade sharply as task horizon grows and struggle when datasets require composing (stitching) short trajectory fragments to reach distant goals. Understanding why goal-conditioned value learning fails and which parts of the learning pipeline are responsible is important for building methods that perform reliably across diverse tasks such as maze navigation and robotic manipulation. Research question I'm investigating: What causes learned goal-conditioned value functions to produce inaccurate estimates in long-horizon offline GCRL, and is this failure driven by the value function architecture or by the learning objective? Please investigate this from scratch rather than consulting past lab results.
assistant
I will start from the literature, not the lab's prior findings. The immediate question is not which method has the best benchmark score; it is what causal decomposition lets architecture and objective fail independently. I also need to know whether structured geometry is already expected to help, because if it is, rediscovering that cannot become the main research question.
search_literature()
{
  "query": "offline goal-conditioned reinforcement learning long-horizon value bootstrapping stitching quasimetric architecture",
  "categories": [
    "cs.LG",
    "cs.AI",
    "cs.RO"
  ],
  "date_from": "2020-01-01",
  "max_results": 10
}
toolsearch_literature
{"results":[{"id":"2304.01203","title":"Optimal Goal-Reaching Reinforcement Learning via Quasimetric Learning","finding":"Optimal goal-reaching values have quasimetric structure; preserving local distances, enforcing triangle inequality, and spreading otherwise unconstrained states can recover shortest-path structure.","relevance":"Geometry has a known stitching rationale and should be a diagnostic control, not a novel main hypothesis."},{"id":"2208.08133","title":"Metric Residual Networks for Sample Efficient Goal-Conditioned Reinforcement Learning","finding":"A metric plus asymmetric residual architecture improves sample efficiency over monolithic goal-conditioned value architectures.","relevance":"Architecture can matter even when the learning objective is held fixed."},{"id":"2310.20025","title":"GOPlan: Goal-conditioned Offline Reinforcement Learning by Planning with Learned Models","finding":"Model-free offline GCRL is constrained by limited data and unseen-goal generalization; direct supervised model learning is more stable than scalar-reward bootstrapping.","relevance":"Supports separating target/support failure from representational capacity."}],"notice":"The literature supports both a geometry hypothesis and an objective/support hypothesis; the experiment must factor them rather than assume either one is primary."}
assistant
The load-bearing distinction is now clear. Quasimetric and metric-residual work already says representations can aid stitching, so I do not want the experiment's main question to be whether geometry helps. Geometry belongs in the matrix as a diagnostic: if it improves only composition-supported pairs, it changes interpolation; if learner targets remain wrong across geometries, the objective/support mechanism survives the stronger architecture. The smallest useful experiment therefore crosses three things and no more: a no-sharing table, a plain shared MLP, and an asymmetric geometry model; one-step versus longer backups and return regression; and direct trajectories versus short overlapping fragments. Exact dynamic programming has two roles only: it defines independent ground truth for evaluation, and it can appear in explicitly named oracle controls that ask whether an architecture can fit correct targets. It must not enter any condition from which I claim realistic stitching. In particular, Monte Carlo must mean returns actually observed inside recorded episode boundaries, not values synthesized from graph distance. I also do not want a giant benchmark sweep. A deterministic toy graph is preferable because every state-goal value can be verified by DP and BFS, the table removes neural approximation, and support categories can be audited. The first run is a screen for interaction structure, not a performance claim. I will keep the graph tiny, cap the goal set, and spend additional seeds only on conditions that could change the diagnosis. A CRL-style representation control is worth including, but only as a matched ablation with the same value head; it cannot become the headline merely because prior work says representation helps. The failure criterion is explicit: if a model has low Bellman residual but high error against exact DP, fitting the sampled objective is not enough. Conversely, if oracle supervision still leaves one architecture inaccurate, representation or optimization is implicated. This design already incorporates the geometry question without letting a known result displace the actual question.
assistant
propose_experiment()
{
  "title": "Minimal causal screen of GCRL value failure",
  "research_question": "On the smallest deterministic offline GCRL benchmark that separates direct coverage from fragment composition, do inaccurate values arise from target/support failure, architecture, or their interaction? Geometry is a diagnostic control, not the main question.",
  "method": "Construct deterministic chain and branching graphs with exact DP values and BFS verification, at most 32 states and 8 selected goals. Build direct-trajectory and short-overlapping-fragment datasets with explicit boundaries. Compare tabular lookup, a small shared MLP, and an asymmetric quasimetric geometry model. Compare realistic learner-bootstrap TD1/TD4 and observed-return MC; retain oracle TD/DP supervision only as explicitly labeled capacity controls.",
  "controls": [
    "DP and shortest-path distances are evaluation-only in realistic learner conditions",
    "observed-return MC uses only recorded episode returns and never fabricated composed returns",
    "tabular lookup removes neural approximation",
    "matched plain-head CRL pretraining is diagnostic only",
    "finite-horizon versus infinite-horizon DP check"
  ],
  "evaluation": "True MSE/MAE against exact DP, Bellman residual, calibration, ranking, policy success, distance curves, and errors stratified by direct evidence, composition support, and unsupported pairs. Audit target construction and report any oracle use by condition.",
  "experiments": [
    "smoke and leakage audit",
    "tiny architecture x objective x data screen",
    "three-seed confirmation only for key interactions",
    "CRL matched representation ablation"
  ],
  "deliverables": [
    "raw JSON/CSV",
    "target-construction audit",
    "support-stratified table"
  ],
  "compute": {
    "gpu_type": "A10",
    "num_gpus": 1,
    "estimated_hours": 1
  }
}
toolpropose_experiment
{"proposal_id":"P-a103","status":"drafted","compute":{"gpu_type":"A10","num_gpus":1,"estimated_hours":1}}
assistant
launch_experiment()
{
  "proposal_id": "P-a103"
}
toollaunch_experiment
{"run_id":"R-b214","status":"finished","title":"Minimal causal screen of GCRL value failure"}
assistant
read_experiment_results()
{
  "run_id": "R-b214",
  "section": "metrics"
}
toolread_experiment_results
{"benchmark":"deterministic branch32 stitching screen, exact DP/BFS evaluation, roughly 320-400 transitions per condition","stitching_true_mse":[{"architecture":"plain_mlp","oracle_td1":0.043,"oracle_td4":0.266,"mc_labelled_condition":0.030,"learner_td1":0.375},{"architecture":"geometry","oracle_td1":0.031,"oracle_td4":0.239,"mc_labelled_condition":0.026,"learner_td1":0.148}],"bellman_residual":{"plain_mlp_oracle_td1":0.010,"plain_mlp_learner_td1":0.029,"geometry_oracle_td1":0.011,"geometry_learner_td1":0.014},"geometry_crl":{"learner_td1_mse":0.157,"triangle_violation_rate_pretrained":0.005,"triangle_violation_rate_unpretrained":0.127},"horizon_check":"finite-horizon truncation was negligible by H=16 on branch32","warning":"Metric names alone do not establish that realistic target construction matched the proposal; inspect the target audit before interpreting MC or TD backup length."}
assistant
The screen has one useful signal and one result I refuse to interpret yet. The useful signal is the gap between self-consistency and truth: learner-bootstrap values can have small Bellman residuals while their MSE against exact DP is much larger. Geometry reduces the error relative to the plain MLP in the learner condition, but even the geometry model remains inaccurate; improving the representation does not make the target trustworthy. The CRL result points the same way: triangle violations collapse while value MSE remains substantial. The suspicious result is the backup/MC table. For the plain MLP, the nominal one-step oracle condition is at 0.043 while the four-step oracle condition is at 0.266; for geometry it is 0.031 versus 0.239. A correct n-step oracle target is not inherently less correct than its one-step counterpart. That magnitude of degradation could be update coverage, boundary handling, target scaling, or simply a mislabeled target path. More importantly, a non-geometry MC model should have almost no genuine stitching capacity when no complete composed trajectory is observed. Its low number is not evidence of discovery until I know where the target came from. This is exactly where a summary table is dangerous: it invites a causal story before the training signal has been audited. I need the ground truth and every target source named precisely.
assistant
read_experiment_results()
{
  "run_id": "R-b214",
  "section": "controls",
  "detail": "ground-truth definition, target-source audit, MC implementation, boundary handling, and CRL matching"
}
toolread_experiment_results
{"true_mse_definition":"mean over evaluated (s,g) pairs of (V_pred(s,g)-V_star(s,g))^2; V_star is exact DP on the known deterministic graph and is independently checked by BFS","reward":"sparse goal-conditioned reward: 1 when a transition reaches its labelled goal, 0 otherwise; gamma=0.9","target_audit":{"td1_alias":"oracle bootstrap r + gamma V_star(next,g)","td4_alias":"four-step return plus oracle V_star bootstrap","learner_td":"one-step bootstrap from the learner's target network","mc_alias":"discounted target computed from exact graph distance, not an observed trajectory return"},"leakage_verdict":"The condition reported as MC was an oracle-distance capacity control. Composed values were supplied by the target. It cannot support a claim that ordinary MC stitches.","boundary_audit":"The original target paths did not provide the explicit episode/fragment-boundary guarantees required for a realistic TD4 comparison.","crl_audit":"The reported pretraining run was not a fully matched pretrained-versus-unpretrained plain-head causal pair."}
assistant
That audit changes the status of the first experiment. The ground truth is sound: true MSE is error against exact DP, not training loss or Bellman residual. The realistic learner-bootstrap condition is also informative. But the nominal MC result is unusable for stitching because **the composed values were given to it** through exact graph distance. It answers only whether the architecture can fit globally correct labels. It does not answer whether an offline objective can infer A→C from separate A→B and B→C fragments. The oracle TD1/TD4 comparison is likewise a control, not the main objective comparison. It removes recursive bootstrap error—the very advantage longer backups are meant to have—while introducing unanswered boundary and update-distribution questions. I will not explain the worse TD4 number as a property of longer backups. It is a target-construction or optimization diagnostic until audited. So the first run establishes only three things: exact-DP evaluation is available; learned TD can be self-consistent and wrong; and geometry can improve interpolation without fixing target error. It does not establish realistic MC stitching, a general disadvantage of longer backups, or a causal CRL benefit. The next experiment must make those exclusions executable: explicit episode identifiers, n-step sequences forbidden to cross boundaries, observed returns only, and source-level checks that fail if DP or distance enters a learner target.
assistant
record_finding()
{
  "title": "Initial GCRL screen is informative only after separating oracle controls from realistic objectives",
  "statement": "Learner-bootstrap TD can have low Bellman residual and high exact-DP value error, and geometry can reduce interpolation error without removing target error. The nominal MC condition cannot diagnose stitching because it used exact graph-distance targets; oracle TD1/TD4 are capacity/target controls, not realistic offline objectives.",
  "evidence": "On branch32 stitching, plain MLP oracle TD1/TD4/learner TD1 MSE was 0.043/0.266/0.375 with learner residual 0.029; geometry was 0.031/0.239/0.148 with learner residual 0.014. Target audit found the MC alias used exact graph distance.",
  "caveats": "The first run's boundary handling and CRL matching were insufficient for causal claims; finite-horizon truncation was already negligible by H=16."
}
toolrecord_finding
{"finding_id":75,"recorded":true}
assistant
The corrected run should answer a narrower question before scaling horizon: with oracle information removed, can any realistic objective infer long-range values from short fragments, and does geometry change which errors remain? I will distinguish three target sources in the names, not in a footnote. `learner_td1` bootstraps from the learner after one valid transition. `learner_td4` uses four consecutive transitions inside the same recorded boundary and then bootstraps from the learner. `observed_mc` backs up only a return actually present in one recorded episode or fragment. Exact DP and exact-distance returns remain available only as explicitly named oracle controls, excluded from the stitching conclusion. The design also needs a target-level audit before model training: hand-constructed episodes where each expected TD1, TD4, and MC target is known; terminal handling; and a negative test that an n-step sample cannot cross a fragment boundary. If observed MC and TD4 later produce exactly the same metrics, I want to know whether that is a property of fixed fragment length or an implementation equivalence, not wave it away. I will run the plain MLP direct condition first as a pipeline control, then the intended stitching matrix across MLP, geometry, and tabular. Direct data alone cannot answer the research question, so if execution returns only that portion I will keep the same scientific run open and prioritize the missing stitching conditions rather than treating the control as the result.
assistant
propose_experiment()
{
  "title": "Leakage-free realistic offline GCRL stitching diagnosis",
  "research_question": "Can realistic offline objectives discover long-range goal values from short overlapping fragments, and which residual errors come from recursive bootstrapping, backup length, support, or representation?",
  "method": "Correct branch32 with explicit episode_id and step_in_episode fields. Give reward 1 only when the recorded trajectory reaches its labelled goal. Compare learner_td1, valid within-boundary learner_td4, and observed-return MC using identical data and update budgets. Run plain MLP, asymmetric geometry, and tabular lookup; exact DP is evaluation-only and oracle controls are separately named.",
  "controls": [
    "source-level leakage audit rejects V_star, distance, or DP calls in learner targets",
    "hand-constructed target tests for TD1, TD4, MC, terminals, and fragment boundaries",
    "direct-data MLP control before stitching matrix",
    "target coverage, nonzero fraction, bias, and variance computed post hoc only"
  ],
  "evaluation": "Exact-DP MSE/MAE, Bellman residual, ranking, calibration, policy success, distance curves, and support strata, with raw per-seed target diagnostics.",
  "experiments": [
    "smoke and leakage tests",
    "three-seed direct MLP control",
    "three-seed stitching matrix for MLP, geometry, and tabular"
  ],
  "deliverables": [
    "raw target audit",
    "per-seed and aggregate tables",
    "explicit warning for any target equivalence"
  ],
  "compute": {
    "gpu_type": "L40S",
    "num_gpus": 1,
    "estimated_hours": 1
  }
}
toolpropose_experiment
{"proposal_id":"P-c325","status":"drafted","compute":{"gpu_type":"L40S","num_gpus":1,"estimated_hours":1}}
assistant
launch_experiment()
{
  "proposal_id": "P-c325"
}
toollaunch_experiment
{"run_id":"R-d436","status":"running","title":"Leakage-free realistic offline GCRL stitching diagnosis"}
assistant
read_experiment_results()
{
  "run_id": "R-d436",
  "section": "summary",
  "detail": "first completed scientific checkpoint"
}
toolread_experiment_results
{"status":"running","implementation":"explicit episode/fragment boundaries; observed-return MC without DP/distance leakage; valid learner TD1 and within-boundary learner TD4; source-level leakage, terminal, boundary, and stitching-goal tests pass","completed_condition":"three-seed plain-MLP direct-data control","true_mse":{"learner_td1":{"mean":0.1754,"std":0.0052},"learner_td4":{"mean":0.1883,"std":0.0293},"observed_mc":{"mean":0.1945,"std":0.0128}},"bellman_residual":"approximately 0.012 across methods","policy_success":{"learner_td1_mean":0.858,"learner_td1_std":0.031,"learner_td4_mean":0.920,"learner_td4_std":0.057},"missing":"stitching and architecture conditions have not yet produced results"}
assistant
The direct control verifies the corrected target plumbing, but it does not answer the stitching question. Its scientific content is limited: all three realistic objectives have nontrivial true-value error despite Bellman residuals around 0.012, and TD4's higher policy success does not coincide with lower value MSE. That is already a warning against substituting policy success for value accuracy. What I will not do is turn a partial control into the headline because the intended fragment-composition conditions are missing. The implementation is now the expensive intellectual part; the matrix itself is tiny. The next action is therefore runtime steering, not a new design: keep the audited code and matched settings, stop spending effort on direct data, and complete the MLP/geometry/tabular stitching cells.
assistant
steer_experiment()
{
  "run_id": "R-d436",
  "instruction": "The completed direct MLP condition is a pipeline control, not the answer. Preserve the validated leakage and boundary implementation, and prioritize the missing branch32 stitching matrix: MLP, geometry, and tabular under learner_td1, learner_td4, and observed_mc with the same three seeds, training budget, and raw target diagnostics. Do not substitute more direct-data runs."
}
toolsteer_experiment
{"run_id":"R-d436","accepted":true,"priority":"complete missing stitching matrix","direct_control_retained":true}
assistant
read_experiment_results()
{
  "run_id": "R-d436",
  "section": "metrics",
  "detail": "completed three-seed stitching matrix and target-equivalence diagnostics"
}
toolread_experiment_results
{"status":"finished","matrix":"branch32 stitching, 3 architectures x 3 objectives x seeds 42,43,44, 150 epochs, 200 episodes; all 27 runs completed","true_mse":[{"architecture":"plain_mlp","learner_td1":{"mean":0.0658,"std":0.0041},"learner_td4":{"mean":0.0815,"std":0.0035},"observed_mc":{"mean":0.0815,"std":0.0035}},{"architecture":"geometry","learner_td1":{"mean":0.0434,"std":0.0017},"learner_td4":{"mean":0.0560,"std":0.0003},"observed_mc":{"mean":0.0560,"std":0.0003}},{"architecture":"tabular","learner_td1":{"mean":0.2690,"std":0.0030},"learner_td4":{"mean":0.2691,"std":0.0030},"observed_mc":{"mean":0.2691,"std":0.0030}}],"support_example":{"geometry_td1_stitchable_mse":0.007,"geometry_td1_unsupported_mse":0.073},"residual_example":{"tabular_td1_mse":0.2690,"tabular_td1_bellman_residual":0.0002,"geometry_td1_mse":0.0434,"geometry_td1_bellman_residual":0.0017},"anomaly":"learner_td4 and observed_mc produced exactly identical metrics for every architecture and seed; the code path or fixed fragment construction must be audited before comparing these objectives","horizon_limitation":"branch32 has shortcuts and the earlier finite/infinite check was already negligible by H=16"}
assistant
The corrected short benchmark gives a real architecture result and an unresolved objective result. Geometry is better than the plain MLP under the same one-step learner target, and the table is much worse because it cannot share information across unobserved state-goal pairs. Geometry's gap between composition-supported and unsupported pairs is exactly the diagnostic pattern the literature predicted: structured sharing helps interpolation, not arbitrary extrapolation. Low Bellman residual again fails as a certificate of true value accuracy; the table makes that failure especially stark. But I will not rank TD4 against MC. They are numerically identical for every model and seed. That is too exact to call a scientific outcome. It could arise because fixed four-step fragments make the observed return and four-step target equivalent, or because two nominal objectives share target construction. Either way, **we have seen an issue with MC** and it cannot carry a causal conclusion until audited. I am excluding it from the next comparison rather than spending the long-horizon budget amplifying an unresolved implementation equivalence. The remaining question is whether the apparently modest neural errors reflect a robust method or an easy benchmark. The environment is small, contains shortcuts, and becomes effectively infinite-horizon by the existing check. Increasing the state count without increasing shortest-path distance would not help. The next run must manipulate maximum shortest-path distance directly, remove shortcuts, hold local fragment length and dataset budget roughly fixed, and ask where value error breaks as more fragments must be composed.
assistant
record_finding()
{
  "title": "Leakage-free short-horizon stitching shows geometry helps, but TD4-versus-MC is unresolved",
  "statement": "On branch32 stitching, geometry reduces value error relative to a plain MLP and tabular lookup under the same learner TD1 objective, while low Bellman residual still coexists with high true error. TD4 and observed MC cannot be compared because they produced exactly identical metrics in every condition.",
  "evidence": "Three seeds and 27 completed runs: TD1 MSE plain MLP 0.0658+/-0.0041, geometry 0.0434+/-0.0017, tabular 0.2690+/-0.0030. Geometry TD1 stitchable/unsupported MSE was 0.007/0.073. Tabular TD1 Bellman residual was 0.0002 despite MSE 0.2690.",
  "caveats": "Branch32 is not genuinely long-horizon; TD4 and MC were exactly equal and MC is excluded until target construction is audited."
}
toolrecord_finding
{"finding_id":76,"recorded":true}
assistant
For the scale test I am making shortest-path distance the intervention. The chains will have no shortcut edges and follow a four-point doubling schedule from the existing short regime to the longest practical endpoint; fragments remain four steps and the data/training budget stays fixed where practical. This forces the distant values to depend on composing more local pieces rather than giving the larger environments proportionally more evidence. MC is deliberately absent. The previous run did not merely show MC underperforming; it showed an unresolved exact equivalence to TD4. Including it would create a three-way plot whose most interesting axis is scientifically uninterpretable. The current question can be answered with learner TD1 and valid learner TD4. Oracle DP remains evaluation-only, except for a small clearly named capacity control. I will begin with the shared MLP across scales, add geometry and tabular only at the largest endpoint, and report target coverage alongside error. Aggregate policy success is secondary because a directed chain can make the correct action trivial even when values are badly calibrated. The decisive pattern is true error rising with distance while Bellman residual remains low. If that happens across MLP and geometry, with support coverage collapsing, the objective/data pipeline—not raw representational expressivity—is implicated. There is one evaluation trap I can anticipate but not fully eliminate before seeing the data: discounted long-distance values become small, so aggregate MSE can reward predicting zero. I will require distance and support strata, but I will treat their semantics as auditable objects rather than assume names like `direct` and `stitchable` mean what I want.
assistant
propose_experiment()
{
  "title": "Long-distance leakage-free GCRL value scaling",
  "research_question": "Do learner-bootstrap goal-conditioned values fail as maximum shortest-path distance and required fragment composition depth grow, and do TD1, TD4, geometry, and tabular controls locate the cause?",
  "method": "Build deterministic directed no-shortcut chain17/33/65/129 environments with maximum shortest-path distances 16/32/64/128. Use sparse terminal rewards, fixed four-step stitching fragments, 200 episodes, 150 epochs, and learner TD1/TD4 only. Screen the MLP at every scale; compare geometry and tabular at distance 128.",
  "controls": [
    "MC excluded until its exact TD4 equivalence is audited",
    "exact DP/BFS evaluation only",
    "fixed fragment length and approximately fixed data budget",
    "no shortcut edges",
    "target coverage and Bellman residual reported with true error",
    "policy success demoted on the directed chain"
  ],
  "evaluation": "MSE/MAE versus shortest-path distance and fragment count, support-stratified error, target coverage, ranking, calibration, Bellman residual, and endpoint architecture comparison.",
  "experiments": [
    "smoke, leakage, no-shortcut, reward, and n-step boundary tests",
    "MLP TD1/TD4 distance screen",
    "largest-scale geometry and tabular controls",
    "endpoint seed confirmation if metrics remain interpretable"
  ],
  "deliverables": [
    "distance-scaling table",
    "raw JSON",
    "mask definitions and counts"
  ],
  "compute": {
    "gpu_type": "A100",
    "num_gpus": 1,
    "estimated_hours": 1
  }
}
toolpropose_experiment
{"proposal_id":"P-e547","status":"drafted","compute":{"gpu_type":"A100","num_gpus":1,"estimated_hours":1}}
assistant
launch_experiment()
{
  "proposal_id": "P-e547"
}
toollaunch_experiment
{"run_id":"R-f658","status":"running","title":"Long-distance leakage-free GCRL value scaling"}
assistant
read_experiment_results()
{
  "run_id": "R-f658",
  "section": "metrics",
  "detail": "completed distance screen, endpoint architectures, coverage, residuals, and current evaluation strata"
}
toolread_experiment_results
{"status":"running","setup":"leakage-audited no-shortcut directed chains; four-step stitching fragments; 200 episodes and 150 epochs","mlp_scaling":[{"max_distance":32,"td1_mse":0.253,"td4_mse":0.251,"td1_stitching_mae":0.373,"td4_stitching_mae":0.379},{"max_distance":64,"td1_mse":0.321,"td4_mse":0.541,"td1_stitching_mae":0.448,"td4_stitching_mae":0.658},{"max_distance":128,"td1_mse":0.543,"td4_mse":0.474,"td1_stitching_mae":0.703,"td4_stitching_mae":0.690}],"distance_128":{"target_coverage":0.021,"bellman_residual":"near zero","rank_correlation":"near zero","policy_success":1.0},"architecture_endpoint_mse":{"geometry_td1":0.544,"geometry_td4":0.581,"tabular_overall":0.027},"current_tabular_strata":{"direct_pair_mse":0.2583,"stitchable_pair_mse":0.0898,"unsupported_pair_mse":0.0323,"rank_correlation":-0.095},"remaining":"additional endpoint seeds"}
assistant
The long-horizon failure is real for the neural models. MLP error rises sharply beyond the short regime; at the longest distance both TD variants have large overall error and stitching MAE, target coverage is only 0.021, ranking is near zero, and the Bellman residual is still near zero. Geometry fails at a similar scale. TD4 is not uniformly better: nearly tied at distance 32, much worse at 64, modestly better at 128. That pattern does not support a universal backup-length remedy. But the tabular endpoint is a red flag, not a surprise victory. A table cannot infer an unobserved composition without targets connecting the pair. Its low overall MSE, combined with negative ranking and high so-called direct-pair error, says the metric or mask is rewarding zero predictions on small discounted values. Even the names look inverted: `direct` is worse than `stitchable`, exactly opposite what direct supervision should produce for a table. I will not spend more seeds tightening an endpoint comparison whose categories are semantically suspect. First I need the mask construction itself. If `direct` means graph adjacency rather than an observed training pair, or `stitchable` means one supported neighbor rather than a certified chain of fragments, the decomposition cannot answer the causal question.
assistant
read_experiment_results()
{
  "run_id": "R-f658",
  "section": "controls",
  "detail": "exact definitions and counts for direct, stitchable, unsupported, selected goals, rewards, and DP usage"
}
toolread_experiment_results
{"reward_definition":"0 on non-goal transitions and 1 when the transition reaches the labelled goal; no distance shaping; gamma=0.9","dp_usage":"exact DP/BFS values and distances are evaluation-only for learner conditions","legacy_direct_mask":"all reachable one-step graph-adjacency pairs, regardless of whether that state-goal pair was a selected goal or appeared as a training target","legacy_stitchable_mask":"a multi-hop pair is marked stitchable when one immediate successor is reachable to the goal and that successor-goal pair appears in a broad support mask; it does not require a contiguous chain of recorded fragment endpoints","legacy_scope":"direct/stitchable/unsupported MSE are computed over the full N x N state-goal matrix; selected goal IDs are used only for other metrics","value_scale_artifact":"V_star(s,g)=gamma^distance for reachable pairs, so many long-distance truths are close to zero and a zero predictor can have low aggregate MSE","verdict":"The neural distance-scaling failure remains visible, but legacy aggregate and support-category metrics cannot establish tabular stitching or compare evidence types."}
assistant
This is an evaluation failure, and I want to separate it from the model failure. The neural distance curve remains evidence that sparse supervision plus low coverage produces inaccurate long-range values: it does not depend on believing the tabular interpretation. But the direct/stitchable/unsupported decomposition is not what its labels claim. `Direct` means graph-adjacent, not observed; `stitchable` is a one-neighbor heuristic, not a fragment-composition certificate; both range over the full state-goal matrix; and near-zero long-distance values let a zero table look good. So I retract the earlier suggestion that tabular retained accurate long-range values. It did not demonstrate stitching. I also will not use the legacy direct/stitchable comparison to localize neural error. The relevant alternative is an evaluation grounded in training evidence: observed one-step pairs, complete recorded trajectories, composition-required pairs with an explicit contiguous chain of fragment endpoints, and unsupported reachable pairs. Each subset must report its count and mean true value, and the primary metrics must also restrict to positive reachable values and stratify by exact distance. The remaining endpoint seeds would only make the wrong statistic more precise. Stop this run and carry the completed predictions forward only if the new masks can audit them.
assistant
stop_experiment()
{
  "run_id": "R-f658",
  "reason": "The completed distance screen establishes neural long-horizon failure, but the legacy direct/stitchable/unsupported masks are semantically invalid for the tabular and mechanism comparison. Additional seeds would tighten a misleading statistic. Retain completed predictions if available for corrected-mask evaluation."
}
toolstop_experiment
{"run_id":"R-f658","status":"stopped","retained":"completed scale tables and endpoint outputs","not_completed":"additional endpoint seeds"}
assistant
record_finding()
{
  "title": "Long-chain GCRL exposes low-coverage value failure, while legacy support masks are invalid",
  "statement": "MLP and geometry values become severely inaccurate on no-shortcut long chains while Bellman residuals remain near zero, implicating sparse target coverage and local self-consistency. The legacy aggregate and direct/stitchable/unsupported metrics cannot support claims about tabular composition because their masks are not defined by observed evidence and are dominated by small discounted targets.",
  "evidence": "MLP TD1/TD4 MSE at max distance 32 was 0.253/0.251, at 64 was 0.321/0.541, and at 128 was 0.543/0.474; distance-128 stitching MAE was 0.703/0.690 with target coverage 0.021 and near-zero residual. Geometry endpoint MSE was 0.544/0.581. Tabular overall MSE 0.027 contradicted negative rank correlation -0.095 and direct-pair MSE 0.2583.",
  "caveats": "The distance curve is valid evidence of neural failure; the mechanism decomposition and tabular comparison require corrected masks and positive-value metrics."
}
toolrecord_finding
{"finding_id":77,"recorded":true}
assistant
The re-evaluation must be auditable enough that a table cannot receive credit by category leakage. I want four masks derived from recorded evidence, not from suggestive names. `Observed direct` means the recorded transition itself reaches its labelled goal. `Complete trajectory` means one recorded episode contains the whole start-to-goal route. `Composition required` means no single fragment reaches the goal but a contiguous chain of recorded fragment endpoints certifies a route. `Unsupported reachable` means the graph says the goal is reachable but the dataset has no such certificate. A lone intermediate support pair is an explicit negative test; it must not certify composition. For every mask, counts and mean true value come before error. I also need reachable-positive subsets at two thresholds, per-distance MAE/MSE/relative error, normalized MSE, and same-start goal ranking. This blocks two artifacts at once: category imbalance over the full matrix, and tiny discounted targets making zero look accurate. Legacy metrics can remain only with a warning. The execution criterion is equally important. If saved prediction matrices or checkpoints are unavailable, the run must retrain the tiny models rather than return only an evaluator. The experiments are cheap, and an elegant mask implementation with no new values would not answer the question.
assistant
propose_experiment()
{
  "title": "Auditable reevaluation of long-horizon GCRL values",
  "research_question": "Does the long-chain conclusion survive evidence-defined, positive-value, distance-stratified evaluation, and does tabular lookup fail genuine fragment composition as expected?",
  "method": "Add explicit fragment records and construct observed-direct, complete-trajectory, certified composition-required, and unsupported-reachable masks from contiguous recorded endpoints. Add positive-value thresholds, per-distance metrics, normalized error, scatter summaries, same-start ranking, and top-k recall. Reevaluate saved predictions; if predictions/checkpoints are absent, retrain the matching tiny matrix in the same run.",
  "controls": [
    "hand-constructed positive and negative composition-certificate tests",
    "mask counts and mean true value reported before errors",
    "DP used only for evaluation values and mask reachability, never targets",
    "legacy metrics explicitly labeled non-causal",
    "artifact round-trip if retraining is required"
  ],
  "evaluation": "MAE, MSE, normalized MSE, relative error, calibration, and ranking for every evidence mask, positive-value subset, and distance.",
  "experiments": [
    "implement and unit-test masks",
    "reevaluate historical chain17/33/65/129 predictions",
    "fallback: retrain MLP TD1/TD4 at all scales and geometry/tabular at distance 128"
  ],
  "deliverables": [
    "auditable mask counts",
    "corrected tables",
    "full prediction/checkpoint artifacts for future reevaluation"
  ],
  "compute": {
    "gpu_type": "L40S",
    "num_gpus": 1,
    "estimated_hours": 1
  }
}
toolpropose_experiment
{"proposal_id":"P-g769","status":"drafted","compute":{"gpu_type":"L40S","num_gpus":1,"estimated_hours":1}}
assistant
launch_experiment()
{
  "proposal_id": "P-g769"
}
toollaunch_experiment
{"run_id":"R-h870","status":"finished","title":"Auditable reevaluation of long-horizon GCRL values"}
assistant
read_experiment_results()
{
  "run_id": "R-h870",
  "section": "summary"
}
toolread_experiment_results
{"implementation":"added explicit fragment records, contiguous endpoint validation, complete-trajectory masks, certified composition-required and unsupported-reachable masks, positive thresholds V_star>0.1 and V_star>0.01, per-distance and distance-bin error, normalized MSE, scatter summaries, same-start ranking, top-k recall, and calibration","verification":"syntax and smoke pipeline pass; hand-constructed positive certificate and lone-intermediate negative case pass; DP remains evaluation/mask-only","new_empirical_results":false,"reason":"historical chain17/33/65/129 outputs did not contain matching checkpoints or full prediction matrices, while the seeded benchmark in this run exposed only chain20/chain32; the required fallback retraining was not launched","verdict":"evaluation implementation succeeded, research objective did not"}
assistant
This run is not a result. It fixed the evaluator and passed the right negative certificate test, but produced no new long-horizon values. The absence of checkpoints was foreseeable in the proposal and had an explicit fallback: retrain. Returning after implementation is an execution failure, not evidence that reevaluation is impossible. Because training is cheap, the correct response is not to weaken the question or reuse legacy aggregate numbers. Retrain the same leakage-free learner objectives on the long-chain aliases, save the full prediction and truth matrices plus exact transition and fragment records, and run the corrected masks immediately. This time the artifact contract is part of the experimental method: without it, every later correction forces another training run. Before launching, I will retrieve only findings created in this investigation—not older lab knowledge—to make sure the configuration preserves what is established: MC excluded, no-shortcut chains, learner TD1/TD4, and legacy masks demoted.
assistant
search_findings()
{
  "query": "this investigation long-chain GCRL leakage-free TD1 TD4 mask corrections MC exclusion",
  "max_results": 5
}
toolsearch_findings
{"results":[{"id":75,"use":"oracle-distance MC cannot diagnose stitching; exact DP is evaluation/control only"},{"id":76,"use":"use leakage-free learner TD1/TD4; MC excluded because it exactly matched TD4; geometry helps short interpolation but not unsupported pairs"},{"id":77,"use":"use no-shortcut chain17/33/65/129; preserve four-step fragments and long-distance scaling; legacy masks are invalid and must not support causal claims"}],"scope":"findings recorded during the current investigation only"}
assistant
The final run is deliberately a retraining-and-measurement run, not another evaluator build. The objective stays fixed to learner TD1 and TD4. MC remains outside. The graph, fragment construction, sparse rewards, and DP separation remain fixed. Every trained condition must export the full value matrix, checkpoint/configuration, transitions, goal labels, episode IDs, step indices, and target indices, and the evaluator must reload the artifact and reproduce the online metrics exactly. The intended matrix includes MLP across all four distances and geometry/tabular at the largest distance, with additional endpoint seeds if runtime permits. The priority order matters. First establish that corrected composition masks are nonempty and that artifacts round-trip. Then finish the MLP distance curve because it connects directly to the existing result. Then the endpoint architectures, then extra seeds. If runtime information shows the full matrix will not fit, preserve the causal axis—TD1 versus TD4 across distance—and cut replication or architecture breadth. That is a loss of completeness, not a license to report a partial matrix as final.
assistant
propose_experiment()
{
  "title": "Retrain and reevaluate long-horizon GCRL with auditable artifacts",
  "research_question": "Under corrected evidence masks, how do learner TD1 and TD4 estimate genuinely composition-required values across distances, and do geometry or tabular controls change the diagnosis at the longest endpoint?",
  "method": "Add chain17/33/65/129 aliases to the corrected leakage-free implementation. Retrain learner TD1/TD4, save full V_pred/V_star/distance matrices, checkpoint/config, exact transitions, fragment records, and target indices, then evaluate observed-direct, complete, certified-composition, unsupported, positive-value, and per-distance masks.",
  "controls": [
    "MC remains excluded",
    "artifact round-trip must exactly reproduce predictions",
    "composition-required counts must be nonzero",
    "DP/BFS never enters learner targets",
    "legacy aggregate MSE is secondary"
  ],
  "evaluation": "Certified-composition MAE/MSE plus positive-value, unsupported, per-distance, ranking, and calibration metrics; report counts and mean truth for each mask.",
  "experiments": [
    "smoke, leakage, mask, and artifact round-trip tests",
    "MLP TD1/TD4 at distances 16/32/64/128",
    "geometry and tabular TD1/TD4 at distance 128",
    "endpoint seed confirmation if runtime permits"
  ],
  "deliverables": [
    "full reusable artifacts",
    "corrected metric tables",
    "explicit list of unfinished cells"
  ],
  "compute": {
    "gpu_type": "L40S",
    "num_gpus": 1,
    "estimated_hours": 1
  }
}
toolpropose_experiment
{"proposal_id":"P-i981","status":"drafted","compute":{"gpu_type":"L40S","num_gpus":1,"estimated_hours":1}}
assistant
launch_experiment()
{
  "proposal_id": "P-i981"
}
toollaunch_experiment
{"run_id":"R-j092","status":"running","title":"Retrain and reevaluate long-horizon GCRL with auditable artifacts"}
assistant
read_experiment_results()
{
  "run_id": "R-j092",
  "section": "summary",
  "detail": "verification status, artifact round-trip, mask counts, and measured runtime"
}
toolread_experiment_results
{"status":"running","verification":"smoke and long-chain pilot pass; leakage checks pass; saved prediction matrix reload is exact","composition_required_count_chain17_pilot":39,"runtime_update":"full architecture endpoint sweep plus full three-seed matrix will not fit the remaining run time; chain129 requires a shorter retry","completed":"artifact plumbing and pilot","pending":["MLP TD1/TD4 at all four scales","distance-128 geometry/tabular","full endpoint replication"]}
assistant
The new information is runtime, and the cut should preserve the causal axis. The artifact and mask checks passed, including a nonempty certified-composition subset, so the evaluator is now usable. The full architecture-by-seed endpoint will not fit. I will keep MLP TD1 versus TD4 at every distance because that is the only axis that reveals how backup length behaves as composition depth grows. I will shorten only the longest retry if necessary and defer geometry/tabular plus extra seeds. That means the run cannot settle architecture versus objective. I want that limitation explicit now, before seeing the values, rather than allowing the clean MLP table to masquerade as the full experiment.
assistant
steer_experiment()
{
  "run_id": "R-j092",
  "instruction": "Runtime cannot fit the full matrix. Preserve the MLP learner_td1 versus learner_td4 comparison at chain17/33/65/129 and all artifact exports. Shorten only the chain129 retry if needed. Defer geometry/tabular endpoint and extra seeds, and report them explicitly as unfinished; do not replace them with legacy metrics."
}
toolsteer_experiment
{"run_id":"R-j092","accepted":true,"priority":"single-seed MLP TD1/TD4 across all four scales with artifacts","deferred":["geometry/tabular endpoint","full three-seed matrix"],"chain129":"short retry permitted"}
assistant
read_experiment_results()
{
  "run_id": "R-j092",
  "section": "metrics",
  "detail": "corrected-mask MLP results, artifacts, and unfinished cells"
}
toolread_experiment_results
{"status":"finished","setup":"single seed; chain17/33/65 use 50 epochs and 120 episodes; chain129 shorter retry uses 20 epochs and 60 episodes","artifact_verification":"full prediction matrices, checkpoints/config, transitions, fragment records, and target indices saved; prediction round-trip exact; DP remains evaluation-only","corrected_composition_results":[{"chain":17,"composition_count":19,"positive_count":136,"td1_overall_mse":1.6039,"td4_overall_mse":1.1383,"td1_composition_mae":0.1704,"td4_composition_mae":0.0783},{"chain":33,"composition_count":83,"positive_count":462,"td1_overall_mse":0.6773,"td4_overall_mse":0.7185,"td1_composition_mae":0.1519,"td4_composition_mae":0.0679},{"chain":65,"composition_count":223,"positive_count":1134,"td1_overall_mse":0.4894,"td4_overall_mse":0.5474,"td1_composition_mae":0.1241,"td4_composition_mae":0.0649},{"chain":129,"composition_count":421,"td1_overall_mse":0.1160,"td4_overall_mse":0.2633,"td1_composition_mae":0.1767,"td4_composition_mae":0.0608}],"unfinished":["geometry/tabular distance-128 endpoint","full three-seed matrix"],"warning":"Do not compare chain129 training level directly with the other scales because it used the shorter retry; do not use the decreasing raw composition MAE with distance as proof that the task gets easier because discounted V_star shrinks."}
assistant
The corrected evaluation reverses one earlier impression without completing the full causal answer. On the certified composition-required subset, TD4 has lower MAE than TD1 at every tested endpoint. That is the comparison we originally wanted: both objectives bootstrap from the learner, neither sees DP targets, and the subset requires a contiguous chain of recorded fragment evidence rather than a one-neighbor heuristic. The old claim that TD4 was not useful for composition was partly an evaluation artifact. I am not going to call this a solution. These are single-seed results; the longest condition used a shorter training retry; overall MSE remains large and inconsistent across scales; and discounted truths shrink with distance, so raw MAE can decrease even as relative quality worsens. Most importantly, geometry and tabular were not run under the corrected endpoint evaluation. The architecture-versus-objective question is therefore still open. What is established is narrower and sharper. First, low Bellman residual can coexist with severely inaccurate long-range values when target coverage is sparse. Second, geometry improves short-range composition-supported interpolation but did not prevent the legacy long-chain neural failure. Third, oracle-distance leakage and weak support masks can make an objective or a table appear to stitch when it has not. Fourth, once the mask is corrected, longer learner backups show a consistent composition-subset advantage in this single-seed toy study, even though they do not reliably improve overall MSE. The next compute should go only to the missing decisive cells: a matched distance-128 MLP/geometry/tabular TD1/TD4 comparison under the saved auditable evaluator, followed by endpoint replication. Until that exists, the honest conclusion is that the learning objective and evaluation definition are demonstrated failure sources, architecture modulates interpolation, and their long-horizon interaction is unresolved.
assistant
record_finding()
{
  "title": "Corrected composition masks reveal a single-seed TD4 advantage but leave architecture interaction open",
  "statement": "With evidence-defined composition-required masks and leakage-free learner targets, TD4 has lower composition MAE than TD1 at every tested chain endpoint. This does not settle overall long-horizon accuracy or architecture versus objective because the run is single-seed, the longest condition used a shorter retry, and geometry/tabular endpoint cells are missing.",
  "evidence": "Composition MAE TD1/TD4: chain17 0.1704/0.0783, chain33 0.1519/0.0679, chain65 0.1241/0.0649, chain129 0.1767/0.0608. Full predictions and transitions were saved and reloaded exactly; DP remained evaluation-only.",
  "caveats": "Raw MAE is affected by shrinking discounted values; chain129 used 20 epochs/60 episodes versus 50/120 elsewhere; geometry/tabular and three-seed confirmation were not completed."
}
toolrecord_finding
{"finding_id":79,"recorded":true}

labels

successful_investigation:true
primary_conclusion:Long-horizon offline GCRL value failure is demonstrably driven by sparse target coverage and objective self-consistency that does not imply globally correct values, while architecture modulates short-range interpolation. However, the architecture-versus-object…
negative_result_reported:true
methodological_failure_preserved:true
oracle_leakage_detected_and_excluded:true
evaluation_mask_failure_detected_and_corrected:true
metric_self_consistency_not_equated_with_truth:true
geometry_treated_as_diagnostic_not_main_question:true
anomalous_objective_equivalence_excluded:true
runtime_scope_cut_preserved_causal_axis:true
partial_final_matrix_reported_honestly:true
unsupported_claims_present:false
all_quantitative_claims_traceable_to_tool_results:true

steering_moves