{"record":{"id":"2b0d6c193a5ea50b","repo":"abhigyanpatwari/GitNexus","slug":"transcript-artifacts-exceeds-the-global-evidence-l","errorCode":null,"errorMessage":"transcript_artifacts exceeds the global evidence limit of {MAX_TRANSCRIPT_ARTIFACTS}","messagePattern":"transcript_artifacts exceeds the global evidence limit of (.+?)","errorType":"exception","errorClass":"SandboxError","httpStatus":null,"severity":"error","filePath":"eval/workflow_bench/evolve.py","lineNumber":374,"sourceCode":"\n\ndef _preflight_transcript_artifacts(evidence: list[dict[str, Any]]) -> list[list[Any]]:\n    \"\"\"Bound every transcript reference before any evidence file is read.\"\"\"\n\n    artifacts_by_row: list[list[Any]] = []\n    seen_paths: set[str] = set()\n    total = 0\n    for artifacts_row in evidence:\n        artifacts = artifacts_row.get(\"transcript_artifacts\", [])\n        if not isinstance(artifacts, list):\n            raise SandboxError(\"transcript_artifacts must be a list\")\n        if len(artifacts) > MAX_TRANSCRIPT_ARTIFACTS_PER_ROW:\n            raise SandboxError(\n                f\"transcript_artifacts exceeds the per-row session limit of {MAX_TRANSCRIPT_ARTIFACTS_PER_ROW}\"\n            )\n        total += len(artifacts)\n        if total > MAX_TRANSCRIPT_ARTIFACTS:\n            raise SandboxError(f\"transcript_artifacts exceeds the global evidence limit of {MAX_TRANSCRIPT_ARTIFACTS}\")\n        for artifact in artifacts:\n            relative, _, _ = _transcript_artifact_metadata(artifact)\n            normalized = _normalized_transcript_artifact_path(relative)\n            if normalized in seen_paths:\n                raise SandboxError(f\"duplicate transcript artifact path: {normalized}\")\n            seen_paths.add(normalized)\n        artifacts_by_row.append(artifacts)\n    return artifacts_by_row\n\n\ndef _bound_transcript_artifact(root: Path, metadata: Any) -> str:\n    relative, expected_digest, expected_size = _transcript_artifact_metadata(metadata)\n\n    path = _results_artifact_path(root, relative, transcript=True)\n    try:\n        before = path.lstat()\n    except OSError as exc:\n        raise SandboxError(f\"transcript artifact is unavailable: {path}: {exc}\") from exc","sourceCodeStart":356,"sourceCodeEnd":392,"githubUrl":"https://github.com/abhigyanpatwari/GitNexus/blob/d540b00184d71a896261ee02670da9a92d59d8f7/eval/workflow_bench/evolve.py#L356-L392","documentation":"Raised by `_preflight_transcript_artifacts` when the running total of transcript artifacts across ALL evidence rows exceeds `MAX_TRANSCRIPT_ARTIFACTS` (=24 = 12 rows x 2). This bounds the total evidence a proposer can read.","triggerScenarios":"`proposer_evidence_entries` receives more than 24 transcript_artifacts total across the selected evidence rows. Since `select_evidence` already caps rows at MAX_EVIDENCE_ROWS (12), this only fires when rows are over-packed or the cap constants were lowered.","commonSituations":"Manually injecting extra rows beyond what select_evidence returns, or lowering MAX_EVIDENCE_ROWS without lowering the per-row cap proportionally so the product still fits.","solutions":["Let evidence flow only through select_evidence(), which caps rows at MAX_EVIDENCE_ROWS.","Reduce the per-row transcript count or drop the lowest-value rows so the total is <=24.","If you raised MAX_EVIDENCE_ROWS, raise MAX_TRANSCRIPT_ARTIFACTS to match (rows x per-row)."],"exampleFix":null,"handlingStrategy":"validation","validationCode":"total = sum(len(r.get('transcript_artifacts', [])) for r in evidence)\nif total > 24:\n    raise ValueError(f'transcript_artifacts total {total} exceeds global cap 24')","typeGuard":null,"tryCatchPattern":null,"preventionTips":["Always pass evidence through select_evidence; do not concatenate extra rows by hand.","Keep MAX_TRANSCRIPT_ARTIFACTS == MAX_EVIDENCE_ROWS * MAX_TRANSCRIPT_ARTIFACTS_PER_ROW if you change either."],"tags":["python","workflow-bench","evidence","limits","sandbox"],"backgroundTag":null,"analyzedSha":"d540b00184d71a896261ee02670da9a92d59d8f7","analyzedAt":"2026-08-12T19:50:25.132Z","schemaVersion":2},"datasetVersion":"2026-08-13T04:17:16.726Z"}