{
  "before_service": {
    "ActiveState": "active",
    "ExecMainStartTimestamp": "Mon 2026-07-13 19:00:32 UTC",
    "MainPID": "2509826",
    "NRestarts": "0",
    "SubState": "running"
  },
  "changed_live_profile": false,
  "database_context_all_ok": true,
  "database_context_injection_count": 1,
  "database_context_trace": [
    {
      "compiled_response_available": true,
      "contract_ids": [
        "reply_budget",
        "source_intake"
      ],
      "contract_sha256": "f7a02f2ca2f714d5673e6c414d006f08e98daecab8786f6ca0913dba89865b75",
      "event": "pre_llm_call",
      "generated_at_utc": "2026-07-13T19:02:02.875892+00:00",
      "injected": true,
      "query_sha256": "a7c7f2307c595949eaa90b0ab40c363e56052d672af835b72af1099f5043da52",
      "source": "kb_tool.py --local context",
      "status": "ok"
    },
    {
      "compiled_response_enforced": true,
      "compiled_response_issues": [],
      "contract_ids": [
        "reply_budget",
        "source_intake"
      ],
      "delivered_response_sha256": "26c9aa1f627070bd491be148263a953f071885f3b923484f37609e88fc042728",
      "event": "post_llm_call",
      "fail_closed": false,
      "generated_at_utc": "2026-07-13T19:02:13.610686+00:00",
      "issues": [
        "missing_live_intake_ceiling"
      ],
      "query_sha256": "a7c7f2307c595949eaa90b0ab40c363e56052d672af835b72af1099f5043da52",
      "response_sha256": "f101e8ce421c6129a396e13db2b3b98c8f1a5dcee2c07fcf66014958a2b9fc7e",
      "status": "ok",
      "transformed": true,
      "validated": true
    }
  ],
  "database_response_transform_count": 1,
  "database_response_validation_all_ok": true,
  "database_response_validation_count": 1,
  "db_counts_after": {
    "kb_stage.kb_proposals": 27,
    "public.claim_edges": 4916,
    "public.claim_evidence": 4670,
    "public.claims": 1837,
    "public.sources": 4145
  },
  "db_counts_before": {
    "kb_stage.kb_proposals": 27,
    "public.claim_edges": 4916,
    "public.claim_evidence": 4670,
    "public.claims": 1837,
    "public.sources": 4145
  },
  "db_counts_changed": false,
  "generated_at_utc": "2026-07-13T19:01:59.215469+00:00",
  "handler": {
    "authorized": true,
    "session_key": "agent:main:telegram:group:-5146042086:9070919",
    "temp_profile": "/tmp/leo-direct-claim-handler-4yd02_g3/profile"
  },
  "harness_notes": [
    "Exact out-of-sample broad source-intake regression after merge 5dfcd32; no Telegram post and no apply authorization.",
    "The harness uses a temporary copy of the leoclean profile and does not post to Telegram.",
    "This proves handler-level live VPS GatewayRunner behavior, not human-visible Telegram delivery."
  ],
  "mode": "live_vps_gatewayrunner_temp_profile_source_intake_oos_post_repair",
  "mutates_kb_by_harness": false,
  "pass_runtime": true,
  "posted_to_telegram": false,
  "remote_report_path": "/tmp/leo-source-intake-oos-post-repair-c82763075ece.json",
  "remote_returncode": 0,
  "remote_run_id": "c82763075ece",
  "results": [
    {
      "claim_ceiling": "Live VPS GatewayRunner reply from temp leoclean profile; no Telegram post; no production DB apply authorized.",
      "database_context_trace": [
        {
          "compiled_response_available": true,
          "contract_ids": [
            "reply_budget",
            "source_intake"
          ],
          "contract_sha256": "f7a02f2ca2f714d5673e6c414d006f08e98daecab8786f6ca0913dba89865b75",
          "event": "pre_llm_call",
          "generated_at_utc": "2026-07-13T19:02:02.875892+00:00",
          "injected": true,
          "query_sha256": "a7c7f2307c595949eaa90b0ab40c363e56052d672af835b72af1099f5043da52",
          "source": "kb_tool.py --local context",
          "status": "ok"
        },
        {
          "compiled_response_enforced": true,
          "compiled_response_issues": [],
          "contract_ids": [
            "reply_budget",
            "source_intake"
          ],
          "delivered_response_sha256": "26c9aa1f627070bd491be148263a953f071885f3b923484f37609e88fc042728",
          "event": "post_llm_call",
          "fail_closed": false,
          "generated_at_utc": "2026-07-13T19:02:13.610686+00:00",
          "issues": [
            "missing_live_intake_ceiling"
          ],
          "query_sha256": "a7c7f2307c595949eaa90b0ab40c363e56052d672af835b72af1099f5043da52",
          "response_sha256": "f101e8ce421c6129a396e13db2b3b98c8f1a5dcee2c07fcf66014958a2b9fc7e",
          "status": "ok",
          "transformed": true,
          "validated": true
        }
      ],
      "dimension": "source_composition",
      "ended_at_utc": "2026-07-13T19:02:13.717112+00:00",
      "evidence_tier": "live_vps_gatewayrunner_temp_profile",
      "mutates_kb": false,
      "ok": true,
      "prompt": "If I send you a report here, can you learn it into your knowledge base and make it part of what you know? What actually happens right now?",
      "prompt_id": "SRC-OOS-01",
      "reply": "- VPS source-to-proposal staging is shipped for prepared inputs; autonomous chat attachment extraction is not shipped. Sending a report in chat does not by itself create a proposal or persistent knowledge. I can analyze content available in this conversation, but chat attachment capture and extraction are not connected to the staging command.\n\n- The live bounded path is to prepare and retain the artifact, UTF-8 extracted text, extraction manifest, URL or storage_path locator, and content hash, then run teleo-kb propose-source to validate and stage a pending_review proposal. It writes only kb_stage.kb_proposals. A chat label, filename, attachment reference, or source_ref is not provenance. Before review, deduplicate overlaps and retain exact excerpts, source caveats, uncertainty, and contradictory interpretations. Candidates are not canonical until reviewed and applied, and no public.sources or other public.* rows are created during staging.\n\n- Explicit approval begins before guarded canonical public.* apply, not before mechanical capture/staging. Receipt: locator and content hash, proposal ID/status, reviewed payload, applied_at, created row IDs, and postflight readback. Next proof-changing follow-up: prepare the three inputs, run teleo-kb propose-source, then review its typed candidates.",
      "started_at_utc": "2026-07-13T19:01:59.966980+00:00",
      "turn": 1
    }
  ],
  "service_before_after": {
    "after": {
      "ActiveState": "active",
      "ExecMainStartTimestamp": "Mon 2026-07-13 19:00:32 UTC",
      "MainPID": "2509826",
      "NRestarts": "0",
      "SubState": "running"
    },
    "before": {
      "ActiveState": "active",
      "ExecMainStartTimestamp": "Mon 2026-07-13 19:00:32 UTC",
      "MainPID": "2509826",
      "NRestarts": "0",
      "SubState": "running"
    },
    "unchanged_from_preexisting_live_readback": true
  },
  "source": {
    "chat_id": "-5146042086",
    "chat_name": "Leo",
    "chat_type": "group",
    "platform": "telegram",
    "user_id": "9070919",
    "user_name": "codex handler direct claim"
  },
  "source_report_path": "docs/reports/leo-working-state-20260709/telegram-handler-source-intake-oos-current.json",
  "temp_profile_removed": true
}
