{
  "schema": "varexis-index-free-publication-preview/1",
  "catalogue_version": "ice-12-tranche-72-v1",
  "route_id": "agentic_reviewed_claude_sdk_background_result_idle_boundary",
  "record_id": "VXI-EXT-ICE12-CLAUDE-SDK-BACKGROUND-RESULT-IDLE-BOUNDARY-01-v1",
  "question": "Does a Claude query result prove background subagent control traffic has finished?",
  "answer": "The Python SDK 0.2.160 changelog documents a query() fix for hooks, can_use_tool and SDK MCP servers: stdin stays open until the CLI reports idle through session_state_changed instead of closing too early around background subagent completion. The wait has a configurable ceiling, default ten minutes. Older CLIs without state events retain close-at-first-result behaviour.",
  "records": [
    {
      "record_id": "VXI-EXT-ICE12-CLAUDE-SDK-BACKGROUND-RESULT-IDLE-BOUNDARY-01-v1",
      "url": "/varexis-index/records/claude-sdk-background-result-idle-boundary.json",
      "content_sha256": "47af241e169dc16f48999d70f3eb21d43100ff827ab9fad8233c9a4059bae365",
      "evidence": {
        "schema": "varexis-public-evidence-record/0.3",
        "generated_at_utc": "2026-10-31T14:11:02.820224+00:00",
        "record_id": "VXI-EXT-ICE12-CLAUDE-SDK-BACKGROUND-RESULT-IDLE-BOUNDARY-01-v1",
        "record_kind": "external_reference",
        "title": "Claude SDK terminal result and background idle boundary",
        "system": "Anthropic",
        "evidence_family": "vendor_evidence_review",
        "index_status": "PUBLIC_SAFE_SOURCE_REVIEW",
        "evidence_state": "PRIMARY_DOCUMENTATION_REVIEW_ONLY",
        "canonical_question": "Does a Claude query result prove background subagent control traffic has finished?",
        "near_questions": [
          "Can Claude query return before background subagent control traffic ends?",
          "What does session_state_changed idle establish for Claude SDK queries?",
          "Does a background wait timeout prove a subagent did not act?",
          "Why does Claude SDK version matter when closing stdin after a result?"
        ],
        "supported_claims": [
          {
            "claim": "The Python SDK 0.2.160 changelog documents a query() fix for hooks, can_use_tool and SDK MCP servers: stdin stays open until the CLI reports idle through session_state_changed instead of closing too early around background subagent completion. The wait has a configurable ceiling, default ten minutes. Older CLIs without state events retain close-at-first-result behaviour.",
            "reliance": "DOCUMENTED_CAPABILITY_ONLY"
          }
        ],
        "not_demonstrated_claims": [
          "Refuse complete-background-execution or safe-retry conclusions from the first result or wait expiry alone. Reconcile task states, control-channel lifecycle and terminal evidence. CLI idle and successful business completion are different observations.",
          "Buyer implementation, live runtime enforcement, settled payment, verified deletion or certification are not established.",
          "No expanded capabilities or licences for existing INDEX executables."
        ],
        "public_summary": "The Python SDK 0.2.160 changelog documents a query() fix for hooks, can_use_tool and SDK MCP servers: stdin stays open until the CLI reports idle through session_state_changed instead of closing too early around background subagent completion. The wait has a configurable ceiling, default ten minutes. Older CLIs without state events retain close-at-first-result behaviour.",
        "related_record_ids": [],
        "source_review": {
          "source_type": "official_external_documentation",
          "source_title": "Claude Agent SDK for Python: changelog",
          "source_url": "https://raw.githubusercontent.com/anthropics/claude-agent-sdk-python/2146f9d8985513053e904b13200c8f744b36785a/CHANGELOG.md",
          "checked_on": "2026-10-31",
          "candidate_record_id": "VXI-EXT-ICE12-CLAUDE-SDK-BACKGROUND-RESULT-IDLE-BOUNDARY-01-v1",
          "candidate_record_sha256": "eb3f3701ddc943a3396e2582dac53cb3a38d6d07dca396e7a52c08b6c788b0b2",
          "method": "Primary documentation reviewed for the published bounded statement.",
          "deployment_tested_by_varexis": false,
          "revalidation": "The delivered snapshot preserves the review date shown. Recheck current primary documentation and deployment context before relying on present applicability; payment does not trigger fresh research."
        },
        "answer_policy": {
          "classification": "DOCUMENTED_WITH_DEPLOYMENT_BOUNDARY",
          "bounded_answer": "The Python SDK 0.2.160 changelog documents a query() fix for hooks, can_use_tool and SDK MCP servers: stdin stays open until the CLI reports idle through session_state_changed instead of closing too early around background subagent completion. The wait has a configurable ceiling, default ten minutes. Older CLIs without state events retain close-at-first-result behaviour.",
          "required_buyer_context": "Python SDK and CLI versions; query configuration and background-task events; first result, idle state, wait ceiling and follow-up outcome. Buyer deployment not inspected.",
          "missing_evidence": "A broader claim needs evidence matching the intended use. Payment does not upgrade the evidence state."
        },
        "private_boundary": "Raw logs, thresholds, private paths, source code, protected mechanisms and reconstruction-level details are excluded from public and paid delivery.",
        "decision_profile": {
          "schema": "varexis-vendor-evidence-review/1",
          "review_status": "documentation_review_only",
          "applicability_status": "Python SDK 0.2.160 documented query lifecycle fix; older CLI fallback remains explicitly excluded from the state-event behaviour. Review capture 2026-10-31. Buyer deployment not inspected.",
          "checked_on": "2026-10-31",
          "claim_to_check": "Does a Claude query result prove background subagent control traffic has finished?",
          "documented_statement": {
            "status": "documented",
            "statement": "The Python SDK 0.2.160 changelog documents a query() fix for hooks, can_use_tool and SDK MCP servers: stdin stays open until the CLI reports idle through session_state_changed instead of closing too early around background subagent completion. The wait has a configurable ceiling, default ten minutes. Older CLIs without state events retain close-at-first-result behaviour.",
            "source_ids": [
              "claude-changelog"
            ]
          },
          "review_inference": {
            "status": "review_inference",
            "statement": "Refuse complete-background-execution or safe-retry conclusions from the first result or wait expiry alone. Reconcile task states, control-channel lifecycle and terminal evidence. CLI idle and successful business completion are different observations. The existing MCP record concerns progress resetting request timeouts. This review concerns Python SDK stdin lifetime and CLI state events around background subagents, including older-CLI fallback. Operational review inference; no deployment outcome was observed.",
            "source_ids": [
              "claude-changelog"
            ]
          },
          "buyer_evidence_required": [
            "Python SDK and CLI versions",
            "query configuration and background-task events",
            "first result, idle state, wait ceiling and follow-up outcome"
          ],
          "review_condition": {
            "status": "varexis_review_policy",
            "statement": "Refuse complete-background-execution or safe-retry conclusions from the first result or wait expiry alone. Reconcile task states, control-channel lifecycle and terminal evidence. CLI idle and successful business completion are different observations."
          },
          "unknowns": "Buyer implementation, installed versions, effective authority, source completeness and actual business outcomes were not inspected.",
          "unknown_finding": {
            "status": "unknown",
            "statement": "No buyer deployment or transaction was observed."
          },
          "evidence_sources": [
            {
              "source_id": "claude-changelog",
              "url": "https://raw.githubusercontent.com/anthropics/claude-agent-sdk-python/2146f9d8985513053e904b13200c8f744b36785a/CHANGELOG.md",
              "final_url": "https://raw.githubusercontent.com/anthropics/claude-agent-sdk-python/2146f9d8985513053e904b13200c8f744b36785a/CHANGELOG.md",
              "captured_at_utc": "2026-10-31T14:07:23.073633+00:00",
              "status": 200,
              "content_type": "text/plain; charset=utf-8",
              "bytes": 61695,
              "sha256": "61dca0bff713bc9d750b4655dae3221e20f4af840e73ff62f08bffaa7bce4739",
              "title": "Claude Agent SDK for Python: changelog",
              "publisher": "Anthropic",
              "checked_on": "2026-10-31",
              "capture_status": "captured_primary_documentation",
              "claim_review_completed": true,
              "hash_basis": "Raw HTTP response bytes retained privately; not deployment attestation.",
              "version_context": "Python SDK repository revision 2146f9d8985513053e904b13200c8f744b36785a; per-record release/version limits apply.",
              "rights_disposition": "Original bounded paraphrase with source attribution. Full source capture remains private; no source code, examples or vendor documentation is redistributed. Anthropic repository MIT licensing and IETF source notices remain with original sources.",
              "reviewed_sections": [
                "0.2.170",
                "get_session_messages",
                "parallel",
                "parent_tool_use_id",
                "parent_agent_id",
                "updatedToolOutput",
                "0.2.137",
                "SessionStore",
                "settings.json",
                "strict_mcp_config",
                "0.2.160",
                "session_state_changed",
                "CLAUDE_CODE_PRINT_BG_WAIT_CEILING_MS"
              ]
            }
          ],
          "observed_deployment": false,
          "commercial_reliance_boundary": "Documentation supports only the stated boundary. Existing licensed checkers analyse supported supplied declarations locally; they do not inspect provider accounts, verify live behaviour, enforce decisions or certify compliance.",
          "paid_value": {
            "decision_context": "Refuse complete-background-execution or safe-retry conclusions from the first result or wait expiry alone. Reconcile task states, control-channel lifecycle and terminal evidence. CLI idle and successful business completion are different observations.",
            "free": "Complete source review, questions, provenance and limitations; free to read and save locally.",
            "single_request": "Unavailable for this publication-only record; historical saved retrieval is unchanged.",
            "evidence_receipt": "Unavailable for this publication-only record; no paid retrieval entitlement is added.",
            "excluded": [
              "Fresh source research",
              "Native provider integration or schema support",
              "Live inspection or runtime enforcement",
              "Payment settlement or verified deletion",
              "Certification or expanded licences"
            ],
            "integrity": "Hashes identify content versions; they do not prove factual truth or provide a signature."
          },
          "revalidation": {
            "trigger": "Recheck current primary documentation and applicable SDK, service and configuration before reliance. No ongoing monitoring is included.",
            "specific_watch": "0.2.160; session_state_changed; CLAUDE_CODE_PRINT_BG_WAIT_CEILING_MS"
          },
          "buyer_relevance": "Refuse complete-background-execution or safe-retry conclusions from the first result or wait expiry alone. Reconcile task states, control-channel lifecycle and terminal evidence. CLI idle and successful business completion are different observations.",
          "refusal_conditions": [
            "Refuse complete-background-execution or safe-retry conclusions from the first result or wait expiry alone. Reconcile task states, control-channel lifecycle and terminal evidence. CLI idle and successful business completion are different observations.",
            "Do not infer deployment conformance, authority or successful outcomes from source documentation."
          ],
          "decision_context": {
            "operator": "Developer or reviewer assessing agent execution and evidence",
            "scenario": "Does a Claude query result prove background subagent control traffic has finished?",
            "consequence": "Refuse complete-background-execution or safe-retry conclusions from the first result or wait expiry alone. Reconcile task states, control-channel lifecycle and terminal evidence. CLI idle and successful business completion are different observations.",
            "confidence": "Primary-documentation support only; buyer demand and deployment outcomes unestablished."
          },
          "novelty_review": {
            "candidate_id": "ICE12-07",
            "disposition": "new_distinct",
            "nearest_record_id": "VXI-EXT-ICE11-MCP-PROGRESS-RESET-MAXIMUM-DEADLINE-01-v1",
            "nearest_record_url": "/varexis-index/records/mcp-progress-reset-maximum-deadline.json",
            "nearest_record_sha256": "354f295e61f46727cc517edbac9fff94e2b143190ff9763620a8cdb92181bb1c",
            "material_distinction": "The existing MCP record concerns progress resetting request timeouts. This review concerns Python SDK stdin lifetime and CLI state events around background subagents, including older-CLI fallback.",
            "review_status": "Primary-source review and full adjacent-record comparison; no independent challenge claimed."
          },
          "optional_selection": {
            "guide_id": "workflow-completion-recovery",
            "guide_url": "/index-guides/workflow-completion-recovery",
            "guide_manifest": "/varexis-index/decision-guides.json",
            "checker": {
              "product_id": "agent-audit-coverage",
              "price_gbp_excluding_vat": 79,
              "purchase_url": "/index-access?route=agentic_pack_audit_coverage_v1",
              "licence_scope": "Existing separate internal-use licence; subscriptions do not include the executable.",
              "benefit": "Optional local analysis of supported supplied declarations only; no native Claude SDK or MCP integration is added."
            },
            "boundary": "This free record supports an evidence-selection decision. The existing checker does not diagnose these platforms, extract their logs or prove the documented condition occurred."
          },
          "exact_access": {
            "endpoint": "/mcp/catalogue",
            "tool": "get_publication_record",
            "arguments": {
              "record_id": "VXI-EXT-ICE12-CLAUDE-SDK-BACKGROUND-RESULT-IDLE-BOUNDARY-01-v1"
            },
            "record_url": "/varexis-index/records/claude-sdk-background-result-idle-boundary.json",
            "original_mcp_search": false,
            "paid_saved_retrieval": false
          }
        },
        "niche": {
          "niche_id": "ice12-audit",
          "label": "Audit, Provenance & Evidence Accountability",
          "classification_id": "audit",
          "classification_label": "Audit, Provenance & Evidence Accountability",
          "topic_id": "audit",
          "buyer_intent": "Refuse complete-background-execution or safe-retry conclusions from the first result or wait expiry alone. Reconcile task states, control-channel lifecycle and terminal evidence. CLI idle and successful business completion are different observations.",
          "comparison_role": "supplementary_discovery"
        },
        "paid_access_note": "The full published answer and boundaries are free. Paid access saves the selected route and source versions, with an unsigned receipt when purchased. Preview coverage before paying. Fresh research, bespoke assessment and protected evidence are excluded.",
        "service_route": {
          "request_guide": "/varexis-index/request.html",
          "request_workflow": "/varexis-index/request-workflow.json",
          "service_id": "single_request",
          "service_routes_url": "/varexis-index/service-routes.json",
          "payment_required": true,
          "availability_endpoint": "/api/index/capabilities",
          "operational_status": "AUTOMATIC_SERVICE_CAPABILITIES_GATED",
          "checkout_url": "/index-access"
        },
        "authority_boundary": "VAREXIS-INDEX informs evidence reliance. It does not provide advice, certification, deployment authority, security assurance, production approval, or guarantee.",
        "human_page": "/varexis-index/catalog.html#claude-sdk-background-result-idle-boundary",
        "machine_readable_record": "/varexis-index/records/claude-sdk-background-result-idle-boundary.json"
      }
    }
  ],
  "access": {
    "mode": "exact_http_only",
    "payment_required": false,
    "purchase_url": null,
    "mcp_preview_available": false,
    "paid_saved_retrieval_available": false,
    "natural_language_search_qualified": false
  },
  "boundary": "Catalogue additions are available free through the exact HTTP JSON links below. Enhanced natural-language discovery is not yet qualified for these records. They are outside MCP search, MCP preview and paid saved retrieval. No search qualification, executable capability or entitlement is added.",
  "content_sha256": "68fe14409b2482df9bf4fe72b9d2cbfa637739f38f2117aa2275f908388e6a71"
}
