STET

task_detail

validation/gpt-5-3-codex/flux-pr-1184/task_detail.v1.json

16191 bytes

Back to adjudication
{
  "version": "v1",
  "materialization": {
    "mode": "canonical"
  },
  "identity": {
    "variant_id": "gpt-5.3-codex",
    "requested_model": "gpt-5.3-codex",
    "model_key": "gpt-5-3-codex",
    "run_id": "2026-02-28__13-38-10__gpt-5-3-codex",
    "task_id": "flux-pr-1184",
    "trial_name": "flux-pr-1184.1-of-1.2026-02-28__13-38-10__gpt-5-3-codex"
  },
  "decision": {
    "status": "pass",
    "primary_signal": "tests",
    "matrix_status": "pass_with_warn",
    "reason_codes": [
      "primary_tests",
      "tests_passed",
      "equivalence_non_equivalent",
      "review_fail"
    ],
    "flags": [
      "equiv_warn",
      "review_warn"
    ],
    "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-1184.1-of-1.validate-gold-1772290213876925000",
        "gold_failure_mode": "unset",
        "agent_outcome": "pass",
        "agent_tb_trial_name": "flux-pr-1184.1-of-1.validate-override-1772290262088947000",
        "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-1184.1-of-1.2026-02-28__13-38-10__gpt-5-3-codex",
      "is_resolved": true,
      "failure_mode": "unset",
      "duration_sec": 98.49744525,
      "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.88,
      "issue_type": "behavioral",
      "notes": "The patch partially implements nested union-fragment handling and fixes `entitiesImplementingInterface`, but it misses key intended behavior: top-level object-fragment cleanup is not updated to validate membership in parent valid types (it still relies on the old top-level checks), and `unionFragmentNeedCleanup` uses intersection/non-empty logic instead of requiring full parent-type coverage, which can skip required rewrites for union/interface selections."
    },
    "code_review": {
      "status": "used",
      "signal": "fail",
      "confidence": 0.86,
      "issue_type": "unclear",
      "source_field": "code_review",
      "dimension_scores": {
        "correctness": {
          "score_0_4": 2,
          "confidence_0_1": 0.89,
          "rationale": "The patch addresses key pieces (union cleanup checks, union flattening support, and the interface-entity filter return bug), but it leaves control-flow holes where union-only fragment cases can bypass rewrite logic, and union flattening still copies object fragments without recursive flattening/preserving nested typename behavior."
        },
        "edge_case_handling": {
          "score_0_4": 1,
          "confidence_0_1": 0.86,
          "rationale": "Edge cases around union-only nested abstract fragments are not fully handled due pre-existing interface/object-only gates, and nested object fragments inside union flattening are copied rather than normalized recursively."
        },
        "introduced_bug_risk": {
          "score_0_4": 2,
          "confidence_0_1": 0.84,
          "rationale": "New recursive union logic is substantial and partly correct, but early-return conditions still reflect pre-union assumptions, creating risk of silent non-rewrites in valid union-fragment shapes."
        },
        "maintainability_idioms": {
          "score_0_4": 3,
          "confidence_0_1": 0.74,
          "rationale": "The implementation is reasonably structured and adds tests, but logic remains split across legacy and new paths, with partially overlapping cleanup/flatten responsibilities that are harder to reason about than a single normalized rewrite path."
        }
      },
      "findings": [
        {
          "id": "f1",
          "dimension": "correctness",
          "severity": "major",
          "title": "Union-only selections can bypass union cleanup in union rewrite decision",
          "detail": "In `unionFieldSelectionNeedsRewrite`, the early return `if !selectionSetInfo.hasInlineFragmentsOnInterfaces { return false }` still executes before union fragment cleanup for cases with unions but no interface fragments, so union-only nested abstract fragments may not be rewritten.",
          "confidence_0_1": 0.94,
          "citations": [
            {
              "path": "v2/pkg/engine/plan/abstract_selection_rewriter.go",
              "side": "new",
              "start_line": 171,
              "end_line": 179,
              "anchor_kind": "diff",
              "head_sha": "ae9f57a"
            }
          ]
        },
        {
          "id": "f2",
          "dimension": "correctness",
          "severity": "major",
          "title": "Interface rewrite still treats union fragments as 'no fragments' in one gate",
          "detail": "The initial no-fragment gate in `interfaceFieldSelectionNeedsRewrite` still checks only interface/object flags. With only union inline fragments present, it can follow the non-rewrite path before union cleanup logic is reached.",
          "confidence_0_1": 0.9,
          "citations": [
            {
              "path": "v2/pkg/engine/plan/abstract_selection_rewriter.go",
              "side": "new",
              "start_line": 360,
              "end_line": 368,
              "anchor_kind": "diff",
              "head_sha": "ae9f57a"
            }
          ]
        },
        {
          "id": "f3",
          "dimension": "edge_case_handling",
          "severity": "major",
          "title": "Union flattening copies object fragments instead of recursively normalizing nested abstract content",
          "detail": "`flattenFragmentOnUnion` copies object fragment selections directly, which can preserve nested abstract fragments and miss normalization behavior expected for deeply nested union/interface-in-object structures.",
          "confidence_0_1": 0.8,
          "citations": [
            {
              "path": "v2/pkg/engine/plan/abstract_selection_rewriter.go",
              "side": "new",
              "start_line": 486,
              "end_line": 494,
              "anchor_kind": "diff",
              "head_sha": "ae9f57a"
            }
          ]
        }
      ],
      "overall": {
        "confidence_overall": 0.86,
        "summary": "The patch is directionally correct and likely passes intended core tests, but it does not fully match the intended rewrite semantics for union-inclusive edge paths; specifically, union-only fragment flows can skip rewrite, and nested abstract structures inside copied object fragments remain under-handled."
      },
      "notes": "The patch is directionally correct and likely passes intended core tests, but it does not fully match the intended rewrite semantics for union-inclusive edge paths; specifically, union-only fragment flows can skip rewrite, and nested abstract structures inside copied object fragments remain under-handled."
    },
    "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.41279805759516364,
      "flag": false,
      "severe_flag": false
    },
    "cost": {
      "status": "tokens_only",
      "token_status": "present",
      "cache_token_status": "present",
      "total_input_tokens": 1267725,
      "total_output_tokens": 12325,
      "total_tokens": 1280050,
      "uncached_input_tokens": 57485,
      "cache_read_input_tokens": 1210240,
      "cached_input_tokens": 1210240,
      "total_cost_usd": 3.417135,
      "token_source": "openai_cached_tokens_usage",
      "pricing_model_key": "gpt-5.3-codex",
      "pricing_mode": "cache_aware"
    }
  },
  "summary": {
    "task": {
      "matrix_status": "pass_with_warn",
      "tests_outcome": "pass",
      "tests_unknown_cause": null,
      "lane_report_lane": null,
      "lane_report_source": null,
      "lane_report_reasons": null,
      "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": "fail",
      "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": 1267725,
      "tb_total_output_tokens": 12325,
      "tb_total_tokens": 1280050,
      "tb_uncached_input_tokens": 57485,
      "tb_cache_creation_input_tokens": null,
      "tb_cache_read_input_tokens": 1210240,
      "tb_cached_input_tokens": 1210240,
      "token_status": "present",
      "cache_token_status": "present",
      "token_source": "openai_cached_tokens_usage",
      "task_cost": 3.417135,
      "cost_status": "present",
      "cost_pricing_mode": "cache_aware",
      "pricing_model_key": "gpt-5.3-codex",
      "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.41279805759516364,
      "footprint_risk_flag": false,
      "footprint_risk_severe_flag": false
    },
    "run": {
      "model": "gpt-5.3-codex",
      "requested_model": "gpt-5.3-codex",
      "run_id": "2026-02-28__13-38-10__gpt-5-3-codex",
      "passRate": 0.9310344827586207,
      "ciLow": 0.8275862068965517,
      "ciHigh": 1,
      "effectiveN": 29,
      "tier": 1,
      "validation_counts": {
        "fail_guardrail": 0,
        "fail_high_conf": 1,
        "fail_infra": 0,
        "fail_likely_equiv": 1,
        "fail_with_diag": 0,
        "missing": 0,
        "pass": 6,
        "pass_with_warn": 21
      }
    },
    "run_metadata": {
      "agent_name": "codex",
      "model_name": "gpt-5.3-codex",
      "start_time": "2026-02-28T13:38:12.733292+00:00",
      "end_time": "2026-02-28T14:43:03.470912+00:00",
      "commit_hash": "99ae882e59281de74856a3e7eeb1b7c986b466af",
      "accuracy": 0.896551724137931,
      "reasoning_effort": "medium"
    }
  },
  "evidence": {
    "task_detail": {
      "path": "validation/gpt-5-3-codex/flux-pr-1184/task_detail.v1.json",
      "exists": true
    },
    "trajectory": {
      "path": "validation/gpt-5-3-codex/flux-pr-1184/trajectory.v1.json",
      "exists": true,
      "non_empty": true,
      "size_bytes": 15176
    },
    "validation": {
      "path": "validation/gpt-5-3-codex/flux-pr-1184/validation.json",
      "exists": true,
      "non_empty": true,
      "size_bytes": 209488
    },
    "results": {
      "path": "runs/2026-02-28__13-38-10__gpt-5-3-codex/results.json",
      "exists": true,
      "non_empty": true,
      "size_bytes": 62248
    },
    "run_metadata": {
      "path": "runs/2026-02-28__13-38-10__gpt-5-3-codex/run_metadata.json",
      "exists": true,
      "non_empty": true,
      "size_bytes": 1634
    },
    "agent_patch": {
      "path": "runs/2026-02-28__13-38-10__gpt-5-3-codex/flux-pr-1184/flux-pr-1184.1-of-1.2026-02-28__13-38-10__gpt-5-3-codex/agent-logs/agent.patch",
      "exists": true,
      "non_empty": true,
      "size_bytes": 17482
    },
    "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": 23450,
        "sha256": "de907438d0c4ce9fc38e20cb9194ebbf86f18973dbbbb4a95457a9f4a80e022e",
        "required_for_rescue": true
      },
      "repo_tarball": {
        "exists": true,
        "non_empty": true,
        "size_bytes": 4281607,
        "sha256": "122b56b076b160f5c1ff920fbf5b851dae1433b3718824dc611b0858cb4a222e",
        "required_for_rescue": true
      },
      "agent_patch": {
        "path": "runs/2026-02-28__13-38-10__gpt-5-3-codex/flux-pr-1184/flux-pr-1184.1-of-1.2026-02-28__13-38-10__gpt-5-3-codex/agent-logs/agent.patch",
        "exists": true,
        "non_empty": true,
        "size_bytes": 17482,
        "sha256": "2849cf8199258e85a269040c52b9bdd479b27b763553fd8c3c73a3089f82c1d8",
        "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
      }
    ]
  }
}