task_detail
validation/gpt-5-1-codex-mini/flux-pr-1351/task_detail.v1.json
14898 bytes
{
"version": "v1",
"materialization": {
"mode": "canonical"
},
"identity": {
"variant_id": "gpt-5.1-codex-mini",
"requested_model": "gpt-5.1-codex-mini",
"model_key": "gpt-5-1-codex-mini",
"run_id": "2026-02-28__13-38-10__gpt-5-1-codex-mini",
"task_id": "flux-pr-1351",
"trial_name": "flux-pr-1351.1-of-1.2026-02-28__13-38-10__gpt-5-1-codex-mini"
},
"decision": {
"status": "pass",
"primary_signal": "tests",
"matrix_status": "pass_with_warn",
"reason_codes": [
"primary_tests",
"tests_passed",
"equivalence_non_equivalent",
"review_unsure"
],
"flags": [
"equiv_warn",
"review_warn"
],
"lane_report": {
"lane": "lane_unknown",
"source": "lane_unknown",
"reasons": [
"lane_unknown"
]
},
"publish": {
"include_in_leaderboard": true,
"weak_signal_risk": false
},
"rescue": {
"candidate": false,
"eligible": false,
"decision": "not_candidate",
"required_artifacts_ok": true
}
},
"tests": {
"outcome": "pass",
"strength": "strong",
"commands": [
"go test -C v2 ./... -count=1 -timeout=300s"
],
"command_results": [
{
"command": "go test -C v2 ./... -count=1 -timeout=300s",
"gold_outcome": "pass",
"gold_tb_trial_name": "flux-pr-1351.1-of-1.validate-gold-1772334545696001000",
"gold_failure_mode": "unset",
"agent_outcome": "pass",
"agent_tb_trial_name": "flux-pr-1351.1-of-1.validate-override-1772334596773991000",
"agent_failure_mode": "unset",
"agent_retried": false
}
],
"partial_score": {
"score": 1,
"numerator": 1,
"denominator": 1,
"level": "command",
"provenance": "fallback_command_level",
"reason": "test_case_detail_unavailable"
},
"tb": {
"trial_name": "flux-pr-1351.1-of-1.2026-02-28__13-38-10__gpt-5-1-codex-mini",
"is_resolved": true,
"failure_mode": "unset",
"duration_sec": 99.050917209,
"time_budget_sec": 1200
},
"cache": {
"cache_hit": false,
"cache_miss_reason": "missing_pinned_dependencies",
"environment_group_id": "eg_46b6a6c82a4890b6e6e87c39575fd02c"
}
},
"quality": {
"equivalence": {
"status": "used",
"outcome": "non_equivalent",
"confidence": 0.78,
"issue_type": "behavioral",
"notes": "The patch largely implements per-subgraph grouping and deterministic joining, but it changes `subgraphErrors` to a mutable map+mutex wrapper without updating `Context.clone` to deep-copy that state. Cloned contexts can share subgraph error entries (and copy a used mutex), causing cross-context error leakage/race-prone behavior, which breaks intended resolution-context semantics."
},
"code_review": {
"status": "used",
"signal": "unsure",
"confidence": 0.82,
"issue_type": "unclear",
"source_field": "code_review",
"dimension_scores": {
"correctness": {
"score_0_4": 3,
"confidence_0_1": 0.85,
"rationale": "The patch implements per-subgraph error grouping and updates call sites to append errors with datasource context, so the core behavior change appears correct. Combined error joining is made deterministic by sorted keys. A remaining concern is lookup-by-name behavior when multiple datasource entries share a name."
},
"edge_case_handling": {
"score_0_4": 2,
"confidence_0_1": 0.76,
"rationale": "Deterministic ordering across subgraphs is handled, but `SubgraphErrorByName` can return a non-deterministic match when multiple entries share the same name (since iteration is over a map and keying is by ID+Name)."
},
"introduced_bug_risk": {
"score_0_4": 3,
"confidence_0_1": 0.79,
"rationale": "Risk is moderate: the new error container introduces synchronization and composite keys, which is more complex than the minimal map-by-name approach but still guarded with a mutex and nil filtering."
},
"maintainability_idioms": {
"score_0_4": 2,
"confidence_0_1": 0.8,
"rationale": "The implementation works but is significantly more elaborate than required (custom struct, mutex, composite key, helper APIs), which increases maintenance surface compared to a simple map keyed by subgraph name."
}
},
"findings": [
{
"id": "f1",
"dimension": "edge_case_handling",
"severity": "minor",
"title": "Name-based per-subgraph lookup is non-deterministic with duplicate names",
"detail": "The storage key allows multiple entries with the same datasource name (`ID+Name`), but `SubgraphErrorByName` scans a map and returns the first matching name/ID encountered. If two datasources share a name, returned error selection is order-dependent.",
"confidence_0_1": 0.82,
"citations": [
{
"path": "v2/pkg/engine/resolve/context.go",
"side": "new",
"start_line": 171,
"end_line": 178,
"anchor_kind": "diff",
"head_sha": "42024d2d31ac476136dedf2ef63a488b7dd55f63"
},
{
"path": "v2/pkg/engine/resolve/context.go",
"side": "new",
"start_line": 241,
"end_line": 252,
"anchor_kind": "diff",
"head_sha": "42024d2d31ac476136dedf2ef63a488b7dd55f63"
}
]
}
],
"overall": {
"confidence_overall": 0.82,
"summary": "The patch likely satisfies the intended change (per-subgraph attribution plus deterministic combined output) and passes tests, but it introduces extra complexity and a minor ambiguity in name-based lookup behavior for duplicate datasource names."
},
"notes": "The patch likely satisfies the intended change (per-subgraph attribution plus deterministic combined output) and passes tests, but it introduces extra complexity and a minor ambiguity in name-based lookup behavior for duplicate datasource names."
},
"behavioral_robustness": {
"status": "used",
"probe_status": "used",
"gold_pass_candidate_pass_count": 1,
"agreement_rate": 1,
"coverage_delta_status": "unavailable",
"coverage_delta_reason": "coverage_adapter_unavailable",
"mutation_lite_status": "unavailable",
"mutation_lite_reason": "mutation_runner_unavailable",
"notes": "derived from command-level outcomes; no accepted generated probes"
},
"footprint_risk": {
"status": "used",
"reason": "none",
"version": "v1",
"level": "medium",
"score": 0.4119675384553558,
"flag": false,
"severe_flag": false
},
"cost": {
"status": "tokens_only",
"token_status": "present",
"cache_token_status": "present",
"total_input_tokens": 5407381,
"total_output_tokens": 40745,
"total_tokens": 5448126,
"uncached_input_tokens": 491541,
"cache_read_input_tokens": 4915840,
"cached_input_tokens": 4915840,
"total_cost_usd": 1.7191575,
"token_source": "openai_cached_tokens_usage",
"pricing_model_key": "gpt-5.1-codex-mini",
"pricing_mode": "cache_aware"
}
},
"summary": {
"task": {
"matrix_status": "pass_with_warn",
"tests_outcome": "pass",
"tests_unknown_cause": null,
"lane_report_lane": "lane_unknown",
"lane_report_source": "lane_unknown",
"lane_report_reasons": [
"lane_unknown"
],
"cache_hit": false,
"cache_miss_reason": "missing_pinned_dependencies",
"setup_ms_saved": null,
"pinned_bytes": null,
"environment_group_id": "eg_46b6a6c82a4890b6e6e87c39575fd02c",
"equivalence_status": "used",
"equivalence_outcome": "non_equivalent",
"code_review_status": "used",
"code_review_signal": "unsure",
"behavioral_robustness_status": "used",
"coverage_delta_status": "unavailable",
"mutation_lite_status": "unavailable",
"probe_accepted_candidates": null,
"probe_accepted_commands": null,
"probe_agreement_rate": 1,
"probe_gold_pass_candidate_pass_count": 1,
"probe_gold_pass_candidate_fail_count": null,
"probe_review_required_count": null,
"flags": [
"equiv_warn",
"review_warn"
],
"tb_is_resolved": true,
"tb_failure_mode": "unset",
"tb_total_input_tokens": 5407381,
"tb_total_output_tokens": 40745,
"tb_total_tokens": 5448126,
"tb_uncached_input_tokens": 491541,
"tb_cache_creation_input_tokens": null,
"tb_cache_read_input_tokens": 4915840,
"tb_cached_input_tokens": 4915840,
"token_status": "present",
"cache_token_status": "present",
"token_source": "openai_cached_tokens_usage",
"task_cost": 1.7191575,
"cost_status": "present",
"cost_pricing_mode": "cache_aware",
"pricing_model_key": "gpt-5.1-codex-mini",
"equiv_rescue_policy": "on",
"rescue_candidate": false,
"rescue_eligible": false,
"rescue_decision": "not_candidate",
"publish_include_in_leaderboard": true,
"publish_exclusion_reasons": [],
"publish_weak_signal_risk": false,
"tests_only_outcome": 1,
"rescue_aware_outcome": 1,
"partial_score": 1,
"partial_score_numerator": 1,
"partial_score_denominator": 1,
"partial_score_level": "command",
"partial_score_provenance": "fallback_command_level",
"partial_score_reason": "test_case_detail_unavailable",
"partial_score_unknown_count": 0,
"footprint_risk_status": "used",
"footprint_risk_reason": "none",
"footprint_risk_level": "medium",
"footprint_risk_score": 0.4119675384553558,
"footprint_risk_flag": false,
"footprint_risk_severe_flag": false
},
"run": {
"model": "gpt-5.1-codex-mini",
"requested_model": "gpt-5.1-codex-mini",
"run_id": "2026-02-28__13-38-10__gpt-5-1-codex-mini",
"passRate": 0.9655172413793104,
"ciLow": 0.896551724137931,
"ciHigh": 1,
"effectiveN": 29,
"tier": 1,
"validation_counts": {
"fail_guardrail": 0,
"fail_high_conf": 0,
"fail_infra": 1,
"fail_likely_equiv": 0,
"fail_with_diag": 0,
"missing": 0,
"pass": 2,
"pass_with_warn": 26
}
},
"run_metadata": {
"agent_name": "codex",
"model_name": "gpt-5.1-codex-mini",
"start_time": "2026-02-28T15:13:02.887835+00:00",
"end_time": "2026-02-28T16:42:40.244280+00:00",
"commit_hash": "99ae882e59281de74856a3e7eeb1b7c986b466af",
"accuracy": 0.6896551724137931,
"reasoning_effort": "medium"
}
},
"evidence": {
"task_detail": {
"path": "validation/gpt-5-1-codex-mini/flux-pr-1351/task_detail.v1.json",
"exists": true
},
"trajectory": {
"path": "validation/gpt-5-1-codex-mini/flux-pr-1351/trajectory.v1.json",
"exists": true,
"non_empty": true,
"size_bytes": 15395
},
"validation": {
"path": "validation/gpt-5-1-codex-mini/flux-pr-1351/validation.json",
"exists": true,
"non_empty": true,
"size_bytes": 145328
},
"results": {
"path": "runs/2026-02-28__13-38-10__gpt-5-1-codex-mini/results.json",
"exists": true,
"non_empty": true,
"size_bytes": 57447
},
"run_metadata": {
"path": "runs/2026-02-28__13-38-10__gpt-5-1-codex-mini/run_metadata.json",
"exists": true,
"non_empty": true,
"size_bytes": 1645
},
"agent_patch": {
"path": "runs/2026-02-28__13-38-10__gpt-5-1-codex-mini/flux-pr-1351/flux-pr-1351.1-of-1.2026-02-28__13-38-10__gpt-5-1-codex-mini/agent-logs/agent.patch",
"exists": true,
"non_empty": true,
"size_bytes": 18813
},
"summary": {
"path": "reports/summary.json",
"exists": true,
"non_empty": true,
"size_bytes": 269968
},
"manifest": {
"path": "manifest.json",
"exists": true,
"non_empty": true,
"size_bytes": 677
},
"validation_inputs": {
"required_for_rescue_ok": true,
"gold_patch": {
"exists": true,
"non_empty": true,
"size_bytes": 6203,
"sha256": "815afccd36fab8f4369b913dc089d46e94ae65c8735d45f3c11f35dc8fd6b631",
"required_for_rescue": true
},
"repo_tarball": {
"exists": true,
"non_empty": true,
"size_bytes": 2164046,
"sha256": "88c0509275e56d1a37054565c3744cb8706ad963eae4a1ac17b4457ab092b519",
"required_for_rescue": true
},
"agent_patch": {
"path": "runs/2026-02-28__13-38-10__gpt-5-1-codex-mini/flux-pr-1351/flux-pr-1351.1-of-1.2026-02-28__13-38-10__gpt-5-1-codex-mini/agent-logs/agent.patch",
"exists": true,
"non_empty": true,
"size_bytes": 18813,
"sha256": "4a9aa96e055ac3a45f3bfa7de50984b35c2f60297111009041d6f9a9ccb7ba87",
"required_for_rescue": true
}
}
},
"provenance": {
"identity": [
{
"source": "manifest",
"available": true
},
{
"source": "tb_results",
"available": true
}
],
"decision": [
{
"source": "validation",
"available": true
}
],
"tests": [
{
"source": "validation",
"available": true
},
{
"source": "tb_results",
"available": true
}
],
"quality": {
"equivalence": [
{
"source": "validation",
"available": true
}
],
"code_review": [
{
"source": "validation",
"available": true
}
],
"behavioral_robustness": [
{
"source": "validation",
"available": true
}
],
"footprint_risk": [
{
"source": "validation",
"available": true
}
],
"cost": [
{
"source": "validation",
"available": true
},
{
"source": "summary",
"available": true
}
]
},
"summary": {
"task": [
{
"source": "summary",
"available": true
}
],
"run": [
{
"source": "summary",
"available": true
}
],
"run_metadata": [
{
"source": "run_metadata",
"available": true
}
]
},
"evidence": [
{
"source": "filesystem",
"available": true
}
]
}
}