{"record":{"id":"2b544c705aeb7473","repo":"abhigyanpatwari/GitNexus","slug":"bounded-graph-query-output-was-unavailable","errorCode":null,"errorMessage":"bounded graph-query output was unavailable","messagePattern":"bounded graph-query output was unavailable","errorType":"exception","errorClass":"SandboxError","httpStatus":null,"severity":"error","filePath":"eval/workflow_bench/sanitized_graph.py","lineNumber":268,"sourceCode":"    command = [\n        *prefix,\n        SANDBOX_NODE,\n        SANDBOX_GITNEXUS_ENTRYPOINT,\n        *arguments,\n    ]\n    result = run_managed(\n        command,\n        timeout=timeout,\n        env=_graph_environment(),\n        require_pid_namespace=True,\n        capture_stdout_bytes=(2 * 1024 * 1024 if capture_stdout else None),\n    )\n    if not result.ok:\n        raise ManagedProcessError(command, result)\n    if not capture_stdout:\n        return None\n    if result.stdout_capture is None or result.stdout_capture_overflow:\n        raise SandboxError(\"bounded graph-query output was unavailable\")\n    return result.stdout_capture\n\n\ndef _marker_predicate(variable: str) -> str:\n    literals = (\"'\" + marker.replace(\"\\\\\", \"\\\\\\\\\").replace(\"'\", \"\\\\'\") + \"'\" for marker in GRAPH_MARKERS)\n    return \" OR \".join(f\"CAST({variable} AS STRING) CONTAINS {literal}\" for literal in literals)\n\n\ndef _parse_empty_query(raw: bytes, *, label: str) -> None:\n    try:\n        payload = json.loads(raw.decode(\"utf-8\", errors=\"strict\"))\n    except (UnicodeError, json.JSONDecodeError) as exc:\n        raise SandboxError(f\"{label} did not return strict JSON\") from exc\n    if payload == []:\n        return\n    if isinstance(payload, dict) and payload.get(\"row_count\") == 0:\n        return\n    raise SandboxError(f\"{label} found recoverable benchmark harness references\")","sourceCodeStart":250,"sourceCodeEnd":286,"githubUrl":"https://github.com/abhigyanpatwari/GitNexus/blob/d540b00184d71a896261ee02670da9a92d59d8f7/eval/workflow_bench/sanitized_graph.py#L250-L286","documentation":"After a successful (result.ok) graph CLI run requested with capture_stdout=True, result.stdout_capture is None or result.stdout_capture_overflow is True. The 2 MiB capture buffer did not yield usable bytes, so the empty-result marker proof cannot be parsed.","triggerScenarios":"_run_graph_cli returns ok but the capture is missing (run_managed plumbing did not attach a capture) or overflowed: the LIMIT 1 cypher proof returned a row whose serialized form exceeded 2 MiB.","commonSituations":"Capture wiring regression after a run_managed change; a node carrying a multi-MiB property blob; a CLI emitting an error document > 2 MiB to stdout while still exiting 0.","solutions":["Inspect result.stdout_capture_overflow: if True, the row exceeded 2 MiB - investigate why a LIMIT-1 query returned that much (large property) and rule out harness leakage first.","If stdout_capture is None, verify run_managed was called with a non-None capture_stdout_bytes and that the runner actually captures stdout.","Increase capture_stdout_bytes in _run_graph_cli only after confirming the large output is legitimate and not a marker leak (error 568)."],"exampleFix":null,"handlingStrategy":"try-catch","validationCode":null,"typeGuard":null,"tryCatchPattern":"from workflow_bench.proposer_sandbox import SandboxError\n\ntry:\n    prepare_sanitized_graph(task, repo=repo, resolved_sha=sha, ...)\nexcept SandboxError as exc:\n    if \"bounded graph-query output was unavailable\" in str(exc):\n        log.error(\"stdout capture missing/overflowed - inspect run_managed capture wiring\")\n    raise","preventionTips":["Keep run_managed's capture_stdout_bytes >= the largest single LIMIT-1 row you expect.","Investigate any > 2 MiB row from a LIMIT-1 cypher proof as possible harness leakage before raising the cap.","Regression-test the capture path whenever changing run_managed."],"tags":["subprocess","sandbox","workflow-bench","io"],"backgroundTag":null,"analyzedSha":"d540b00184d71a896261ee02670da9a92d59d8f7","analyzedAt":"2026-08-12T19:50:25.132Z","schemaVersion":2},"datasetVersion":"2026-08-13T04:17:16.726Z"}