{
  "schema_version": "1.0",
  "runs": [
    {
      "id": "WFR-001",
      "schema_version": "1.0",
      "workflow_id": "session.start",
      "workflow_version": 1,
      "definition_hash": "84ce7a6cc9aa694e7d79ea287fc72dc11aae430d872a885ca70ba837e668657e",
      "plan_hash": "3ac96bd9bc6974dd538269c4c5f0c914e98110574189cd54d4ffbafb876b1a73",
      "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
      "inputs": {},
      "idempotency_key": "implementation-smoke",
      "status": "completed",
      "attempt": 1,
      "created_at": "2026-07-14T18:27:40Z",
      "updated_at": "2026-07-14T18:27:41Z",
      "receipts": [
        {
          "step_id": "config",
          "action": "config.audit",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "ec9766be9a5b4ad58127b6987b74519ee071c6c6c2b6ff6604f787cb6479e89e",
          "completed_at": "2026-07-14T18:27:40Z"
        },
        {
          "step_id": "state",
          "action": "state.consistency",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "a5c54b77e5cb31bf2a7af8170e447f87ea7caa7fcad42a5305718709a473528e",
          "completed_at": "2026-07-14T18:27:41Z"
        },
        {
          "step_id": "status",
          "action": "state.query",
          "input_hash": "a15231a2142a2a9a85355a8b9cbbccffe01a9c9c2c2fd8c2bc2987cdc481564a",
          "output_hash": "621b305eff564264e9efa2dc91b997612177bbd2b2422fd56414df261f38dff0",
          "completed_at": "2026-07-14T18:27:41Z"
        }
      ],
      "steps": [
        {
          "id": "config",
          "action": "config.audit",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-14T18:27:40Z",
          "output": {
            "status": "ok",
            "summary": {
              "settings": 170,
              "mutable": 161,
              "read_only_or_managed": 9,
              "unclassified": 0,
              "unknown": 0,
              "invalid": 0,
              "missing_using_defaults": 0
            },
            "unclassified_keys": [],
            "unknown_keys": [],
            "invalid_values": [],
            "missing_using_defaults": []
          },
          "output_hash": "ec9766be9a5b4ad58127b6987b74519ee071c6c6c2b6ff6604f787cb6479e89e",
          "completed_at": "2026-07-14T18:27:40Z"
        },
        {
          "id": "state",
          "action": "state.consistency",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-14T18:27:40Z",
          "output": {
            "status": "ok",
            "repo_root": "D:\\Projects\\prd-plugin",
            "summary": {
              "errors": 0,
              "warnings": 0,
              "infos": 0
            },
            "canonical_ids": {
              "CHG": [
                "CHG-001",
                "CHG-002",
                "CHG-003",
                "CHG-004",
                "CHG-005",
                "CHG-006",
                "CHG-007",
                "CHG-008",
                "CHG-009",
                "CHG-010",
                "CHG-011",
                "CHG-012",
                "CHG-013",
                "CHG-014",
                "CHG-015",
                "CHG-016",
                "CHG-017",
                "CHG-018",
                "CHG-019",
                "CHG-020",
                "CHG-021",
                "CHG-022",
                "CHG-023",
                "CHG-024",
                "CHG-025",
                "CHG-026",
                "CHG-027",
                "CHG-028",
                "CHG-029",
                "CHG-030",
                "CHG-031",
                "CHG-032",
                "CHG-033",
                "CHG-034",
                "CHG-035",
                "CHG-036",
                "CHG-037",
                "CHG-038",
                "CHG-039",
                "CHG-040",
                "CHG-041",
                "CHG-042",
                "CHG-043",
                "CHG-044",
                "CHG-045",
                "CHG-046",
                "CHG-047",
                "CHG-048",
                "CHG-049",
                "CHG-050",
                "CHG-051",
                "CHG-052",
                "CHG-053",
                "CHG-054",
                "CHG-055",
                "CHG-056",
                "CHG-057",
                "CHG-058",
                "CHG-059",
                "CHG-060",
                "CHG-061",
                "CHG-062",
                "CHG-063",
                "CHG-064",
                "CHG-065",
                "CHG-066",
                "CHG-067",
                "CHG-068",
                "CHG-069",
                "CHG-070",
                "CHG-071",
                "CHG-072"
              ],
              "TRK": [
                "TRK-001",
                "TRK-002",
                "TRK-003",
                "TRK-004",
                "TRK-005",
                "TRK-006",
                "TRK-007",
                "TRK-008",
                "TRK-009",
                "TRK-010",
                "TRK-011",
                "TRK-012",
                "TRK-013",
                "TRK-014",
                "TRK-015",
                "TRK-016",
                "TRK-017",
                "TRK-018",
                "TRK-019",
                "TRK-020",
                "TRK-021",
                "TRK-022",
                "TRK-023",
                "TRK-024",
                "TRK-025",
                "TRK-026",
                "TRK-027",
                "TRK-028",
                "TRK-029",
                "TRK-030",
                "TRK-031",
                "TRK-032",
                "TRK-033",
                "TRK-034",
                "TRK-035",
                "TRK-036",
                "TRK-037",
                "TRK-038",
                "TRK-039",
                "TRK-040",
                "TRK-041",
                "TRK-042",
                "TRK-043",
                "TRK-044",
                "TRK-045",
                "TRK-046",
                "TRK-047",
                "TRK-048",
                "TRK-049",
                "TRK-050",
                "TRK-051",
                "TRK-052",
                "TRK-053",
                "TRK-054",
                "TRK-055",
                "TRK-056",
                "TRK-057",
                "TRK-058",
                "TRK-059",
                "TRK-060",
                "TRK-061",
                "TRK-062",
                "TRK-063",
                "TRK-064",
                "TRK-065",
                "TRK-066",
                "TRK-067",
                "TRK-068",
                "TRK-069",
                "TRK-070",
                "TRK-071",
                "TRK-072",
                "TRK-073",
                "TRK-074",
                "TRK-075",
                "TRK-076",
                "TRK-077",
                "TRK-078",
                "TRK-079",
                "TRK-080",
                "TRK-081",
                "TRK-082",
                "TRK-083",
                "TRK-084",
                "TRK-085",
                "TRK-086",
                "TRK-087",
                "TRK-088",
                "TRK-089",
                "TRK-090",
                "TRK-091",
                "TRK-092",
                "TRK-093",
                "TRK-094",
                "TRK-095",
                "TRK-096",
                "TRK-097",
                "TRK-098",
                "TRK-099",
                "TRK-100",
                "TRK-101",
                "TRK-102",
                "TRK-103",
                "TRK-104",
                "TRK-105"
              ],
              "MEM": [
                "MEM-001"
              ],
              "OBS": [],
              "SES": [
                "SES-001"
              ]
            },
            "findings": []
          },
          "output_hash": "a5c54b77e5cb31bf2a7af8170e447f87ea7caa7fcad42a5305718709a473528e",
          "completed_at": "2026-07-14T18:27:41Z"
        },
        {
          "id": "status",
          "action": "state.query",
          "status": "completed",
          "resolved_input_hash": "a15231a2142a2a9a85355a8b9cbbccffe01a9c9c2c2fd8c2bc2987cdc481564a",
          "started_at": "2026-07-14T18:27:41Z",
          "output": {
            "repo_root": "D:\\Projects\\prd-plugin",
            "autonomy_level": "autonomous",
            "requests_by_status": {
              "accepted": 2,
              "deferred": 1,
              "implemented": 72,
              "proposed": 2,
              "rejected": 1
            },
            "active_tracking": [
              "TRK-101",
              "TRK-102",
              "TRK-103",
              "TRK-104",
              "TRK-105"
            ],
            "tracking_branches": [],
            "tracking_branch_counts": {},
            "tracking_branch_errors": [],
            "open_health": [
              "HLT-002",
              "HLT-014"
            ],
            "stale_count": 0,
            "skill_usage": {
              "project-decision-policy": 1,
              "project-request-intake": 1,
              "project-test-driven-implementation": 1,
              "project-verification-before-completion": 1,
              "project-llm-wiki": 1
            },
            "wiki_backfill_pending": false,
            "version_update": null
          },
          "output_hash": "621b305eff564264e9efa2dc91b997612177bbd2b2422fd56414df261f38dff0",
          "completed_at": "2026-07-14T18:27:41Z"
        }
      ],
      "completed_at": "2026-07-14T18:27:41Z"
    },
    {
      "id": "WFR-002",
      "schema_version": "1.0",
      "workflow_id": "hub.release",
      "workflow_version": 1,
      "definition_hash": "b8efcc9726266d73719719856dab279ace8f4d21be7b2d01b4f5f08bd3eacc1b",
      "plan_hash": "45a6765f24486f3d1e889f80a653564254c97a7e400033444b676e8ed8cdecb8",
      "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
      "inputs": {},
      "idempotency_key": "release-0.15.0",
      "status": "completed",
      "attempt": 4,
      "created_at": "2026-07-14T19:10:21Z",
      "updated_at": "2026-07-14T19:18:52Z",
      "receipts": [
        {
          "step_id": "diff",
          "action": "git.diff_check",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "11c11db30f4b3f6c758722ba3e27eea08145b7d212f6a157451e364b48475280",
          "completed_at": "2026-07-14T19:10:21Z"
        },
        {
          "step_id": "config",
          "action": "config.audit",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "52f4670d3af925e27fa87b707174b4d88bc7c6d7cc17f7accb4003b9d0b94665",
          "completed_at": "2026-07-14T19:10:21Z"
        },
        {
          "step_id": "state",
          "action": "state.consistency",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "5a1c6e5246defb1b6b6b90ff734db95bece2886b408ab112ed9b8e67222d5568",
          "completed_at": "2026-07-14T19:10:22Z"
        },
        {
          "step_id": "workflow_audit",
          "action": "process.fixed",
          "input_hash": "edf19b269a54d72753f1abc2b8ffcb810c2b7bc377cee7e1698c939f17e0be94",
          "output_hash": "4a027f0e3fa046c1f1d43f2e8fdce5d2b931ddfc59b2306966854d46d29142ca",
          "completed_at": "2026-07-14T19:10:22Z"
        },
        {
          "step_id": "suite",
          "action": "process.fixed",
          "input_hash": "954e575e48145853f5681eda189186c95a053267158fae669114320f2e53794a",
          "output_hash": "3f1e16a1657a4e24a2f2e1becb3536cdba83166c65838e9296561a7d22c3b199",
          "completed_at": "2026-07-14T19:17:00Z"
        },
        {
          "step_id": "release",
          "action": "process.fixed",
          "input_hash": "1e5b0c18d93eb4c2248f9a00adbd438e52f3ef02137477fb8376c69cfe86fc9b",
          "output_hash": "3754992af3f0d08f4cf8e73c84805088feb9cd865ff95f1e55d60bbaedbadd1e",
          "completed_at": "2026-07-14T19:17:01Z"
        },
        {
          "step_id": "gaps",
          "action": "process.fixed",
          "input_hash": "577241909238eeb55683f89d2d2216648dad2e3127397993e22493829a1307a4",
          "output_hash": "5b9b20e8956d0470d617b53b642cf2bcac3573686254737fd662569311627680",
          "completed_at": "2026-07-14T19:17:01Z"
        },
        {
          "step_id": "package",
          "action": "process.fixed",
          "input_hash": "06cd12e1f3db3d985f9150520afa60f288297ff0ca01a8e813e9bb6291aa8836",
          "output_hash": "c4bee995f146f89e4085fb1a37ff69ff0a7f346e66ab9f8477a124ffb79775f6",
          "completed_at": "2026-07-14T19:18:52Z"
        },
        {
          "step_id": "gate",
          "action": "state.gate",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "a705b176b049df02348354c23988d51f616670b7352ad410321cbe0577edf053",
          "completed_at": "2026-07-14T19:18:52Z"
        }
      ],
      "steps": [
        {
          "id": "diff",
          "action": "git.diff_check",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-14T19:10:21Z",
          "output": {
            "passed": true
          },
          "output_hash": "11c11db30f4b3f6c758722ba3e27eea08145b7d212f6a157451e364b48475280",
          "completed_at": "2026-07-14T19:10:21Z"
        },
        {
          "id": "config",
          "action": "config.audit",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-14T19:10:21Z",
          "output": {
            "status": "ok",
            "summary": {
              "settings": 171,
              "mutable": 162,
              "read_only_or_managed": 9,
              "unclassified": 0,
              "unknown": 0,
              "invalid": 0,
              "missing_using_defaults": 0
            },
            "unclassified_keys": [],
            "unknown_keys": [],
            "invalid_values": [],
            "missing_using_defaults": []
          },
          "output_hash": "52f4670d3af925e27fa87b707174b4d88bc7c6d7cc17f7accb4003b9d0b94665",
          "completed_at": "2026-07-14T19:10:21Z"
        },
        {
          "id": "state",
          "action": "state.consistency",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-14T19:10:21Z",
          "output": {
            "status": "ok",
            "repo_root": "D:\\Projects\\prd-plugin",
            "summary": {
              "errors": 0,
              "warnings": 0,
              "infos": 0
            },
            "findings": []
          },
          "output_hash": "5a1c6e5246defb1b6b6b90ff734db95bece2886b408ab112ed9b8e67222d5568",
          "completed_at": "2026-07-14T19:10:22Z"
        },
        {
          "id": "workflow_audit",
          "action": "process.fixed",
          "status": "completed",
          "resolved_input_hash": "edf19b269a54d72753f1abc2b8ffcb810c2b7bc377cee7e1698c939f17e0be94",
          "started_at": "2026-07-14T19:10:22Z",
          "output": {
            "operation": "workflow_chml_audit",
            "command": [
              "C:\\Users\\marku\\AppData\\Local\\Python\\pythoncore-3.14-64\\python.exe",
              "scripts/workflow_chml_audit.py",
              "--repo-root",
              ".",
              "--format",
              "json"
            ],
            "exit_code": 0,
            "stdout": "{\n  \"status\": \"ok\",\n  \"repo_root\": \"D:\\\\Projects\\\\prd-plugin\",\n  \"summary\": {\n    \"critical\": 0,\n    \"high\": 0,\n    \"medium\": 0,\n    \"low\": 0\n  },\n  \"findings\": []\n}\n",
            "stderr": ""
          },
          "output_hash": "4a027f0e3fa046c1f1d43f2e8fdce5d2b931ddfc59b2306966854d46d29142ca",
          "completed_at": "2026-07-14T19:10:22Z"
        },
        {
          "id": "suite",
          "action": "process.fixed",
          "status": "completed",
          "resolved_input_hash": "954e575e48145853f5681eda189186c95a053267158fae669114320f2e53794a",
          "started_at": "2026-07-14T19:16:01Z",
          "output": {
            "operation": "local_workflow_check",
            "command": [
              "C:\\Users\\marku\\AppData\\Local\\Python\\pythoncore-3.14-64\\python.exe",
              "scripts/local_workflow_check.py"
            ],
            "exit_code": 0,
            "stdout": "Structured file validation passed.\n$ C:\\Users\\marku\\AppData\\Local\\Python\\pythoncore-3.14-64\\python.exe -m unittest discover -s tests -v\n{\n  \"status\": \"fail\",\n  \"repo_root\": \"C:\\\\Users\\\\marku\\\\AppData\\\\Local\\\\Temp\\\\tmp1dvv4fro\",\n  \"summary\": {\n    \"errors\": 1,\n    \"warnings\": 0\n  },\n  \"findings\": [\n    {\n      \"check\": \"duplicate_id\",\n      \"severity\": \"error\",\n      \"summary\": \"Duplicate id REQ-002 in .prd_plugin/state/requests.json.\",\n      \"required_action\": \"Renumber one record so REQ-002 is unique. Allocate IDs with the MCP tool prd_next_id (or the record tools like prd_open_goal) instead of hand-computing them.\"\n    }\n  ]\n}\nautonomy_level set to guided\nautonomy_level set to autonomous\nPRD Plugin: preserving your existing state/config; refreshing plugin files only. Re-run with --yes to also reset state to skeleton defaults.\nPRD Plugin: preserving your existing state/config; refreshing plugin files only. Re-run with --yes to also reset state to skeleton defaults.\nPRD Plugin: preserving your existing state/config; refreshing plugin files only. Re-run with --yes to also reset state to skeleton defaults.\n{\"decision\": \"block\", \"reason\": \"Autonomous run-until-done: goal TRK-105 is still active. Continue with the next incomplete step toward it \\u2014 do not stop to ask 'shall I proceed?'. If you genuinely need the user (consent floor: push/merge/publish/secrets, or a real blocker), create the file .prd_plugin/local/autonomy-pause with a one-line reason and then stop; the guard will let you. Otherwise keep going.\"}\n$ C:\\Users\\marku\\AppData\\Local\\Python\\pythoncore-3.14-64\\python.exe scripts/gap_audit.py --target-version 0.15.0\n# PRD Plugin Gap Audit\n\nTarget version: `0.15.0`\n\n## Findings\n\n- None\n$ C:\\Users\\marku\\AppData\\Local\\Python\\pythoncore-3.14-64\\python.exe scripts/version_advice.py --installed-repo . --format json --output request-report/version-advice.json\n$ C:\\Users\\marku\\AppData\\Local\\Python\\pythoncore-3.14-64\\python.exe scripts/release_check.py --output request-report/release-hygiene.md\n$ C:\\Users\\marku\\AppData\\Local\\Python\\pythoncore-3.14-64\\python.exe scripts/prd_doctor.py --repo-root . --format json --output request-report/prd-doctor.json\n$ C:\\Users\\marku\\AppData\\Local\\Python\\pythoncore-3.14-64\\python.exe scripts/state_consistency_check.py --repo-root . --format json --output request-report/state-consistency.json\n$ C:\\Users\\marku\\AppData\\Local\\Python\\pythoncore-3.14-64\\python.exe scripts/prd_install_skills.py --repo-root . --dry-run\n{\n  \"status\": \"dry_run\",\n  \"target_agent\": \"codex\",\n  \"targets\": [\n    {\n      \"agent\": \"codex\",\n      \"target\": \".agents\\\\skills\",\n      \"would_install\": [\n        \"project-architecture\",\n        \"project-blocker-resolution\",\n        \"project-brainstorm\",\n        \"project-change-request\",\n        \"project-code-review\",\n        \"project-decision-ledger\",\n        \"project-decision-policy\",\n        \"project-deterministic-workflows\",\n        \"project-document-branch\",\n        \"project-evidence\",\n        \"project-evidence-ledger\",\n        \"project-git-workflow\",\n        \"project-health\",\n        \"project-implementation-plan\",\n        \"project-llm-wiki\",\n        \"project-local-integration\",\n        \"project-memory\",\n        \"project-planning-lifecycle\",\n        \"project-prd\",\n        \"project-prd-plugin-setup\",\n        \"project-request-intake\",\n        \"project-session-close\",\n        \"project-systematic-debugging\",\n        \"project-test-driven-implementation\",\n        \"project-traceability-review\",\n        \"project-traceability-sync\",\n        \"project-verification-before-completion\"\n      ],\n      \"would_remove\": [\n        \"project-fold-it-in\",\n        \"project-self-audit\"\n      ]\n    }\n  ],\n  \"installed_count\": 0,\n  \"target\": \".agents\\\\skills\",\n  \"installed\": [],\n  \"removed\": [],\n  \"would_install\": [\n    \"project-architecture\",\n    \"project-blocker-resolution\",\n    \"project-brainstorm\",\n    \"project-change-request\",\n    \"project-code-review\",\n    \"project-decision-ledger\",\n    \"project-decision-policy\",\n    \"project-deterministic-workflows\",\n    \"project-document-branch\",\n    \"project-evidence\",\n    \"project-evidence-ledger\",\n    \"project-git-workflow\",\n    \"project-health\",\n    \"project-implementation-plan\",\n    \"project-llm-wiki\",\n    \"project-local-integration\",\n    \"project-memory\",\n    \"project-planning-lifecycle\",\n    \"project-prd\",\n    \"project-prd-plugin-setup\",\n    \"project-request-intake\",\n    \"project-session-close\",\n    \"project-systematic-debugging\",\n    \"project-test-driven-implementation\",\n    \"project-traceability-review\",\n    \"project-traceability-sync\",\n    \"project-verification-before-completion\"\n  ],\n  \"would_remove\": [\n    \"project-fold-it-in\",\n    \"project-self-audit\"\n  ]\n}\n$ C:\\Users\\marku\\AppData\\Local\\Python\\pythoncore-3.14-64\\python.exe scripts/request_report.py --config .prd_plugin/config.json --format markdown --output request-report/request-report.md\n$ C:\\Users\\marku\\AppData\\Local\\Python\\pythoncore-3.14-64\\python.exe scripts/request_report.py --config .prd_plugin/config.json --format json --output request-report/request-report.json\n$ C:\\Users\\marku\\AppData\\Local\\Python\\pythoncore-3.14-64\\python.exe scripts/message_check.py --config .prd_plugin/config.json --format json --output request-report/message-check.json\nLocal workflow check completed.\n",
            "stderr": "_records_and_excludes_local) ... ok\ntest_snapshot_fails_instead_of_silently_truncating (test_substrate_adapter.AdapterContractTests.test_snapshot_fails_instead_of_silently_truncating) ... ok\ntest_utcp_substrate_action_emits_verification_plan (test_substrate_adapter.AdapterContractTests.test_utcp_substrate_action_emits_verification_plan) ... ok\ntest_workflow_skills_route_execution_through_ai_collab_adapter (test_substrate_adapter.AdapterContractTests.test_workflow_skills_route_execution_through_ai_collab_adapter) ... ok\ntest_all_shipped_configs_are_disabled_by_default_and_identical (test_substrate_adapter.ConfigContractTests.test_all_shipped_configs_are_disabled_by_default_and_identical) ... ok\ntest_cli_registry_validates_modes_and_capability_allowlist (test_substrate_adapter.ConfigContractTests.test_cli_registry_validates_modes_and_capability_allowlist) ... ok\ntest_registry_exposes_substrate_master_mode_and_capabilities (test_substrate_adapter.ConfigContractTests.test_registry_exposes_substrate_master_mode_and_capabilities) ... ok\ntest_adapted_skills_are_downstream_runtime_and_required (test_superpowers_adapted_skills.SuperpowersAdaptedSkillsTests.test_adapted_skills_are_downstream_runtime_and_required) ... ok\ntest_adapted_skills_are_installed_to_repo_local_and_skeleton (test_superpowers_adapted_skills.SuperpowersAdaptedSkillsTests.test_adapted_skills_are_installed_to_repo_local_and_skeleton) ... ok\ntest_adapted_superpowers_skills_exist_with_attribution_and_prd_ids (test_superpowers_adapted_skills.SuperpowersAdaptedSkillsTests.test_adapted_superpowers_skills_exist_with_attribution_and_prd_ids) ... ok\ntest_downstream_skills_do_not_direct_agents_to_run_hub_only_scripts (test_superpowers_adapted_skills.SuperpowersAdaptedSkillsTests.test_downstream_skills_do_not_direct_agents_to_run_hub_only_scripts) ... ok\ntest_notice_records_superpowers_origin (test_superpowers_adapted_skills.SuperpowersAdaptedSkillsTests.test_notice_records_superpowers_origin) ... ok\ntest_skeleton_skill_copies_exist (test_superpowers_adapted_skills.SuperpowersAdaptedSkillsTests.test_skeleton_skill_copies_exist) ... ok\ntest_specific_adaptations_keep_strong_method_and_prd_state_hooks (test_superpowers_adapted_skills.SuperpowersAdaptedSkillsTests.test_specific_adaptations_keep_strong_method_and_prd_state_hooks) ... ok\ntest_verification_guidance_uses_current_change_scope_not_unconditional_full_suite (test_superpowers_adapted_skills.SuperpowersAdaptedSkillsTests.test_verification_guidance_uses_current_change_scope_not_unconditional_full_suite) ... ok\ntest_extracts_affected_paths (test_telemetry.CaptureTurnRecordsTests.test_extracts_affected_paths) ... ok\ntest_extracts_referenced_ids (test_telemetry.CaptureTurnRecordsTests.test_extracts_referenced_ids) ... ok\ntest_marks_failed_tool (test_telemetry.CaptureTurnRecordsTests.test_marks_failed_tool) ... ok\ntest_one_record_per_tool_call (test_telemetry.CaptureTurnRecordsTests.test_one_record_per_tool_call) ... ok\ntest_turn_index_increments_per_prompt (test_telemetry.CaptureTurnRecordsTests.test_turn_index_increments_per_prompt) ... ok\ntest_preserves_benign_args (test_telemetry.RedactArgsTests.test_preserves_benign_args) ... ok\ntest_redacts_credential (test_telemetry.RedactArgsTests.test_redacts_credential) ... ok\ntest_redacts_key (test_telemetry.RedactArgsTests.test_redacts_key) ... ok\ntest_redacts_local_path (test_telemetry.RedactArgsTests.test_redacts_local_path) ... ok\ntest_redacts_nested (test_telemetry.RedactArgsTests.test_redacts_nested) ... ok\ntest_redacts_password (test_telemetry.RedactArgsTests.test_redacts_password) ... ok\ntest_redacts_secret (test_telemetry.RedactArgsTests.test_redacts_secret) ... ok\ntest_redacts_token (test_telemetry.RedactArgsTests.test_redacts_token) ... ok\ntest_scenario (test_telemetry.SyntheticFiveTurnScenarioTests.test_scenario) ... ok\ntest_required_fields_present (test_telemetry.TelemetryRecordSchemaTests.test_required_fields_present) ... ok\ntest_to_dict_is_json_serializable (test_telemetry.TelemetryRecordSchemaTests.test_to_dict_is_json_serializable) ... ok\ntest_appends_to_existing_file (test_telemetry.WriteTelemetryJsonlTests.test_appends_to_existing_file) ... ok\ntest_load_roundtrip (test_telemetry.WriteTelemetryJsonlTests.test_load_roundtrip) ... ok\ntest_load_skips_malformed_lines (test_telemetry.WriteTelemetryJsonlTests.test_load_skips_malformed_lines) ... ok\ntest_writes_one_line_per_record (test_telemetry.WriteTelemetryJsonlTests.test_writes_one_line_per_record) ... ok\ntest_base_ref_is_resolved_locally_and_option_like_values_are_rejected (test_test_scope.ChangedFileTests.test_base_ref_is_resolved_locally_and_option_like_values_are_rejected) ... ok\ntest_collects_staged_unstaged_and_untracked_without_a_remote (test_test_scope.ChangedFileTests.test_collects_staged_unstaged_and_untracked_without_a_remote) ... ok\ntest_rejects_absolute_or_parent_traversal_changed_paths (test_test_scope.ChangedFileTests.test_rejects_absolute_or_parent_traversal_changed_paths) ... ok\ntest_direct_json_cannot_disable_the_safe_full_fallback (test_test_scope.PlanTests.test_direct_json_cannot_disable_the_safe_full_fallback) ... ok\ntest_direct_json_cannot_remove_mandatory_full_suite_triggers (test_test_scope.PlanTests.test_direct_json_cannot_remove_mandatory_full_suite_triggers) ... ok\ntest_disabled_or_unavailable_executor_requires_full_verification (test_test_scope.PlanTests.test_disabled_or_unavailable_executor_requires_full_verification) ... ok\ntest_narrow_change_emits_deterministic_ai_collab_requests (test_test_scope.PlanTests.test_narrow_change_emits_deterministic_ai_collab_requests) ... ok\ntest_no_changes_requires_no_verification_unless_release (test_test_scope.PlanTests.test_no_changes_requires_no_verification_unless_release) ... ok\ntest_plan_tells_runtime_to_fallback_on_degraded_or_unmapped_results (test_test_scope.PlanTests.test_plan_tells_runtime_to_fallback_on_degraded_or_unmapped_results) ... ok\ntest_release_core_and_excessive_changes_require_full_verification (test_test_scope.PlanTests.test_release_core_and_excessive_changes_require_full_verification) ... ok\ntest_document_branch_skill_defines_parallel_tracking_profile_everywhere (test_tracking_branch_policy.TrackingBranchPolicyTests.test_document_branch_skill_defines_parallel_tracking_profile_everywhere) ... ok\ntest_every_direct_tracking_writer_is_parallel_worker_aware_everywhere (test_tracking_branch_policy.TrackingBranchPolicyTests.test_every_direct_tracking_writer_is_parallel_worker_aware_everywhere) ... ok\ntest_memory_and_git_skills_keep_workers_off_canonical_state_everywhere (test_tracking_branch_policy.TrackingBranchPolicyTests.test_memory_and_git_skills_keep_workers_off_canonical_state_everywhere) ... ok\ntest_narrative_branch_manifest_template_is_installed (test_tracking_branch_policy.TrackingBranchPolicyTests.test_narrative_branch_manifest_template_is_installed) ... ok\ntest_user_docs_explain_branch_then_promote_workflow (test_tracking_branch_policy.TrackingBranchPolicyTests.test_user_docs_explain_branch_then_promote_workflow) ... ok\ntest_worker_launch_contract_is_shipped_to_downstream_hosts (test_tracking_branch_policy.TrackingBranchPolicyTests.test_worker_launch_contract_is_shipped_to_downstream_hosts) ... ok\ntest_empty_repo_safe (test_tracking_commands.PrdStatusTests.test_empty_repo_safe) ... ok\ntest_legacy_and_open_statuses_are_not_hidden (test_tracking_commands.PrdStatusTests.test_legacy_and_open_statuses_are_not_hidden) ... ok\ntest_null_status_and_legacy_health_do_not_break_status (test_tracking_commands.PrdStatusTests.test_null_status_and_legacy_health_do_not_break_status) ... ok\ntest_summarizes_state (test_tracking_commands.PrdStatusTests.test_summarizes_state) ... ok\ntest_tracking_branches_are_visible_without_reading_branch_files (test_tracking_commands.PrdStatusTests.test_tracking_branches_are_visible_without_reading_branch_files) ... ok\ntest_commands_exist_in_all_locations (test_tracking_commands.TrackingCommandFileTests.test_commands_exist_in_all_locations) ... ok\ntest_commands_invoke_the_right_workflow (test_tracking_commands.TrackingCommandFileTests.test_commands_invoke_the_right_workflow) ... ok\ntest_prd_status_is_downstream_runtime (test_tracking_commands.TrackingCommandFileTests.test_prd_status_is_downstream_runtime) ... ok\ntest_catalog_describes_latency_and_effective_dependencies (test_unified_config.CatalogTests.test_catalog_describes_latency_and_effective_dependencies) ... ok\ntest_every_shipped_leaf_is_classified (test_unified_config.CatalogTests.test_every_shipped_leaf_is_classified) ... ok\ntest_inventory_separates_non_persistent_control_planes (test_unified_config.CatalogTests.test_inventory_separates_non_persistent_control_planes) ... ok\ntest_inventory_audit_describe_and_profile_commands_emit_json (test_unified_config.CliTests.test_inventory_audit_describe_and_profile_commands_emit_json) ... ok\ntest_audit_rejects_cli_coercions_in_direct_json (test_unified_config.MutationTests.test_audit_rejects_cli_coercions_in_direct_json) ... ok\ntest_audit_rejects_invalid_custom_profiles_and_active_marker (test_unified_config.MutationTests.test_audit_rejects_invalid_custom_profiles_and_active_marker) ... ok\ntest_audit_reports_scalar_configuration_section_without_crashing (test_unified_config.MutationTests.test_audit_reports_scalar_configuration_section_without_crashing) ... ok\ntest_audit_reports_unknown_and_invalid_values (test_unified_config.MutationTests.test_audit_reports_unknown_and_invalid_values) ... ok\ntest_enable_disable_only_accept_mutable_booleans (test_unified_config.MutationTests.test_enable_disable_only_accept_mutable_booleans) ... ok\ntest_failed_atomic_replace_leaves_original_config_untouched (test_unified_config.MutationTests.test_failed_atomic_replace_leaves_original_config_untouched) ... ok\ntest_malformed_config_is_never_replaced_by_a_mutation (test_unified_config.MutationTests.test_malformed_config_is_never_replaced_by_a_mutation) ... ok\ntest_manual_set_marks_profile_custom_and_preserves_style (test_unified_config.MutationTests.test_manual_set_marks_profile_custom_and_preserves_style) ... ok\ntest_scalar_parent_is_not_clobbered_by_nested_set (test_unified_config.MutationTests.test_scalar_parent_is_not_clobbered_by_nested_set) ... ok\ntest_builtin_profile_dry_run_then_atomic_apply (test_unified_config.ProfileTests.test_builtin_profile_dry_run_then_atomic_apply) ... ok\ntest_invalid_custom_profile_never_partially_writes (test_unified_config.ProfileTests.test_invalid_custom_profile_never_partially_writes) ... ok\ntest_save_show_diff_and_delete_custom_profile (test_unified_config.ProfileTests.test_save_show_diff_and_delete_custom_profile) ... ok\ntest_does_not_flag_canonical_prd_state_paths (test_unsubmitted_plugin_request.UnsubmittedPluginRequestTests.test_does_not_flag_canonical_prd_state_paths) ... ok\ntest_does_not_flag_ordinary_project_requests (test_unsubmitted_plugin_request.UnsubmittedPluginRequestTests.test_does_not_flag_ordinary_project_requests) ... ok\ntest_does_not_flag_rejected_requests (test_unsubmitted_plugin_request.UnsubmittedPluginRequestTests.test_does_not_flag_rejected_requests) ... ok\ntest_does_not_flag_when_already_marked_upstream (test_unsubmitted_plugin_request.UnsubmittedPluginRequestTests.test_does_not_flag_when_already_marked_upstream) ... ok\ntest_flags_a_local_request_about_a_plugin_script (test_unsubmitted_plugin_request.UnsubmittedPluginRequestTests.test_flags_a_local_request_about_a_plugin_script) ... ok\ntest_flags_a_request_that_names_itself_upstream (test_unsubmitted_plugin_request.UnsubmittedPluginRequestTests.test_flags_a_request_that_names_itself_upstream) ... ok\ntest_never_fires_in_the_hub_repo_itself (test_unsubmitted_plugin_request.UnsubmittedPluginRequestTests.test_never_fires_in_the_hub_repo_itself) ... ok\ntest_wired_into_run_checks (test_unsubmitted_plugin_request.UnsubmittedPluginRequestTests.test_wired_into_run_checks) ... ok\ntest_appends_version_change_request (test_version_advice.VersionAdviceTests.test_appends_version_change_request) ... ok\ntest_builds_safe_update_advice_for_low_risk_releases (test_version_advice.VersionAdviceTests.test_builds_safe_update_advice_for_low_risk_releases) ... ok\ntest_cli_uses_hub_releases_when_downstream_repo_has_no_releases_file (test_version_advice.VersionAdviceTests.test_cli_uses_hub_releases_when_downstream_repo_has_no_releases_file) ... ok\ntest_detects_installed_version_from_bom_json (test_version_advice.VersionAdviceTests.test_detects_installed_version_from_bom_json) ... ok\ntest_detects_installed_version_from_opencode_plugin_manifest (test_version_advice.VersionAdviceTests.test_detects_installed_version_from_opencode_plugin_manifest) ... ok\ntest_detects_installed_version_from_prd_plugin_config (test_version_advice.VersionAdviceTests.test_detects_installed_version_from_prd_plugin_config) ... ok\ntest_detects_latest_version_from_plugin_manifest (test_version_advice.VersionAdviceTests.test_detects_latest_version_from_plugin_manifest) ... ok\ntest_installed_version_priority_prefers_config_then_codex_then_opencode (test_version_advice.VersionAdviceTests.test_installed_version_priority_prefers_config_then_codex_then_opencode) ... ok\ntest_orders_prerelease_before_final_release (test_version_advice.VersionAdviceTests.test_orders_prerelease_before_final_release) ... ok\ntest_recommends_review_first_for_medium_or_high_risk_release (test_version_advice.VersionAdviceTests.test_recommends_review_first_for_medium_or_high_risk_release) ... ok\ntest_disabled_returns_disabled_and_no_fetch (test_version_check.CheckTests.test_disabled_returns_disabled_and_no_fetch) ... ok\ntest_force_refetches_within_ttl (test_version_check.CheckTests.test_force_refetches_within_ttl) ... ok\ntest_network_failure_is_fail_open (test_version_check.CheckTests.test_network_failure_is_fail_open) ... ok\ntest_no_update_when_current (test_version_check.CheckTests.test_no_update_when_current) ... ok\ntest_status_is_cache_only_no_fetch (test_version_check.CheckTests.test_status_is_cache_only_no_fetch) ... ok\ntest_ttl_cache_avoids_refetch (test_version_check.CheckTests.test_ttl_cache_avoids_refetch) ... ok\ntest_ttl_expiry_refetches (test_version_check.CheckTests.test_ttl_expiry_refetches) ... ok\ntest_update_available_when_npm_is_ahead (test_version_check.CheckTests.test_update_available_when_npm_is_ahead) ... ok\ntest_status_cli_exits_zero (test_version_check.CliTests.test_status_cli_exits_zero) ... ok\ntest_default_ttl_is_responsive_not_a_day (test_version_check.FreshnessTests.test_default_ttl_is_responsive_not_a_day) ... ok\ntest_fetch_latest_accepts_a_timeout (test_version_check.FreshnessTests.test_fetch_latest_accepts_a_timeout) ... ok\ntest_nudge_refreshes_in_session_not_cache_only (test_version_check.FreshnessTests.test_nudge_refreshes_in_session_not_cache_only) ... ok\ntest_registry_default_ttl_matches (test_version_check.FreshnessTests.test_registry_default_ttl_matches) ... ok\ntest_semver_ordering (test_version_check.ParseTests.test_semver_ordering) ... ok\ntest_set_enabled_writes_config (test_version_check.ToggleTests.test_set_enabled_writes_config) ... ok\ntest_config_has_version_check_default_on (test_version_check.WiringTests.test_config_has_version_check_default_on) ... ok\ntest_nudge_surfaces_update_available (test_version_check.WiringTests.test_nudge_surfaces_update_available) ... ok\ntest_prd_version_command_exists (test_version_check.WiringTests.test_prd_version_command_exists) ... ok\ntest_script_registered_downstream (test_version_check.WiringTests.test_script_registered_downstream) ... ok\ntest_plan_cli_emits_json (test_wiki_backfill.CliTests.test_plan_cli_emits_json) ... ok\ntest_status_cli (test_wiki_backfill.CliTests.test_status_cli) ... ok\ntest_marker_written_for_established_repo_gaining_wiki (test_wiki_backfill.InstallerMarkerTests.test_marker_written_for_established_repo_gaining_wiki) ... ok\ntest_no_marker_for_empty_scaffold (test_wiki_backfill.InstallerMarkerTests.test_no_marker_for_empty_scaffold) ... ok\ntest_no_marker_when_wiki_already_exists (test_wiki_backfill.InstallerMarkerTests.test_no_marker_when_wiki_already_exists) ... ok\ntest_no_marker_when_wiki_disabled (test_wiki_backfill.InstallerMarkerTests.test_no_marker_when_wiki_disabled) ... ok\ntest_pending_false_when_absent (test_wiki_backfill.StatusTests.test_pending_false_when_absent) ... ok\ntest_pending_false_when_wiki_already_exists (test_wiki_backfill.StatusTests.test_pending_false_when_wiki_already_exists) ... ok\ntest_pending_true_when_marker_present (test_wiki_backfill.StatusTests.test_pending_true_when_marker_present) ... ok\ntest_plan_excludes_generated_report_artifacts (test_wiki_backfill.SurveyPlanTests.test_plan_excludes_generated_report_artifacts)\nrequest-report/ (incl. its calibration report trees) and docs/evidence/ ... ok\ntest_plan_excludes_plugin_and_vendor_noise (test_wiki_backfill.SurveyPlanTests.test_plan_excludes_plugin_and_vendor_noise) ... ok\ntest_plan_inventories_code_docs_and_state (test_wiki_backfill.SurveyPlanTests.test_plan_inventories_code_docs_and_state) ... ok\ntest_plan_is_read_only (test_wiki_backfill.SurveyPlanTests.test_plan_is_read_only) ... ok\ntest_wiki_drift_in_on_stop_and_default_sets (test_wiki_backfill.WikiDriftMonitorWiringTests.test_wiki_drift_in_on_stop_and_default_sets) ... ok\ntest_current_article_no_drift (test_wiki_backfill.WikiDriftTests.test_current_article_no_drift) ... ok\ntest_drift_cli (test_wiki_backfill.WikiDriftTests.test_drift_cli) ... ok\ntest_far_behind_article_flagged (test_wiki_backfill.WikiDriftTests.test_far_behind_article_flagged) ... ok\ntest_no_wiki_is_ok (test_wiki_backfill.WikiDriftTests.test_no_wiki_is_ok) ... ok\ntest_unstamped_article_flagged (test_wiki_backfill.WikiDriftTests.test_unstamped_article_flagged) ... ok\ntest_nudge_surfaces_pending_backfill (test_wiki_backfill.WiringTests.test_nudge_surfaces_pending_backfill) ... ok\ntest_script_registered_downstream (test_wiki_backfill.WiringTests.test_script_registered_downstream) ... ok\ntest_skill_has_backfill_mode (test_wiki_backfill.WiringTests.test_skill_has_backfill_mode) ... ok\ntest_no_cp1252_unencodable_chars_in_agent_facing_tools (test_windows_console_safe.SourceScanTests.test_no_cp1252_unencodable_chars_in_agent_facing_tools) ... ok\ntest_backfill_pending_status_renders_cp1252_safe (test_windows_console_safe.StatusRenderTests.test_backfill_pending_status_renders_cp1252_safe) ... ok\ntest_repository_workflow_surfaces_are_chml_zero (test_workflow_chml_audit.WorkflowChmlAuditTests.test_repository_workflow_surfaces_are_chml_zero) ... ok\ntest_git_workflow_defers_autonomy_to_decision_policy_but_keeps_floor (test_workflow_consistency.AutonomyConflictResolutionTests.test_git_workflow_defers_autonomy_to_decision_policy_but_keeps_floor) ... ok\ntest_request_intake_defers_autonomy_and_owns_graduation (test_workflow_consistency.AutonomyConflictResolutionTests.test_request_intake_defers_autonomy_and_owns_graduation) ... ok\ntest_evidence_pair_states_create_vs_review_boundary (test_workflow_consistency.BoundaryClarityTests.test_evidence_pair_states_create_vs_review_boundary) ... ok\ntest_session_close_states_memory_boundary (test_workflow_consistency.BoundaryClarityTests.test_session_close_states_memory_boundary) ... ok\ntest_document_branch_has_promotion_owner (test_workflow_consistency.DeadEndOwnerTests.test_document_branch_has_promotion_owner) ... ok\ntest_health_findings_have_triage_dispositions (test_workflow_consistency.DeadEndOwnerTests.test_health_findings_have_triage_dispositions) ... ok\ntest_memory_owns_schema_version_changes (test_workflow_consistency.DeadEndOwnerTests.test_memory_owns_schema_version_changes) ... ok\ntest_planning_lifecycle_has_stage_readiness_checkpoints (test_workflow_consistency.DeadEndOwnerTests.test_planning_lifecycle_has_stage_readiness_checkpoints) ... ok\ntest_session_close_runs_traceability_sync (test_workflow_consistency.DeadEndOwnerTests.test_session_close_runs_traceability_sync) ... ok\n\n----------------------------------------------------------------------\nRan 784 tests in 57.314s\n\nOK\n"
          },
          "output_hash": "3f1e16a1657a4e24a2f2e1becb3536cdba83166c65838e9296561a7d22c3b199",
          "completed_at": "2026-07-14T19:17:00Z"
        },
        {
          "id": "release",
          "action": "process.fixed",
          "status": "completed",
          "resolved_input_hash": "1e5b0c18d93eb4c2248f9a00adbd438e52f3ef02137477fb8376c69cfe86fc9b",
          "started_at": "2026-07-14T19:17:00Z",
          "output": {
            "operation": "release_check",
            "command": [
              "C:\\Users\\marku\\AppData\\Local\\Python\\pythoncore-3.14-64\\python.exe",
              "scripts/release_check.py"
            ],
            "exit_code": 0,
            "stdout": "# Release Hygiene Report\n\nBase version: `0.14.0`\nHead version: `0.15.0`\nChanged files checked: 116\n\n## Findings\n\n- None\n",
            "stderr": ""
          },
          "output_hash": "3754992af3f0d08f4cf8e73c84805088feb9cd865ff95f1e55d60bbaedbadd1e",
          "completed_at": "2026-07-14T19:17:01Z"
        },
        {
          "id": "gaps",
          "action": "process.fixed",
          "status": "completed",
          "resolved_input_hash": "577241909238eeb55683f89d2d2216648dad2e3127397993e22493829a1307a4",
          "started_at": "2026-07-14T19:17:01Z",
          "output": {
            "operation": "gap_audit",
            "command": [
              "C:\\Users\\marku\\AppData\\Local\\Python\\pythoncore-3.14-64\\python.exe",
              "scripts/gap_audit.py",
              "--target-version",
              "0.15.0",
              "--config",
              ".prd_plugin/config.json",
              "--releases",
              ".prd_plugin/state/releases.json"
            ],
            "exit_code": 0,
            "stdout": "# PRD Plugin Gap Audit\n\nTarget version: `0.15.0`\n\n## Findings\n\n- None\n",
            "stderr": ""
          },
          "output_hash": "5b9b20e8956d0470d617b53b642cf2bcac3573686254737fd662569311627680",
          "completed_at": "2026-07-14T19:17:01Z"
        },
        {
          "id": "package",
          "action": "process.fixed",
          "status": "completed",
          "resolved_input_hash": "06cd12e1f3db3d985f9150520afa60f288297ff0ca01a8e813e9bb6291aa8836",
          "started_at": "2026-07-14T19:18:50Z",
          "output": {
            "operation": "package_check",
            "command": [
              "C:\\Program Files\\nodejs\\npm.CMD",
              "pack",
              "--dry-run"
            ],
            "exit_code": 0,
            "stdout": "prd-plugin-0.15.0.tgz\n",
            "stderr": "port.py\nnpm notice 5.9kB scripts/skill_usage_report.py\nnpm notice 5.5kB scripts/staleness_audit.py\nnpm notice 17.6kB scripts/state_consistency_check.py\nnpm notice 5.8kB scripts/traceability_sync_auto.py\nnpm notice 12.5kB scripts/version_advice.py\nnpm notice 9.1kB scripts/workflow_chml_audit.py\nnpm notice 3.0kB skills/project-architecture/SKILL.md\nnpm notice 7.4kB skills/project-blocker-resolution/SKILL.md\nnpm notice 2.8kB skills/project-brainstorm/SKILL.md\nnpm notice 5.5kB skills/project-change-request/SKILL.md\nnpm notice 5.7kB skills/project-code-review/SKILL.md\nnpm notice 2.5kB skills/project-decision-ledger/SKILL.md\nnpm notice 16.5kB skills/project-decision-policy/SKILL.md\nnpm notice 2.8kB skills/project-deterministic-workflows/SKILL.md\nnpm notice 4.9kB skills/project-document-branch/SKILL.md\nnpm notice 2.5kB skills/project-evidence-ledger/SKILL.md\nnpm notice 2.7kB skills/project-evidence/SKILL.md\nnpm notice 9.2kB skills/project-fold-it-in/SKILL.md\nnpm notice 10.9kB skills/project-git-workflow/SKILL.md\nnpm notice 6.8kB skills/project-health/SKILL.md\nnpm notice 5.6kB skills/project-implementation-plan/SKILL.md\nnpm notice 1.1kB skills/project-llm-wiki/LICENSE\nnpm notice 842B skills/project-llm-wiki/references/archive-template.md\nnpm notice 843B skills/project-llm-wiki/references/article-template.md\nnpm notice 559B skills/project-llm-wiki/references/index-template.md\nnpm notice 317B skills/project-llm-wiki/references/raw-template.md\nnpm notice 15.0kB skills/project-llm-wiki/SKILL.md\nnpm notice 7.2kB skills/project-local-integration/SKILL.md\nnpm notice 8.1kB skills/project-memory/SKILL.md\nnpm notice 5.5kB skills/project-planning-lifecycle/SKILL.md\nnpm notice 6.8kB skills/project-prd-plugin-setup/SKILL.md\nnpm notice 3.5kB skills/project-prd/SKILL.md\nnpm notice 21.8kB skills/project-request-intake/SKILL.md\nnpm notice 5.4kB skills/project-self-audit/SKILL.md\nnpm notice 8.4kB skills/project-session-close/SKILL.md\nnpm notice 3.4kB skills/project-systematic-debugging/SKILL.md\nnpm notice 3.0kB skills/project-test-driven-implementation/SKILL.md\nnpm notice 3.7kB skills/project-traceability-review/SKILL.md\nnpm notice 2.2kB skills/project-traceability-sync/SKILL.md\nnpm notice 4.8kB skills/project-verification-before-completion/SKILL.md\nnpm notice 167B templates/architecture-delta.md\nnpm notice 1.4kB templates/architecture.json\nnpm notice 368B templates/brainstorm.md\nnpm notice 274B templates/changelog.json\nnpm notice 12.8kB templates/config.json\nnpm notice 265B templates/decision-record.md\nnpm notice 398B templates/decisions.json\nnpm notice 372B templates/doc-branch.json\nnpm notice 313B templates/doc-branch.md\nnpm notice 115B templates/evidence.md\nnpm notice 249B templates/handoff.json\nnpm notice 407B templates/health.json\nnpm notice 695B templates/human-exports/architecture.md\nnpm notice 626B templates/human-exports/implementation-plan.md\nnpm notice 580B templates/human-exports/prd.md\nnpm notice 1.4kB templates/implementation-plan.json\nnpm notice 65B templates/mailbox.json\nnpm notice 348B templates/memory.json\nnpm notice 471B templates/merge-checklist.md\nnpm notice 163B templates/plan-delta.md\nnpm notice 139B templates/prd-delta.md\nnpm notice 1.3kB templates/prd.json\nnpm notice 454B templates/project.json\nnpm notice 125B templates/promoted-session-summary.jsonl\nnpm notice 153.7kB templates/releases.json\nnpm notice 3.0kB templates/repo-skeleton/.agents/skills/project-architecture/SKILL.md\nnpm notice 7.4kB templates/repo-skeleton/.agents/skills/project-blocker-resolution/SKILL.md\nnpm notice 2.8kB templates/repo-skeleton/.agents/skills/project-brainstorm/SKILL.md\nnpm notice 5.5kB templates/repo-skeleton/.agents/skills/project-change-request/SKILL.md\nnpm notice 5.7kB templates/repo-skeleton/.agents/skills/project-code-review/SKILL.md\nnpm notice 2.5kB templates/repo-skeleton/.agents/skills/project-decision-ledger/SKILL.md\nnpm notice 16.5kB templates/repo-skeleton/.agents/skills/project-decision-policy/SKILL.md\nnpm notice 2.8kB templates/repo-skeleton/.agents/skills/project-deterministic-workflows/SKILL.md\nnpm notice 4.9kB templates/repo-skeleton/.agents/skills/project-document-branch/SKILL.md\nnpm notice 2.5kB templates/repo-skeleton/.agents/skills/project-evidence-ledger/SKILL.md\nnpm notice 2.7kB templates/repo-skeleton/.agents/skills/project-evidence/SKILL.md\nnpm notice 10.9kB templates/repo-skeleton/.agents/skills/project-git-workflow/SKILL.md\nnpm notice 6.8kB templates/repo-skeleton/.agents/skills/project-health/SKILL.md\nnpm notice 5.6kB templates/repo-skeleton/.agents/skills/project-implementation-plan/SKILL.md\nnpm notice 1.1kB templates/repo-skeleton/.agents/skills/project-llm-wiki/LICENSE\nnpm notice 842B templates/repo-skeleton/.agents/skills/project-llm-wiki/references/archive-template.md\nnpm notice 843B templates/repo-skeleton/.agents/skills/project-llm-wiki/references/article-template.md\nnpm notice 559B templates/repo-skeleton/.agents/skills/project-llm-wiki/references/index-template.md\nnpm notice 317B templates/repo-skeleton/.agents/skills/project-llm-wiki/references/raw-template.md\nnpm notice 15.0kB templates/repo-skeleton/.agents/skills/project-llm-wiki/SKILL.md\nnpm notice 7.2kB templates/repo-skeleton/.agents/skills/project-local-integration/SKILL.md\nnpm notice 8.1kB templates/repo-skeleton/.agents/skills/project-memory/SKILL.md\nnpm notice 5.5kB templates/repo-skeleton/.agents/skills/project-planning-lifecycle/SKILL.md\nnpm notice 6.1kB templates/repo-skeleton/.agents/skills/project-prd-plugin-setup/SKILL.md\nnpm notice 3.5kB templates/repo-skeleton/.agents/skills/project-prd/SKILL.md\nnpm notice 21.8kB templates/repo-skeleton/.agents/skills/project-request-intake/SKILL.md\nnpm notice 8.4kB templates/repo-skeleton/.agents/skills/project-session-close/SKILL.md\nnpm notice 3.4kB templates/repo-skeleton/.agents/skills/project-systematic-debugging/SKILL.md\nnpm notice 3.0kB templates/repo-skeleton/.agents/skills/project-test-driven-implementation/SKILL.md\nnpm notice 3.7kB templates/repo-skeleton/.agents/skills/project-traceability-review/SKILL.md\nnpm notice 2.2kB templates/repo-skeleton/.agents/skills/project-traceability-sync/SKILL.md\nnpm notice 4.7kB templates/repo-skeleton/.agents/skills/project-verification-before-completion/SKILL.md\nnpm notice 1.3kB templates/repo-skeleton/.claude-plugin/plugin.json\nnpm notice 772B templates/repo-skeleton/.claude/commands/prd-autonomy.md\nnpm notice 522B templates/repo-skeleton/.claude/commands/prd-close.md\nnpm notice 2.0kB templates/repo-skeleton/.claude/commands/prd-config.md\nnpm notice 1.6kB templates/repo-skeleton/.claude/commands/prd-drift.md\nnpm notice 1.4kB templates/repo-skeleton/.claude/commands/prd-graph.md\nnpm notice 1.6kB templates/repo-skeleton/.claude/commands/prd-hooks.md\nnpm notice 639B templates/repo-skeleton/.claude/commands/prd-new.md\nnpm notice 1.6kB templates/repo-skeleton/.claude/commands/prd-reflections.md\nnpm notice 1.8kB templates/repo-skeleton/.claude/commands/prd-report.md\nnpm notice 549B templates/repo-skeleton/.claude/commands/prd-status.md\nnpm notice 974B templates/repo-skeleton/.claude/commands/prd-track.md\nnpm notice 1.0kB templates/repo-skeleton/.claude/commands/prd-version.md\nnpm notice 917B templates/repo-skeleton/.claude/commands/prd-workflow.md\nnpm notice 1.6kB templates/repo-skeleton/.claude/hooks/prd_drift_check.py\nnpm notice 2.0kB templates/repo-skeleton/.claude/hooks/prd_log_skill.py\nnpm notice 4.1kB templates/repo-skeleton/.claude/hooks/prd_nudge.py\nnpm notice 3.7kB templates/repo-skeleton/.claude/hooks/prd_precommit_gate.py\nnpm notice 6.1kB templates/repo-skeleton/.claude/hooks/prd_reflection.py\nnpm notice 3.5kB templates/repo-skeleton/.claude/hooks/prd_session_report.py\nnpm notice 9.8kB templates/repo-skeleton/.claude/hooks/prd_stop_guard.py\nnpm notice 1.3kB templates/repo-skeleton/.claude/settings.json\nnpm notice 3.0kB templates/repo-skeleton/.claude/skills/project-architecture/SKILL.md\nnpm notice 7.4kB templates/repo-skeleton/.claude/skills/project-blocker-resolution/SKILL.md\nnpm notice 2.8kB templates/repo-skeleton/.claude/skills/project-brainstorm/SKILL.md\nnpm notice 5.5kB templates/repo-skeleton/.claude/skills/project-change-request/SKILL.md\nnpm notice 5.7kB templates/repo-skeleton/.claude/skills/project-code-review/SKILL.md\nnpm notice 2.5kB templates/repo-skeleton/.claude/skills/project-decision-ledger/SKILL.md\nnpm notice 16.5kB templates/repo-skeleton/.claude/skills/project-decision-policy/SKILL.md\nnpm notice 2.8kB templates/repo-skeleton/.claude/skills/project-deterministic-workflows/SKILL.md\nnpm notice 4.9kB templates/repo-skeleton/.claude/skills/project-document-branch/SKILL.md\nnpm notice 2.5kB templates/repo-skeleton/.claude/skills/project-evidence-ledger/SKILL.md\nnpm notice 2.7kB templates/repo-skeleton/.claude/skills/project-evidence/SKILL.md\nnpm notice 10.9kB templates/repo-skeleton/.claude/skills/project-git-workflow/SKILL.md\nnpm notice 6.8kB templates/repo-skeleton/.claude/skills/project-health/SKILL.md\nnpm notice 5.6kB templates/repo-skeleton/.claude/skills/project-implementation-plan/SKILL.md\nnpm notice 1.1kB templates/repo-skeleton/.claude/skills/project-llm-wiki/LICENSE\nnpm notice 842B templates/repo-skeleton/.claude/skills/project-llm-wiki/references/archive-template.md\nnpm notice 843B templates/repo-skeleton/.claude/skills/project-llm-wiki/references/article-template.md\nnpm notice 559B templates/repo-skeleton/.claude/skills/project-llm-wiki/references/index-template.md\nnpm notice 317B templates/repo-skeleton/.claude/skills/project-llm-wiki/references/raw-template.md\nnpm notice 15.0kB templates/repo-skeleton/.claude/skills/project-llm-wiki/SKILL.md\nnpm notice 7.2kB templates/repo-skeleton/.claude/skills/project-local-integration/SKILL.md\nnpm notice 8.1kB templates/repo-skeleton/.claude/skills/project-memory/SKILL.md\nnpm notice 5.5kB templates/repo-skeleton/.claude/skills/project-planning-lifecycle/SKILL.md\nnpm notice 6.1kB templates/repo-skeleton/.claude/skills/project-prd-plugin-setup/SKILL.md\nnpm notice 3.5kB templates/repo-skeleton/.claude/skills/project-prd/SKILL.md\nnpm notice 21.8kB templates/repo-skeleton/.claude/skills/project-request-intake/SKILL.md\nnpm notice 8.4kB templates/repo-skeleton/.claude/skills/project-session-close/SKILL.md\nnpm notice 3.4kB templates/repo-skeleton/.claude/skills/project-systematic-debugging/SKILL.md\nnpm notice 3.0kB templates/repo-skeleton/.claude/skills/project-test-driven-implementation/SKILL.md\nnpm notice 3.7kB templates/repo-skeleton/.claude/skills/project-traceability-review/SKILL.md\nnpm notice 2.2kB templates/repo-skeleton/.claude/skills/project-traceability-sync/SKILL.md\nnpm notice 4.7kB templates/repo-skeleton/.claude/skills/project-verification-before-completion/SKILL.md\nnpm notice 3.9kB templates/repo-skeleton/.codex-plugin/plugin.json\nnpm notice 2.8kB templates/repo-skeleton/.codex/hooks.json\nnpm notice 743B templates/repo-skeleton/.githooks/pre-commit\nnpm notice 734B templates/repo-skeleton/.github/workflows/prd-gate.yml\nnpm notice 3.9kB templates/repo-skeleton/.opencode/plugin.json\nnpm notice 3.3kB templates/repo-skeleton/.opencode/plugins/prd-hooks.js\nnpm notice 3.0kB templates/repo-skeleton/.opencode/skill/project-architecture/SKILL.md\nnpm notice 7.4kB templates/repo-skeleton/.opencode/skill/project-blocker-resolution/SKILL.md\nnpm notice 2.8kB templates/repo-skeleton/.opencode/skill/project-brainstorm/SKILL.md\nnpm notice 5.5kB templates/repo-skeleton/.opencode/skill/project-change-request/SKILL.md\nnpm notice 5.7kB templates/repo-skeleton/.opencode/skill/project-code-review/SKILL.md\nnpm notice 2.5kB templates/repo-skeleton/.opencode/skill/project-decision-ledger/SKILL.md\nnpm notice 16.5kB templates/repo-skeleton/.opencode/skill/project-decision-policy/SKILL.md\nnpm notice 2.8kB templates/repo-skeleton/.opencode/skill/project-deterministic-workflows/SKILL.md\nnpm notice 4.9kB templates/repo-skeleton/.opencode/skill/project-document-branch/SKILL.md\nnpm notice 2.5kB templates/repo-skeleton/.opencode/skill/project-evidence-ledger/SKILL.md\nnpm notice 2.7kB templates/repo-skeleton/.opencode/skill/project-evidence/SKILL.md\nnpm notice 10.9kB templates/repo-skeleton/.opencode/skill/project-git-workflow/SKILL.md\nnpm notice 6.8kB templates/repo-skeleton/.opencode/skill/project-health/SKILL.md\nnpm notice 5.6kB templates/repo-skeleton/.opencode/skill/project-implementation-plan/SKILL.md\nnpm notice 1.1kB templates/repo-skeleton/.opencode/skill/project-llm-wiki/LICENSE\nnpm notice 842B templates/repo-skeleton/.opencode/skill/project-llm-wiki/references/archive-template.md\nnpm notice 843B templates/repo-skeleton/.opencode/skill/project-llm-wiki/references/article-template.md\nnpm notice 559B templates/repo-skeleton/.opencode/skill/project-llm-wiki/references/index-template.md\nnpm notice 317B templates/repo-skeleton/.opencode/skill/project-llm-wiki/references/raw-template.md\nnpm notice 15.0kB templates/repo-skeleton/.opencode/skill/project-llm-wiki/SKILL.md\nnpm notice 7.2kB templates/repo-skeleton/.opencode/skill/project-local-integration/SKILL.md\nnpm notice 8.1kB templates/repo-skeleton/.opencode/skill/project-memory/SKILL.md\nnpm notice 5.5kB templates/repo-skeleton/.opencode/skill/project-planning-lifecycle/SKILL.md\nnpm notice 6.1kB templates/repo-skeleton/.opencode/skill/project-prd-plugin-setup/SKILL.md\nnpm notice 3.5kB templates/repo-skeleton/.opencode/skill/project-prd/SKILL.md\nnpm notice 21.8kB templates/repo-skeleton/.opencode/skill/project-request-intake/SKILL.md\nnpm notice 8.4kB templates/repo-skeleton/.opencode/skill/project-session-close/SKILL.md\nnpm notice 3.4kB templates/repo-skeleton/.opencode/skill/project-systematic-debugging/SKILL.md\nnpm notice 3.0kB templates/repo-skeleton/.opencode/skill/project-test-driven-implementation/SKILL.md\nnpm notice 3.7kB templates/repo-skeleton/.opencode/skill/project-traceability-review/SKILL.md\nnpm notice 2.2kB templates/repo-skeleton/.opencode/skill/project-traceability-sync/SKILL.md\nnpm notice 4.7kB templates/repo-skeleton/.opencode/skill/project-verification-before-completion/SKILL.md\nnpm notice 12.7kB templates/repo-skeleton/.prd_plugin/config.json\nnpm notice 1.6kB templates/repo-skeleton/.prd_plugin/hooks/prd_drift_check.py\nnpm notice 9.1kB templates/repo-skeleton/.prd_plugin/hooks/prd_hook_dispatch.py\nnpm notice 2.0kB templates/repo-skeleton/.prd_plugin/hooks/prd_log_skill.py\nnpm notice 4.1kB templates/repo-skeleton/.prd_plugin/hooks/prd_nudge.py\nnpm notice 3.7kB templates/repo-skeleton/.prd_plugin/hooks/prd_precommit_gate.py\nnpm notice 6.1kB templates/repo-skeleton/.prd_plugin/hooks/prd_reflection.py\nnpm notice 3.5kB templates/repo-skeleton/.prd_plugin/hooks/prd_session_report.py\nnpm notice 9.8kB templates/repo-skeleton/.prd_plugin/hooks/prd_stop_guard.py\nnpm notice 3.7kB templates/repo-skeleton/.prd_plugin/ID-SCHEME.md\nnpm notice 579B templates/repo-skeleton/.prd_plugin/ids/registry.json\nnpm notice 12.6kB templates/repo-skeleton/.prd_plugin/METHOD.md\nnpm notice 725B templates/repo-skeleton/.prd_plugin/method/artifact-format.md\nnpm notice 820B templates/repo-skeleton/.prd_plugin/method/completion-gate.md\nnpm notice 3.1kB templates/repo-skeleton/.prd_plugin/method/deterministic-workflows.md\nnpm notice 1.2kB templates/repo-skeleton/.prd_plugin/method/estimation.md\nnpm notice 1.9kB templates/repo-skeleton/.prd_plugin/method/grounding.md\nnpm notice 2.5kB templates/repo-skeleton/.prd_plugin/method/reporting.md\nnpm notice 2.6kB templates/repo-skeleton/.prd_plugin/method/self-service.md\nnpm notice 1.6kB templates/repo-skeleton/.prd_plugin/method/staleness-rules.md\nnpm notice 1.0kB templates/repo-skeleton/.prd_plugin/method/state-validation.md\nnpm notice 47B templates/repo-skeleton/.prd_plugin/state/changelog.json\nnpm notice 49B templates/repo-skeleton/.prd_plugin/state/decisions.json\nnpm notice 157B templates/repo-skeleton/.prd_plugin/state/health.json\nnpm notice 47B templates/repo-skeleton/.prd_plugin/state/memory.json\nnpm notice 286B templates/repo-skeleton/.prd_plugin/state/project.json\nnpm notice 48B templates/repo-skeleton/.prd_plugin/state/releases.json\nnpm notice 48B templates/repo-skeleton/.prd_plugin/state/requests.json\nnpm notice 214B templates/repo-skeleton/.prd_plugin/state/sessions/shared/promoted-session-summaries.jsonl\nnpm notice 51B templates/repo-skeleton/.prd_plugin/state/tracking.json\nnpm notice 44B templates/repo-skeleton/.prd_plugin/state/workflow-runs.json\nnpm notice 167B templates/repo-skeleton/.prd_plugin/templates/architecture-delta.md\nnpm notice 1.4kB templates/repo-skeleton/.prd_plugin/templates/architecture.json\nnpm notice 368B templates/repo-skeleton/.prd_plugin/templates/brainstorm.md\nnpm notice 274B templates/repo-skeleton/.prd_plugin/templates/changelog.json\nnpm notice 11.9kB templates/repo-skeleton/.prd_plugin/templates/config.json\nnpm notice 265B templates/repo-skeleton/.prd_plugin/templates/decision-record.md\nnpm notice 398B templates/repo-skeleton/.prd_plugin/templates/decisions.json\nnpm notice 372B templates/repo-skeleton/.prd_plugin/templates/doc-branch.json\nnpm notice 313B templates/repo-skeleton/.prd_plugin/templates/doc-branch.md\nnpm notice 115B templates/repo-skeleton/.prd_plugin/templates/evidence.md\nnpm notice 249B templates/repo-skeleton/.prd_plugin/templates/handoff.json\nnpm notice 407B templates/repo-skeleton/.prd_plugin/templates/health.json\nnpm notice 695B templates/repo-skeleton/.prd_plugin/templates/human-exports/architecture.md\nnpm notice 626B templates/repo-skeleton/.prd_plugin/templates/human-exports/implementation-plan.md\nnpm notice 580B templates/repo-skeleton/.prd_plugin/templates/human-exports/prd.md\nnpm notice 1.4kB templates/repo-skeleton/.prd_plugin/templates/implementation-plan.json\nnpm notice 65B templates/repo-skeleton/.prd_plugin/templates/mailbox.json\nnpm notice 348B templates/repo-skeleton/.prd_plugin/templates/memory.json\nnpm notice 471B templates/repo-skeleton/.prd_plugin/templates/merge-checklist.md\nnpm notice 163B templates/repo-skeleton/.prd_plugin/templates/plan-delta.md\nnpm notice 139B templates/repo-skeleton/.prd_plugin/templates/prd-delta.md\nnpm notice 1.3kB templates/repo-skeleton/.prd_plugin/templates/prd.json\nnpm notice 454B templates/repo-skeleton/.prd_plugin/templates/project.json\nnpm notice 125B templates/repo-skeleton/.prd_plugin/templates/promoted-session-summary.jsonl\nnpm notice 923B templates/repo-skeleton/.prd_plugin/templates/releases.json\nnpm notice 1.4kB templates/repo-skeleton/.prd_plugin/templates/request.json\nnpm notice 1.7kB templates/repo-skeleton/.prd_plugin/templates/requests.json\nnpm notice 17.1kB templates/repo-skeleton/.prd_plugin/templates/script-install-scope.json\nnpm notice 235B templates/repo-skeleton/.prd_plugin/templates/session.json\nnpm notice 10.6kB templates/repo-skeleton/.prd_plugin/templates/skill-install-scope.json\nnpm notice 317B templates/repo-skeleton/.prd_plugin/templates/submission-package.json\nnpm notice 225B templates/repo-skeleton/.prd_plugin/templates/traceability-matrix.md\nnpm notice 321B templates/repo-skeleton/.prd_plugin/templates/tracking.json\nnpm notice 11.7kB templates/repo-skeleton/.prd_plugin/workflows.json\nnpm notice 11.9kB templates/repo-skeleton/AGENTS.md\nnpm notice 7.3kB templates/repo-skeleton/CLAUDE.md\nnpm notice 11.8kB templates/repo-skeleton/docs/INSTALL-MATRIX.md\nnpm notice 1.4kB templates/request.json\nnpm notice 1.7kB templates/requests.json\nnpm notice 17.1kB templates/script-install-scope.json\nnpm notice 235B templates/session.json\nnpm notice 10.6kB templates/skill-install-scope.json\nnpm notice 317B templates/submission-package.json\nnpm notice 225B templates/traceability-matrix.md\nnpm notice 321B templates/tracking.json\nnpm notice 11.7kB templates/workflows.json\nnpm notice Tarball Details\nnpm notice name: prd-plugin\nnpm notice version: 0.15.0\nnpm notice filename: prd-plugin-0.15.0.tgz\nnpm notice package size: 866.5 kB\nnpm notice unpacked size: 3.4 MB\nnpm notice shasum: 65eda9163fd5142b77dda73a7302766767775213\nnpm notice integrity: sha512-WNOQGZJahc07d[...]oqigCpyMD/gxQ==\nnpm notice total files: 474\nnpm notice\n"
          },
          "output_hash": "c4bee995f146f89e4085fb1a37ff69ff0a7f346e66ab9f8477a124ffb79775f6",
          "completed_at": "2026-07-14T19:18:52Z"
        },
        {
          "id": "gate",
          "action": "state.gate",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-14T19:18:52Z",
          "output": {
            "status": "ok",
            "repo_root": "D:\\Projects\\prd-plugin",
            "summary": {
              "errors": 0,
              "warnings": 0
            },
            "findings": []
          },
          "output_hash": "a705b176b049df02348354c23988d51f616670b7352ad410321cbe0577edf053",
          "completed_at": "2026-07-14T19:18:52Z"
        }
      ],
      "completed_at": "2026-07-14T19:18:52Z"
    },
    {
      "id": "WFR-003",
      "schema_version": "1.0",
      "workflow_id": "engineering.code-review",
      "workflow_version": 1,
      "definition_hash": "db913781cc8cad3d528b8f1bd3540c25d819d14a435dad01ee77cdf6463b5618",
      "plan_hash": "3eb0c0302cefb4e2420adea5e25dd20e4f5990bb663056af4ea1e6f82f0a77c6",
      "input_hash": "b13733e2f1611cdedb21bee848313bacae2824262b1d0cd9783fb3a447039a95",
      "inputs": {
        "base_ref": "main",
        "source_refs": [
          "TRK-106"
        ]
      },
      "idempotency_key": "trk-106-final-review",
      "status": "completed",
      "attempt": 1,
      "created_at": "2026-07-14T20:17:33Z",
      "updated_at": "2026-07-14T20:19:09Z",
      "receipts": [
        {
          "step_id": "diff",
          "action": "git.diff_check",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "11c11db30f4b3f6c758722ba3e27eea08145b7d212f6a157451e364b48475280",
          "completed_at": "2026-07-14T20:17:33Z"
        },
        {
          "step_id": "verification",
          "action": "verification.plan",
          "input_hash": "9c8856776a7db6455fee675768cfc615a0fe2a04fb88b9a4fd8e3fce515eaf08",
          "output_hash": "e2ef2c68eaae81edd39ef186f87e8bdb64da90aaac52b6abd5709f4f0170accd",
          "completed_at": "2026-07-14T20:17:33Z"
        },
        {
          "step_id": "review",
          "action": "judgment.request",
          "input_hash": "9fc2fcf33f5de54aa5649ebcbde62c261eea28f36bc65c7de80eab2cdb2a5a55",
          "output_hash": "d6ee9b2ce6a6668e70761603da13760333e7a6c6125d0ec26eb1c87070d67ddf",
          "request_hash": "29ddb7ee010c6fca7214fb994f6b180ca44c430948d07c1085f040bc14746c8f",
          "completed_at": "2026-07-14T20:19:09Z"
        }
      ],
      "steps": [
        {
          "id": "diff",
          "action": "git.diff_check",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-14T20:17:33Z",
          "output": {
            "passed": true
          },
          "output_hash": "11c11db30f4b3f6c758722ba3e27eea08145b7d212f6a157451e364b48475280",
          "completed_at": "2026-07-14T20:17:33Z"
        },
        {
          "id": "verification",
          "action": "verification.plan",
          "status": "completed",
          "resolved_input_hash": "9c8856776a7db6455fee675768cfc615a0fe2a04fb88b9a4fd8e3fce515eaf08",
          "started_at": "2026-07-14T20:17:33Z",
          "output": {
            "schema_version": "1.0",
            "contract_version": 1,
            "executor": "ai-collab",
            "changed_files": [
              ".agents/skills/project-code-review/SKILL.md",
              ".agents/skills/project-decision-ledger/SKILL.md",
              ".agents/skills/project-decision-policy/SKILL.md",
              ".agents/skills/project-deterministic-workflows/SKILL.md",
              ".agents/skills/project-evidence-ledger/SKILL.md",
              ".agents/skills/project-evidence/SKILL.md",
              ".agents/skills/project-fold-it-in/SKILL.md",
              ".agents/skills/project-git-workflow/SKILL.md",
              ".agents/skills/project-health/SKILL.md",
              ".agents/skills/project-local-integration/SKILL.md",
              ".agents/skills/project-planning-lifecycle/SKILL.md",
              ".agents/skills/project-prd-plugin-setup/SKILL.md",
              ".agents/skills/project-request-intake/SKILL.md",
              ".agents/skills/project-self-audit/SKILL.md",
              ".agents/skills/project-session-close/SKILL.md",
              ".agents/skills/project-systematic-debugging/SKILL.md",
              ".agents/skills/project-traceability-sync/SKILL.md",
              ".agents/skills/project-verification-before-completion/SKILL.md",
              ".claude-plugin/marketplace.json",
              ".claude-plugin/plugin.json",
              ".claude/skills/project-code-review/SKILL.md",
              ".claude/skills/project-decision-ledger/SKILL.md",
              ".claude/skills/project-decision-policy/SKILL.md",
              ".claude/skills/project-deterministic-workflows/SKILL.md",
              ".claude/skills/project-evidence-ledger/SKILL.md",
              ".claude/skills/project-evidence/SKILL.md",
              ".claude/skills/project-fold-it-in/SKILL.md",
              ".claude/skills/project-git-workflow/SKILL.md",
              ".claude/skills/project-health/SKILL.md",
              ".claude/skills/project-local-integration/SKILL.md",
              ".claude/skills/project-planning-lifecycle/SKILL.md",
              ".claude/skills/project-prd-plugin-setup/SKILL.md",
              ".claude/skills/project-request-intake/SKILL.md",
              ".claude/skills/project-self-audit/SKILL.md",
              ".claude/skills/project-session-close/SKILL.md",
              ".claude/skills/project-systematic-debugging/SKILL.md",
              ".claude/skills/project-traceability-sync/SKILL.md",
              ".claude/skills/project-verification-before-completion/SKILL.md",
              ".codex-plugin/plugin.json",
              ".opencode/plugin.json",
              ".opencode/skill/project-code-review/SKILL.md",
              ".opencode/skill/project-decision-ledger/SKILL.md",
              ".opencode/skill/project-decision-policy/SKILL.md",
              ".opencode/skill/project-deterministic-workflows/SKILL.md",
              ".opencode/skill/project-evidence-ledger/SKILL.md",
              ".opencode/skill/project-evidence/SKILL.md",
              ".opencode/skill/project-fold-it-in/SKILL.md",
              ".opencode/skill/project-git-workflow/SKILL.md",
              ".opencode/skill/project-health/SKILL.md",
              ".opencode/skill/project-local-integration/SKILL.md",
              ".opencode/skill/project-planning-lifecycle/SKILL.md",
              ".opencode/skill/project-prd-plugin-setup/SKILL.md",
              ".opencode/skill/project-request-intake/SKILL.md",
              ".opencode/skill/project-self-audit/SKILL.md",
              ".opencode/skill/project-session-close/SKILL.md",
              ".opencode/skill/project-systematic-debugging/SKILL.md",
              ".opencode/skill/project-traceability-sync/SKILL.md",
              ".opencode/skill/project-verification-before-completion/SKILL.md",
              ".prd_plugin/config.json",
              ".prd_plugin/ids/registry.json",
              ".prd_plugin/method/deterministic-workflows.md",
              ".prd_plugin/state/project.json",
              ".prd_plugin/state/releases.json",
              ".prd_plugin/state/tracking.json",
              ".prd_plugin/state/workflow-runs.json",
              "commands/prd-close.md",
              "docs/METHOD.md",
              "index.js",
              "mcp/server.cjs",
              "package.json",
              "raw/skills/2026-07-14-feature-skill-semantic-audit.md",
              "README.md",
              "scripts/feature_skill_audit.py",
              "scripts/local_workflow_check.py",
              "scripts/workflow_chml_audit.py",
              "skills/project-code-review/SKILL.md",
              "skills/project-decision-ledger/SKILL.md",
              "skills/project-decision-policy/SKILL.md",
              "skills/project-deterministic-workflows/SKILL.md",
              "skills/project-evidence-ledger/SKILL.md",
              "skills/project-evidence/SKILL.md",
              "skills/project-fold-it-in/SKILL.md",
              "skills/project-git-workflow/SKILL.md",
              "skills/project-health/SKILL.md",
              "skills/project-local-integration/SKILL.md",
              "skills/project-planning-lifecycle/SKILL.md",
              "skills/project-prd-plugin-setup/SKILL.md",
              "skills/project-request-intake/SKILL.md",
              "skills/project-self-audit/SKILL.md",
              "skills/project-session-close/SKILL.md",
              "skills/project-systematic-debugging/SKILL.md",
              "skills/project-traceability-sync/SKILL.md",
              "skills/project-verification-before-completion/SKILL.md",
              "templates/config.json",
              "templates/feature-skill-map.json",
              "templates/project.json",
              "templates/releases.json",
              "templates/repo-skeleton/.agents/skills/project-code-review/SKILL.md",
              "templates/repo-skeleton/.agents/skills/project-decision-ledger/SKILL.md",
              "templates/repo-skeleton/.agents/skills/project-decision-policy/SKILL.md",
              "templates/repo-skeleton/.agents/skills/project-deterministic-workflows/SKILL.md",
              "templates/repo-skeleton/.agents/skills/project-evidence-ledger/SKILL.md",
              "templates/repo-skeleton/.agents/skills/project-evidence/SKILL.md",
              "templates/repo-skeleton/.agents/skills/project-git-workflow/SKILL.md",
              "templates/repo-skeleton/.agents/skills/project-health/SKILL.md",
              "templates/repo-skeleton/.agents/skills/project-local-integration/SKILL.md",
              "templates/repo-skeleton/.agents/skills/project-planning-lifecycle/SKILL.md",
              "templates/repo-skeleton/.agents/skills/project-prd-plugin-setup/SKILL.md",
              "templates/repo-skeleton/.agents/skills/project-request-intake/SKILL.md",
              "templates/repo-skeleton/.agents/skills/project-session-close/SKILL.md",
              "templates/repo-skeleton/.agents/skills/project-systematic-debugging/SKILL.md",
              "templates/repo-skeleton/.agents/skills/project-traceability-sync/SKILL.md",
              "templates/repo-skeleton/.agents/skills/project-verification-before-completion/SKILL.md",
              "templates/repo-skeleton/.claude-plugin/plugin.json",
              "templates/repo-skeleton/.claude/commands/prd-close.md",
              "templates/repo-skeleton/.claude/skills/project-code-review/SKILL.md",
              "templates/repo-skeleton/.claude/skills/project-decision-ledger/SKILL.md",
              "templates/repo-skeleton/.claude/skills/project-decision-policy/SKILL.md",
              "templates/repo-skeleton/.claude/skills/project-deterministic-workflows/SKILL.md",
              "templates/repo-skeleton/.claude/skills/project-evidence-ledger/SKILL.md",
              "templates/repo-skeleton/.claude/skills/project-evidence/SKILL.md",
              "templates/repo-skeleton/.claude/skills/project-git-workflow/SKILL.md",
              "templates/repo-skeleton/.claude/skills/project-health/SKILL.md",
              "templates/repo-skeleton/.claude/skills/project-local-integration/SKILL.md",
              "templates/repo-skeleton/.claude/skills/project-planning-lifecycle/SKILL.md",
              "templates/repo-skeleton/.claude/skills/project-prd-plugin-setup/SKILL.md",
              "templates/repo-skeleton/.claude/skills/project-request-intake/SKILL.md",
              "templates/repo-skeleton/.claude/skills/project-session-close/SKILL.md",
              "templates/repo-skeleton/.claude/skills/project-systematic-debugging/SKILL.md",
              "templates/repo-skeleton/.claude/skills/project-traceability-sync/SKILL.md",
              "templates/repo-skeleton/.claude/skills/project-verification-before-completion/SKILL.md",
              "templates/repo-skeleton/.codex-plugin/plugin.json",
              "templates/repo-skeleton/.opencode/plugin.json",
              "templates/repo-skeleton/.opencode/skill/project-code-review/SKILL.md",
              "templates/repo-skeleton/.opencode/skill/project-decision-ledger/SKILL.md",
              "templates/repo-skeleton/.opencode/skill/project-decision-policy/SKILL.md",
              "templates/repo-skeleton/.opencode/skill/project-deterministic-workflows/SKILL.md",
              "templates/repo-skeleton/.opencode/skill/project-evidence-ledger/SKILL.md",
              "templates/repo-skeleton/.opencode/skill/project-evidence/SKILL.md",
              "templates/repo-skeleton/.opencode/skill/project-git-workflow/SKILL.md",
              "templates/repo-skeleton/.opencode/skill/project-health/SKILL.md",
              "templates/repo-skeleton/.opencode/skill/project-local-integration/SKILL.md",
              "templates/repo-skeleton/.opencode/skill/project-planning-lifecycle/SKILL.md",
              "templates/repo-skeleton/.opencode/skill/project-prd-plugin-setup/SKILL.md",
              "templates/repo-skeleton/.opencode/skill/project-request-intake/SKILL.md",
              "templates/repo-skeleton/.opencode/skill/project-session-close/SKILL.md",
              "templates/repo-skeleton/.opencode/skill/project-systematic-debugging/SKILL.md",
              "templates/repo-skeleton/.opencode/skill/project-traceability-sync/SKILL.md",
              "templates/repo-skeleton/.opencode/skill/project-verification-before-completion/SKILL.md",
              "templates/repo-skeleton/.prd_plugin/config.json",
              "templates/repo-skeleton/.prd_plugin/method/deterministic-workflows.md",
              "templates/repo-skeleton/.prd_plugin/state/project.json",
              "templates/repo-skeleton/.prd_plugin/templates/config.json",
              "templates/repo-skeleton/.prd_plugin/templates/project.json",
              "templates/repo-skeleton/.prd_plugin/templates/script-install-scope.json",
              "templates/script-install-scope.json",
              "tests/test_feature_skill_audit.py",
              "tests/test_local_workflow_check.py",
              "tests/test_prd_install.py",
              "tests/test_release_check.py",
              "tests/test_workflow_chml_audit.py",
              "wiki/index.md",
              "wiki/log.md",
              "wiki/operations/the-gate-and-enforcement.md",
              "wiki/skills/skills-and-the-router.md"
            ],
            "change_fingerprint": "49b2aa3d5aa92bea20ce5bd25e91bdf1ae14997d440db53c8acec0c171bf2d95",
            "policy": {
              "enabled": false,
              "executor": "ai-collab",
              "neighbor_limit": 12,
              "max_changed_files": 25,
              "fallback": "full",
              "full_suite_triggers": [
                "release",
                "core_change",
                "impact_unavailable",
                "impact_degraded",
                "unmapped_change"
              ],
              "core_paths": [
                "package.json",
                "package-lock.json",
                "pyproject.toml",
                "Cargo.toml",
                "go.mod",
                ".github/workflows/**"
              ],
              "test_patterns": [
                "tests/**",
                "test/**",
                "spec/**",
                "**/*.test.*",
                "**/*.spec.*",
                "test_*.py",
                "*_test.py",
                "*_test.go",
                "**/test_*.py",
                "**/*_test.py",
                "**/*_test.go"
              ]
            },
            "selection_rules": {
              "precedence": [
                "exact_changed",
                "explicit_test_ownership",
                "structural_dependencies",
                "predictive_impact"
              ],
              "require_all_changed_files_mapped": true,
              "widen_before_full": true,
              "predictive_signal_is_sufficient_alone": false
            },
            "fallback": {
              "strategy": "full",
              "conditions": [
                "release",
                "core_change",
                "impact_unavailable",
                "impact_degraded",
                "unmapped_change"
              ]
            },
            "strategy": "full",
            "reason": "test_scope_disabled",
            "runtime_requests": {},
            "plan_hash": "d1f9678483f7f373735ee8b776b65b6b4ee916d5737f2855e5a6407d23f410a0"
          },
          "output_hash": "e2ef2c68eaae81edd39ef186f87e8bdb64da90aaac52b6abd5709f4f0170accd",
          "completed_at": "2026-07-14T20:17:33Z"
        },
        {
          "id": "review",
          "action": "judgment.request",
          "status": "completed",
          "resolved_input_hash": "9fc2fcf33f5de54aa5649ebcbde62c261eea28f36bc65c7de80eab2cdb2a5a55",
          "started_at": "2026-07-14T20:17:33Z",
          "judgment_request": {
            "contract_version": 1,
            "run_id": "WFR-003",
            "step_id": "review",
            "task": "code_review",
            "instructions": "Find material correctness, robustness, security, compatibility, or test gaps; do not restate mechanical facts.",
            "source_refs": [
              "TRK-106"
            ],
            "source_hashes": {},
            "result_schema": {
              "type": "object",
              "required": [
                "summary",
                "findings",
                "source_refs"
              ],
              "properties": {
                "summary": {
                  "type": "string"
                },
                "findings": {
                  "type": "array",
                  "items": {
                    "type": "object"
                  }
                },
                "source_refs": {
                  "type": "array",
                  "items": {
                    "type": "string"
                  }
                }
              }
            },
            "executor": "ai-collab",
            "profile": "fast-capable",
            "constraints": {
              "no_project_state_writes": true,
              "require_source_refs": true
            },
            "request_hash": "29ddb7ee010c6fca7214fb994f6b180ca44c430948d07c1085f040bc14746c8f"
          },
          "output": {
            "summary": "One robustness defect was found and fixed; no critical or important findings remain after focused verification.",
            "findings": [
              {
                "severity": "important",
                "status": "fixed",
                "summary": "Malformed semantic-contract requirement entries could crash the audit instead of returning CHML findings.",
                "resolution": "Added contract-shape validation, guarded skill reads, token validation, and a regression test."
              }
            ],
            "source_refs": [
              "TRK-106"
            ]
          },
          "output_hash": "d6ee9b2ce6a6668e70761603da13760333e7a6c6125d0ec26eb1c87070d67ddf",
          "completed_at": "2026-07-14T20:19:09Z",
          "judgment_result": {
            "request_hash": "29ddb7ee010c6fca7214fb994f6b180ca44c430948d07c1085f040bc14746c8f",
            "executor": "ai-collab",
            "profile": "fast-capable"
          }
        }
      ],
      "completed_at": "2026-07-14T20:19:09Z"
    },
    {
      "id": "WFR-004",
      "schema_version": "1.0",
      "workflow_id": "hub.release",
      "workflow_version": 1,
      "definition_hash": "b8efcc9726266d73719719856dab279ace8f4d21be7b2d01b4f5f08bd3eacc1b",
      "plan_hash": "45a6765f24486f3d1e889f80a653564254c97a7e400033444b676e8ed8cdecb8",
      "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
      "inputs": {},
      "idempotency_key": "release-0.15.1-precommit",
      "status": "cancelled",
      "attempt": 1,
      "created_at": "2026-07-14T20:19:35Z",
      "updated_at": "2026-07-14T20:22:00Z",
      "receipts": [
        {
          "step_id": "diff",
          "action": "git.diff_check",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "11c11db30f4b3f6c758722ba3e27eea08145b7d212f6a157451e364b48475280",
          "completed_at": "2026-07-14T20:19:35Z"
        },
        {
          "step_id": "config",
          "action": "config.audit",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "52f4670d3af925e27fa87b707174b4d88bc7c6d7cc17f7accb4003b9d0b94665",
          "completed_at": "2026-07-14T20:19:35Z"
        },
        {
          "step_id": "state",
          "action": "state.consistency",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "5a1c6e5246defb1b6b6b90ff734db95bece2886b408ab112ed9b8e67222d5568",
          "completed_at": "2026-07-14T20:19:36Z"
        },
        {
          "step_id": "workflow_audit",
          "action": "process.fixed",
          "input_hash": "edf19b269a54d72753f1abc2b8ffcb810c2b7bc377cee7e1698c939f17e0be94",
          "output_hash": "231b43ed70e09c4e7cbcda1094b00e0274dd4a22ff8324da2eb907f705c1316a",
          "completed_at": "2026-07-14T20:19:36Z"
        }
      ],
      "steps": [
        {
          "id": "diff",
          "action": "git.diff_check",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-14T20:19:35Z",
          "output": {
            "passed": true
          },
          "output_hash": "11c11db30f4b3f6c758722ba3e27eea08145b7d212f6a157451e364b48475280",
          "completed_at": "2026-07-14T20:19:35Z"
        },
        {
          "id": "config",
          "action": "config.audit",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-14T20:19:35Z",
          "output": {
            "status": "ok",
            "summary": {
              "settings": 171,
              "mutable": 162,
              "read_only_or_managed": 9,
              "unclassified": 0,
              "unknown": 0,
              "invalid": 0,
              "missing_using_defaults": 0
            },
            "unclassified_keys": [],
            "unknown_keys": [],
            "invalid_values": [],
            "missing_using_defaults": []
          },
          "output_hash": "52f4670d3af925e27fa87b707174b4d88bc7c6d7cc17f7accb4003b9d0b94665",
          "completed_at": "2026-07-14T20:19:35Z"
        },
        {
          "id": "state",
          "action": "state.consistency",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-14T20:19:35Z",
          "output": {
            "status": "ok",
            "repo_root": "D:\\Projects\\prd-plugin",
            "summary": {
              "errors": 0,
              "warnings": 0,
              "infos": 0
            },
            "findings": []
          },
          "output_hash": "5a1c6e5246defb1b6b6b90ff734db95bece2886b408ab112ed9b8e67222d5568",
          "completed_at": "2026-07-14T20:19:36Z"
        },
        {
          "id": "workflow_audit",
          "action": "process.fixed",
          "status": "completed",
          "resolved_input_hash": "edf19b269a54d72753f1abc2b8ffcb810c2b7bc377cee7e1698c939f17e0be94",
          "started_at": "2026-07-14T20:19:36Z",
          "output": {
            "operation": "workflow_chml_audit",
            "command": [
              "python",
              "scripts/workflow_chml_audit.py",
              "--repo-root",
              ".",
              "--format",
              "json"
            ],
            "exit_code": 0,
            "stdout": "{\n  \"status\": \"ok\",\n  \"repo_root\": \"D:\\\\Projects\\\\prd-plugin\",\n  \"summary\": {\n    \"critical\": 0,\n    \"high\": 0,\n    \"medium\": 0,\n    \"low\": 0\n  },\n  \"findings\": []\n}\n",
            "stderr": ""
          },
          "output_hash": "231b43ed70e09c4e7cbcda1094b00e0274dd4a22ff8324da2eb907f705c1316a",
          "completed_at": "2026-07-14T20:19:36Z"
        },
        {
          "id": "suite",
          "action": "process.fixed",
          "status": "pending"
        },
        {
          "id": "release",
          "action": "process.fixed",
          "status": "pending"
        },
        {
          "id": "gaps",
          "action": "process.fixed",
          "status": "pending"
        },
        {
          "id": "package",
          "action": "process.fixed",
          "status": "pending"
        },
        {
          "id": "gate",
          "action": "state.gate",
          "status": "pending"
        }
      ],
      "cancelled_at": "2026-07-14T20:22:00Z",
      "cancel_reason": "MCP bridge timed out before the full-suite step; superseded by a direct deterministic workflow run."
    },
    {
      "id": "WFR-005",
      "schema_version": "1.0",
      "workflow_id": "hub.release",
      "workflow_version": 1,
      "definition_hash": "b8efcc9726266d73719719856dab279ace8f4d21be7b2d01b4f5f08bd3eacc1b",
      "plan_hash": "45a6765f24486f3d1e889f80a653564254c97a7e400033444b676e8ed8cdecb8",
      "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
      "inputs": {},
      "idempotency_key": "release-0.15.1-precommit-direct",
      "status": "failed",
      "attempt": 1,
      "created_at": "2026-07-14T20:22:29Z",
      "updated_at": "2026-07-14T20:23:40Z",
      "receipts": [
        {
          "step_id": "diff",
          "action": "git.diff_check",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "11c11db30f4b3f6c758722ba3e27eea08145b7d212f6a157451e364b48475280",
          "completed_at": "2026-07-14T20:22:29Z"
        },
        {
          "step_id": "config",
          "action": "config.audit",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "52f4670d3af925e27fa87b707174b4d88bc7c6d7cc17f7accb4003b9d0b94665",
          "completed_at": "2026-07-14T20:22:29Z"
        },
        {
          "step_id": "state",
          "action": "state.consistency",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "5a1c6e5246defb1b6b6b90ff734db95bece2886b408ab112ed9b8e67222d5568",
          "completed_at": "2026-07-14T20:22:30Z"
        },
        {
          "step_id": "workflow_audit",
          "action": "process.fixed",
          "input_hash": "edf19b269a54d72753f1abc2b8ffcb810c2b7bc377cee7e1698c939f17e0be94",
          "output_hash": "231b43ed70e09c4e7cbcda1094b00e0274dd4a22ff8324da2eb907f705c1316a",
          "completed_at": "2026-07-14T20:22:30Z"
        }
      ],
      "steps": [
        {
          "id": "diff",
          "action": "git.diff_check",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-14T20:22:29Z",
          "output": {
            "passed": true
          },
          "output_hash": "11c11db30f4b3f6c758722ba3e27eea08145b7d212f6a157451e364b48475280",
          "completed_at": "2026-07-14T20:22:29Z"
        },
        {
          "id": "config",
          "action": "config.audit",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-14T20:22:29Z",
          "output": {
            "status": "ok",
            "summary": {
              "settings": 171,
              "mutable": 162,
              "read_only_or_managed": 9,
              "unclassified": 0,
              "unknown": 0,
              "invalid": 0,
              "missing_using_defaults": 0
            },
            "unclassified_keys": [],
            "unknown_keys": [],
            "invalid_values": [],
            "missing_using_defaults": []
          },
          "output_hash": "52f4670d3af925e27fa87b707174b4d88bc7c6d7cc17f7accb4003b9d0b94665",
          "completed_at": "2026-07-14T20:22:29Z"
        },
        {
          "id": "state",
          "action": "state.consistency",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-14T20:22:29Z",
          "output": {
            "status": "ok",
            "repo_root": "D:\\Projects\\prd-plugin",
            "summary": {
              "errors": 0,
              "warnings": 0,
              "infos": 0
            },
            "findings": []
          },
          "output_hash": "5a1c6e5246defb1b6b6b90ff734db95bece2886b408ab112ed9b8e67222d5568",
          "completed_at": "2026-07-14T20:22:30Z"
        },
        {
          "id": "workflow_audit",
          "action": "process.fixed",
          "status": "completed",
          "resolved_input_hash": "edf19b269a54d72753f1abc2b8ffcb810c2b7bc377cee7e1698c939f17e0be94",
          "started_at": "2026-07-14T20:22:30Z",
          "output": {
            "operation": "workflow_chml_audit",
            "command": [
              "python",
              "scripts/workflow_chml_audit.py",
              "--repo-root",
              ".",
              "--format",
              "json"
            ],
            "exit_code": 0,
            "stdout": "{\n  \"status\": \"ok\",\n  \"repo_root\": \"D:\\\\Projects\\\\prd-plugin\",\n  \"summary\": {\n    \"critical\": 0,\n    \"high\": 0,\n    \"medium\": 0,\n    \"low\": 0\n  },\n  \"findings\": []\n}\n",
            "stderr": ""
          },
          "output_hash": "231b43ed70e09c4e7cbcda1094b00e0274dd4a22ff8324da2eb907f705c1316a",
          "completed_at": "2026-07-14T20:22:30Z"
        },
        {
          "id": "suite",
          "action": "process.fixed",
          "status": "failed",
          "resolved_input_hash": "954e575e48145853f5681eda189186c95a053267158fae669114320f2e53794a",
          "started_at": "2026-07-14T20:22:30Z"
        },
        {
          "id": "release",
          "action": "process.fixed",
          "status": "pending"
        },
        {
          "id": "gaps",
          "action": "process.fixed",
          "status": "pending"
        },
        {
          "id": "package",
          "action": "process.fixed",
          "status": "pending"
        },
        {
          "id": "gate",
          "action": "state.gate",
          "status": "pending"
        }
      ],
      "error": {
        "type": "ActionError",
        "message": "fixed operation local_workflow_check failed (1): - Never store credentials, raw prompts, private chain-of-thought, or unverified claims. - Never hand-edit `.prd_plugin/state/*.json` or `.prd_plugin/ids/registry.json` when the validated authority is available. - Do not run hub-only helpers downstream. Resolve installed helpers under `.prd_plugin/scripts/` and obey the script install-scope policy. - Do not treat an absent remote or CI system as a blocker. - Do not claim version-impacting work complete until the configured release checks pass or a concrete follow-up record exists. ## Staleness Coverage Apply `.prd_plugin/method/staleness-rules.md`. Resolve, refresh with evidence, supersede, or explicitly carry forward stale REQ/TRK/HLT/request-transport and scheduler state before reporting closeout.\"\n\n----------------------------------------------------------------------\nRan 790 tests in 66.864s\n\nFAILED (failures=3)\nLocal workflow check failed:\n- exit 1: python -m unittest discover -s tests -v"
      }
    },
    {
      "id": "WFR-006",
      "schema_version": "1.0",
      "workflow_id": "hub.release",
      "workflow_version": 1,
      "definition_hash": "b8efcc9726266d73719719856dab279ace8f4d21be7b2d01b4f5f08bd3eacc1b",
      "plan_hash": "45a6765f24486f3d1e889f80a653564254c97a7e400033444b676e8ed8cdecb8",
      "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
      "inputs": {},
      "idempotency_key": "release-0.15.1-precommit-final",
      "status": "completed",
      "attempt": 1,
      "created_at": "2026-07-14T20:26:21Z",
      "updated_at": "2026-07-14T20:27:26Z",
      "receipts": [
        {
          "step_id": "diff",
          "action": "git.diff_check",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "11c11db30f4b3f6c758722ba3e27eea08145b7d212f6a157451e364b48475280",
          "completed_at": "2026-07-14T20:26:21Z"
        },
        {
          "step_id": "config",
          "action": "config.audit",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "52f4670d3af925e27fa87b707174b4d88bc7c6d7cc17f7accb4003b9d0b94665",
          "completed_at": "2026-07-14T20:26:21Z"
        },
        {
          "step_id": "state",
          "action": "state.consistency",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "5a1c6e5246defb1b6b6b90ff734db95bece2886b408ab112ed9b8e67222d5568",
          "completed_at": "2026-07-14T20:26:22Z"
        },
        {
          "step_id": "workflow_audit",
          "action": "process.fixed",
          "input_hash": "edf19b269a54d72753f1abc2b8ffcb810c2b7bc377cee7e1698c939f17e0be94",
          "output_hash": "231b43ed70e09c4e7cbcda1094b00e0274dd4a22ff8324da2eb907f705c1316a",
          "completed_at": "2026-07-14T20:26:22Z"
        },
        {
          "step_id": "suite",
          "action": "process.fixed",
          "input_hash": "954e575e48145853f5681eda189186c95a053267158fae669114320f2e53794a",
          "output_hash": "642b8727c2e998ec22f981f938c9ed02c71c10b2ed9b419146c8a69231dcd561",
          "completed_at": "2026-07-14T20:27:23Z"
        },
        {
          "step_id": "release",
          "action": "process.fixed",
          "input_hash": "1e5b0c18d93eb4c2248f9a00adbd438e52f3ef02137477fb8376c69cfe86fc9b",
          "output_hash": "8dc3765df5cf0edf7c94484647faced6f9281ba37b59fffcd9b2f152f026e325",
          "completed_at": "2026-07-14T20:27:24Z"
        },
        {
          "step_id": "gaps",
          "action": "process.fixed",
          "input_hash": "577241909238eeb55683f89d2d2216648dad2e3127397993e22493829a1307a4",
          "output_hash": "f1ace825c6156cddd312dd4463389371d7097de22fc5b1b7a345cc097ef78104",
          "completed_at": "2026-07-14T20:27:24Z"
        },
        {
          "step_id": "package",
          "action": "process.fixed",
          "input_hash": "06cd12e1f3db3d985f9150520afa60f288297ff0ca01a8e813e9bb6291aa8836",
          "output_hash": "846484a5397eb7be5d0f3425d91c4c7bc983420eca69ad9c5b40270b375659ad",
          "completed_at": "2026-07-14T20:27:25Z"
        },
        {
          "step_id": "gate",
          "action": "state.gate",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "a705b176b049df02348354c23988d51f616670b7352ad410321cbe0577edf053",
          "completed_at": "2026-07-14T20:27:26Z"
        }
      ],
      "steps": [
        {
          "id": "diff",
          "action": "git.diff_check",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-14T20:26:21Z",
          "output": {
            "passed": true
          },
          "output_hash": "11c11db30f4b3f6c758722ba3e27eea08145b7d212f6a157451e364b48475280",
          "completed_at": "2026-07-14T20:26:21Z"
        },
        {
          "id": "config",
          "action": "config.audit",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-14T20:26:21Z",
          "output": {
            "status": "ok",
            "summary": {
              "settings": 171,
              "mutable": 162,
              "read_only_or_managed": 9,
              "unclassified": 0,
              "unknown": 0,
              "invalid": 0,
              "missing_using_defaults": 0
            },
            "unclassified_keys": [],
            "unknown_keys": [],
            "invalid_values": [],
            "missing_using_defaults": []
          },
          "output_hash": "52f4670d3af925e27fa87b707174b4d88bc7c6d7cc17f7accb4003b9d0b94665",
          "completed_at": "2026-07-14T20:26:21Z"
        },
        {
          "id": "state",
          "action": "state.consistency",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-14T20:26:21Z",
          "output": {
            "status": "ok",
            "repo_root": "D:\\Projects\\prd-plugin",
            "summary": {
              "errors": 0,
              "warnings": 0,
              "infos": 0
            },
            "findings": []
          },
          "output_hash": "5a1c6e5246defb1b6b6b90ff734db95bece2886b408ab112ed9b8e67222d5568",
          "completed_at": "2026-07-14T20:26:22Z"
        },
        {
          "id": "workflow_audit",
          "action": "process.fixed",
          "status": "completed",
          "resolved_input_hash": "edf19b269a54d72753f1abc2b8ffcb810c2b7bc377cee7e1698c939f17e0be94",
          "started_at": "2026-07-14T20:26:22Z",
          "output": {
            "operation": "workflow_chml_audit",
            "command": [
              "python",
              "scripts/workflow_chml_audit.py",
              "--repo-root",
              ".",
              "--format",
              "json"
            ],
            "exit_code": 0,
            "stdout": "{\n  \"status\": \"ok\",\n  \"repo_root\": \"D:\\\\Projects\\\\prd-plugin\",\n  \"summary\": {\n    \"critical\": 0,\n    \"high\": 0,\n    \"medium\": 0,\n    \"low\": 0\n  },\n  \"findings\": []\n}\n",
            "stderr": ""
          },
          "output_hash": "231b43ed70e09c4e7cbcda1094b00e0274dd4a22ff8324da2eb907f705c1316a",
          "completed_at": "2026-07-14T20:26:22Z"
        },
        {
          "id": "suite",
          "action": "process.fixed",
          "status": "completed",
          "resolved_input_hash": "954e575e48145853f5681eda189186c95a053267158fae669114320f2e53794a",
          "started_at": "2026-07-14T20:26:22Z",
          "output": {
            "operation": "local_workflow_check",
            "command": [
              "python",
              "scripts/local_workflow_check.py"
            ],
            "exit_code": 0,
            "stdout": "Structured file validation passed.\n$ python -m unittest discover -s tests -v\n{\n  \"status\": \"fail\",\n  \"repo_root\": \"C:\\\\Users\\\\marku\\\\AppData\\\\Local\\\\Temp\\\\tmp18l7ec2b\",\n  \"summary\": {\n    \"errors\": 1,\n    \"warnings\": 0\n  },\n  \"findings\": [\n    {\n      \"check\": \"duplicate_id\",\n      \"severity\": \"error\",\n      \"summary\": \"Duplicate id REQ-002 in .prd_plugin/state/requests.json.\",\n      \"required_action\": \"Renumber one record so REQ-002 is unique. Allocate IDs with the MCP tool prd_next_id (or the record tools like prd_open_goal) instead of hand-computing them.\"\n    }\n  ]\n}\nautonomy_level set to guided\nautonomy_level set to autonomous\nPRD Plugin: preserving your existing state/config; refreshing plugin files only. Re-run with --yes to also reset state to skeleton defaults.\nPRD Plugin: preserving your existing state/config; refreshing plugin files only. Re-run with --yes to also reset state to skeleton defaults.\nPRD Plugin: preserving your existing state/config; refreshing plugin files only. Re-run with --yes to also reset state to skeleton defaults.\n{\"decision\": \"block\", \"reason\": \"Autonomous run-until-done: goal TRK-106 is still active. Continue with the next incomplete step toward it \\u2014 do not stop to ask 'shall I proceed?'. If you genuinely need the user (consent floor: push/merge/publish/secrets, or a real blocker), create the file .prd_plugin/local/autonomy-pause with a one-line reason and then stop; the guard will let you. Otherwise keep going.\"}\n$ python scripts/feature_skill_audit.py --repo-root . --format json\n{\n  \"status\": \"ok\",\n  \"repo_root\": \"D:\\\\Projects\\\\prd-plugin\",\n  \"contract\": \"templates/feature-skill-map.json\",\n  \"feature_count\": 15,\n  \"summary\": {\n    \"critical\": 0,\n    \"high\": 0,\n    \"medium\": 0,\n    \"low\": 0\n  },\n  \"findings\": []\n}\n$ python scripts/gap_audit.py --target-version 0.15.1\n# PRD Plugin Gap Audit\n\nTarget version: `0.15.1`\n\n## Findings\n\n- None\n$ python scripts/version_advice.py --installed-repo . --format json --output request-report/version-advice.json\n$ python scripts/release_check.py --output request-report/release-hygiene.md\n$ python scripts/prd_doctor.py --repo-root . --format json --output request-report/prd-doctor.json\n$ python scripts/state_consistency_check.py --repo-root . --format json --output request-report/state-consistency.json\n$ python scripts/prd_install_skills.py --repo-root . --dry-run\n{\n  \"status\": \"dry_run\",\n  \"target_agent\": \"codex\",\n  \"targets\": [\n    {\n      \"agent\": \"codex\",\n      \"target\": \".agents\\\\skills\",\n      \"would_install\": [\n        \"project-architecture\",\n        \"project-blocker-resolution\",\n        \"project-brainstorm\",\n        \"project-change-request\",\n        \"project-code-review\",\n        \"project-decision-ledger\",\n        \"project-decision-policy\",\n        \"project-deterministic-workflows\",\n        \"project-document-branch\",\n        \"project-evidence\",\n        \"project-evidence-ledger\",\n        \"project-git-workflow\",\n        \"project-health\",\n        \"project-implementation-plan\",\n        \"project-llm-wiki\",\n        \"project-local-integration\",\n        \"project-memory\",\n        \"project-planning-lifecycle\",\n        \"project-prd\",\n        \"project-prd-plugin-setup\",\n        \"project-request-intake\",\n        \"project-session-close\",\n        \"project-systematic-debugging\",\n        \"project-test-driven-implementation\",\n        \"project-traceability-review\",\n        \"project-traceability-sync\",\n        \"project-verification-before-completion\"\n      ],\n      \"would_remove\": [\n        \"project-fold-it-in\",\n        \"project-self-audit\"\n      ]\n    }\n  ],\n  \"installed_count\": 0,\n  \"target\": \".agents\\\\skills\",\n  \"installed\": [],\n  \"removed\": [],\n  \"would_install\": [\n    \"project-architecture\",\n    \"project-blocker-resolution\",\n    \"project-brainstorm\",\n    \"project-change-request\",\n    \"project-code-review\",\n    \"project-decision-ledger\",\n    \"project-decision-policy\",\n    \"project-deterministic-workflows\",\n    \"project-document-branch\",\n    \"project-evidence\",\n    \"project-evidence-ledger\",\n    \"project-git-workflow\",\n    \"project-health\",\n    \"project-implementation-plan\",\n    \"project-llm-wiki\",\n    \"project-local-integration\",\n    \"project-memory\",\n    \"project-planning-lifecycle\",\n    \"project-prd\",\n    \"project-prd-plugin-setup\",\n    \"project-request-intake\",\n    \"project-session-close\",\n    \"project-systematic-debugging\",\n    \"project-test-driven-implementation\",\n    \"project-traceability-review\",\n    \"project-traceability-sync\",\n    \"project-verification-before-completion\"\n  ],\n  \"would_remove\": [\n    \"project-fold-it-in\",\n    \"project-self-audit\"\n  ]\n}\n$ python scripts/request_report.py --config .prd_plugin/config.json --format markdown --output request-report/request-report.md\n$ python scripts/request_report.py --config .prd_plugin/config.json --format json --output request-report/request-report.json\n$ python scripts/message_check.py --config .prd_plugin/config.json --format json --output request-report/message-check.json\nLocal workflow check completed.\n",
            "stderr": "silently_truncating) ... ok\ntest_utcp_substrate_action_emits_verification_plan (test_substrate_adapter.AdapterContractTests.test_utcp_substrate_action_emits_verification_plan) ... ok\ntest_workflow_skills_route_execution_through_ai_collab_adapter (test_substrate_adapter.AdapterContractTests.test_workflow_skills_route_execution_through_ai_collab_adapter) ... ok\ntest_all_shipped_configs_are_disabled_by_default_and_identical (test_substrate_adapter.ConfigContractTests.test_all_shipped_configs_are_disabled_by_default_and_identical) ... ok\ntest_cli_registry_validates_modes_and_capability_allowlist (test_substrate_adapter.ConfigContractTests.test_cli_registry_validates_modes_and_capability_allowlist) ... ok\ntest_registry_exposes_substrate_master_mode_and_capabilities (test_substrate_adapter.ConfigContractTests.test_registry_exposes_substrate_master_mode_and_capabilities) ... ok\ntest_adapted_skills_are_downstream_runtime_and_required (test_superpowers_adapted_skills.SuperpowersAdaptedSkillsTests.test_adapted_skills_are_downstream_runtime_and_required) ... ok\ntest_adapted_skills_are_installed_to_repo_local_and_skeleton (test_superpowers_adapted_skills.SuperpowersAdaptedSkillsTests.test_adapted_skills_are_installed_to_repo_local_and_skeleton) ... ok\ntest_adapted_superpowers_skills_exist_with_attribution_and_prd_ids (test_superpowers_adapted_skills.SuperpowersAdaptedSkillsTests.test_adapted_superpowers_skills_exist_with_attribution_and_prd_ids) ... ok\ntest_downstream_skills_do_not_direct_agents_to_run_hub_only_scripts (test_superpowers_adapted_skills.SuperpowersAdaptedSkillsTests.test_downstream_skills_do_not_direct_agents_to_run_hub_only_scripts) ... ok\ntest_notice_records_superpowers_origin (test_superpowers_adapted_skills.SuperpowersAdaptedSkillsTests.test_notice_records_superpowers_origin) ... ok\ntest_skeleton_skill_copies_exist (test_superpowers_adapted_skills.SuperpowersAdaptedSkillsTests.test_skeleton_skill_copies_exist) ... ok\ntest_specific_adaptations_keep_strong_method_and_prd_state_hooks (test_superpowers_adapted_skills.SuperpowersAdaptedSkillsTests.test_specific_adaptations_keep_strong_method_and_prd_state_hooks) ... ok\ntest_verification_guidance_uses_current_change_scope_not_unconditional_full_suite (test_superpowers_adapted_skills.SuperpowersAdaptedSkillsTests.test_verification_guidance_uses_current_change_scope_not_unconditional_full_suite) ... ok\ntest_extracts_affected_paths (test_telemetry.CaptureTurnRecordsTests.test_extracts_affected_paths) ... ok\ntest_extracts_referenced_ids (test_telemetry.CaptureTurnRecordsTests.test_extracts_referenced_ids) ... ok\ntest_marks_failed_tool (test_telemetry.CaptureTurnRecordsTests.test_marks_failed_tool) ... ok\ntest_one_record_per_tool_call (test_telemetry.CaptureTurnRecordsTests.test_one_record_per_tool_call) ... ok\ntest_turn_index_increments_per_prompt (test_telemetry.CaptureTurnRecordsTests.test_turn_index_increments_per_prompt) ... ok\ntest_preserves_benign_args (test_telemetry.RedactArgsTests.test_preserves_benign_args) ... ok\ntest_redacts_credential (test_telemetry.RedactArgsTests.test_redacts_credential) ... ok\ntest_redacts_key (test_telemetry.RedactArgsTests.test_redacts_key) ... ok\ntest_redacts_local_path (test_telemetry.RedactArgsTests.test_redacts_local_path) ... ok\ntest_redacts_nested (test_telemetry.RedactArgsTests.test_redacts_nested) ... ok\ntest_redacts_password (test_telemetry.RedactArgsTests.test_redacts_password) ... ok\ntest_redacts_secret (test_telemetry.RedactArgsTests.test_redacts_secret) ... ok\ntest_redacts_token (test_telemetry.RedactArgsTests.test_redacts_token) ... ok\ntest_scenario (test_telemetry.SyntheticFiveTurnScenarioTests.test_scenario) ... ok\ntest_required_fields_present (test_telemetry.TelemetryRecordSchemaTests.test_required_fields_present) ... ok\ntest_to_dict_is_json_serializable (test_telemetry.TelemetryRecordSchemaTests.test_to_dict_is_json_serializable) ... ok\ntest_appends_to_existing_file (test_telemetry.WriteTelemetryJsonlTests.test_appends_to_existing_file) ... ok\ntest_load_roundtrip (test_telemetry.WriteTelemetryJsonlTests.test_load_roundtrip) ... ok\ntest_load_skips_malformed_lines (test_telemetry.WriteTelemetryJsonlTests.test_load_skips_malformed_lines) ... ok\ntest_writes_one_line_per_record (test_telemetry.WriteTelemetryJsonlTests.test_writes_one_line_per_record) ... ok\ntest_base_ref_is_resolved_locally_and_option_like_values_are_rejected (test_test_scope.ChangedFileTests.test_base_ref_is_resolved_locally_and_option_like_values_are_rejected) ... ok\ntest_collects_staged_unstaged_and_untracked_without_a_remote (test_test_scope.ChangedFileTests.test_collects_staged_unstaged_and_untracked_without_a_remote) ... ok\ntest_rejects_absolute_or_parent_traversal_changed_paths (test_test_scope.ChangedFileTests.test_rejects_absolute_or_parent_traversal_changed_paths) ... ok\ntest_direct_json_cannot_disable_the_safe_full_fallback (test_test_scope.PlanTests.test_direct_json_cannot_disable_the_safe_full_fallback) ... ok\ntest_direct_json_cannot_remove_mandatory_full_suite_triggers (test_test_scope.PlanTests.test_direct_json_cannot_remove_mandatory_full_suite_triggers) ... ok\ntest_disabled_or_unavailable_executor_requires_full_verification (test_test_scope.PlanTests.test_disabled_or_unavailable_executor_requires_full_verification) ... ok\ntest_narrow_change_emits_deterministic_ai_collab_requests (test_test_scope.PlanTests.test_narrow_change_emits_deterministic_ai_collab_requests) ... ok\ntest_no_changes_requires_no_verification_unless_release (test_test_scope.PlanTests.test_no_changes_requires_no_verification_unless_release) ... ok\ntest_plan_tells_runtime_to_fallback_on_degraded_or_unmapped_results (test_test_scope.PlanTests.test_plan_tells_runtime_to_fallback_on_degraded_or_unmapped_results) ... ok\ntest_release_core_and_excessive_changes_require_full_verification (test_test_scope.PlanTests.test_release_core_and_excessive_changes_require_full_verification) ... ok\ntest_document_branch_skill_defines_parallel_tracking_profile_everywhere (test_tracking_branch_policy.TrackingBranchPolicyTests.test_document_branch_skill_defines_parallel_tracking_profile_everywhere) ... ok\ntest_every_direct_tracking_writer_is_parallel_worker_aware_everywhere (test_tracking_branch_policy.TrackingBranchPolicyTests.test_every_direct_tracking_writer_is_parallel_worker_aware_everywhere) ... ok\ntest_memory_and_git_skills_keep_workers_off_canonical_state_everywhere (test_tracking_branch_policy.TrackingBranchPolicyTests.test_memory_and_git_skills_keep_workers_off_canonical_state_everywhere) ... ok\ntest_narrative_branch_manifest_template_is_installed (test_tracking_branch_policy.TrackingBranchPolicyTests.test_narrative_branch_manifest_template_is_installed) ... ok\ntest_user_docs_explain_branch_then_promote_workflow (test_tracking_branch_policy.TrackingBranchPolicyTests.test_user_docs_explain_branch_then_promote_workflow) ... ok\ntest_worker_launch_contract_is_shipped_to_downstream_hosts (test_tracking_branch_policy.TrackingBranchPolicyTests.test_worker_launch_contract_is_shipped_to_downstream_hosts) ... ok\ntest_empty_repo_safe (test_tracking_commands.PrdStatusTests.test_empty_repo_safe) ... ok\ntest_legacy_and_open_statuses_are_not_hidden (test_tracking_commands.PrdStatusTests.test_legacy_and_open_statuses_are_not_hidden) ... ok\ntest_null_status_and_legacy_health_do_not_break_status (test_tracking_commands.PrdStatusTests.test_null_status_and_legacy_health_do_not_break_status) ... ok\ntest_summarizes_state (test_tracking_commands.PrdStatusTests.test_summarizes_state) ... ok\ntest_tracking_branches_are_visible_without_reading_branch_files (test_tracking_commands.PrdStatusTests.test_tracking_branches_are_visible_without_reading_branch_files) ... ok\ntest_commands_exist_in_all_locations (test_tracking_commands.TrackingCommandFileTests.test_commands_exist_in_all_locations) ... ok\ntest_commands_invoke_the_right_workflow (test_tracking_commands.TrackingCommandFileTests.test_commands_invoke_the_right_workflow) ... ok\ntest_prd_status_is_downstream_runtime (test_tracking_commands.TrackingCommandFileTests.test_prd_status_is_downstream_runtime) ... ok\ntest_catalog_describes_latency_and_effective_dependencies (test_unified_config.CatalogTests.test_catalog_describes_latency_and_effective_dependencies) ... ok\ntest_every_shipped_leaf_is_classified (test_unified_config.CatalogTests.test_every_shipped_leaf_is_classified) ... ok\ntest_inventory_separates_non_persistent_control_planes (test_unified_config.CatalogTests.test_inventory_separates_non_persistent_control_planes) ... ok\ntest_inventory_audit_describe_and_profile_commands_emit_json (test_unified_config.CliTests.test_inventory_audit_describe_and_profile_commands_emit_json) ... ok\ntest_audit_rejects_cli_coercions_in_direct_json (test_unified_config.MutationTests.test_audit_rejects_cli_coercions_in_direct_json) ... ok\ntest_audit_rejects_invalid_custom_profiles_and_active_marker (test_unified_config.MutationTests.test_audit_rejects_invalid_custom_profiles_and_active_marker) ... ok\ntest_audit_reports_scalar_configuration_section_without_crashing (test_unified_config.MutationTests.test_audit_reports_scalar_configuration_section_without_crashing) ... ok\ntest_audit_reports_unknown_and_invalid_values (test_unified_config.MutationTests.test_audit_reports_unknown_and_invalid_values) ... ok\ntest_enable_disable_only_accept_mutable_booleans (test_unified_config.MutationTests.test_enable_disable_only_accept_mutable_booleans) ... ok\ntest_failed_atomic_replace_leaves_original_config_untouched (test_unified_config.MutationTests.test_failed_atomic_replace_leaves_original_config_untouched) ... ok\ntest_malformed_config_is_never_replaced_by_a_mutation (test_unified_config.MutationTests.test_malformed_config_is_never_replaced_by_a_mutation) ... ok\ntest_manual_set_marks_profile_custom_and_preserves_style (test_unified_config.MutationTests.test_manual_set_marks_profile_custom_and_preserves_style) ... ok\ntest_scalar_parent_is_not_clobbered_by_nested_set (test_unified_config.MutationTests.test_scalar_parent_is_not_clobbered_by_nested_set) ... ok\ntest_builtin_profile_dry_run_then_atomic_apply (test_unified_config.ProfileTests.test_builtin_profile_dry_run_then_atomic_apply) ... ok\ntest_invalid_custom_profile_never_partially_writes (test_unified_config.ProfileTests.test_invalid_custom_profile_never_partially_writes) ... ok\ntest_save_show_diff_and_delete_custom_profile (test_unified_config.ProfileTests.test_save_show_diff_and_delete_custom_profile) ... ok\ntest_does_not_flag_canonical_prd_state_paths (test_unsubmitted_plugin_request.UnsubmittedPluginRequestTests.test_does_not_flag_canonical_prd_state_paths) ... ok\ntest_does_not_flag_ordinary_project_requests (test_unsubmitted_plugin_request.UnsubmittedPluginRequestTests.test_does_not_flag_ordinary_project_requests) ... ok\ntest_does_not_flag_rejected_requests (test_unsubmitted_plugin_request.UnsubmittedPluginRequestTests.test_does_not_flag_rejected_requests) ... ok\ntest_does_not_flag_when_already_marked_upstream (test_unsubmitted_plugin_request.UnsubmittedPluginRequestTests.test_does_not_flag_when_already_marked_upstream) ... ok\ntest_flags_a_local_request_about_a_plugin_script (test_unsubmitted_plugin_request.UnsubmittedPluginRequestTests.test_flags_a_local_request_about_a_plugin_script) ... ok\ntest_flags_a_request_that_names_itself_upstream (test_unsubmitted_plugin_request.UnsubmittedPluginRequestTests.test_flags_a_request_that_names_itself_upstream) ... ok\ntest_never_fires_in_the_hub_repo_itself (test_unsubmitted_plugin_request.UnsubmittedPluginRequestTests.test_never_fires_in_the_hub_repo_itself) ... ok\ntest_wired_into_run_checks (test_unsubmitted_plugin_request.UnsubmittedPluginRequestTests.test_wired_into_run_checks) ... ok\ntest_appends_version_change_request (test_version_advice.VersionAdviceTests.test_appends_version_change_request) ... ok\ntest_builds_safe_update_advice_for_low_risk_releases (test_version_advice.VersionAdviceTests.test_builds_safe_update_advice_for_low_risk_releases) ... ok\ntest_cli_uses_hub_releases_when_downstream_repo_has_no_releases_file (test_version_advice.VersionAdviceTests.test_cli_uses_hub_releases_when_downstream_repo_has_no_releases_file) ... ok\ntest_detects_installed_version_from_bom_json (test_version_advice.VersionAdviceTests.test_detects_installed_version_from_bom_json) ... ok\ntest_detects_installed_version_from_opencode_plugin_manifest (test_version_advice.VersionAdviceTests.test_detects_installed_version_from_opencode_plugin_manifest) ... ok\ntest_detects_installed_version_from_prd_plugin_config (test_version_advice.VersionAdviceTests.test_detects_installed_version_from_prd_plugin_config) ... ok\ntest_detects_latest_version_from_plugin_manifest (test_version_advice.VersionAdviceTests.test_detects_latest_version_from_plugin_manifest) ... ok\ntest_installed_version_priority_prefers_config_then_codex_then_opencode (test_version_advice.VersionAdviceTests.test_installed_version_priority_prefers_config_then_codex_then_opencode) ... ok\ntest_orders_prerelease_before_final_release (test_version_advice.VersionAdviceTests.test_orders_prerelease_before_final_release) ... ok\ntest_recommends_review_first_for_medium_or_high_risk_release (test_version_advice.VersionAdviceTests.test_recommends_review_first_for_medium_or_high_risk_release) ... ok\ntest_disabled_returns_disabled_and_no_fetch (test_version_check.CheckTests.test_disabled_returns_disabled_and_no_fetch) ... ok\ntest_force_refetches_within_ttl (test_version_check.CheckTests.test_force_refetches_within_ttl) ... ok\ntest_network_failure_is_fail_open (test_version_check.CheckTests.test_network_failure_is_fail_open) ... ok\ntest_no_update_when_current (test_version_check.CheckTests.test_no_update_when_current) ... ok\ntest_status_is_cache_only_no_fetch (test_version_check.CheckTests.test_status_is_cache_only_no_fetch) ... ok\ntest_ttl_cache_avoids_refetch (test_version_check.CheckTests.test_ttl_cache_avoids_refetch) ... ok\ntest_ttl_expiry_refetches (test_version_check.CheckTests.test_ttl_expiry_refetches) ... ok\ntest_update_available_when_npm_is_ahead (test_version_check.CheckTests.test_update_available_when_npm_is_ahead) ... ok\ntest_status_cli_exits_zero (test_version_check.CliTests.test_status_cli_exits_zero) ... ok\ntest_default_ttl_is_responsive_not_a_day (test_version_check.FreshnessTests.test_default_ttl_is_responsive_not_a_day) ... ok\ntest_fetch_latest_accepts_a_timeout (test_version_check.FreshnessTests.test_fetch_latest_accepts_a_timeout) ... ok\ntest_nudge_refreshes_in_session_not_cache_only (test_version_check.FreshnessTests.test_nudge_refreshes_in_session_not_cache_only) ... ok\ntest_registry_default_ttl_matches (test_version_check.FreshnessTests.test_registry_default_ttl_matches) ... ok\ntest_semver_ordering (test_version_check.ParseTests.test_semver_ordering) ... ok\ntest_set_enabled_writes_config (test_version_check.ToggleTests.test_set_enabled_writes_config) ... ok\ntest_config_has_version_check_default_on (test_version_check.WiringTests.test_config_has_version_check_default_on) ... ok\ntest_nudge_surfaces_update_available (test_version_check.WiringTests.test_nudge_surfaces_update_available) ... ok\ntest_prd_version_command_exists (test_version_check.WiringTests.test_prd_version_command_exists) ... ok\ntest_script_registered_downstream (test_version_check.WiringTests.test_script_registered_downstream) ... ok\ntest_plan_cli_emits_json (test_wiki_backfill.CliTests.test_plan_cli_emits_json) ... ok\ntest_status_cli (test_wiki_backfill.CliTests.test_status_cli) ... ok\ntest_marker_written_for_established_repo_gaining_wiki (test_wiki_backfill.InstallerMarkerTests.test_marker_written_for_established_repo_gaining_wiki) ... ok\ntest_no_marker_for_empty_scaffold (test_wiki_backfill.InstallerMarkerTests.test_no_marker_for_empty_scaffold) ... ok\ntest_no_marker_when_wiki_already_exists (test_wiki_backfill.InstallerMarkerTests.test_no_marker_when_wiki_already_exists) ... ok\ntest_no_marker_when_wiki_disabled (test_wiki_backfill.InstallerMarkerTests.test_no_marker_when_wiki_disabled) ... ok\ntest_pending_false_when_absent (test_wiki_backfill.StatusTests.test_pending_false_when_absent) ... ok\ntest_pending_false_when_wiki_already_exists (test_wiki_backfill.StatusTests.test_pending_false_when_wiki_already_exists) ... ok\ntest_pending_true_when_marker_present (test_wiki_backfill.StatusTests.test_pending_true_when_marker_present) ... ok\ntest_plan_excludes_generated_report_artifacts (test_wiki_backfill.SurveyPlanTests.test_plan_excludes_generated_report_artifacts)\nrequest-report/ (incl. its calibration report trees) and docs/evidence/ ... ok\ntest_plan_excludes_plugin_and_vendor_noise (test_wiki_backfill.SurveyPlanTests.test_plan_excludes_plugin_and_vendor_noise) ... ok\ntest_plan_inventories_code_docs_and_state (test_wiki_backfill.SurveyPlanTests.test_plan_inventories_code_docs_and_state) ... ok\ntest_plan_is_read_only (test_wiki_backfill.SurveyPlanTests.test_plan_is_read_only) ... ok\ntest_wiki_drift_in_on_stop_and_default_sets (test_wiki_backfill.WikiDriftMonitorWiringTests.test_wiki_drift_in_on_stop_and_default_sets) ... ok\ntest_current_article_no_drift (test_wiki_backfill.WikiDriftTests.test_current_article_no_drift) ... ok\ntest_drift_cli (test_wiki_backfill.WikiDriftTests.test_drift_cli) ... ok\ntest_far_behind_article_flagged (test_wiki_backfill.WikiDriftTests.test_far_behind_article_flagged) ... ok\ntest_no_wiki_is_ok (test_wiki_backfill.WikiDriftTests.test_no_wiki_is_ok) ... ok\ntest_unstamped_article_flagged (test_wiki_backfill.WikiDriftTests.test_unstamped_article_flagged) ... ok\ntest_nudge_surfaces_pending_backfill (test_wiki_backfill.WiringTests.test_nudge_surfaces_pending_backfill) ... ok\ntest_script_registered_downstream (test_wiki_backfill.WiringTests.test_script_registered_downstream) ... ok\ntest_skill_has_backfill_mode (test_wiki_backfill.WiringTests.test_skill_has_backfill_mode) ... ok\ntest_no_cp1252_unencodable_chars_in_agent_facing_tools (test_windows_console_safe.SourceScanTests.test_no_cp1252_unencodable_chars_in_agent_facing_tools) ... ok\ntest_backfill_pending_status_renders_cp1252_safe (test_windows_console_safe.StatusRenderTests.test_backfill_pending_status_renders_cp1252_safe) ... ok\ntest_repository_workflow_surfaces_are_chml_zero (test_workflow_chml_audit.WorkflowChmlAuditTests.test_repository_workflow_surfaces_are_chml_zero) ... ok\ntest_semantic_skill_finding_is_part_of_workflow_chml (test_workflow_chml_audit.WorkflowChmlAuditTests.test_semantic_skill_finding_is_part_of_workflow_chml) ... ok\ntest_git_workflow_defers_autonomy_to_decision_policy_but_keeps_floor (test_workflow_consistency.AutonomyConflictResolutionTests.test_git_workflow_defers_autonomy_to_decision_policy_but_keeps_floor) ... ok\ntest_request_intake_defers_autonomy_and_owns_graduation (test_workflow_consistency.AutonomyConflictResolutionTests.test_request_intake_defers_autonomy_and_owns_graduation) ... ok\ntest_evidence_pair_states_create_vs_review_boundary (test_workflow_consistency.BoundaryClarityTests.test_evidence_pair_states_create_vs_review_boundary) ... ok\ntest_session_close_states_memory_boundary (test_workflow_consistency.BoundaryClarityTests.test_session_close_states_memory_boundary) ... ok\ntest_document_branch_has_promotion_owner (test_workflow_consistency.DeadEndOwnerTests.test_document_branch_has_promotion_owner) ... ok\ntest_health_findings_have_triage_dispositions (test_workflow_consistency.DeadEndOwnerTests.test_health_findings_have_triage_dispositions) ... ok\ntest_memory_owns_schema_version_changes (test_workflow_consistency.DeadEndOwnerTests.test_memory_owns_schema_version_changes) ... ok\ntest_planning_lifecycle_has_stage_readiness_checkpoints (test_workflow_consistency.DeadEndOwnerTests.test_planning_lifecycle_has_stage_readiness_checkpoints) ... ok\ntest_session_close_runs_traceability_sync (test_workflow_consistency.DeadEndOwnerTests.test_session_close_runs_traceability_sync) ... ok\n\n----------------------------------------------------------------------\nRan 790 tests in 58.796s\n\nOK\n"
          },
          "output_hash": "642b8727c2e998ec22f981f938c9ed02c71c10b2ed9b419146c8a69231dcd561",
          "completed_at": "2026-07-14T20:27:23Z"
        },
        {
          "id": "release",
          "action": "process.fixed",
          "status": "completed",
          "resolved_input_hash": "1e5b0c18d93eb4c2248f9a00adbd438e52f3ef02137477fb8376c69cfe86fc9b",
          "started_at": "2026-07-14T20:27:23Z",
          "output": {
            "operation": "release_check",
            "command": [
              "python",
              "scripts/release_check.py"
            ],
            "exit_code": 0,
            "stdout": "# Release Hygiene Report\n\nBase version: `0.15.0`\nHead version: `0.15.1`\nChanged files checked: 9\n\n## Findings\n\n- None\n",
            "stderr": ""
          },
          "output_hash": "8dc3765df5cf0edf7c94484647faced6f9281ba37b59fffcd9b2f152f026e325",
          "completed_at": "2026-07-14T20:27:24Z"
        },
        {
          "id": "gaps",
          "action": "process.fixed",
          "status": "completed",
          "resolved_input_hash": "577241909238eeb55683f89d2d2216648dad2e3127397993e22493829a1307a4",
          "started_at": "2026-07-14T20:27:24Z",
          "output": {
            "operation": "gap_audit",
            "command": [
              "python",
              "scripts/gap_audit.py",
              "--target-version",
              "0.15.1",
              "--config",
              ".prd_plugin/config.json",
              "--releases",
              ".prd_plugin/state/releases.json"
            ],
            "exit_code": 0,
            "stdout": "# PRD Plugin Gap Audit\n\nTarget version: `0.15.1`\n\n## Findings\n\n- None\n",
            "stderr": ""
          },
          "output_hash": "f1ace825c6156cddd312dd4463389371d7097de22fc5b1b7a345cc097ef78104",
          "completed_at": "2026-07-14T20:27:24Z"
        },
        {
          "id": "package",
          "action": "process.fixed",
          "status": "completed",
          "resolved_input_hash": "06cd12e1f3db3d985f9150520afa60f288297ff0ca01a8e813e9bb6291aa8836",
          "started_at": "2026-07-14T20:27:24Z",
          "output": {
            "operation": "package_check",
            "command": [
              "npm",
              "pack",
              "--dry-run"
            ],
            "exit_code": 0,
            "stdout": "prd-plugin-0.15.1.tgz\n",
            "stderr": "rt.py\nnpm notice 5.5kB scripts/staleness_audit.py\nnpm notice 17.6kB scripts/state_consistency_check.py\nnpm notice 5.8kB scripts/traceability_sync_auto.py\nnpm notice 12.5kB scripts/version_advice.py\nnpm notice 9.6kB scripts/workflow_chml_audit.py\nnpm notice 3.0kB skills/project-architecture/SKILL.md\nnpm notice 7.4kB skills/project-blocker-resolution/SKILL.md\nnpm notice 2.8kB skills/project-brainstorm/SKILL.md\nnpm notice 5.5kB skills/project-change-request/SKILL.md\nnpm notice 5.9kB skills/project-code-review/SKILL.md\nnpm notice 2.7kB skills/project-decision-ledger/SKILL.md\nnpm notice 17.4kB skills/project-decision-policy/SKILL.md\nnpm notice 3.7kB skills/project-deterministic-workflows/SKILL.md\nnpm notice 4.9kB skills/project-document-branch/SKILL.md\nnpm notice 2.7kB skills/project-evidence-ledger/SKILL.md\nnpm notice 3.3kB skills/project-evidence/SKILL.md\nnpm notice 8.9kB skills/project-fold-it-in/SKILL.md\nnpm notice 11.2kB skills/project-git-workflow/SKILL.md\nnpm notice 7.4kB skills/project-health/SKILL.md\nnpm notice 5.6kB skills/project-implementation-plan/SKILL.md\nnpm notice 1.1kB skills/project-llm-wiki/LICENSE\nnpm notice 842B skills/project-llm-wiki/references/archive-template.md\nnpm notice 843B skills/project-llm-wiki/references/article-template.md\nnpm notice 559B skills/project-llm-wiki/references/index-template.md\nnpm notice 317B skills/project-llm-wiki/references/raw-template.md\nnpm notice 15.0kB skills/project-llm-wiki/SKILL.md\nnpm notice 7.4kB skills/project-local-integration/SKILL.md\nnpm notice 8.1kB skills/project-memory/SKILL.md\nnpm notice 5.8kB skills/project-planning-lifecycle/SKILL.md\nnpm notice 4.4kB skills/project-prd-plugin-setup/SKILL.md\nnpm notice 3.5kB skills/project-prd/SKILL.md\nnpm notice 22.1kB skills/project-request-intake/SKILL.md\nnpm notice 5.6kB skills/project-self-audit/SKILL.md\nnpm notice 4.6kB skills/project-session-close/SKILL.md\nnpm notice 3.7kB skills/project-systematic-debugging/SKILL.md\nnpm notice 3.0kB skills/project-test-driven-implementation/SKILL.md\nnpm notice 3.7kB skills/project-traceability-review/SKILL.md\nnpm notice 2.5kB skills/project-traceability-sync/SKILL.md\nnpm notice 5.0kB skills/project-verification-before-completion/SKILL.md\nnpm notice 167B templates/architecture-delta.md\nnpm notice 1.4kB templates/architecture.json\nnpm notice 368B templates/brainstorm.md\nnpm notice 274B templates/changelog.json\nnpm notice 12.9kB templates/config.json\nnpm notice 265B templates/decision-record.md\nnpm notice 398B templates/decisions.json\nnpm notice 372B templates/doc-branch.json\nnpm notice 313B templates/doc-branch.md\nnpm notice 115B templates/evidence.md\nnpm notice 9.8kB templates/feature-skill-map.json\nnpm notice 249B templates/handoff.json\nnpm notice 407B templates/health.json\nnpm notice 695B templates/human-exports/architecture.md\nnpm notice 626B templates/human-exports/implementation-plan.md\nnpm notice 580B templates/human-exports/prd.md\nnpm notice 1.4kB templates/implementation-plan.json\nnpm notice 65B templates/mailbox.json\nnpm notice 348B templates/memory.json\nnpm notice 471B templates/merge-checklist.md\nnpm notice 163B templates/plan-delta.md\nnpm notice 139B templates/prd-delta.md\nnpm notice 1.3kB templates/prd.json\nnpm notice 454B templates/project.json\nnpm notice 125B templates/promoted-session-summary.jsonl\nnpm notice 155.2kB templates/releases.json\nnpm notice 3.0kB templates/repo-skeleton/.agents/skills/project-architecture/SKILL.md\nnpm notice 7.4kB templates/repo-skeleton/.agents/skills/project-blocker-resolution/SKILL.md\nnpm notice 2.8kB templates/repo-skeleton/.agents/skills/project-brainstorm/SKILL.md\nnpm notice 5.5kB templates/repo-skeleton/.agents/skills/project-change-request/SKILL.md\nnpm notice 5.9kB templates/repo-skeleton/.agents/skills/project-code-review/SKILL.md\nnpm notice 2.7kB templates/repo-skeleton/.agents/skills/project-decision-ledger/SKILL.md\nnpm notice 17.4kB templates/repo-skeleton/.agents/skills/project-decision-policy/SKILL.md\nnpm notice 3.7kB templates/repo-skeleton/.agents/skills/project-deterministic-workflows/SKILL.md\nnpm notice 4.9kB templates/repo-skeleton/.agents/skills/project-document-branch/SKILL.md\nnpm notice 2.7kB templates/repo-skeleton/.agents/skills/project-evidence-ledger/SKILL.md\nnpm notice 3.3kB templates/repo-skeleton/.agents/skills/project-evidence/SKILL.md\nnpm notice 11.1kB templates/repo-skeleton/.agents/skills/project-git-workflow/SKILL.md\nnpm notice 7.4kB templates/repo-skeleton/.agents/skills/project-health/SKILL.md\nnpm notice 5.6kB templates/repo-skeleton/.agents/skills/project-implementation-plan/SKILL.md\nnpm notice 1.1kB templates/repo-skeleton/.agents/skills/project-llm-wiki/LICENSE\nnpm notice 842B templates/repo-skeleton/.agents/skills/project-llm-wiki/references/archive-template.md\nnpm notice 843B templates/repo-skeleton/.agents/skills/project-llm-wiki/references/article-template.md\nnpm notice 559B templates/repo-skeleton/.agents/skills/project-llm-wiki/references/index-template.md\nnpm notice 317B templates/repo-skeleton/.agents/skills/project-llm-wiki/references/raw-template.md\nnpm notice 15.0kB templates/repo-skeleton/.agents/skills/project-llm-wiki/SKILL.md\nnpm notice 7.4kB templates/repo-skeleton/.agents/skills/project-local-integration/SKILL.md\nnpm notice 8.1kB templates/repo-skeleton/.agents/skills/project-memory/SKILL.md\nnpm notice 5.8kB templates/repo-skeleton/.agents/skills/project-planning-lifecycle/SKILL.md\nnpm notice 4.4kB templates/repo-skeleton/.agents/skills/project-prd-plugin-setup/SKILL.md\nnpm notice 3.5kB templates/repo-skeleton/.agents/skills/project-prd/SKILL.md\nnpm notice 22.1kB templates/repo-skeleton/.agents/skills/project-request-intake/SKILL.md\nnpm notice 4.6kB templates/repo-skeleton/.agents/skills/project-session-close/SKILL.md\nnpm notice 3.7kB templates/repo-skeleton/.agents/skills/project-systematic-debugging/SKILL.md\nnpm notice 3.0kB templates/repo-skeleton/.agents/skills/project-test-driven-implementation/SKILL.md\nnpm notice 3.7kB templates/repo-skeleton/.agents/skills/project-traceability-review/SKILL.md\nnpm notice 2.5kB templates/repo-skeleton/.agents/skills/project-traceability-sync/SKILL.md\nnpm notice 5.0kB templates/repo-skeleton/.agents/skills/project-verification-before-completion/SKILL.md\nnpm notice 870B templates/repo-skeleton/.claude-plugin/plugin.json\nnpm notice 772B templates/repo-skeleton/.claude/commands/prd-autonomy.md\nnpm notice 488B templates/repo-skeleton/.claude/commands/prd-close.md\nnpm notice 2.0kB templates/repo-skeleton/.claude/commands/prd-config.md\nnpm notice 1.6kB templates/repo-skeleton/.claude/commands/prd-drift.md\nnpm notice 1.4kB templates/repo-skeleton/.claude/commands/prd-graph.md\nnpm notice 1.6kB templates/repo-skeleton/.claude/commands/prd-hooks.md\nnpm notice 639B templates/repo-skeleton/.claude/commands/prd-new.md\nnpm notice 1.6kB templates/repo-skeleton/.claude/commands/prd-reflections.md\nnpm notice 1.8kB templates/repo-skeleton/.claude/commands/prd-report.md\nnpm notice 549B templates/repo-skeleton/.claude/commands/prd-status.md\nnpm notice 974B templates/repo-skeleton/.claude/commands/prd-track.md\nnpm notice 1.0kB templates/repo-skeleton/.claude/commands/prd-version.md\nnpm notice 938B templates/repo-skeleton/.claude/commands/prd-workflow.md\nnpm notice 1.6kB templates/repo-skeleton/.claude/hooks/prd_drift_check.py\nnpm notice 2.0kB templates/repo-skeleton/.claude/hooks/prd_log_skill.py\nnpm notice 4.1kB templates/repo-skeleton/.claude/hooks/prd_nudge.py\nnpm notice 3.7kB templates/repo-skeleton/.claude/hooks/prd_precommit_gate.py\nnpm notice 6.1kB templates/repo-skeleton/.claude/hooks/prd_reflection.py\nnpm notice 3.5kB templates/repo-skeleton/.claude/hooks/prd_session_report.py\nnpm notice 9.8kB templates/repo-skeleton/.claude/hooks/prd_stop_guard.py\nnpm notice 1.3kB templates/repo-skeleton/.claude/settings.json\nnpm notice 3.0kB templates/repo-skeleton/.claude/skills/project-architecture/SKILL.md\nnpm notice 7.4kB templates/repo-skeleton/.claude/skills/project-blocker-resolution/SKILL.md\nnpm notice 2.8kB templates/repo-skeleton/.claude/skills/project-brainstorm/SKILL.md\nnpm notice 5.5kB templates/repo-skeleton/.claude/skills/project-change-request/SKILL.md\nnpm notice 5.9kB templates/repo-skeleton/.claude/skills/project-code-review/SKILL.md\nnpm notice 2.7kB templates/repo-skeleton/.claude/skills/project-decision-ledger/SKILL.md\nnpm notice 17.4kB templates/repo-skeleton/.claude/skills/project-decision-policy/SKILL.md\nnpm notice 3.7kB templates/repo-skeleton/.claude/skills/project-deterministic-workflows/SKILL.md\nnpm notice 4.9kB templates/repo-skeleton/.claude/skills/project-document-branch/SKILL.md\nnpm notice 2.7kB templates/repo-skeleton/.claude/skills/project-evidence-ledger/SKILL.md\nnpm notice 3.3kB templates/repo-skeleton/.claude/skills/project-evidence/SKILL.md\nnpm notice 11.1kB templates/repo-skeleton/.claude/skills/project-git-workflow/SKILL.md\nnpm notice 7.4kB templates/repo-skeleton/.claude/skills/project-health/SKILL.md\nnpm notice 5.6kB templates/repo-skeleton/.claude/skills/project-implementation-plan/SKILL.md\nnpm notice 1.1kB templates/repo-skeleton/.claude/skills/project-llm-wiki/LICENSE\nnpm notice 842B templates/repo-skeleton/.claude/skills/project-llm-wiki/references/archive-template.md\nnpm notice 843B templates/repo-skeleton/.claude/skills/project-llm-wiki/references/article-template.md\nnpm notice 559B templates/repo-skeleton/.claude/skills/project-llm-wiki/references/index-template.md\nnpm notice 317B templates/repo-skeleton/.claude/skills/project-llm-wiki/references/raw-template.md\nnpm notice 15.0kB templates/repo-skeleton/.claude/skills/project-llm-wiki/SKILL.md\nnpm notice 7.4kB templates/repo-skeleton/.claude/skills/project-local-integration/SKILL.md\nnpm notice 8.1kB templates/repo-skeleton/.claude/skills/project-memory/SKILL.md\nnpm notice 5.8kB templates/repo-skeleton/.claude/skills/project-planning-lifecycle/SKILL.md\nnpm notice 4.4kB templates/repo-skeleton/.claude/skills/project-prd-plugin-setup/SKILL.md\nnpm notice 3.5kB templates/repo-skeleton/.claude/skills/project-prd/SKILL.md\nnpm notice 22.1kB templates/repo-skeleton/.claude/skills/project-request-intake/SKILL.md\nnpm notice 4.6kB templates/repo-skeleton/.claude/skills/project-session-close/SKILL.md\nnpm notice 3.7kB templates/repo-skeleton/.claude/skills/project-systematic-debugging/SKILL.md\nnpm notice 3.0kB templates/repo-skeleton/.claude/skills/project-test-driven-implementation/SKILL.md\nnpm notice 3.7kB templates/repo-skeleton/.claude/skills/project-traceability-review/SKILL.md\nnpm notice 2.5kB templates/repo-skeleton/.claude/skills/project-traceability-sync/SKILL.md\nnpm notice 5.0kB templates/repo-skeleton/.claude/skills/project-verification-before-completion/SKILL.md\nnpm notice 3.1kB templates/repo-skeleton/.codex-plugin/plugin.json\nnpm notice 2.8kB templates/repo-skeleton/.codex/hooks.json\nnpm notice 743B templates/repo-skeleton/.githooks/pre-commit\nnpm notice 734B templates/repo-skeleton/.github/workflows/prd-gate.yml\nnpm notice 3.1kB templates/repo-skeleton/.opencode/plugin.json\nnpm notice 3.3kB templates/repo-skeleton/.opencode/plugins/prd-hooks.js\nnpm notice 3.0kB templates/repo-skeleton/.opencode/skill/project-architecture/SKILL.md\nnpm notice 7.4kB templates/repo-skeleton/.opencode/skill/project-blocker-resolution/SKILL.md\nnpm notice 2.8kB templates/repo-skeleton/.opencode/skill/project-brainstorm/SKILL.md\nnpm notice 5.5kB templates/repo-skeleton/.opencode/skill/project-change-request/SKILL.md\nnpm notice 5.9kB templates/repo-skeleton/.opencode/skill/project-code-review/SKILL.md\nnpm notice 2.7kB templates/repo-skeleton/.opencode/skill/project-decision-ledger/SKILL.md\nnpm notice 17.4kB templates/repo-skeleton/.opencode/skill/project-decision-policy/SKILL.md\nnpm notice 3.7kB templates/repo-skeleton/.opencode/skill/project-deterministic-workflows/SKILL.md\nnpm notice 4.9kB templates/repo-skeleton/.opencode/skill/project-document-branch/SKILL.md\nnpm notice 2.7kB templates/repo-skeleton/.opencode/skill/project-evidence-ledger/SKILL.md\nnpm notice 3.3kB templates/repo-skeleton/.opencode/skill/project-evidence/SKILL.md\nnpm notice 11.1kB templates/repo-skeleton/.opencode/skill/project-git-workflow/SKILL.md\nnpm notice 7.4kB templates/repo-skeleton/.opencode/skill/project-health/SKILL.md\nnpm notice 5.6kB templates/repo-skeleton/.opencode/skill/project-implementation-plan/SKILL.md\nnpm notice 1.1kB templates/repo-skeleton/.opencode/skill/project-llm-wiki/LICENSE\nnpm notice 842B templates/repo-skeleton/.opencode/skill/project-llm-wiki/references/archive-template.md\nnpm notice 843B templates/repo-skeleton/.opencode/skill/project-llm-wiki/references/article-template.md\nnpm notice 559B templates/repo-skeleton/.opencode/skill/project-llm-wiki/references/index-template.md\nnpm notice 317B templates/repo-skeleton/.opencode/skill/project-llm-wiki/references/raw-template.md\nnpm notice 15.0kB templates/repo-skeleton/.opencode/skill/project-llm-wiki/SKILL.md\nnpm notice 7.4kB templates/repo-skeleton/.opencode/skill/project-local-integration/SKILL.md\nnpm notice 8.1kB templates/repo-skeleton/.opencode/skill/project-memory/SKILL.md\nnpm notice 5.8kB templates/repo-skeleton/.opencode/skill/project-planning-lifecycle/SKILL.md\nnpm notice 4.4kB templates/repo-skeleton/.opencode/skill/project-prd-plugin-setup/SKILL.md\nnpm notice 3.5kB templates/repo-skeleton/.opencode/skill/project-prd/SKILL.md\nnpm notice 22.1kB templates/repo-skeleton/.opencode/skill/project-request-intake/SKILL.md\nnpm notice 4.6kB templates/repo-skeleton/.opencode/skill/project-session-close/SKILL.md\nnpm notice 3.7kB templates/repo-skeleton/.opencode/skill/project-systematic-debugging/SKILL.md\nnpm notice 3.0kB templates/repo-skeleton/.opencode/skill/project-test-driven-implementation/SKILL.md\nnpm notice 3.7kB templates/repo-skeleton/.opencode/skill/project-traceability-review/SKILL.md\nnpm notice 2.5kB templates/repo-skeleton/.opencode/skill/project-traceability-sync/SKILL.md\nnpm notice 5.0kB templates/repo-skeleton/.opencode/skill/project-verification-before-completion/SKILL.md\nnpm notice 12.7kB templates/repo-skeleton/.prd_plugin/config.json\nnpm notice 1.6kB templates/repo-skeleton/.prd_plugin/hooks/prd_drift_check.py\nnpm notice 9.2kB templates/repo-skeleton/.prd_plugin/hooks/prd_hook_dispatch.py\nnpm notice 2.0kB templates/repo-skeleton/.prd_plugin/hooks/prd_log_skill.py\nnpm notice 4.1kB templates/repo-skeleton/.prd_plugin/hooks/prd_nudge.py\nnpm notice 3.7kB templates/repo-skeleton/.prd_plugin/hooks/prd_precommit_gate.py\nnpm notice 6.1kB templates/repo-skeleton/.prd_plugin/hooks/prd_reflection.py\nnpm notice 3.5kB templates/repo-skeleton/.prd_plugin/hooks/prd_session_report.py\nnpm notice 9.8kB templates/repo-skeleton/.prd_plugin/hooks/prd_stop_guard.py\nnpm notice 3.7kB templates/repo-skeleton/.prd_plugin/ID-SCHEME.md\nnpm notice 581B templates/repo-skeleton/.prd_plugin/ids/registry.json\nnpm notice 12.6kB templates/repo-skeleton/.prd_plugin/METHOD.md\nnpm notice 725B templates/repo-skeleton/.prd_plugin/method/artifact-format.md\nnpm notice 820B templates/repo-skeleton/.prd_plugin/method/completion-gate.md\nnpm notice 3.6kB templates/repo-skeleton/.prd_plugin/method/deterministic-workflows.md\nnpm notice 1.2kB templates/repo-skeleton/.prd_plugin/method/estimation.md\nnpm notice 1.9kB templates/repo-skeleton/.prd_plugin/method/grounding.md\nnpm notice 2.5kB templates/repo-skeleton/.prd_plugin/method/reporting.md\nnpm notice 2.6kB templates/repo-skeleton/.prd_plugin/method/self-service.md\nnpm notice 1.6kB templates/repo-skeleton/.prd_plugin/method/staleness-rules.md\nnpm notice 1.0kB templates/repo-skeleton/.prd_plugin/method/state-validation.md\nnpm notice 47B templates/repo-skeleton/.prd_plugin/state/changelog.json\nnpm notice 49B templates/repo-skeleton/.prd_plugin/state/decisions.json\nnpm notice 157B templates/repo-skeleton/.prd_plugin/state/health.json\nnpm notice 47B templates/repo-skeleton/.prd_plugin/state/memory.json\nnpm notice 286B templates/repo-skeleton/.prd_plugin/state/project.json\nnpm notice 48B templates/repo-skeleton/.prd_plugin/state/releases.json\nnpm notice 48B templates/repo-skeleton/.prd_plugin/state/requests.json\nnpm notice 214B templates/repo-skeleton/.prd_plugin/state/sessions/shared/promoted-session-summaries.jsonl\nnpm notice 51B templates/repo-skeleton/.prd_plugin/state/tracking.json\nnpm notice 48B templates/repo-skeleton/.prd_plugin/state/workflow-runs.json\nnpm notice 167B templates/repo-skeleton/.prd_plugin/templates/architecture-delta.md\nnpm notice 1.4kB templates/repo-skeleton/.prd_plugin/templates/architecture.json\nnpm notice 368B templates/repo-skeleton/.prd_plugin/templates/brainstorm.md\nnpm notice 274B templates/repo-skeleton/.prd_plugin/templates/changelog.json\nnpm notice 11.9kB templates/repo-skeleton/.prd_plugin/templates/config.json\nnpm notice 265B templates/repo-skeleton/.prd_plugin/templates/decision-record.md\nnpm notice 398B templates/repo-skeleton/.prd_plugin/templates/decisions.json\nnpm notice 372B templates/repo-skeleton/.prd_plugin/templates/doc-branch.json\nnpm notice 313B templates/repo-skeleton/.prd_plugin/templates/doc-branch.md\nnpm notice 115B templates/repo-skeleton/.prd_plugin/templates/evidence.md\nnpm notice 249B templates/repo-skeleton/.prd_plugin/templates/handoff.json\nnpm notice 407B templates/repo-skeleton/.prd_plugin/templates/health.json\nnpm notice 695B templates/repo-skeleton/.prd_plugin/templates/human-exports/architecture.md\nnpm notice 626B templates/repo-skeleton/.prd_plugin/templates/human-exports/implementation-plan.md\nnpm notice 580B templates/repo-skeleton/.prd_plugin/templates/human-exports/prd.md\nnpm notice 1.4kB templates/repo-skeleton/.prd_plugin/templates/implementation-plan.json\nnpm notice 65B templates/repo-skeleton/.prd_plugin/templates/mailbox.json\nnpm notice 348B templates/repo-skeleton/.prd_plugin/templates/memory.json\nnpm notice 471B templates/repo-skeleton/.prd_plugin/templates/merge-checklist.md\nnpm notice 163B templates/repo-skeleton/.prd_plugin/templates/plan-delta.md\nnpm notice 139B templates/repo-skeleton/.prd_plugin/templates/prd-delta.md\nnpm notice 1.3kB templates/repo-skeleton/.prd_plugin/templates/prd.json\nnpm notice 454B templates/repo-skeleton/.prd_plugin/templates/project.json\nnpm notice 125B templates/repo-skeleton/.prd_plugin/templates/promoted-session-summary.jsonl\nnpm notice 923B templates/repo-skeleton/.prd_plugin/templates/releases.json\nnpm notice 1.4kB templates/repo-skeleton/.prd_plugin/templates/request.json\nnpm notice 1.7kB templates/repo-skeleton/.prd_plugin/templates/requests.json\nnpm notice 17.5kB templates/repo-skeleton/.prd_plugin/templates/script-install-scope.json\nnpm notice 235B templates/repo-skeleton/.prd_plugin/templates/session.json\nnpm notice 10.6kB templates/repo-skeleton/.prd_plugin/templates/skill-install-scope.json\nnpm notice 317B templates/repo-skeleton/.prd_plugin/templates/submission-package.json\nnpm notice 225B templates/repo-skeleton/.prd_plugin/templates/traceability-matrix.md\nnpm notice 321B templates/repo-skeleton/.prd_plugin/templates/tracking.json\nnpm notice 12.0kB templates/repo-skeleton/.prd_plugin/workflows.json\nnpm notice 11.9kB templates/repo-skeleton/AGENTS.md\nnpm notice 7.4kB templates/repo-skeleton/CLAUDE.md\nnpm notice 11.8kB templates/repo-skeleton/docs/INSTALL-MATRIX.md\nnpm notice 1.4kB templates/request.json\nnpm notice 1.7kB templates/requests.json\nnpm notice 17.5kB templates/script-install-scope.json\nnpm notice 235B templates/session.json\nnpm notice 10.6kB templates/skill-install-scope.json\nnpm notice 317B templates/submission-package.json\nnpm notice 225B templates/traceability-matrix.md\nnpm notice 321B templates/tracking.json\nnpm notice 12.0kB templates/workflows.json\nnpm notice Tarball Details\nnpm notice name: prd-plugin\nnpm notice version: 0.15.1\nnpm notice filename: prd-plugin-0.15.1.tgz\nnpm notice package size: 884.5 kB\nnpm notice unpacked size: 3.5 MB\nnpm notice shasum: 0b3193b2ece346ae670ee8509f954b8e624e3bb6\nnpm notice integrity: sha512-ErdjR+ELG9hC/[...]3rxwVc3MRfLpA==\nnpm notice total files: 476\nnpm notice\n"
          },
          "output_hash": "846484a5397eb7be5d0f3425d91c4c7bc983420eca69ad9c5b40270b375659ad",
          "completed_at": "2026-07-14T20:27:25Z"
        },
        {
          "id": "gate",
          "action": "state.gate",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-14T20:27:25Z",
          "output": {
            "status": "ok",
            "repo_root": "D:\\Projects\\prd-plugin",
            "summary": {
              "errors": 0,
              "warnings": 0
            },
            "findings": []
          },
          "output_hash": "a705b176b049df02348354c23988d51f616670b7352ad410321cbe0577edf053",
          "completed_at": "2026-07-14T20:27:26Z"
        }
      ],
      "completed_at": "2026-07-14T20:27:26Z"
    },
    {
      "id": "WFR-007",
      "schema_version": "1.0",
      "workflow_id": "hub.release",
      "workflow_version": 1,
      "definition_hash": "b8efcc9726266d73719719856dab279ace8f4d21be7b2d01b4f5f08bd3eacc1b",
      "plan_hash": "45a6765f24486f3d1e889f80a653564254c97a7e400033444b676e8ed8cdecb8",
      "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
      "inputs": {},
      "idempotency_key": "release-0.15.1-final-clean",
      "status": "failed",
      "attempt": 1,
      "created_at": "2026-07-14T20:29:49Z",
      "updated_at": "2026-07-14T20:30:54Z",
      "receipts": [
        {
          "step_id": "diff",
          "action": "git.diff_check",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "11c11db30f4b3f6c758722ba3e27eea08145b7d212f6a157451e364b48475280",
          "completed_at": "2026-07-14T20:29:49Z"
        },
        {
          "step_id": "config",
          "action": "config.audit",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "52f4670d3af925e27fa87b707174b4d88bc7c6d7cc17f7accb4003b9d0b94665",
          "completed_at": "2026-07-14T20:29:49Z"
        },
        {
          "step_id": "state",
          "action": "state.consistency",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "5a1c6e5246defb1b6b6b90ff734db95bece2886b408ab112ed9b8e67222d5568",
          "completed_at": "2026-07-14T20:29:49Z"
        },
        {
          "step_id": "workflow_audit",
          "action": "process.fixed",
          "input_hash": "edf19b269a54d72753f1abc2b8ffcb810c2b7bc377cee7e1698c939f17e0be94",
          "output_hash": "231b43ed70e09c4e7cbcda1094b00e0274dd4a22ff8324da2eb907f705c1316a",
          "completed_at": "2026-07-14T20:29:50Z"
        }
      ],
      "steps": [
        {
          "id": "diff",
          "action": "git.diff_check",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-14T20:29:49Z",
          "output": {
            "passed": true
          },
          "output_hash": "11c11db30f4b3f6c758722ba3e27eea08145b7d212f6a157451e364b48475280",
          "completed_at": "2026-07-14T20:29:49Z"
        },
        {
          "id": "config",
          "action": "config.audit",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-14T20:29:49Z",
          "output": {
            "status": "ok",
            "summary": {
              "settings": 171,
              "mutable": 162,
              "read_only_or_managed": 9,
              "unclassified": 0,
              "unknown": 0,
              "invalid": 0,
              "missing_using_defaults": 0
            },
            "unclassified_keys": [],
            "unknown_keys": [],
            "invalid_values": [],
            "missing_using_defaults": []
          },
          "output_hash": "52f4670d3af925e27fa87b707174b4d88bc7c6d7cc17f7accb4003b9d0b94665",
          "completed_at": "2026-07-14T20:29:49Z"
        },
        {
          "id": "state",
          "action": "state.consistency",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-14T20:29:49Z",
          "output": {
            "status": "ok",
            "repo_root": "D:\\Projects\\prd-plugin",
            "summary": {
              "errors": 0,
              "warnings": 0,
              "infos": 0
            },
            "findings": []
          },
          "output_hash": "5a1c6e5246defb1b6b6b90ff734db95bece2886b408ab112ed9b8e67222d5568",
          "completed_at": "2026-07-14T20:29:49Z"
        },
        {
          "id": "workflow_audit",
          "action": "process.fixed",
          "status": "completed",
          "resolved_input_hash": "edf19b269a54d72753f1abc2b8ffcb810c2b7bc377cee7e1698c939f17e0be94",
          "started_at": "2026-07-14T20:29:49Z",
          "output": {
            "operation": "workflow_chml_audit",
            "command": [
              "python",
              "scripts/workflow_chml_audit.py",
              "--repo-root",
              ".",
              "--format",
              "json"
            ],
            "exit_code": 0,
            "stdout": "{\n  \"status\": \"ok\",\n  \"repo_root\": \"D:\\\\Projects\\\\prd-plugin\",\n  \"summary\": {\n    \"critical\": 0,\n    \"high\": 0,\n    \"medium\": 0,\n    \"low\": 0\n  },\n  \"findings\": []\n}\n",
            "stderr": ""
          },
          "output_hash": "231b43ed70e09c4e7cbcda1094b00e0274dd4a22ff8324da2eb907f705c1316a",
          "completed_at": "2026-07-14T20:29:50Z"
        },
        {
          "id": "suite",
          "action": "process.fixed",
          "status": "failed",
          "resolved_input_hash": "954e575e48145853f5681eda189186c95a053267158fae669114320f2e53794a",
          "started_at": "2026-07-14T20:29:50Z"
        },
        {
          "id": "release",
          "action": "process.fixed",
          "status": "pending"
        },
        {
          "id": "gaps",
          "action": "process.fixed",
          "status": "pending"
        },
        {
          "id": "package",
          "action": "process.fixed",
          "status": "pending"
        },
        {
          "id": "gate",
          "action": "state.gate",
          "status": "pending"
        }
      ],
      "error": {
        "type": "ActionError",
        "message": "fixed operation local_workflow_check failed (1): ow(\n                                       ~~~~~~~~~~~~~~~~~~~~~~^\n        self.root, \"parallel\", {\"value\": value}, idempotency_key=f\"value-{value}\"), range(12)))\n        ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n  File \"D:\\Projects\\prd-plugin\\scripts\\prd_workflows.py\", line 782, in run_workflow\n    with _StateLock(root):\n         ~~~~~~~~~~^^^^^^\n  File \"D:\\Projects\\prd-plugin\\scripts\\prd_workflows.py\", line 119, in __enter__\n    self.path.mkdir()\n    ~~~~~~~~~~~~~~~^^\n  File \"C:\\Users\\marku\\AppData\\Local\\Python\\pythoncore-3.14-64\\Lib\\pathlib\\__init__.py\", line 1011, in mkdir\n    os.mkdir(self, mode)\n    ~~~~~~~~^^^^^^^^^^^^\nPermissionError: [WinError 5] Access is denied: 'C:\\\\Users\\\\marku\\\\AppData\\\\Local\\\\Temp\\\\tmp4yvle8cf\\\\.prd_plugin\\\\local\\\\mcp-state.lock'\n\n----------------------------------------------------------------------\nRan 791 tests in 61.174s\n\nFAILED (errors=1)\nLocal workflow check failed:\n- exit 1: python -m unittest discover -s tests -v"
      }
    },
    {
      "id": "WFR-008",
      "schema_version": "1.0",
      "workflow_id": "hub.release",
      "workflow_version": 1,
      "definition_hash": "b8efcc9726266d73719719856dab279ace8f4d21be7b2d01b4f5f08bd3eacc1b",
      "plan_hash": "45a6765f24486f3d1e889f80a653564254c97a7e400033444b676e8ed8cdecb8",
      "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
      "inputs": {},
      "idempotency_key": "release-0.15.1-final-after-lock-fix",
      "status": "completed",
      "attempt": 1,
      "created_at": "2026-07-14T20:33:37Z",
      "updated_at": "2026-07-14T20:34:55Z",
      "receipts": [
        {
          "step_id": "diff",
          "action": "git.diff_check",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "11c11db30f4b3f6c758722ba3e27eea08145b7d212f6a157451e364b48475280",
          "completed_at": "2026-07-14T20:33:38Z"
        },
        {
          "step_id": "config",
          "action": "config.audit",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "52f4670d3af925e27fa87b707174b4d88bc7c6d7cc17f7accb4003b9d0b94665",
          "completed_at": "2026-07-14T20:33:38Z"
        },
        {
          "step_id": "state",
          "action": "state.consistency",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "5a1c6e5246defb1b6b6b90ff734db95bece2886b408ab112ed9b8e67222d5568",
          "completed_at": "2026-07-14T20:33:38Z"
        },
        {
          "step_id": "workflow_audit",
          "action": "process.fixed",
          "input_hash": "edf19b269a54d72753f1abc2b8ffcb810c2b7bc377cee7e1698c939f17e0be94",
          "output_hash": "231b43ed70e09c4e7cbcda1094b00e0274dd4a22ff8324da2eb907f705c1316a",
          "completed_at": "2026-07-14T20:33:38Z"
        },
        {
          "step_id": "suite",
          "action": "process.fixed",
          "input_hash": "954e575e48145853f5681eda189186c95a053267158fae669114320f2e53794a",
          "output_hash": "6b2fc265ddddf0696ba72101a549091162eb5b6b186d3795b66a7c225c423369",
          "completed_at": "2026-07-14T20:34:52Z"
        },
        {
          "step_id": "release",
          "action": "process.fixed",
          "input_hash": "1e5b0c18d93eb4c2248f9a00adbd438e52f3ef02137477fb8376c69cfe86fc9b",
          "output_hash": "8dc3765df5cf0edf7c94484647faced6f9281ba37b59fffcd9b2f152f026e325",
          "completed_at": "2026-07-14T20:34:52Z"
        },
        {
          "step_id": "gaps",
          "action": "process.fixed",
          "input_hash": "577241909238eeb55683f89d2d2216648dad2e3127397993e22493829a1307a4",
          "output_hash": "f1ace825c6156cddd312dd4463389371d7097de22fc5b1b7a345cc097ef78104",
          "completed_at": "2026-07-14T20:34:52Z"
        },
        {
          "step_id": "package",
          "action": "process.fixed",
          "input_hash": "06cd12e1f3db3d985f9150520afa60f288297ff0ca01a8e813e9bb6291aa8836",
          "output_hash": "709615d8076303381dc73dfa114960cacb5fccd3318266d912854c8ec01bd66a",
          "completed_at": "2026-07-14T20:34:54Z"
        },
        {
          "step_id": "gate",
          "action": "state.gate",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "a705b176b049df02348354c23988d51f616670b7352ad410321cbe0577edf053",
          "completed_at": "2026-07-14T20:34:55Z"
        }
      ],
      "steps": [
        {
          "id": "diff",
          "action": "git.diff_check",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-14T20:33:37Z",
          "output": {
            "passed": true
          },
          "output_hash": "11c11db30f4b3f6c758722ba3e27eea08145b7d212f6a157451e364b48475280",
          "completed_at": "2026-07-14T20:33:38Z"
        },
        {
          "id": "config",
          "action": "config.audit",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-14T20:33:38Z",
          "output": {
            "status": "ok",
            "summary": {
              "settings": 171,
              "mutable": 162,
              "read_only_or_managed": 9,
              "unclassified": 0,
              "unknown": 0,
              "invalid": 0,
              "missing_using_defaults": 0
            },
            "unclassified_keys": [],
            "unknown_keys": [],
            "invalid_values": [],
            "missing_using_defaults": []
          },
          "output_hash": "52f4670d3af925e27fa87b707174b4d88bc7c6d7cc17f7accb4003b9d0b94665",
          "completed_at": "2026-07-14T20:33:38Z"
        },
        {
          "id": "state",
          "action": "state.consistency",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-14T20:33:38Z",
          "output": {
            "status": "ok",
            "repo_root": "D:\\Projects\\prd-plugin",
            "summary": {
              "errors": 0,
              "warnings": 0,
              "infos": 0
            },
            "findings": []
          },
          "output_hash": "5a1c6e5246defb1b6b6b90ff734db95bece2886b408ab112ed9b8e67222d5568",
          "completed_at": "2026-07-14T20:33:38Z"
        },
        {
          "id": "workflow_audit",
          "action": "process.fixed",
          "status": "completed",
          "resolved_input_hash": "edf19b269a54d72753f1abc2b8ffcb810c2b7bc377cee7e1698c939f17e0be94",
          "started_at": "2026-07-14T20:33:38Z",
          "output": {
            "operation": "workflow_chml_audit",
            "command": [
              "python",
              "scripts/workflow_chml_audit.py",
              "--repo-root",
              ".",
              "--format",
              "json"
            ],
            "exit_code": 0,
            "stdout": "{\n  \"status\": \"ok\",\n  \"repo_root\": \"D:\\\\Projects\\\\prd-plugin\",\n  \"summary\": {\n    \"critical\": 0,\n    \"high\": 0,\n    \"medium\": 0,\n    \"low\": 0\n  },\n  \"findings\": []\n}\n",
            "stderr": ""
          },
          "output_hash": "231b43ed70e09c4e7cbcda1094b00e0274dd4a22ff8324da2eb907f705c1316a",
          "completed_at": "2026-07-14T20:33:38Z"
        },
        {
          "id": "suite",
          "action": "process.fixed",
          "status": "completed",
          "resolved_input_hash": "954e575e48145853f5681eda189186c95a053267158fae669114320f2e53794a",
          "started_at": "2026-07-14T20:33:38Z",
          "output": {
            "operation": "local_workflow_check",
            "command": [
              "python",
              "scripts/local_workflow_check.py"
            ],
            "exit_code": 0,
            "stdout": "Structured file validation passed.\n$ python -m unittest discover -s tests -v\n{\n  \"status\": \"fail\",\n  \"repo_root\": \"C:\\\\Users\\\\marku\\\\AppData\\\\Local\\\\Temp\\\\tmpw92lb0vi\",\n  \"summary\": {\n    \"errors\": 1,\n    \"warnings\": 0\n  },\n  \"findings\": [\n    {\n      \"check\": \"duplicate_id\",\n      \"severity\": \"error\",\n      \"summary\": \"Duplicate id REQ-002 in .prd_plugin/state/requests.json.\",\n      \"required_action\": \"Renumber one record so REQ-002 is unique. Allocate IDs with the MCP tool prd_next_id (or the record tools like prd_open_goal) instead of hand-computing them.\"\n    }\n  ]\n}\nautonomy_level set to guided\nautonomy_level set to autonomous\nPRD Plugin: preserving your existing state/config; refreshing plugin files only. Re-run with --yes to also reset state to skeleton defaults.\nPRD Plugin: preserving your existing state/config; refreshing plugin files only. Re-run with --yes to also reset state to skeleton defaults.\nPRD Plugin: preserving your existing state/config; refreshing plugin files only. Re-run with --yes to also reset state to skeleton defaults.\n{\"decision\": \"block\", \"reason\": \"Autonomous run-until-done: goal TRK-106 is still active. Continue with the next incomplete step toward it \\u2014 do not stop to ask 'shall I proceed?'. If you genuinely need the user (consent floor: push/merge/publish/secrets, or a real blocker), create the file .prd_plugin/local/autonomy-pause with a one-line reason and then stop; the guard will let you. Otherwise keep going.\"}\n$ python scripts/feature_skill_audit.py --repo-root . --format json\n{\n  \"status\": \"ok\",\n  \"repo_root\": \"D:\\\\Projects\\\\prd-plugin\",\n  \"contract\": \"templates/feature-skill-map.json\",\n  \"feature_count\": 15,\n  \"summary\": {\n    \"critical\": 0,\n    \"high\": 0,\n    \"medium\": 0,\n    \"low\": 0\n  },\n  \"findings\": []\n}\n$ python scripts/gap_audit.py --target-version 0.15.1\n# PRD Plugin Gap Audit\n\nTarget version: `0.15.1`\n\n## Findings\n\n- None\n$ python scripts/version_advice.py --installed-repo . --format json --output request-report/version-advice.json\n$ python scripts/release_check.py --output request-report/release-hygiene.md\n$ python scripts/prd_doctor.py --repo-root . --format json --output request-report/prd-doctor.json\n$ python scripts/state_consistency_check.py --repo-root . --format json --output request-report/state-consistency.json\n$ python scripts/prd_install_skills.py --repo-root . --dry-run\n{\n  \"status\": \"dry_run\",\n  \"target_agent\": \"codex\",\n  \"targets\": [\n    {\n      \"agent\": \"codex\",\n      \"target\": \".agents\\\\skills\",\n      \"would_install\": [\n        \"project-architecture\",\n        \"project-blocker-resolution\",\n        \"project-brainstorm\",\n        \"project-change-request\",\n        \"project-code-review\",\n        \"project-decision-ledger\",\n        \"project-decision-policy\",\n        \"project-deterministic-workflows\",\n        \"project-document-branch\",\n        \"project-evidence\",\n        \"project-evidence-ledger\",\n        \"project-git-workflow\",\n        \"project-health\",\n        \"project-implementation-plan\",\n        \"project-llm-wiki\",\n        \"project-local-integration\",\n        \"project-memory\",\n        \"project-planning-lifecycle\",\n        \"project-prd\",\n        \"project-prd-plugin-setup\",\n        \"project-request-intake\",\n        \"project-session-close\",\n        \"project-systematic-debugging\",\n        \"project-test-driven-implementation\",\n        \"project-traceability-review\",\n        \"project-traceability-sync\",\n        \"project-verification-before-completion\"\n      ],\n      \"would_remove\": [\n        \"project-fold-it-in\",\n        \"project-self-audit\"\n      ]\n    }\n  ],\n  \"installed_count\": 0,\n  \"target\": \".agents\\\\skills\",\n  \"installed\": [],\n  \"removed\": [],\n  \"would_install\": [\n    \"project-architecture\",\n    \"project-blocker-resolution\",\n    \"project-brainstorm\",\n    \"project-change-request\",\n    \"project-code-review\",\n    \"project-decision-ledger\",\n    \"project-decision-policy\",\n    \"project-deterministic-workflows\",\n    \"project-document-branch\",\n    \"project-evidence\",\n    \"project-evidence-ledger\",\n    \"project-git-workflow\",\n    \"project-health\",\n    \"project-implementation-plan\",\n    \"project-llm-wiki\",\n    \"project-local-integration\",\n    \"project-memory\",\n    \"project-planning-lifecycle\",\n    \"project-prd\",\n    \"project-prd-plugin-setup\",\n    \"project-request-intake\",\n    \"project-session-close\",\n    \"project-systematic-debugging\",\n    \"project-test-driven-implementation\",\n    \"project-traceability-review\",\n    \"project-traceability-sync\",\n    \"project-verification-before-completion\"\n  ],\n  \"would_remove\": [\n    \"project-fold-it-in\",\n    \"project-self-audit\"\n  ]\n}\n$ python scripts/request_report.py --config .prd_plugin/config.json --format markdown --output request-report/request-report.md\n$ python scripts/request_report.py --config .prd_plugin/config.json --format json --output request-report/request-report.json\n$ python scripts/message_check.py --config .prd_plugin/config.json --format json --output request-report/message-check.json\nLocal workflow check completed.\n",
            "stderr": "silently_truncating) ... ok\ntest_utcp_substrate_action_emits_verification_plan (test_substrate_adapter.AdapterContractTests.test_utcp_substrate_action_emits_verification_plan) ... ok\ntest_workflow_skills_route_execution_through_ai_collab_adapter (test_substrate_adapter.AdapterContractTests.test_workflow_skills_route_execution_through_ai_collab_adapter) ... ok\ntest_all_shipped_configs_are_disabled_by_default_and_identical (test_substrate_adapter.ConfigContractTests.test_all_shipped_configs_are_disabled_by_default_and_identical) ... ok\ntest_cli_registry_validates_modes_and_capability_allowlist (test_substrate_adapter.ConfigContractTests.test_cli_registry_validates_modes_and_capability_allowlist) ... ok\ntest_registry_exposes_substrate_master_mode_and_capabilities (test_substrate_adapter.ConfigContractTests.test_registry_exposes_substrate_master_mode_and_capabilities) ... ok\ntest_adapted_skills_are_downstream_runtime_and_required (test_superpowers_adapted_skills.SuperpowersAdaptedSkillsTests.test_adapted_skills_are_downstream_runtime_and_required) ... ok\ntest_adapted_skills_are_installed_to_repo_local_and_skeleton (test_superpowers_adapted_skills.SuperpowersAdaptedSkillsTests.test_adapted_skills_are_installed_to_repo_local_and_skeleton) ... ok\ntest_adapted_superpowers_skills_exist_with_attribution_and_prd_ids (test_superpowers_adapted_skills.SuperpowersAdaptedSkillsTests.test_adapted_superpowers_skills_exist_with_attribution_and_prd_ids) ... ok\ntest_downstream_skills_do_not_direct_agents_to_run_hub_only_scripts (test_superpowers_adapted_skills.SuperpowersAdaptedSkillsTests.test_downstream_skills_do_not_direct_agents_to_run_hub_only_scripts) ... ok\ntest_notice_records_superpowers_origin (test_superpowers_adapted_skills.SuperpowersAdaptedSkillsTests.test_notice_records_superpowers_origin) ... ok\ntest_skeleton_skill_copies_exist (test_superpowers_adapted_skills.SuperpowersAdaptedSkillsTests.test_skeleton_skill_copies_exist) ... ok\ntest_specific_adaptations_keep_strong_method_and_prd_state_hooks (test_superpowers_adapted_skills.SuperpowersAdaptedSkillsTests.test_specific_adaptations_keep_strong_method_and_prd_state_hooks) ... ok\ntest_verification_guidance_uses_current_change_scope_not_unconditional_full_suite (test_superpowers_adapted_skills.SuperpowersAdaptedSkillsTests.test_verification_guidance_uses_current_change_scope_not_unconditional_full_suite) ... ok\ntest_extracts_affected_paths (test_telemetry.CaptureTurnRecordsTests.test_extracts_affected_paths) ... ok\ntest_extracts_referenced_ids (test_telemetry.CaptureTurnRecordsTests.test_extracts_referenced_ids) ... ok\ntest_marks_failed_tool (test_telemetry.CaptureTurnRecordsTests.test_marks_failed_tool) ... ok\ntest_one_record_per_tool_call (test_telemetry.CaptureTurnRecordsTests.test_one_record_per_tool_call) ... ok\ntest_turn_index_increments_per_prompt (test_telemetry.CaptureTurnRecordsTests.test_turn_index_increments_per_prompt) ... ok\ntest_preserves_benign_args (test_telemetry.RedactArgsTests.test_preserves_benign_args) ... ok\ntest_redacts_credential (test_telemetry.RedactArgsTests.test_redacts_credential) ... ok\ntest_redacts_key (test_telemetry.RedactArgsTests.test_redacts_key) ... ok\ntest_redacts_local_path (test_telemetry.RedactArgsTests.test_redacts_local_path) ... ok\ntest_redacts_nested (test_telemetry.RedactArgsTests.test_redacts_nested) ... ok\ntest_redacts_password (test_telemetry.RedactArgsTests.test_redacts_password) ... ok\ntest_redacts_secret (test_telemetry.RedactArgsTests.test_redacts_secret) ... ok\ntest_redacts_token (test_telemetry.RedactArgsTests.test_redacts_token) ... ok\ntest_scenario (test_telemetry.SyntheticFiveTurnScenarioTests.test_scenario) ... ok\ntest_required_fields_present (test_telemetry.TelemetryRecordSchemaTests.test_required_fields_present) ... ok\ntest_to_dict_is_json_serializable (test_telemetry.TelemetryRecordSchemaTests.test_to_dict_is_json_serializable) ... ok\ntest_appends_to_existing_file (test_telemetry.WriteTelemetryJsonlTests.test_appends_to_existing_file) ... ok\ntest_load_roundtrip (test_telemetry.WriteTelemetryJsonlTests.test_load_roundtrip) ... ok\ntest_load_skips_malformed_lines (test_telemetry.WriteTelemetryJsonlTests.test_load_skips_malformed_lines) ... ok\ntest_writes_one_line_per_record (test_telemetry.WriteTelemetryJsonlTests.test_writes_one_line_per_record) ... ok\ntest_base_ref_is_resolved_locally_and_option_like_values_are_rejected (test_test_scope.ChangedFileTests.test_base_ref_is_resolved_locally_and_option_like_values_are_rejected) ... ok\ntest_collects_staged_unstaged_and_untracked_without_a_remote (test_test_scope.ChangedFileTests.test_collects_staged_unstaged_and_untracked_without_a_remote) ... ok\ntest_rejects_absolute_or_parent_traversal_changed_paths (test_test_scope.ChangedFileTests.test_rejects_absolute_or_parent_traversal_changed_paths) ... ok\ntest_direct_json_cannot_disable_the_safe_full_fallback (test_test_scope.PlanTests.test_direct_json_cannot_disable_the_safe_full_fallback) ... ok\ntest_direct_json_cannot_remove_mandatory_full_suite_triggers (test_test_scope.PlanTests.test_direct_json_cannot_remove_mandatory_full_suite_triggers) ... ok\ntest_disabled_or_unavailable_executor_requires_full_verification (test_test_scope.PlanTests.test_disabled_or_unavailable_executor_requires_full_verification) ... ok\ntest_narrow_change_emits_deterministic_ai_collab_requests (test_test_scope.PlanTests.test_narrow_change_emits_deterministic_ai_collab_requests) ... ok\ntest_no_changes_requires_no_verification_unless_release (test_test_scope.PlanTests.test_no_changes_requires_no_verification_unless_release) ... ok\ntest_plan_tells_runtime_to_fallback_on_degraded_or_unmapped_results (test_test_scope.PlanTests.test_plan_tells_runtime_to_fallback_on_degraded_or_unmapped_results) ... ok\ntest_release_core_and_excessive_changes_require_full_verification (test_test_scope.PlanTests.test_release_core_and_excessive_changes_require_full_verification) ... ok\ntest_document_branch_skill_defines_parallel_tracking_profile_everywhere (test_tracking_branch_policy.TrackingBranchPolicyTests.test_document_branch_skill_defines_parallel_tracking_profile_everywhere) ... ok\ntest_every_direct_tracking_writer_is_parallel_worker_aware_everywhere (test_tracking_branch_policy.TrackingBranchPolicyTests.test_every_direct_tracking_writer_is_parallel_worker_aware_everywhere) ... ok\ntest_memory_and_git_skills_keep_workers_off_canonical_state_everywhere (test_tracking_branch_policy.TrackingBranchPolicyTests.test_memory_and_git_skills_keep_workers_off_canonical_state_everywhere) ... ok\ntest_narrative_branch_manifest_template_is_installed (test_tracking_branch_policy.TrackingBranchPolicyTests.test_narrative_branch_manifest_template_is_installed) ... ok\ntest_user_docs_explain_branch_then_promote_workflow (test_tracking_branch_policy.TrackingBranchPolicyTests.test_user_docs_explain_branch_then_promote_workflow) ... ok\ntest_worker_launch_contract_is_shipped_to_downstream_hosts (test_tracking_branch_policy.TrackingBranchPolicyTests.test_worker_launch_contract_is_shipped_to_downstream_hosts) ... ok\ntest_empty_repo_safe (test_tracking_commands.PrdStatusTests.test_empty_repo_safe) ... ok\ntest_legacy_and_open_statuses_are_not_hidden (test_tracking_commands.PrdStatusTests.test_legacy_and_open_statuses_are_not_hidden) ... ok\ntest_null_status_and_legacy_health_do_not_break_status (test_tracking_commands.PrdStatusTests.test_null_status_and_legacy_health_do_not_break_status) ... ok\ntest_summarizes_state (test_tracking_commands.PrdStatusTests.test_summarizes_state) ... ok\ntest_tracking_branches_are_visible_without_reading_branch_files (test_tracking_commands.PrdStatusTests.test_tracking_branches_are_visible_without_reading_branch_files) ... ok\ntest_commands_exist_in_all_locations (test_tracking_commands.TrackingCommandFileTests.test_commands_exist_in_all_locations) ... ok\ntest_commands_invoke_the_right_workflow (test_tracking_commands.TrackingCommandFileTests.test_commands_invoke_the_right_workflow) ... ok\ntest_prd_status_is_downstream_runtime (test_tracking_commands.TrackingCommandFileTests.test_prd_status_is_downstream_runtime) ... ok\ntest_catalog_describes_latency_and_effective_dependencies (test_unified_config.CatalogTests.test_catalog_describes_latency_and_effective_dependencies) ... ok\ntest_every_shipped_leaf_is_classified (test_unified_config.CatalogTests.test_every_shipped_leaf_is_classified) ... ok\ntest_inventory_separates_non_persistent_control_planes (test_unified_config.CatalogTests.test_inventory_separates_non_persistent_control_planes) ... ok\ntest_inventory_audit_describe_and_profile_commands_emit_json (test_unified_config.CliTests.test_inventory_audit_describe_and_profile_commands_emit_json) ... ok\ntest_audit_rejects_cli_coercions_in_direct_json (test_unified_config.MutationTests.test_audit_rejects_cli_coercions_in_direct_json) ... ok\ntest_audit_rejects_invalid_custom_profiles_and_active_marker (test_unified_config.MutationTests.test_audit_rejects_invalid_custom_profiles_and_active_marker) ... ok\ntest_audit_reports_scalar_configuration_section_without_crashing (test_unified_config.MutationTests.test_audit_reports_scalar_configuration_section_without_crashing) ... ok\ntest_audit_reports_unknown_and_invalid_values (test_unified_config.MutationTests.test_audit_reports_unknown_and_invalid_values) ... ok\ntest_enable_disable_only_accept_mutable_booleans (test_unified_config.MutationTests.test_enable_disable_only_accept_mutable_booleans) ... ok\ntest_failed_atomic_replace_leaves_original_config_untouched (test_unified_config.MutationTests.test_failed_atomic_replace_leaves_original_config_untouched) ... ok\ntest_malformed_config_is_never_replaced_by_a_mutation (test_unified_config.MutationTests.test_malformed_config_is_never_replaced_by_a_mutation) ... ok\ntest_manual_set_marks_profile_custom_and_preserves_style (test_unified_config.MutationTests.test_manual_set_marks_profile_custom_and_preserves_style) ... ok\ntest_scalar_parent_is_not_clobbered_by_nested_set (test_unified_config.MutationTests.test_scalar_parent_is_not_clobbered_by_nested_set) ... ok\ntest_builtin_profile_dry_run_then_atomic_apply (test_unified_config.ProfileTests.test_builtin_profile_dry_run_then_atomic_apply) ... ok\ntest_invalid_custom_profile_never_partially_writes (test_unified_config.ProfileTests.test_invalid_custom_profile_never_partially_writes) ... ok\ntest_save_show_diff_and_delete_custom_profile (test_unified_config.ProfileTests.test_save_show_diff_and_delete_custom_profile) ... ok\ntest_does_not_flag_canonical_prd_state_paths (test_unsubmitted_plugin_request.UnsubmittedPluginRequestTests.test_does_not_flag_canonical_prd_state_paths) ... ok\ntest_does_not_flag_ordinary_project_requests (test_unsubmitted_plugin_request.UnsubmittedPluginRequestTests.test_does_not_flag_ordinary_project_requests) ... ok\ntest_does_not_flag_rejected_requests (test_unsubmitted_plugin_request.UnsubmittedPluginRequestTests.test_does_not_flag_rejected_requests) ... ok\ntest_does_not_flag_when_already_marked_upstream (test_unsubmitted_plugin_request.UnsubmittedPluginRequestTests.test_does_not_flag_when_already_marked_upstream) ... ok\ntest_flags_a_local_request_about_a_plugin_script (test_unsubmitted_plugin_request.UnsubmittedPluginRequestTests.test_flags_a_local_request_about_a_plugin_script) ... ok\ntest_flags_a_request_that_names_itself_upstream (test_unsubmitted_plugin_request.UnsubmittedPluginRequestTests.test_flags_a_request_that_names_itself_upstream) ... ok\ntest_never_fires_in_the_hub_repo_itself (test_unsubmitted_plugin_request.UnsubmittedPluginRequestTests.test_never_fires_in_the_hub_repo_itself) ... ok\ntest_wired_into_run_checks (test_unsubmitted_plugin_request.UnsubmittedPluginRequestTests.test_wired_into_run_checks) ... ok\ntest_appends_version_change_request (test_version_advice.VersionAdviceTests.test_appends_version_change_request) ... ok\ntest_builds_safe_update_advice_for_low_risk_releases (test_version_advice.VersionAdviceTests.test_builds_safe_update_advice_for_low_risk_releases) ... ok\ntest_cli_uses_hub_releases_when_downstream_repo_has_no_releases_file (test_version_advice.VersionAdviceTests.test_cli_uses_hub_releases_when_downstream_repo_has_no_releases_file) ... ok\ntest_detects_installed_version_from_bom_json (test_version_advice.VersionAdviceTests.test_detects_installed_version_from_bom_json) ... ok\ntest_detects_installed_version_from_opencode_plugin_manifest (test_version_advice.VersionAdviceTests.test_detects_installed_version_from_opencode_plugin_manifest) ... ok\ntest_detects_installed_version_from_prd_plugin_config (test_version_advice.VersionAdviceTests.test_detects_installed_version_from_prd_plugin_config) ... ok\ntest_detects_latest_version_from_plugin_manifest (test_version_advice.VersionAdviceTests.test_detects_latest_version_from_plugin_manifest) ... ok\ntest_installed_version_priority_prefers_config_then_codex_then_opencode (test_version_advice.VersionAdviceTests.test_installed_version_priority_prefers_config_then_codex_then_opencode) ... ok\ntest_orders_prerelease_before_final_release (test_version_advice.VersionAdviceTests.test_orders_prerelease_before_final_release) ... ok\ntest_recommends_review_first_for_medium_or_high_risk_release (test_version_advice.VersionAdviceTests.test_recommends_review_first_for_medium_or_high_risk_release) ... ok\ntest_disabled_returns_disabled_and_no_fetch (test_version_check.CheckTests.test_disabled_returns_disabled_and_no_fetch) ... ok\ntest_force_refetches_within_ttl (test_version_check.CheckTests.test_force_refetches_within_ttl) ... ok\ntest_network_failure_is_fail_open (test_version_check.CheckTests.test_network_failure_is_fail_open) ... ok\ntest_no_update_when_current (test_version_check.CheckTests.test_no_update_when_current) ... ok\ntest_status_is_cache_only_no_fetch (test_version_check.CheckTests.test_status_is_cache_only_no_fetch) ... ok\ntest_ttl_cache_avoids_refetch (test_version_check.CheckTests.test_ttl_cache_avoids_refetch) ... ok\ntest_ttl_expiry_refetches (test_version_check.CheckTests.test_ttl_expiry_refetches) ... ok\ntest_update_available_when_npm_is_ahead (test_version_check.CheckTests.test_update_available_when_npm_is_ahead) ... ok\ntest_status_cli_exits_zero (test_version_check.CliTests.test_status_cli_exits_zero) ... ok\ntest_default_ttl_is_responsive_not_a_day (test_version_check.FreshnessTests.test_default_ttl_is_responsive_not_a_day) ... ok\ntest_fetch_latest_accepts_a_timeout (test_version_check.FreshnessTests.test_fetch_latest_accepts_a_timeout) ... ok\ntest_nudge_refreshes_in_session_not_cache_only (test_version_check.FreshnessTests.test_nudge_refreshes_in_session_not_cache_only) ... ok\ntest_registry_default_ttl_matches (test_version_check.FreshnessTests.test_registry_default_ttl_matches) ... ok\ntest_semver_ordering (test_version_check.ParseTests.test_semver_ordering) ... ok\ntest_set_enabled_writes_config (test_version_check.ToggleTests.test_set_enabled_writes_config) ... ok\ntest_config_has_version_check_default_on (test_version_check.WiringTests.test_config_has_version_check_default_on) ... ok\ntest_nudge_surfaces_update_available (test_version_check.WiringTests.test_nudge_surfaces_update_available) ... ok\ntest_prd_version_command_exists (test_version_check.WiringTests.test_prd_version_command_exists) ... ok\ntest_script_registered_downstream (test_version_check.WiringTests.test_script_registered_downstream) ... ok\ntest_plan_cli_emits_json (test_wiki_backfill.CliTests.test_plan_cli_emits_json) ... ok\ntest_status_cli (test_wiki_backfill.CliTests.test_status_cli) ... ok\ntest_marker_written_for_established_repo_gaining_wiki (test_wiki_backfill.InstallerMarkerTests.test_marker_written_for_established_repo_gaining_wiki) ... ok\ntest_no_marker_for_empty_scaffold (test_wiki_backfill.InstallerMarkerTests.test_no_marker_for_empty_scaffold) ... ok\ntest_no_marker_when_wiki_already_exists (test_wiki_backfill.InstallerMarkerTests.test_no_marker_when_wiki_already_exists) ... ok\ntest_no_marker_when_wiki_disabled (test_wiki_backfill.InstallerMarkerTests.test_no_marker_when_wiki_disabled) ... ok\ntest_pending_false_when_absent (test_wiki_backfill.StatusTests.test_pending_false_when_absent) ... ok\ntest_pending_false_when_wiki_already_exists (test_wiki_backfill.StatusTests.test_pending_false_when_wiki_already_exists) ... ok\ntest_pending_true_when_marker_present (test_wiki_backfill.StatusTests.test_pending_true_when_marker_present) ... ok\ntest_plan_excludes_generated_report_artifacts (test_wiki_backfill.SurveyPlanTests.test_plan_excludes_generated_report_artifacts)\nrequest-report/ (incl. its calibration report trees) and docs/evidence/ ... ok\ntest_plan_excludes_plugin_and_vendor_noise (test_wiki_backfill.SurveyPlanTests.test_plan_excludes_plugin_and_vendor_noise) ... ok\ntest_plan_inventories_code_docs_and_state (test_wiki_backfill.SurveyPlanTests.test_plan_inventories_code_docs_and_state) ... ok\ntest_plan_is_read_only (test_wiki_backfill.SurveyPlanTests.test_plan_is_read_only) ... ok\ntest_wiki_drift_in_on_stop_and_default_sets (test_wiki_backfill.WikiDriftMonitorWiringTests.test_wiki_drift_in_on_stop_and_default_sets) ... ok\ntest_current_article_no_drift (test_wiki_backfill.WikiDriftTests.test_current_article_no_drift) ... ok\ntest_drift_cli (test_wiki_backfill.WikiDriftTests.test_drift_cli) ... ok\ntest_far_behind_article_flagged (test_wiki_backfill.WikiDriftTests.test_far_behind_article_flagged) ... ok\ntest_no_wiki_is_ok (test_wiki_backfill.WikiDriftTests.test_no_wiki_is_ok) ... ok\ntest_unstamped_article_flagged (test_wiki_backfill.WikiDriftTests.test_unstamped_article_flagged) ... ok\ntest_nudge_surfaces_pending_backfill (test_wiki_backfill.WiringTests.test_nudge_surfaces_pending_backfill) ... ok\ntest_script_registered_downstream (test_wiki_backfill.WiringTests.test_script_registered_downstream) ... ok\ntest_skill_has_backfill_mode (test_wiki_backfill.WiringTests.test_skill_has_backfill_mode) ... ok\ntest_no_cp1252_unencodable_chars_in_agent_facing_tools (test_windows_console_safe.SourceScanTests.test_no_cp1252_unencodable_chars_in_agent_facing_tools) ... ok\ntest_backfill_pending_status_renders_cp1252_safe (test_windows_console_safe.StatusRenderTests.test_backfill_pending_status_renders_cp1252_safe) ... ok\ntest_repository_workflow_surfaces_are_chml_zero (test_workflow_chml_audit.WorkflowChmlAuditTests.test_repository_workflow_surfaces_are_chml_zero) ... ok\ntest_semantic_skill_finding_is_part_of_workflow_chml (test_workflow_chml_audit.WorkflowChmlAuditTests.test_semantic_skill_finding_is_part_of_workflow_chml) ... ok\ntest_git_workflow_defers_autonomy_to_decision_policy_but_keeps_floor (test_workflow_consistency.AutonomyConflictResolutionTests.test_git_workflow_defers_autonomy_to_decision_policy_but_keeps_floor) ... ok\ntest_request_intake_defers_autonomy_and_owns_graduation (test_workflow_consistency.AutonomyConflictResolutionTests.test_request_intake_defers_autonomy_and_owns_graduation) ... ok\ntest_evidence_pair_states_create_vs_review_boundary (test_workflow_consistency.BoundaryClarityTests.test_evidence_pair_states_create_vs_review_boundary) ... ok\ntest_session_close_states_memory_boundary (test_workflow_consistency.BoundaryClarityTests.test_session_close_states_memory_boundary) ... ok\ntest_document_branch_has_promotion_owner (test_workflow_consistency.DeadEndOwnerTests.test_document_branch_has_promotion_owner) ... ok\ntest_health_findings_have_triage_dispositions (test_workflow_consistency.DeadEndOwnerTests.test_health_findings_have_triage_dispositions) ... ok\ntest_memory_owns_schema_version_changes (test_workflow_consistency.DeadEndOwnerTests.test_memory_owns_schema_version_changes) ... ok\ntest_planning_lifecycle_has_stage_readiness_checkpoints (test_workflow_consistency.DeadEndOwnerTests.test_planning_lifecycle_has_stage_readiness_checkpoints) ... ok\ntest_session_close_runs_traceability_sync (test_workflow_consistency.DeadEndOwnerTests.test_session_close_runs_traceability_sync) ... ok\n\n----------------------------------------------------------------------\nRan 791 tests in 69.581s\n\nOK\n"
          },
          "output_hash": "6b2fc265ddddf0696ba72101a549091162eb5b6b186d3795b66a7c225c423369",
          "completed_at": "2026-07-14T20:34:52Z"
        },
        {
          "id": "release",
          "action": "process.fixed",
          "status": "completed",
          "resolved_input_hash": "1e5b0c18d93eb4c2248f9a00adbd438e52f3ef02137477fb8376c69cfe86fc9b",
          "started_at": "2026-07-14T20:34:52Z",
          "output": {
            "operation": "release_check",
            "command": [
              "python",
              "scripts/release_check.py"
            ],
            "exit_code": 0,
            "stdout": "# Release Hygiene Report\n\nBase version: `0.15.0`\nHead version: `0.15.1`\nChanged files checked: 9\n\n## Findings\n\n- None\n",
            "stderr": ""
          },
          "output_hash": "8dc3765df5cf0edf7c94484647faced6f9281ba37b59fffcd9b2f152f026e325",
          "completed_at": "2026-07-14T20:34:52Z"
        },
        {
          "id": "gaps",
          "action": "process.fixed",
          "status": "completed",
          "resolved_input_hash": "577241909238eeb55683f89d2d2216648dad2e3127397993e22493829a1307a4",
          "started_at": "2026-07-14T20:34:52Z",
          "output": {
            "operation": "gap_audit",
            "command": [
              "python",
              "scripts/gap_audit.py",
              "--target-version",
              "0.15.1",
              "--config",
              ".prd_plugin/config.json",
              "--releases",
              ".prd_plugin/state/releases.json"
            ],
            "exit_code": 0,
            "stdout": "# PRD Plugin Gap Audit\n\nTarget version: `0.15.1`\n\n## Findings\n\n- None\n",
            "stderr": ""
          },
          "output_hash": "f1ace825c6156cddd312dd4463389371d7097de22fc5b1b7a345cc097ef78104",
          "completed_at": "2026-07-14T20:34:52Z"
        },
        {
          "id": "package",
          "action": "process.fixed",
          "status": "completed",
          "resolved_input_hash": "06cd12e1f3db3d985f9150520afa60f288297ff0ca01a8e813e9bb6291aa8836",
          "started_at": "2026-07-14T20:34:52Z",
          "output": {
            "operation": "package_check",
            "command": [
              "npm",
              "pack",
              "--dry-run"
            ],
            "exit_code": 0,
            "stdout": "prd-plugin-0.15.1.tgz\n",
            "stderr": "rt.py\nnpm notice 5.5kB scripts/staleness_audit.py\nnpm notice 17.6kB scripts/state_consistency_check.py\nnpm notice 5.8kB scripts/traceability_sync_auto.py\nnpm notice 12.5kB scripts/version_advice.py\nnpm notice 9.6kB scripts/workflow_chml_audit.py\nnpm notice 3.0kB skills/project-architecture/SKILL.md\nnpm notice 7.4kB skills/project-blocker-resolution/SKILL.md\nnpm notice 2.8kB skills/project-brainstorm/SKILL.md\nnpm notice 5.5kB skills/project-change-request/SKILL.md\nnpm notice 5.9kB skills/project-code-review/SKILL.md\nnpm notice 2.7kB skills/project-decision-ledger/SKILL.md\nnpm notice 17.4kB skills/project-decision-policy/SKILL.md\nnpm notice 3.7kB skills/project-deterministic-workflows/SKILL.md\nnpm notice 4.9kB skills/project-document-branch/SKILL.md\nnpm notice 2.7kB skills/project-evidence-ledger/SKILL.md\nnpm notice 3.3kB skills/project-evidence/SKILL.md\nnpm notice 8.9kB skills/project-fold-it-in/SKILL.md\nnpm notice 11.2kB skills/project-git-workflow/SKILL.md\nnpm notice 7.4kB skills/project-health/SKILL.md\nnpm notice 5.6kB skills/project-implementation-plan/SKILL.md\nnpm notice 1.1kB skills/project-llm-wiki/LICENSE\nnpm notice 842B skills/project-llm-wiki/references/archive-template.md\nnpm notice 843B skills/project-llm-wiki/references/article-template.md\nnpm notice 559B skills/project-llm-wiki/references/index-template.md\nnpm notice 317B skills/project-llm-wiki/references/raw-template.md\nnpm notice 15.0kB skills/project-llm-wiki/SKILL.md\nnpm notice 7.4kB skills/project-local-integration/SKILL.md\nnpm notice 8.1kB skills/project-memory/SKILL.md\nnpm notice 5.8kB skills/project-planning-lifecycle/SKILL.md\nnpm notice 4.4kB skills/project-prd-plugin-setup/SKILL.md\nnpm notice 3.5kB skills/project-prd/SKILL.md\nnpm notice 22.1kB skills/project-request-intake/SKILL.md\nnpm notice 5.6kB skills/project-self-audit/SKILL.md\nnpm notice 4.6kB skills/project-session-close/SKILL.md\nnpm notice 3.7kB skills/project-systematic-debugging/SKILL.md\nnpm notice 3.0kB skills/project-test-driven-implementation/SKILL.md\nnpm notice 3.7kB skills/project-traceability-review/SKILL.md\nnpm notice 2.5kB skills/project-traceability-sync/SKILL.md\nnpm notice 5.0kB skills/project-verification-before-completion/SKILL.md\nnpm notice 167B templates/architecture-delta.md\nnpm notice 1.4kB templates/architecture.json\nnpm notice 368B templates/brainstorm.md\nnpm notice 274B templates/changelog.json\nnpm notice 12.9kB templates/config.json\nnpm notice 265B templates/decision-record.md\nnpm notice 398B templates/decisions.json\nnpm notice 372B templates/doc-branch.json\nnpm notice 313B templates/doc-branch.md\nnpm notice 115B templates/evidence.md\nnpm notice 9.8kB templates/feature-skill-map.json\nnpm notice 249B templates/handoff.json\nnpm notice 407B templates/health.json\nnpm notice 695B templates/human-exports/architecture.md\nnpm notice 626B templates/human-exports/implementation-plan.md\nnpm notice 580B templates/human-exports/prd.md\nnpm notice 1.4kB templates/implementation-plan.json\nnpm notice 65B templates/mailbox.json\nnpm notice 348B templates/memory.json\nnpm notice 471B templates/merge-checklist.md\nnpm notice 163B templates/plan-delta.md\nnpm notice 139B templates/prd-delta.md\nnpm notice 1.3kB templates/prd.json\nnpm notice 454B templates/project.json\nnpm notice 125B templates/promoted-session-summary.jsonl\nnpm notice 155.4kB templates/releases.json\nnpm notice 3.0kB templates/repo-skeleton/.agents/skills/project-architecture/SKILL.md\nnpm notice 7.4kB templates/repo-skeleton/.agents/skills/project-blocker-resolution/SKILL.md\nnpm notice 2.8kB templates/repo-skeleton/.agents/skills/project-brainstorm/SKILL.md\nnpm notice 5.5kB templates/repo-skeleton/.agents/skills/project-change-request/SKILL.md\nnpm notice 5.9kB templates/repo-skeleton/.agents/skills/project-code-review/SKILL.md\nnpm notice 2.7kB templates/repo-skeleton/.agents/skills/project-decision-ledger/SKILL.md\nnpm notice 17.4kB templates/repo-skeleton/.agents/skills/project-decision-policy/SKILL.md\nnpm notice 3.7kB templates/repo-skeleton/.agents/skills/project-deterministic-workflows/SKILL.md\nnpm notice 4.9kB templates/repo-skeleton/.agents/skills/project-document-branch/SKILL.md\nnpm notice 2.7kB templates/repo-skeleton/.agents/skills/project-evidence-ledger/SKILL.md\nnpm notice 3.3kB templates/repo-skeleton/.agents/skills/project-evidence/SKILL.md\nnpm notice 11.1kB templates/repo-skeleton/.agents/skills/project-git-workflow/SKILL.md\nnpm notice 7.4kB templates/repo-skeleton/.agents/skills/project-health/SKILL.md\nnpm notice 5.6kB templates/repo-skeleton/.agents/skills/project-implementation-plan/SKILL.md\nnpm notice 1.1kB templates/repo-skeleton/.agents/skills/project-llm-wiki/LICENSE\nnpm notice 842B templates/repo-skeleton/.agents/skills/project-llm-wiki/references/archive-template.md\nnpm notice 843B templates/repo-skeleton/.agents/skills/project-llm-wiki/references/article-template.md\nnpm notice 559B templates/repo-skeleton/.agents/skills/project-llm-wiki/references/index-template.md\nnpm notice 317B templates/repo-skeleton/.agents/skills/project-llm-wiki/references/raw-template.md\nnpm notice 15.0kB templates/repo-skeleton/.agents/skills/project-llm-wiki/SKILL.md\nnpm notice 7.4kB templates/repo-skeleton/.agents/skills/project-local-integration/SKILL.md\nnpm notice 8.1kB templates/repo-skeleton/.agents/skills/project-memory/SKILL.md\nnpm notice 5.8kB templates/repo-skeleton/.agents/skills/project-planning-lifecycle/SKILL.md\nnpm notice 4.4kB templates/repo-skeleton/.agents/skills/project-prd-plugin-setup/SKILL.md\nnpm notice 3.5kB templates/repo-skeleton/.agents/skills/project-prd/SKILL.md\nnpm notice 22.1kB templates/repo-skeleton/.agents/skills/project-request-intake/SKILL.md\nnpm notice 4.6kB templates/repo-skeleton/.agents/skills/project-session-close/SKILL.md\nnpm notice 3.7kB templates/repo-skeleton/.agents/skills/project-systematic-debugging/SKILL.md\nnpm notice 3.0kB templates/repo-skeleton/.agents/skills/project-test-driven-implementation/SKILL.md\nnpm notice 3.7kB templates/repo-skeleton/.agents/skills/project-traceability-review/SKILL.md\nnpm notice 2.5kB templates/repo-skeleton/.agents/skills/project-traceability-sync/SKILL.md\nnpm notice 5.0kB templates/repo-skeleton/.agents/skills/project-verification-before-completion/SKILL.md\nnpm notice 870B templates/repo-skeleton/.claude-plugin/plugin.json\nnpm notice 772B templates/repo-skeleton/.claude/commands/prd-autonomy.md\nnpm notice 488B templates/repo-skeleton/.claude/commands/prd-close.md\nnpm notice 2.0kB templates/repo-skeleton/.claude/commands/prd-config.md\nnpm notice 1.6kB templates/repo-skeleton/.claude/commands/prd-drift.md\nnpm notice 1.4kB templates/repo-skeleton/.claude/commands/prd-graph.md\nnpm notice 1.6kB templates/repo-skeleton/.claude/commands/prd-hooks.md\nnpm notice 639B templates/repo-skeleton/.claude/commands/prd-new.md\nnpm notice 1.6kB templates/repo-skeleton/.claude/commands/prd-reflections.md\nnpm notice 1.8kB templates/repo-skeleton/.claude/commands/prd-report.md\nnpm notice 549B templates/repo-skeleton/.claude/commands/prd-status.md\nnpm notice 974B templates/repo-skeleton/.claude/commands/prd-track.md\nnpm notice 1.0kB templates/repo-skeleton/.claude/commands/prd-version.md\nnpm notice 938B templates/repo-skeleton/.claude/commands/prd-workflow.md\nnpm notice 1.6kB templates/repo-skeleton/.claude/hooks/prd_drift_check.py\nnpm notice 2.0kB templates/repo-skeleton/.claude/hooks/prd_log_skill.py\nnpm notice 4.1kB templates/repo-skeleton/.claude/hooks/prd_nudge.py\nnpm notice 3.7kB templates/repo-skeleton/.claude/hooks/prd_precommit_gate.py\nnpm notice 6.1kB templates/repo-skeleton/.claude/hooks/prd_reflection.py\nnpm notice 3.5kB templates/repo-skeleton/.claude/hooks/prd_session_report.py\nnpm notice 9.8kB templates/repo-skeleton/.claude/hooks/prd_stop_guard.py\nnpm notice 1.3kB templates/repo-skeleton/.claude/settings.json\nnpm notice 3.0kB templates/repo-skeleton/.claude/skills/project-architecture/SKILL.md\nnpm notice 7.4kB templates/repo-skeleton/.claude/skills/project-blocker-resolution/SKILL.md\nnpm notice 2.8kB templates/repo-skeleton/.claude/skills/project-brainstorm/SKILL.md\nnpm notice 5.5kB templates/repo-skeleton/.claude/skills/project-change-request/SKILL.md\nnpm notice 5.9kB templates/repo-skeleton/.claude/skills/project-code-review/SKILL.md\nnpm notice 2.7kB templates/repo-skeleton/.claude/skills/project-decision-ledger/SKILL.md\nnpm notice 17.4kB templates/repo-skeleton/.claude/skills/project-decision-policy/SKILL.md\nnpm notice 3.7kB templates/repo-skeleton/.claude/skills/project-deterministic-workflows/SKILL.md\nnpm notice 4.9kB templates/repo-skeleton/.claude/skills/project-document-branch/SKILL.md\nnpm notice 2.7kB templates/repo-skeleton/.claude/skills/project-evidence-ledger/SKILL.md\nnpm notice 3.3kB templates/repo-skeleton/.claude/skills/project-evidence/SKILL.md\nnpm notice 11.1kB templates/repo-skeleton/.claude/skills/project-git-workflow/SKILL.md\nnpm notice 7.4kB templates/repo-skeleton/.claude/skills/project-health/SKILL.md\nnpm notice 5.6kB templates/repo-skeleton/.claude/skills/project-implementation-plan/SKILL.md\nnpm notice 1.1kB templates/repo-skeleton/.claude/skills/project-llm-wiki/LICENSE\nnpm notice 842B templates/repo-skeleton/.claude/skills/project-llm-wiki/references/archive-template.md\nnpm notice 843B templates/repo-skeleton/.claude/skills/project-llm-wiki/references/article-template.md\nnpm notice 559B templates/repo-skeleton/.claude/skills/project-llm-wiki/references/index-template.md\nnpm notice 317B templates/repo-skeleton/.claude/skills/project-llm-wiki/references/raw-template.md\nnpm notice 15.0kB templates/repo-skeleton/.claude/skills/project-llm-wiki/SKILL.md\nnpm notice 7.4kB templates/repo-skeleton/.claude/skills/project-local-integration/SKILL.md\nnpm notice 8.1kB templates/repo-skeleton/.claude/skills/project-memory/SKILL.md\nnpm notice 5.8kB templates/repo-skeleton/.claude/skills/project-planning-lifecycle/SKILL.md\nnpm notice 4.4kB templates/repo-skeleton/.claude/skills/project-prd-plugin-setup/SKILL.md\nnpm notice 3.5kB templates/repo-skeleton/.claude/skills/project-prd/SKILL.md\nnpm notice 22.1kB templates/repo-skeleton/.claude/skills/project-request-intake/SKILL.md\nnpm notice 4.6kB templates/repo-skeleton/.claude/skills/project-session-close/SKILL.md\nnpm notice 3.7kB templates/repo-skeleton/.claude/skills/project-systematic-debugging/SKILL.md\nnpm notice 3.0kB templates/repo-skeleton/.claude/skills/project-test-driven-implementation/SKILL.md\nnpm notice 3.7kB templates/repo-skeleton/.claude/skills/project-traceability-review/SKILL.md\nnpm notice 2.5kB templates/repo-skeleton/.claude/skills/project-traceability-sync/SKILL.md\nnpm notice 5.0kB templates/repo-skeleton/.claude/skills/project-verification-before-completion/SKILL.md\nnpm notice 3.1kB templates/repo-skeleton/.codex-plugin/plugin.json\nnpm notice 2.8kB templates/repo-skeleton/.codex/hooks.json\nnpm notice 743B templates/repo-skeleton/.githooks/pre-commit\nnpm notice 734B templates/repo-skeleton/.github/workflows/prd-gate.yml\nnpm notice 3.1kB templates/repo-skeleton/.opencode/plugin.json\nnpm notice 3.3kB templates/repo-skeleton/.opencode/plugins/prd-hooks.js\nnpm notice 3.0kB templates/repo-skeleton/.opencode/skill/project-architecture/SKILL.md\nnpm notice 7.4kB templates/repo-skeleton/.opencode/skill/project-blocker-resolution/SKILL.md\nnpm notice 2.8kB templates/repo-skeleton/.opencode/skill/project-brainstorm/SKILL.md\nnpm notice 5.5kB templates/repo-skeleton/.opencode/skill/project-change-request/SKILL.md\nnpm notice 5.9kB templates/repo-skeleton/.opencode/skill/project-code-review/SKILL.md\nnpm notice 2.7kB templates/repo-skeleton/.opencode/skill/project-decision-ledger/SKILL.md\nnpm notice 17.4kB templates/repo-skeleton/.opencode/skill/project-decision-policy/SKILL.md\nnpm notice 3.7kB templates/repo-skeleton/.opencode/skill/project-deterministic-workflows/SKILL.md\nnpm notice 4.9kB templates/repo-skeleton/.opencode/skill/project-document-branch/SKILL.md\nnpm notice 2.7kB templates/repo-skeleton/.opencode/skill/project-evidence-ledger/SKILL.md\nnpm notice 3.3kB templates/repo-skeleton/.opencode/skill/project-evidence/SKILL.md\nnpm notice 11.1kB templates/repo-skeleton/.opencode/skill/project-git-workflow/SKILL.md\nnpm notice 7.4kB templates/repo-skeleton/.opencode/skill/project-health/SKILL.md\nnpm notice 5.6kB templates/repo-skeleton/.opencode/skill/project-implementation-plan/SKILL.md\nnpm notice 1.1kB templates/repo-skeleton/.opencode/skill/project-llm-wiki/LICENSE\nnpm notice 842B templates/repo-skeleton/.opencode/skill/project-llm-wiki/references/archive-template.md\nnpm notice 843B templates/repo-skeleton/.opencode/skill/project-llm-wiki/references/article-template.md\nnpm notice 559B templates/repo-skeleton/.opencode/skill/project-llm-wiki/references/index-template.md\nnpm notice 317B templates/repo-skeleton/.opencode/skill/project-llm-wiki/references/raw-template.md\nnpm notice 15.0kB templates/repo-skeleton/.opencode/skill/project-llm-wiki/SKILL.md\nnpm notice 7.4kB templates/repo-skeleton/.opencode/skill/project-local-integration/SKILL.md\nnpm notice 8.1kB templates/repo-skeleton/.opencode/skill/project-memory/SKILL.md\nnpm notice 5.8kB templates/repo-skeleton/.opencode/skill/project-planning-lifecycle/SKILL.md\nnpm notice 4.4kB templates/repo-skeleton/.opencode/skill/project-prd-plugin-setup/SKILL.md\nnpm notice 3.5kB templates/repo-skeleton/.opencode/skill/project-prd/SKILL.md\nnpm notice 22.1kB templates/repo-skeleton/.opencode/skill/project-request-intake/SKILL.md\nnpm notice 4.6kB templates/repo-skeleton/.opencode/skill/project-session-close/SKILL.md\nnpm notice 3.7kB templates/repo-skeleton/.opencode/skill/project-systematic-debugging/SKILL.md\nnpm notice 3.0kB templates/repo-skeleton/.opencode/skill/project-test-driven-implementation/SKILL.md\nnpm notice 3.7kB templates/repo-skeleton/.opencode/skill/project-traceability-review/SKILL.md\nnpm notice 2.5kB templates/repo-skeleton/.opencode/skill/project-traceability-sync/SKILL.md\nnpm notice 5.0kB templates/repo-skeleton/.opencode/skill/project-verification-before-completion/SKILL.md\nnpm notice 12.7kB templates/repo-skeleton/.prd_plugin/config.json\nnpm notice 1.6kB templates/repo-skeleton/.prd_plugin/hooks/prd_drift_check.py\nnpm notice 9.2kB templates/repo-skeleton/.prd_plugin/hooks/prd_hook_dispatch.py\nnpm notice 2.0kB templates/repo-skeleton/.prd_plugin/hooks/prd_log_skill.py\nnpm notice 4.1kB templates/repo-skeleton/.prd_plugin/hooks/prd_nudge.py\nnpm notice 3.7kB templates/repo-skeleton/.prd_plugin/hooks/prd_precommit_gate.py\nnpm notice 6.1kB templates/repo-skeleton/.prd_plugin/hooks/prd_reflection.py\nnpm notice 3.5kB templates/repo-skeleton/.prd_plugin/hooks/prd_session_report.py\nnpm notice 9.8kB templates/repo-skeleton/.prd_plugin/hooks/prd_stop_guard.py\nnpm notice 3.7kB templates/repo-skeleton/.prd_plugin/ID-SCHEME.md\nnpm notice 581B templates/repo-skeleton/.prd_plugin/ids/registry.json\nnpm notice 12.6kB templates/repo-skeleton/.prd_plugin/METHOD.md\nnpm notice 725B templates/repo-skeleton/.prd_plugin/method/artifact-format.md\nnpm notice 820B templates/repo-skeleton/.prd_plugin/method/completion-gate.md\nnpm notice 3.6kB templates/repo-skeleton/.prd_plugin/method/deterministic-workflows.md\nnpm notice 1.2kB templates/repo-skeleton/.prd_plugin/method/estimation.md\nnpm notice 1.9kB templates/repo-skeleton/.prd_plugin/method/grounding.md\nnpm notice 2.5kB templates/repo-skeleton/.prd_plugin/method/reporting.md\nnpm notice 2.6kB templates/repo-skeleton/.prd_plugin/method/self-service.md\nnpm notice 1.6kB templates/repo-skeleton/.prd_plugin/method/staleness-rules.md\nnpm notice 1.0kB templates/repo-skeleton/.prd_plugin/method/state-validation.md\nnpm notice 47B templates/repo-skeleton/.prd_plugin/state/changelog.json\nnpm notice 49B templates/repo-skeleton/.prd_plugin/state/decisions.json\nnpm notice 157B templates/repo-skeleton/.prd_plugin/state/health.json\nnpm notice 47B templates/repo-skeleton/.prd_plugin/state/memory.json\nnpm notice 286B templates/repo-skeleton/.prd_plugin/state/project.json\nnpm notice 48B templates/repo-skeleton/.prd_plugin/state/releases.json\nnpm notice 48B templates/repo-skeleton/.prd_plugin/state/requests.json\nnpm notice 214B templates/repo-skeleton/.prd_plugin/state/sessions/shared/promoted-session-summaries.jsonl\nnpm notice 51B templates/repo-skeleton/.prd_plugin/state/tracking.json\nnpm notice 48B templates/repo-skeleton/.prd_plugin/state/workflow-runs.json\nnpm notice 167B templates/repo-skeleton/.prd_plugin/templates/architecture-delta.md\nnpm notice 1.4kB templates/repo-skeleton/.prd_plugin/templates/architecture.json\nnpm notice 368B templates/repo-skeleton/.prd_plugin/templates/brainstorm.md\nnpm notice 274B templates/repo-skeleton/.prd_plugin/templates/changelog.json\nnpm notice 11.9kB templates/repo-skeleton/.prd_plugin/templates/config.json\nnpm notice 265B templates/repo-skeleton/.prd_plugin/templates/decision-record.md\nnpm notice 398B templates/repo-skeleton/.prd_plugin/templates/decisions.json\nnpm notice 372B templates/repo-skeleton/.prd_plugin/templates/doc-branch.json\nnpm notice 313B templates/repo-skeleton/.prd_plugin/templates/doc-branch.md\nnpm notice 115B templates/repo-skeleton/.prd_plugin/templates/evidence.md\nnpm notice 249B templates/repo-skeleton/.prd_plugin/templates/handoff.json\nnpm notice 407B templates/repo-skeleton/.prd_plugin/templates/health.json\nnpm notice 695B templates/repo-skeleton/.prd_plugin/templates/human-exports/architecture.md\nnpm notice 626B templates/repo-skeleton/.prd_plugin/templates/human-exports/implementation-plan.md\nnpm notice 580B templates/repo-skeleton/.prd_plugin/templates/human-exports/prd.md\nnpm notice 1.4kB templates/repo-skeleton/.prd_plugin/templates/implementation-plan.json\nnpm notice 65B templates/repo-skeleton/.prd_plugin/templates/mailbox.json\nnpm notice 348B templates/repo-skeleton/.prd_plugin/templates/memory.json\nnpm notice 471B templates/repo-skeleton/.prd_plugin/templates/merge-checklist.md\nnpm notice 163B templates/repo-skeleton/.prd_plugin/templates/plan-delta.md\nnpm notice 139B templates/repo-skeleton/.prd_plugin/templates/prd-delta.md\nnpm notice 1.3kB templates/repo-skeleton/.prd_plugin/templates/prd.json\nnpm notice 454B templates/repo-skeleton/.prd_plugin/templates/project.json\nnpm notice 125B templates/repo-skeleton/.prd_plugin/templates/promoted-session-summary.jsonl\nnpm notice 923B templates/repo-skeleton/.prd_plugin/templates/releases.json\nnpm notice 1.4kB templates/repo-skeleton/.prd_plugin/templates/request.json\nnpm notice 1.7kB templates/repo-skeleton/.prd_plugin/templates/requests.json\nnpm notice 17.5kB templates/repo-skeleton/.prd_plugin/templates/script-install-scope.json\nnpm notice 235B templates/repo-skeleton/.prd_plugin/templates/session.json\nnpm notice 10.6kB templates/repo-skeleton/.prd_plugin/templates/skill-install-scope.json\nnpm notice 317B templates/repo-skeleton/.prd_plugin/templates/submission-package.json\nnpm notice 225B templates/repo-skeleton/.prd_plugin/templates/traceability-matrix.md\nnpm notice 321B templates/repo-skeleton/.prd_plugin/templates/tracking.json\nnpm notice 12.0kB templates/repo-skeleton/.prd_plugin/workflows.json\nnpm notice 11.9kB templates/repo-skeleton/AGENTS.md\nnpm notice 7.4kB templates/repo-skeleton/CLAUDE.md\nnpm notice 11.8kB templates/repo-skeleton/docs/INSTALL-MATRIX.md\nnpm notice 1.4kB templates/request.json\nnpm notice 1.7kB templates/requests.json\nnpm notice 17.5kB templates/script-install-scope.json\nnpm notice 235B templates/session.json\nnpm notice 10.6kB templates/skill-install-scope.json\nnpm notice 317B templates/submission-package.json\nnpm notice 225B templates/traceability-matrix.md\nnpm notice 321B templates/tracking.json\nnpm notice 12.0kB templates/workflows.json\nnpm notice Tarball Details\nnpm notice name: prd-plugin\nnpm notice version: 0.15.1\nnpm notice filename: prd-plugin-0.15.1.tgz\nnpm notice package size: 894.4 kB\nnpm notice unpacked size: 3.6 MB\nnpm notice shasum: 47c1db7a1fddbcc1b4be3d96f2c550b907ec16da\nnpm notice integrity: sha512-XSEtKtrUsiz8F[...]A8LaXBsRiBiXg==\nnpm notice total files: 476\nnpm notice\n"
          },
          "output_hash": "709615d8076303381dc73dfa114960cacb5fccd3318266d912854c8ec01bd66a",
          "completed_at": "2026-07-14T20:34:54Z"
        },
        {
          "id": "gate",
          "action": "state.gate",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-14T20:34:54Z",
          "output": {
            "status": "ok",
            "repo_root": "D:\\Projects\\prd-plugin",
            "summary": {
              "errors": 0,
              "warnings": 0
            },
            "findings": []
          },
          "output_hash": "a705b176b049df02348354c23988d51f616670b7352ad410321cbe0577edf053",
          "completed_at": "2026-07-14T20:34:55Z"
        }
      ],
      "completed_at": "2026-07-14T20:34:55Z"
    },
    {
      "id": "WFR-009",
      "schema_version": "1.0",
      "workflow_id": "session.start",
      "workflow_version": 1,
      "definition_hash": "84ce7a6cc9aa694e7d79ea287fc72dc11aae430d872a885ca70ba837e668657e",
      "plan_hash": "3ac96bd9bc6974dd538269c4c5f0c914e98110574189cd54d4ffbafb876b1a73",
      "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
      "inputs": {},
      "idempotency_key": "skeleton-config-parity-start",
      "status": "completed",
      "attempt": 1,
      "created_at": "2026-07-14T20:53:31Z",
      "updated_at": "2026-07-14T20:53:31Z",
      "receipts": [
        {
          "step_id": "config",
          "action": "config.audit",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "52f4670d3af925e27fa87b707174b4d88bc7c6d7cc17f7accb4003b9d0b94665",
          "completed_at": "2026-07-14T20:53:31Z"
        },
        {
          "step_id": "state",
          "action": "state.consistency",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "5a1c6e5246defb1b6b6b90ff734db95bece2886b408ab112ed9b8e67222d5568",
          "completed_at": "2026-07-14T20:53:31Z"
        },
        {
          "step_id": "status",
          "action": "state.query",
          "input_hash": "a15231a2142a2a9a85355a8b9cbbccffe01a9c9c2c2fd8c2bc2987cdc481564a",
          "output_hash": "c3429cadb5899e57e9be839de9eea576b229222529f187af332aa973429e75c4",
          "completed_at": "2026-07-14T20:53:31Z"
        }
      ],
      "steps": [
        {
          "id": "config",
          "action": "config.audit",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-14T20:53:31Z",
          "output": {
            "status": "ok",
            "summary": {
              "settings": 171,
              "mutable": 162,
              "read_only_or_managed": 9,
              "unclassified": 0,
              "unknown": 0,
              "invalid": 0,
              "missing_using_defaults": 0
            },
            "unclassified_keys": [],
            "unknown_keys": [],
            "invalid_values": [],
            "missing_using_defaults": []
          },
          "output_hash": "52f4670d3af925e27fa87b707174b4d88bc7c6d7cc17f7accb4003b9d0b94665",
          "completed_at": "2026-07-14T20:53:31Z"
        },
        {
          "id": "state",
          "action": "state.consistency",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-14T20:53:31Z",
          "output": {
            "status": "ok",
            "repo_root": "D:\\Projects\\prd-plugin",
            "summary": {
              "errors": 0,
              "warnings": 0,
              "infos": 0
            },
            "findings": []
          },
          "output_hash": "5a1c6e5246defb1b6b6b90ff734db95bece2886b408ab112ed9b8e67222d5568",
          "completed_at": "2026-07-14T20:53:31Z"
        },
        {
          "id": "status",
          "action": "state.query",
          "status": "completed",
          "resolved_input_hash": "a15231a2142a2a9a85355a8b9cbbccffe01a9c9c2c2fd8c2bc2987cdc481564a",
          "started_at": "2026-07-14T20:53:31Z",
          "output": {
            "repo_root": "D:\\Projects\\prd-plugin",
            "autonomy_level": "autonomous",
            "requests_by_status": {
              "accepted": 1,
              "deferred": 1,
              "implemented": 73,
              "proposed": 3,
              "rejected": 1
            },
            "active_tracking": [],
            "tracking_branches": [],
            "tracking_branch_counts": {},
            "tracking_branch_errors": [],
            "open_health": [
              "HLT-002",
              "HLT-014"
            ],
            "stale_count": 0,
            "skill_usage": {
              "project-decision-policy": 1,
              "project-request-intake": 1,
              "project-test-driven-implementation": 1,
              "project-verification-before-completion": 1,
              "project-llm-wiki": 1
            },
            "wiki_backfill_pending": false,
            "version_update": null
          },
          "output_hash": "c3429cadb5899e57e9be839de9eea576b229222529f187af332aa973429e75c4",
          "completed_at": "2026-07-14T20:53:31Z"
        }
      ],
      "completed_at": "2026-07-14T20:53:31Z"
    },
    {
      "id": "WFR-010",
      "schema_version": "1.0",
      "workflow_id": "engineering.code-review",
      "workflow_version": 1,
      "definition_hash": "db913781cc8cad3d528b8f1bd3540c25d819d14a435dad01ee77cdf6463b5618",
      "plan_hash": "cc0d461aa97c00d70d394bc37457654766f2a3f659ea56191b1ceddca1dbba95",
      "input_hash": "e6ec8ec0b7aafa0b674edca3718bd1080d11e3dae75f838feb743a6eb5d23cd9",
      "inputs": {
        "base_ref": "v0.15.1",
        "source_refs": [
          ".prd_plugin/state/requests.json",
          "templates/config.json",
          "templates/repo-skeleton/.prd_plugin/templates/config.json",
          "tests/test_prd_install.py"
        ]
      },
      "idempotency_key": "review-0.15.2",
      "status": "completed",
      "attempt": 1,
      "created_at": "2026-07-14T21:00:04Z",
      "updated_at": "2026-07-14T21:00:30Z",
      "receipts": [
        {
          "step_id": "diff",
          "action": "git.diff_check",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "11c11db30f4b3f6c758722ba3e27eea08145b7d212f6a157451e364b48475280",
          "completed_at": "2026-07-14T21:00:04Z"
        },
        {
          "step_id": "verification",
          "action": "verification.plan",
          "input_hash": "70630323f93f9d9aebc0f9268ba52c9b1be8284eabab9a63de0348afb98a4c1d",
          "output_hash": "b2731c20a6f3b29c1601243254ff43101f307cbc400d1647deb623d8383f6a62",
          "completed_at": "2026-07-14T21:00:04Z"
        },
        {
          "step_id": "review",
          "action": "judgment.request",
          "input_hash": "b48f4d1a40d6ab7297edf41a5d070e0e552a174d5abd49743a0888e0ece7fa91",
          "output_hash": "0011aa6fe0cab4c665f222fd27407e8cf3e3445d491a503043a350029d1eed1f",
          "request_hash": "11ed56901243a3a31b219f362a317729991616e3b08b43cd80b7b3dc52b3c037",
          "completed_at": "2026-07-14T21:00:30Z"
        }
      ],
      "steps": [
        {
          "id": "diff",
          "action": "git.diff_check",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-14T21:00:04Z",
          "output": {
            "passed": true
          },
          "output_hash": "11c11db30f4b3f6c758722ba3e27eea08145b7d212f6a157451e364b48475280",
          "completed_at": "2026-07-14T21:00:04Z"
        },
        {
          "id": "verification",
          "action": "verification.plan",
          "status": "completed",
          "resolved_input_hash": "70630323f93f9d9aebc0f9268ba52c9b1be8284eabab9a63de0348afb98a4c1d",
          "started_at": "2026-07-14T21:00:04Z",
          "output": {
            "schema_version": "1.0",
            "contract_version": 1,
            "executor": "ai-collab",
            "changed_files": [
              ".claude-plugin/marketplace.json",
              ".claude-plugin/plugin.json",
              ".codex-plugin/plugin.json",
              ".opencode/plugin.json",
              ".prd_plugin/config.json",
              ".prd_plugin/ids/registry.json",
              ".prd_plugin/state/changelog.json",
              ".prd_plugin/state/evidence.json",
              ".prd_plugin/state/project.json",
              ".prd_plugin/state/releases.json",
              ".prd_plugin/state/requests.json",
              ".prd_plugin/state/tracking.json",
              ".prd_plugin/state/workflow-runs.json",
              "index.js",
              "mcp/server.cjs",
              "package.json",
              "raw/configuration/2026-07-14-installer-config-template-parity-defect.md",
              "templates/config.json",
              "templates/project.json",
              "templates/releases.json",
              "templates/repo-skeleton/.claude-plugin/plugin.json",
              "templates/repo-skeleton/.codex-plugin/plugin.json",
              "templates/repo-skeleton/.opencode/plugin.json",
              "templates/repo-skeleton/.prd_plugin/config.json",
              "templates/repo-skeleton/.prd_plugin/state/project.json",
              "templates/repo-skeleton/.prd_plugin/templates/config.json",
              "templates/repo-skeleton/.prd_plugin/templates/project.json",
              "tests/test_local_workflow_check.py",
              "tests/test_prd_install.py",
              "tests/test_release_check.py",
              "wiki/index.md",
              "wiki/integrations/unified-configuration.md",
              "wiki/log.md"
            ],
            "change_fingerprint": "9409f8357e4abfd52e499a0b79a0e3fffca97305860e1c7ae051d0f5da1b9aa1",
            "policy": {
              "enabled": false,
              "executor": "ai-collab",
              "neighbor_limit": 12,
              "max_changed_files": 25,
              "fallback": "full",
              "full_suite_triggers": [
                "release",
                "core_change",
                "impact_unavailable",
                "impact_degraded",
                "unmapped_change"
              ],
              "core_paths": [
                "package.json",
                "package-lock.json",
                "pyproject.toml",
                "Cargo.toml",
                "go.mod",
                ".github/workflows/**"
              ],
              "test_patterns": [
                "tests/**",
                "test/**",
                "spec/**",
                "**/*.test.*",
                "**/*.spec.*",
                "test_*.py",
                "*_test.py",
                "*_test.go",
                "**/test_*.py",
                "**/*_test.py",
                "**/*_test.go"
              ]
            },
            "selection_rules": {
              "precedence": [
                "exact_changed",
                "explicit_test_ownership",
                "structural_dependencies",
                "predictive_impact"
              ],
              "require_all_changed_files_mapped": true,
              "widen_before_full": true,
              "predictive_signal_is_sufficient_alone": false
            },
            "fallback": {
              "strategy": "full",
              "conditions": [
                "release",
                "core_change",
                "impact_unavailable",
                "impact_degraded",
                "unmapped_change"
              ]
            },
            "strategy": "full",
            "reason": "test_scope_disabled",
            "runtime_requests": {},
            "plan_hash": "793fc0cbd10f209bff015a268ce611b3501155a95690de8a6ea25cac372e56b0"
          },
          "output_hash": "b2731c20a6f3b29c1601243254ff43101f307cbc400d1647deb623d8383f6a62",
          "completed_at": "2026-07-14T21:00:04Z"
        },
        {
          "id": "review",
          "action": "judgment.request",
          "status": "completed",
          "resolved_input_hash": "b48f4d1a40d6ab7297edf41a5d070e0e552a174d5abd49743a0888e0ece7fa91",
          "started_at": "2026-07-14T21:00:04Z",
          "judgment_request": {
            "contract_version": 1,
            "run_id": "WFR-010",
            "step_id": "review",
            "task": "code_review",
            "instructions": "Find material correctness, robustness, security, compatibility, or test gaps; do not restate mechanical facts.",
            "source_refs": [
              ".prd_plugin/state/requests.json",
              "templates/config.json",
              "templates/repo-skeleton/.prd_plugin/templates/config.json",
              "tests/test_prd_install.py"
            ],
            "source_hashes": {
              ".prd_plugin/state/requests.json": "25161f434dbc0802ac0cca1079428eff9632a1b4f5e10b19ae3eef2eecc20206",
              "templates/config.json": "b2aea37d1b8c7a547f6ef98a0a3136a22212eba8d24d2016dad4a68abb7df140",
              "templates/repo-skeleton/.prd_plugin/templates/config.json": "b2aea37d1b8c7a547f6ef98a0a3136a22212eba8d24d2016dad4a68abb7df140",
              "tests/test_prd_install.py": "5f564c4a897d50c19884624363db51de4f08607393a7b6715dc80b248ac94446"
            },
            "result_schema": {
              "type": "object",
              "required": [
                "summary",
                "findings",
                "source_refs"
              ],
              "properties": {
                "summary": {
                  "type": "string"
                },
                "findings": {
                  "type": "array",
                  "items": {
                    "type": "object"
                  }
                },
                "source_refs": {
                  "type": "array",
                  "items": {
                    "type": "string"
                  }
                }
              }
            },
            "executor": "ai-collab",
            "profile": "fast-capable",
            "constraints": {
              "no_project_state_writes": true,
              "require_source_refs": true
            },
            "request_hash": "11ed56901243a3a31b219f362a317729991616e3b08b43cd80b7b3dc52b3c037"
          },
          "output": {
            "summary": "One minor test-precision gap; implementation and compatibility approach are otherwise sound.",
            "findings": [
              {
                "severity": "minor",
                "summary": "The end-to-end regression proves workflow completion but should explicitly assert that config.audit reports zero unknown settings."
              }
            ],
            "source_refs": [
              ".prd_plugin/state/requests.json",
              "templates/config.json",
              "templates/repo-skeleton/.prd_plugin/templates/config.json",
              "tests/test_prd_install.py"
            ]
          },
          "output_hash": "0011aa6fe0cab4c665f222fd27407e8cf3e3445d491a503043a350029d1eed1f",
          "completed_at": "2026-07-14T21:00:30Z",
          "judgment_result": {
            "request_hash": "11ed56901243a3a31b219f362a317729991616e3b08b43cd80b7b3dc52b3c037",
            "executor": "ai-collab",
            "profile": "fast-capable"
          }
        }
      ],
      "completed_at": "2026-07-14T21:00:30Z"
    },
    {
      "id": "WFR-011",
      "schema_version": "1.0",
      "workflow_id": "engineering.code-review",
      "workflow_version": 1,
      "definition_hash": "db913781cc8cad3d528b8f1bd3540c25d819d14a435dad01ee77cdf6463b5618",
      "plan_hash": "cc0d461aa97c00d70d394bc37457654766f2a3f659ea56191b1ceddca1dbba95",
      "input_hash": "e6ec8ec0b7aafa0b674edca3718bd1080d11e3dae75f838feb743a6eb5d23cd9",
      "inputs": {
        "base_ref": "v0.15.1",
        "source_refs": [
          ".prd_plugin/state/requests.json",
          "templates/config.json",
          "templates/repo-skeleton/.prd_plugin/templates/config.json",
          "tests/test_prd_install.py"
        ]
      },
      "idempotency_key": "review-0.15.2-reaudit",
      "status": "completed",
      "attempt": 1,
      "created_at": "2026-07-14T21:00:48Z",
      "updated_at": "2026-07-14T21:00:57Z",
      "receipts": [
        {
          "step_id": "diff",
          "action": "git.diff_check",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "11c11db30f4b3f6c758722ba3e27eea08145b7d212f6a157451e364b48475280",
          "completed_at": "2026-07-14T21:00:48Z"
        },
        {
          "step_id": "verification",
          "action": "verification.plan",
          "input_hash": "70630323f93f9d9aebc0f9268ba52c9b1be8284eabab9a63de0348afb98a4c1d",
          "output_hash": "b2731c20a6f3b29c1601243254ff43101f307cbc400d1647deb623d8383f6a62",
          "completed_at": "2026-07-14T21:00:48Z"
        },
        {
          "step_id": "review",
          "action": "judgment.request",
          "input_hash": "b48f4d1a40d6ab7297edf41a5d070e0e552a174d5abd49743a0888e0ece7fa91",
          "output_hash": "865691c866ea0fbc92b25ff08bc0663b1b9234c58ccdbfde92bc3e0105f3ecf1",
          "request_hash": "dbe9f00bc8af5dda6f23488e94d6931438db43b0965c6f0bb7121c3c1086173a",
          "completed_at": "2026-07-14T21:00:57Z"
        }
      ],
      "steps": [
        {
          "id": "diff",
          "action": "git.diff_check",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-14T21:00:48Z",
          "output": {
            "passed": true
          },
          "output_hash": "11c11db30f4b3f6c758722ba3e27eea08145b7d212f6a157451e364b48475280",
          "completed_at": "2026-07-14T21:00:48Z"
        },
        {
          "id": "verification",
          "action": "verification.plan",
          "status": "completed",
          "resolved_input_hash": "70630323f93f9d9aebc0f9268ba52c9b1be8284eabab9a63de0348afb98a4c1d",
          "started_at": "2026-07-14T21:00:48Z",
          "output": {
            "schema_version": "1.0",
            "contract_version": 1,
            "executor": "ai-collab",
            "changed_files": [
              ".claude-plugin/marketplace.json",
              ".claude-plugin/plugin.json",
              ".codex-plugin/plugin.json",
              ".opencode/plugin.json",
              ".prd_plugin/config.json",
              ".prd_plugin/ids/registry.json",
              ".prd_plugin/state/changelog.json",
              ".prd_plugin/state/evidence.json",
              ".prd_plugin/state/project.json",
              ".prd_plugin/state/releases.json",
              ".prd_plugin/state/requests.json",
              ".prd_plugin/state/tracking.json",
              ".prd_plugin/state/workflow-runs.json",
              "index.js",
              "mcp/server.cjs",
              "package.json",
              "raw/configuration/2026-07-14-installer-config-template-parity-defect.md",
              "templates/config.json",
              "templates/project.json",
              "templates/releases.json",
              "templates/repo-skeleton/.claude-plugin/plugin.json",
              "templates/repo-skeleton/.codex-plugin/plugin.json",
              "templates/repo-skeleton/.opencode/plugin.json",
              "templates/repo-skeleton/.prd_plugin/config.json",
              "templates/repo-skeleton/.prd_plugin/state/project.json",
              "templates/repo-skeleton/.prd_plugin/templates/config.json",
              "templates/repo-skeleton/.prd_plugin/templates/project.json",
              "tests/test_local_workflow_check.py",
              "tests/test_prd_install.py",
              "tests/test_release_check.py",
              "wiki/index.md",
              "wiki/integrations/unified-configuration.md",
              "wiki/log.md"
            ],
            "change_fingerprint": "9409f8357e4abfd52e499a0b79a0e3fffca97305860e1c7ae051d0f5da1b9aa1",
            "policy": {
              "enabled": false,
              "executor": "ai-collab",
              "neighbor_limit": 12,
              "max_changed_files": 25,
              "fallback": "full",
              "full_suite_triggers": [
                "release",
                "core_change",
                "impact_unavailable",
                "impact_degraded",
                "unmapped_change"
              ],
              "core_paths": [
                "package.json",
                "package-lock.json",
                "pyproject.toml",
                "Cargo.toml",
                "go.mod",
                ".github/workflows/**"
              ],
              "test_patterns": [
                "tests/**",
                "test/**",
                "spec/**",
                "**/*.test.*",
                "**/*.spec.*",
                "test_*.py",
                "*_test.py",
                "*_test.go",
                "**/test_*.py",
                "**/*_test.py",
                "**/*_test.go"
              ]
            },
            "selection_rules": {
              "precedence": [
                "exact_changed",
                "explicit_test_ownership",
                "structural_dependencies",
                "predictive_impact"
              ],
              "require_all_changed_files_mapped": true,
              "widen_before_full": true,
              "predictive_signal_is_sufficient_alone": false
            },
            "fallback": {
              "strategy": "full",
              "conditions": [
                "release",
                "core_change",
                "impact_unavailable",
                "impact_degraded",
                "unmapped_change"
              ]
            },
            "strategy": "full",
            "reason": "test_scope_disabled",
            "runtime_requests": {},
            "plan_hash": "793fc0cbd10f209bff015a268ce611b3501155a95690de8a6ea25cac372e56b0"
          },
          "output_hash": "b2731c20a6f3b29c1601243254ff43101f307cbc400d1647deb623d8383f6a62",
          "completed_at": "2026-07-14T21:00:48Z"
        },
        {
          "id": "review",
          "action": "judgment.request",
          "status": "completed",
          "resolved_input_hash": "b48f4d1a40d6ab7297edf41a5d070e0e552a174d5abd49743a0888e0ece7fa91",
          "started_at": "2026-07-14T21:00:48Z",
          "judgment_request": {
            "contract_version": 1,
            "run_id": "WFR-011",
            "step_id": "review",
            "task": "code_review",
            "instructions": "Find material correctness, robustness, security, compatibility, or test gaps; do not restate mechanical facts.",
            "source_refs": [
              ".prd_plugin/state/requests.json",
              "templates/config.json",
              "templates/repo-skeleton/.prd_plugin/templates/config.json",
              "tests/test_prd_install.py"
            ],
            "source_hashes": {
              ".prd_plugin/state/requests.json": "25161f434dbc0802ac0cca1079428eff9632a1b4f5e10b19ae3eef2eecc20206",
              "templates/config.json": "b2aea37d1b8c7a547f6ef98a0a3136a22212eba8d24d2016dad4a68abb7df140",
              "templates/repo-skeleton/.prd_plugin/templates/config.json": "b2aea37d1b8c7a547f6ef98a0a3136a22212eba8d24d2016dad4a68abb7df140",
              "tests/test_prd_install.py": "7d3f00ec753a0e55a9a9a8fe675aa07142ae94eab1098e5816ce19c12f797a97"
            },
            "result_schema": {
              "type": "object",
              "required": [
                "summary",
                "findings",
                "source_refs"
              ],
              "properties": {
                "summary": {
                  "type": "string"
                },
                "findings": {
                  "type": "array",
                  "items": {
                    "type": "object"
                  }
                },
                "source_refs": {
                  "type": "array",
                  "items": {
                    "type": "string"
                  }
                }
              }
            },
            "executor": "ai-collab",
            "profile": "fast-capable",
            "constraints": {
              "no_project_state_writes": true,
              "require_source_refs": true
            },
            "request_hash": "dbe9f00bc8af5dda6f23488e94d6931438db43b0965c6f0bb7121c3c1086173a"
          },
          "output": {
            "summary": "No material correctness, robustness, security, compatibility, or test gaps remain after the regression assertion was tightened.",
            "findings": [],
            "source_refs": [
              ".prd_plugin/state/requests.json",
              "templates/config.json",
              "templates/repo-skeleton/.prd_plugin/templates/config.json",
              "tests/test_prd_install.py"
            ]
          },
          "output_hash": "865691c866ea0fbc92b25ff08bc0663b1b9234c58ccdbfde92bc3e0105f3ecf1",
          "completed_at": "2026-07-14T21:00:57Z",
          "judgment_result": {
            "request_hash": "dbe9f00bc8af5dda6f23488e94d6931438db43b0965c6f0bb7121c3c1086173a",
            "executor": "ai-collab",
            "profile": "fast-capable"
          }
        }
      ],
      "completed_at": "2026-07-14T21:00:57Z"
    },
    {
      "id": "WFR-012",
      "schema_version": "1.0",
      "workflow_id": "hub.release",
      "workflow_version": 1,
      "definition_hash": "b8efcc9726266d73719719856dab279ace8f4d21be7b2d01b4f5f08bd3eacc1b",
      "plan_hash": "45a6765f24486f3d1e889f80a653564254c97a7e400033444b676e8ed8cdecb8",
      "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
      "inputs": {},
      "idempotency_key": "release-0.15.2-final",
      "status": "completed",
      "attempt": 1,
      "created_at": "2026-07-14T21:01:16Z",
      "updated_at": "2026-07-14T21:02:22Z",
      "receipts": [
        {
          "step_id": "diff",
          "action": "git.diff_check",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "11c11db30f4b3f6c758722ba3e27eea08145b7d212f6a157451e364b48475280",
          "completed_at": "2026-07-14T21:01:16Z"
        },
        {
          "step_id": "config",
          "action": "config.audit",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "52f4670d3af925e27fa87b707174b4d88bc7c6d7cc17f7accb4003b9d0b94665",
          "completed_at": "2026-07-14T21:01:16Z"
        },
        {
          "step_id": "state",
          "action": "state.consistency",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "5a1c6e5246defb1b6b6b90ff734db95bece2886b408ab112ed9b8e67222d5568",
          "completed_at": "2026-07-14T21:01:16Z"
        },
        {
          "step_id": "workflow_audit",
          "action": "process.fixed",
          "input_hash": "edf19b269a54d72753f1abc2b8ffcb810c2b7bc377cee7e1698c939f17e0be94",
          "output_hash": "231b43ed70e09c4e7cbcda1094b00e0274dd4a22ff8324da2eb907f705c1316a",
          "completed_at": "2026-07-14T21:01:17Z"
        },
        {
          "step_id": "suite",
          "action": "process.fixed",
          "input_hash": "954e575e48145853f5681eda189186c95a053267158fae669114320f2e53794a",
          "output_hash": "f137c9dfb3392e2eba466ecb4f61e568ff28065fba946859d5017d41c9831291",
          "completed_at": "2026-07-14T21:02:20Z"
        },
        {
          "step_id": "release",
          "action": "process.fixed",
          "input_hash": "1e5b0c18d93eb4c2248f9a00adbd438e52f3ef02137477fb8376c69cfe86fc9b",
          "output_hash": "02e7fa8465f59733cba1b70b71583e58739b30430d9bd6aa49e97a6661c03ea6",
          "completed_at": "2026-07-14T21:02:20Z"
        },
        {
          "step_id": "gaps",
          "action": "process.fixed",
          "input_hash": "577241909238eeb55683f89d2d2216648dad2e3127397993e22493829a1307a4",
          "output_hash": "7a31f8b11bbf1ce403e33484c9926c53611e3df70ecd62c9624359e14f4ef3f1",
          "completed_at": "2026-07-14T21:02:20Z"
        },
        {
          "step_id": "package",
          "action": "process.fixed",
          "input_hash": "06cd12e1f3db3d985f9150520afa60f288297ff0ca01a8e813e9bb6291aa8836",
          "output_hash": "bf342da89ffa2a05c912a3d6a8845deb5cad49b49116681191bf0bc1d6391de6",
          "completed_at": "2026-07-14T21:02:22Z"
        },
        {
          "step_id": "gate",
          "action": "state.gate",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "a705b176b049df02348354c23988d51f616670b7352ad410321cbe0577edf053",
          "completed_at": "2026-07-14T21:02:22Z"
        }
      ],
      "steps": [
        {
          "id": "diff",
          "action": "git.diff_check",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-14T21:01:16Z",
          "output": {
            "passed": true
          },
          "output_hash": "11c11db30f4b3f6c758722ba3e27eea08145b7d212f6a157451e364b48475280",
          "completed_at": "2026-07-14T21:01:16Z"
        },
        {
          "id": "config",
          "action": "config.audit",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-14T21:01:16Z",
          "output": {
            "status": "ok",
            "summary": {
              "settings": 171,
              "mutable": 162,
              "read_only_or_managed": 9,
              "unclassified": 0,
              "unknown": 0,
              "invalid": 0,
              "missing_using_defaults": 0
            },
            "unclassified_keys": [],
            "unknown_keys": [],
            "invalid_values": [],
            "missing_using_defaults": []
          },
          "output_hash": "52f4670d3af925e27fa87b707174b4d88bc7c6d7cc17f7accb4003b9d0b94665",
          "completed_at": "2026-07-14T21:01:16Z"
        },
        {
          "id": "state",
          "action": "state.consistency",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-14T21:01:16Z",
          "output": {
            "status": "ok",
            "repo_root": "D:\\Projects\\prd-plugin",
            "summary": {
              "errors": 0,
              "warnings": 0,
              "infos": 0
            },
            "findings": []
          },
          "output_hash": "5a1c6e5246defb1b6b6b90ff734db95bece2886b408ab112ed9b8e67222d5568",
          "completed_at": "2026-07-14T21:01:16Z"
        },
        {
          "id": "workflow_audit",
          "action": "process.fixed",
          "status": "completed",
          "resolved_input_hash": "edf19b269a54d72753f1abc2b8ffcb810c2b7bc377cee7e1698c939f17e0be94",
          "started_at": "2026-07-14T21:01:16Z",
          "output": {
            "operation": "workflow_chml_audit",
            "command": [
              "python",
              "scripts/workflow_chml_audit.py",
              "--repo-root",
              ".",
              "--format",
              "json"
            ],
            "exit_code": 0,
            "stdout": "{\n  \"status\": \"ok\",\n  \"repo_root\": \"D:\\\\Projects\\\\prd-plugin\",\n  \"summary\": {\n    \"critical\": 0,\n    \"high\": 0,\n    \"medium\": 0,\n    \"low\": 0\n  },\n  \"findings\": []\n}\n",
            "stderr": ""
          },
          "output_hash": "231b43ed70e09c4e7cbcda1094b00e0274dd4a22ff8324da2eb907f705c1316a",
          "completed_at": "2026-07-14T21:01:17Z"
        },
        {
          "id": "suite",
          "action": "process.fixed",
          "status": "completed",
          "resolved_input_hash": "954e575e48145853f5681eda189186c95a053267158fae669114320f2e53794a",
          "started_at": "2026-07-14T21:01:17Z",
          "output": {
            "operation": "local_workflow_check",
            "command": [
              "python",
              "scripts/local_workflow_check.py"
            ],
            "exit_code": 0,
            "stdout": "Structured file validation passed.\n$ python -m unittest discover -s tests -v\n{\n  \"status\": \"fail\",\n  \"repo_root\": \"C:\\\\Users\\\\marku\\\\AppData\\\\Local\\\\Temp\\\\tmp5etv03hz\",\n  \"summary\": {\n    \"errors\": 1,\n    \"warnings\": 0\n  },\n  \"findings\": [\n    {\n      \"check\": \"duplicate_id\",\n      \"severity\": \"error\",\n      \"summary\": \"Duplicate id REQ-002 in .prd_plugin/state/requests.json.\",\n      \"required_action\": \"Renumber one record so REQ-002 is unique. Allocate IDs with the MCP tool prd_next_id (or the record tools like prd_open_goal) instead of hand-computing them.\"\n    }\n  ]\n}\nautonomy_level set to guided\nautonomy_level set to autonomous\nPRD Plugin: preserving your existing state/config; refreshing plugin files only. Re-run with --yes to also reset state to skeleton defaults.\nPRD Plugin: preserving your existing state/config; refreshing plugin files only. Re-run with --yes to also reset state to skeleton defaults.\nPRD Plugin: preserving your existing state/config; refreshing plugin files only. Re-run with --yes to also reset state to skeleton defaults.\n{\"decision\": \"block\", \"reason\": \"Autonomous run-until-done: goal TRK-107 is still active. Continue with the next incomplete step toward it \\u2014 do not stop to ask 'shall I proceed?'. If you genuinely need the user (consent floor: push/merge/publish/secrets, or a real blocker), create the file .prd_plugin/local/autonomy-pause with a one-line reason and then stop; the guard will let you. Otherwise keep going.\"}\n$ python scripts/feature_skill_audit.py --repo-root . --format json\n{\n  \"status\": \"ok\",\n  \"repo_root\": \"D:\\\\Projects\\\\prd-plugin\",\n  \"contract\": \"templates/feature-skill-map.json\",\n  \"feature_count\": 15,\n  \"summary\": {\n    \"critical\": 0,\n    \"high\": 0,\n    \"medium\": 0,\n    \"low\": 0\n  },\n  \"findings\": []\n}\n$ python scripts/gap_audit.py --target-version 0.15.2\n# PRD Plugin Gap Audit\n\nTarget version: `0.15.2`\n\n## Findings\n\n- None\n$ python scripts/version_advice.py --installed-repo . --format json --output request-report/version-advice.json\n$ python scripts/release_check.py --output request-report/release-hygiene.md\n$ python scripts/prd_doctor.py --repo-root . --format json --output request-report/prd-doctor.json\n$ python scripts/state_consistency_check.py --repo-root . --format json --output request-report/state-consistency.json\n$ python scripts/prd_install_skills.py --repo-root . --dry-run\n{\n  \"status\": \"dry_run\",\n  \"target_agent\": \"codex\",\n  \"targets\": [\n    {\n      \"agent\": \"codex\",\n      \"target\": \".agents\\\\skills\",\n      \"would_install\": [\n        \"project-architecture\",\n        \"project-blocker-resolution\",\n        \"project-brainstorm\",\n        \"project-change-request\",\n        \"project-code-review\",\n        \"project-decision-ledger\",\n        \"project-decision-policy\",\n        \"project-deterministic-workflows\",\n        \"project-document-branch\",\n        \"project-evidence\",\n        \"project-evidence-ledger\",\n        \"project-git-workflow\",\n        \"project-health\",\n        \"project-implementation-plan\",\n        \"project-llm-wiki\",\n        \"project-local-integration\",\n        \"project-memory\",\n        \"project-planning-lifecycle\",\n        \"project-prd\",\n        \"project-prd-plugin-setup\",\n        \"project-request-intake\",\n        \"project-session-close\",\n        \"project-systematic-debugging\",\n        \"project-test-driven-implementation\",\n        \"project-traceability-review\",\n        \"project-traceability-sync\",\n        \"project-verification-before-completion\"\n      ],\n      \"would_remove\": [\n        \"project-fold-it-in\",\n        \"project-self-audit\"\n      ]\n    }\n  ],\n  \"installed_count\": 0,\n  \"target\": \".agents\\\\skills\",\n  \"installed\": [],\n  \"removed\": [],\n  \"would_install\": [\n    \"project-architecture\",\n    \"project-blocker-resolution\",\n    \"project-brainstorm\",\n    \"project-change-request\",\n    \"project-code-review\",\n    \"project-decision-ledger\",\n    \"project-decision-policy\",\n    \"project-deterministic-workflows\",\n    \"project-document-branch\",\n    \"project-evidence\",\n    \"project-evidence-ledger\",\n    \"project-git-workflow\",\n    \"project-health\",\n    \"project-implementation-plan\",\n    \"project-llm-wiki\",\n    \"project-local-integration\",\n    \"project-memory\",\n    \"project-planning-lifecycle\",\n    \"project-prd\",\n    \"project-prd-plugin-setup\",\n    \"project-request-intake\",\n    \"project-session-close\",\n    \"project-systematic-debugging\",\n    \"project-test-driven-implementation\",\n    \"project-traceability-review\",\n    \"project-traceability-sync\",\n    \"project-verification-before-completion\"\n  ],\n  \"would_remove\": [\n    \"project-fold-it-in\",\n    \"project-self-audit\"\n  ]\n}\n$ python scripts/request_report.py --config .prd_plugin/config.json --format markdown --output request-report/request-report.md\n$ python scripts/request_report.py --config .prd_plugin/config.json --format json --output request-report/request-report.json\n$ python scripts/message_check.py --config .prd_plugin/config.json --format json --output request-report/message-check.json\nLocal workflow check completed.\n",
            "stderr": "silently_truncating) ... ok\ntest_utcp_substrate_action_emits_verification_plan (test_substrate_adapter.AdapterContractTests.test_utcp_substrate_action_emits_verification_plan) ... ok\ntest_workflow_skills_route_execution_through_ai_collab_adapter (test_substrate_adapter.AdapterContractTests.test_workflow_skills_route_execution_through_ai_collab_adapter) ... ok\ntest_all_shipped_configs_are_disabled_by_default_and_identical (test_substrate_adapter.ConfigContractTests.test_all_shipped_configs_are_disabled_by_default_and_identical) ... ok\ntest_cli_registry_validates_modes_and_capability_allowlist (test_substrate_adapter.ConfigContractTests.test_cli_registry_validates_modes_and_capability_allowlist) ... ok\ntest_registry_exposes_substrate_master_mode_and_capabilities (test_substrate_adapter.ConfigContractTests.test_registry_exposes_substrate_master_mode_and_capabilities) ... ok\ntest_adapted_skills_are_downstream_runtime_and_required (test_superpowers_adapted_skills.SuperpowersAdaptedSkillsTests.test_adapted_skills_are_downstream_runtime_and_required) ... ok\ntest_adapted_skills_are_installed_to_repo_local_and_skeleton (test_superpowers_adapted_skills.SuperpowersAdaptedSkillsTests.test_adapted_skills_are_installed_to_repo_local_and_skeleton) ... ok\ntest_adapted_superpowers_skills_exist_with_attribution_and_prd_ids (test_superpowers_adapted_skills.SuperpowersAdaptedSkillsTests.test_adapted_superpowers_skills_exist_with_attribution_and_prd_ids) ... ok\ntest_downstream_skills_do_not_direct_agents_to_run_hub_only_scripts (test_superpowers_adapted_skills.SuperpowersAdaptedSkillsTests.test_downstream_skills_do_not_direct_agents_to_run_hub_only_scripts) ... ok\ntest_notice_records_superpowers_origin (test_superpowers_adapted_skills.SuperpowersAdaptedSkillsTests.test_notice_records_superpowers_origin) ... ok\ntest_skeleton_skill_copies_exist (test_superpowers_adapted_skills.SuperpowersAdaptedSkillsTests.test_skeleton_skill_copies_exist) ... ok\ntest_specific_adaptations_keep_strong_method_and_prd_state_hooks (test_superpowers_adapted_skills.SuperpowersAdaptedSkillsTests.test_specific_adaptations_keep_strong_method_and_prd_state_hooks) ... ok\ntest_verification_guidance_uses_current_change_scope_not_unconditional_full_suite (test_superpowers_adapted_skills.SuperpowersAdaptedSkillsTests.test_verification_guidance_uses_current_change_scope_not_unconditional_full_suite) ... ok\ntest_extracts_affected_paths (test_telemetry.CaptureTurnRecordsTests.test_extracts_affected_paths) ... ok\ntest_extracts_referenced_ids (test_telemetry.CaptureTurnRecordsTests.test_extracts_referenced_ids) ... ok\ntest_marks_failed_tool (test_telemetry.CaptureTurnRecordsTests.test_marks_failed_tool) ... ok\ntest_one_record_per_tool_call (test_telemetry.CaptureTurnRecordsTests.test_one_record_per_tool_call) ... ok\ntest_turn_index_increments_per_prompt (test_telemetry.CaptureTurnRecordsTests.test_turn_index_increments_per_prompt) ... ok\ntest_preserves_benign_args (test_telemetry.RedactArgsTests.test_preserves_benign_args) ... ok\ntest_redacts_credential (test_telemetry.RedactArgsTests.test_redacts_credential) ... ok\ntest_redacts_key (test_telemetry.RedactArgsTests.test_redacts_key) ... ok\ntest_redacts_local_path (test_telemetry.RedactArgsTests.test_redacts_local_path) ... ok\ntest_redacts_nested (test_telemetry.RedactArgsTests.test_redacts_nested) ... ok\ntest_redacts_password (test_telemetry.RedactArgsTests.test_redacts_password) ... ok\ntest_redacts_secret (test_telemetry.RedactArgsTests.test_redacts_secret) ... ok\ntest_redacts_token (test_telemetry.RedactArgsTests.test_redacts_token) ... ok\ntest_scenario (test_telemetry.SyntheticFiveTurnScenarioTests.test_scenario) ... ok\ntest_required_fields_present (test_telemetry.TelemetryRecordSchemaTests.test_required_fields_present) ... ok\ntest_to_dict_is_json_serializable (test_telemetry.TelemetryRecordSchemaTests.test_to_dict_is_json_serializable) ... ok\ntest_appends_to_existing_file (test_telemetry.WriteTelemetryJsonlTests.test_appends_to_existing_file) ... ok\ntest_load_roundtrip (test_telemetry.WriteTelemetryJsonlTests.test_load_roundtrip) ... ok\ntest_load_skips_malformed_lines (test_telemetry.WriteTelemetryJsonlTests.test_load_skips_malformed_lines) ... ok\ntest_writes_one_line_per_record (test_telemetry.WriteTelemetryJsonlTests.test_writes_one_line_per_record) ... ok\ntest_base_ref_is_resolved_locally_and_option_like_values_are_rejected (test_test_scope.ChangedFileTests.test_base_ref_is_resolved_locally_and_option_like_values_are_rejected) ... ok\ntest_collects_staged_unstaged_and_untracked_without_a_remote (test_test_scope.ChangedFileTests.test_collects_staged_unstaged_and_untracked_without_a_remote) ... ok\ntest_rejects_absolute_or_parent_traversal_changed_paths (test_test_scope.ChangedFileTests.test_rejects_absolute_or_parent_traversal_changed_paths) ... ok\ntest_direct_json_cannot_disable_the_safe_full_fallback (test_test_scope.PlanTests.test_direct_json_cannot_disable_the_safe_full_fallback) ... ok\ntest_direct_json_cannot_remove_mandatory_full_suite_triggers (test_test_scope.PlanTests.test_direct_json_cannot_remove_mandatory_full_suite_triggers) ... ok\ntest_disabled_or_unavailable_executor_requires_full_verification (test_test_scope.PlanTests.test_disabled_or_unavailable_executor_requires_full_verification) ... ok\ntest_narrow_change_emits_deterministic_ai_collab_requests (test_test_scope.PlanTests.test_narrow_change_emits_deterministic_ai_collab_requests) ... ok\ntest_no_changes_requires_no_verification_unless_release (test_test_scope.PlanTests.test_no_changes_requires_no_verification_unless_release) ... ok\ntest_plan_tells_runtime_to_fallback_on_degraded_or_unmapped_results (test_test_scope.PlanTests.test_plan_tells_runtime_to_fallback_on_degraded_or_unmapped_results) ... ok\ntest_release_core_and_excessive_changes_require_full_verification (test_test_scope.PlanTests.test_release_core_and_excessive_changes_require_full_verification) ... ok\ntest_document_branch_skill_defines_parallel_tracking_profile_everywhere (test_tracking_branch_policy.TrackingBranchPolicyTests.test_document_branch_skill_defines_parallel_tracking_profile_everywhere) ... ok\ntest_every_direct_tracking_writer_is_parallel_worker_aware_everywhere (test_tracking_branch_policy.TrackingBranchPolicyTests.test_every_direct_tracking_writer_is_parallel_worker_aware_everywhere) ... ok\ntest_memory_and_git_skills_keep_workers_off_canonical_state_everywhere (test_tracking_branch_policy.TrackingBranchPolicyTests.test_memory_and_git_skills_keep_workers_off_canonical_state_everywhere) ... ok\ntest_narrative_branch_manifest_template_is_installed (test_tracking_branch_policy.TrackingBranchPolicyTests.test_narrative_branch_manifest_template_is_installed) ... ok\ntest_user_docs_explain_branch_then_promote_workflow (test_tracking_branch_policy.TrackingBranchPolicyTests.test_user_docs_explain_branch_then_promote_workflow) ... ok\ntest_worker_launch_contract_is_shipped_to_downstream_hosts (test_tracking_branch_policy.TrackingBranchPolicyTests.test_worker_launch_contract_is_shipped_to_downstream_hosts) ... ok\ntest_empty_repo_safe (test_tracking_commands.PrdStatusTests.test_empty_repo_safe) ... ok\ntest_legacy_and_open_statuses_are_not_hidden (test_tracking_commands.PrdStatusTests.test_legacy_and_open_statuses_are_not_hidden) ... ok\ntest_null_status_and_legacy_health_do_not_break_status (test_tracking_commands.PrdStatusTests.test_null_status_and_legacy_health_do_not_break_status) ... ok\ntest_summarizes_state (test_tracking_commands.PrdStatusTests.test_summarizes_state) ... ok\ntest_tracking_branches_are_visible_without_reading_branch_files (test_tracking_commands.PrdStatusTests.test_tracking_branches_are_visible_without_reading_branch_files) ... ok\ntest_commands_exist_in_all_locations (test_tracking_commands.TrackingCommandFileTests.test_commands_exist_in_all_locations) ... ok\ntest_commands_invoke_the_right_workflow (test_tracking_commands.TrackingCommandFileTests.test_commands_invoke_the_right_workflow) ... ok\ntest_prd_status_is_downstream_runtime (test_tracking_commands.TrackingCommandFileTests.test_prd_status_is_downstream_runtime) ... ok\ntest_catalog_describes_latency_and_effective_dependencies (test_unified_config.CatalogTests.test_catalog_describes_latency_and_effective_dependencies) ... ok\ntest_every_shipped_leaf_is_classified (test_unified_config.CatalogTests.test_every_shipped_leaf_is_classified) ... ok\ntest_inventory_separates_non_persistent_control_planes (test_unified_config.CatalogTests.test_inventory_separates_non_persistent_control_planes) ... ok\ntest_inventory_audit_describe_and_profile_commands_emit_json (test_unified_config.CliTests.test_inventory_audit_describe_and_profile_commands_emit_json) ... ok\ntest_audit_rejects_cli_coercions_in_direct_json (test_unified_config.MutationTests.test_audit_rejects_cli_coercions_in_direct_json) ... ok\ntest_audit_rejects_invalid_custom_profiles_and_active_marker (test_unified_config.MutationTests.test_audit_rejects_invalid_custom_profiles_and_active_marker) ... ok\ntest_audit_reports_scalar_configuration_section_without_crashing (test_unified_config.MutationTests.test_audit_reports_scalar_configuration_section_without_crashing) ... ok\ntest_audit_reports_unknown_and_invalid_values (test_unified_config.MutationTests.test_audit_reports_unknown_and_invalid_values) ... ok\ntest_enable_disable_only_accept_mutable_booleans (test_unified_config.MutationTests.test_enable_disable_only_accept_mutable_booleans) ... ok\ntest_failed_atomic_replace_leaves_original_config_untouched (test_unified_config.MutationTests.test_failed_atomic_replace_leaves_original_config_untouched) ... ok\ntest_malformed_config_is_never_replaced_by_a_mutation (test_unified_config.MutationTests.test_malformed_config_is_never_replaced_by_a_mutation) ... ok\ntest_manual_set_marks_profile_custom_and_preserves_style (test_unified_config.MutationTests.test_manual_set_marks_profile_custom_and_preserves_style) ... ok\ntest_scalar_parent_is_not_clobbered_by_nested_set (test_unified_config.MutationTests.test_scalar_parent_is_not_clobbered_by_nested_set) ... ok\ntest_builtin_profile_dry_run_then_atomic_apply (test_unified_config.ProfileTests.test_builtin_profile_dry_run_then_atomic_apply) ... ok\ntest_invalid_custom_profile_never_partially_writes (test_unified_config.ProfileTests.test_invalid_custom_profile_never_partially_writes) ... ok\ntest_save_show_diff_and_delete_custom_profile (test_unified_config.ProfileTests.test_save_show_diff_and_delete_custom_profile) ... ok\ntest_does_not_flag_canonical_prd_state_paths (test_unsubmitted_plugin_request.UnsubmittedPluginRequestTests.test_does_not_flag_canonical_prd_state_paths) ... ok\ntest_does_not_flag_ordinary_project_requests (test_unsubmitted_plugin_request.UnsubmittedPluginRequestTests.test_does_not_flag_ordinary_project_requests) ... ok\ntest_does_not_flag_rejected_requests (test_unsubmitted_plugin_request.UnsubmittedPluginRequestTests.test_does_not_flag_rejected_requests) ... ok\ntest_does_not_flag_when_already_marked_upstream (test_unsubmitted_plugin_request.UnsubmittedPluginRequestTests.test_does_not_flag_when_already_marked_upstream) ... ok\ntest_flags_a_local_request_about_a_plugin_script (test_unsubmitted_plugin_request.UnsubmittedPluginRequestTests.test_flags_a_local_request_about_a_plugin_script) ... ok\ntest_flags_a_request_that_names_itself_upstream (test_unsubmitted_plugin_request.UnsubmittedPluginRequestTests.test_flags_a_request_that_names_itself_upstream) ... ok\ntest_never_fires_in_the_hub_repo_itself (test_unsubmitted_plugin_request.UnsubmittedPluginRequestTests.test_never_fires_in_the_hub_repo_itself) ... ok\ntest_wired_into_run_checks (test_unsubmitted_plugin_request.UnsubmittedPluginRequestTests.test_wired_into_run_checks) ... ok\ntest_appends_version_change_request (test_version_advice.VersionAdviceTests.test_appends_version_change_request) ... ok\ntest_builds_safe_update_advice_for_low_risk_releases (test_version_advice.VersionAdviceTests.test_builds_safe_update_advice_for_low_risk_releases) ... ok\ntest_cli_uses_hub_releases_when_downstream_repo_has_no_releases_file (test_version_advice.VersionAdviceTests.test_cli_uses_hub_releases_when_downstream_repo_has_no_releases_file) ... ok\ntest_detects_installed_version_from_bom_json (test_version_advice.VersionAdviceTests.test_detects_installed_version_from_bom_json) ... ok\ntest_detects_installed_version_from_opencode_plugin_manifest (test_version_advice.VersionAdviceTests.test_detects_installed_version_from_opencode_plugin_manifest) ... ok\ntest_detects_installed_version_from_prd_plugin_config (test_version_advice.VersionAdviceTests.test_detects_installed_version_from_prd_plugin_config) ... ok\ntest_detects_latest_version_from_plugin_manifest (test_version_advice.VersionAdviceTests.test_detects_latest_version_from_plugin_manifest) ... ok\ntest_installed_version_priority_prefers_config_then_codex_then_opencode (test_version_advice.VersionAdviceTests.test_installed_version_priority_prefers_config_then_codex_then_opencode) ... ok\ntest_orders_prerelease_before_final_release (test_version_advice.VersionAdviceTests.test_orders_prerelease_before_final_release) ... ok\ntest_recommends_review_first_for_medium_or_high_risk_release (test_version_advice.VersionAdviceTests.test_recommends_review_first_for_medium_or_high_risk_release) ... ok\ntest_disabled_returns_disabled_and_no_fetch (test_version_check.CheckTests.test_disabled_returns_disabled_and_no_fetch) ... ok\ntest_force_refetches_within_ttl (test_version_check.CheckTests.test_force_refetches_within_ttl) ... ok\ntest_network_failure_is_fail_open (test_version_check.CheckTests.test_network_failure_is_fail_open) ... ok\ntest_no_update_when_current (test_version_check.CheckTests.test_no_update_when_current) ... ok\ntest_status_is_cache_only_no_fetch (test_version_check.CheckTests.test_status_is_cache_only_no_fetch) ... ok\ntest_ttl_cache_avoids_refetch (test_version_check.CheckTests.test_ttl_cache_avoids_refetch) ... ok\ntest_ttl_expiry_refetches (test_version_check.CheckTests.test_ttl_expiry_refetches) ... ok\ntest_update_available_when_npm_is_ahead (test_version_check.CheckTests.test_update_available_when_npm_is_ahead) ... ok\ntest_status_cli_exits_zero (test_version_check.CliTests.test_status_cli_exits_zero) ... ok\ntest_default_ttl_is_responsive_not_a_day (test_version_check.FreshnessTests.test_default_ttl_is_responsive_not_a_day) ... ok\ntest_fetch_latest_accepts_a_timeout (test_version_check.FreshnessTests.test_fetch_latest_accepts_a_timeout) ... ok\ntest_nudge_refreshes_in_session_not_cache_only (test_version_check.FreshnessTests.test_nudge_refreshes_in_session_not_cache_only) ... ok\ntest_registry_default_ttl_matches (test_version_check.FreshnessTests.test_registry_default_ttl_matches) ... ok\ntest_semver_ordering (test_version_check.ParseTests.test_semver_ordering) ... ok\ntest_set_enabled_writes_config (test_version_check.ToggleTests.test_set_enabled_writes_config) ... ok\ntest_config_has_version_check_default_on (test_version_check.WiringTests.test_config_has_version_check_default_on) ... ok\ntest_nudge_surfaces_update_available (test_version_check.WiringTests.test_nudge_surfaces_update_available) ... ok\ntest_prd_version_command_exists (test_version_check.WiringTests.test_prd_version_command_exists) ... ok\ntest_script_registered_downstream (test_version_check.WiringTests.test_script_registered_downstream) ... ok\ntest_plan_cli_emits_json (test_wiki_backfill.CliTests.test_plan_cli_emits_json) ... ok\ntest_status_cli (test_wiki_backfill.CliTests.test_status_cli) ... ok\ntest_marker_written_for_established_repo_gaining_wiki (test_wiki_backfill.InstallerMarkerTests.test_marker_written_for_established_repo_gaining_wiki) ... ok\ntest_no_marker_for_empty_scaffold (test_wiki_backfill.InstallerMarkerTests.test_no_marker_for_empty_scaffold) ... ok\ntest_no_marker_when_wiki_already_exists (test_wiki_backfill.InstallerMarkerTests.test_no_marker_when_wiki_already_exists) ... ok\ntest_no_marker_when_wiki_disabled (test_wiki_backfill.InstallerMarkerTests.test_no_marker_when_wiki_disabled) ... ok\ntest_pending_false_when_absent (test_wiki_backfill.StatusTests.test_pending_false_when_absent) ... ok\ntest_pending_false_when_wiki_already_exists (test_wiki_backfill.StatusTests.test_pending_false_when_wiki_already_exists) ... ok\ntest_pending_true_when_marker_present (test_wiki_backfill.StatusTests.test_pending_true_when_marker_present) ... ok\ntest_plan_excludes_generated_report_artifacts (test_wiki_backfill.SurveyPlanTests.test_plan_excludes_generated_report_artifacts)\nrequest-report/ (incl. its calibration report trees) and docs/evidence/ ... ok\ntest_plan_excludes_plugin_and_vendor_noise (test_wiki_backfill.SurveyPlanTests.test_plan_excludes_plugin_and_vendor_noise) ... ok\ntest_plan_inventories_code_docs_and_state (test_wiki_backfill.SurveyPlanTests.test_plan_inventories_code_docs_and_state) ... ok\ntest_plan_is_read_only (test_wiki_backfill.SurveyPlanTests.test_plan_is_read_only) ... ok\ntest_wiki_drift_in_on_stop_and_default_sets (test_wiki_backfill.WikiDriftMonitorWiringTests.test_wiki_drift_in_on_stop_and_default_sets) ... ok\ntest_current_article_no_drift (test_wiki_backfill.WikiDriftTests.test_current_article_no_drift) ... ok\ntest_drift_cli (test_wiki_backfill.WikiDriftTests.test_drift_cli) ... ok\ntest_far_behind_article_flagged (test_wiki_backfill.WikiDriftTests.test_far_behind_article_flagged) ... ok\ntest_no_wiki_is_ok (test_wiki_backfill.WikiDriftTests.test_no_wiki_is_ok) ... ok\ntest_unstamped_article_flagged (test_wiki_backfill.WikiDriftTests.test_unstamped_article_flagged) ... ok\ntest_nudge_surfaces_pending_backfill (test_wiki_backfill.WiringTests.test_nudge_surfaces_pending_backfill) ... ok\ntest_script_registered_downstream (test_wiki_backfill.WiringTests.test_script_registered_downstream) ... ok\ntest_skill_has_backfill_mode (test_wiki_backfill.WiringTests.test_skill_has_backfill_mode) ... ok\ntest_no_cp1252_unencodable_chars_in_agent_facing_tools (test_windows_console_safe.SourceScanTests.test_no_cp1252_unencodable_chars_in_agent_facing_tools) ... ok\ntest_backfill_pending_status_renders_cp1252_safe (test_windows_console_safe.StatusRenderTests.test_backfill_pending_status_renders_cp1252_safe) ... ok\ntest_repository_workflow_surfaces_are_chml_zero (test_workflow_chml_audit.WorkflowChmlAuditTests.test_repository_workflow_surfaces_are_chml_zero) ... ok\ntest_semantic_skill_finding_is_part_of_workflow_chml (test_workflow_chml_audit.WorkflowChmlAuditTests.test_semantic_skill_finding_is_part_of_workflow_chml) ... ok\ntest_git_workflow_defers_autonomy_to_decision_policy_but_keeps_floor (test_workflow_consistency.AutonomyConflictResolutionTests.test_git_workflow_defers_autonomy_to_decision_policy_but_keeps_floor) ... ok\ntest_request_intake_defers_autonomy_and_owns_graduation (test_workflow_consistency.AutonomyConflictResolutionTests.test_request_intake_defers_autonomy_and_owns_graduation) ... ok\ntest_evidence_pair_states_create_vs_review_boundary (test_workflow_consistency.BoundaryClarityTests.test_evidence_pair_states_create_vs_review_boundary) ... ok\ntest_session_close_states_memory_boundary (test_workflow_consistency.BoundaryClarityTests.test_session_close_states_memory_boundary) ... ok\ntest_document_branch_has_promotion_owner (test_workflow_consistency.DeadEndOwnerTests.test_document_branch_has_promotion_owner) ... ok\ntest_health_findings_have_triage_dispositions (test_workflow_consistency.DeadEndOwnerTests.test_health_findings_have_triage_dispositions) ... ok\ntest_memory_owns_schema_version_changes (test_workflow_consistency.DeadEndOwnerTests.test_memory_owns_schema_version_changes) ... ok\ntest_planning_lifecycle_has_stage_readiness_checkpoints (test_workflow_consistency.DeadEndOwnerTests.test_planning_lifecycle_has_stage_readiness_checkpoints) ... ok\ntest_session_close_runs_traceability_sync (test_workflow_consistency.DeadEndOwnerTests.test_session_close_runs_traceability_sync) ... ok\n\n----------------------------------------------------------------------\nRan 793 tests in 60.307s\n\nOK\n"
          },
          "output_hash": "f137c9dfb3392e2eba466ecb4f61e568ff28065fba946859d5017d41c9831291",
          "completed_at": "2026-07-14T21:02:20Z"
        },
        {
          "id": "release",
          "action": "process.fixed",
          "status": "completed",
          "resolved_input_hash": "1e5b0c18d93eb4c2248f9a00adbd438e52f3ef02137477fb8376c69cfe86fc9b",
          "started_at": "2026-07-14T21:02:20Z",
          "output": {
            "operation": "release_check",
            "command": [
              "python",
              "scripts/release_check.py"
            ],
            "exit_code": 0,
            "stdout": "# Release Hygiene Report\n\nBase version: `0.15.1`\nHead version: `0.15.2`\nChanged files checked: 33\n\n## Findings\n\n- None\n",
            "stderr": ""
          },
          "output_hash": "02e7fa8465f59733cba1b70b71583e58739b30430d9bd6aa49e97a6661c03ea6",
          "completed_at": "2026-07-14T21:02:20Z"
        },
        {
          "id": "gaps",
          "action": "process.fixed",
          "status": "completed",
          "resolved_input_hash": "577241909238eeb55683f89d2d2216648dad2e3127397993e22493829a1307a4",
          "started_at": "2026-07-14T21:02:20Z",
          "output": {
            "operation": "gap_audit",
            "command": [
              "python",
              "scripts/gap_audit.py",
              "--target-version",
              "0.15.2",
              "--config",
              ".prd_plugin/config.json",
              "--releases",
              ".prd_plugin/state/releases.json"
            ],
            "exit_code": 0,
            "stdout": "# PRD Plugin Gap Audit\n\nTarget version: `0.15.2`\n\n## Findings\n\n- None\n",
            "stderr": ""
          },
          "output_hash": "7a31f8b11bbf1ce403e33484c9926c53611e3df70ecd62c9624359e14f4ef3f1",
          "completed_at": "2026-07-14T21:02:20Z"
        },
        {
          "id": "package",
          "action": "process.fixed",
          "status": "completed",
          "resolved_input_hash": "06cd12e1f3db3d985f9150520afa60f288297ff0ca01a8e813e9bb6291aa8836",
          "started_at": "2026-07-14T21:02:20Z",
          "output": {
            "operation": "package_check",
            "command": [
              "npm",
              "pack",
              "--dry-run"
            ],
            "exit_code": 0,
            "stdout": "prd-plugin-0.15.2.tgz\n",
            "stderr": "t.py\nnpm notice 5.5kB scripts/staleness_audit.py\nnpm notice 17.6kB scripts/state_consistency_check.py\nnpm notice 5.8kB scripts/traceability_sync_auto.py\nnpm notice 12.5kB scripts/version_advice.py\nnpm notice 9.6kB scripts/workflow_chml_audit.py\nnpm notice 3.0kB skills/project-architecture/SKILL.md\nnpm notice 7.4kB skills/project-blocker-resolution/SKILL.md\nnpm notice 2.8kB skills/project-brainstorm/SKILL.md\nnpm notice 5.5kB skills/project-change-request/SKILL.md\nnpm notice 5.9kB skills/project-code-review/SKILL.md\nnpm notice 2.7kB skills/project-decision-ledger/SKILL.md\nnpm notice 17.4kB skills/project-decision-policy/SKILL.md\nnpm notice 3.8kB skills/project-deterministic-workflows/SKILL.md\nnpm notice 4.9kB skills/project-document-branch/SKILL.md\nnpm notice 2.8kB skills/project-evidence-ledger/SKILL.md\nnpm notice 3.3kB skills/project-evidence/SKILL.md\nnpm notice 8.9kB skills/project-fold-it-in/SKILL.md\nnpm notice 11.2kB skills/project-git-workflow/SKILL.md\nnpm notice 7.4kB skills/project-health/SKILL.md\nnpm notice 5.6kB skills/project-implementation-plan/SKILL.md\nnpm notice 1.1kB skills/project-llm-wiki/LICENSE\nnpm notice 842B skills/project-llm-wiki/references/archive-template.md\nnpm notice 843B skills/project-llm-wiki/references/article-template.md\nnpm notice 559B skills/project-llm-wiki/references/index-template.md\nnpm notice 317B skills/project-llm-wiki/references/raw-template.md\nnpm notice 15.0kB skills/project-llm-wiki/SKILL.md\nnpm notice 7.4kB skills/project-local-integration/SKILL.md\nnpm notice 8.1kB skills/project-memory/SKILL.md\nnpm notice 5.8kB skills/project-planning-lifecycle/SKILL.md\nnpm notice 4.5kB skills/project-prd-plugin-setup/SKILL.md\nnpm notice 3.5kB skills/project-prd/SKILL.md\nnpm notice 22.1kB skills/project-request-intake/SKILL.md\nnpm notice 5.6kB skills/project-self-audit/SKILL.md\nnpm notice 4.7kB skills/project-session-close/SKILL.md\nnpm notice 3.7kB skills/project-systematic-debugging/SKILL.md\nnpm notice 3.0kB skills/project-test-driven-implementation/SKILL.md\nnpm notice 3.7kB skills/project-traceability-review/SKILL.md\nnpm notice 2.5kB skills/project-traceability-sync/SKILL.md\nnpm notice 5.1kB skills/project-verification-before-completion/SKILL.md\nnpm notice 167B templates/architecture-delta.md\nnpm notice 1.4kB templates/architecture.json\nnpm notice 368B templates/brainstorm.md\nnpm notice 274B templates/changelog.json\nnpm notice 12.9kB templates/config.json\nnpm notice 265B templates/decision-record.md\nnpm notice 398B templates/decisions.json\nnpm notice 372B templates/doc-branch.json\nnpm notice 313B templates/doc-branch.md\nnpm notice 115B templates/evidence.md\nnpm notice 10.0kB templates/feature-skill-map.json\nnpm notice 249B templates/handoff.json\nnpm notice 407B templates/health.json\nnpm notice 695B templates/human-exports/architecture.md\nnpm notice 626B templates/human-exports/implementation-plan.md\nnpm notice 580B templates/human-exports/prd.md\nnpm notice 1.4kB templates/implementation-plan.json\nnpm notice 65B templates/mailbox.json\nnpm notice 348B templates/memory.json\nnpm notice 471B templates/merge-checklist.md\nnpm notice 163B templates/plan-delta.md\nnpm notice 139B templates/prd-delta.md\nnpm notice 1.3kB templates/prd.json\nnpm notice 454B templates/project.json\nnpm notice 125B templates/promoted-session-summary.jsonl\nnpm notice 156.5kB templates/releases.json\nnpm notice 3.0kB templates/repo-skeleton/.agents/skills/project-architecture/SKILL.md\nnpm notice 7.4kB templates/repo-skeleton/.agents/skills/project-blocker-resolution/SKILL.md\nnpm notice 2.8kB templates/repo-skeleton/.agents/skills/project-brainstorm/SKILL.md\nnpm notice 5.5kB templates/repo-skeleton/.agents/skills/project-change-request/SKILL.md\nnpm notice 5.9kB templates/repo-skeleton/.agents/skills/project-code-review/SKILL.md\nnpm notice 2.7kB templates/repo-skeleton/.agents/skills/project-decision-ledger/SKILL.md\nnpm notice 17.4kB templates/repo-skeleton/.agents/skills/project-decision-policy/SKILL.md\nnpm notice 3.8kB templates/repo-skeleton/.agents/skills/project-deterministic-workflows/SKILL.md\nnpm notice 4.9kB templates/repo-skeleton/.agents/skills/project-document-branch/SKILL.md\nnpm notice 2.8kB templates/repo-skeleton/.agents/skills/project-evidence-ledger/SKILL.md\nnpm notice 3.3kB templates/repo-skeleton/.agents/skills/project-evidence/SKILL.md\nnpm notice 11.1kB templates/repo-skeleton/.agents/skills/project-git-workflow/SKILL.md\nnpm notice 7.4kB templates/repo-skeleton/.agents/skills/project-health/SKILL.md\nnpm notice 5.6kB templates/repo-skeleton/.agents/skills/project-implementation-plan/SKILL.md\nnpm notice 1.1kB templates/repo-skeleton/.agents/skills/project-llm-wiki/LICENSE\nnpm notice 842B templates/repo-skeleton/.agents/skills/project-llm-wiki/references/archive-template.md\nnpm notice 843B templates/repo-skeleton/.agents/skills/project-llm-wiki/references/article-template.md\nnpm notice 559B templates/repo-skeleton/.agents/skills/project-llm-wiki/references/index-template.md\nnpm notice 317B templates/repo-skeleton/.agents/skills/project-llm-wiki/references/raw-template.md\nnpm notice 15.0kB templates/repo-skeleton/.agents/skills/project-llm-wiki/SKILL.md\nnpm notice 7.4kB templates/repo-skeleton/.agents/skills/project-local-integration/SKILL.md\nnpm notice 8.1kB templates/repo-skeleton/.agents/skills/project-memory/SKILL.md\nnpm notice 5.8kB templates/repo-skeleton/.agents/skills/project-planning-lifecycle/SKILL.md\nnpm notice 4.5kB templates/repo-skeleton/.agents/skills/project-prd-plugin-setup/SKILL.md\nnpm notice 3.5kB templates/repo-skeleton/.agents/skills/project-prd/SKILL.md\nnpm notice 22.1kB templates/repo-skeleton/.agents/skills/project-request-intake/SKILL.md\nnpm notice 4.7kB templates/repo-skeleton/.agents/skills/project-session-close/SKILL.md\nnpm notice 3.7kB templates/repo-skeleton/.agents/skills/project-systematic-debugging/SKILL.md\nnpm notice 3.0kB templates/repo-skeleton/.agents/skills/project-test-driven-implementation/SKILL.md\nnpm notice 3.7kB templates/repo-skeleton/.agents/skills/project-traceability-review/SKILL.md\nnpm notice 2.5kB templates/repo-skeleton/.agents/skills/project-traceability-sync/SKILL.md\nnpm notice 5.0kB templates/repo-skeleton/.agents/skills/project-verification-before-completion/SKILL.md\nnpm notice 871B templates/repo-skeleton/.claude-plugin/plugin.json\nnpm notice 772B templates/repo-skeleton/.claude/commands/prd-autonomy.md\nnpm notice 493B templates/repo-skeleton/.claude/commands/prd-close.md\nnpm notice 2.0kB templates/repo-skeleton/.claude/commands/prd-config.md\nnpm notice 1.6kB templates/repo-skeleton/.claude/commands/prd-drift.md\nnpm notice 1.4kB templates/repo-skeleton/.claude/commands/prd-graph.md\nnpm notice 1.6kB templates/repo-skeleton/.claude/commands/prd-hooks.md\nnpm notice 639B templates/repo-skeleton/.claude/commands/prd-new.md\nnpm notice 1.6kB templates/repo-skeleton/.claude/commands/prd-reflections.md\nnpm notice 1.8kB templates/repo-skeleton/.claude/commands/prd-report.md\nnpm notice 549B templates/repo-skeleton/.claude/commands/prd-status.md\nnpm notice 974B templates/repo-skeleton/.claude/commands/prd-track.md\nnpm notice 1.0kB templates/repo-skeleton/.claude/commands/prd-version.md\nnpm notice 938B templates/repo-skeleton/.claude/commands/prd-workflow.md\nnpm notice 1.6kB templates/repo-skeleton/.claude/hooks/prd_drift_check.py\nnpm notice 2.0kB templates/repo-skeleton/.claude/hooks/prd_log_skill.py\nnpm notice 4.1kB templates/repo-skeleton/.claude/hooks/prd_nudge.py\nnpm notice 3.7kB templates/repo-skeleton/.claude/hooks/prd_precommit_gate.py\nnpm notice 6.1kB templates/repo-skeleton/.claude/hooks/prd_reflection.py\nnpm notice 3.5kB templates/repo-skeleton/.claude/hooks/prd_session_report.py\nnpm notice 9.8kB templates/repo-skeleton/.claude/hooks/prd_stop_guard.py\nnpm notice 1.3kB templates/repo-skeleton/.claude/settings.json\nnpm notice 3.0kB templates/repo-skeleton/.claude/skills/project-architecture/SKILL.md\nnpm notice 7.4kB templates/repo-skeleton/.claude/skills/project-blocker-resolution/SKILL.md\nnpm notice 2.8kB templates/repo-skeleton/.claude/skills/project-brainstorm/SKILL.md\nnpm notice 5.5kB templates/repo-skeleton/.claude/skills/project-change-request/SKILL.md\nnpm notice 5.9kB templates/repo-skeleton/.claude/skills/project-code-review/SKILL.md\nnpm notice 2.7kB templates/repo-skeleton/.claude/skills/project-decision-ledger/SKILL.md\nnpm notice 17.4kB templates/repo-skeleton/.claude/skills/project-decision-policy/SKILL.md\nnpm notice 3.8kB templates/repo-skeleton/.claude/skills/project-deterministic-workflows/SKILL.md\nnpm notice 4.9kB templates/repo-skeleton/.claude/skills/project-document-branch/SKILL.md\nnpm notice 2.8kB templates/repo-skeleton/.claude/skills/project-evidence-ledger/SKILL.md\nnpm notice 3.3kB templates/repo-skeleton/.claude/skills/project-evidence/SKILL.md\nnpm notice 11.1kB templates/repo-skeleton/.claude/skills/project-git-workflow/SKILL.md\nnpm notice 7.4kB templates/repo-skeleton/.claude/skills/project-health/SKILL.md\nnpm notice 5.6kB templates/repo-skeleton/.claude/skills/project-implementation-plan/SKILL.md\nnpm notice 1.1kB templates/repo-skeleton/.claude/skills/project-llm-wiki/LICENSE\nnpm notice 842B templates/repo-skeleton/.claude/skills/project-llm-wiki/references/archive-template.md\nnpm notice 843B templates/repo-skeleton/.claude/skills/project-llm-wiki/references/article-template.md\nnpm notice 559B templates/repo-skeleton/.claude/skills/project-llm-wiki/references/index-template.md\nnpm notice 317B templates/repo-skeleton/.claude/skills/project-llm-wiki/references/raw-template.md\nnpm notice 15.0kB templates/repo-skeleton/.claude/skills/project-llm-wiki/SKILL.md\nnpm notice 7.4kB templates/repo-skeleton/.claude/skills/project-local-integration/SKILL.md\nnpm notice 8.1kB templates/repo-skeleton/.claude/skills/project-memory/SKILL.md\nnpm notice 5.8kB templates/repo-skeleton/.claude/skills/project-planning-lifecycle/SKILL.md\nnpm notice 4.5kB templates/repo-skeleton/.claude/skills/project-prd-plugin-setup/SKILL.md\nnpm notice 3.5kB templates/repo-skeleton/.claude/skills/project-prd/SKILL.md\nnpm notice 22.1kB templates/repo-skeleton/.claude/skills/project-request-intake/SKILL.md\nnpm notice 4.7kB templates/repo-skeleton/.claude/skills/project-session-close/SKILL.md\nnpm notice 3.7kB templates/repo-skeleton/.claude/skills/project-systematic-debugging/SKILL.md\nnpm notice 3.0kB templates/repo-skeleton/.claude/skills/project-test-driven-implementation/SKILL.md\nnpm notice 3.7kB templates/repo-skeleton/.claude/skills/project-traceability-review/SKILL.md\nnpm notice 2.5kB templates/repo-skeleton/.claude/skills/project-traceability-sync/SKILL.md\nnpm notice 5.0kB templates/repo-skeleton/.claude/skills/project-verification-before-completion/SKILL.md\nnpm notice 3.1kB templates/repo-skeleton/.codex-plugin/plugin.json\nnpm notice 2.8kB templates/repo-skeleton/.codex/hooks.json\nnpm notice 743B templates/repo-skeleton/.githooks/pre-commit\nnpm notice 734B templates/repo-skeleton/.github/workflows/prd-gate.yml\nnpm notice 3.1kB templates/repo-skeleton/.opencode/plugin.json\nnpm notice 3.3kB templates/repo-skeleton/.opencode/plugins/prd-hooks.js\nnpm notice 3.0kB templates/repo-skeleton/.opencode/skill/project-architecture/SKILL.md\nnpm notice 7.4kB templates/repo-skeleton/.opencode/skill/project-blocker-resolution/SKILL.md\nnpm notice 2.8kB templates/repo-skeleton/.opencode/skill/project-brainstorm/SKILL.md\nnpm notice 5.5kB templates/repo-skeleton/.opencode/skill/project-change-request/SKILL.md\nnpm notice 5.9kB templates/repo-skeleton/.opencode/skill/project-code-review/SKILL.md\nnpm notice 2.7kB templates/repo-skeleton/.opencode/skill/project-decision-ledger/SKILL.md\nnpm notice 17.4kB templates/repo-skeleton/.opencode/skill/project-decision-policy/SKILL.md\nnpm notice 3.8kB templates/repo-skeleton/.opencode/skill/project-deterministic-workflows/SKILL.md\nnpm notice 4.9kB templates/repo-skeleton/.opencode/skill/project-document-branch/SKILL.md\nnpm notice 2.8kB templates/repo-skeleton/.opencode/skill/project-evidence-ledger/SKILL.md\nnpm notice 3.3kB templates/repo-skeleton/.opencode/skill/project-evidence/SKILL.md\nnpm notice 11.1kB templates/repo-skeleton/.opencode/skill/project-git-workflow/SKILL.md\nnpm notice 7.4kB templates/repo-skeleton/.opencode/skill/project-health/SKILL.md\nnpm notice 5.6kB templates/repo-skeleton/.opencode/skill/project-implementation-plan/SKILL.md\nnpm notice 1.1kB templates/repo-skeleton/.opencode/skill/project-llm-wiki/LICENSE\nnpm notice 842B templates/repo-skeleton/.opencode/skill/project-llm-wiki/references/archive-template.md\nnpm notice 843B templates/repo-skeleton/.opencode/skill/project-llm-wiki/references/article-template.md\nnpm notice 559B templates/repo-skeleton/.opencode/skill/project-llm-wiki/references/index-template.md\nnpm notice 317B templates/repo-skeleton/.opencode/skill/project-llm-wiki/references/raw-template.md\nnpm notice 15.0kB templates/repo-skeleton/.opencode/skill/project-llm-wiki/SKILL.md\nnpm notice 7.4kB templates/repo-skeleton/.opencode/skill/project-local-integration/SKILL.md\nnpm notice 8.1kB templates/repo-skeleton/.opencode/skill/project-memory/SKILL.md\nnpm notice 5.8kB templates/repo-skeleton/.opencode/skill/project-planning-lifecycle/SKILL.md\nnpm notice 4.5kB templates/repo-skeleton/.opencode/skill/project-prd-plugin-setup/SKILL.md\nnpm notice 3.5kB templates/repo-skeleton/.opencode/skill/project-prd/SKILL.md\nnpm notice 22.1kB templates/repo-skeleton/.opencode/skill/project-request-intake/SKILL.md\nnpm notice 4.7kB templates/repo-skeleton/.opencode/skill/project-session-close/SKILL.md\nnpm notice 3.7kB templates/repo-skeleton/.opencode/skill/project-systematic-debugging/SKILL.md\nnpm notice 3.0kB templates/repo-skeleton/.opencode/skill/project-test-driven-implementation/SKILL.md\nnpm notice 3.7kB templates/repo-skeleton/.opencode/skill/project-traceability-review/SKILL.md\nnpm notice 2.5kB templates/repo-skeleton/.opencode/skill/project-traceability-sync/SKILL.md\nnpm notice 5.0kB templates/repo-skeleton/.opencode/skill/project-verification-before-completion/SKILL.md\nnpm notice 12.7kB templates/repo-skeleton/.prd_plugin/config.json\nnpm notice 1.6kB templates/repo-skeleton/.prd_plugin/hooks/prd_drift_check.py\nnpm notice 9.2kB templates/repo-skeleton/.prd_plugin/hooks/prd_hook_dispatch.py\nnpm notice 2.0kB templates/repo-skeleton/.prd_plugin/hooks/prd_log_skill.py\nnpm notice 4.1kB templates/repo-skeleton/.prd_plugin/hooks/prd_nudge.py\nnpm notice 3.7kB templates/repo-skeleton/.prd_plugin/hooks/prd_precommit_gate.py\nnpm notice 6.1kB templates/repo-skeleton/.prd_plugin/hooks/prd_reflection.py\nnpm notice 3.5kB templates/repo-skeleton/.prd_plugin/hooks/prd_session_report.py\nnpm notice 9.8kB templates/repo-skeleton/.prd_plugin/hooks/prd_stop_guard.py\nnpm notice 3.7kB templates/repo-skeleton/.prd_plugin/ID-SCHEME.md\nnpm notice 581B templates/repo-skeleton/.prd_plugin/ids/registry.json\nnpm notice 12.6kB templates/repo-skeleton/.prd_plugin/METHOD.md\nnpm notice 725B templates/repo-skeleton/.prd_plugin/method/artifact-format.md\nnpm notice 820B templates/repo-skeleton/.prd_plugin/method/completion-gate.md\nnpm notice 3.6kB templates/repo-skeleton/.prd_plugin/method/deterministic-workflows.md\nnpm notice 1.2kB templates/repo-skeleton/.prd_plugin/method/estimation.md\nnpm notice 1.9kB templates/repo-skeleton/.prd_plugin/method/grounding.md\nnpm notice 2.5kB templates/repo-skeleton/.prd_plugin/method/reporting.md\nnpm notice 2.6kB templates/repo-skeleton/.prd_plugin/method/self-service.md\nnpm notice 1.6kB templates/repo-skeleton/.prd_plugin/method/staleness-rules.md\nnpm notice 1.0kB templates/repo-skeleton/.prd_plugin/method/state-validation.md\nnpm notice 47B templates/repo-skeleton/.prd_plugin/state/changelog.json\nnpm notice 49B templates/repo-skeleton/.prd_plugin/state/decisions.json\nnpm notice 157B templates/repo-skeleton/.prd_plugin/state/health.json\nnpm notice 47B templates/repo-skeleton/.prd_plugin/state/memory.json\nnpm notice 286B templates/repo-skeleton/.prd_plugin/state/project.json\nnpm notice 48B templates/repo-skeleton/.prd_plugin/state/releases.json\nnpm notice 48B templates/repo-skeleton/.prd_plugin/state/requests.json\nnpm notice 214B templates/repo-skeleton/.prd_plugin/state/sessions/shared/promoted-session-summaries.jsonl\nnpm notice 51B templates/repo-skeleton/.prd_plugin/state/tracking.json\nnpm notice 48B templates/repo-skeleton/.prd_plugin/state/workflow-runs.json\nnpm notice 167B templates/repo-skeleton/.prd_plugin/templates/architecture-delta.md\nnpm notice 1.4kB templates/repo-skeleton/.prd_plugin/templates/architecture.json\nnpm notice 368B templates/repo-skeleton/.prd_plugin/templates/brainstorm.md\nnpm notice 274B templates/repo-skeleton/.prd_plugin/templates/changelog.json\nnpm notice 12.9kB templates/repo-skeleton/.prd_plugin/templates/config.json\nnpm notice 265B templates/repo-skeleton/.prd_plugin/templates/decision-record.md\nnpm notice 398B templates/repo-skeleton/.prd_plugin/templates/decisions.json\nnpm notice 372B templates/repo-skeleton/.prd_plugin/templates/doc-branch.json\nnpm notice 313B templates/repo-skeleton/.prd_plugin/templates/doc-branch.md\nnpm notice 115B templates/repo-skeleton/.prd_plugin/templates/evidence.md\nnpm notice 249B templates/repo-skeleton/.prd_plugin/templates/handoff.json\nnpm notice 407B templates/repo-skeleton/.prd_plugin/templates/health.json\nnpm notice 695B templates/repo-skeleton/.prd_plugin/templates/human-exports/architecture.md\nnpm notice 626B templates/repo-skeleton/.prd_plugin/templates/human-exports/implementation-plan.md\nnpm notice 580B templates/repo-skeleton/.prd_plugin/templates/human-exports/prd.md\nnpm notice 1.4kB templates/repo-skeleton/.prd_plugin/templates/implementation-plan.json\nnpm notice 65B templates/repo-skeleton/.prd_plugin/templates/mailbox.json\nnpm notice 348B templates/repo-skeleton/.prd_plugin/templates/memory.json\nnpm notice 471B templates/repo-skeleton/.prd_plugin/templates/merge-checklist.md\nnpm notice 163B templates/repo-skeleton/.prd_plugin/templates/plan-delta.md\nnpm notice 139B templates/repo-skeleton/.prd_plugin/templates/prd-delta.md\nnpm notice 1.3kB templates/repo-skeleton/.prd_plugin/templates/prd.json\nnpm notice 454B templates/repo-skeleton/.prd_plugin/templates/project.json\nnpm notice 125B templates/repo-skeleton/.prd_plugin/templates/promoted-session-summary.jsonl\nnpm notice 923B templates/repo-skeleton/.prd_plugin/templates/releases.json\nnpm notice 1.4kB templates/repo-skeleton/.prd_plugin/templates/request.json\nnpm notice 1.7kB templates/repo-skeleton/.prd_plugin/templates/requests.json\nnpm notice 17.5kB templates/repo-skeleton/.prd_plugin/templates/script-install-scope.json\nnpm notice 235B templates/repo-skeleton/.prd_plugin/templates/session.json\nnpm notice 10.6kB templates/repo-skeleton/.prd_plugin/templates/skill-install-scope.json\nnpm notice 317B templates/repo-skeleton/.prd_plugin/templates/submission-package.json\nnpm notice 225B templates/repo-skeleton/.prd_plugin/templates/traceability-matrix.md\nnpm notice 321B templates/repo-skeleton/.prd_plugin/templates/tracking.json\nnpm notice 12.0kB templates/repo-skeleton/.prd_plugin/workflows.json\nnpm notice 11.9kB templates/repo-skeleton/AGENTS.md\nnpm notice 7.4kB templates/repo-skeleton/CLAUDE.md\nnpm notice 11.8kB templates/repo-skeleton/docs/INSTALL-MATRIX.md\nnpm notice 1.4kB templates/request.json\nnpm notice 1.7kB templates/requests.json\nnpm notice 17.5kB templates/script-install-scope.json\nnpm notice 235B templates/session.json\nnpm notice 10.6kB templates/skill-install-scope.json\nnpm notice 317B templates/submission-package.json\nnpm notice 225B templates/traceability-matrix.md\nnpm notice 321B templates/tracking.json\nnpm notice 12.0kB templates/workflows.json\nnpm notice Tarball Details\nnpm notice name: prd-plugin\nnpm notice version: 0.15.2\nnpm notice filename: prd-plugin-0.15.2.tgz\nnpm notice package size: 906.7 kB\nnpm notice unpacked size: 3.7 MB\nnpm notice shasum: 0904d5daa5743a76fd32c125a1a3451818cc8619\nnpm notice integrity: sha512-8U6+jtVz6hFn+[...]sDiHagmCvSA4w==\nnpm notice total files: 476\nnpm notice\n"
          },
          "output_hash": "bf342da89ffa2a05c912a3d6a8845deb5cad49b49116681191bf0bc1d6391de6",
          "completed_at": "2026-07-14T21:02:22Z"
        },
        {
          "id": "gate",
          "action": "state.gate",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-14T21:02:22Z",
          "output": {
            "status": "ok",
            "repo_root": "D:\\Projects\\prd-plugin",
            "summary": {
              "errors": 0,
              "warnings": 0
            },
            "findings": []
          },
          "output_hash": "a705b176b049df02348354c23988d51f616670b7352ad410321cbe0577edf053",
          "completed_at": "2026-07-14T21:02:22Z"
        }
      ],
      "completed_at": "2026-07-14T21:02:22Z"
    },
    {
      "id": "WFR-013",
      "schema_version": "1.0",
      "workflow_id": "session.stop",
      "workflow_version": 1,
      "definition_hash": "edf4b76eed8c9180de1a1f3ee99dd95f0a1ab8d17674bd2993c6b326f180e626",
      "plan_hash": "30f4fd667a5a64e375b560d804eefb095ce112f06bfbf8f127bf3d80e0fa74ad",
      "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
      "inputs": {},
      "idempotency_key": "hook:Stop:019f52f6-b119-7be1-9db9-2257b137d471",
      "status": "completed",
      "attempt": 1,
      "created_at": "2026-07-14T21:04:53Z",
      "updated_at": "2026-07-14T21:04:53Z",
      "receipts": [
        {
          "step_id": "state",
          "action": "state.consistency",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "5a1c6e5246defb1b6b6b90ff734db95bece2886b408ab112ed9b8e67222d5568",
          "completed_at": "2026-07-14T21:04:53Z"
        },
        {
          "step_id": "staleness",
          "action": "staleness.audit",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "1e81cb0ffd0a4d04626920a203b38d2d23a264cd43e807a85d375d69cae8a658",
          "completed_at": "2026-07-14T21:04:53Z"
        },
        {
          "step_id": "reflections",
          "action": "reflection.list",
          "input_hash": "0172e841ab4c13b3a4061f073f9d68a716ec87a8a5d52fde41823385e0582573",
          "output_hash": "c1b6b635c0bab21120657277f14ef6f839909875f307a3745fa48aee2bd6e449",
          "completed_at": "2026-07-14T21:04:53Z"
        },
        {
          "step_id": "bundle",
          "action": "reporting.bundle",
          "input_hash": "aed8ebb688dc3c085dd978d7c4120572173c3cb87e75919e4a937dcca6ef9457",
          "output_hash": "2889fe6a78da34658c9fcca871510ca87bfe4552b7b04a52812f395df31de7d6",
          "completed_at": "2026-07-14T21:04:53Z"
        }
      ],
      "steps": [
        {
          "id": "state",
          "action": "state.consistency",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-14T21:04:53Z",
          "output": {
            "status": "ok",
            "repo_root": "D:\\Projects\\prd-plugin",
            "summary": {
              "errors": 0,
              "warnings": 0,
              "infos": 0
            },
            "findings": []
          },
          "output_hash": "5a1c6e5246defb1b6b6b90ff734db95bece2886b408ab112ed9b8e67222d5568",
          "completed_at": "2026-07-14T21:04:53Z"
        },
        {
          "id": "staleness",
          "action": "staleness.audit",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-14T21:04:53Z",
          "output": {
            "status": "ok",
            "repo_root": "D:\\Projects\\prd-plugin",
            "counts": {
              "stale": 0
            },
            "stale": []
          },
          "output_hash": "1e81cb0ffd0a4d04626920a203b38d2d23a264cd43e807a85d375d69cae8a658",
          "completed_at": "2026-07-14T21:04:53Z"
        },
        {
          "id": "reflections",
          "action": "reflection.list",
          "status": "completed",
          "resolved_input_hash": "0172e841ab4c13b3a4061f073f9d68a716ec87a8a5d52fde41823385e0582573",
          "started_at": "2026-07-14T21:04:53Z",
          "output": {
            "enabled": false,
            "on_stop": true,
            "max_questions_per_stop": 5,
            "categories": [
              {
                "id": "behaviour_quality",
                "name": "Behaviour quality",
                "enabled": true,
                "question_count": 3
              },
              {
                "id": "harness_friction",
                "name": "Harness friction",
                "enabled": true,
                "question_count": 2
              }
            ],
            "questions": [
              {
                "id": "RFQ-001",
                "text": "Based on the work you just carried out, would you classify your behaviour as good? Answer yes or no and cite observable evidence.",
                "enabled": true,
                "category_id": "behaviour_quality",
                "category_name": "Behaviour quality",
                "effective_enabled": false
              },
              {
                "id": "RFQ-002",
                "text": "If you answered no, what could you do differently to correct your behaviour?",
                "enabled": true,
                "category_id": "behaviour_quality",
                "category_name": "Behaviour quality",
                "effective_enabled": false
              },
              {
                "id": "RFQ-003",
                "text": "Would another attempt using the identified good behaviours materially improve the outcome? Answer yes or no and state the next corrective action if yes.",
                "enabled": true,
                "category_id": "behaviour_quality",
                "category_name": "Behaviour quality",
                "effective_enabled": false
              },
              {
                "id": "RFQ-004",
                "text": "What harness friction points made this work more difficult?",
                "enabled": true,
                "category_id": "harness_friction",
                "category_name": "Harness friction",
                "effective_enabled": false
              },
              {
                "id": "RFQ-005",
                "text": "What up to three changes would most improve friction in the harness?",
                "enabled": true,
                "category_id": "harness_friction",
                "category_name": "Harness friction",
                "effective_enabled": false
              }
            ]
          },
          "output_hash": "c1b6b635c0bab21120657277f14ef6f839909875f307a3745fa48aee2bd6e449",
          "completed_at": "2026-07-14T21:04:53Z"
        },
        {
          "id": "bundle",
          "action": "reporting.bundle",
          "status": "completed",
          "resolved_input_hash": "aed8ebb688dc3c085dd978d7c4120572173c3cb87e75919e4a937dcca6ef9457",
          "started_at": "2026-07-14T21:04:53Z",
          "output": {
            "contract_version": 1,
            "task": "session_summary",
            "repo": "prd-plugin",
            "policy": {
              "enabled": false,
              "executor": "ai-collab",
              "contract_version": 1,
              "profile": "fast-capable",
              "tasks": [
                "report_summary",
                "session_summary",
                "wiki_synthesis",
                "triage_draft"
              ],
              "fallback": "main",
              "require_source_refs": true,
              "max_input_tokens": 12000,
              "max_output_tokens": 1500,
              "timeout_seconds": 30
            },
            "facts": {
              "requests_by_status": {
                "accepted": 1,
                "deferred": 1,
                "implemented": 74,
                "proposed": 2,
                "rejected": 1
              },
              "active_requests": [
                {
                  "id": "REQ-054",
                  "status": "proposed",
                  "severity": "medium",
                  "summary": "Installer UX hazard: npx prd-install . --force --yes resets downstream .prd_plugin/state to skeleton defaults (tracking/requests/decisions data loss). Consider a --keep-state default, a timestamped backup before overwrite, or splitting state reset into its own explicit flag."
                },
                {
                  "id": "REQ-072",
                  "status": "proposed",
                  "severity": "low",
                  "summary": "opencode run-until-done: session.idle is a non-blocking notification, so the stop guard can't force continuation on opencode (currently degrades to a printed reminder, 0.5.95). Investigate whether opencode exposes any vetoable/continuation mechanism (a different event, a permission hook, or a 'continue' API) to enforce run-until-done, or accept the reminder as the permanent ceiling. Low priority — user rarely uses opencode."
                },
                {
                  "id": "REQ-093",
                  "status": "accepted",
                  "severity": "medium",
                  "summary": "Explicitly local requests can be misclassified and stranded in the upstream outbox"
                }
              ],
              "active_tracking": [],
              "open_health": [
                {
                  "id": "HLT-002",
                  "status": "open",
                  "severity": "medium",
                  "summary": "REQ-054 tracks an unresolved downstream state-loss hazard and requires explicit health visibility until it is implemented or rejected.",
                  "recommended_action": "Review REQ-054 and retain this finding until the installer hazard is implemented, rejected, or superseded with evidence."
                },
                {
                  "id": "HLT-014",
                  "status": "open",
                  "severity": "medium",
                  "summary": "Explicit local request routing can be overwritten and canonical .prd_plugin artifact paths can be misclassified as plugin surfaces",
                  "recommended_action": "Ship and verify regression coverage that preserves explicit local scope, excludes canonical state paths from product-name matching, and retains omitted-scope plugin autosubmit."
                }
              ],
              "evidence_count": 92,
              "decision_count": 6
            },
            "findings": [
              {
                "id": "HLT-002",
                "severity": "medium",
                "summary": "REQ-054 tracks an unresolved downstream state-loss hazard and requires explicit health visibility until it is implemented or rejected.",
                "source_refs": [
                  "HLT-002"
                ]
              },
              {
                "id": "HLT-014",
                "severity": "medium",
                "summary": "Explicit local request routing can be overwritten and canonical .prd_plugin artifact paths can be misclassified as plugin surfaces",
                "source_refs": [
                  "HLT-014"
                ]
              }
            ],
            "source_refs": [
              ".prd_plugin/config.json",
              ".prd_plugin/state/decisions.json",
              ".prd_plugin/state/evidence.json",
              ".prd_plugin/state/health.json",
              ".prd_plugin/state/requests.json",
              ".prd_plugin/state/tracking.json",
              "HLT-002",
              "HLT-014",
              "REQ-054",
              "REQ-072",
              "REQ-093"
            ],
            "constraints": {
              "max_input_tokens": 12000,
              "max_output_tokens": 1500,
              "timeout_seconds": 30,
              "require_source_refs": true,
              "no_project_state_writes": true,
              "no_secrets_or_local_session_content": true
            }
          },
          "output_hash": "2889fe6a78da34658c9fcca871510ca87bfe4552b7b04a52812f395df31de7d6",
          "completed_at": "2026-07-14T21:04:53Z"
        }
      ],
      "completed_at": "2026-07-14T21:04:53Z"
    },
    {
      "id": "WFR-014",
      "schema_version": "1.0",
      "workflow_id": "session.start",
      "workflow_version": 1,
      "definition_hash": "84ce7a6cc9aa694e7d79ea287fc72dc11aae430d872a885ca70ba837e668657e",
      "plan_hash": "3ac96bd9bc6974dd538269c4c5f0c914e98110574189cd54d4ffbafb876b1a73",
      "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
      "inputs": {},
      "idempotency_key": "hook:SessionStart:019f52f6-b119-7be1-9db9-2257b137d471",
      "status": "completed",
      "attempt": 1,
      "created_at": "2026-07-14T21:29:23Z",
      "updated_at": "2026-07-14T21:29:24Z",
      "receipts": [
        {
          "step_id": "config",
          "action": "config.audit",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "52f4670d3af925e27fa87b707174b4d88bc7c6d7cc17f7accb4003b9d0b94665",
          "completed_at": "2026-07-14T21:29:23Z"
        },
        {
          "step_id": "state",
          "action": "state.consistency",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "5a1c6e5246defb1b6b6b90ff734db95bece2886b408ab112ed9b8e67222d5568",
          "completed_at": "2026-07-14T21:29:24Z"
        },
        {
          "step_id": "status",
          "action": "state.query",
          "input_hash": "a15231a2142a2a9a85355a8b9cbbccffe01a9c9c2c2fd8c2bc2987cdc481564a",
          "output_hash": "f19f3d07d308be419349b8f5b8c9450a84e2f0b9f8a8a592af99c2f3f42a080b",
          "completed_at": "2026-07-14T21:29:24Z"
        }
      ],
      "steps": [
        {
          "id": "config",
          "action": "config.audit",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-14T21:29:23Z",
          "output": {
            "status": "ok",
            "summary": {
              "settings": 171,
              "mutable": 162,
              "read_only_or_managed": 9,
              "unclassified": 0,
              "unknown": 0,
              "invalid": 0,
              "missing_using_defaults": 0
            },
            "unclassified_keys": [],
            "unknown_keys": [],
            "invalid_values": [],
            "missing_using_defaults": []
          },
          "output_hash": "52f4670d3af925e27fa87b707174b4d88bc7c6d7cc17f7accb4003b9d0b94665",
          "completed_at": "2026-07-14T21:29:23Z"
        },
        {
          "id": "state",
          "action": "state.consistency",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-14T21:29:23Z",
          "output": {
            "status": "ok",
            "repo_root": "D:\\Projects\\prd-plugin",
            "summary": {
              "errors": 0,
              "warnings": 0,
              "infos": 0
            },
            "findings": []
          },
          "output_hash": "5a1c6e5246defb1b6b6b90ff734db95bece2886b408ab112ed9b8e67222d5568",
          "completed_at": "2026-07-14T21:29:24Z"
        },
        {
          "id": "status",
          "action": "state.query",
          "status": "completed",
          "resolved_input_hash": "a15231a2142a2a9a85355a8b9cbbccffe01a9c9c2c2fd8c2bc2987cdc481564a",
          "started_at": "2026-07-14T21:29:24Z",
          "output": {
            "repo_root": "D:\\Projects\\prd-plugin",
            "autonomy_level": "autonomous",
            "requests_by_status": {
              "accepted": 1,
              "deferred": 1,
              "implemented": 74,
              "proposed": 2,
              "rejected": 1
            },
            "active_tracking": [],
            "tracking_branches": [],
            "tracking_branch_counts": {},
            "tracking_branch_errors": [],
            "open_health": [
              "HLT-002",
              "HLT-014"
            ],
            "stale_count": 0,
            "skill_usage": {
              "project-decision-policy": 1,
              "project-request-intake": 1,
              "project-test-driven-implementation": 1,
              "project-verification-before-completion": 1,
              "project-llm-wiki": 1
            },
            "wiki_backfill_pending": false,
            "version_update": null
          },
          "output_hash": "f19f3d07d308be419349b8f5b8c9450a84e2f0b9f8a8a592af99c2f3f42a080b",
          "completed_at": "2026-07-14T21:29:24Z"
        }
      ],
      "completed_at": "2026-07-14T21:29:24Z"
    },
    {
      "id": "WFR-015",
      "schema_version": "1.0",
      "workflow_id": "engineering.code-review",
      "workflow_version": 1,
      "definition_hash": "db913781cc8cad3d528b8f1bd3540c25d819d14a435dad01ee77cdf6463b5618",
      "plan_hash": "ab20972c6e8a93d328305a9d39484f06be745c546c05f870ff3a0aad3843fabf",
      "input_hash": "7aa3b2827d5c3e3b37b521140053c4397f4e9eb4e82351b8111aedfbcfabe765",
      "inputs": {
        "base_ref": "",
        "source_refs": [
          "REQ-054",
          "HLT-002",
          "TRK-108"
        ]
      },
      "idempotency_key": "review-0.15.3-safe-update",
      "status": "completed",
      "attempt": 1,
      "created_at": "2026-07-15T02:33:48Z",
      "updated_at": "2026-07-15T02:34:54Z",
      "receipts": [
        {
          "step_id": "diff",
          "action": "git.diff_check",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "11c11db30f4b3f6c758722ba3e27eea08145b7d212f6a157451e364b48475280",
          "completed_at": "2026-07-15T02:33:48Z"
        },
        {
          "step_id": "verification",
          "action": "verification.plan",
          "input_hash": "fd934039265310404d648cea4b1eb28964383bb8a97ef14b85b2b85d725d502e",
          "output_hash": "7e55392a6feb2ac0d308fbbe6d474c13d04b0a222f9791a9dcabe2d734706ed8",
          "completed_at": "2026-07-15T02:33:48Z"
        },
        {
          "step_id": "review",
          "action": "judgment.request",
          "input_hash": "edb7eed66b0777c8da30d6a9b07f356bdb198b9836b19de741808c76fa7b69b0",
          "output_hash": "98af8f93e06b01071bc4ecaa929cc5a0bfba36bada42ab28cd4adaa7d56a032c",
          "request_hash": "77392b7db1b141ef151a60977011943d0fad76263ff6c596cd582559566c0562",
          "completed_at": "2026-07-15T02:34:54Z"
        }
      ],
      "steps": [
        {
          "id": "diff",
          "action": "git.diff_check",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-15T02:33:48Z",
          "output": {
            "passed": true
          },
          "output_hash": "11c11db30f4b3f6c758722ba3e27eea08145b7d212f6a157451e364b48475280",
          "completed_at": "2026-07-15T02:33:48Z"
        },
        {
          "id": "verification",
          "action": "verification.plan",
          "status": "completed",
          "resolved_input_hash": "fd934039265310404d648cea4b1eb28964383bb8a97ef14b85b2b85d725d502e",
          "started_at": "2026-07-15T02:33:48Z",
          "output": {
            "schema_version": "1.0",
            "contract_version": 1,
            "executor": "ai-collab",
            "changed_files": [
              ".agents/skills/project-prd-plugin-setup/SKILL.md",
              ".claude-plugin/marketplace.json",
              ".claude-plugin/plugin.json",
              ".claude/skills/project-prd-plugin-setup/SKILL.md",
              ".codex-plugin/plugin.json",
              ".opencode/plugin.json",
              ".opencode/skill/project-prd-plugin-setup/SKILL.md",
              ".prd_plugin/config.json",
              ".prd_plugin/ids/registry.json",
              ".prd_plugin/state/project.json",
              ".prd_plugin/state/releases.json",
              ".prd_plugin/state/requests.json",
              ".prd_plugin/state/tracking.json",
              ".prd_plugin/state/workflow-runs.json",
              "docs/prd-plugin-ingest-manual.html",
              "index.js",
              "mcp/server.cjs",
              "package.json",
              "README.md",
              "scripts/prd_install.py",
              "skills/project-prd-plugin-setup/SKILL.md",
              "templates/config.json",
              "templates/project.json",
              "templates/releases.json",
              "templates/repo-skeleton/.agents/skills/project-prd-plugin-setup/SKILL.md",
              "templates/repo-skeleton/.claude-plugin/plugin.json",
              "templates/repo-skeleton/.claude/skills/project-prd-plugin-setup/SKILL.md",
              "templates/repo-skeleton/.codex-plugin/plugin.json",
              "templates/repo-skeleton/.opencode/plugin.json",
              "templates/repo-skeleton/.opencode/skill/project-prd-plugin-setup/SKILL.md",
              "templates/repo-skeleton/.prd_plugin/config.json",
              "templates/repo-skeleton/.prd_plugin/state/project.json",
              "templates/repo-skeleton/.prd_plugin/templates/config.json",
              "templates/repo-skeleton/.prd_plugin/templates/project.json",
              "templates/repo-skeleton/AGENTS.md",
              "templates/repo-skeleton/CLAUDE.md",
              "tests/test_local_workflow_check.py",
              "tests/test_prd_install.py",
              "tests/test_release_check.py",
              "wiki/operations/build-and-operational-gotchas.md"
            ],
            "change_fingerprint": "3333bd9c14d33a6098d1d8cd9310f8686de6624de56dc919566af51e6a904e1c",
            "policy": {
              "enabled": false,
              "executor": "ai-collab",
              "neighbor_limit": 12,
              "max_changed_files": 25,
              "fallback": "full",
              "full_suite_triggers": [
                "release",
                "core_change",
                "impact_unavailable",
                "impact_degraded",
                "unmapped_change"
              ],
              "core_paths": [
                "package.json",
                "package-lock.json",
                "pyproject.toml",
                "Cargo.toml",
                "go.mod",
                ".github/workflows/**"
              ],
              "test_patterns": [
                "tests/**",
                "test/**",
                "spec/**",
                "**/*.test.*",
                "**/*.spec.*",
                "test_*.py",
                "*_test.py",
                "*_test.go",
                "**/test_*.py",
                "**/*_test.py",
                "**/*_test.go"
              ]
            },
            "selection_rules": {
              "precedence": [
                "exact_changed",
                "explicit_test_ownership",
                "structural_dependencies",
                "predictive_impact"
              ],
              "require_all_changed_files_mapped": true,
              "widen_before_full": true,
              "predictive_signal_is_sufficient_alone": false
            },
            "fallback": {
              "strategy": "full",
              "conditions": [
                "release",
                "core_change",
                "impact_unavailable",
                "impact_degraded",
                "unmapped_change"
              ]
            },
            "strategy": "full",
            "reason": "test_scope_disabled",
            "runtime_requests": {},
            "plan_hash": "83e67908d6bda3acecd7bc848b65ef4914882763dac295187e20f1659729aede"
          },
          "output_hash": "7e55392a6feb2ac0d308fbbe6d474c13d04b0a222f9791a9dcabe2d734706ed8",
          "completed_at": "2026-07-15T02:33:48Z"
        },
        {
          "id": "review",
          "action": "judgment.request",
          "status": "completed",
          "resolved_input_hash": "edb7eed66b0777c8da30d6a9b07f356bdb198b9836b19de741808c76fa7b69b0",
          "started_at": "2026-07-15T02:33:48Z",
          "judgment_request": {
            "contract_version": 1,
            "run_id": "WFR-015",
            "step_id": "review",
            "task": "code_review",
            "instructions": "Find material correctness, robustness, security, compatibility, or test gaps; do not restate mechanical facts.",
            "source_refs": [
              "REQ-054",
              "HLT-002",
              "TRK-108"
            ],
            "source_hashes": {},
            "result_schema": {
              "type": "object",
              "required": [
                "summary",
                "findings",
                "source_refs"
              ],
              "properties": {
                "summary": {
                  "type": "string"
                },
                "findings": {
                  "type": "array",
                  "items": {
                    "type": "object"
                  }
                },
                "source_refs": {
                  "type": "array",
                  "items": {
                    "type": "string"
                  }
                }
              }
            },
            "executor": "ai-collab",
            "profile": "fast-capable",
            "constraints": {
              "no_project_state_writes": true,
              "require_source_refs": true
            },
            "request_hash": "77392b7db1b141ef151a60977011943d0fad76263ff6c596cd582559566c0562"
          },
          "output": {
            "summary": "Ready after correcting the safe-update message that previously encouraged adding --yes and strengthening protected-file coverage.",
            "findings": [
              {
                "severity": "important",
                "status": "resolved",
                "summary": "The safe --force path still told agents to re-run with --yes, conflicting with the safety requirement."
              },
              {
                "severity": "minor",
                "status": "resolved",
                "summary": "Protected config and ID overwrite discovery lacked direct regression assertions."
              }
            ],
            "source_refs": [
              "REQ-054",
              "HLT-002",
              "TRK-108"
            ]
          },
          "output_hash": "98af8f93e06b01071bc4ecaa929cc5a0bfba36bada42ab28cd4adaa7d56a032c",
          "completed_at": "2026-07-15T02:34:54Z",
          "judgment_result": {
            "request_hash": "77392b7db1b141ef151a60977011943d0fad76263ff6c596cd582559566c0562",
            "executor": "ai-collab",
            "profile": "fast-capable"
          }
        }
      ],
      "completed_at": "2026-07-15T02:34:54Z"
    },
    {
      "id": "WFR-016",
      "schema_version": "1.0",
      "workflow_id": "hub.release",
      "workflow_version": 1,
      "definition_hash": "b8efcc9726266d73719719856dab279ace8f4d21be7b2d01b4f5f08bd3eacc1b",
      "plan_hash": "45a6765f24486f3d1e889f80a653564254c97a7e400033444b676e8ed8cdecb8",
      "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
      "inputs": {},
      "idempotency_key": "release-0.15.3-safe-update",
      "status": "completed",
      "attempt": 1,
      "created_at": "2026-07-15T02:36:21Z",
      "updated_at": "2026-07-15T02:37:22Z",
      "receipts": [
        {
          "step_id": "diff",
          "action": "git.diff_check",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "11c11db30f4b3f6c758722ba3e27eea08145b7d212f6a157451e364b48475280",
          "completed_at": "2026-07-15T02:36:21Z"
        },
        {
          "step_id": "config",
          "action": "config.audit",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "52f4670d3af925e27fa87b707174b4d88bc7c6d7cc17f7accb4003b9d0b94665",
          "completed_at": "2026-07-15T02:36:21Z"
        },
        {
          "step_id": "state",
          "action": "state.consistency",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "5a1c6e5246defb1b6b6b90ff734db95bece2886b408ab112ed9b8e67222d5568",
          "completed_at": "2026-07-15T02:36:21Z"
        },
        {
          "step_id": "workflow_audit",
          "action": "process.fixed",
          "input_hash": "edf19b269a54d72753f1abc2b8ffcb810c2b7bc377cee7e1698c939f17e0be94",
          "output_hash": "231b43ed70e09c4e7cbcda1094b00e0274dd4a22ff8324da2eb907f705c1316a",
          "completed_at": "2026-07-15T02:36:22Z"
        },
        {
          "step_id": "suite",
          "action": "process.fixed",
          "input_hash": "954e575e48145853f5681eda189186c95a053267158fae669114320f2e53794a",
          "output_hash": "7012d16edc0d1a484235e9c19344a0b58a00a7f395e94bfc23e31b111e5372c6",
          "completed_at": "2026-07-15T02:37:19Z"
        },
        {
          "step_id": "release",
          "action": "process.fixed",
          "input_hash": "1e5b0c18d93eb4c2248f9a00adbd438e52f3ef02137477fb8376c69cfe86fc9b",
          "output_hash": "8ade4cbe2a2600b85ea6ccb251ccb54734bf57a07cc549462da36b5e73e0e0ff",
          "completed_at": "2026-07-15T02:37:20Z"
        },
        {
          "step_id": "gaps",
          "action": "process.fixed",
          "input_hash": "577241909238eeb55683f89d2d2216648dad2e3127397993e22493829a1307a4",
          "output_hash": "3f530b7106d2cf8c9eca159128273b01cb0601647c9450265a74ba3d6cd836d5",
          "completed_at": "2026-07-15T02:37:20Z"
        },
        {
          "step_id": "package",
          "action": "process.fixed",
          "input_hash": "06cd12e1f3db3d985f9150520afa60f288297ff0ca01a8e813e9bb6291aa8836",
          "output_hash": "be3a7fae820108e2de039b5167951ddedb3255c3e986172b1ba772eecb7454eb",
          "completed_at": "2026-07-15T02:37:21Z"
        },
        {
          "step_id": "gate",
          "action": "state.gate",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "a705b176b049df02348354c23988d51f616670b7352ad410321cbe0577edf053",
          "completed_at": "2026-07-15T02:37:22Z"
        }
      ],
      "steps": [
        {
          "id": "diff",
          "action": "git.diff_check",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-15T02:36:21Z",
          "output": {
            "passed": true
          },
          "output_hash": "11c11db30f4b3f6c758722ba3e27eea08145b7d212f6a157451e364b48475280",
          "completed_at": "2026-07-15T02:36:21Z"
        },
        {
          "id": "config",
          "action": "config.audit",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-15T02:36:21Z",
          "output": {
            "status": "ok",
            "summary": {
              "settings": 171,
              "mutable": 162,
              "read_only_or_managed": 9,
              "unclassified": 0,
              "unknown": 0,
              "invalid": 0,
              "missing_using_defaults": 0
            },
            "unclassified_keys": [],
            "unknown_keys": [],
            "invalid_values": [],
            "missing_using_defaults": []
          },
          "output_hash": "52f4670d3af925e27fa87b707174b4d88bc7c6d7cc17f7accb4003b9d0b94665",
          "completed_at": "2026-07-15T02:36:21Z"
        },
        {
          "id": "state",
          "action": "state.consistency",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-15T02:36:21Z",
          "output": {
            "status": "ok",
            "repo_root": "D:\\Projects\\prd-plugin",
            "summary": {
              "errors": 0,
              "warnings": 0,
              "infos": 0
            },
            "findings": []
          },
          "output_hash": "5a1c6e5246defb1b6b6b90ff734db95bece2886b408ab112ed9b8e67222d5568",
          "completed_at": "2026-07-15T02:36:21Z"
        },
        {
          "id": "workflow_audit",
          "action": "process.fixed",
          "status": "completed",
          "resolved_input_hash": "edf19b269a54d72753f1abc2b8ffcb810c2b7bc377cee7e1698c939f17e0be94",
          "started_at": "2026-07-15T02:36:21Z",
          "output": {
            "operation": "workflow_chml_audit",
            "command": [
              "python",
              "scripts/workflow_chml_audit.py",
              "--repo-root",
              ".",
              "--format",
              "json"
            ],
            "exit_code": 0,
            "stdout": "{\n  \"status\": \"ok\",\n  \"repo_root\": \"D:\\\\Projects\\\\prd-plugin\",\n  \"summary\": {\n    \"critical\": 0,\n    \"high\": 0,\n    \"medium\": 0,\n    \"low\": 0\n  },\n  \"findings\": []\n}\n",
            "stderr": ""
          },
          "output_hash": "231b43ed70e09c4e7cbcda1094b00e0274dd4a22ff8324da2eb907f705c1316a",
          "completed_at": "2026-07-15T02:36:22Z"
        },
        {
          "id": "suite",
          "action": "process.fixed",
          "status": "completed",
          "resolved_input_hash": "954e575e48145853f5681eda189186c95a053267158fae669114320f2e53794a",
          "started_at": "2026-07-15T02:36:22Z",
          "output": {
            "operation": "local_workflow_check",
            "command": [
              "python",
              "scripts/local_workflow_check.py"
            ],
            "exit_code": 0,
            "stdout": "Structured file validation passed.\n$ python -m unittest discover -s tests -v\n{\n  \"status\": \"fail\",\n  \"repo_root\": \"C:\\\\Users\\\\marku\\\\AppData\\\\Local\\\\Temp\\\\tmpq1mz1i1m\",\n  \"summary\": {\n    \"errors\": 1,\n    \"warnings\": 0\n  },\n  \"findings\": [\n    {\n      \"check\": \"duplicate_id\",\n      \"severity\": \"error\",\n      \"summary\": \"Duplicate id REQ-002 in .prd_plugin/state/requests.json.\",\n      \"required_action\": \"Renumber one record so REQ-002 is unique. Allocate IDs with the MCP tool prd_next_id (or the record tools like prd_open_goal) instead of hand-computing them.\"\n    }\n  ]\n}\nautonomy_level set to guided\nautonomy_level set to autonomous\nDESTRUCTIVE RESET REQUESTED: --force --yes will erase protected PRD Plugin project data.\nThe following existing state/configuration files would be replaced with skeleton defaults:\n  - .prd_plugin/state/tracking.json\nThis may erase IDs, tracking, requests, decisions, health findings, configuration, and session memory.\nFor a normal safe update, remove --yes and run: npx prd-install . --force\nPRD Plugin safe update: preserving existing state/config and refreshing plugin files only. Never add --yes to a routine update; it requests a destructive reset.\nPRD Plugin safe update: preserving existing state/config and refreshing plugin files only. Never add --yes to a routine update; it requests a destructive reset.\nPRD Plugin safe update: preserving existing state/config and refreshing plugin files only. Never add --yes to a routine update; it requests a destructive reset.\nPRD Plugin safe update: preserving existing state/config and refreshing plugin files only. Never add --yes to a routine update; it requests a destructive reset.\nPRD Plugin safe update: preserving existing state/config and refreshing plugin files only. Never add --yes to a routine update; it requests a destructive reset.\nPRD Plugin safe update: preserving existing state/config and refreshing plugin files only. Never add --yes to a routine update; it requests a destructive reset.\nPRD Plugin safe update: preserving existing state/config and refreshing plugin files only. Never add --yes to a routine update; it requests a destructive reset.\nPRD Plugin safe update: preserving existing state/config and refreshing plugin files only. Never add --yes to a routine update; it requests a destructive reset.\nPRD Plugin safe update: preserving existing state/config and refreshing plugin files only. Never add --yes to a routine update; it requests a destructive reset.\nPRD Plugin safe update: preserving existing state/config and refreshing plugin files only. Never add --yes to a routine update; it requests a destructive reset.\nPRD Plugin safe update: preserving existing state/config and refreshing plugin files only. Never add --yes to a routine update; it requests a destructive reset.\nPRD Plugin safe update: preserving existing state/config and refreshing plugin files only. Never add --yes to a routine update; it requests a destructive reset.\nPRD Plugin safe update: preserving existing state/config and refreshing plugin files only. Never add --yes to a routine update; it requests a destructive reset.\n{\"decision\": \"block\", \"reason\": \"Autonomous run-until-done: goal TRK-108 is still active. Continue with the next incomplete step toward it \\u2014 do not stop to ask 'shall I proceed?'. If you genuinely need the user (consent floor: push/merge/publish/secrets, or a real blocker), create the file .prd_plugin/local/autonomy-pause with a one-line reason and then stop; the guard will let you. Otherwise keep going.\"}\n$ python scripts/feature_skill_audit.py --repo-root . --format json\n{\n  \"status\": \"ok\",\n  \"repo_root\": \"D:\\\\Projects\\\\prd-plugin\",\n  \"contract\": \"templates/feature-skill-map.json\",\n  \"feature_count\": 15,\n  \"summary\": {\n    \"critical\": 0,\n    \"high\": 0,\n    \"medium\": 0,\n    \"low\": 0\n  },\n  \"findings\": []\n}\n$ python scripts/gap_audit.py --target-version 0.15.3\n# PRD Plugin Gap Audit\n\nTarget version: `0.15.3`\n\n## Findings\n\n- None\n$ python scripts/version_advice.py --installed-repo . --format json --output request-report/version-advice.json\n$ python scripts/release_check.py --output request-report/release-hygiene.md\n$ python scripts/prd_doctor.py --repo-root . --format json --output request-report/prd-doctor.json\n$ python scripts/state_consistency_check.py --repo-root . --format json --output request-report/state-consistency.json\n$ python scripts/prd_install_skills.py --repo-root . --dry-run\n{\n  \"status\": \"dry_run\",\n  \"target_agent\": \"codex\",\n  \"targets\": [\n    {\n      \"agent\": \"codex\",\n      \"target\": \".agents\\\\skills\",\n      \"would_install\": [\n        \"project-architecture\",\n        \"project-blocker-resolution\",\n        \"project-brainstorm\",\n        \"project-change-request\",\n        \"project-code-review\",\n        \"project-decision-ledger\",\n        \"project-decision-policy\",\n        \"project-deterministic-workflows\",\n        \"project-document-branch\",\n        \"project-evidence\",\n        \"project-evidence-ledger\",\n        \"project-git-workflow\",\n        \"project-health\",\n        \"project-implementation-plan\",\n        \"project-llm-wiki\",\n        \"project-local-integration\",\n        \"project-memory\",\n        \"project-planning-lifecycle\",\n        \"project-prd\",\n        \"project-prd-plugin-setup\",\n        \"project-request-intake\",\n        \"project-session-close\",\n        \"project-systematic-debugging\",\n        \"project-test-driven-implementation\",\n        \"project-traceability-review\",\n        \"project-traceability-sync\",\n        \"project-verification-before-completion\"\n      ],\n      \"would_remove\": [\n        \"project-fold-it-in\",\n        \"project-self-audit\"\n      ]\n    }\n  ],\n  \"installed_count\": 0,\n  \"target\": \".agents\\\\skills\",\n  \"installed\": [],\n  \"removed\": [],\n  \"would_install\": [\n    \"project-architecture\",\n    \"project-blocker-resolution\",\n    \"project-brainstorm\",\n    \"project-change-request\",\n    \"project-code-review\",\n    \"project-decision-ledger\",\n    \"project-decision-policy\",\n    \"project-deterministic-workflows\",\n    \"project-document-branch\",\n    \"project-evidence\",\n    \"project-evidence-ledger\",\n    \"project-git-workflow\",\n    \"project-health\",\n    \"project-implementation-plan\",\n    \"project-llm-wiki\",\n    \"project-local-integration\",\n    \"project-memory\",\n    \"project-planning-lifecycle\",\n    \"project-prd\",\n    \"project-prd-plugin-setup\",\n    \"project-request-intake\",\n    \"project-session-close\",\n    \"project-systematic-debugging\",\n    \"project-test-driven-implementation\",\n    \"project-traceability-review\",\n    \"project-traceability-sync\",\n    \"project-verification-before-completion\"\n  ],\n  \"would_remove\": [\n    \"project-fold-it-in\",\n    \"project-self-audit\"\n  ]\n}\n$ python scripts/request_report.py --config .prd_plugin/config.json --format markdown --output request-report/request-report.md\n$ python scripts/request_report.py --config .prd_plugin/config.json --format json --output request-report/request-report.json\n$ python scripts/message_check.py --config .prd_plugin/config.json --format json --output request-report/message-check.json\nLocal workflow check completed.\n",
            "stderr": "silently_truncating) ... ok\ntest_utcp_substrate_action_emits_verification_plan (test_substrate_adapter.AdapterContractTests.test_utcp_substrate_action_emits_verification_plan) ... ok\ntest_workflow_skills_route_execution_through_ai_collab_adapter (test_substrate_adapter.AdapterContractTests.test_workflow_skills_route_execution_through_ai_collab_adapter) ... ok\ntest_all_shipped_configs_are_disabled_by_default_and_identical (test_substrate_adapter.ConfigContractTests.test_all_shipped_configs_are_disabled_by_default_and_identical) ... ok\ntest_cli_registry_validates_modes_and_capability_allowlist (test_substrate_adapter.ConfigContractTests.test_cli_registry_validates_modes_and_capability_allowlist) ... ok\ntest_registry_exposes_substrate_master_mode_and_capabilities (test_substrate_adapter.ConfigContractTests.test_registry_exposes_substrate_master_mode_and_capabilities) ... ok\ntest_adapted_skills_are_downstream_runtime_and_required (test_superpowers_adapted_skills.SuperpowersAdaptedSkillsTests.test_adapted_skills_are_downstream_runtime_and_required) ... ok\ntest_adapted_skills_are_installed_to_repo_local_and_skeleton (test_superpowers_adapted_skills.SuperpowersAdaptedSkillsTests.test_adapted_skills_are_installed_to_repo_local_and_skeleton) ... ok\ntest_adapted_superpowers_skills_exist_with_attribution_and_prd_ids (test_superpowers_adapted_skills.SuperpowersAdaptedSkillsTests.test_adapted_superpowers_skills_exist_with_attribution_and_prd_ids) ... ok\ntest_downstream_skills_do_not_direct_agents_to_run_hub_only_scripts (test_superpowers_adapted_skills.SuperpowersAdaptedSkillsTests.test_downstream_skills_do_not_direct_agents_to_run_hub_only_scripts) ... ok\ntest_notice_records_superpowers_origin (test_superpowers_adapted_skills.SuperpowersAdaptedSkillsTests.test_notice_records_superpowers_origin) ... ok\ntest_skeleton_skill_copies_exist (test_superpowers_adapted_skills.SuperpowersAdaptedSkillsTests.test_skeleton_skill_copies_exist) ... ok\ntest_specific_adaptations_keep_strong_method_and_prd_state_hooks (test_superpowers_adapted_skills.SuperpowersAdaptedSkillsTests.test_specific_adaptations_keep_strong_method_and_prd_state_hooks) ... ok\ntest_verification_guidance_uses_current_change_scope_not_unconditional_full_suite (test_superpowers_adapted_skills.SuperpowersAdaptedSkillsTests.test_verification_guidance_uses_current_change_scope_not_unconditional_full_suite) ... ok\ntest_extracts_affected_paths (test_telemetry.CaptureTurnRecordsTests.test_extracts_affected_paths) ... ok\ntest_extracts_referenced_ids (test_telemetry.CaptureTurnRecordsTests.test_extracts_referenced_ids) ... ok\ntest_marks_failed_tool (test_telemetry.CaptureTurnRecordsTests.test_marks_failed_tool) ... ok\ntest_one_record_per_tool_call (test_telemetry.CaptureTurnRecordsTests.test_one_record_per_tool_call) ... ok\ntest_turn_index_increments_per_prompt (test_telemetry.CaptureTurnRecordsTests.test_turn_index_increments_per_prompt) ... ok\ntest_preserves_benign_args (test_telemetry.RedactArgsTests.test_preserves_benign_args) ... ok\ntest_redacts_credential (test_telemetry.RedactArgsTests.test_redacts_credential) ... ok\ntest_redacts_key (test_telemetry.RedactArgsTests.test_redacts_key) ... ok\ntest_redacts_local_path (test_telemetry.RedactArgsTests.test_redacts_local_path) ... ok\ntest_redacts_nested (test_telemetry.RedactArgsTests.test_redacts_nested) ... ok\ntest_redacts_password (test_telemetry.RedactArgsTests.test_redacts_password) ... ok\ntest_redacts_secret (test_telemetry.RedactArgsTests.test_redacts_secret) ... ok\ntest_redacts_token (test_telemetry.RedactArgsTests.test_redacts_token) ... ok\ntest_scenario (test_telemetry.SyntheticFiveTurnScenarioTests.test_scenario) ... ok\ntest_required_fields_present (test_telemetry.TelemetryRecordSchemaTests.test_required_fields_present) ... ok\ntest_to_dict_is_json_serializable (test_telemetry.TelemetryRecordSchemaTests.test_to_dict_is_json_serializable) ... ok\ntest_appends_to_existing_file (test_telemetry.WriteTelemetryJsonlTests.test_appends_to_existing_file) ... ok\ntest_load_roundtrip (test_telemetry.WriteTelemetryJsonlTests.test_load_roundtrip) ... ok\ntest_load_skips_malformed_lines (test_telemetry.WriteTelemetryJsonlTests.test_load_skips_malformed_lines) ... ok\ntest_writes_one_line_per_record (test_telemetry.WriteTelemetryJsonlTests.test_writes_one_line_per_record) ... ok\ntest_base_ref_is_resolved_locally_and_option_like_values_are_rejected (test_test_scope.ChangedFileTests.test_base_ref_is_resolved_locally_and_option_like_values_are_rejected) ... ok\ntest_collects_staged_unstaged_and_untracked_without_a_remote (test_test_scope.ChangedFileTests.test_collects_staged_unstaged_and_untracked_without_a_remote) ... ok\ntest_rejects_absolute_or_parent_traversal_changed_paths (test_test_scope.ChangedFileTests.test_rejects_absolute_or_parent_traversal_changed_paths) ... ok\ntest_direct_json_cannot_disable_the_safe_full_fallback (test_test_scope.PlanTests.test_direct_json_cannot_disable_the_safe_full_fallback) ... ok\ntest_direct_json_cannot_remove_mandatory_full_suite_triggers (test_test_scope.PlanTests.test_direct_json_cannot_remove_mandatory_full_suite_triggers) ... ok\ntest_disabled_or_unavailable_executor_requires_full_verification (test_test_scope.PlanTests.test_disabled_or_unavailable_executor_requires_full_verification) ... ok\ntest_narrow_change_emits_deterministic_ai_collab_requests (test_test_scope.PlanTests.test_narrow_change_emits_deterministic_ai_collab_requests) ... ok\ntest_no_changes_requires_no_verification_unless_release (test_test_scope.PlanTests.test_no_changes_requires_no_verification_unless_release) ... ok\ntest_plan_tells_runtime_to_fallback_on_degraded_or_unmapped_results (test_test_scope.PlanTests.test_plan_tells_runtime_to_fallback_on_degraded_or_unmapped_results) ... ok\ntest_release_core_and_excessive_changes_require_full_verification (test_test_scope.PlanTests.test_release_core_and_excessive_changes_require_full_verification) ... ok\ntest_document_branch_skill_defines_parallel_tracking_profile_everywhere (test_tracking_branch_policy.TrackingBranchPolicyTests.test_document_branch_skill_defines_parallel_tracking_profile_everywhere) ... ok\ntest_every_direct_tracking_writer_is_parallel_worker_aware_everywhere (test_tracking_branch_policy.TrackingBranchPolicyTests.test_every_direct_tracking_writer_is_parallel_worker_aware_everywhere) ... ok\ntest_memory_and_git_skills_keep_workers_off_canonical_state_everywhere (test_tracking_branch_policy.TrackingBranchPolicyTests.test_memory_and_git_skills_keep_workers_off_canonical_state_everywhere) ... ok\ntest_narrative_branch_manifest_template_is_installed (test_tracking_branch_policy.TrackingBranchPolicyTests.test_narrative_branch_manifest_template_is_installed) ... ok\ntest_user_docs_explain_branch_then_promote_workflow (test_tracking_branch_policy.TrackingBranchPolicyTests.test_user_docs_explain_branch_then_promote_workflow) ... ok\ntest_worker_launch_contract_is_shipped_to_downstream_hosts (test_tracking_branch_policy.TrackingBranchPolicyTests.test_worker_launch_contract_is_shipped_to_downstream_hosts) ... ok\ntest_empty_repo_safe (test_tracking_commands.PrdStatusTests.test_empty_repo_safe) ... ok\ntest_legacy_and_open_statuses_are_not_hidden (test_tracking_commands.PrdStatusTests.test_legacy_and_open_statuses_are_not_hidden) ... ok\ntest_null_status_and_legacy_health_do_not_break_status (test_tracking_commands.PrdStatusTests.test_null_status_and_legacy_health_do_not_break_status) ... ok\ntest_summarizes_state (test_tracking_commands.PrdStatusTests.test_summarizes_state) ... ok\ntest_tracking_branches_are_visible_without_reading_branch_files (test_tracking_commands.PrdStatusTests.test_tracking_branches_are_visible_without_reading_branch_files) ... ok\ntest_commands_exist_in_all_locations (test_tracking_commands.TrackingCommandFileTests.test_commands_exist_in_all_locations) ... ok\ntest_commands_invoke_the_right_workflow (test_tracking_commands.TrackingCommandFileTests.test_commands_invoke_the_right_workflow) ... ok\ntest_prd_status_is_downstream_runtime (test_tracking_commands.TrackingCommandFileTests.test_prd_status_is_downstream_runtime) ... ok\ntest_catalog_describes_latency_and_effective_dependencies (test_unified_config.CatalogTests.test_catalog_describes_latency_and_effective_dependencies) ... ok\ntest_every_shipped_leaf_is_classified (test_unified_config.CatalogTests.test_every_shipped_leaf_is_classified) ... ok\ntest_inventory_separates_non_persistent_control_planes (test_unified_config.CatalogTests.test_inventory_separates_non_persistent_control_planes) ... ok\ntest_inventory_audit_describe_and_profile_commands_emit_json (test_unified_config.CliTests.test_inventory_audit_describe_and_profile_commands_emit_json) ... ok\ntest_audit_rejects_cli_coercions_in_direct_json (test_unified_config.MutationTests.test_audit_rejects_cli_coercions_in_direct_json) ... ok\ntest_audit_rejects_invalid_custom_profiles_and_active_marker (test_unified_config.MutationTests.test_audit_rejects_invalid_custom_profiles_and_active_marker) ... ok\ntest_audit_reports_scalar_configuration_section_without_crashing (test_unified_config.MutationTests.test_audit_reports_scalar_configuration_section_without_crashing) ... ok\ntest_audit_reports_unknown_and_invalid_values (test_unified_config.MutationTests.test_audit_reports_unknown_and_invalid_values) ... ok\ntest_enable_disable_only_accept_mutable_booleans (test_unified_config.MutationTests.test_enable_disable_only_accept_mutable_booleans) ... ok\ntest_failed_atomic_replace_leaves_original_config_untouched (test_unified_config.MutationTests.test_failed_atomic_replace_leaves_original_config_untouched) ... ok\ntest_malformed_config_is_never_replaced_by_a_mutation (test_unified_config.MutationTests.test_malformed_config_is_never_replaced_by_a_mutation) ... ok\ntest_manual_set_marks_profile_custom_and_preserves_style (test_unified_config.MutationTests.test_manual_set_marks_profile_custom_and_preserves_style) ... ok\ntest_scalar_parent_is_not_clobbered_by_nested_set (test_unified_config.MutationTests.test_scalar_parent_is_not_clobbered_by_nested_set) ... ok\ntest_builtin_profile_dry_run_then_atomic_apply (test_unified_config.ProfileTests.test_builtin_profile_dry_run_then_atomic_apply) ... ok\ntest_invalid_custom_profile_never_partially_writes (test_unified_config.ProfileTests.test_invalid_custom_profile_never_partially_writes) ... ok\ntest_save_show_diff_and_delete_custom_profile (test_unified_config.ProfileTests.test_save_show_diff_and_delete_custom_profile) ... ok\ntest_does_not_flag_canonical_prd_state_paths (test_unsubmitted_plugin_request.UnsubmittedPluginRequestTests.test_does_not_flag_canonical_prd_state_paths) ... ok\ntest_does_not_flag_ordinary_project_requests (test_unsubmitted_plugin_request.UnsubmittedPluginRequestTests.test_does_not_flag_ordinary_project_requests) ... ok\ntest_does_not_flag_rejected_requests (test_unsubmitted_plugin_request.UnsubmittedPluginRequestTests.test_does_not_flag_rejected_requests) ... ok\ntest_does_not_flag_when_already_marked_upstream (test_unsubmitted_plugin_request.UnsubmittedPluginRequestTests.test_does_not_flag_when_already_marked_upstream) ... ok\ntest_flags_a_local_request_about_a_plugin_script (test_unsubmitted_plugin_request.UnsubmittedPluginRequestTests.test_flags_a_local_request_about_a_plugin_script) ... ok\ntest_flags_a_request_that_names_itself_upstream (test_unsubmitted_plugin_request.UnsubmittedPluginRequestTests.test_flags_a_request_that_names_itself_upstream) ... ok\ntest_never_fires_in_the_hub_repo_itself (test_unsubmitted_plugin_request.UnsubmittedPluginRequestTests.test_never_fires_in_the_hub_repo_itself) ... ok\ntest_wired_into_run_checks (test_unsubmitted_plugin_request.UnsubmittedPluginRequestTests.test_wired_into_run_checks) ... ok\ntest_appends_version_change_request (test_version_advice.VersionAdviceTests.test_appends_version_change_request) ... ok\ntest_builds_safe_update_advice_for_low_risk_releases (test_version_advice.VersionAdviceTests.test_builds_safe_update_advice_for_low_risk_releases) ... ok\ntest_cli_uses_hub_releases_when_downstream_repo_has_no_releases_file (test_version_advice.VersionAdviceTests.test_cli_uses_hub_releases_when_downstream_repo_has_no_releases_file) ... ok\ntest_detects_installed_version_from_bom_json (test_version_advice.VersionAdviceTests.test_detects_installed_version_from_bom_json) ... ok\ntest_detects_installed_version_from_opencode_plugin_manifest (test_version_advice.VersionAdviceTests.test_detects_installed_version_from_opencode_plugin_manifest) ... ok\ntest_detects_installed_version_from_prd_plugin_config (test_version_advice.VersionAdviceTests.test_detects_installed_version_from_prd_plugin_config) ... ok\ntest_detects_latest_version_from_plugin_manifest (test_version_advice.VersionAdviceTests.test_detects_latest_version_from_plugin_manifest) ... ok\ntest_installed_version_priority_prefers_config_then_codex_then_opencode (test_version_advice.VersionAdviceTests.test_installed_version_priority_prefers_config_then_codex_then_opencode) ... ok\ntest_orders_prerelease_before_final_release (test_version_advice.VersionAdviceTests.test_orders_prerelease_before_final_release) ... ok\ntest_recommends_review_first_for_medium_or_high_risk_release (test_version_advice.VersionAdviceTests.test_recommends_review_first_for_medium_or_high_risk_release) ... ok\ntest_disabled_returns_disabled_and_no_fetch (test_version_check.CheckTests.test_disabled_returns_disabled_and_no_fetch) ... ok\ntest_force_refetches_within_ttl (test_version_check.CheckTests.test_force_refetches_within_ttl) ... ok\ntest_network_failure_is_fail_open (test_version_check.CheckTests.test_network_failure_is_fail_open) ... ok\ntest_no_update_when_current (test_version_check.CheckTests.test_no_update_when_current) ... ok\ntest_status_is_cache_only_no_fetch (test_version_check.CheckTests.test_status_is_cache_only_no_fetch) ... ok\ntest_ttl_cache_avoids_refetch (test_version_check.CheckTests.test_ttl_cache_avoids_refetch) ... ok\ntest_ttl_expiry_refetches (test_version_check.CheckTests.test_ttl_expiry_refetches) ... ok\ntest_update_available_when_npm_is_ahead (test_version_check.CheckTests.test_update_available_when_npm_is_ahead) ... ok\ntest_status_cli_exits_zero (test_version_check.CliTests.test_status_cli_exits_zero) ... ok\ntest_default_ttl_is_responsive_not_a_day (test_version_check.FreshnessTests.test_default_ttl_is_responsive_not_a_day) ... ok\ntest_fetch_latest_accepts_a_timeout (test_version_check.FreshnessTests.test_fetch_latest_accepts_a_timeout) ... ok\ntest_nudge_refreshes_in_session_not_cache_only (test_version_check.FreshnessTests.test_nudge_refreshes_in_session_not_cache_only) ... ok\ntest_registry_default_ttl_matches (test_version_check.FreshnessTests.test_registry_default_ttl_matches) ... ok\ntest_semver_ordering (test_version_check.ParseTests.test_semver_ordering) ... ok\ntest_set_enabled_writes_config (test_version_check.ToggleTests.test_set_enabled_writes_config) ... ok\ntest_config_has_version_check_default_on (test_version_check.WiringTests.test_config_has_version_check_default_on) ... ok\ntest_nudge_surfaces_update_available (test_version_check.WiringTests.test_nudge_surfaces_update_available) ... ok\ntest_prd_version_command_exists (test_version_check.WiringTests.test_prd_version_command_exists) ... ok\ntest_script_registered_downstream (test_version_check.WiringTests.test_script_registered_downstream) ... ok\ntest_plan_cli_emits_json (test_wiki_backfill.CliTests.test_plan_cli_emits_json) ... ok\ntest_status_cli (test_wiki_backfill.CliTests.test_status_cli) ... ok\ntest_marker_written_for_established_repo_gaining_wiki (test_wiki_backfill.InstallerMarkerTests.test_marker_written_for_established_repo_gaining_wiki) ... ok\ntest_no_marker_for_empty_scaffold (test_wiki_backfill.InstallerMarkerTests.test_no_marker_for_empty_scaffold) ... ok\ntest_no_marker_when_wiki_already_exists (test_wiki_backfill.InstallerMarkerTests.test_no_marker_when_wiki_already_exists) ... ok\ntest_no_marker_when_wiki_disabled (test_wiki_backfill.InstallerMarkerTests.test_no_marker_when_wiki_disabled) ... ok\ntest_pending_false_when_absent (test_wiki_backfill.StatusTests.test_pending_false_when_absent) ... ok\ntest_pending_false_when_wiki_already_exists (test_wiki_backfill.StatusTests.test_pending_false_when_wiki_already_exists) ... ok\ntest_pending_true_when_marker_present (test_wiki_backfill.StatusTests.test_pending_true_when_marker_present) ... ok\ntest_plan_excludes_generated_report_artifacts (test_wiki_backfill.SurveyPlanTests.test_plan_excludes_generated_report_artifacts)\nrequest-report/ (incl. its calibration report trees) and docs/evidence/ ... ok\ntest_plan_excludes_plugin_and_vendor_noise (test_wiki_backfill.SurveyPlanTests.test_plan_excludes_plugin_and_vendor_noise) ... ok\ntest_plan_inventories_code_docs_and_state (test_wiki_backfill.SurveyPlanTests.test_plan_inventories_code_docs_and_state) ... ok\ntest_plan_is_read_only (test_wiki_backfill.SurveyPlanTests.test_plan_is_read_only) ... ok\ntest_wiki_drift_in_on_stop_and_default_sets (test_wiki_backfill.WikiDriftMonitorWiringTests.test_wiki_drift_in_on_stop_and_default_sets) ... ok\ntest_current_article_no_drift (test_wiki_backfill.WikiDriftTests.test_current_article_no_drift) ... ok\ntest_drift_cli (test_wiki_backfill.WikiDriftTests.test_drift_cli) ... ok\ntest_far_behind_article_flagged (test_wiki_backfill.WikiDriftTests.test_far_behind_article_flagged) ... ok\ntest_no_wiki_is_ok (test_wiki_backfill.WikiDriftTests.test_no_wiki_is_ok) ... ok\ntest_unstamped_article_flagged (test_wiki_backfill.WikiDriftTests.test_unstamped_article_flagged) ... ok\ntest_nudge_surfaces_pending_backfill (test_wiki_backfill.WiringTests.test_nudge_surfaces_pending_backfill) ... ok\ntest_script_registered_downstream (test_wiki_backfill.WiringTests.test_script_registered_downstream) ... ok\ntest_skill_has_backfill_mode (test_wiki_backfill.WiringTests.test_skill_has_backfill_mode) ... ok\ntest_no_cp1252_unencodable_chars_in_agent_facing_tools (test_windows_console_safe.SourceScanTests.test_no_cp1252_unencodable_chars_in_agent_facing_tools) ... ok\ntest_backfill_pending_status_renders_cp1252_safe (test_windows_console_safe.StatusRenderTests.test_backfill_pending_status_renders_cp1252_safe) ... ok\ntest_repository_workflow_surfaces_are_chml_zero (test_workflow_chml_audit.WorkflowChmlAuditTests.test_repository_workflow_surfaces_are_chml_zero) ... ok\ntest_semantic_skill_finding_is_part_of_workflow_chml (test_workflow_chml_audit.WorkflowChmlAuditTests.test_semantic_skill_finding_is_part_of_workflow_chml) ... ok\ntest_git_workflow_defers_autonomy_to_decision_policy_but_keeps_floor (test_workflow_consistency.AutonomyConflictResolutionTests.test_git_workflow_defers_autonomy_to_decision_policy_but_keeps_floor) ... ok\ntest_request_intake_defers_autonomy_and_owns_graduation (test_workflow_consistency.AutonomyConflictResolutionTests.test_request_intake_defers_autonomy_and_owns_graduation) ... ok\ntest_evidence_pair_states_create_vs_review_boundary (test_workflow_consistency.BoundaryClarityTests.test_evidence_pair_states_create_vs_review_boundary) ... ok\ntest_session_close_states_memory_boundary (test_workflow_consistency.BoundaryClarityTests.test_session_close_states_memory_boundary) ... ok\ntest_document_branch_has_promotion_owner (test_workflow_consistency.DeadEndOwnerTests.test_document_branch_has_promotion_owner) ... ok\ntest_health_findings_have_triage_dispositions (test_workflow_consistency.DeadEndOwnerTests.test_health_findings_have_triage_dispositions) ... ok\ntest_memory_owns_schema_version_changes (test_workflow_consistency.DeadEndOwnerTests.test_memory_owns_schema_version_changes) ... ok\ntest_planning_lifecycle_has_stage_readiness_checkpoints (test_workflow_consistency.DeadEndOwnerTests.test_planning_lifecycle_has_stage_readiness_checkpoints) ... ok\ntest_session_close_runs_traceability_sync (test_workflow_consistency.DeadEndOwnerTests.test_session_close_runs_traceability_sync) ... ok\n\n----------------------------------------------------------------------\nRan 799 tests in 55.253s\n\nOK\n"
          },
          "output_hash": "7012d16edc0d1a484235e9c19344a0b58a00a7f395e94bfc23e31b111e5372c6",
          "completed_at": "2026-07-15T02:37:19Z"
        },
        {
          "id": "release",
          "action": "process.fixed",
          "status": "completed",
          "resolved_input_hash": "1e5b0c18d93eb4c2248f9a00adbd438e52f3ef02137477fb8376c69cfe86fc9b",
          "started_at": "2026-07-15T02:37:19Z",
          "output": {
            "operation": "release_check",
            "command": [
              "python",
              "scripts/release_check.py"
            ],
            "exit_code": 0,
            "stdout": "# Release Hygiene Report\n\nBase version: `0.15.2`\nHead version: `0.15.3`\nChanged files checked: 3\n\n## Findings\n\n- None\n",
            "stderr": ""
          },
          "output_hash": "8ade4cbe2a2600b85ea6ccb251ccb54734bf57a07cc549462da36b5e73e0e0ff",
          "completed_at": "2026-07-15T02:37:20Z"
        },
        {
          "id": "gaps",
          "action": "process.fixed",
          "status": "completed",
          "resolved_input_hash": "577241909238eeb55683f89d2d2216648dad2e3127397993e22493829a1307a4",
          "started_at": "2026-07-15T02:37:20Z",
          "output": {
            "operation": "gap_audit",
            "command": [
              "python",
              "scripts/gap_audit.py",
              "--target-version",
              "0.15.3",
              "--config",
              ".prd_plugin/config.json",
              "--releases",
              ".prd_plugin/state/releases.json"
            ],
            "exit_code": 0,
            "stdout": "# PRD Plugin Gap Audit\n\nTarget version: `0.15.3`\n\n## Findings\n\n- None\n",
            "stderr": ""
          },
          "output_hash": "3f530b7106d2cf8c9eca159128273b01cb0601647c9450265a74ba3d6cd836d5",
          "completed_at": "2026-07-15T02:37:20Z"
        },
        {
          "id": "package",
          "action": "process.fixed",
          "status": "completed",
          "resolved_input_hash": "06cd12e1f3db3d985f9150520afa60f288297ff0ca01a8e813e9bb6291aa8836",
          "started_at": "2026-07-15T02:37:20Z",
          "output": {
            "operation": "package_check",
            "command": [
              "npm",
              "pack",
              "--dry-run"
            ],
            "exit_code": 0,
            "stdout": "prd-plugin-0.15.3.tgz\n",
            "stderr": "t.py\nnpm notice 5.5kB scripts/staleness_audit.py\nnpm notice 17.6kB scripts/state_consistency_check.py\nnpm notice 5.8kB scripts/traceability_sync_auto.py\nnpm notice 12.5kB scripts/version_advice.py\nnpm notice 9.6kB scripts/workflow_chml_audit.py\nnpm notice 3.0kB skills/project-architecture/SKILL.md\nnpm notice 7.4kB skills/project-blocker-resolution/SKILL.md\nnpm notice 2.8kB skills/project-brainstorm/SKILL.md\nnpm notice 5.5kB skills/project-change-request/SKILL.md\nnpm notice 5.9kB skills/project-code-review/SKILL.md\nnpm notice 2.7kB skills/project-decision-ledger/SKILL.md\nnpm notice 17.4kB skills/project-decision-policy/SKILL.md\nnpm notice 3.8kB skills/project-deterministic-workflows/SKILL.md\nnpm notice 4.9kB skills/project-document-branch/SKILL.md\nnpm notice 2.8kB skills/project-evidence-ledger/SKILL.md\nnpm notice 3.3kB skills/project-evidence/SKILL.md\nnpm notice 8.9kB skills/project-fold-it-in/SKILL.md\nnpm notice 11.2kB skills/project-git-workflow/SKILL.md\nnpm notice 7.4kB skills/project-health/SKILL.md\nnpm notice 5.6kB skills/project-implementation-plan/SKILL.md\nnpm notice 1.1kB skills/project-llm-wiki/LICENSE\nnpm notice 842B skills/project-llm-wiki/references/archive-template.md\nnpm notice 843B skills/project-llm-wiki/references/article-template.md\nnpm notice 559B skills/project-llm-wiki/references/index-template.md\nnpm notice 317B skills/project-llm-wiki/references/raw-template.md\nnpm notice 15.0kB skills/project-llm-wiki/SKILL.md\nnpm notice 7.4kB skills/project-local-integration/SKILL.md\nnpm notice 8.1kB skills/project-memory/SKILL.md\nnpm notice 5.8kB skills/project-planning-lifecycle/SKILL.md\nnpm notice 4.9kB skills/project-prd-plugin-setup/SKILL.md\nnpm notice 3.5kB skills/project-prd/SKILL.md\nnpm notice 22.1kB skills/project-request-intake/SKILL.md\nnpm notice 5.6kB skills/project-self-audit/SKILL.md\nnpm notice 4.7kB skills/project-session-close/SKILL.md\nnpm notice 3.7kB skills/project-systematic-debugging/SKILL.md\nnpm notice 3.0kB skills/project-test-driven-implementation/SKILL.md\nnpm notice 3.7kB skills/project-traceability-review/SKILL.md\nnpm notice 2.5kB skills/project-traceability-sync/SKILL.md\nnpm notice 5.1kB skills/project-verification-before-completion/SKILL.md\nnpm notice 167B templates/architecture-delta.md\nnpm notice 1.4kB templates/architecture.json\nnpm notice 368B templates/brainstorm.md\nnpm notice 274B templates/changelog.json\nnpm notice 12.9kB templates/config.json\nnpm notice 265B templates/decision-record.md\nnpm notice 398B templates/decisions.json\nnpm notice 372B templates/doc-branch.json\nnpm notice 313B templates/doc-branch.md\nnpm notice 115B templates/evidence.md\nnpm notice 10.0kB templates/feature-skill-map.json\nnpm notice 249B templates/handoff.json\nnpm notice 407B templates/health.json\nnpm notice 695B templates/human-exports/architecture.md\nnpm notice 626B templates/human-exports/implementation-plan.md\nnpm notice 580B templates/human-exports/prd.md\nnpm notice 1.4kB templates/implementation-plan.json\nnpm notice 65B templates/mailbox.json\nnpm notice 348B templates/memory.json\nnpm notice 471B templates/merge-checklist.md\nnpm notice 163B templates/plan-delta.md\nnpm notice 139B templates/prd-delta.md\nnpm notice 1.3kB templates/prd.json\nnpm notice 454B templates/project.json\nnpm notice 125B templates/promoted-session-summary.jsonl\nnpm notice 157.6kB templates/releases.json\nnpm notice 3.0kB templates/repo-skeleton/.agents/skills/project-architecture/SKILL.md\nnpm notice 7.4kB templates/repo-skeleton/.agents/skills/project-blocker-resolution/SKILL.md\nnpm notice 2.8kB templates/repo-skeleton/.agents/skills/project-brainstorm/SKILL.md\nnpm notice 5.5kB templates/repo-skeleton/.agents/skills/project-change-request/SKILL.md\nnpm notice 5.9kB templates/repo-skeleton/.agents/skills/project-code-review/SKILL.md\nnpm notice 2.7kB templates/repo-skeleton/.agents/skills/project-decision-ledger/SKILL.md\nnpm notice 17.4kB templates/repo-skeleton/.agents/skills/project-decision-policy/SKILL.md\nnpm notice 3.8kB templates/repo-skeleton/.agents/skills/project-deterministic-workflows/SKILL.md\nnpm notice 4.9kB templates/repo-skeleton/.agents/skills/project-document-branch/SKILL.md\nnpm notice 2.8kB templates/repo-skeleton/.agents/skills/project-evidence-ledger/SKILL.md\nnpm notice 3.3kB templates/repo-skeleton/.agents/skills/project-evidence/SKILL.md\nnpm notice 11.1kB templates/repo-skeleton/.agents/skills/project-git-workflow/SKILL.md\nnpm notice 7.4kB templates/repo-skeleton/.agents/skills/project-health/SKILL.md\nnpm notice 5.6kB templates/repo-skeleton/.agents/skills/project-implementation-plan/SKILL.md\nnpm notice 1.1kB templates/repo-skeleton/.agents/skills/project-llm-wiki/LICENSE\nnpm notice 842B templates/repo-skeleton/.agents/skills/project-llm-wiki/references/archive-template.md\nnpm notice 843B templates/repo-skeleton/.agents/skills/project-llm-wiki/references/article-template.md\nnpm notice 559B templates/repo-skeleton/.agents/skills/project-llm-wiki/references/index-template.md\nnpm notice 317B templates/repo-skeleton/.agents/skills/project-llm-wiki/references/raw-template.md\nnpm notice 15.0kB templates/repo-skeleton/.agents/skills/project-llm-wiki/SKILL.md\nnpm notice 7.4kB templates/repo-skeleton/.agents/skills/project-local-integration/SKILL.md\nnpm notice 8.1kB templates/repo-skeleton/.agents/skills/project-memory/SKILL.md\nnpm notice 5.8kB templates/repo-skeleton/.agents/skills/project-planning-lifecycle/SKILL.md\nnpm notice 4.9kB templates/repo-skeleton/.agents/skills/project-prd-plugin-setup/SKILL.md\nnpm notice 3.5kB templates/repo-skeleton/.agents/skills/project-prd/SKILL.md\nnpm notice 22.1kB templates/repo-skeleton/.agents/skills/project-request-intake/SKILL.md\nnpm notice 4.7kB templates/repo-skeleton/.agents/skills/project-session-close/SKILL.md\nnpm notice 3.7kB templates/repo-skeleton/.agents/skills/project-systematic-debugging/SKILL.md\nnpm notice 3.0kB templates/repo-skeleton/.agents/skills/project-test-driven-implementation/SKILL.md\nnpm notice 3.7kB templates/repo-skeleton/.agents/skills/project-traceability-review/SKILL.md\nnpm notice 2.5kB templates/repo-skeleton/.agents/skills/project-traceability-sync/SKILL.md\nnpm notice 5.0kB templates/repo-skeleton/.agents/skills/project-verification-before-completion/SKILL.md\nnpm notice 871B templates/repo-skeleton/.claude-plugin/plugin.json\nnpm notice 772B templates/repo-skeleton/.claude/commands/prd-autonomy.md\nnpm notice 493B templates/repo-skeleton/.claude/commands/prd-close.md\nnpm notice 2.0kB templates/repo-skeleton/.claude/commands/prd-config.md\nnpm notice 1.6kB templates/repo-skeleton/.claude/commands/prd-drift.md\nnpm notice 1.4kB templates/repo-skeleton/.claude/commands/prd-graph.md\nnpm notice 1.6kB templates/repo-skeleton/.claude/commands/prd-hooks.md\nnpm notice 639B templates/repo-skeleton/.claude/commands/prd-new.md\nnpm notice 1.6kB templates/repo-skeleton/.claude/commands/prd-reflections.md\nnpm notice 1.8kB templates/repo-skeleton/.claude/commands/prd-report.md\nnpm notice 549B templates/repo-skeleton/.claude/commands/prd-status.md\nnpm notice 974B templates/repo-skeleton/.claude/commands/prd-track.md\nnpm notice 1.0kB templates/repo-skeleton/.claude/commands/prd-version.md\nnpm notice 938B templates/repo-skeleton/.claude/commands/prd-workflow.md\nnpm notice 1.6kB templates/repo-skeleton/.claude/hooks/prd_drift_check.py\nnpm notice 2.0kB templates/repo-skeleton/.claude/hooks/prd_log_skill.py\nnpm notice 4.1kB templates/repo-skeleton/.claude/hooks/prd_nudge.py\nnpm notice 3.7kB templates/repo-skeleton/.claude/hooks/prd_precommit_gate.py\nnpm notice 6.1kB templates/repo-skeleton/.claude/hooks/prd_reflection.py\nnpm notice 3.5kB templates/repo-skeleton/.claude/hooks/prd_session_report.py\nnpm notice 9.8kB templates/repo-skeleton/.claude/hooks/prd_stop_guard.py\nnpm notice 1.3kB templates/repo-skeleton/.claude/settings.json\nnpm notice 3.0kB templates/repo-skeleton/.claude/skills/project-architecture/SKILL.md\nnpm notice 7.4kB templates/repo-skeleton/.claude/skills/project-blocker-resolution/SKILL.md\nnpm notice 2.8kB templates/repo-skeleton/.claude/skills/project-brainstorm/SKILL.md\nnpm notice 5.5kB templates/repo-skeleton/.claude/skills/project-change-request/SKILL.md\nnpm notice 5.9kB templates/repo-skeleton/.claude/skills/project-code-review/SKILL.md\nnpm notice 2.7kB templates/repo-skeleton/.claude/skills/project-decision-ledger/SKILL.md\nnpm notice 17.4kB templates/repo-skeleton/.claude/skills/project-decision-policy/SKILL.md\nnpm notice 3.8kB templates/repo-skeleton/.claude/skills/project-deterministic-workflows/SKILL.md\nnpm notice 4.9kB templates/repo-skeleton/.claude/skills/project-document-branch/SKILL.md\nnpm notice 2.8kB templates/repo-skeleton/.claude/skills/project-evidence-ledger/SKILL.md\nnpm notice 3.3kB templates/repo-skeleton/.claude/skills/project-evidence/SKILL.md\nnpm notice 11.1kB templates/repo-skeleton/.claude/skills/project-git-workflow/SKILL.md\nnpm notice 7.4kB templates/repo-skeleton/.claude/skills/project-health/SKILL.md\nnpm notice 5.6kB templates/repo-skeleton/.claude/skills/project-implementation-plan/SKILL.md\nnpm notice 1.1kB templates/repo-skeleton/.claude/skills/project-llm-wiki/LICENSE\nnpm notice 842B templates/repo-skeleton/.claude/skills/project-llm-wiki/references/archive-template.md\nnpm notice 843B templates/repo-skeleton/.claude/skills/project-llm-wiki/references/article-template.md\nnpm notice 559B templates/repo-skeleton/.claude/skills/project-llm-wiki/references/index-template.md\nnpm notice 317B templates/repo-skeleton/.claude/skills/project-llm-wiki/references/raw-template.md\nnpm notice 15.0kB templates/repo-skeleton/.claude/skills/project-llm-wiki/SKILL.md\nnpm notice 7.4kB templates/repo-skeleton/.claude/skills/project-local-integration/SKILL.md\nnpm notice 8.1kB templates/repo-skeleton/.claude/skills/project-memory/SKILL.md\nnpm notice 5.8kB templates/repo-skeleton/.claude/skills/project-planning-lifecycle/SKILL.md\nnpm notice 4.9kB templates/repo-skeleton/.claude/skills/project-prd-plugin-setup/SKILL.md\nnpm notice 3.5kB templates/repo-skeleton/.claude/skills/project-prd/SKILL.md\nnpm notice 22.1kB templates/repo-skeleton/.claude/skills/project-request-intake/SKILL.md\nnpm notice 4.7kB templates/repo-skeleton/.claude/skills/project-session-close/SKILL.md\nnpm notice 3.7kB templates/repo-skeleton/.claude/skills/project-systematic-debugging/SKILL.md\nnpm notice 3.0kB templates/repo-skeleton/.claude/skills/project-test-driven-implementation/SKILL.md\nnpm notice 3.7kB templates/repo-skeleton/.claude/skills/project-traceability-review/SKILL.md\nnpm notice 2.5kB templates/repo-skeleton/.claude/skills/project-traceability-sync/SKILL.md\nnpm notice 5.0kB templates/repo-skeleton/.claude/skills/project-verification-before-completion/SKILL.md\nnpm notice 3.1kB templates/repo-skeleton/.codex-plugin/plugin.json\nnpm notice 2.8kB templates/repo-skeleton/.codex/hooks.json\nnpm notice 743B templates/repo-skeleton/.githooks/pre-commit\nnpm notice 734B templates/repo-skeleton/.github/workflows/prd-gate.yml\nnpm notice 3.1kB templates/repo-skeleton/.opencode/plugin.json\nnpm notice 3.3kB templates/repo-skeleton/.opencode/plugins/prd-hooks.js\nnpm notice 3.0kB templates/repo-skeleton/.opencode/skill/project-architecture/SKILL.md\nnpm notice 7.4kB templates/repo-skeleton/.opencode/skill/project-blocker-resolution/SKILL.md\nnpm notice 2.8kB templates/repo-skeleton/.opencode/skill/project-brainstorm/SKILL.md\nnpm notice 5.5kB templates/repo-skeleton/.opencode/skill/project-change-request/SKILL.md\nnpm notice 5.9kB templates/repo-skeleton/.opencode/skill/project-code-review/SKILL.md\nnpm notice 2.7kB templates/repo-skeleton/.opencode/skill/project-decision-ledger/SKILL.md\nnpm notice 17.4kB templates/repo-skeleton/.opencode/skill/project-decision-policy/SKILL.md\nnpm notice 3.8kB templates/repo-skeleton/.opencode/skill/project-deterministic-workflows/SKILL.md\nnpm notice 4.9kB templates/repo-skeleton/.opencode/skill/project-document-branch/SKILL.md\nnpm notice 2.8kB templates/repo-skeleton/.opencode/skill/project-evidence-ledger/SKILL.md\nnpm notice 3.3kB templates/repo-skeleton/.opencode/skill/project-evidence/SKILL.md\nnpm notice 11.1kB templates/repo-skeleton/.opencode/skill/project-git-workflow/SKILL.md\nnpm notice 7.4kB templates/repo-skeleton/.opencode/skill/project-health/SKILL.md\nnpm notice 5.6kB templates/repo-skeleton/.opencode/skill/project-implementation-plan/SKILL.md\nnpm notice 1.1kB templates/repo-skeleton/.opencode/skill/project-llm-wiki/LICENSE\nnpm notice 842B templates/repo-skeleton/.opencode/skill/project-llm-wiki/references/archive-template.md\nnpm notice 843B templates/repo-skeleton/.opencode/skill/project-llm-wiki/references/article-template.md\nnpm notice 559B templates/repo-skeleton/.opencode/skill/project-llm-wiki/references/index-template.md\nnpm notice 317B templates/repo-skeleton/.opencode/skill/project-llm-wiki/references/raw-template.md\nnpm notice 15.0kB templates/repo-skeleton/.opencode/skill/project-llm-wiki/SKILL.md\nnpm notice 7.4kB templates/repo-skeleton/.opencode/skill/project-local-integration/SKILL.md\nnpm notice 8.1kB templates/repo-skeleton/.opencode/skill/project-memory/SKILL.md\nnpm notice 5.8kB templates/repo-skeleton/.opencode/skill/project-planning-lifecycle/SKILL.md\nnpm notice 4.9kB templates/repo-skeleton/.opencode/skill/project-prd-plugin-setup/SKILL.md\nnpm notice 3.5kB templates/repo-skeleton/.opencode/skill/project-prd/SKILL.md\nnpm notice 22.1kB templates/repo-skeleton/.opencode/skill/project-request-intake/SKILL.md\nnpm notice 4.7kB templates/repo-skeleton/.opencode/skill/project-session-close/SKILL.md\nnpm notice 3.7kB templates/repo-skeleton/.opencode/skill/project-systematic-debugging/SKILL.md\nnpm notice 3.0kB templates/repo-skeleton/.opencode/skill/project-test-driven-implementation/SKILL.md\nnpm notice 3.7kB templates/repo-skeleton/.opencode/skill/project-traceability-review/SKILL.md\nnpm notice 2.5kB templates/repo-skeleton/.opencode/skill/project-traceability-sync/SKILL.md\nnpm notice 5.0kB templates/repo-skeleton/.opencode/skill/project-verification-before-completion/SKILL.md\nnpm notice 12.7kB templates/repo-skeleton/.prd_plugin/config.json\nnpm notice 1.6kB templates/repo-skeleton/.prd_plugin/hooks/prd_drift_check.py\nnpm notice 9.2kB templates/repo-skeleton/.prd_plugin/hooks/prd_hook_dispatch.py\nnpm notice 2.0kB templates/repo-skeleton/.prd_plugin/hooks/prd_log_skill.py\nnpm notice 4.1kB templates/repo-skeleton/.prd_plugin/hooks/prd_nudge.py\nnpm notice 3.7kB templates/repo-skeleton/.prd_plugin/hooks/prd_precommit_gate.py\nnpm notice 6.1kB templates/repo-skeleton/.prd_plugin/hooks/prd_reflection.py\nnpm notice 3.5kB templates/repo-skeleton/.prd_plugin/hooks/prd_session_report.py\nnpm notice 9.8kB templates/repo-skeleton/.prd_plugin/hooks/prd_stop_guard.py\nnpm notice 3.7kB templates/repo-skeleton/.prd_plugin/ID-SCHEME.md\nnpm notice 581B templates/repo-skeleton/.prd_plugin/ids/registry.json\nnpm notice 12.6kB templates/repo-skeleton/.prd_plugin/METHOD.md\nnpm notice 725B templates/repo-skeleton/.prd_plugin/method/artifact-format.md\nnpm notice 820B templates/repo-skeleton/.prd_plugin/method/completion-gate.md\nnpm notice 3.6kB templates/repo-skeleton/.prd_plugin/method/deterministic-workflows.md\nnpm notice 1.2kB templates/repo-skeleton/.prd_plugin/method/estimation.md\nnpm notice 1.9kB templates/repo-skeleton/.prd_plugin/method/grounding.md\nnpm notice 2.5kB templates/repo-skeleton/.prd_plugin/method/reporting.md\nnpm notice 2.6kB templates/repo-skeleton/.prd_plugin/method/self-service.md\nnpm notice 1.6kB templates/repo-skeleton/.prd_plugin/method/staleness-rules.md\nnpm notice 1.0kB templates/repo-skeleton/.prd_plugin/method/state-validation.md\nnpm notice 47B templates/repo-skeleton/.prd_plugin/state/changelog.json\nnpm notice 49B templates/repo-skeleton/.prd_plugin/state/decisions.json\nnpm notice 157B templates/repo-skeleton/.prd_plugin/state/health.json\nnpm notice 47B templates/repo-skeleton/.prd_plugin/state/memory.json\nnpm notice 286B templates/repo-skeleton/.prd_plugin/state/project.json\nnpm notice 48B templates/repo-skeleton/.prd_plugin/state/releases.json\nnpm notice 48B templates/repo-skeleton/.prd_plugin/state/requests.json\nnpm notice 214B templates/repo-skeleton/.prd_plugin/state/sessions/shared/promoted-session-summaries.jsonl\nnpm notice 51B templates/repo-skeleton/.prd_plugin/state/tracking.json\nnpm notice 48B templates/repo-skeleton/.prd_plugin/state/workflow-runs.json\nnpm notice 167B templates/repo-skeleton/.prd_plugin/templates/architecture-delta.md\nnpm notice 1.4kB templates/repo-skeleton/.prd_plugin/templates/architecture.json\nnpm notice 368B templates/repo-skeleton/.prd_plugin/templates/brainstorm.md\nnpm notice 274B templates/repo-skeleton/.prd_plugin/templates/changelog.json\nnpm notice 12.9kB templates/repo-skeleton/.prd_plugin/templates/config.json\nnpm notice 265B templates/repo-skeleton/.prd_plugin/templates/decision-record.md\nnpm notice 398B templates/repo-skeleton/.prd_plugin/templates/decisions.json\nnpm notice 372B templates/repo-skeleton/.prd_plugin/templates/doc-branch.json\nnpm notice 313B templates/repo-skeleton/.prd_plugin/templates/doc-branch.md\nnpm notice 115B templates/repo-skeleton/.prd_plugin/templates/evidence.md\nnpm notice 249B templates/repo-skeleton/.prd_plugin/templates/handoff.json\nnpm notice 407B templates/repo-skeleton/.prd_plugin/templates/health.json\nnpm notice 695B templates/repo-skeleton/.prd_plugin/templates/human-exports/architecture.md\nnpm notice 626B templates/repo-skeleton/.prd_plugin/templates/human-exports/implementation-plan.md\nnpm notice 580B templates/repo-skeleton/.prd_plugin/templates/human-exports/prd.md\nnpm notice 1.4kB templates/repo-skeleton/.prd_plugin/templates/implementation-plan.json\nnpm notice 65B templates/repo-skeleton/.prd_plugin/templates/mailbox.json\nnpm notice 348B templates/repo-skeleton/.prd_plugin/templates/memory.json\nnpm notice 471B templates/repo-skeleton/.prd_plugin/templates/merge-checklist.md\nnpm notice 163B templates/repo-skeleton/.prd_plugin/templates/plan-delta.md\nnpm notice 139B templates/repo-skeleton/.prd_plugin/templates/prd-delta.md\nnpm notice 1.3kB templates/repo-skeleton/.prd_plugin/templates/prd.json\nnpm notice 454B templates/repo-skeleton/.prd_plugin/templates/project.json\nnpm notice 125B templates/repo-skeleton/.prd_plugin/templates/promoted-session-summary.jsonl\nnpm notice 923B templates/repo-skeleton/.prd_plugin/templates/releases.json\nnpm notice 1.4kB templates/repo-skeleton/.prd_plugin/templates/request.json\nnpm notice 1.7kB templates/repo-skeleton/.prd_plugin/templates/requests.json\nnpm notice 17.5kB templates/repo-skeleton/.prd_plugin/templates/script-install-scope.json\nnpm notice 235B templates/repo-skeleton/.prd_plugin/templates/session.json\nnpm notice 10.6kB templates/repo-skeleton/.prd_plugin/templates/skill-install-scope.json\nnpm notice 317B templates/repo-skeleton/.prd_plugin/templates/submission-package.json\nnpm notice 225B templates/repo-skeleton/.prd_plugin/templates/traceability-matrix.md\nnpm notice 321B templates/repo-skeleton/.prd_plugin/templates/tracking.json\nnpm notice 12.0kB templates/repo-skeleton/.prd_plugin/workflows.json\nnpm notice 12.1kB templates/repo-skeleton/AGENTS.md\nnpm notice 7.5kB templates/repo-skeleton/CLAUDE.md\nnpm notice 11.8kB templates/repo-skeleton/docs/INSTALL-MATRIX.md\nnpm notice 1.4kB templates/request.json\nnpm notice 1.7kB templates/requests.json\nnpm notice 17.5kB templates/script-install-scope.json\nnpm notice 235B templates/session.json\nnpm notice 10.6kB templates/skill-install-scope.json\nnpm notice 317B templates/submission-package.json\nnpm notice 225B templates/traceability-matrix.md\nnpm notice 321B templates/tracking.json\nnpm notice 12.0kB templates/workflows.json\nnpm notice Tarball Details\nnpm notice name: prd-plugin\nnpm notice version: 0.15.3\nnpm notice filename: prd-plugin-0.15.3.tgz\nnpm notice package size: 923.5 kB\nnpm notice unpacked size: 3.8 MB\nnpm notice shasum: 8ec9f0804b72fc6ee0bd8efd395bdc02253c8c2d\nnpm notice integrity: sha512-MY5uEQNU/2dxg[...]VLhHR7OmXbAqA==\nnpm notice total files: 476\nnpm notice\n"
          },
          "output_hash": "be3a7fae820108e2de039b5167951ddedb3255c3e986172b1ba772eecb7454eb",
          "completed_at": "2026-07-15T02:37:21Z"
        },
        {
          "id": "gate",
          "action": "state.gate",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-15T02:37:21Z",
          "output": {
            "status": "ok",
            "repo_root": "D:\\Projects\\prd-plugin",
            "summary": {
              "errors": 0,
              "warnings": 0
            },
            "findings": []
          },
          "output_hash": "a705b176b049df02348354c23988d51f616670b7352ad410321cbe0577edf053",
          "completed_at": "2026-07-15T02:37:22Z"
        }
      ],
      "completed_at": "2026-07-15T02:37:22Z"
    },
    {
      "id": "WFR-017",
      "schema_version": "1.0",
      "workflow_id": "hub.release",
      "workflow_version": 1,
      "definition_hash": "b8efcc9726266d73719719856dab279ace8f4d21be7b2d01b4f5f08bd3eacc1b",
      "plan_hash": "45a6765f24486f3d1e889f80a653564254c97a7e400033444b676e8ed8cdecb8",
      "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
      "inputs": {},
      "idempotency_key": "release-0.15.4-knowledge-first-subagents",
      "status": "completed",
      "attempt": 2,
      "created_at": "2026-07-15T03:11:42Z",
      "updated_at": "2026-07-15T03:14:39Z",
      "receipts": [
        {
          "step_id": "diff",
          "action": "git.diff_check",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "11c11db30f4b3f6c758722ba3e27eea08145b7d212f6a157451e364b48475280",
          "completed_at": "2026-07-15T03:11:42Z"
        },
        {
          "step_id": "config",
          "action": "config.audit",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "52f4670d3af925e27fa87b707174b4d88bc7c6d7cc17f7accb4003b9d0b94665",
          "completed_at": "2026-07-15T03:11:42Z"
        },
        {
          "step_id": "state",
          "action": "state.consistency",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "5a1c6e5246defb1b6b6b90ff734db95bece2886b408ab112ed9b8e67222d5568",
          "completed_at": "2026-07-15T03:11:43Z"
        },
        {
          "step_id": "workflow_audit",
          "action": "process.fixed",
          "input_hash": "edf19b269a54d72753f1abc2b8ffcb810c2b7bc377cee7e1698c939f17e0be94",
          "output_hash": "231b43ed70e09c4e7cbcda1094b00e0274dd4a22ff8324da2eb907f705c1316a",
          "completed_at": "2026-07-15T03:11:43Z"
        },
        {
          "step_id": "suite",
          "action": "process.fixed",
          "input_hash": "954e575e48145853f5681eda189186c95a053267158fae669114320f2e53794a",
          "output_hash": "0662318affe0393274d33a440bf29798251112f82373604fd84f2967d0b4992b",
          "completed_at": "2026-07-15T03:14:37Z"
        },
        {
          "step_id": "release",
          "action": "process.fixed",
          "input_hash": "1e5b0c18d93eb4c2248f9a00adbd438e52f3ef02137477fb8376c69cfe86fc9b",
          "output_hash": "927d97010fe116f82ad0bc7e12e79b14e517327b0475011d37c5c0eef01bfb7d",
          "completed_at": "2026-07-15T03:14:37Z"
        },
        {
          "step_id": "gaps",
          "action": "process.fixed",
          "input_hash": "577241909238eeb55683f89d2d2216648dad2e3127397993e22493829a1307a4",
          "output_hash": "577c15b166f233e4150b6d7a2d39add52f275508c9af8629e984c764e795999b",
          "completed_at": "2026-07-15T03:14:37Z"
        },
        {
          "step_id": "package",
          "action": "process.fixed",
          "input_hash": "06cd12e1f3db3d985f9150520afa60f288297ff0ca01a8e813e9bb6291aa8836",
          "output_hash": "1e89ba4bd6e34630abac39c75edf4e0498531b7415eaabd1537f53f9d5e31fe5",
          "completed_at": "2026-07-15T03:14:39Z"
        },
        {
          "step_id": "gate",
          "action": "state.gate",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "a705b176b049df02348354c23988d51f616670b7352ad410321cbe0577edf053",
          "completed_at": "2026-07-15T03:14:39Z"
        }
      ],
      "steps": [
        {
          "id": "diff",
          "action": "git.diff_check",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-15T03:11:42Z",
          "output": {
            "passed": true
          },
          "output_hash": "11c11db30f4b3f6c758722ba3e27eea08145b7d212f6a157451e364b48475280",
          "completed_at": "2026-07-15T03:11:42Z"
        },
        {
          "id": "config",
          "action": "config.audit",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-15T03:11:42Z",
          "output": {
            "status": "ok",
            "summary": {
              "settings": 171,
              "mutable": 162,
              "read_only_or_managed": 9,
              "unclassified": 0,
              "unknown": 0,
              "invalid": 0,
              "missing_using_defaults": 0
            },
            "unclassified_keys": [],
            "unknown_keys": [],
            "invalid_values": [],
            "missing_using_defaults": []
          },
          "output_hash": "52f4670d3af925e27fa87b707174b4d88bc7c6d7cc17f7accb4003b9d0b94665",
          "completed_at": "2026-07-15T03:11:42Z"
        },
        {
          "id": "state",
          "action": "state.consistency",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-15T03:11:42Z",
          "output": {
            "status": "ok",
            "repo_root": "D:\\Projects\\prd-plugin",
            "summary": {
              "errors": 0,
              "warnings": 0,
              "infos": 0
            },
            "findings": []
          },
          "output_hash": "5a1c6e5246defb1b6b6b90ff734db95bece2886b408ab112ed9b8e67222d5568",
          "completed_at": "2026-07-15T03:11:43Z"
        },
        {
          "id": "workflow_audit",
          "action": "process.fixed",
          "status": "completed",
          "resolved_input_hash": "edf19b269a54d72753f1abc2b8ffcb810c2b7bc377cee7e1698c939f17e0be94",
          "started_at": "2026-07-15T03:11:43Z",
          "output": {
            "operation": "workflow_chml_audit",
            "command": [
              "python",
              "scripts/workflow_chml_audit.py",
              "--repo-root",
              ".",
              "--format",
              "json"
            ],
            "exit_code": 0,
            "stdout": "{\n  \"status\": \"ok\",\n  \"repo_root\": \"D:\\\\Projects\\\\prd-plugin\",\n  \"summary\": {\n    \"critical\": 0,\n    \"high\": 0,\n    \"medium\": 0,\n    \"low\": 0\n  },\n  \"findings\": []\n}\n",
            "stderr": ""
          },
          "output_hash": "231b43ed70e09c4e7cbcda1094b00e0274dd4a22ff8324da2eb907f705c1316a",
          "completed_at": "2026-07-15T03:11:43Z"
        },
        {
          "id": "suite",
          "action": "process.fixed",
          "status": "completed",
          "resolved_input_hash": "954e575e48145853f5681eda189186c95a053267158fae669114320f2e53794a",
          "started_at": "2026-07-15T03:13:42Z",
          "output": {
            "operation": "local_workflow_check",
            "command": [
              "python",
              "scripts/local_workflow_check.py"
            ],
            "exit_code": 0,
            "stdout": "Structured file validation passed.\n$ python -m unittest discover -s tests -v\n{\n  \"status\": \"fail\",\n  \"repo_root\": \"C:\\\\Users\\\\marku\\\\AppData\\\\Local\\\\Temp\\\\tmp13all5iu\",\n  \"summary\": {\n    \"errors\": 1,\n    \"warnings\": 0\n  },\n  \"findings\": [\n    {\n      \"check\": \"duplicate_id\",\n      \"severity\": \"error\",\n      \"summary\": \"Duplicate id REQ-002 in .prd_plugin/state/requests.json.\",\n      \"required_action\": \"Renumber one record so REQ-002 is unique. Allocate IDs with the MCP tool prd_next_id (or the record tools like prd_open_goal) instead of hand-computing them.\"\n    }\n  ]\n}\nautonomy_level set to guided\nautonomy_level set to autonomous\nDESTRUCTIVE RESET REQUESTED: --force --yes will erase protected PRD Plugin project data.\nThe following existing state/configuration files would be replaced with skeleton defaults:\n  - .prd_plugin/state/tracking.json\nThis may erase IDs, tracking, requests, decisions, health findings, configuration, and session memory.\nFor a normal safe update, remove --yes and run: npx prd-install . --force\nPRD Plugin safe update: preserving existing state/config and refreshing plugin files only. Never add --yes to a routine update; it requests a destructive reset.\nPRD Plugin safe update: preserving existing state/config and refreshing plugin files only. Never add --yes to a routine update; it requests a destructive reset.\nPRD Plugin safe update: preserving existing state/config and refreshing plugin files only. Never add --yes to a routine update; it requests a destructive reset.\nPRD Plugin safe update: preserving existing state/config and refreshing plugin files only. Never add --yes to a routine update; it requests a destructive reset.\nPRD Plugin safe update: preserving existing state/config and refreshing plugin files only. Never add --yes to a routine update; it requests a destructive reset.\nPRD Plugin safe update: preserving existing state/config and refreshing plugin files only. Never add --yes to a routine update; it requests a destructive reset.\nPRD Plugin safe update: preserving existing state/config and refreshing plugin files only. Never add --yes to a routine update; it requests a destructive reset.\nPRD Plugin safe update: preserving existing state/config and refreshing plugin files only. Never add --yes to a routine update; it requests a destructive reset.\nPRD Plugin safe update: preserving existing state/config and refreshing plugin files only. Never add --yes to a routine update; it requests a destructive reset.\nPRD Plugin safe update: preserving existing state/config and refreshing plugin files only. Never add --yes to a routine update; it requests a destructive reset.\nPRD Plugin safe update: preserving existing state/config and refreshing plugin files only. Never add --yes to a routine update; it requests a destructive reset.\nPRD Plugin safe update: preserving existing state/config and refreshing plugin files only. Never add --yes to a routine update; it requests a destructive reset.\nPRD Plugin safe update: preserving existing state/config and refreshing plugin files only. Never add --yes to a routine update; it requests a destructive reset.\n{\"decision\": \"block\", \"reason\": \"Autonomous run-until-done: goal TRK-109 is still active. Continue with the next incomplete step toward it \\u2014 do not stop to ask 'shall I proceed?'. If you genuinely need the user (consent floor: push/merge/publish/secrets, or a real blocker), create the file .prd_plugin/local/autonomy-pause with a one-line reason and then stop; the guard will let you. Otherwise keep going.\"}\n$ python scripts/feature_skill_audit.py --repo-root . --format json\n{\n  \"status\": \"ok\",\n  \"repo_root\": \"D:\\\\Projects\\\\prd-plugin\",\n  \"contract\": \"templates/feature-skill-map.json\",\n  \"feature_count\": 16,\n  \"summary\": {\n    \"critical\": 0,\n    \"high\": 0,\n    \"medium\": 0,\n    \"low\": 0\n  },\n  \"findings\": []\n}\n$ python scripts/gap_audit.py --target-version 0.15.4\n# PRD Plugin Gap Audit\n\nTarget version: `0.15.4`\n\n## Findings\n\n- None\n$ python scripts/version_advice.py --installed-repo . --format json --output request-report/version-advice.json\n$ python scripts/release_check.py --output request-report/release-hygiene.md\n$ python scripts/prd_doctor.py --repo-root . --format json --output request-report/prd-doctor.json\n$ python scripts/state_consistency_check.py --repo-root . --format json --output request-report/state-consistency.json\n$ python scripts/prd_install_skills.py --repo-root . --dry-run\n{\n  \"status\": \"dry_run\",\n  \"target_agent\": \"codex\",\n  \"targets\": [\n    {\n      \"agent\": \"codex\",\n      \"target\": \".agents\\\\skills\",\n      \"would_install\": [\n        \"project-architecture\",\n        \"project-blocker-resolution\",\n        \"project-brainstorm\",\n        \"project-change-request\",\n        \"project-code-review\",\n        \"project-decision-ledger\",\n        \"project-decision-policy\",\n        \"project-deterministic-workflows\",\n        \"project-document-branch\",\n        \"project-evidence\",\n        \"project-evidence-ledger\",\n        \"project-git-workflow\",\n        \"project-health\",\n        \"project-implementation-plan\",\n        \"project-llm-wiki\",\n        \"project-local-integration\",\n        \"project-memory\",\n        \"project-planning-lifecycle\",\n        \"project-prd\",\n        \"project-prd-plugin-setup\",\n        \"project-request-intake\",\n        \"project-session-close\",\n        \"project-systematic-debugging\",\n        \"project-test-driven-implementation\",\n        \"project-traceability-review\",\n        \"project-traceability-sync\",\n        \"project-verification-before-completion\"\n      ],\n      \"would_remove\": [\n        \"project-fold-it-in\",\n        \"project-self-audit\"\n      ]\n    }\n  ],\n  \"installed_count\": 0,\n  \"target\": \".agents\\\\skills\",\n  \"installed\": [],\n  \"removed\": [],\n  \"would_install\": [\n    \"project-architecture\",\n    \"project-blocker-resolution\",\n    \"project-brainstorm\",\n    \"project-change-request\",\n    \"project-code-review\",\n    \"project-decision-ledger\",\n    \"project-decision-policy\",\n    \"project-deterministic-workflows\",\n    \"project-document-branch\",\n    \"project-evidence\",\n    \"project-evidence-ledger\",\n    \"project-git-workflow\",\n    \"project-health\",\n    \"project-implementation-plan\",\n    \"project-llm-wiki\",\n    \"project-local-integration\",\n    \"project-memory\",\n    \"project-planning-lifecycle\",\n    \"project-prd\",\n    \"project-prd-plugin-setup\",\n    \"project-request-intake\",\n    \"project-session-close\",\n    \"project-systematic-debugging\",\n    \"project-test-driven-implementation\",\n    \"project-traceability-review\",\n    \"project-traceability-sync\",\n    \"project-verification-before-completion\"\n  ],\n  \"would_remove\": [\n    \"project-fold-it-in\",\n    \"project-self-audit\"\n  ]\n}\n$ python scripts/request_report.py --config .prd_plugin/config.json --format markdown --output request-report/request-report.md\n$ python scripts/request_report.py --config .prd_plugin/config.json --format json --output request-report/request-report.json\n$ python scripts/message_check.py --config .prd_plugin/config.json --format json --output request-report/message-check.json\nLocal workflow check completed.\n",
            "stderr": "_truncating) ... ok\ntest_utcp_substrate_action_emits_verification_plan (test_substrate_adapter.AdapterContractTests.test_utcp_substrate_action_emits_verification_plan) ... ok\ntest_workflow_skills_route_execution_through_ai_collab_adapter (test_substrate_adapter.AdapterContractTests.test_workflow_skills_route_execution_through_ai_collab_adapter) ... ok\ntest_all_shipped_configs_are_disabled_by_default_and_identical (test_substrate_adapter.ConfigContractTests.test_all_shipped_configs_are_disabled_by_default_and_identical) ... ok\ntest_cli_registry_validates_modes_and_capability_allowlist (test_substrate_adapter.ConfigContractTests.test_cli_registry_validates_modes_and_capability_allowlist) ... ok\ntest_registry_exposes_substrate_master_mode_and_capabilities (test_substrate_adapter.ConfigContractTests.test_registry_exposes_substrate_master_mode_and_capabilities) ... ok\ntest_adapted_skills_are_downstream_runtime_and_required (test_superpowers_adapted_skills.SuperpowersAdaptedSkillsTests.test_adapted_skills_are_downstream_runtime_and_required) ... ok\ntest_adapted_skills_are_installed_to_repo_local_and_skeleton (test_superpowers_adapted_skills.SuperpowersAdaptedSkillsTests.test_adapted_skills_are_installed_to_repo_local_and_skeleton) ... ok\ntest_adapted_superpowers_skills_exist_with_attribution_and_prd_ids (test_superpowers_adapted_skills.SuperpowersAdaptedSkillsTests.test_adapted_superpowers_skills_exist_with_attribution_and_prd_ids) ... ok\ntest_downstream_skills_do_not_direct_agents_to_run_hub_only_scripts (test_superpowers_adapted_skills.SuperpowersAdaptedSkillsTests.test_downstream_skills_do_not_direct_agents_to_run_hub_only_scripts) ... ok\ntest_notice_records_superpowers_origin (test_superpowers_adapted_skills.SuperpowersAdaptedSkillsTests.test_notice_records_superpowers_origin) ... ok\ntest_skeleton_skill_copies_exist (test_superpowers_adapted_skills.SuperpowersAdaptedSkillsTests.test_skeleton_skill_copies_exist) ... ok\ntest_specific_adaptations_keep_strong_method_and_prd_state_hooks (test_superpowers_adapted_skills.SuperpowersAdaptedSkillsTests.test_specific_adaptations_keep_strong_method_and_prd_state_hooks) ... ok\ntest_verification_guidance_uses_current_change_scope_not_unconditional_full_suite (test_superpowers_adapted_skills.SuperpowersAdaptedSkillsTests.test_verification_guidance_uses_current_change_scope_not_unconditional_full_suite) ... ok\ntest_extracts_affected_paths (test_telemetry.CaptureTurnRecordsTests.test_extracts_affected_paths) ... ok\ntest_extracts_referenced_ids (test_telemetry.CaptureTurnRecordsTests.test_extracts_referenced_ids) ... ok\ntest_marks_failed_tool (test_telemetry.CaptureTurnRecordsTests.test_marks_failed_tool) ... ok\ntest_one_record_per_tool_call (test_telemetry.CaptureTurnRecordsTests.test_one_record_per_tool_call) ... ok\ntest_turn_index_increments_per_prompt (test_telemetry.CaptureTurnRecordsTests.test_turn_index_increments_per_prompt) ... ok\ntest_preserves_benign_args (test_telemetry.RedactArgsTests.test_preserves_benign_args) ... ok\ntest_redacts_credential (test_telemetry.RedactArgsTests.test_redacts_credential) ... ok\ntest_redacts_key (test_telemetry.RedactArgsTests.test_redacts_key) ... ok\ntest_redacts_local_path (test_telemetry.RedactArgsTests.test_redacts_local_path) ... ok\ntest_redacts_nested (test_telemetry.RedactArgsTests.test_redacts_nested) ... ok\ntest_redacts_password (test_telemetry.RedactArgsTests.test_redacts_password) ... ok\ntest_redacts_secret (test_telemetry.RedactArgsTests.test_redacts_secret) ... ok\ntest_redacts_token (test_telemetry.RedactArgsTests.test_redacts_token) ... ok\ntest_scenario (test_telemetry.SyntheticFiveTurnScenarioTests.test_scenario) ... ok\ntest_required_fields_present (test_telemetry.TelemetryRecordSchemaTests.test_required_fields_present) ... ok\ntest_to_dict_is_json_serializable (test_telemetry.TelemetryRecordSchemaTests.test_to_dict_is_json_serializable) ... ok\ntest_appends_to_existing_file (test_telemetry.WriteTelemetryJsonlTests.test_appends_to_existing_file) ... ok\ntest_load_roundtrip (test_telemetry.WriteTelemetryJsonlTests.test_load_roundtrip) ... ok\ntest_load_skips_malformed_lines (test_telemetry.WriteTelemetryJsonlTests.test_load_skips_malformed_lines) ... ok\ntest_writes_one_line_per_record (test_telemetry.WriteTelemetryJsonlTests.test_writes_one_line_per_record) ... ok\ntest_base_ref_is_resolved_locally_and_option_like_values_are_rejected (test_test_scope.ChangedFileTests.test_base_ref_is_resolved_locally_and_option_like_values_are_rejected) ... ok\ntest_collects_staged_unstaged_and_untracked_without_a_remote (test_test_scope.ChangedFileTests.test_collects_staged_unstaged_and_untracked_without_a_remote) ... ok\ntest_rejects_absolute_or_parent_traversal_changed_paths (test_test_scope.ChangedFileTests.test_rejects_absolute_or_parent_traversal_changed_paths) ... ok\ntest_direct_json_cannot_disable_the_safe_full_fallback (test_test_scope.PlanTests.test_direct_json_cannot_disable_the_safe_full_fallback) ... ok\ntest_direct_json_cannot_remove_mandatory_full_suite_triggers (test_test_scope.PlanTests.test_direct_json_cannot_remove_mandatory_full_suite_triggers) ... ok\ntest_disabled_or_unavailable_executor_requires_full_verification (test_test_scope.PlanTests.test_disabled_or_unavailable_executor_requires_full_verification) ... ok\ntest_narrow_change_emits_deterministic_ai_collab_requests (test_test_scope.PlanTests.test_narrow_change_emits_deterministic_ai_collab_requests) ... ok\ntest_no_changes_requires_no_verification_unless_release (test_test_scope.PlanTests.test_no_changes_requires_no_verification_unless_release) ... ok\ntest_plan_tells_runtime_to_fallback_on_degraded_or_unmapped_results (test_test_scope.PlanTests.test_plan_tells_runtime_to_fallback_on_degraded_or_unmapped_results) ... ok\ntest_release_core_and_excessive_changes_require_full_verification (test_test_scope.PlanTests.test_release_core_and_excessive_changes_require_full_verification) ... ok\ntest_document_branch_skill_defines_parallel_tracking_profile_everywhere (test_tracking_branch_policy.TrackingBranchPolicyTests.test_document_branch_skill_defines_parallel_tracking_profile_everywhere) ... ok\ntest_every_direct_tracking_writer_is_parallel_worker_aware_everywhere (test_tracking_branch_policy.TrackingBranchPolicyTests.test_every_direct_tracking_writer_is_parallel_worker_aware_everywhere) ... ok\ntest_memory_and_git_skills_keep_workers_off_canonical_state_everywhere (test_tracking_branch_policy.TrackingBranchPolicyTests.test_memory_and_git_skills_keep_workers_off_canonical_state_everywhere) ... ok\ntest_narrative_branch_manifest_template_is_installed (test_tracking_branch_policy.TrackingBranchPolicyTests.test_narrative_branch_manifest_template_is_installed) ... ok\ntest_user_docs_explain_branch_then_promote_workflow (test_tracking_branch_policy.TrackingBranchPolicyTests.test_user_docs_explain_branch_then_promote_workflow) ... ok\ntest_worker_launch_contract_is_shipped_in_the_on_demand_method (test_tracking_branch_policy.TrackingBranchPolicyTests.test_worker_launch_contract_is_shipped_in_the_on_demand_method) ... ok\ntest_empty_repo_safe (test_tracking_commands.PrdStatusTests.test_empty_repo_safe) ... ok\ntest_legacy_and_open_statuses_are_not_hidden (test_tracking_commands.PrdStatusTests.test_legacy_and_open_statuses_are_not_hidden) ... ok\ntest_null_status_and_legacy_health_do_not_break_status (test_tracking_commands.PrdStatusTests.test_null_status_and_legacy_health_do_not_break_status) ... ok\ntest_summarizes_state (test_tracking_commands.PrdStatusTests.test_summarizes_state) ... ok\ntest_tracking_branches_are_visible_without_reading_branch_files (test_tracking_commands.PrdStatusTests.test_tracking_branches_are_visible_without_reading_branch_files) ... ok\ntest_commands_exist_in_all_locations (test_tracking_commands.TrackingCommandFileTests.test_commands_exist_in_all_locations) ... ok\ntest_commands_invoke_the_right_workflow (test_tracking_commands.TrackingCommandFileTests.test_commands_invoke_the_right_workflow) ... ok\ntest_prd_status_is_downstream_runtime (test_tracking_commands.TrackingCommandFileTests.test_prd_status_is_downstream_runtime) ... ok\ntest_catalog_describes_latency_and_effective_dependencies (test_unified_config.CatalogTests.test_catalog_describes_latency_and_effective_dependencies) ... ok\ntest_every_shipped_leaf_is_classified (test_unified_config.CatalogTests.test_every_shipped_leaf_is_classified) ... ok\ntest_inventory_separates_non_persistent_control_planes (test_unified_config.CatalogTests.test_inventory_separates_non_persistent_control_planes) ... ok\ntest_inventory_audit_describe_and_profile_commands_emit_json (test_unified_config.CliTests.test_inventory_audit_describe_and_profile_commands_emit_json) ... ok\ntest_audit_rejects_cli_coercions_in_direct_json (test_unified_config.MutationTests.test_audit_rejects_cli_coercions_in_direct_json) ... ok\ntest_audit_rejects_invalid_custom_profiles_and_active_marker (test_unified_config.MutationTests.test_audit_rejects_invalid_custom_profiles_and_active_marker) ... ok\ntest_audit_reports_scalar_configuration_section_without_crashing (test_unified_config.MutationTests.test_audit_reports_scalar_configuration_section_without_crashing) ... ok\ntest_audit_reports_unknown_and_invalid_values (test_unified_config.MutationTests.test_audit_reports_unknown_and_invalid_values) ... ok\ntest_enable_disable_only_accept_mutable_booleans (test_unified_config.MutationTests.test_enable_disable_only_accept_mutable_booleans) ... ok\ntest_failed_atomic_replace_leaves_original_config_untouched (test_unified_config.MutationTests.test_failed_atomic_replace_leaves_original_config_untouched) ... ok\ntest_malformed_config_is_never_replaced_by_a_mutation (test_unified_config.MutationTests.test_malformed_config_is_never_replaced_by_a_mutation) ... ok\ntest_manual_set_marks_profile_custom_and_preserves_style (test_unified_config.MutationTests.test_manual_set_marks_profile_custom_and_preserves_style) ... ok\ntest_scalar_parent_is_not_clobbered_by_nested_set (test_unified_config.MutationTests.test_scalar_parent_is_not_clobbered_by_nested_set) ... ok\ntest_builtin_profile_dry_run_then_atomic_apply (test_unified_config.ProfileTests.test_builtin_profile_dry_run_then_atomic_apply) ... ok\ntest_invalid_custom_profile_never_partially_writes (test_unified_config.ProfileTests.test_invalid_custom_profile_never_partially_writes) ... ok\ntest_save_show_diff_and_delete_custom_profile (test_unified_config.ProfileTests.test_save_show_diff_and_delete_custom_profile) ... ok\ntest_does_not_flag_canonical_prd_state_paths (test_unsubmitted_plugin_request.UnsubmittedPluginRequestTests.test_does_not_flag_canonical_prd_state_paths) ... ok\ntest_does_not_flag_ordinary_project_requests (test_unsubmitted_plugin_request.UnsubmittedPluginRequestTests.test_does_not_flag_ordinary_project_requests) ... ok\ntest_does_not_flag_rejected_requests (test_unsubmitted_plugin_request.UnsubmittedPluginRequestTests.test_does_not_flag_rejected_requests) ... ok\ntest_does_not_flag_when_already_marked_upstream (test_unsubmitted_plugin_request.UnsubmittedPluginRequestTests.test_does_not_flag_when_already_marked_upstream) ... ok\ntest_flags_a_local_request_about_a_plugin_script (test_unsubmitted_plugin_request.UnsubmittedPluginRequestTests.test_flags_a_local_request_about_a_plugin_script) ... ok\ntest_flags_a_request_that_names_itself_upstream (test_unsubmitted_plugin_request.UnsubmittedPluginRequestTests.test_flags_a_request_that_names_itself_upstream) ... ok\ntest_never_fires_in_the_hub_repo_itself (test_unsubmitted_plugin_request.UnsubmittedPluginRequestTests.test_never_fires_in_the_hub_repo_itself) ... ok\ntest_wired_into_run_checks (test_unsubmitted_plugin_request.UnsubmittedPluginRequestTests.test_wired_into_run_checks) ... ok\ntest_appends_version_change_request (test_version_advice.VersionAdviceTests.test_appends_version_change_request) ... ok\ntest_builds_safe_update_advice_for_low_risk_releases (test_version_advice.VersionAdviceTests.test_builds_safe_update_advice_for_low_risk_releases) ... ok\ntest_cli_uses_hub_releases_when_downstream_repo_has_no_releases_file (test_version_advice.VersionAdviceTests.test_cli_uses_hub_releases_when_downstream_repo_has_no_releases_file) ... ok\ntest_detects_installed_version_from_bom_json (test_version_advice.VersionAdviceTests.test_detects_installed_version_from_bom_json) ... ok\ntest_detects_installed_version_from_opencode_plugin_manifest (test_version_advice.VersionAdviceTests.test_detects_installed_version_from_opencode_plugin_manifest) ... ok\ntest_detects_installed_version_from_prd_plugin_config (test_version_advice.VersionAdviceTests.test_detects_installed_version_from_prd_plugin_config) ... ok\ntest_detects_latest_version_from_plugin_manifest (test_version_advice.VersionAdviceTests.test_detects_latest_version_from_plugin_manifest) ... ok\ntest_installed_version_priority_prefers_config_then_codex_then_opencode (test_version_advice.VersionAdviceTests.test_installed_version_priority_prefers_config_then_codex_then_opencode) ... ok\ntest_orders_prerelease_before_final_release (test_version_advice.VersionAdviceTests.test_orders_prerelease_before_final_release) ... ok\ntest_recommends_review_first_for_medium_or_high_risk_release (test_version_advice.VersionAdviceTests.test_recommends_review_first_for_medium_or_high_risk_release) ... ok\ntest_disabled_returns_disabled_and_no_fetch (test_version_check.CheckTests.test_disabled_returns_disabled_and_no_fetch) ... ok\ntest_force_refetches_within_ttl (test_version_check.CheckTests.test_force_refetches_within_ttl) ... ok\ntest_network_failure_is_fail_open (test_version_check.CheckTests.test_network_failure_is_fail_open) ... ok\ntest_no_update_when_current (test_version_check.CheckTests.test_no_update_when_current) ... ok\ntest_status_is_cache_only_no_fetch (test_version_check.CheckTests.test_status_is_cache_only_no_fetch) ... ok\ntest_ttl_cache_avoids_refetch (test_version_check.CheckTests.test_ttl_cache_avoids_refetch) ... ok\ntest_ttl_expiry_refetches (test_version_check.CheckTests.test_ttl_expiry_refetches) ... ok\ntest_update_available_when_npm_is_ahead (test_version_check.CheckTests.test_update_available_when_npm_is_ahead) ... ok\ntest_status_cli_exits_zero (test_version_check.CliTests.test_status_cli_exits_zero) ... ok\ntest_default_ttl_is_responsive_not_a_day (test_version_check.FreshnessTests.test_default_ttl_is_responsive_not_a_day) ... ok\ntest_fetch_latest_accepts_a_timeout (test_version_check.FreshnessTests.test_fetch_latest_accepts_a_timeout) ... ok\ntest_nudge_refreshes_in_session_not_cache_only (test_version_check.FreshnessTests.test_nudge_refreshes_in_session_not_cache_only) ... ok\ntest_registry_default_ttl_matches (test_version_check.FreshnessTests.test_registry_default_ttl_matches) ... ok\ntest_semver_ordering (test_version_check.ParseTests.test_semver_ordering) ... ok\ntest_set_enabled_writes_config (test_version_check.ToggleTests.test_set_enabled_writes_config) ... ok\ntest_config_has_version_check_default_on (test_version_check.WiringTests.test_config_has_version_check_default_on) ... ok\ntest_nudge_surfaces_update_available (test_version_check.WiringTests.test_nudge_surfaces_update_available) ... ok\ntest_prd_version_command_exists (test_version_check.WiringTests.test_prd_version_command_exists) ... ok\ntest_script_registered_downstream (test_version_check.WiringTests.test_script_registered_downstream) ... ok\ntest_plan_cli_emits_json (test_wiki_backfill.CliTests.test_plan_cli_emits_json) ... ok\ntest_status_cli (test_wiki_backfill.CliTests.test_status_cli) ... ok\ntest_marker_written_for_established_repo_gaining_wiki (test_wiki_backfill.InstallerMarkerTests.test_marker_written_for_established_repo_gaining_wiki) ... ok\ntest_no_marker_for_empty_scaffold (test_wiki_backfill.InstallerMarkerTests.test_no_marker_for_empty_scaffold) ... ok\ntest_no_marker_when_wiki_already_exists (test_wiki_backfill.InstallerMarkerTests.test_no_marker_when_wiki_already_exists) ... ok\ntest_no_marker_when_wiki_disabled (test_wiki_backfill.InstallerMarkerTests.test_no_marker_when_wiki_disabled) ... ok\ntest_pending_false_when_absent (test_wiki_backfill.StatusTests.test_pending_false_when_absent) ... ok\ntest_pending_false_when_wiki_already_exists (test_wiki_backfill.StatusTests.test_pending_false_when_wiki_already_exists) ... ok\ntest_pending_true_when_marker_present (test_wiki_backfill.StatusTests.test_pending_true_when_marker_present) ... ok\ntest_plan_excludes_generated_report_artifacts (test_wiki_backfill.SurveyPlanTests.test_plan_excludes_generated_report_artifacts)\nrequest-report/ (incl. its calibration report trees) and docs/evidence/ ... ok\ntest_plan_excludes_plugin_and_vendor_noise (test_wiki_backfill.SurveyPlanTests.test_plan_excludes_plugin_and_vendor_noise) ... ok\ntest_plan_inventories_code_docs_and_state (test_wiki_backfill.SurveyPlanTests.test_plan_inventories_code_docs_and_state) ... ok\ntest_plan_is_read_only (test_wiki_backfill.SurveyPlanTests.test_plan_is_read_only) ... ok\ntest_wiki_drift_in_on_stop_and_default_sets (test_wiki_backfill.WikiDriftMonitorWiringTests.test_wiki_drift_in_on_stop_and_default_sets) ... ok\ntest_current_article_no_drift (test_wiki_backfill.WikiDriftTests.test_current_article_no_drift) ... ok\ntest_drift_cli (test_wiki_backfill.WikiDriftTests.test_drift_cli) ... ok\ntest_far_behind_article_flagged (test_wiki_backfill.WikiDriftTests.test_far_behind_article_flagged) ... ok\ntest_no_wiki_is_ok (test_wiki_backfill.WikiDriftTests.test_no_wiki_is_ok) ... ok\ntest_unstamped_article_flagged (test_wiki_backfill.WikiDriftTests.test_unstamped_article_flagged) ... ok\ntest_nudge_surfaces_pending_backfill (test_wiki_backfill.WiringTests.test_nudge_surfaces_pending_backfill) ... ok\ntest_script_registered_downstream (test_wiki_backfill.WiringTests.test_script_registered_downstream) ... ok\ntest_skill_has_backfill_mode (test_wiki_backfill.WiringTests.test_skill_has_backfill_mode) ... ok\ntest_no_cp1252_unencodable_chars_in_agent_facing_tools (test_windows_console_safe.SourceScanTests.test_no_cp1252_unencodable_chars_in_agent_facing_tools) ... ok\ntest_backfill_pending_status_renders_cp1252_safe (test_windows_console_safe.StatusRenderTests.test_backfill_pending_status_renders_cp1252_safe) ... ok\ntest_repository_workflow_surfaces_are_chml_zero (test_workflow_chml_audit.WorkflowChmlAuditTests.test_repository_workflow_surfaces_are_chml_zero) ... ok\ntest_semantic_skill_finding_is_part_of_workflow_chml (test_workflow_chml_audit.WorkflowChmlAuditTests.test_semantic_skill_finding_is_part_of_workflow_chml) ... ok\ntest_git_workflow_defers_autonomy_to_decision_policy_but_keeps_floor (test_workflow_consistency.AutonomyConflictResolutionTests.test_git_workflow_defers_autonomy_to_decision_policy_but_keeps_floor) ... ok\ntest_request_intake_defers_autonomy_and_owns_graduation (test_workflow_consistency.AutonomyConflictResolutionTests.test_request_intake_defers_autonomy_and_owns_graduation) ... ok\ntest_evidence_pair_states_create_vs_review_boundary (test_workflow_consistency.BoundaryClarityTests.test_evidence_pair_states_create_vs_review_boundary) ... ok\ntest_session_close_states_memory_boundary (test_workflow_consistency.BoundaryClarityTests.test_session_close_states_memory_boundary) ... ok\ntest_document_branch_has_promotion_owner (test_workflow_consistency.DeadEndOwnerTests.test_document_branch_has_promotion_owner) ... ok\ntest_health_findings_have_triage_dispositions (test_workflow_consistency.DeadEndOwnerTests.test_health_findings_have_triage_dispositions) ... ok\ntest_memory_owns_schema_version_changes (test_workflow_consistency.DeadEndOwnerTests.test_memory_owns_schema_version_changes) ... ok\ntest_planning_lifecycle_has_stage_readiness_checkpoints (test_workflow_consistency.DeadEndOwnerTests.test_planning_lifecycle_has_stage_readiness_checkpoints) ... ok\ntest_session_close_runs_traceability_sync (test_workflow_consistency.DeadEndOwnerTests.test_session_close_runs_traceability_sync) ... ok\n\n----------------------------------------------------------------------\nRan 803 tests in 52.647s\n\nOK\n"
          },
          "output_hash": "0662318affe0393274d33a440bf29798251112f82373604fd84f2967d0b4992b",
          "completed_at": "2026-07-15T03:14:37Z"
        },
        {
          "id": "release",
          "action": "process.fixed",
          "status": "completed",
          "resolved_input_hash": "1e5b0c18d93eb4c2248f9a00adbd438e52f3ef02137477fb8376c69cfe86fc9b",
          "started_at": "2026-07-15T03:14:37Z",
          "output": {
            "operation": "release_check",
            "command": [
              "python",
              "scripts/release_check.py"
            ],
            "exit_code": 0,
            "stdout": "# Release Hygiene Report\n\nBase version: `0.15.3`\nHead version: `0.15.4`\nChanged files checked: 3\n\n## Findings\n\n- None\n",
            "stderr": ""
          },
          "output_hash": "927d97010fe116f82ad0bc7e12e79b14e517327b0475011d37c5c0eef01bfb7d",
          "completed_at": "2026-07-15T03:14:37Z"
        },
        {
          "id": "gaps",
          "action": "process.fixed",
          "status": "completed",
          "resolved_input_hash": "577241909238eeb55683f89d2d2216648dad2e3127397993e22493829a1307a4",
          "started_at": "2026-07-15T03:14:37Z",
          "output": {
            "operation": "gap_audit",
            "command": [
              "python",
              "scripts/gap_audit.py",
              "--target-version",
              "0.15.4",
              "--config",
              ".prd_plugin/config.json",
              "--releases",
              ".prd_plugin/state/releases.json"
            ],
            "exit_code": 0,
            "stdout": "# PRD Plugin Gap Audit\n\nTarget version: `0.15.4`\n\n## Findings\n\n- None\n",
            "stderr": ""
          },
          "output_hash": "577c15b166f233e4150b6d7a2d39add52f275508c9af8629e984c764e795999b",
          "completed_at": "2026-07-15T03:14:37Z"
        },
        {
          "id": "package",
          "action": "process.fixed",
          "status": "completed",
          "resolved_input_hash": "06cd12e1f3db3d985f9150520afa60f288297ff0ca01a8e813e9bb6291aa8836",
          "started_at": "2026-07-15T03:14:37Z",
          "output": {
            "operation": "package_check",
            "command": [
              "npm",
              "pack",
              "--dry-run"
            ],
            "exit_code": 0,
            "stdout": "prd-plugin-0.15.4.tgz\n",
            "stderr": "s/state_consistency_check.py\nnpm notice 5.8kB scripts/traceability_sync_auto.py\nnpm notice 12.5kB scripts/version_advice.py\nnpm notice 9.6kB scripts/workflow_chml_audit.py\nnpm notice 3.0kB skills/project-architecture/SKILL.md\nnpm notice 7.4kB skills/project-blocker-resolution/SKILL.md\nnpm notice 2.8kB skills/project-brainstorm/SKILL.md\nnpm notice 5.5kB skills/project-change-request/SKILL.md\nnpm notice 6.3kB skills/project-code-review/SKILL.md\nnpm notice 2.7kB skills/project-decision-ledger/SKILL.md\nnpm notice 18.1kB skills/project-decision-policy/SKILL.md\nnpm notice 3.8kB skills/project-deterministic-workflows/SKILL.md\nnpm notice 5.2kB skills/project-document-branch/SKILL.md\nnpm notice 2.8kB skills/project-evidence-ledger/SKILL.md\nnpm notice 3.3kB skills/project-evidence/SKILL.md\nnpm notice 8.9kB skills/project-fold-it-in/SKILL.md\nnpm notice 11.5kB skills/project-git-workflow/SKILL.md\nnpm notice 7.4kB skills/project-health/SKILL.md\nnpm notice 5.6kB skills/project-implementation-plan/SKILL.md\nnpm notice 1.1kB skills/project-llm-wiki/LICENSE\nnpm notice 842B skills/project-llm-wiki/references/archive-template.md\nnpm notice 843B skills/project-llm-wiki/references/article-template.md\nnpm notice 559B skills/project-llm-wiki/references/index-template.md\nnpm notice 317B skills/project-llm-wiki/references/raw-template.md\nnpm notice 15.0kB skills/project-llm-wiki/SKILL.md\nnpm notice 7.4kB skills/project-local-integration/SKILL.md\nnpm notice 8.1kB skills/project-memory/SKILL.md\nnpm notice 5.8kB skills/project-planning-lifecycle/SKILL.md\nnpm notice 5.0kB skills/project-prd-plugin-setup/SKILL.md\nnpm notice 3.5kB skills/project-prd/SKILL.md\nnpm notice 22.1kB skills/project-request-intake/SKILL.md\nnpm notice 5.6kB skills/project-self-audit/SKILL.md\nnpm notice 4.7kB skills/project-session-close/SKILL.md\nnpm notice 3.7kB skills/project-systematic-debugging/SKILL.md\nnpm notice 3.0kB skills/project-test-driven-implementation/SKILL.md\nnpm notice 3.7kB skills/project-traceability-review/SKILL.md\nnpm notice 2.5kB skills/project-traceability-sync/SKILL.md\nnpm notice 5.1kB skills/project-verification-before-completion/SKILL.md\nnpm notice 167B templates/architecture-delta.md\nnpm notice 1.4kB templates/architecture.json\nnpm notice 368B templates/brainstorm.md\nnpm notice 274B templates/changelog.json\nnpm notice 12.9kB templates/config.json\nnpm notice 265B templates/decision-record.md\nnpm notice 398B templates/decisions.json\nnpm notice 372B templates/doc-branch.json\nnpm notice 313B templates/doc-branch.md\nnpm notice 115B templates/evidence.md\nnpm notice 11.8kB templates/feature-skill-map.json\nnpm notice 249B templates/handoff.json\nnpm notice 407B templates/health.json\nnpm notice 695B templates/human-exports/architecture.md\nnpm notice 626B templates/human-exports/implementation-plan.md\nnpm notice 580B templates/human-exports/prd.md\nnpm notice 1.4kB templates/implementation-plan.json\nnpm notice 65B templates/mailbox.json\nnpm notice 348B templates/memory.json\nnpm notice 471B templates/merge-checklist.md\nnpm notice 163B templates/plan-delta.md\nnpm notice 139B templates/prd-delta.md\nnpm notice 1.3kB templates/prd.json\nnpm notice 454B templates/project.json\nnpm notice 125B templates/promoted-session-summary.jsonl\nnpm notice 159.2kB templates/releases.json\nnpm notice 3.0kB templates/repo-skeleton/.agents/skills/project-architecture/SKILL.md\nnpm notice 7.4kB templates/repo-skeleton/.agents/skills/project-blocker-resolution/SKILL.md\nnpm notice 2.8kB templates/repo-skeleton/.agents/skills/project-brainstorm/SKILL.md\nnpm notice 5.5kB templates/repo-skeleton/.agents/skills/project-change-request/SKILL.md\nnpm notice 6.3kB templates/repo-skeleton/.agents/skills/project-code-review/SKILL.md\nnpm notice 2.7kB templates/repo-skeleton/.agents/skills/project-decision-ledger/SKILL.md\nnpm notice 18.1kB templates/repo-skeleton/.agents/skills/project-decision-policy/SKILL.md\nnpm notice 3.8kB templates/repo-skeleton/.agents/skills/project-deterministic-workflows/SKILL.md\nnpm notice 5.2kB templates/repo-skeleton/.agents/skills/project-document-branch/SKILL.md\nnpm notice 2.8kB templates/repo-skeleton/.agents/skills/project-evidence-ledger/SKILL.md\nnpm notice 3.3kB templates/repo-skeleton/.agents/skills/project-evidence/SKILL.md\nnpm notice 11.4kB templates/repo-skeleton/.agents/skills/project-git-workflow/SKILL.md\nnpm notice 7.4kB templates/repo-skeleton/.agents/skills/project-health/SKILL.md\nnpm notice 5.6kB templates/repo-skeleton/.agents/skills/project-implementation-plan/SKILL.md\nnpm notice 1.1kB templates/repo-skeleton/.agents/skills/project-llm-wiki/LICENSE\nnpm notice 842B templates/repo-skeleton/.agents/skills/project-llm-wiki/references/archive-template.md\nnpm notice 843B templates/repo-skeleton/.agents/skills/project-llm-wiki/references/article-template.md\nnpm notice 559B templates/repo-skeleton/.agents/skills/project-llm-wiki/references/index-template.md\nnpm notice 317B templates/repo-skeleton/.agents/skills/project-llm-wiki/references/raw-template.md\nnpm notice 15.0kB templates/repo-skeleton/.agents/skills/project-llm-wiki/SKILL.md\nnpm notice 7.4kB templates/repo-skeleton/.agents/skills/project-local-integration/SKILL.md\nnpm notice 8.1kB templates/repo-skeleton/.agents/skills/project-memory/SKILL.md\nnpm notice 5.8kB templates/repo-skeleton/.agents/skills/project-planning-lifecycle/SKILL.md\nnpm notice 5.0kB templates/repo-skeleton/.agents/skills/project-prd-plugin-setup/SKILL.md\nnpm notice 3.5kB templates/repo-skeleton/.agents/skills/project-prd/SKILL.md\nnpm notice 22.1kB templates/repo-skeleton/.agents/skills/project-request-intake/SKILL.md\nnpm notice 4.7kB templates/repo-skeleton/.agents/skills/project-session-close/SKILL.md\nnpm notice 3.7kB templates/repo-skeleton/.agents/skills/project-systematic-debugging/SKILL.md\nnpm notice 3.0kB templates/repo-skeleton/.agents/skills/project-test-driven-implementation/SKILL.md\nnpm notice 3.7kB templates/repo-skeleton/.agents/skills/project-traceability-review/SKILL.md\nnpm notice 2.5kB templates/repo-skeleton/.agents/skills/project-traceability-sync/SKILL.md\nnpm notice 5.0kB templates/repo-skeleton/.agents/skills/project-verification-before-completion/SKILL.md\nnpm notice 871B templates/repo-skeleton/.claude-plugin/plugin.json\nnpm notice 772B templates/repo-skeleton/.claude/commands/prd-autonomy.md\nnpm notice 493B templates/repo-skeleton/.claude/commands/prd-close.md\nnpm notice 2.0kB templates/repo-skeleton/.claude/commands/prd-config.md\nnpm notice 1.6kB templates/repo-skeleton/.claude/commands/prd-drift.md\nnpm notice 1.4kB templates/repo-skeleton/.claude/commands/prd-graph.md\nnpm notice 1.6kB templates/repo-skeleton/.claude/commands/prd-hooks.md\nnpm notice 639B templates/repo-skeleton/.claude/commands/prd-new.md\nnpm notice 1.6kB templates/repo-skeleton/.claude/commands/prd-reflections.md\nnpm notice 1.8kB templates/repo-skeleton/.claude/commands/prd-report.md\nnpm notice 549B templates/repo-skeleton/.claude/commands/prd-status.md\nnpm notice 974B templates/repo-skeleton/.claude/commands/prd-track.md\nnpm notice 1.0kB templates/repo-skeleton/.claude/commands/prd-version.md\nnpm notice 938B templates/repo-skeleton/.claude/commands/prd-workflow.md\nnpm notice 1.6kB templates/repo-skeleton/.claude/hooks/prd_drift_check.py\nnpm notice 2.0kB templates/repo-skeleton/.claude/hooks/prd_log_skill.py\nnpm notice 4.1kB templates/repo-skeleton/.claude/hooks/prd_nudge.py\nnpm notice 3.7kB templates/repo-skeleton/.claude/hooks/prd_precommit_gate.py\nnpm notice 6.1kB templates/repo-skeleton/.claude/hooks/prd_reflection.py\nnpm notice 3.5kB templates/repo-skeleton/.claude/hooks/prd_session_report.py\nnpm notice 9.8kB templates/repo-skeleton/.claude/hooks/prd_stop_guard.py\nnpm notice 1.3kB templates/repo-skeleton/.claude/settings.json\nnpm notice 3.0kB templates/repo-skeleton/.claude/skills/project-architecture/SKILL.md\nnpm notice 7.4kB templates/repo-skeleton/.claude/skills/project-blocker-resolution/SKILL.md\nnpm notice 2.8kB templates/repo-skeleton/.claude/skills/project-brainstorm/SKILL.md\nnpm notice 5.5kB templates/repo-skeleton/.claude/skills/project-change-request/SKILL.md\nnpm notice 6.3kB templates/repo-skeleton/.claude/skills/project-code-review/SKILL.md\nnpm notice 2.7kB templates/repo-skeleton/.claude/skills/project-decision-ledger/SKILL.md\nnpm notice 18.1kB templates/repo-skeleton/.claude/skills/project-decision-policy/SKILL.md\nnpm notice 3.8kB templates/repo-skeleton/.claude/skills/project-deterministic-workflows/SKILL.md\nnpm notice 5.2kB templates/repo-skeleton/.claude/skills/project-document-branch/SKILL.md\nnpm notice 2.8kB templates/repo-skeleton/.claude/skills/project-evidence-ledger/SKILL.md\nnpm notice 3.3kB templates/repo-skeleton/.claude/skills/project-evidence/SKILL.md\nnpm notice 11.4kB templates/repo-skeleton/.claude/skills/project-git-workflow/SKILL.md\nnpm notice 7.4kB templates/repo-skeleton/.claude/skills/project-health/SKILL.md\nnpm notice 5.6kB templates/repo-skeleton/.claude/skills/project-implementation-plan/SKILL.md\nnpm notice 1.1kB templates/repo-skeleton/.claude/skills/project-llm-wiki/LICENSE\nnpm notice 842B templates/repo-skeleton/.claude/skills/project-llm-wiki/references/archive-template.md\nnpm notice 843B templates/repo-skeleton/.claude/skills/project-llm-wiki/references/article-template.md\nnpm notice 559B templates/repo-skeleton/.claude/skills/project-llm-wiki/references/index-template.md\nnpm notice 317B templates/repo-skeleton/.claude/skills/project-llm-wiki/references/raw-template.md\nnpm notice 15.0kB templates/repo-skeleton/.claude/skills/project-llm-wiki/SKILL.md\nnpm notice 7.4kB templates/repo-skeleton/.claude/skills/project-local-integration/SKILL.md\nnpm notice 8.1kB templates/repo-skeleton/.claude/skills/project-memory/SKILL.md\nnpm notice 5.8kB templates/repo-skeleton/.claude/skills/project-planning-lifecycle/SKILL.md\nnpm notice 5.0kB templates/repo-skeleton/.claude/skills/project-prd-plugin-setup/SKILL.md\nnpm notice 3.5kB templates/repo-skeleton/.claude/skills/project-prd/SKILL.md\nnpm notice 22.1kB templates/repo-skeleton/.claude/skills/project-request-intake/SKILL.md\nnpm notice 4.7kB templates/repo-skeleton/.claude/skills/project-session-close/SKILL.md\nnpm notice 3.7kB templates/repo-skeleton/.claude/skills/project-systematic-debugging/SKILL.md\nnpm notice 3.0kB templates/repo-skeleton/.claude/skills/project-test-driven-implementation/SKILL.md\nnpm notice 3.7kB templates/repo-skeleton/.claude/skills/project-traceability-review/SKILL.md\nnpm notice 2.5kB templates/repo-skeleton/.claude/skills/project-traceability-sync/SKILL.md\nnpm notice 5.0kB templates/repo-skeleton/.claude/skills/project-verification-before-completion/SKILL.md\nnpm notice 3.1kB templates/repo-skeleton/.codex-plugin/plugin.json\nnpm notice 2.8kB templates/repo-skeleton/.codex/hooks.json\nnpm notice 743B templates/repo-skeleton/.githooks/pre-commit\nnpm notice 734B templates/repo-skeleton/.github/workflows/prd-gate.yml\nnpm notice 3.1kB templates/repo-skeleton/.opencode/plugin.json\nnpm notice 3.3kB templates/repo-skeleton/.opencode/plugins/prd-hooks.js\nnpm notice 3.0kB templates/repo-skeleton/.opencode/skill/project-architecture/SKILL.md\nnpm notice 7.4kB templates/repo-skeleton/.opencode/skill/project-blocker-resolution/SKILL.md\nnpm notice 2.8kB templates/repo-skeleton/.opencode/skill/project-brainstorm/SKILL.md\nnpm notice 5.5kB templates/repo-skeleton/.opencode/skill/project-change-request/SKILL.md\nnpm notice 6.3kB templates/repo-skeleton/.opencode/skill/project-code-review/SKILL.md\nnpm notice 2.7kB templates/repo-skeleton/.opencode/skill/project-decision-ledger/SKILL.md\nnpm notice 18.1kB templates/repo-skeleton/.opencode/skill/project-decision-policy/SKILL.md\nnpm notice 3.8kB templates/repo-skeleton/.opencode/skill/project-deterministic-workflows/SKILL.md\nnpm notice 5.2kB templates/repo-skeleton/.opencode/skill/project-document-branch/SKILL.md\nnpm notice 2.8kB templates/repo-skeleton/.opencode/skill/project-evidence-ledger/SKILL.md\nnpm notice 3.3kB templates/repo-skeleton/.opencode/skill/project-evidence/SKILL.md\nnpm notice 11.4kB templates/repo-skeleton/.opencode/skill/project-git-workflow/SKILL.md\nnpm notice 7.4kB templates/repo-skeleton/.opencode/skill/project-health/SKILL.md\nnpm notice 5.6kB templates/repo-skeleton/.opencode/skill/project-implementation-plan/SKILL.md\nnpm notice 1.1kB templates/repo-skeleton/.opencode/skill/project-llm-wiki/LICENSE\nnpm notice 842B templates/repo-skeleton/.opencode/skill/project-llm-wiki/references/archive-template.md\nnpm notice 843B templates/repo-skeleton/.opencode/skill/project-llm-wiki/references/article-template.md\nnpm notice 559B templates/repo-skeleton/.opencode/skill/project-llm-wiki/references/index-template.md\nnpm notice 317B templates/repo-skeleton/.opencode/skill/project-llm-wiki/references/raw-template.md\nnpm notice 15.0kB templates/repo-skeleton/.opencode/skill/project-llm-wiki/SKILL.md\nnpm notice 7.4kB templates/repo-skeleton/.opencode/skill/project-local-integration/SKILL.md\nnpm notice 8.1kB templates/repo-skeleton/.opencode/skill/project-memory/SKILL.md\nnpm notice 5.8kB templates/repo-skeleton/.opencode/skill/project-planning-lifecycle/SKILL.md\nnpm notice 5.0kB templates/repo-skeleton/.opencode/skill/project-prd-plugin-setup/SKILL.md\nnpm notice 3.5kB templates/repo-skeleton/.opencode/skill/project-prd/SKILL.md\nnpm notice 22.1kB templates/repo-skeleton/.opencode/skill/project-request-intake/SKILL.md\nnpm notice 4.7kB templates/repo-skeleton/.opencode/skill/project-session-close/SKILL.md\nnpm notice 3.7kB templates/repo-skeleton/.opencode/skill/project-systematic-debugging/SKILL.md\nnpm notice 3.0kB templates/repo-skeleton/.opencode/skill/project-test-driven-implementation/SKILL.md\nnpm notice 3.7kB templates/repo-skeleton/.opencode/skill/project-traceability-review/SKILL.md\nnpm notice 2.5kB templates/repo-skeleton/.opencode/skill/project-traceability-sync/SKILL.md\nnpm notice 5.0kB templates/repo-skeleton/.opencode/skill/project-verification-before-completion/SKILL.md\nnpm notice 12.7kB templates/repo-skeleton/.prd_plugin/config.json\nnpm notice 1.6kB templates/repo-skeleton/.prd_plugin/hooks/prd_drift_check.py\nnpm notice 9.2kB templates/repo-skeleton/.prd_plugin/hooks/prd_hook_dispatch.py\nnpm notice 2.0kB templates/repo-skeleton/.prd_plugin/hooks/prd_log_skill.py\nnpm notice 4.1kB templates/repo-skeleton/.prd_plugin/hooks/prd_nudge.py\nnpm notice 3.7kB templates/repo-skeleton/.prd_plugin/hooks/prd_precommit_gate.py\nnpm notice 6.1kB templates/repo-skeleton/.prd_plugin/hooks/prd_reflection.py\nnpm notice 3.5kB templates/repo-skeleton/.prd_plugin/hooks/prd_session_report.py\nnpm notice 9.8kB templates/repo-skeleton/.prd_plugin/hooks/prd_stop_guard.py\nnpm notice 3.7kB templates/repo-skeleton/.prd_plugin/ID-SCHEME.md\nnpm notice 581B templates/repo-skeleton/.prd_plugin/ids/registry.json\nnpm notice 12.6kB templates/repo-skeleton/.prd_plugin/METHOD.md\nnpm notice 725B templates/repo-skeleton/.prd_plugin/method/artifact-format.md\nnpm notice 820B templates/repo-skeleton/.prd_plugin/method/completion-gate.md\nnpm notice 3.6kB templates/repo-skeleton/.prd_plugin/method/deterministic-workflows.md\nnpm notice 1.2kB templates/repo-skeleton/.prd_plugin/method/estimation.md\nnpm notice 1.9kB templates/repo-skeleton/.prd_plugin/method/grounding.md\nnpm notice 2.5kB templates/repo-skeleton/.prd_plugin/method/reporting.md\nnpm notice 4.1kB templates/repo-skeleton/.prd_plugin/method/self-service.md\nnpm notice 1.6kB templates/repo-skeleton/.prd_plugin/method/staleness-rules.md\nnpm notice 1.0kB templates/repo-skeleton/.prd_plugin/method/state-validation.md\nnpm notice 2.9kB templates/repo-skeleton/.prd_plugin/method/subagents.md\nnpm notice 47B templates/repo-skeleton/.prd_plugin/state/changelog.json\nnpm notice 49B templates/repo-skeleton/.prd_plugin/state/decisions.json\nnpm notice 157B templates/repo-skeleton/.prd_plugin/state/health.json\nnpm notice 47B templates/repo-skeleton/.prd_plugin/state/memory.json\nnpm notice 286B templates/repo-skeleton/.prd_plugin/state/project.json\nnpm notice 48B templates/repo-skeleton/.prd_plugin/state/releases.json\nnpm notice 48B templates/repo-skeleton/.prd_plugin/state/requests.json\nnpm notice 214B templates/repo-skeleton/.prd_plugin/state/sessions/shared/promoted-session-summaries.jsonl\nnpm notice 51B templates/repo-skeleton/.prd_plugin/state/tracking.json\nnpm notice 48B templates/repo-skeleton/.prd_plugin/state/workflow-runs.json\nnpm notice 167B templates/repo-skeleton/.prd_plugin/templates/architecture-delta.md\nnpm notice 1.4kB templates/repo-skeleton/.prd_plugin/templates/architecture.json\nnpm notice 368B templates/repo-skeleton/.prd_plugin/templates/brainstorm.md\nnpm notice 274B templates/repo-skeleton/.prd_plugin/templates/changelog.json\nnpm notice 12.9kB templates/repo-skeleton/.prd_plugin/templates/config.json\nnpm notice 265B templates/repo-skeleton/.prd_plugin/templates/decision-record.md\nnpm notice 398B templates/repo-skeleton/.prd_plugin/templates/decisions.json\nnpm notice 372B templates/repo-skeleton/.prd_plugin/templates/doc-branch.json\nnpm notice 313B templates/repo-skeleton/.prd_plugin/templates/doc-branch.md\nnpm notice 115B templates/repo-skeleton/.prd_plugin/templates/evidence.md\nnpm notice 249B templates/repo-skeleton/.prd_plugin/templates/handoff.json\nnpm notice 407B templates/repo-skeleton/.prd_plugin/templates/health.json\nnpm notice 695B templates/repo-skeleton/.prd_plugin/templates/human-exports/architecture.md\nnpm notice 626B templates/repo-skeleton/.prd_plugin/templates/human-exports/implementation-plan.md\nnpm notice 580B templates/repo-skeleton/.prd_plugin/templates/human-exports/prd.md\nnpm notice 1.4kB templates/repo-skeleton/.prd_plugin/templates/implementation-plan.json\nnpm notice 65B templates/repo-skeleton/.prd_plugin/templates/mailbox.json\nnpm notice 348B templates/repo-skeleton/.prd_plugin/templates/memory.json\nnpm notice 471B templates/repo-skeleton/.prd_plugin/templates/merge-checklist.md\nnpm notice 163B templates/repo-skeleton/.prd_plugin/templates/plan-delta.md\nnpm notice 139B templates/repo-skeleton/.prd_plugin/templates/prd-delta.md\nnpm notice 1.3kB templates/repo-skeleton/.prd_plugin/templates/prd.json\nnpm notice 454B templates/repo-skeleton/.prd_plugin/templates/project.json\nnpm notice 125B templates/repo-skeleton/.prd_plugin/templates/promoted-session-summary.jsonl\nnpm notice 923B templates/repo-skeleton/.prd_plugin/templates/releases.json\nnpm notice 1.4kB templates/repo-skeleton/.prd_plugin/templates/request.json\nnpm notice 1.7kB templates/repo-skeleton/.prd_plugin/templates/requests.json\nnpm notice 17.5kB templates/repo-skeleton/.prd_plugin/templates/script-install-scope.json\nnpm notice 235B templates/repo-skeleton/.prd_plugin/templates/session.json\nnpm notice 10.6kB templates/repo-skeleton/.prd_plugin/templates/skill-install-scope.json\nnpm notice 317B templates/repo-skeleton/.prd_plugin/templates/submission-package.json\nnpm notice 225B templates/repo-skeleton/.prd_plugin/templates/traceability-matrix.md\nnpm notice 321B templates/repo-skeleton/.prd_plugin/templates/tracking.json\nnpm notice 12.0kB templates/repo-skeleton/.prd_plugin/workflows.json\nnpm notice 10.9kB templates/repo-skeleton/AGENTS.md\nnpm notice 7.3kB templates/repo-skeleton/CLAUDE.md\nnpm notice 11.8kB templates/repo-skeleton/docs/INSTALL-MATRIX.md\nnpm notice 1.4kB templates/request.json\nnpm notice 1.7kB templates/requests.json\nnpm notice 17.5kB templates/script-install-scope.json\nnpm notice 235B templates/session.json\nnpm notice 10.6kB templates/skill-install-scope.json\nnpm notice 317B templates/submission-package.json\nnpm notice 225B templates/traceability-matrix.md\nnpm notice 321B templates/tracking.json\nnpm notice 12.0kB templates/workflows.json\nnpm notice Tarball Details\nnpm notice name: prd-plugin\nnpm notice version: 0.15.4\nnpm notice filename: prd-plugin-0.15.4.tgz\nnpm notice package size: 939.5 kB\nnpm notice unpacked size: 3.9 MB\nnpm notice shasum: 12dc1d050b071e5363c2779c2c478b94817fa7ec\nnpm notice integrity: sha512-cy4vXod6J6lFP[...]k7PPHOC/tAssw==\nnpm notice total files: 478\nnpm notice\n"
          },
          "output_hash": "1e89ba4bd6e34630abac39c75edf4e0498531b7415eaabd1537f53f9d5e31fe5",
          "completed_at": "2026-07-15T03:14:39Z"
        },
        {
          "id": "gate",
          "action": "state.gate",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-15T03:14:39Z",
          "output": {
            "status": "ok",
            "repo_root": "D:\\Projects\\prd-plugin",
            "summary": {
              "errors": 0,
              "warnings": 0
            },
            "findings": []
          },
          "output_hash": "a705b176b049df02348354c23988d51f616670b7352ad410321cbe0577edf053",
          "completed_at": "2026-07-15T03:14:39Z"
        }
      ],
      "completed_at": "2026-07-15T03:14:39Z"
    },
    {
      "id": "WFR-018",
      "schema_version": "1.0",
      "workflow_id": "session.start",
      "workflow_version": 1,
      "definition_hash": "84ce7a6cc9aa694e7d79ea287fc72dc11aae430d872a885ca70ba837e668657e",
      "plan_hash": "3ac96bd9bc6974dd538269c4c5f0c914e98110574189cd54d4ffbafb876b1a73",
      "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
      "inputs": {},
      "idempotency_key": "2026-07-15-wiki-inline-links-session-start",
      "status": "completed",
      "attempt": 1,
      "created_at": "2026-07-15T03:29:23Z",
      "updated_at": "2026-07-15T03:29:24Z",
      "receipts": [
        {
          "step_id": "config",
          "action": "config.audit",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "52f4670d3af925e27fa87b707174b4d88bc7c6d7cc17f7accb4003b9d0b94665",
          "completed_at": "2026-07-15T03:29:23Z"
        },
        {
          "step_id": "state",
          "action": "state.consistency",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "5a1c6e5246defb1b6b6b90ff734db95bece2886b408ab112ed9b8e67222d5568",
          "completed_at": "2026-07-15T03:29:24Z"
        },
        {
          "step_id": "status",
          "action": "state.query",
          "input_hash": "a15231a2142a2a9a85355a8b9cbbccffe01a9c9c2c2fd8c2bc2987cdc481564a",
          "output_hash": "cfeeb1e51604882510eda010aad9fdadc7c00e450615a553529a2ef3f41dc829",
          "completed_at": "2026-07-15T03:29:24Z"
        }
      ],
      "steps": [
        {
          "id": "config",
          "action": "config.audit",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-15T03:29:23Z",
          "output": {
            "status": "ok",
            "summary": {
              "settings": 171,
              "mutable": 162,
              "read_only_or_managed": 9,
              "unclassified": 0,
              "unknown": 0,
              "invalid": 0,
              "missing_using_defaults": 0
            },
            "unclassified_keys": [],
            "unknown_keys": [],
            "invalid_values": [],
            "missing_using_defaults": []
          },
          "output_hash": "52f4670d3af925e27fa87b707174b4d88bc7c6d7cc17f7accb4003b9d0b94665",
          "completed_at": "2026-07-15T03:29:23Z"
        },
        {
          "id": "state",
          "action": "state.consistency",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-15T03:29:24Z",
          "output": {
            "status": "ok",
            "repo_root": "D:\\Projects\\prd-plugin",
            "summary": {
              "errors": 0,
              "warnings": 0,
              "infos": 0
            },
            "findings": []
          },
          "output_hash": "5a1c6e5246defb1b6b6b90ff734db95bece2886b408ab112ed9b8e67222d5568",
          "completed_at": "2026-07-15T03:29:24Z"
        },
        {
          "id": "status",
          "action": "state.query",
          "status": "completed",
          "resolved_input_hash": "a15231a2142a2a9a85355a8b9cbbccffe01a9c9c2c2fd8c2bc2987cdc481564a",
          "started_at": "2026-07-15T03:29:24Z",
          "output": {
            "repo_root": "D:\\Projects\\prd-plugin",
            "autonomy_level": "autonomous",
            "requests_by_status": {
              "accepted": 1,
              "deferred": 1,
              "implemented": 75,
              "proposed": 1,
              "rejected": 1
            },
            "active_tracking": [],
            "tracking_branches": [],
            "tracking_branch_counts": {},
            "tracking_branch_errors": [],
            "open_health": [
              "HLT-014"
            ],
            "stale_count": 0,
            "skill_usage": {
              "project-decision-policy": 1,
              "project-request-intake": 1,
              "project-test-driven-implementation": 1,
              "project-verification-before-completion": 1,
              "project-llm-wiki": 1
            },
            "wiki_backfill_pending": false,
            "version_update": null
          },
          "output_hash": "cfeeb1e51604882510eda010aad9fdadc7c00e450615a553529a2ef3f41dc829",
          "completed_at": "2026-07-15T03:29:24Z"
        }
      ],
      "completed_at": "2026-07-15T03:29:24Z"
    },
    {
      "id": "WFR-019",
      "schema_version": "1.0",
      "workflow_id": "hub.release",
      "workflow_version": 1,
      "definition_hash": "b8efcc9726266d73719719856dab279ace8f4d21be7b2d01b4f5f08bd3eacc1b",
      "plan_hash": "45a6765f24486f3d1e889f80a653564254c97a7e400033444b676e8ed8cdecb8",
      "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
      "inputs": {},
      "idempotency_key": "0.15.5-wiki-inline-links-release",
      "status": "completed",
      "attempt": 1,
      "created_at": "2026-07-15T03:47:24Z",
      "updated_at": "2026-07-15T03:48:22Z",
      "receipts": [
        {
          "step_id": "diff",
          "action": "git.diff_check",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "11c11db30f4b3f6c758722ba3e27eea08145b7d212f6a157451e364b48475280",
          "completed_at": "2026-07-15T03:47:24Z"
        },
        {
          "step_id": "config",
          "action": "config.audit",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "3c29c3b0cfac90c0c7df955d1fb281c137037adeba1b7c1feeccae165cf66a6b",
          "completed_at": "2026-07-15T03:47:24Z"
        },
        {
          "step_id": "state",
          "action": "state.consistency",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "5a1c6e5246defb1b6b6b90ff734db95bece2886b408ab112ed9b8e67222d5568",
          "completed_at": "2026-07-15T03:47:24Z"
        },
        {
          "step_id": "workflow_audit",
          "action": "process.fixed",
          "input_hash": "edf19b269a54d72753f1abc2b8ffcb810c2b7bc377cee7e1698c939f17e0be94",
          "output_hash": "231b43ed70e09c4e7cbcda1094b00e0274dd4a22ff8324da2eb907f705c1316a",
          "completed_at": "2026-07-15T03:47:24Z"
        },
        {
          "step_id": "suite",
          "action": "process.fixed",
          "input_hash": "954e575e48145853f5681eda189186c95a053267158fae669114320f2e53794a",
          "output_hash": "37bffb94fba6241a31d09899acd2cb9fb69d70fcff072e6f1fcaa559882a75aa",
          "completed_at": "2026-07-15T03:48:20Z"
        },
        {
          "step_id": "release",
          "action": "process.fixed",
          "input_hash": "1e5b0c18d93eb4c2248f9a00adbd438e52f3ef02137477fb8376c69cfe86fc9b",
          "output_hash": "b1b562734d4d622b33378f1e110a4fafce9dc535c14c2bf538357ccb4f16799c",
          "completed_at": "2026-07-15T03:48:20Z"
        },
        {
          "step_id": "gaps",
          "action": "process.fixed",
          "input_hash": "577241909238eeb55683f89d2d2216648dad2e3127397993e22493829a1307a4",
          "output_hash": "71e9493754d15e772a832cc60bc38ec9a1120d1e9e32e97da6ce8564c1fdd1fe",
          "completed_at": "2026-07-15T03:48:20Z"
        },
        {
          "step_id": "package",
          "action": "process.fixed",
          "input_hash": "06cd12e1f3db3d985f9150520afa60f288297ff0ca01a8e813e9bb6291aa8836",
          "output_hash": "b73abd7c9f957f0663a61108a952d64c31fb5e67023a4f845add6bb3be2818a0",
          "completed_at": "2026-07-15T03:48:22Z"
        },
        {
          "step_id": "gate",
          "action": "state.gate",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "a705b176b049df02348354c23988d51f616670b7352ad410321cbe0577edf053",
          "completed_at": "2026-07-15T03:48:22Z"
        }
      ],
      "steps": [
        {
          "id": "diff",
          "action": "git.diff_check",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-15T03:47:24Z",
          "output": {
            "passed": true
          },
          "output_hash": "11c11db30f4b3f6c758722ba3e27eea08145b7d212f6a157451e364b48475280",
          "completed_at": "2026-07-15T03:47:24Z"
        },
        {
          "id": "config",
          "action": "config.audit",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-15T03:47:24Z",
          "output": {
            "status": "ok",
            "summary": {
              "settings": 172,
              "mutable": 163,
              "read_only_or_managed": 9,
              "unclassified": 0,
              "unknown": 0,
              "invalid": 0,
              "missing_using_defaults": 0
            },
            "unclassified_keys": [],
            "unknown_keys": [],
            "invalid_values": [],
            "missing_using_defaults": []
          },
          "output_hash": "3c29c3b0cfac90c0c7df955d1fb281c137037adeba1b7c1feeccae165cf66a6b",
          "completed_at": "2026-07-15T03:47:24Z"
        },
        {
          "id": "state",
          "action": "state.consistency",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-15T03:47:24Z",
          "output": {
            "status": "ok",
            "repo_root": "D:\\Projects\\prd-plugin",
            "summary": {
              "errors": 0,
              "warnings": 0,
              "infos": 0
            },
            "findings": []
          },
          "output_hash": "5a1c6e5246defb1b6b6b90ff734db95bece2886b408ab112ed9b8e67222d5568",
          "completed_at": "2026-07-15T03:47:24Z"
        },
        {
          "id": "workflow_audit",
          "action": "process.fixed",
          "status": "completed",
          "resolved_input_hash": "edf19b269a54d72753f1abc2b8ffcb810c2b7bc377cee7e1698c939f17e0be94",
          "started_at": "2026-07-15T03:47:24Z",
          "output": {
            "operation": "workflow_chml_audit",
            "command": [
              "python",
              "scripts/workflow_chml_audit.py",
              "--repo-root",
              ".",
              "--format",
              "json"
            ],
            "exit_code": 0,
            "stdout": "{\n  \"status\": \"ok\",\n  \"repo_root\": \"D:\\\\Projects\\\\prd-plugin\",\n  \"summary\": {\n    \"critical\": 0,\n    \"high\": 0,\n    \"medium\": 0,\n    \"low\": 0\n  },\n  \"findings\": []\n}\n",
            "stderr": ""
          },
          "output_hash": "231b43ed70e09c4e7cbcda1094b00e0274dd4a22ff8324da2eb907f705c1316a",
          "completed_at": "2026-07-15T03:47:24Z"
        },
        {
          "id": "suite",
          "action": "process.fixed",
          "status": "completed",
          "resolved_input_hash": "954e575e48145853f5681eda189186c95a053267158fae669114320f2e53794a",
          "started_at": "2026-07-15T03:47:24Z",
          "output": {
            "operation": "local_workflow_check",
            "command": [
              "python",
              "scripts/local_workflow_check.py"
            ],
            "exit_code": 0,
            "stdout": "Structured file validation passed.\n$ python -m unittest discover -s tests -v\n{\n  \"status\": \"fail\",\n  \"repo_root\": \"C:\\\\Users\\\\marku\\\\AppData\\\\Local\\\\Temp\\\\tmplmvx6q8l\",\n  \"summary\": {\n    \"errors\": 1,\n    \"warnings\": 0\n  },\n  \"findings\": [\n    {\n      \"check\": \"duplicate_id\",\n      \"severity\": \"error\",\n      \"summary\": \"Duplicate id REQ-002 in .prd_plugin/state/requests.json.\",\n      \"required_action\": \"Renumber one record so REQ-002 is unique. Allocate IDs with the MCP tool prd_next_id (or the record tools like prd_open_goal) instead of hand-computing them.\"\n    }\n  ]\n}\nautonomy_level set to guided\nautonomy_level set to autonomous\nDESTRUCTIVE RESET REQUESTED: --force --yes will erase protected PRD Plugin project data.\nThe following existing state/configuration files would be replaced with skeleton defaults:\n  - .prd_plugin/state/tracking.json\nThis may erase IDs, tracking, requests, decisions, health findings, configuration, and session memory.\nFor a normal safe update, remove --yes and run: npx prd-install . --force\nPRD Plugin safe update: preserving existing state/config and refreshing plugin files only. Never add --yes to a routine update; it requests a destructive reset.\nPRD Plugin safe update: preserving existing state/config and refreshing plugin files only. Never add --yes to a routine update; it requests a destructive reset.\nPRD Plugin safe update: preserving existing state/config and refreshing plugin files only. Never add --yes to a routine update; it requests a destructive reset.\nPRD Plugin safe update: preserving existing state/config and refreshing plugin files only. Never add --yes to a routine update; it requests a destructive reset.\nPRD Plugin safe update: preserving existing state/config and refreshing plugin files only. Never add --yes to a routine update; it requests a destructive reset.\nPRD Plugin safe update: preserving existing state/config and refreshing plugin files only. Never add --yes to a routine update; it requests a destructive reset.\nPRD Plugin safe update: preserving existing state/config and refreshing plugin files only. Never add --yes to a routine update; it requests a destructive reset.\nPRD Plugin safe update: preserving existing state/config and refreshing plugin files only. Never add --yes to a routine update; it requests a destructive reset.\nPRD Plugin safe update: preserving existing state/config and refreshing plugin files only. Never add --yes to a routine update; it requests a destructive reset.\nPRD Plugin safe update: preserving existing state/config and refreshing plugin files only. Never add --yes to a routine update; it requests a destructive reset.\nPRD Plugin safe update: preserving existing state/config and refreshing plugin files only. Never add --yes to a routine update; it requests a destructive reset.\nPRD Plugin safe update: preserving existing state/config and refreshing plugin files only. Never add --yes to a routine update; it requests a destructive reset.\nPRD Plugin safe update: preserving existing state/config and refreshing plugin files only. Never add --yes to a routine update; it requests a destructive reset.\n{\"decision\": \"block\", \"reason\": \"Autonomous run-until-done: goal TRK-110 is still active. Continue with the next incomplete step toward it \\u2014 do not stop to ask 'shall I proceed?'. If you genuinely need the user (consent floor: push/merge/publish/secrets, or a real blocker), create the file .prd_plugin/local/autonomy-pause with a one-line reason and then stop; the guard will let you. Otherwise keep going.\"}\n$ python scripts/feature_skill_audit.py --repo-root . --format json\n{\n  \"status\": \"ok\",\n  \"repo_root\": \"D:\\\\Projects\\\\prd-plugin\",\n  \"contract\": \"templates/feature-skill-map.json\",\n  \"feature_count\": 17,\n  \"summary\": {\n    \"critical\": 0,\n    \"high\": 0,\n    \"medium\": 0,\n    \"low\": 0\n  },\n  \"findings\": []\n}\n$ python scripts/gap_audit.py --target-version 0.15.5\n# PRD Plugin Gap Audit\n\nTarget version: `0.15.5`\n\n## Findings\n\n- None\n$ python scripts/version_advice.py --installed-repo . --format json --output request-report/version-advice.json\n$ python scripts/release_check.py --output request-report/release-hygiene.md\n$ python scripts/prd_doctor.py --repo-root . --format json --output request-report/prd-doctor.json\n$ python scripts/state_consistency_check.py --repo-root . --format json --output request-report/state-consistency.json\n$ python scripts/prd_install_skills.py --repo-root . --dry-run\n{\n  \"status\": \"dry_run\",\n  \"target_agent\": \"codex\",\n  \"targets\": [\n    {\n      \"agent\": \"codex\",\n      \"target\": \".agents\\\\skills\",\n      \"would_install\": [\n        \"project-architecture\",\n        \"project-blocker-resolution\",\n        \"project-brainstorm\",\n        \"project-change-request\",\n        \"project-code-review\",\n        \"project-decision-ledger\",\n        \"project-decision-policy\",\n        \"project-deterministic-workflows\",\n        \"project-document-branch\",\n        \"project-evidence\",\n        \"project-evidence-ledger\",\n        \"project-git-workflow\",\n        \"project-health\",\n        \"project-implementation-plan\",\n        \"project-llm-wiki\",\n        \"project-local-integration\",\n        \"project-memory\",\n        \"project-planning-lifecycle\",\n        \"project-prd\",\n        \"project-prd-plugin-setup\",\n        \"project-request-intake\",\n        \"project-session-close\",\n        \"project-systematic-debugging\",\n        \"project-test-driven-implementation\",\n        \"project-traceability-review\",\n        \"project-traceability-sync\",\n        \"project-verification-before-completion\"\n      ],\n      \"would_remove\": [\n        \"project-fold-it-in\",\n        \"project-self-audit\"\n      ]\n    }\n  ],\n  \"installed_count\": 0,\n  \"target\": \".agents\\\\skills\",\n  \"installed\": [],\n  \"removed\": [],\n  \"would_install\": [\n    \"project-architecture\",\n    \"project-blocker-resolution\",\n    \"project-brainstorm\",\n    \"project-change-request\",\n    \"project-code-review\",\n    \"project-decision-ledger\",\n    \"project-decision-policy\",\n    \"project-deterministic-workflows\",\n    \"project-document-branch\",\n    \"project-evidence\",\n    \"project-evidence-ledger\",\n    \"project-git-workflow\",\n    \"project-health\",\n    \"project-implementation-plan\",\n    \"project-llm-wiki\",\n    \"project-local-integration\",\n    \"project-memory\",\n    \"project-planning-lifecycle\",\n    \"project-prd\",\n    \"project-prd-plugin-setup\",\n    \"project-request-intake\",\n    \"project-session-close\",\n    \"project-systematic-debugging\",\n    \"project-test-driven-implementation\",\n    \"project-traceability-review\",\n    \"project-traceability-sync\",\n    \"project-verification-before-completion\"\n  ],\n  \"would_remove\": [\n    \"project-fold-it-in\",\n    \"project-self-audit\"\n  ]\n}\n$ python scripts/request_report.py --config .prd_plugin/config.json --format markdown --output request-report/request-report.md\n$ python scripts/request_report.py --config .prd_plugin/config.json --format json --output request-report/request-report.json\n$ python scripts/message_check.py --config .prd_plugin/config.json --format json --output request-report/message-check.json\nLocal workflow check completed.\n",
            "stderr": "am_runtime_and_required) ... ok\ntest_adapted_skills_are_installed_to_repo_local_and_skeleton (test_superpowers_adapted_skills.SuperpowersAdaptedSkillsTests.test_adapted_skills_are_installed_to_repo_local_and_skeleton) ... ok\ntest_adapted_superpowers_skills_exist_with_attribution_and_prd_ids (test_superpowers_adapted_skills.SuperpowersAdaptedSkillsTests.test_adapted_superpowers_skills_exist_with_attribution_and_prd_ids) ... ok\ntest_downstream_skills_do_not_direct_agents_to_run_hub_only_scripts (test_superpowers_adapted_skills.SuperpowersAdaptedSkillsTests.test_downstream_skills_do_not_direct_agents_to_run_hub_only_scripts) ... ok\ntest_notice_records_superpowers_origin (test_superpowers_adapted_skills.SuperpowersAdaptedSkillsTests.test_notice_records_superpowers_origin) ... ok\ntest_skeleton_skill_copies_exist (test_superpowers_adapted_skills.SuperpowersAdaptedSkillsTests.test_skeleton_skill_copies_exist) ... ok\ntest_specific_adaptations_keep_strong_method_and_prd_state_hooks (test_superpowers_adapted_skills.SuperpowersAdaptedSkillsTests.test_specific_adaptations_keep_strong_method_and_prd_state_hooks) ... ok\ntest_verification_guidance_uses_current_change_scope_not_unconditional_full_suite (test_superpowers_adapted_skills.SuperpowersAdaptedSkillsTests.test_verification_guidance_uses_current_change_scope_not_unconditional_full_suite) ... ok\ntest_extracts_affected_paths (test_telemetry.CaptureTurnRecordsTests.test_extracts_affected_paths) ... ok\ntest_extracts_referenced_ids (test_telemetry.CaptureTurnRecordsTests.test_extracts_referenced_ids) ... ok\ntest_marks_failed_tool (test_telemetry.CaptureTurnRecordsTests.test_marks_failed_tool) ... ok\ntest_one_record_per_tool_call (test_telemetry.CaptureTurnRecordsTests.test_one_record_per_tool_call) ... ok\ntest_turn_index_increments_per_prompt (test_telemetry.CaptureTurnRecordsTests.test_turn_index_increments_per_prompt) ... ok\ntest_preserves_benign_args (test_telemetry.RedactArgsTests.test_preserves_benign_args) ... ok\ntest_redacts_credential (test_telemetry.RedactArgsTests.test_redacts_credential) ... ok\ntest_redacts_key (test_telemetry.RedactArgsTests.test_redacts_key) ... ok\ntest_redacts_local_path (test_telemetry.RedactArgsTests.test_redacts_local_path) ... ok\ntest_redacts_nested (test_telemetry.RedactArgsTests.test_redacts_nested) ... ok\ntest_redacts_password (test_telemetry.RedactArgsTests.test_redacts_password) ... ok\ntest_redacts_secret (test_telemetry.RedactArgsTests.test_redacts_secret) ... ok\ntest_redacts_token (test_telemetry.RedactArgsTests.test_redacts_token) ... ok\ntest_scenario (test_telemetry.SyntheticFiveTurnScenarioTests.test_scenario) ... ok\ntest_required_fields_present (test_telemetry.TelemetryRecordSchemaTests.test_required_fields_present) ... ok\ntest_to_dict_is_json_serializable (test_telemetry.TelemetryRecordSchemaTests.test_to_dict_is_json_serializable) ... ok\ntest_appends_to_existing_file (test_telemetry.WriteTelemetryJsonlTests.test_appends_to_existing_file) ... ok\ntest_load_roundtrip (test_telemetry.WriteTelemetryJsonlTests.test_load_roundtrip) ... ok\ntest_load_skips_malformed_lines (test_telemetry.WriteTelemetryJsonlTests.test_load_skips_malformed_lines) ... ok\ntest_writes_one_line_per_record (test_telemetry.WriteTelemetryJsonlTests.test_writes_one_line_per_record) ... ok\ntest_base_ref_is_resolved_locally_and_option_like_values_are_rejected (test_test_scope.ChangedFileTests.test_base_ref_is_resolved_locally_and_option_like_values_are_rejected) ... ok\ntest_collects_staged_unstaged_and_untracked_without_a_remote (test_test_scope.ChangedFileTests.test_collects_staged_unstaged_and_untracked_without_a_remote) ... ok\ntest_rejects_absolute_or_parent_traversal_changed_paths (test_test_scope.ChangedFileTests.test_rejects_absolute_or_parent_traversal_changed_paths) ... ok\ntest_direct_json_cannot_disable_the_safe_full_fallback (test_test_scope.PlanTests.test_direct_json_cannot_disable_the_safe_full_fallback) ... ok\ntest_direct_json_cannot_remove_mandatory_full_suite_triggers (test_test_scope.PlanTests.test_direct_json_cannot_remove_mandatory_full_suite_triggers) ... ok\ntest_disabled_or_unavailable_executor_requires_full_verification (test_test_scope.PlanTests.test_disabled_or_unavailable_executor_requires_full_verification) ... ok\ntest_narrow_change_emits_deterministic_ai_collab_requests (test_test_scope.PlanTests.test_narrow_change_emits_deterministic_ai_collab_requests) ... ok\ntest_no_changes_requires_no_verification_unless_release (test_test_scope.PlanTests.test_no_changes_requires_no_verification_unless_release) ... ok\ntest_plan_tells_runtime_to_fallback_on_degraded_or_unmapped_results (test_test_scope.PlanTests.test_plan_tells_runtime_to_fallback_on_degraded_or_unmapped_results) ... ok\ntest_release_core_and_excessive_changes_require_full_verification (test_test_scope.PlanTests.test_release_core_and_excessive_changes_require_full_verification) ... ok\ntest_document_branch_skill_defines_parallel_tracking_profile_everywhere (test_tracking_branch_policy.TrackingBranchPolicyTests.test_document_branch_skill_defines_parallel_tracking_profile_everywhere) ... ok\ntest_every_direct_tracking_writer_is_parallel_worker_aware_everywhere (test_tracking_branch_policy.TrackingBranchPolicyTests.test_every_direct_tracking_writer_is_parallel_worker_aware_everywhere) ... ok\ntest_memory_and_git_skills_keep_workers_off_canonical_state_everywhere (test_tracking_branch_policy.TrackingBranchPolicyTests.test_memory_and_git_skills_keep_workers_off_canonical_state_everywhere) ... ok\ntest_narrative_branch_manifest_template_is_installed (test_tracking_branch_policy.TrackingBranchPolicyTests.test_narrative_branch_manifest_template_is_installed) ... ok\ntest_user_docs_explain_branch_then_promote_workflow (test_tracking_branch_policy.TrackingBranchPolicyTests.test_user_docs_explain_branch_then_promote_workflow) ... ok\ntest_worker_launch_contract_is_shipped_in_the_on_demand_method (test_tracking_branch_policy.TrackingBranchPolicyTests.test_worker_launch_contract_is_shipped_in_the_on_demand_method) ... ok\ntest_empty_repo_safe (test_tracking_commands.PrdStatusTests.test_empty_repo_safe) ... ok\ntest_legacy_and_open_statuses_are_not_hidden (test_tracking_commands.PrdStatusTests.test_legacy_and_open_statuses_are_not_hidden) ... ok\ntest_null_status_and_legacy_health_do_not_break_status (test_tracking_commands.PrdStatusTests.test_null_status_and_legacy_health_do_not_break_status) ... ok\ntest_summarizes_state (test_tracking_commands.PrdStatusTests.test_summarizes_state) ... ok\ntest_tracking_branches_are_visible_without_reading_branch_files (test_tracking_commands.PrdStatusTests.test_tracking_branches_are_visible_without_reading_branch_files) ... ok\ntest_commands_exist_in_all_locations (test_tracking_commands.TrackingCommandFileTests.test_commands_exist_in_all_locations) ... ok\ntest_commands_invoke_the_right_workflow (test_tracking_commands.TrackingCommandFileTests.test_commands_invoke_the_right_workflow) ... ok\ntest_prd_status_is_downstream_runtime (test_tracking_commands.TrackingCommandFileTests.test_prd_status_is_downstream_runtime) ... ok\ntest_catalog_describes_latency_and_effective_dependencies (test_unified_config.CatalogTests.test_catalog_describes_latency_and_effective_dependencies) ... ok\ntest_every_shipped_leaf_is_classified (test_unified_config.CatalogTests.test_every_shipped_leaf_is_classified) ... ok\ntest_inventory_separates_non_persistent_control_planes (test_unified_config.CatalogTests.test_inventory_separates_non_persistent_control_planes) ... ok\ntest_inventory_audit_describe_and_profile_commands_emit_json (test_unified_config.CliTests.test_inventory_audit_describe_and_profile_commands_emit_json) ... ok\ntest_audit_rejects_cli_coercions_in_direct_json (test_unified_config.MutationTests.test_audit_rejects_cli_coercions_in_direct_json) ... ok\ntest_audit_rejects_invalid_custom_profiles_and_active_marker (test_unified_config.MutationTests.test_audit_rejects_invalid_custom_profiles_and_active_marker) ... ok\ntest_audit_reports_scalar_configuration_section_without_crashing (test_unified_config.MutationTests.test_audit_reports_scalar_configuration_section_without_crashing) ... ok\ntest_audit_reports_unknown_and_invalid_values (test_unified_config.MutationTests.test_audit_reports_unknown_and_invalid_values) ... ok\ntest_enable_disable_only_accept_mutable_booleans (test_unified_config.MutationTests.test_enable_disable_only_accept_mutable_booleans) ... ok\ntest_failed_atomic_replace_leaves_original_config_untouched (test_unified_config.MutationTests.test_failed_atomic_replace_leaves_original_config_untouched) ... ok\ntest_malformed_config_is_never_replaced_by_a_mutation (test_unified_config.MutationTests.test_malformed_config_is_never_replaced_by_a_mutation) ... ok\ntest_manual_set_marks_profile_custom_and_preserves_style (test_unified_config.MutationTests.test_manual_set_marks_profile_custom_and_preserves_style) ... ok\ntest_scalar_parent_is_not_clobbered_by_nested_set (test_unified_config.MutationTests.test_scalar_parent_is_not_clobbered_by_nested_set) ... ok\ntest_builtin_profile_dry_run_then_atomic_apply (test_unified_config.ProfileTests.test_builtin_profile_dry_run_then_atomic_apply) ... ok\ntest_invalid_custom_profile_never_partially_writes (test_unified_config.ProfileTests.test_invalid_custom_profile_never_partially_writes) ... ok\ntest_save_show_diff_and_delete_custom_profile (test_unified_config.ProfileTests.test_save_show_diff_and_delete_custom_profile) ... ok\ntest_does_not_flag_canonical_prd_state_paths (test_unsubmitted_plugin_request.UnsubmittedPluginRequestTests.test_does_not_flag_canonical_prd_state_paths) ... ok\ntest_does_not_flag_ordinary_project_requests (test_unsubmitted_plugin_request.UnsubmittedPluginRequestTests.test_does_not_flag_ordinary_project_requests) ... ok\ntest_does_not_flag_rejected_requests (test_unsubmitted_plugin_request.UnsubmittedPluginRequestTests.test_does_not_flag_rejected_requests) ... ok\ntest_does_not_flag_when_already_marked_upstream (test_unsubmitted_plugin_request.UnsubmittedPluginRequestTests.test_does_not_flag_when_already_marked_upstream) ... ok\ntest_flags_a_local_request_about_a_plugin_script (test_unsubmitted_plugin_request.UnsubmittedPluginRequestTests.test_flags_a_local_request_about_a_plugin_script) ... ok\ntest_flags_a_request_that_names_itself_upstream (test_unsubmitted_plugin_request.UnsubmittedPluginRequestTests.test_flags_a_request_that_names_itself_upstream) ... ok\ntest_never_fires_in_the_hub_repo_itself (test_unsubmitted_plugin_request.UnsubmittedPluginRequestTests.test_never_fires_in_the_hub_repo_itself) ... ok\ntest_wired_into_run_checks (test_unsubmitted_plugin_request.UnsubmittedPluginRequestTests.test_wired_into_run_checks) ... ok\ntest_appends_version_change_request (test_version_advice.VersionAdviceTests.test_appends_version_change_request) ... ok\ntest_builds_safe_update_advice_for_low_risk_releases (test_version_advice.VersionAdviceTests.test_builds_safe_update_advice_for_low_risk_releases) ... ok\ntest_cli_uses_hub_releases_when_downstream_repo_has_no_releases_file (test_version_advice.VersionAdviceTests.test_cli_uses_hub_releases_when_downstream_repo_has_no_releases_file) ... ok\ntest_detects_installed_version_from_bom_json (test_version_advice.VersionAdviceTests.test_detects_installed_version_from_bom_json) ... ok\ntest_detects_installed_version_from_opencode_plugin_manifest (test_version_advice.VersionAdviceTests.test_detects_installed_version_from_opencode_plugin_manifest) ... ok\ntest_detects_installed_version_from_prd_plugin_config (test_version_advice.VersionAdviceTests.test_detects_installed_version_from_prd_plugin_config) ... ok\ntest_detects_latest_version_from_plugin_manifest (test_version_advice.VersionAdviceTests.test_detects_latest_version_from_plugin_manifest) ... ok\ntest_installed_version_priority_prefers_config_then_codex_then_opencode (test_version_advice.VersionAdviceTests.test_installed_version_priority_prefers_config_then_codex_then_opencode) ... ok\ntest_orders_prerelease_before_final_release (test_version_advice.VersionAdviceTests.test_orders_prerelease_before_final_release) ... ok\ntest_recommends_review_first_for_medium_or_high_risk_release (test_version_advice.VersionAdviceTests.test_recommends_review_first_for_medium_or_high_risk_release) ... ok\ntest_disabled_returns_disabled_and_no_fetch (test_version_check.CheckTests.test_disabled_returns_disabled_and_no_fetch) ... ok\ntest_force_refetches_within_ttl (test_version_check.CheckTests.test_force_refetches_within_ttl) ... ok\ntest_network_failure_is_fail_open (test_version_check.CheckTests.test_network_failure_is_fail_open) ... ok\ntest_no_update_when_current (test_version_check.CheckTests.test_no_update_when_current) ... ok\ntest_status_is_cache_only_no_fetch (test_version_check.CheckTests.test_status_is_cache_only_no_fetch) ... ok\ntest_ttl_cache_avoids_refetch (test_version_check.CheckTests.test_ttl_cache_avoids_refetch) ... ok\ntest_ttl_expiry_refetches (test_version_check.CheckTests.test_ttl_expiry_refetches) ... ok\ntest_update_available_when_npm_is_ahead (test_version_check.CheckTests.test_update_available_when_npm_is_ahead) ... ok\ntest_status_cli_exits_zero (test_version_check.CliTests.test_status_cli_exits_zero) ... ok\ntest_default_ttl_is_responsive_not_a_day (test_version_check.FreshnessTests.test_default_ttl_is_responsive_not_a_day) ... ok\ntest_fetch_latest_accepts_a_timeout (test_version_check.FreshnessTests.test_fetch_latest_accepts_a_timeout) ... ok\ntest_nudge_refreshes_in_session_not_cache_only (test_version_check.FreshnessTests.test_nudge_refreshes_in_session_not_cache_only) ... ok\ntest_registry_default_ttl_matches (test_version_check.FreshnessTests.test_registry_default_ttl_matches) ... ok\ntest_semver_ordering (test_version_check.ParseTests.test_semver_ordering) ... ok\ntest_set_enabled_writes_config (test_version_check.ToggleTests.test_set_enabled_writes_config) ... ok\ntest_config_has_version_check_default_on (test_version_check.WiringTests.test_config_has_version_check_default_on) ... ok\ntest_nudge_surfaces_update_available (test_version_check.WiringTests.test_nudge_surfaces_update_available) ... ok\ntest_prd_version_command_exists (test_version_check.WiringTests.test_prd_version_command_exists) ... ok\ntest_script_registered_downstream (test_version_check.WiringTests.test_script_registered_downstream) ... ok\ntest_plan_cli_emits_json (test_wiki_backfill.CliTests.test_plan_cli_emits_json) ... ok\ntest_status_cli (test_wiki_backfill.CliTests.test_status_cli) ... ok\ntest_marker_written_for_established_repo_gaining_wiki (test_wiki_backfill.InstallerMarkerTests.test_marker_written_for_established_repo_gaining_wiki) ... ok\ntest_no_marker_for_empty_scaffold (test_wiki_backfill.InstallerMarkerTests.test_no_marker_for_empty_scaffold) ... ok\ntest_no_marker_when_wiki_already_exists (test_wiki_backfill.InstallerMarkerTests.test_no_marker_when_wiki_already_exists) ... ok\ntest_no_marker_when_wiki_disabled (test_wiki_backfill.InstallerMarkerTests.test_no_marker_when_wiki_disabled) ... ok\ntest_pending_false_when_absent (test_wiki_backfill.StatusTests.test_pending_false_when_absent) ... ok\ntest_pending_false_when_wiki_already_exists (test_wiki_backfill.StatusTests.test_pending_false_when_wiki_already_exists) ... ok\ntest_pending_true_when_marker_present (test_wiki_backfill.StatusTests.test_pending_true_when_marker_present) ... ok\ntest_plan_excludes_generated_report_artifacts (test_wiki_backfill.SurveyPlanTests.test_plan_excludes_generated_report_artifacts)\nrequest-report/ (incl. its calibration report trees) and docs/evidence/ ... ok\ntest_plan_excludes_plugin_and_vendor_noise (test_wiki_backfill.SurveyPlanTests.test_plan_excludes_plugin_and_vendor_noise) ... ok\ntest_plan_inventories_code_docs_and_state (test_wiki_backfill.SurveyPlanTests.test_plan_inventories_code_docs_and_state) ... ok\ntest_plan_is_read_only (test_wiki_backfill.SurveyPlanTests.test_plan_is_read_only) ... ok\ntest_wiki_drift_in_on_stop_and_default_sets (test_wiki_backfill.WikiDriftMonitorWiringTests.test_wiki_drift_in_on_stop_and_default_sets) ... ok\ntest_current_article_no_drift (test_wiki_backfill.WikiDriftTests.test_current_article_no_drift) ... ok\ntest_drift_cli (test_wiki_backfill.WikiDriftTests.test_drift_cli) ... ok\ntest_far_behind_article_flagged (test_wiki_backfill.WikiDriftTests.test_far_behind_article_flagged) ... ok\ntest_no_wiki_is_ok (test_wiki_backfill.WikiDriftTests.test_no_wiki_is_ok) ... ok\ntest_unlinked_markdown_reference_is_part_of_wiki_drift (test_wiki_backfill.WikiDriftTests.test_unlinked_markdown_reference_is_part_of_wiki_drift) ... ok\ntest_unstamped_article_flagged (test_wiki_backfill.WikiDriftTests.test_unstamped_article_flagged) ... ok\ntest_ambiguous_reference_is_reported_but_never_guessed (test_wiki_backfill.WikiInlineMarkdownLinkTests.test_ambiguous_reference_is_reported_but_never_guessed) ... ok\ntest_cli_check_fails_and_fix_then_passes (test_wiki_backfill.WikiInlineMarkdownLinkTests.test_cli_check_fails_and_fix_then_passes) ... ok\ntest_existing_inline_links_and_fenced_examples_are_not_findings (test_wiki_backfill.WikiInlineMarkdownLinkTests.test_existing_inline_links_and_fenced_examples_are_not_findings) ... ok\ntest_fix_rewrites_only_unambiguous_references_to_relative_inline_links (test_wiki_backfill.WikiInlineMarkdownLinkTests.test_fix_rewrites_only_unambiguous_references_to_relative_inline_links) ... ok\ntest_reports_resolvable_bare_and_code_wrapped_markdown_references (test_wiki_backfill.WikiInlineMarkdownLinkTests.test_reports_resolvable_bare_and_code_wrapped_markdown_references) ... ok\ntest_nudge_surfaces_pending_backfill (test_wiki_backfill.WiringTests.test_nudge_surfaces_pending_backfill) ... ok\ntest_script_registered_downstream (test_wiki_backfill.WiringTests.test_script_registered_downstream) ... ok\ntest_skill_has_backfill_mode (test_wiki_backfill.WiringTests.test_skill_has_backfill_mode) ... ok\ntest_no_cp1252_unencodable_chars_in_agent_facing_tools (test_windows_console_safe.SourceScanTests.test_no_cp1252_unencodable_chars_in_agent_facing_tools) ... ok\ntest_backfill_pending_status_renders_cp1252_safe (test_windows_console_safe.StatusRenderTests.test_backfill_pending_status_renders_cp1252_safe) ... ok\ntest_repository_workflow_surfaces_are_chml_zero (test_workflow_chml_audit.WorkflowChmlAuditTests.test_repository_workflow_surfaces_are_chml_zero) ... ok\ntest_semantic_skill_finding_is_part_of_workflow_chml (test_workflow_chml_audit.WorkflowChmlAuditTests.test_semantic_skill_finding_is_part_of_workflow_chml) ... ok\ntest_git_workflow_defers_autonomy_to_decision_policy_but_keeps_floor (test_workflow_consistency.AutonomyConflictResolutionTests.test_git_workflow_defers_autonomy_to_decision_policy_but_keeps_floor) ... ok\ntest_request_intake_defers_autonomy_and_owns_graduation (test_workflow_consistency.AutonomyConflictResolutionTests.test_request_intake_defers_autonomy_and_owns_graduation) ... ok\ntest_evidence_pair_states_create_vs_review_boundary (test_workflow_consistency.BoundaryClarityTests.test_evidence_pair_states_create_vs_review_boundary) ... ok\ntest_session_close_states_memory_boundary (test_workflow_consistency.BoundaryClarityTests.test_session_close_states_memory_boundary) ... ok\ntest_document_branch_has_promotion_owner (test_workflow_consistency.DeadEndOwnerTests.test_document_branch_has_promotion_owner) ... ok\ntest_health_findings_have_triage_dispositions (test_workflow_consistency.DeadEndOwnerTests.test_health_findings_have_triage_dispositions) ... ok\ntest_memory_owns_schema_version_changes (test_workflow_consistency.DeadEndOwnerTests.test_memory_owns_schema_version_changes) ... ok\ntest_planning_lifecycle_has_stage_readiness_checkpoints (test_workflow_consistency.DeadEndOwnerTests.test_planning_lifecycle_has_stage_readiness_checkpoints) ... ok\ntest_session_close_runs_traceability_sync (test_workflow_consistency.DeadEndOwnerTests.test_session_close_runs_traceability_sync) ... ok\n\n----------------------------------------------------------------------\nRan 812 tests in 53.190s\n\nOK\n"
          },
          "output_hash": "37bffb94fba6241a31d09899acd2cb9fb69d70fcff072e6f1fcaa559882a75aa",
          "completed_at": "2026-07-15T03:48:20Z"
        },
        {
          "id": "release",
          "action": "process.fixed",
          "status": "completed",
          "resolved_input_hash": "1e5b0c18d93eb4c2248f9a00adbd438e52f3ef02137477fb8376c69cfe86fc9b",
          "started_at": "2026-07-15T03:48:20Z",
          "output": {
            "operation": "release_check",
            "command": [
              "python",
              "scripts/release_check.py"
            ],
            "exit_code": 0,
            "stdout": "# Release Hygiene Report\n\nBase version: `0.15.4`\nHead version: `0.15.5`\nChanged files checked: 3\n\n## Findings\n\n- None\n",
            "stderr": ""
          },
          "output_hash": "b1b562734d4d622b33378f1e110a4fafce9dc535c14c2bf538357ccb4f16799c",
          "completed_at": "2026-07-15T03:48:20Z"
        },
        {
          "id": "gaps",
          "action": "process.fixed",
          "status": "completed",
          "resolved_input_hash": "577241909238eeb55683f89d2d2216648dad2e3127397993e22493829a1307a4",
          "started_at": "2026-07-15T03:48:20Z",
          "output": {
            "operation": "gap_audit",
            "command": [
              "python",
              "scripts/gap_audit.py",
              "--target-version",
              "0.15.5",
              "--config",
              ".prd_plugin/config.json",
              "--releases",
              ".prd_plugin/state/releases.json"
            ],
            "exit_code": 0,
            "stdout": "# PRD Plugin Gap Audit\n\nTarget version: `0.15.5`\n\n## Findings\n\n- None\n",
            "stderr": ""
          },
          "output_hash": "71e9493754d15e772a832cc60bc38ec9a1120d1e9e32e97da6ce8564c1fdd1fe",
          "completed_at": "2026-07-15T03:48:20Z"
        },
        {
          "id": "package",
          "action": "process.fixed",
          "status": "completed",
          "resolved_input_hash": "06cd12e1f3db3d985f9150520afa60f288297ff0ca01a8e813e9bb6291aa8836",
          "started_at": "2026-07-15T03:48:20Z",
          "output": {
            "operation": "package_check",
            "command": [
              "npm",
              "pack",
              "--dry-run"
            ],
            "exit_code": 0,
            "stdout": "prd-plugin-0.15.5.tgz\n",
            "stderr": "s/state_consistency_check.py\nnpm notice 5.8kB scripts/traceability_sync_auto.py\nnpm notice 12.5kB scripts/version_advice.py\nnpm notice 9.6kB scripts/workflow_chml_audit.py\nnpm notice 3.0kB skills/project-architecture/SKILL.md\nnpm notice 7.4kB skills/project-blocker-resolution/SKILL.md\nnpm notice 2.8kB skills/project-brainstorm/SKILL.md\nnpm notice 5.5kB skills/project-change-request/SKILL.md\nnpm notice 6.3kB skills/project-code-review/SKILL.md\nnpm notice 2.7kB skills/project-decision-ledger/SKILL.md\nnpm notice 18.1kB skills/project-decision-policy/SKILL.md\nnpm notice 3.8kB skills/project-deterministic-workflows/SKILL.md\nnpm notice 5.2kB skills/project-document-branch/SKILL.md\nnpm notice 2.8kB skills/project-evidence-ledger/SKILL.md\nnpm notice 3.3kB skills/project-evidence/SKILL.md\nnpm notice 8.9kB skills/project-fold-it-in/SKILL.md\nnpm notice 11.5kB skills/project-git-workflow/SKILL.md\nnpm notice 7.4kB skills/project-health/SKILL.md\nnpm notice 5.6kB skills/project-implementation-plan/SKILL.md\nnpm notice 1.1kB skills/project-llm-wiki/LICENSE\nnpm notice 842B skills/project-llm-wiki/references/archive-template.md\nnpm notice 843B skills/project-llm-wiki/references/article-template.md\nnpm notice 559B skills/project-llm-wiki/references/index-template.md\nnpm notice 317B skills/project-llm-wiki/references/raw-template.md\nnpm notice 15.9kB skills/project-llm-wiki/SKILL.md\nnpm notice 7.4kB skills/project-local-integration/SKILL.md\nnpm notice 8.1kB skills/project-memory/SKILL.md\nnpm notice 5.8kB skills/project-planning-lifecycle/SKILL.md\nnpm notice 5.0kB skills/project-prd-plugin-setup/SKILL.md\nnpm notice 3.5kB skills/project-prd/SKILL.md\nnpm notice 22.1kB skills/project-request-intake/SKILL.md\nnpm notice 5.6kB skills/project-self-audit/SKILL.md\nnpm notice 4.7kB skills/project-session-close/SKILL.md\nnpm notice 3.7kB skills/project-systematic-debugging/SKILL.md\nnpm notice 3.0kB skills/project-test-driven-implementation/SKILL.md\nnpm notice 3.7kB skills/project-traceability-review/SKILL.md\nnpm notice 2.5kB skills/project-traceability-sync/SKILL.md\nnpm notice 5.1kB skills/project-verification-before-completion/SKILL.md\nnpm notice 167B templates/architecture-delta.md\nnpm notice 1.4kB templates/architecture.json\nnpm notice 368B templates/brainstorm.md\nnpm notice 274B templates/changelog.json\nnpm notice 12.9kB templates/config.json\nnpm notice 265B templates/decision-record.md\nnpm notice 398B templates/decisions.json\nnpm notice 372B templates/doc-branch.json\nnpm notice 313B templates/doc-branch.md\nnpm notice 115B templates/evidence.md\nnpm notice 12.8kB templates/feature-skill-map.json\nnpm notice 249B templates/handoff.json\nnpm notice 407B templates/health.json\nnpm notice 695B templates/human-exports/architecture.md\nnpm notice 626B templates/human-exports/implementation-plan.md\nnpm notice 580B templates/human-exports/prd.md\nnpm notice 1.4kB templates/implementation-plan.json\nnpm notice 65B templates/mailbox.json\nnpm notice 348B templates/memory.json\nnpm notice 471B templates/merge-checklist.md\nnpm notice 163B templates/plan-delta.md\nnpm notice 139B templates/prd-delta.md\nnpm notice 1.3kB templates/prd.json\nnpm notice 454B templates/project.json\nnpm notice 125B templates/promoted-session-summary.jsonl\nnpm notice 160.6kB templates/releases.json\nnpm notice 3.0kB templates/repo-skeleton/.agents/skills/project-architecture/SKILL.md\nnpm notice 7.4kB templates/repo-skeleton/.agents/skills/project-blocker-resolution/SKILL.md\nnpm notice 2.8kB templates/repo-skeleton/.agents/skills/project-brainstorm/SKILL.md\nnpm notice 5.5kB templates/repo-skeleton/.agents/skills/project-change-request/SKILL.md\nnpm notice 6.3kB templates/repo-skeleton/.agents/skills/project-code-review/SKILL.md\nnpm notice 2.7kB templates/repo-skeleton/.agents/skills/project-decision-ledger/SKILL.md\nnpm notice 18.1kB templates/repo-skeleton/.agents/skills/project-decision-policy/SKILL.md\nnpm notice 3.8kB templates/repo-skeleton/.agents/skills/project-deterministic-workflows/SKILL.md\nnpm notice 5.2kB templates/repo-skeleton/.agents/skills/project-document-branch/SKILL.md\nnpm notice 2.8kB templates/repo-skeleton/.agents/skills/project-evidence-ledger/SKILL.md\nnpm notice 3.3kB templates/repo-skeleton/.agents/skills/project-evidence/SKILL.md\nnpm notice 11.4kB templates/repo-skeleton/.agents/skills/project-git-workflow/SKILL.md\nnpm notice 7.4kB templates/repo-skeleton/.agents/skills/project-health/SKILL.md\nnpm notice 5.6kB templates/repo-skeleton/.agents/skills/project-implementation-plan/SKILL.md\nnpm notice 1.1kB templates/repo-skeleton/.agents/skills/project-llm-wiki/LICENSE\nnpm notice 842B templates/repo-skeleton/.agents/skills/project-llm-wiki/references/archive-template.md\nnpm notice 843B templates/repo-skeleton/.agents/skills/project-llm-wiki/references/article-template.md\nnpm notice 559B templates/repo-skeleton/.agents/skills/project-llm-wiki/references/index-template.md\nnpm notice 317B templates/repo-skeleton/.agents/skills/project-llm-wiki/references/raw-template.md\nnpm notice 15.9kB templates/repo-skeleton/.agents/skills/project-llm-wiki/SKILL.md\nnpm notice 7.4kB templates/repo-skeleton/.agents/skills/project-local-integration/SKILL.md\nnpm notice 8.1kB templates/repo-skeleton/.agents/skills/project-memory/SKILL.md\nnpm notice 5.8kB templates/repo-skeleton/.agents/skills/project-planning-lifecycle/SKILL.md\nnpm notice 5.0kB templates/repo-skeleton/.agents/skills/project-prd-plugin-setup/SKILL.md\nnpm notice 3.5kB templates/repo-skeleton/.agents/skills/project-prd/SKILL.md\nnpm notice 22.1kB templates/repo-skeleton/.agents/skills/project-request-intake/SKILL.md\nnpm notice 4.7kB templates/repo-skeleton/.agents/skills/project-session-close/SKILL.md\nnpm notice 3.7kB templates/repo-skeleton/.agents/skills/project-systematic-debugging/SKILL.md\nnpm notice 3.0kB templates/repo-skeleton/.agents/skills/project-test-driven-implementation/SKILL.md\nnpm notice 3.7kB templates/repo-skeleton/.agents/skills/project-traceability-review/SKILL.md\nnpm notice 2.5kB templates/repo-skeleton/.agents/skills/project-traceability-sync/SKILL.md\nnpm notice 5.0kB templates/repo-skeleton/.agents/skills/project-verification-before-completion/SKILL.md\nnpm notice 871B templates/repo-skeleton/.claude-plugin/plugin.json\nnpm notice 772B templates/repo-skeleton/.claude/commands/prd-autonomy.md\nnpm notice 493B templates/repo-skeleton/.claude/commands/prd-close.md\nnpm notice 2.0kB templates/repo-skeleton/.claude/commands/prd-config.md\nnpm notice 1.6kB templates/repo-skeleton/.claude/commands/prd-drift.md\nnpm notice 1.4kB templates/repo-skeleton/.claude/commands/prd-graph.md\nnpm notice 1.6kB templates/repo-skeleton/.claude/commands/prd-hooks.md\nnpm notice 639B templates/repo-skeleton/.claude/commands/prd-new.md\nnpm notice 1.6kB templates/repo-skeleton/.claude/commands/prd-reflections.md\nnpm notice 1.8kB templates/repo-skeleton/.claude/commands/prd-report.md\nnpm notice 549B templates/repo-skeleton/.claude/commands/prd-status.md\nnpm notice 974B templates/repo-skeleton/.claude/commands/prd-track.md\nnpm notice 1.0kB templates/repo-skeleton/.claude/commands/prd-version.md\nnpm notice 938B templates/repo-skeleton/.claude/commands/prd-workflow.md\nnpm notice 1.6kB templates/repo-skeleton/.claude/hooks/prd_drift_check.py\nnpm notice 2.0kB templates/repo-skeleton/.claude/hooks/prd_log_skill.py\nnpm notice 4.1kB templates/repo-skeleton/.claude/hooks/prd_nudge.py\nnpm notice 3.7kB templates/repo-skeleton/.claude/hooks/prd_precommit_gate.py\nnpm notice 6.1kB templates/repo-skeleton/.claude/hooks/prd_reflection.py\nnpm notice 3.5kB templates/repo-skeleton/.claude/hooks/prd_session_report.py\nnpm notice 9.8kB templates/repo-skeleton/.claude/hooks/prd_stop_guard.py\nnpm notice 1.3kB templates/repo-skeleton/.claude/settings.json\nnpm notice 3.0kB templates/repo-skeleton/.claude/skills/project-architecture/SKILL.md\nnpm notice 7.4kB templates/repo-skeleton/.claude/skills/project-blocker-resolution/SKILL.md\nnpm notice 2.8kB templates/repo-skeleton/.claude/skills/project-brainstorm/SKILL.md\nnpm notice 5.5kB templates/repo-skeleton/.claude/skills/project-change-request/SKILL.md\nnpm notice 6.3kB templates/repo-skeleton/.claude/skills/project-code-review/SKILL.md\nnpm notice 2.7kB templates/repo-skeleton/.claude/skills/project-decision-ledger/SKILL.md\nnpm notice 18.1kB templates/repo-skeleton/.claude/skills/project-decision-policy/SKILL.md\nnpm notice 3.8kB templates/repo-skeleton/.claude/skills/project-deterministic-workflows/SKILL.md\nnpm notice 5.2kB templates/repo-skeleton/.claude/skills/project-document-branch/SKILL.md\nnpm notice 2.8kB templates/repo-skeleton/.claude/skills/project-evidence-ledger/SKILL.md\nnpm notice 3.3kB templates/repo-skeleton/.claude/skills/project-evidence/SKILL.md\nnpm notice 11.4kB templates/repo-skeleton/.claude/skills/project-git-workflow/SKILL.md\nnpm notice 7.4kB templates/repo-skeleton/.claude/skills/project-health/SKILL.md\nnpm notice 5.6kB templates/repo-skeleton/.claude/skills/project-implementation-plan/SKILL.md\nnpm notice 1.1kB templates/repo-skeleton/.claude/skills/project-llm-wiki/LICENSE\nnpm notice 842B templates/repo-skeleton/.claude/skills/project-llm-wiki/references/archive-template.md\nnpm notice 843B templates/repo-skeleton/.claude/skills/project-llm-wiki/references/article-template.md\nnpm notice 559B templates/repo-skeleton/.claude/skills/project-llm-wiki/references/index-template.md\nnpm notice 317B templates/repo-skeleton/.claude/skills/project-llm-wiki/references/raw-template.md\nnpm notice 15.9kB templates/repo-skeleton/.claude/skills/project-llm-wiki/SKILL.md\nnpm notice 7.4kB templates/repo-skeleton/.claude/skills/project-local-integration/SKILL.md\nnpm notice 8.1kB templates/repo-skeleton/.claude/skills/project-memory/SKILL.md\nnpm notice 5.8kB templates/repo-skeleton/.claude/skills/project-planning-lifecycle/SKILL.md\nnpm notice 5.0kB templates/repo-skeleton/.claude/skills/project-prd-plugin-setup/SKILL.md\nnpm notice 3.5kB templates/repo-skeleton/.claude/skills/project-prd/SKILL.md\nnpm notice 22.1kB templates/repo-skeleton/.claude/skills/project-request-intake/SKILL.md\nnpm notice 4.7kB templates/repo-skeleton/.claude/skills/project-session-close/SKILL.md\nnpm notice 3.7kB templates/repo-skeleton/.claude/skills/project-systematic-debugging/SKILL.md\nnpm notice 3.0kB templates/repo-skeleton/.claude/skills/project-test-driven-implementation/SKILL.md\nnpm notice 3.7kB templates/repo-skeleton/.claude/skills/project-traceability-review/SKILL.md\nnpm notice 2.5kB templates/repo-skeleton/.claude/skills/project-traceability-sync/SKILL.md\nnpm notice 5.0kB templates/repo-skeleton/.claude/skills/project-verification-before-completion/SKILL.md\nnpm notice 3.1kB templates/repo-skeleton/.codex-plugin/plugin.json\nnpm notice 2.8kB templates/repo-skeleton/.codex/hooks.json\nnpm notice 743B templates/repo-skeleton/.githooks/pre-commit\nnpm notice 734B templates/repo-skeleton/.github/workflows/prd-gate.yml\nnpm notice 3.1kB templates/repo-skeleton/.opencode/plugin.json\nnpm notice 3.3kB templates/repo-skeleton/.opencode/plugins/prd-hooks.js\nnpm notice 3.0kB templates/repo-skeleton/.opencode/skill/project-architecture/SKILL.md\nnpm notice 7.4kB templates/repo-skeleton/.opencode/skill/project-blocker-resolution/SKILL.md\nnpm notice 2.8kB templates/repo-skeleton/.opencode/skill/project-brainstorm/SKILL.md\nnpm notice 5.5kB templates/repo-skeleton/.opencode/skill/project-change-request/SKILL.md\nnpm notice 6.3kB templates/repo-skeleton/.opencode/skill/project-code-review/SKILL.md\nnpm notice 2.7kB templates/repo-skeleton/.opencode/skill/project-decision-ledger/SKILL.md\nnpm notice 18.1kB templates/repo-skeleton/.opencode/skill/project-decision-policy/SKILL.md\nnpm notice 3.8kB templates/repo-skeleton/.opencode/skill/project-deterministic-workflows/SKILL.md\nnpm notice 5.2kB templates/repo-skeleton/.opencode/skill/project-document-branch/SKILL.md\nnpm notice 2.8kB templates/repo-skeleton/.opencode/skill/project-evidence-ledger/SKILL.md\nnpm notice 3.3kB templates/repo-skeleton/.opencode/skill/project-evidence/SKILL.md\nnpm notice 11.4kB templates/repo-skeleton/.opencode/skill/project-git-workflow/SKILL.md\nnpm notice 7.4kB templates/repo-skeleton/.opencode/skill/project-health/SKILL.md\nnpm notice 5.6kB templates/repo-skeleton/.opencode/skill/project-implementation-plan/SKILL.md\nnpm notice 1.1kB templates/repo-skeleton/.opencode/skill/project-llm-wiki/LICENSE\nnpm notice 842B templates/repo-skeleton/.opencode/skill/project-llm-wiki/references/archive-template.md\nnpm notice 843B templates/repo-skeleton/.opencode/skill/project-llm-wiki/references/article-template.md\nnpm notice 559B templates/repo-skeleton/.opencode/skill/project-llm-wiki/references/index-template.md\nnpm notice 317B templates/repo-skeleton/.opencode/skill/project-llm-wiki/references/raw-template.md\nnpm notice 15.9kB templates/repo-skeleton/.opencode/skill/project-llm-wiki/SKILL.md\nnpm notice 7.4kB templates/repo-skeleton/.opencode/skill/project-local-integration/SKILL.md\nnpm notice 8.1kB templates/repo-skeleton/.opencode/skill/project-memory/SKILL.md\nnpm notice 5.8kB templates/repo-skeleton/.opencode/skill/project-planning-lifecycle/SKILL.md\nnpm notice 5.0kB templates/repo-skeleton/.opencode/skill/project-prd-plugin-setup/SKILL.md\nnpm notice 3.5kB templates/repo-skeleton/.opencode/skill/project-prd/SKILL.md\nnpm notice 22.1kB templates/repo-skeleton/.opencode/skill/project-request-intake/SKILL.md\nnpm notice 4.7kB templates/repo-skeleton/.opencode/skill/project-session-close/SKILL.md\nnpm notice 3.7kB templates/repo-skeleton/.opencode/skill/project-systematic-debugging/SKILL.md\nnpm notice 3.0kB templates/repo-skeleton/.opencode/skill/project-test-driven-implementation/SKILL.md\nnpm notice 3.7kB templates/repo-skeleton/.opencode/skill/project-traceability-review/SKILL.md\nnpm notice 2.5kB templates/repo-skeleton/.opencode/skill/project-traceability-sync/SKILL.md\nnpm notice 5.0kB templates/repo-skeleton/.opencode/skill/project-verification-before-completion/SKILL.md\nnpm notice 12.8kB templates/repo-skeleton/.prd_plugin/config.json\nnpm notice 1.6kB templates/repo-skeleton/.prd_plugin/hooks/prd_drift_check.py\nnpm notice 9.2kB templates/repo-skeleton/.prd_plugin/hooks/prd_hook_dispatch.py\nnpm notice 2.0kB templates/repo-skeleton/.prd_plugin/hooks/prd_log_skill.py\nnpm notice 4.1kB templates/repo-skeleton/.prd_plugin/hooks/prd_nudge.py\nnpm notice 3.7kB templates/repo-skeleton/.prd_plugin/hooks/prd_precommit_gate.py\nnpm notice 6.1kB templates/repo-skeleton/.prd_plugin/hooks/prd_reflection.py\nnpm notice 3.5kB templates/repo-skeleton/.prd_plugin/hooks/prd_session_report.py\nnpm notice 9.8kB templates/repo-skeleton/.prd_plugin/hooks/prd_stop_guard.py\nnpm notice 3.7kB templates/repo-skeleton/.prd_plugin/ID-SCHEME.md\nnpm notice 581B templates/repo-skeleton/.prd_plugin/ids/registry.json\nnpm notice 12.6kB templates/repo-skeleton/.prd_plugin/METHOD.md\nnpm notice 725B templates/repo-skeleton/.prd_plugin/method/artifact-format.md\nnpm notice 820B templates/repo-skeleton/.prd_plugin/method/completion-gate.md\nnpm notice 3.6kB templates/repo-skeleton/.prd_plugin/method/deterministic-workflows.md\nnpm notice 1.2kB templates/repo-skeleton/.prd_plugin/method/estimation.md\nnpm notice 1.9kB templates/repo-skeleton/.prd_plugin/method/grounding.md\nnpm notice 2.5kB templates/repo-skeleton/.prd_plugin/method/reporting.md\nnpm notice 4.1kB templates/repo-skeleton/.prd_plugin/method/self-service.md\nnpm notice 1.6kB templates/repo-skeleton/.prd_plugin/method/staleness-rules.md\nnpm notice 1.0kB templates/repo-skeleton/.prd_plugin/method/state-validation.md\nnpm notice 3.0kB templates/repo-skeleton/.prd_plugin/method/subagents.md\nnpm notice 47B templates/repo-skeleton/.prd_plugin/state/changelog.json\nnpm notice 49B templates/repo-skeleton/.prd_plugin/state/decisions.json\nnpm notice 157B templates/repo-skeleton/.prd_plugin/state/health.json\nnpm notice 47B templates/repo-skeleton/.prd_plugin/state/memory.json\nnpm notice 286B templates/repo-skeleton/.prd_plugin/state/project.json\nnpm notice 48B templates/repo-skeleton/.prd_plugin/state/releases.json\nnpm notice 48B templates/repo-skeleton/.prd_plugin/state/requests.json\nnpm notice 214B templates/repo-skeleton/.prd_plugin/state/sessions/shared/promoted-session-summaries.jsonl\nnpm notice 51B templates/repo-skeleton/.prd_plugin/state/tracking.json\nnpm notice 48B templates/repo-skeleton/.prd_plugin/state/workflow-runs.json\nnpm notice 167B templates/repo-skeleton/.prd_plugin/templates/architecture-delta.md\nnpm notice 1.4kB templates/repo-skeleton/.prd_plugin/templates/architecture.json\nnpm notice 368B templates/repo-skeleton/.prd_plugin/templates/brainstorm.md\nnpm notice 274B templates/repo-skeleton/.prd_plugin/templates/changelog.json\nnpm notice 12.9kB templates/repo-skeleton/.prd_plugin/templates/config.json\nnpm notice 265B templates/repo-skeleton/.prd_plugin/templates/decision-record.md\nnpm notice 398B templates/repo-skeleton/.prd_plugin/templates/decisions.json\nnpm notice 372B templates/repo-skeleton/.prd_plugin/templates/doc-branch.json\nnpm notice 313B templates/repo-skeleton/.prd_plugin/templates/doc-branch.md\nnpm notice 115B templates/repo-skeleton/.prd_plugin/templates/evidence.md\nnpm notice 249B templates/repo-skeleton/.prd_plugin/templates/handoff.json\nnpm notice 407B templates/repo-skeleton/.prd_plugin/templates/health.json\nnpm notice 695B templates/repo-skeleton/.prd_plugin/templates/human-exports/architecture.md\nnpm notice 626B templates/repo-skeleton/.prd_plugin/templates/human-exports/implementation-plan.md\nnpm notice 580B templates/repo-skeleton/.prd_plugin/templates/human-exports/prd.md\nnpm notice 1.4kB templates/repo-skeleton/.prd_plugin/templates/implementation-plan.json\nnpm notice 65B templates/repo-skeleton/.prd_plugin/templates/mailbox.json\nnpm notice 348B templates/repo-skeleton/.prd_plugin/templates/memory.json\nnpm notice 471B templates/repo-skeleton/.prd_plugin/templates/merge-checklist.md\nnpm notice 163B templates/repo-skeleton/.prd_plugin/templates/plan-delta.md\nnpm notice 139B templates/repo-skeleton/.prd_plugin/templates/prd-delta.md\nnpm notice 1.3kB templates/repo-skeleton/.prd_plugin/templates/prd.json\nnpm notice 454B templates/repo-skeleton/.prd_plugin/templates/project.json\nnpm notice 125B templates/repo-skeleton/.prd_plugin/templates/promoted-session-summary.jsonl\nnpm notice 923B templates/repo-skeleton/.prd_plugin/templates/releases.json\nnpm notice 1.4kB templates/repo-skeleton/.prd_plugin/templates/request.json\nnpm notice 1.7kB templates/repo-skeleton/.prd_plugin/templates/requests.json\nnpm notice 17.4kB templates/repo-skeleton/.prd_plugin/templates/script-install-scope.json\nnpm notice 235B templates/repo-skeleton/.prd_plugin/templates/session.json\nnpm notice 10.6kB templates/repo-skeleton/.prd_plugin/templates/skill-install-scope.json\nnpm notice 317B templates/repo-skeleton/.prd_plugin/templates/submission-package.json\nnpm notice 225B templates/repo-skeleton/.prd_plugin/templates/traceability-matrix.md\nnpm notice 321B templates/repo-skeleton/.prd_plugin/templates/tracking.json\nnpm notice 12.0kB templates/repo-skeleton/.prd_plugin/workflows.json\nnpm notice 11.1kB templates/repo-skeleton/AGENTS.md\nnpm notice 7.3kB templates/repo-skeleton/CLAUDE.md\nnpm notice 11.8kB templates/repo-skeleton/docs/INSTALL-MATRIX.md\nnpm notice 1.4kB templates/request.json\nnpm notice 1.7kB templates/requests.json\nnpm notice 17.4kB templates/script-install-scope.json\nnpm notice 235B templates/session.json\nnpm notice 10.6kB templates/skill-install-scope.json\nnpm notice 317B templates/submission-package.json\nnpm notice 225B templates/traceability-matrix.md\nnpm notice 321B templates/tracking.json\nnpm notice 12.0kB templates/workflows.json\nnpm notice Tarball Details\nnpm notice name: prd-plugin\nnpm notice version: 0.15.5\nnpm notice filename: prd-plugin-0.15.5.tgz\nnpm notice package size: 957.3 kB\nnpm notice unpacked size: 4.0 MB\nnpm notice shasum: 748d6d9d734d265ac1854b33314d274db4326616\nnpm notice integrity: sha512-RRgQA8XVSaSsF[...]ZXROipSYtWCmA==\nnpm notice total files: 478\nnpm notice\n"
          },
          "output_hash": "b73abd7c9f957f0663a61108a952d64c31fb5e67023a4f845add6bb3be2818a0",
          "completed_at": "2026-07-15T03:48:22Z"
        },
        {
          "id": "gate",
          "action": "state.gate",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-15T03:48:22Z",
          "output": {
            "status": "ok",
            "repo_root": "D:\\Projects\\prd-plugin",
            "summary": {
              "errors": 0,
              "warnings": 0
            },
            "findings": []
          },
          "output_hash": "a705b176b049df02348354c23988d51f616670b7352ad410321cbe0577edf053",
          "completed_at": "2026-07-15T03:48:22Z"
        }
      ],
      "completed_at": "2026-07-15T03:48:22Z"
    },
    {
      "id": "WFR-020",
      "schema_version": "1.0",
      "workflow_id": "hub.release",
      "workflow_version": 1,
      "definition_hash": "b8efcc9726266d73719719856dab279ace8f4d21be7b2d01b4f5f08bd3eacc1b",
      "plan_hash": "45a6765f24486f3d1e889f80a653564254c97a7e400033444b676e8ed8cdecb8",
      "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
      "inputs": {},
      "idempotency_key": "0.15.5-wiki-inline-links-release-retry",
      "status": "completed",
      "attempt": 1,
      "created_at": "2026-07-15T03:48:11Z",
      "updated_at": "2026-07-15T03:49:09Z",
      "receipts": [
        {
          "step_id": "diff",
          "action": "git.diff_check",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "11c11db30f4b3f6c758722ba3e27eea08145b7d212f6a157451e364b48475280",
          "completed_at": "2026-07-15T03:48:11Z"
        },
        {
          "step_id": "config",
          "action": "config.audit",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "3c29c3b0cfac90c0c7df955d1fb281c137037adeba1b7c1feeccae165cf66a6b",
          "completed_at": "2026-07-15T03:48:11Z"
        },
        {
          "step_id": "state",
          "action": "state.consistency",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "5a1c6e5246defb1b6b6b90ff734db95bece2886b408ab112ed9b8e67222d5568",
          "completed_at": "2026-07-15T03:48:11Z"
        },
        {
          "step_id": "workflow_audit",
          "action": "process.fixed",
          "input_hash": "edf19b269a54d72753f1abc2b8ffcb810c2b7bc377cee7e1698c939f17e0be94",
          "output_hash": "231b43ed70e09c4e7cbcda1094b00e0274dd4a22ff8324da2eb907f705c1316a",
          "completed_at": "2026-07-15T03:48:11Z"
        },
        {
          "step_id": "suite",
          "action": "process.fixed",
          "input_hash": "954e575e48145853f5681eda189186c95a053267158fae669114320f2e53794a",
          "output_hash": "6350b1c72756b309500532c4b3a03bd6a882f6ef2af8c8b14deec5c64c7285dd",
          "completed_at": "2026-07-15T03:49:07Z"
        },
        {
          "step_id": "release",
          "action": "process.fixed",
          "input_hash": "1e5b0c18d93eb4c2248f9a00adbd438e52f3ef02137477fb8376c69cfe86fc9b",
          "output_hash": "b1b562734d4d622b33378f1e110a4fafce9dc535c14c2bf538357ccb4f16799c",
          "completed_at": "2026-07-15T03:49:07Z"
        },
        {
          "step_id": "gaps",
          "action": "process.fixed",
          "input_hash": "577241909238eeb55683f89d2d2216648dad2e3127397993e22493829a1307a4",
          "output_hash": "71e9493754d15e772a832cc60bc38ec9a1120d1e9e32e97da6ce8564c1fdd1fe",
          "completed_at": "2026-07-15T03:49:07Z"
        },
        {
          "step_id": "package",
          "action": "process.fixed",
          "input_hash": "06cd12e1f3db3d985f9150520afa60f288297ff0ca01a8e813e9bb6291aa8836",
          "output_hash": "6b294a96b61b09126cfc393887080baad6c7a437f6b75edee99c33cc5a1bb829",
          "completed_at": "2026-07-15T03:49:08Z"
        },
        {
          "step_id": "gate",
          "action": "state.gate",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "a705b176b049df02348354c23988d51f616670b7352ad410321cbe0577edf053",
          "completed_at": "2026-07-15T03:49:09Z"
        }
      ],
      "steps": [
        {
          "id": "diff",
          "action": "git.diff_check",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-15T03:48:11Z",
          "output": {
            "passed": true
          },
          "output_hash": "11c11db30f4b3f6c758722ba3e27eea08145b7d212f6a157451e364b48475280",
          "completed_at": "2026-07-15T03:48:11Z"
        },
        {
          "id": "config",
          "action": "config.audit",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-15T03:48:11Z",
          "output": {
            "status": "ok",
            "summary": {
              "settings": 172,
              "mutable": 163,
              "read_only_or_managed": 9,
              "unclassified": 0,
              "unknown": 0,
              "invalid": 0,
              "missing_using_defaults": 0
            },
            "unclassified_keys": [],
            "unknown_keys": [],
            "invalid_values": [],
            "missing_using_defaults": []
          },
          "output_hash": "3c29c3b0cfac90c0c7df955d1fb281c137037adeba1b7c1feeccae165cf66a6b",
          "completed_at": "2026-07-15T03:48:11Z"
        },
        {
          "id": "state",
          "action": "state.consistency",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-15T03:48:11Z",
          "output": {
            "status": "ok",
            "repo_root": "D:\\Projects\\prd-plugin",
            "summary": {
              "errors": 0,
              "warnings": 0,
              "infos": 0
            },
            "findings": []
          },
          "output_hash": "5a1c6e5246defb1b6b6b90ff734db95bece2886b408ab112ed9b8e67222d5568",
          "completed_at": "2026-07-15T03:48:11Z"
        },
        {
          "id": "workflow_audit",
          "action": "process.fixed",
          "status": "completed",
          "resolved_input_hash": "edf19b269a54d72753f1abc2b8ffcb810c2b7bc377cee7e1698c939f17e0be94",
          "started_at": "2026-07-15T03:48:11Z",
          "output": {
            "operation": "workflow_chml_audit",
            "command": [
              "python",
              "scripts/workflow_chml_audit.py",
              "--repo-root",
              ".",
              "--format",
              "json"
            ],
            "exit_code": 0,
            "stdout": "{\n  \"status\": \"ok\",\n  \"repo_root\": \"D:\\\\Projects\\\\prd-plugin\",\n  \"summary\": {\n    \"critical\": 0,\n    \"high\": 0,\n    \"medium\": 0,\n    \"low\": 0\n  },\n  \"findings\": []\n}\n",
            "stderr": ""
          },
          "output_hash": "231b43ed70e09c4e7cbcda1094b00e0274dd4a22ff8324da2eb907f705c1316a",
          "completed_at": "2026-07-15T03:48:11Z"
        },
        {
          "id": "suite",
          "action": "process.fixed",
          "status": "completed",
          "resolved_input_hash": "954e575e48145853f5681eda189186c95a053267158fae669114320f2e53794a",
          "started_at": "2026-07-15T03:48:11Z",
          "output": {
            "operation": "local_workflow_check",
            "command": [
              "python",
              "scripts/local_workflow_check.py"
            ],
            "exit_code": 0,
            "stdout": "Structured file validation passed.\n$ python -m unittest discover -s tests -v\n{\n  \"status\": \"fail\",\n  \"repo_root\": \"C:\\\\Users\\\\marku\\\\AppData\\\\Local\\\\Temp\\\\tmppwjjxl8k\",\n  \"summary\": {\n    \"errors\": 1,\n    \"warnings\": 0\n  },\n  \"findings\": [\n    {\n      \"check\": \"duplicate_id\",\n      \"severity\": \"error\",\n      \"summary\": \"Duplicate id REQ-002 in .prd_plugin/state/requests.json.\",\n      \"required_action\": \"Renumber one record so REQ-002 is unique. Allocate IDs with the MCP tool prd_next_id (or the record tools like prd_open_goal) instead of hand-computing them.\"\n    }\n  ]\n}\nautonomy_level set to guided\nautonomy_level set to autonomous\nDESTRUCTIVE RESET REQUESTED: --force --yes will erase protected PRD Plugin project data.\nThe following existing state/configuration files would be replaced with skeleton defaults:\n  - .prd_plugin/state/tracking.json\nThis may erase IDs, tracking, requests, decisions, health findings, configuration, and session memory.\nFor a normal safe update, remove --yes and run: npx prd-install . --force\nPRD Plugin safe update: preserving existing state/config and refreshing plugin files only. Never add --yes to a routine update; it requests a destructive reset.\nPRD Plugin safe update: preserving existing state/config and refreshing plugin files only. Never add --yes to a routine update; it requests a destructive reset.\nPRD Plugin safe update: preserving existing state/config and refreshing plugin files only. Never add --yes to a routine update; it requests a destructive reset.\nPRD Plugin safe update: preserving existing state/config and refreshing plugin files only. Never add --yes to a routine update; it requests a destructive reset.\nPRD Plugin safe update: preserving existing state/config and refreshing plugin files only. Never add --yes to a routine update; it requests a destructive reset.\nPRD Plugin safe update: preserving existing state/config and refreshing plugin files only. Never add --yes to a routine update; it requests a destructive reset.\nPRD Plugin safe update: preserving existing state/config and refreshing plugin files only. Never add --yes to a routine update; it requests a destructive reset.\nPRD Plugin safe update: preserving existing state/config and refreshing plugin files only. Never add --yes to a routine update; it requests a destructive reset.\nPRD Plugin safe update: preserving existing state/config and refreshing plugin files only. Never add --yes to a routine update; it requests a destructive reset.\nPRD Plugin safe update: preserving existing state/config and refreshing plugin files only. Never add --yes to a routine update; it requests a destructive reset.\nPRD Plugin safe update: preserving existing state/config and refreshing plugin files only. Never add --yes to a routine update; it requests a destructive reset.\nPRD Plugin safe update: preserving existing state/config and refreshing plugin files only. Never add --yes to a routine update; it requests a destructive reset.\nPRD Plugin safe update: preserving existing state/config and refreshing plugin files only. Never add --yes to a routine update; it requests a destructive reset.\n{\"decision\": \"block\", \"reason\": \"Autonomous run-until-done: goal TRK-110 is still active. Continue with the next incomplete step toward it \\u2014 do not stop to ask 'shall I proceed?'. If you genuinely need the user (consent floor: push/merge/publish/secrets, or a real blocker), create the file .prd_plugin/local/autonomy-pause with a one-line reason and then stop; the guard will let you. Otherwise keep going.\"}\n$ python scripts/feature_skill_audit.py --repo-root . --format json\n{\n  \"status\": \"ok\",\n  \"repo_root\": \"D:\\\\Projects\\\\prd-plugin\",\n  \"contract\": \"templates/feature-skill-map.json\",\n  \"feature_count\": 17,\n  \"summary\": {\n    \"critical\": 0,\n    \"high\": 0,\n    \"medium\": 0,\n    \"low\": 0\n  },\n  \"findings\": []\n}\n$ python scripts/gap_audit.py --target-version 0.15.5\n# PRD Plugin Gap Audit\n\nTarget version: `0.15.5`\n\n## Findings\n\n- None\n$ python scripts/version_advice.py --installed-repo . --format json --output request-report/version-advice.json\n$ python scripts/release_check.py --output request-report/release-hygiene.md\n$ python scripts/prd_doctor.py --repo-root . --format json --output request-report/prd-doctor.json\n$ python scripts/state_consistency_check.py --repo-root . --format json --output request-report/state-consistency.json\n$ python scripts/prd_install_skills.py --repo-root . --dry-run\n{\n  \"status\": \"dry_run\",\n  \"target_agent\": \"codex\",\n  \"targets\": [\n    {\n      \"agent\": \"codex\",\n      \"target\": \".agents\\\\skills\",\n      \"would_install\": [\n        \"project-architecture\",\n        \"project-blocker-resolution\",\n        \"project-brainstorm\",\n        \"project-change-request\",\n        \"project-code-review\",\n        \"project-decision-ledger\",\n        \"project-decision-policy\",\n        \"project-deterministic-workflows\",\n        \"project-document-branch\",\n        \"project-evidence\",\n        \"project-evidence-ledger\",\n        \"project-git-workflow\",\n        \"project-health\",\n        \"project-implementation-plan\",\n        \"project-llm-wiki\",\n        \"project-local-integration\",\n        \"project-memory\",\n        \"project-planning-lifecycle\",\n        \"project-prd\",\n        \"project-prd-plugin-setup\",\n        \"project-request-intake\",\n        \"project-session-close\",\n        \"project-systematic-debugging\",\n        \"project-test-driven-implementation\",\n        \"project-traceability-review\",\n        \"project-traceability-sync\",\n        \"project-verification-before-completion\"\n      ],\n      \"would_remove\": [\n        \"project-fold-it-in\",\n        \"project-self-audit\"\n      ]\n    }\n  ],\n  \"installed_count\": 0,\n  \"target\": \".agents\\\\skills\",\n  \"installed\": [],\n  \"removed\": [],\n  \"would_install\": [\n    \"project-architecture\",\n    \"project-blocker-resolution\",\n    \"project-brainstorm\",\n    \"project-change-request\",\n    \"project-code-review\",\n    \"project-decision-ledger\",\n    \"project-decision-policy\",\n    \"project-deterministic-workflows\",\n    \"project-document-branch\",\n    \"project-evidence\",\n    \"project-evidence-ledger\",\n    \"project-git-workflow\",\n    \"project-health\",\n    \"project-implementation-plan\",\n    \"project-llm-wiki\",\n    \"project-local-integration\",\n    \"project-memory\",\n    \"project-planning-lifecycle\",\n    \"project-prd\",\n    \"project-prd-plugin-setup\",\n    \"project-request-intake\",\n    \"project-session-close\",\n    \"project-systematic-debugging\",\n    \"project-test-driven-implementation\",\n    \"project-traceability-review\",\n    \"project-traceability-sync\",\n    \"project-verification-before-completion\"\n  ],\n  \"would_remove\": [\n    \"project-fold-it-in\",\n    \"project-self-audit\"\n  ]\n}\n$ python scripts/request_report.py --config .prd_plugin/config.json --format markdown --output request-report/request-report.md\n$ python scripts/request_report.py --config .prd_plugin/config.json --format json --output request-report/request-report.json\n$ python scripts/message_check.py --config .prd_plugin/config.json --format json --output request-report/message-check.json\nLocal workflow check completed.\n",
            "stderr": "am_runtime_and_required) ... ok\ntest_adapted_skills_are_installed_to_repo_local_and_skeleton (test_superpowers_adapted_skills.SuperpowersAdaptedSkillsTests.test_adapted_skills_are_installed_to_repo_local_and_skeleton) ... ok\ntest_adapted_superpowers_skills_exist_with_attribution_and_prd_ids (test_superpowers_adapted_skills.SuperpowersAdaptedSkillsTests.test_adapted_superpowers_skills_exist_with_attribution_and_prd_ids) ... ok\ntest_downstream_skills_do_not_direct_agents_to_run_hub_only_scripts (test_superpowers_adapted_skills.SuperpowersAdaptedSkillsTests.test_downstream_skills_do_not_direct_agents_to_run_hub_only_scripts) ... ok\ntest_notice_records_superpowers_origin (test_superpowers_adapted_skills.SuperpowersAdaptedSkillsTests.test_notice_records_superpowers_origin) ... ok\ntest_skeleton_skill_copies_exist (test_superpowers_adapted_skills.SuperpowersAdaptedSkillsTests.test_skeleton_skill_copies_exist) ... ok\ntest_specific_adaptations_keep_strong_method_and_prd_state_hooks (test_superpowers_adapted_skills.SuperpowersAdaptedSkillsTests.test_specific_adaptations_keep_strong_method_and_prd_state_hooks) ... ok\ntest_verification_guidance_uses_current_change_scope_not_unconditional_full_suite (test_superpowers_adapted_skills.SuperpowersAdaptedSkillsTests.test_verification_guidance_uses_current_change_scope_not_unconditional_full_suite) ... ok\ntest_extracts_affected_paths (test_telemetry.CaptureTurnRecordsTests.test_extracts_affected_paths) ... ok\ntest_extracts_referenced_ids (test_telemetry.CaptureTurnRecordsTests.test_extracts_referenced_ids) ... ok\ntest_marks_failed_tool (test_telemetry.CaptureTurnRecordsTests.test_marks_failed_tool) ... ok\ntest_one_record_per_tool_call (test_telemetry.CaptureTurnRecordsTests.test_one_record_per_tool_call) ... ok\ntest_turn_index_increments_per_prompt (test_telemetry.CaptureTurnRecordsTests.test_turn_index_increments_per_prompt) ... ok\ntest_preserves_benign_args (test_telemetry.RedactArgsTests.test_preserves_benign_args) ... ok\ntest_redacts_credential (test_telemetry.RedactArgsTests.test_redacts_credential) ... ok\ntest_redacts_key (test_telemetry.RedactArgsTests.test_redacts_key) ... ok\ntest_redacts_local_path (test_telemetry.RedactArgsTests.test_redacts_local_path) ... ok\ntest_redacts_nested (test_telemetry.RedactArgsTests.test_redacts_nested) ... ok\ntest_redacts_password (test_telemetry.RedactArgsTests.test_redacts_password) ... ok\ntest_redacts_secret (test_telemetry.RedactArgsTests.test_redacts_secret) ... ok\ntest_redacts_token (test_telemetry.RedactArgsTests.test_redacts_token) ... ok\ntest_scenario (test_telemetry.SyntheticFiveTurnScenarioTests.test_scenario) ... ok\ntest_required_fields_present (test_telemetry.TelemetryRecordSchemaTests.test_required_fields_present) ... ok\ntest_to_dict_is_json_serializable (test_telemetry.TelemetryRecordSchemaTests.test_to_dict_is_json_serializable) ... ok\ntest_appends_to_existing_file (test_telemetry.WriteTelemetryJsonlTests.test_appends_to_existing_file) ... ok\ntest_load_roundtrip (test_telemetry.WriteTelemetryJsonlTests.test_load_roundtrip) ... ok\ntest_load_skips_malformed_lines (test_telemetry.WriteTelemetryJsonlTests.test_load_skips_malformed_lines) ... ok\ntest_writes_one_line_per_record (test_telemetry.WriteTelemetryJsonlTests.test_writes_one_line_per_record) ... ok\ntest_base_ref_is_resolved_locally_and_option_like_values_are_rejected (test_test_scope.ChangedFileTests.test_base_ref_is_resolved_locally_and_option_like_values_are_rejected) ... ok\ntest_collects_staged_unstaged_and_untracked_without_a_remote (test_test_scope.ChangedFileTests.test_collects_staged_unstaged_and_untracked_without_a_remote) ... ok\ntest_rejects_absolute_or_parent_traversal_changed_paths (test_test_scope.ChangedFileTests.test_rejects_absolute_or_parent_traversal_changed_paths) ... ok\ntest_direct_json_cannot_disable_the_safe_full_fallback (test_test_scope.PlanTests.test_direct_json_cannot_disable_the_safe_full_fallback) ... ok\ntest_direct_json_cannot_remove_mandatory_full_suite_triggers (test_test_scope.PlanTests.test_direct_json_cannot_remove_mandatory_full_suite_triggers) ... ok\ntest_disabled_or_unavailable_executor_requires_full_verification (test_test_scope.PlanTests.test_disabled_or_unavailable_executor_requires_full_verification) ... ok\ntest_narrow_change_emits_deterministic_ai_collab_requests (test_test_scope.PlanTests.test_narrow_change_emits_deterministic_ai_collab_requests) ... ok\ntest_no_changes_requires_no_verification_unless_release (test_test_scope.PlanTests.test_no_changes_requires_no_verification_unless_release) ... ok\ntest_plan_tells_runtime_to_fallback_on_degraded_or_unmapped_results (test_test_scope.PlanTests.test_plan_tells_runtime_to_fallback_on_degraded_or_unmapped_results) ... ok\ntest_release_core_and_excessive_changes_require_full_verification (test_test_scope.PlanTests.test_release_core_and_excessive_changes_require_full_verification) ... ok\ntest_document_branch_skill_defines_parallel_tracking_profile_everywhere (test_tracking_branch_policy.TrackingBranchPolicyTests.test_document_branch_skill_defines_parallel_tracking_profile_everywhere) ... ok\ntest_every_direct_tracking_writer_is_parallel_worker_aware_everywhere (test_tracking_branch_policy.TrackingBranchPolicyTests.test_every_direct_tracking_writer_is_parallel_worker_aware_everywhere) ... ok\ntest_memory_and_git_skills_keep_workers_off_canonical_state_everywhere (test_tracking_branch_policy.TrackingBranchPolicyTests.test_memory_and_git_skills_keep_workers_off_canonical_state_everywhere) ... ok\ntest_narrative_branch_manifest_template_is_installed (test_tracking_branch_policy.TrackingBranchPolicyTests.test_narrative_branch_manifest_template_is_installed) ... ok\ntest_user_docs_explain_branch_then_promote_workflow (test_tracking_branch_policy.TrackingBranchPolicyTests.test_user_docs_explain_branch_then_promote_workflow) ... ok\ntest_worker_launch_contract_is_shipped_in_the_on_demand_method (test_tracking_branch_policy.TrackingBranchPolicyTests.test_worker_launch_contract_is_shipped_in_the_on_demand_method) ... ok\ntest_empty_repo_safe (test_tracking_commands.PrdStatusTests.test_empty_repo_safe) ... ok\ntest_legacy_and_open_statuses_are_not_hidden (test_tracking_commands.PrdStatusTests.test_legacy_and_open_statuses_are_not_hidden) ... ok\ntest_null_status_and_legacy_health_do_not_break_status (test_tracking_commands.PrdStatusTests.test_null_status_and_legacy_health_do_not_break_status) ... ok\ntest_summarizes_state (test_tracking_commands.PrdStatusTests.test_summarizes_state) ... ok\ntest_tracking_branches_are_visible_without_reading_branch_files (test_tracking_commands.PrdStatusTests.test_tracking_branches_are_visible_without_reading_branch_files) ... ok\ntest_commands_exist_in_all_locations (test_tracking_commands.TrackingCommandFileTests.test_commands_exist_in_all_locations) ... ok\ntest_commands_invoke_the_right_workflow (test_tracking_commands.TrackingCommandFileTests.test_commands_invoke_the_right_workflow) ... ok\ntest_prd_status_is_downstream_runtime (test_tracking_commands.TrackingCommandFileTests.test_prd_status_is_downstream_runtime) ... ok\ntest_catalog_describes_latency_and_effective_dependencies (test_unified_config.CatalogTests.test_catalog_describes_latency_and_effective_dependencies) ... ok\ntest_every_shipped_leaf_is_classified (test_unified_config.CatalogTests.test_every_shipped_leaf_is_classified) ... ok\ntest_inventory_separates_non_persistent_control_planes (test_unified_config.CatalogTests.test_inventory_separates_non_persistent_control_planes) ... ok\ntest_inventory_audit_describe_and_profile_commands_emit_json (test_unified_config.CliTests.test_inventory_audit_describe_and_profile_commands_emit_json) ... ok\ntest_audit_rejects_cli_coercions_in_direct_json (test_unified_config.MutationTests.test_audit_rejects_cli_coercions_in_direct_json) ... ok\ntest_audit_rejects_invalid_custom_profiles_and_active_marker (test_unified_config.MutationTests.test_audit_rejects_invalid_custom_profiles_and_active_marker) ... ok\ntest_audit_reports_scalar_configuration_section_without_crashing (test_unified_config.MutationTests.test_audit_reports_scalar_configuration_section_without_crashing) ... ok\ntest_audit_reports_unknown_and_invalid_values (test_unified_config.MutationTests.test_audit_reports_unknown_and_invalid_values) ... ok\ntest_enable_disable_only_accept_mutable_booleans (test_unified_config.MutationTests.test_enable_disable_only_accept_mutable_booleans) ... ok\ntest_failed_atomic_replace_leaves_original_config_untouched (test_unified_config.MutationTests.test_failed_atomic_replace_leaves_original_config_untouched) ... ok\ntest_malformed_config_is_never_replaced_by_a_mutation (test_unified_config.MutationTests.test_malformed_config_is_never_replaced_by_a_mutation) ... ok\ntest_manual_set_marks_profile_custom_and_preserves_style (test_unified_config.MutationTests.test_manual_set_marks_profile_custom_and_preserves_style) ... ok\ntest_scalar_parent_is_not_clobbered_by_nested_set (test_unified_config.MutationTests.test_scalar_parent_is_not_clobbered_by_nested_set) ... ok\ntest_builtin_profile_dry_run_then_atomic_apply (test_unified_config.ProfileTests.test_builtin_profile_dry_run_then_atomic_apply) ... ok\ntest_invalid_custom_profile_never_partially_writes (test_unified_config.ProfileTests.test_invalid_custom_profile_never_partially_writes) ... ok\ntest_save_show_diff_and_delete_custom_profile (test_unified_config.ProfileTests.test_save_show_diff_and_delete_custom_profile) ... ok\ntest_does_not_flag_canonical_prd_state_paths (test_unsubmitted_plugin_request.UnsubmittedPluginRequestTests.test_does_not_flag_canonical_prd_state_paths) ... ok\ntest_does_not_flag_ordinary_project_requests (test_unsubmitted_plugin_request.UnsubmittedPluginRequestTests.test_does_not_flag_ordinary_project_requests) ... ok\ntest_does_not_flag_rejected_requests (test_unsubmitted_plugin_request.UnsubmittedPluginRequestTests.test_does_not_flag_rejected_requests) ... ok\ntest_does_not_flag_when_already_marked_upstream (test_unsubmitted_plugin_request.UnsubmittedPluginRequestTests.test_does_not_flag_when_already_marked_upstream) ... ok\ntest_flags_a_local_request_about_a_plugin_script (test_unsubmitted_plugin_request.UnsubmittedPluginRequestTests.test_flags_a_local_request_about_a_plugin_script) ... ok\ntest_flags_a_request_that_names_itself_upstream (test_unsubmitted_plugin_request.UnsubmittedPluginRequestTests.test_flags_a_request_that_names_itself_upstream) ... ok\ntest_never_fires_in_the_hub_repo_itself (test_unsubmitted_plugin_request.UnsubmittedPluginRequestTests.test_never_fires_in_the_hub_repo_itself) ... ok\ntest_wired_into_run_checks (test_unsubmitted_plugin_request.UnsubmittedPluginRequestTests.test_wired_into_run_checks) ... ok\ntest_appends_version_change_request (test_version_advice.VersionAdviceTests.test_appends_version_change_request) ... ok\ntest_builds_safe_update_advice_for_low_risk_releases (test_version_advice.VersionAdviceTests.test_builds_safe_update_advice_for_low_risk_releases) ... ok\ntest_cli_uses_hub_releases_when_downstream_repo_has_no_releases_file (test_version_advice.VersionAdviceTests.test_cli_uses_hub_releases_when_downstream_repo_has_no_releases_file) ... ok\ntest_detects_installed_version_from_bom_json (test_version_advice.VersionAdviceTests.test_detects_installed_version_from_bom_json) ... ok\ntest_detects_installed_version_from_opencode_plugin_manifest (test_version_advice.VersionAdviceTests.test_detects_installed_version_from_opencode_plugin_manifest) ... ok\ntest_detects_installed_version_from_prd_plugin_config (test_version_advice.VersionAdviceTests.test_detects_installed_version_from_prd_plugin_config) ... ok\ntest_detects_latest_version_from_plugin_manifest (test_version_advice.VersionAdviceTests.test_detects_latest_version_from_plugin_manifest) ... ok\ntest_installed_version_priority_prefers_config_then_codex_then_opencode (test_version_advice.VersionAdviceTests.test_installed_version_priority_prefers_config_then_codex_then_opencode) ... ok\ntest_orders_prerelease_before_final_release (test_version_advice.VersionAdviceTests.test_orders_prerelease_before_final_release) ... ok\ntest_recommends_review_first_for_medium_or_high_risk_release (test_version_advice.VersionAdviceTests.test_recommends_review_first_for_medium_or_high_risk_release) ... ok\ntest_disabled_returns_disabled_and_no_fetch (test_version_check.CheckTests.test_disabled_returns_disabled_and_no_fetch) ... ok\ntest_force_refetches_within_ttl (test_version_check.CheckTests.test_force_refetches_within_ttl) ... ok\ntest_network_failure_is_fail_open (test_version_check.CheckTests.test_network_failure_is_fail_open) ... ok\ntest_no_update_when_current (test_version_check.CheckTests.test_no_update_when_current) ... ok\ntest_status_is_cache_only_no_fetch (test_version_check.CheckTests.test_status_is_cache_only_no_fetch) ... ok\ntest_ttl_cache_avoids_refetch (test_version_check.CheckTests.test_ttl_cache_avoids_refetch) ... ok\ntest_ttl_expiry_refetches (test_version_check.CheckTests.test_ttl_expiry_refetches) ... ok\ntest_update_available_when_npm_is_ahead (test_version_check.CheckTests.test_update_available_when_npm_is_ahead) ... ok\ntest_status_cli_exits_zero (test_version_check.CliTests.test_status_cli_exits_zero) ... ok\ntest_default_ttl_is_responsive_not_a_day (test_version_check.FreshnessTests.test_default_ttl_is_responsive_not_a_day) ... ok\ntest_fetch_latest_accepts_a_timeout (test_version_check.FreshnessTests.test_fetch_latest_accepts_a_timeout) ... ok\ntest_nudge_refreshes_in_session_not_cache_only (test_version_check.FreshnessTests.test_nudge_refreshes_in_session_not_cache_only) ... ok\ntest_registry_default_ttl_matches (test_version_check.FreshnessTests.test_registry_default_ttl_matches) ... ok\ntest_semver_ordering (test_version_check.ParseTests.test_semver_ordering) ... ok\ntest_set_enabled_writes_config (test_version_check.ToggleTests.test_set_enabled_writes_config) ... ok\ntest_config_has_version_check_default_on (test_version_check.WiringTests.test_config_has_version_check_default_on) ... ok\ntest_nudge_surfaces_update_available (test_version_check.WiringTests.test_nudge_surfaces_update_available) ... ok\ntest_prd_version_command_exists (test_version_check.WiringTests.test_prd_version_command_exists) ... ok\ntest_script_registered_downstream (test_version_check.WiringTests.test_script_registered_downstream) ... ok\ntest_plan_cli_emits_json (test_wiki_backfill.CliTests.test_plan_cli_emits_json) ... ok\ntest_status_cli (test_wiki_backfill.CliTests.test_status_cli) ... ok\ntest_marker_written_for_established_repo_gaining_wiki (test_wiki_backfill.InstallerMarkerTests.test_marker_written_for_established_repo_gaining_wiki) ... ok\ntest_no_marker_for_empty_scaffold (test_wiki_backfill.InstallerMarkerTests.test_no_marker_for_empty_scaffold) ... ok\ntest_no_marker_when_wiki_already_exists (test_wiki_backfill.InstallerMarkerTests.test_no_marker_when_wiki_already_exists) ... ok\ntest_no_marker_when_wiki_disabled (test_wiki_backfill.InstallerMarkerTests.test_no_marker_when_wiki_disabled) ... ok\ntest_pending_false_when_absent (test_wiki_backfill.StatusTests.test_pending_false_when_absent) ... ok\ntest_pending_false_when_wiki_already_exists (test_wiki_backfill.StatusTests.test_pending_false_when_wiki_already_exists) ... ok\ntest_pending_true_when_marker_present (test_wiki_backfill.StatusTests.test_pending_true_when_marker_present) ... ok\ntest_plan_excludes_generated_report_artifacts (test_wiki_backfill.SurveyPlanTests.test_plan_excludes_generated_report_artifacts)\nrequest-report/ (incl. its calibration report trees) and docs/evidence/ ... ok\ntest_plan_excludes_plugin_and_vendor_noise (test_wiki_backfill.SurveyPlanTests.test_plan_excludes_plugin_and_vendor_noise) ... ok\ntest_plan_inventories_code_docs_and_state (test_wiki_backfill.SurveyPlanTests.test_plan_inventories_code_docs_and_state) ... ok\ntest_plan_is_read_only (test_wiki_backfill.SurveyPlanTests.test_plan_is_read_only) ... ok\ntest_wiki_drift_in_on_stop_and_default_sets (test_wiki_backfill.WikiDriftMonitorWiringTests.test_wiki_drift_in_on_stop_and_default_sets) ... ok\ntest_current_article_no_drift (test_wiki_backfill.WikiDriftTests.test_current_article_no_drift) ... ok\ntest_drift_cli (test_wiki_backfill.WikiDriftTests.test_drift_cli) ... ok\ntest_far_behind_article_flagged (test_wiki_backfill.WikiDriftTests.test_far_behind_article_flagged) ... ok\ntest_no_wiki_is_ok (test_wiki_backfill.WikiDriftTests.test_no_wiki_is_ok) ... ok\ntest_unlinked_markdown_reference_is_part_of_wiki_drift (test_wiki_backfill.WikiDriftTests.test_unlinked_markdown_reference_is_part_of_wiki_drift) ... ok\ntest_unstamped_article_flagged (test_wiki_backfill.WikiDriftTests.test_unstamped_article_flagged) ... ok\ntest_ambiguous_reference_is_reported_but_never_guessed (test_wiki_backfill.WikiInlineMarkdownLinkTests.test_ambiguous_reference_is_reported_but_never_guessed) ... ok\ntest_cli_check_fails_and_fix_then_passes (test_wiki_backfill.WikiInlineMarkdownLinkTests.test_cli_check_fails_and_fix_then_passes) ... ok\ntest_existing_inline_links_and_fenced_examples_are_not_findings (test_wiki_backfill.WikiInlineMarkdownLinkTests.test_existing_inline_links_and_fenced_examples_are_not_findings) ... ok\ntest_fix_rewrites_only_unambiguous_references_to_relative_inline_links (test_wiki_backfill.WikiInlineMarkdownLinkTests.test_fix_rewrites_only_unambiguous_references_to_relative_inline_links) ... ok\ntest_reports_resolvable_bare_and_code_wrapped_markdown_references (test_wiki_backfill.WikiInlineMarkdownLinkTests.test_reports_resolvable_bare_and_code_wrapped_markdown_references) ... ok\ntest_nudge_surfaces_pending_backfill (test_wiki_backfill.WiringTests.test_nudge_surfaces_pending_backfill) ... ok\ntest_script_registered_downstream (test_wiki_backfill.WiringTests.test_script_registered_downstream) ... ok\ntest_skill_has_backfill_mode (test_wiki_backfill.WiringTests.test_skill_has_backfill_mode) ... ok\ntest_no_cp1252_unencodable_chars_in_agent_facing_tools (test_windows_console_safe.SourceScanTests.test_no_cp1252_unencodable_chars_in_agent_facing_tools) ... ok\ntest_backfill_pending_status_renders_cp1252_safe (test_windows_console_safe.StatusRenderTests.test_backfill_pending_status_renders_cp1252_safe) ... ok\ntest_repository_workflow_surfaces_are_chml_zero (test_workflow_chml_audit.WorkflowChmlAuditTests.test_repository_workflow_surfaces_are_chml_zero) ... ok\ntest_semantic_skill_finding_is_part_of_workflow_chml (test_workflow_chml_audit.WorkflowChmlAuditTests.test_semantic_skill_finding_is_part_of_workflow_chml) ... ok\ntest_git_workflow_defers_autonomy_to_decision_policy_but_keeps_floor (test_workflow_consistency.AutonomyConflictResolutionTests.test_git_workflow_defers_autonomy_to_decision_policy_but_keeps_floor) ... ok\ntest_request_intake_defers_autonomy_and_owns_graduation (test_workflow_consistency.AutonomyConflictResolutionTests.test_request_intake_defers_autonomy_and_owns_graduation) ... ok\ntest_evidence_pair_states_create_vs_review_boundary (test_workflow_consistency.BoundaryClarityTests.test_evidence_pair_states_create_vs_review_boundary) ... ok\ntest_session_close_states_memory_boundary (test_workflow_consistency.BoundaryClarityTests.test_session_close_states_memory_boundary) ... ok\ntest_document_branch_has_promotion_owner (test_workflow_consistency.DeadEndOwnerTests.test_document_branch_has_promotion_owner) ... ok\ntest_health_findings_have_triage_dispositions (test_workflow_consistency.DeadEndOwnerTests.test_health_findings_have_triage_dispositions) ... ok\ntest_memory_owns_schema_version_changes (test_workflow_consistency.DeadEndOwnerTests.test_memory_owns_schema_version_changes) ... ok\ntest_planning_lifecycle_has_stage_readiness_checkpoints (test_workflow_consistency.DeadEndOwnerTests.test_planning_lifecycle_has_stage_readiness_checkpoints) ... ok\ntest_session_close_runs_traceability_sync (test_workflow_consistency.DeadEndOwnerTests.test_session_close_runs_traceability_sync) ... ok\n\n----------------------------------------------------------------------\nRan 812 tests in 52.993s\n\nOK\n"
          },
          "output_hash": "6350b1c72756b309500532c4b3a03bd6a882f6ef2af8c8b14deec5c64c7285dd",
          "completed_at": "2026-07-15T03:49:07Z"
        },
        {
          "id": "release",
          "action": "process.fixed",
          "status": "completed",
          "resolved_input_hash": "1e5b0c18d93eb4c2248f9a00adbd438e52f3ef02137477fb8376c69cfe86fc9b",
          "started_at": "2026-07-15T03:49:07Z",
          "output": {
            "operation": "release_check",
            "command": [
              "python",
              "scripts/release_check.py"
            ],
            "exit_code": 0,
            "stdout": "# Release Hygiene Report\n\nBase version: `0.15.4`\nHead version: `0.15.5`\nChanged files checked: 3\n\n## Findings\n\n- None\n",
            "stderr": ""
          },
          "output_hash": "b1b562734d4d622b33378f1e110a4fafce9dc535c14c2bf538357ccb4f16799c",
          "completed_at": "2026-07-15T03:49:07Z"
        },
        {
          "id": "gaps",
          "action": "process.fixed",
          "status": "completed",
          "resolved_input_hash": "577241909238eeb55683f89d2d2216648dad2e3127397993e22493829a1307a4",
          "started_at": "2026-07-15T03:49:07Z",
          "output": {
            "operation": "gap_audit",
            "command": [
              "python",
              "scripts/gap_audit.py",
              "--target-version",
              "0.15.5",
              "--config",
              ".prd_plugin/config.json",
              "--releases",
              ".prd_plugin/state/releases.json"
            ],
            "exit_code": 0,
            "stdout": "# PRD Plugin Gap Audit\n\nTarget version: `0.15.5`\n\n## Findings\n\n- None\n",
            "stderr": ""
          },
          "output_hash": "71e9493754d15e772a832cc60bc38ec9a1120d1e9e32e97da6ce8564c1fdd1fe",
          "completed_at": "2026-07-15T03:49:07Z"
        },
        {
          "id": "package",
          "action": "process.fixed",
          "status": "completed",
          "resolved_input_hash": "06cd12e1f3db3d985f9150520afa60f288297ff0ca01a8e813e9bb6291aa8836",
          "started_at": "2026-07-15T03:49:07Z",
          "output": {
            "operation": "package_check",
            "command": [
              "npm",
              "pack",
              "--dry-run"
            ],
            "exit_code": 0,
            "stdout": "prd-plugin-0.15.5.tgz\n",
            "stderr": "s/state_consistency_check.py\nnpm notice 5.8kB scripts/traceability_sync_auto.py\nnpm notice 12.5kB scripts/version_advice.py\nnpm notice 9.6kB scripts/workflow_chml_audit.py\nnpm notice 3.0kB skills/project-architecture/SKILL.md\nnpm notice 7.4kB skills/project-blocker-resolution/SKILL.md\nnpm notice 2.8kB skills/project-brainstorm/SKILL.md\nnpm notice 5.5kB skills/project-change-request/SKILL.md\nnpm notice 6.3kB skills/project-code-review/SKILL.md\nnpm notice 2.7kB skills/project-decision-ledger/SKILL.md\nnpm notice 18.1kB skills/project-decision-policy/SKILL.md\nnpm notice 3.8kB skills/project-deterministic-workflows/SKILL.md\nnpm notice 5.2kB skills/project-document-branch/SKILL.md\nnpm notice 2.8kB skills/project-evidence-ledger/SKILL.md\nnpm notice 3.3kB skills/project-evidence/SKILL.md\nnpm notice 8.9kB skills/project-fold-it-in/SKILL.md\nnpm notice 11.5kB skills/project-git-workflow/SKILL.md\nnpm notice 7.4kB skills/project-health/SKILL.md\nnpm notice 5.6kB skills/project-implementation-plan/SKILL.md\nnpm notice 1.1kB skills/project-llm-wiki/LICENSE\nnpm notice 842B skills/project-llm-wiki/references/archive-template.md\nnpm notice 843B skills/project-llm-wiki/references/article-template.md\nnpm notice 559B skills/project-llm-wiki/references/index-template.md\nnpm notice 317B skills/project-llm-wiki/references/raw-template.md\nnpm notice 15.9kB skills/project-llm-wiki/SKILL.md\nnpm notice 7.4kB skills/project-local-integration/SKILL.md\nnpm notice 8.1kB skills/project-memory/SKILL.md\nnpm notice 5.8kB skills/project-planning-lifecycle/SKILL.md\nnpm notice 5.0kB skills/project-prd-plugin-setup/SKILL.md\nnpm notice 3.5kB skills/project-prd/SKILL.md\nnpm notice 22.1kB skills/project-request-intake/SKILL.md\nnpm notice 5.6kB skills/project-self-audit/SKILL.md\nnpm notice 4.7kB skills/project-session-close/SKILL.md\nnpm notice 3.7kB skills/project-systematic-debugging/SKILL.md\nnpm notice 3.0kB skills/project-test-driven-implementation/SKILL.md\nnpm notice 3.7kB skills/project-traceability-review/SKILL.md\nnpm notice 2.5kB skills/project-traceability-sync/SKILL.md\nnpm notice 5.1kB skills/project-verification-before-completion/SKILL.md\nnpm notice 167B templates/architecture-delta.md\nnpm notice 1.4kB templates/architecture.json\nnpm notice 368B templates/brainstorm.md\nnpm notice 274B templates/changelog.json\nnpm notice 12.9kB templates/config.json\nnpm notice 265B templates/decision-record.md\nnpm notice 398B templates/decisions.json\nnpm notice 372B templates/doc-branch.json\nnpm notice 313B templates/doc-branch.md\nnpm notice 115B templates/evidence.md\nnpm notice 12.8kB templates/feature-skill-map.json\nnpm notice 249B templates/handoff.json\nnpm notice 407B templates/health.json\nnpm notice 695B templates/human-exports/architecture.md\nnpm notice 626B templates/human-exports/implementation-plan.md\nnpm notice 580B templates/human-exports/prd.md\nnpm notice 1.4kB templates/implementation-plan.json\nnpm notice 65B templates/mailbox.json\nnpm notice 348B templates/memory.json\nnpm notice 471B templates/merge-checklist.md\nnpm notice 163B templates/plan-delta.md\nnpm notice 139B templates/prd-delta.md\nnpm notice 1.3kB templates/prd.json\nnpm notice 454B templates/project.json\nnpm notice 125B templates/promoted-session-summary.jsonl\nnpm notice 160.6kB templates/releases.json\nnpm notice 3.0kB templates/repo-skeleton/.agents/skills/project-architecture/SKILL.md\nnpm notice 7.4kB templates/repo-skeleton/.agents/skills/project-blocker-resolution/SKILL.md\nnpm notice 2.8kB templates/repo-skeleton/.agents/skills/project-brainstorm/SKILL.md\nnpm notice 5.5kB templates/repo-skeleton/.agents/skills/project-change-request/SKILL.md\nnpm notice 6.3kB templates/repo-skeleton/.agents/skills/project-code-review/SKILL.md\nnpm notice 2.7kB templates/repo-skeleton/.agents/skills/project-decision-ledger/SKILL.md\nnpm notice 18.1kB templates/repo-skeleton/.agents/skills/project-decision-policy/SKILL.md\nnpm notice 3.8kB templates/repo-skeleton/.agents/skills/project-deterministic-workflows/SKILL.md\nnpm notice 5.2kB templates/repo-skeleton/.agents/skills/project-document-branch/SKILL.md\nnpm notice 2.8kB templates/repo-skeleton/.agents/skills/project-evidence-ledger/SKILL.md\nnpm notice 3.3kB templates/repo-skeleton/.agents/skills/project-evidence/SKILL.md\nnpm notice 11.4kB templates/repo-skeleton/.agents/skills/project-git-workflow/SKILL.md\nnpm notice 7.4kB templates/repo-skeleton/.agents/skills/project-health/SKILL.md\nnpm notice 5.6kB templates/repo-skeleton/.agents/skills/project-implementation-plan/SKILL.md\nnpm notice 1.1kB templates/repo-skeleton/.agents/skills/project-llm-wiki/LICENSE\nnpm notice 842B templates/repo-skeleton/.agents/skills/project-llm-wiki/references/archive-template.md\nnpm notice 843B templates/repo-skeleton/.agents/skills/project-llm-wiki/references/article-template.md\nnpm notice 559B templates/repo-skeleton/.agents/skills/project-llm-wiki/references/index-template.md\nnpm notice 317B templates/repo-skeleton/.agents/skills/project-llm-wiki/references/raw-template.md\nnpm notice 15.9kB templates/repo-skeleton/.agents/skills/project-llm-wiki/SKILL.md\nnpm notice 7.4kB templates/repo-skeleton/.agents/skills/project-local-integration/SKILL.md\nnpm notice 8.1kB templates/repo-skeleton/.agents/skills/project-memory/SKILL.md\nnpm notice 5.8kB templates/repo-skeleton/.agents/skills/project-planning-lifecycle/SKILL.md\nnpm notice 5.0kB templates/repo-skeleton/.agents/skills/project-prd-plugin-setup/SKILL.md\nnpm notice 3.5kB templates/repo-skeleton/.agents/skills/project-prd/SKILL.md\nnpm notice 22.1kB templates/repo-skeleton/.agents/skills/project-request-intake/SKILL.md\nnpm notice 4.7kB templates/repo-skeleton/.agents/skills/project-session-close/SKILL.md\nnpm notice 3.7kB templates/repo-skeleton/.agents/skills/project-systematic-debugging/SKILL.md\nnpm notice 3.0kB templates/repo-skeleton/.agents/skills/project-test-driven-implementation/SKILL.md\nnpm notice 3.7kB templates/repo-skeleton/.agents/skills/project-traceability-review/SKILL.md\nnpm notice 2.5kB templates/repo-skeleton/.agents/skills/project-traceability-sync/SKILL.md\nnpm notice 5.0kB templates/repo-skeleton/.agents/skills/project-verification-before-completion/SKILL.md\nnpm notice 871B templates/repo-skeleton/.claude-plugin/plugin.json\nnpm notice 772B templates/repo-skeleton/.claude/commands/prd-autonomy.md\nnpm notice 493B templates/repo-skeleton/.claude/commands/prd-close.md\nnpm notice 2.0kB templates/repo-skeleton/.claude/commands/prd-config.md\nnpm notice 1.6kB templates/repo-skeleton/.claude/commands/prd-drift.md\nnpm notice 1.4kB templates/repo-skeleton/.claude/commands/prd-graph.md\nnpm notice 1.6kB templates/repo-skeleton/.claude/commands/prd-hooks.md\nnpm notice 639B templates/repo-skeleton/.claude/commands/prd-new.md\nnpm notice 1.6kB templates/repo-skeleton/.claude/commands/prd-reflections.md\nnpm notice 1.8kB templates/repo-skeleton/.claude/commands/prd-report.md\nnpm notice 549B templates/repo-skeleton/.claude/commands/prd-status.md\nnpm notice 974B templates/repo-skeleton/.claude/commands/prd-track.md\nnpm notice 1.0kB templates/repo-skeleton/.claude/commands/prd-version.md\nnpm notice 938B templates/repo-skeleton/.claude/commands/prd-workflow.md\nnpm notice 1.6kB templates/repo-skeleton/.claude/hooks/prd_drift_check.py\nnpm notice 2.0kB templates/repo-skeleton/.claude/hooks/prd_log_skill.py\nnpm notice 4.1kB templates/repo-skeleton/.claude/hooks/prd_nudge.py\nnpm notice 3.7kB templates/repo-skeleton/.claude/hooks/prd_precommit_gate.py\nnpm notice 6.1kB templates/repo-skeleton/.claude/hooks/prd_reflection.py\nnpm notice 3.5kB templates/repo-skeleton/.claude/hooks/prd_session_report.py\nnpm notice 9.8kB templates/repo-skeleton/.claude/hooks/prd_stop_guard.py\nnpm notice 1.3kB templates/repo-skeleton/.claude/settings.json\nnpm notice 3.0kB templates/repo-skeleton/.claude/skills/project-architecture/SKILL.md\nnpm notice 7.4kB templates/repo-skeleton/.claude/skills/project-blocker-resolution/SKILL.md\nnpm notice 2.8kB templates/repo-skeleton/.claude/skills/project-brainstorm/SKILL.md\nnpm notice 5.5kB templates/repo-skeleton/.claude/skills/project-change-request/SKILL.md\nnpm notice 6.3kB templates/repo-skeleton/.claude/skills/project-code-review/SKILL.md\nnpm notice 2.7kB templates/repo-skeleton/.claude/skills/project-decision-ledger/SKILL.md\nnpm notice 18.1kB templates/repo-skeleton/.claude/skills/project-decision-policy/SKILL.md\nnpm notice 3.8kB templates/repo-skeleton/.claude/skills/project-deterministic-workflows/SKILL.md\nnpm notice 5.2kB templates/repo-skeleton/.claude/skills/project-document-branch/SKILL.md\nnpm notice 2.8kB templates/repo-skeleton/.claude/skills/project-evidence-ledger/SKILL.md\nnpm notice 3.3kB templates/repo-skeleton/.claude/skills/project-evidence/SKILL.md\nnpm notice 11.4kB templates/repo-skeleton/.claude/skills/project-git-workflow/SKILL.md\nnpm notice 7.4kB templates/repo-skeleton/.claude/skills/project-health/SKILL.md\nnpm notice 5.6kB templates/repo-skeleton/.claude/skills/project-implementation-plan/SKILL.md\nnpm notice 1.1kB templates/repo-skeleton/.claude/skills/project-llm-wiki/LICENSE\nnpm notice 842B templates/repo-skeleton/.claude/skills/project-llm-wiki/references/archive-template.md\nnpm notice 843B templates/repo-skeleton/.claude/skills/project-llm-wiki/references/article-template.md\nnpm notice 559B templates/repo-skeleton/.claude/skills/project-llm-wiki/references/index-template.md\nnpm notice 317B templates/repo-skeleton/.claude/skills/project-llm-wiki/references/raw-template.md\nnpm notice 15.9kB templates/repo-skeleton/.claude/skills/project-llm-wiki/SKILL.md\nnpm notice 7.4kB templates/repo-skeleton/.claude/skills/project-local-integration/SKILL.md\nnpm notice 8.1kB templates/repo-skeleton/.claude/skills/project-memory/SKILL.md\nnpm notice 5.8kB templates/repo-skeleton/.claude/skills/project-planning-lifecycle/SKILL.md\nnpm notice 5.0kB templates/repo-skeleton/.claude/skills/project-prd-plugin-setup/SKILL.md\nnpm notice 3.5kB templates/repo-skeleton/.claude/skills/project-prd/SKILL.md\nnpm notice 22.1kB templates/repo-skeleton/.claude/skills/project-request-intake/SKILL.md\nnpm notice 4.7kB templates/repo-skeleton/.claude/skills/project-session-close/SKILL.md\nnpm notice 3.7kB templates/repo-skeleton/.claude/skills/project-systematic-debugging/SKILL.md\nnpm notice 3.0kB templates/repo-skeleton/.claude/skills/project-test-driven-implementation/SKILL.md\nnpm notice 3.7kB templates/repo-skeleton/.claude/skills/project-traceability-review/SKILL.md\nnpm notice 2.5kB templates/repo-skeleton/.claude/skills/project-traceability-sync/SKILL.md\nnpm notice 5.0kB templates/repo-skeleton/.claude/skills/project-verification-before-completion/SKILL.md\nnpm notice 3.1kB templates/repo-skeleton/.codex-plugin/plugin.json\nnpm notice 2.8kB templates/repo-skeleton/.codex/hooks.json\nnpm notice 743B templates/repo-skeleton/.githooks/pre-commit\nnpm notice 734B templates/repo-skeleton/.github/workflows/prd-gate.yml\nnpm notice 3.1kB templates/repo-skeleton/.opencode/plugin.json\nnpm notice 3.3kB templates/repo-skeleton/.opencode/plugins/prd-hooks.js\nnpm notice 3.0kB templates/repo-skeleton/.opencode/skill/project-architecture/SKILL.md\nnpm notice 7.4kB templates/repo-skeleton/.opencode/skill/project-blocker-resolution/SKILL.md\nnpm notice 2.8kB templates/repo-skeleton/.opencode/skill/project-brainstorm/SKILL.md\nnpm notice 5.5kB templates/repo-skeleton/.opencode/skill/project-change-request/SKILL.md\nnpm notice 6.3kB templates/repo-skeleton/.opencode/skill/project-code-review/SKILL.md\nnpm notice 2.7kB templates/repo-skeleton/.opencode/skill/project-decision-ledger/SKILL.md\nnpm notice 18.1kB templates/repo-skeleton/.opencode/skill/project-decision-policy/SKILL.md\nnpm notice 3.8kB templates/repo-skeleton/.opencode/skill/project-deterministic-workflows/SKILL.md\nnpm notice 5.2kB templates/repo-skeleton/.opencode/skill/project-document-branch/SKILL.md\nnpm notice 2.8kB templates/repo-skeleton/.opencode/skill/project-evidence-ledger/SKILL.md\nnpm notice 3.3kB templates/repo-skeleton/.opencode/skill/project-evidence/SKILL.md\nnpm notice 11.4kB templates/repo-skeleton/.opencode/skill/project-git-workflow/SKILL.md\nnpm notice 7.4kB templates/repo-skeleton/.opencode/skill/project-health/SKILL.md\nnpm notice 5.6kB templates/repo-skeleton/.opencode/skill/project-implementation-plan/SKILL.md\nnpm notice 1.1kB templates/repo-skeleton/.opencode/skill/project-llm-wiki/LICENSE\nnpm notice 842B templates/repo-skeleton/.opencode/skill/project-llm-wiki/references/archive-template.md\nnpm notice 843B templates/repo-skeleton/.opencode/skill/project-llm-wiki/references/article-template.md\nnpm notice 559B templates/repo-skeleton/.opencode/skill/project-llm-wiki/references/index-template.md\nnpm notice 317B templates/repo-skeleton/.opencode/skill/project-llm-wiki/references/raw-template.md\nnpm notice 15.9kB templates/repo-skeleton/.opencode/skill/project-llm-wiki/SKILL.md\nnpm notice 7.4kB templates/repo-skeleton/.opencode/skill/project-local-integration/SKILL.md\nnpm notice 8.1kB templates/repo-skeleton/.opencode/skill/project-memory/SKILL.md\nnpm notice 5.8kB templates/repo-skeleton/.opencode/skill/project-planning-lifecycle/SKILL.md\nnpm notice 5.0kB templates/repo-skeleton/.opencode/skill/project-prd-plugin-setup/SKILL.md\nnpm notice 3.5kB templates/repo-skeleton/.opencode/skill/project-prd/SKILL.md\nnpm notice 22.1kB templates/repo-skeleton/.opencode/skill/project-request-intake/SKILL.md\nnpm notice 4.7kB templates/repo-skeleton/.opencode/skill/project-session-close/SKILL.md\nnpm notice 3.7kB templates/repo-skeleton/.opencode/skill/project-systematic-debugging/SKILL.md\nnpm notice 3.0kB templates/repo-skeleton/.opencode/skill/project-test-driven-implementation/SKILL.md\nnpm notice 3.7kB templates/repo-skeleton/.opencode/skill/project-traceability-review/SKILL.md\nnpm notice 2.5kB templates/repo-skeleton/.opencode/skill/project-traceability-sync/SKILL.md\nnpm notice 5.0kB templates/repo-skeleton/.opencode/skill/project-verification-before-completion/SKILL.md\nnpm notice 12.8kB templates/repo-skeleton/.prd_plugin/config.json\nnpm notice 1.6kB templates/repo-skeleton/.prd_plugin/hooks/prd_drift_check.py\nnpm notice 9.2kB templates/repo-skeleton/.prd_plugin/hooks/prd_hook_dispatch.py\nnpm notice 2.0kB templates/repo-skeleton/.prd_plugin/hooks/prd_log_skill.py\nnpm notice 4.1kB templates/repo-skeleton/.prd_plugin/hooks/prd_nudge.py\nnpm notice 3.7kB templates/repo-skeleton/.prd_plugin/hooks/prd_precommit_gate.py\nnpm notice 6.1kB templates/repo-skeleton/.prd_plugin/hooks/prd_reflection.py\nnpm notice 3.5kB templates/repo-skeleton/.prd_plugin/hooks/prd_session_report.py\nnpm notice 9.8kB templates/repo-skeleton/.prd_plugin/hooks/prd_stop_guard.py\nnpm notice 3.7kB templates/repo-skeleton/.prd_plugin/ID-SCHEME.md\nnpm notice 581B templates/repo-skeleton/.prd_plugin/ids/registry.json\nnpm notice 12.6kB templates/repo-skeleton/.prd_plugin/METHOD.md\nnpm notice 725B templates/repo-skeleton/.prd_plugin/method/artifact-format.md\nnpm notice 820B templates/repo-skeleton/.prd_plugin/method/completion-gate.md\nnpm notice 3.6kB templates/repo-skeleton/.prd_plugin/method/deterministic-workflows.md\nnpm notice 1.2kB templates/repo-skeleton/.prd_plugin/method/estimation.md\nnpm notice 1.9kB templates/repo-skeleton/.prd_plugin/method/grounding.md\nnpm notice 2.5kB templates/repo-skeleton/.prd_plugin/method/reporting.md\nnpm notice 4.1kB templates/repo-skeleton/.prd_plugin/method/self-service.md\nnpm notice 1.6kB templates/repo-skeleton/.prd_plugin/method/staleness-rules.md\nnpm notice 1.0kB templates/repo-skeleton/.prd_plugin/method/state-validation.md\nnpm notice 3.0kB templates/repo-skeleton/.prd_plugin/method/subagents.md\nnpm notice 47B templates/repo-skeleton/.prd_plugin/state/changelog.json\nnpm notice 49B templates/repo-skeleton/.prd_plugin/state/decisions.json\nnpm notice 157B templates/repo-skeleton/.prd_plugin/state/health.json\nnpm notice 47B templates/repo-skeleton/.prd_plugin/state/memory.json\nnpm notice 286B templates/repo-skeleton/.prd_plugin/state/project.json\nnpm notice 48B templates/repo-skeleton/.prd_plugin/state/releases.json\nnpm notice 48B templates/repo-skeleton/.prd_plugin/state/requests.json\nnpm notice 214B templates/repo-skeleton/.prd_plugin/state/sessions/shared/promoted-session-summaries.jsonl\nnpm notice 51B templates/repo-skeleton/.prd_plugin/state/tracking.json\nnpm notice 48B templates/repo-skeleton/.prd_plugin/state/workflow-runs.json\nnpm notice 167B templates/repo-skeleton/.prd_plugin/templates/architecture-delta.md\nnpm notice 1.4kB templates/repo-skeleton/.prd_plugin/templates/architecture.json\nnpm notice 368B templates/repo-skeleton/.prd_plugin/templates/brainstorm.md\nnpm notice 274B templates/repo-skeleton/.prd_plugin/templates/changelog.json\nnpm notice 12.9kB templates/repo-skeleton/.prd_plugin/templates/config.json\nnpm notice 265B templates/repo-skeleton/.prd_plugin/templates/decision-record.md\nnpm notice 398B templates/repo-skeleton/.prd_plugin/templates/decisions.json\nnpm notice 372B templates/repo-skeleton/.prd_plugin/templates/doc-branch.json\nnpm notice 313B templates/repo-skeleton/.prd_plugin/templates/doc-branch.md\nnpm notice 115B templates/repo-skeleton/.prd_plugin/templates/evidence.md\nnpm notice 249B templates/repo-skeleton/.prd_plugin/templates/handoff.json\nnpm notice 407B templates/repo-skeleton/.prd_plugin/templates/health.json\nnpm notice 695B templates/repo-skeleton/.prd_plugin/templates/human-exports/architecture.md\nnpm notice 626B templates/repo-skeleton/.prd_plugin/templates/human-exports/implementation-plan.md\nnpm notice 580B templates/repo-skeleton/.prd_plugin/templates/human-exports/prd.md\nnpm notice 1.4kB templates/repo-skeleton/.prd_plugin/templates/implementation-plan.json\nnpm notice 65B templates/repo-skeleton/.prd_plugin/templates/mailbox.json\nnpm notice 348B templates/repo-skeleton/.prd_plugin/templates/memory.json\nnpm notice 471B templates/repo-skeleton/.prd_plugin/templates/merge-checklist.md\nnpm notice 163B templates/repo-skeleton/.prd_plugin/templates/plan-delta.md\nnpm notice 139B templates/repo-skeleton/.prd_plugin/templates/prd-delta.md\nnpm notice 1.3kB templates/repo-skeleton/.prd_plugin/templates/prd.json\nnpm notice 454B templates/repo-skeleton/.prd_plugin/templates/project.json\nnpm notice 125B templates/repo-skeleton/.prd_plugin/templates/promoted-session-summary.jsonl\nnpm notice 923B templates/repo-skeleton/.prd_plugin/templates/releases.json\nnpm notice 1.4kB templates/repo-skeleton/.prd_plugin/templates/request.json\nnpm notice 1.7kB templates/repo-skeleton/.prd_plugin/templates/requests.json\nnpm notice 17.4kB templates/repo-skeleton/.prd_plugin/templates/script-install-scope.json\nnpm notice 235B templates/repo-skeleton/.prd_plugin/templates/session.json\nnpm notice 10.6kB templates/repo-skeleton/.prd_plugin/templates/skill-install-scope.json\nnpm notice 317B templates/repo-skeleton/.prd_plugin/templates/submission-package.json\nnpm notice 225B templates/repo-skeleton/.prd_plugin/templates/traceability-matrix.md\nnpm notice 321B templates/repo-skeleton/.prd_plugin/templates/tracking.json\nnpm notice 12.0kB templates/repo-skeleton/.prd_plugin/workflows.json\nnpm notice 11.1kB templates/repo-skeleton/AGENTS.md\nnpm notice 7.3kB templates/repo-skeleton/CLAUDE.md\nnpm notice 11.8kB templates/repo-skeleton/docs/INSTALL-MATRIX.md\nnpm notice 1.4kB templates/request.json\nnpm notice 1.7kB templates/requests.json\nnpm notice 17.4kB templates/script-install-scope.json\nnpm notice 235B templates/session.json\nnpm notice 10.6kB templates/skill-install-scope.json\nnpm notice 317B templates/submission-package.json\nnpm notice 225B templates/traceability-matrix.md\nnpm notice 321B templates/tracking.json\nnpm notice 12.0kB templates/workflows.json\nnpm notice Tarball Details\nnpm notice name: prd-plugin\nnpm notice version: 0.15.5\nnpm notice filename: prd-plugin-0.15.5.tgz\nnpm notice package size: 965.2 kB\nnpm notice unpacked size: 4.0 MB\nnpm notice shasum: 7b603ad01285f610ece849d341ba48b1ab7dc73a\nnpm notice integrity: sha512-+dkAIzTxCCY+7[...]5Fs4qSIFyDWjQ==\nnpm notice total files: 478\nnpm notice\n"
          },
          "output_hash": "6b294a96b61b09126cfc393887080baad6c7a437f6b75edee99c33cc5a1bb829",
          "completed_at": "2026-07-15T03:49:08Z"
        },
        {
          "id": "gate",
          "action": "state.gate",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-15T03:49:08Z",
          "output": {
            "status": "ok",
            "repo_root": "D:\\Projects\\prd-plugin",
            "summary": {
              "errors": 0,
              "warnings": 0
            },
            "findings": []
          },
          "output_hash": "a705b176b049df02348354c23988d51f616670b7352ad410321cbe0577edf053",
          "completed_at": "2026-07-15T03:49:09Z"
        }
      ],
      "completed_at": "2026-07-15T03:49:09Z"
    },
    {
      "id": "WFR-021",
      "schema_version": "1.0",
      "workflow_id": "engineering.code-review",
      "workflow_version": 1,
      "definition_hash": "db913781cc8cad3d528b8f1bd3540c25d819d14a435dad01ee77cdf6463b5618",
      "plan_hash": "48c16efec80c1224280e21e33f453a4026ae08048c3de77123dcc29405436eaf",
      "input_hash": "d4c126fa7e25f6ab46182eabf8039aea4a95dcf964144ade3f46fb9e7f9ba29e",
      "inputs": {
        "base_ref": "",
        "source_refs": [
          "scripts/prd_wiki_backfill.py",
          "scripts/prd_gate.py",
          "scripts/prd_config.py",
          "mcp/server.cjs",
          "tests/test_wiki_backfill.py",
          "tests/test_prd_gate.py",
          "tests/node/server.test.cjs",
          "skills/project-llm-wiki/SKILL.md",
          "templates/config.json",
          "templates/feature-skill-map.json"
        ]
      },
      "idempotency_key": "0.15.5-wiki-inline-links-code-review",
      "status": "completed",
      "attempt": 1,
      "created_at": "2026-07-15T03:53:08Z",
      "updated_at": "2026-07-15T03:53:43Z",
      "receipts": [
        {
          "step_id": "diff",
          "action": "git.diff_check",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "11c11db30f4b3f6c758722ba3e27eea08145b7d212f6a157451e364b48475280",
          "completed_at": "2026-07-15T03:53:08Z"
        },
        {
          "step_id": "verification",
          "action": "verification.plan",
          "input_hash": "fd934039265310404d648cea4b1eb28964383bb8a97ef14b85b2b85d725d502e",
          "output_hash": "59dd1a7ae4acbd74310ec23b07b074fd1d9ff02142969d79eaf224af9c7999a1",
          "completed_at": "2026-07-15T03:53:09Z"
        },
        {
          "step_id": "review",
          "action": "judgment.request",
          "input_hash": "a604fbfcb5a0f58262fae262321e1f651c916f6c9c1c4106de74af3fccd3d92d",
          "output_hash": "6093b6beb42332b309ec92b936a29fdb59263a58bc7a35a6a463eb903764b2f0",
          "request_hash": "1a8e5b3ca41f4dedd7ef685c862466761fa5e983aefba8d5befc2f9195b6093c",
          "completed_at": "2026-07-15T03:53:43Z"
        }
      ],
      "steps": [
        {
          "id": "diff",
          "action": "git.diff_check",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-15T03:53:08Z",
          "output": {
            "passed": true
          },
          "output_hash": "11c11db30f4b3f6c758722ba3e27eea08145b7d212f6a157451e364b48475280",
          "completed_at": "2026-07-15T03:53:08Z"
        },
        {
          "id": "verification",
          "action": "verification.plan",
          "status": "completed",
          "resolved_input_hash": "fd934039265310404d648cea4b1eb28964383bb8a97ef14b85b2b85d725d502e",
          "started_at": "2026-07-15T03:53:08Z",
          "output": {
            "schema_version": "1.0",
            "contract_version": 1,
            "executor": "ai-collab",
            "changed_files": [
              ".agents/skills/project-llm-wiki/SKILL.md",
              ".claude-plugin/marketplace.json",
              ".claude-plugin/plugin.json",
              ".claude/skills/project-llm-wiki/SKILL.md",
              ".codex-plugin/plugin.json",
              ".opencode/plugin.json",
              ".opencode/skill/project-llm-wiki/SKILL.md",
              ".prd_plugin/config.json",
              ".prd_plugin/ids/registry.json",
              ".prd_plugin/state/changelog.json",
              ".prd_plugin/state/evidence.json",
              ".prd_plugin/state/project.json",
              ".prd_plugin/state/releases.json",
              ".prd_plugin/state/requests.json",
              ".prd_plugin/state/tracking.json",
              ".prd_plugin/state/workflow-runs.json",
              "docs/METHOD.md",
              "index.js",
              "mcp/server.cjs",
              "package.json",
              "raw/knowledge/2026-07-15-inline-markdown-link-policy.md",
              "README.md",
              "scripts/prd_config.py",
              "scripts/prd_gate.py",
              "scripts/prd_wiki_backfill.py",
              "skills/project-llm-wiki/SKILL.md",
              "templates/config.json",
              "templates/feature-skill-map.json",
              "templates/project.json",
              "templates/releases.json",
              "templates/repo-skeleton/.agents/skills/project-llm-wiki/SKILL.md",
              "templates/repo-skeleton/.claude-plugin/plugin.json",
              "templates/repo-skeleton/.claude/skills/project-llm-wiki/SKILL.md",
              "templates/repo-skeleton/.codex-plugin/plugin.json",
              "templates/repo-skeleton/.opencode/plugin.json",
              "templates/repo-skeleton/.opencode/skill/project-llm-wiki/SKILL.md",
              "templates/repo-skeleton/.prd_plugin/config.json",
              "templates/repo-skeleton/.prd_plugin/state/project.json",
              "templates/repo-skeleton/.prd_plugin/templates/config.json",
              "templates/repo-skeleton/.prd_plugin/templates/project.json",
              "templates/repo-skeleton/.prd_plugin/templates/script-install-scope.json",
              "templates/script-install-scope.json",
              "tests/node/server.test.cjs",
              "tests/test_config_toggles.py",
              "tests/test_llm_wiki.py",
              "tests/test_local_workflow_check.py",
              "tests/test_prd_gate.py",
              "tests/test_prd_install.py",
              "tests/test_release_check.py",
              "tests/test_wiki_backfill.py",
              "wiki/decisions/autonomy-and-consent-floor.md",
              "wiki/delivery/multi-host-skill-delivery.md",
              "wiki/delivery/per-provider-delivery.md",
              "wiki/index.md",
              "wiki/integrations/optional-integrations.md",
              "wiki/integrations/unified-configuration.md",
              "wiki/knowledge/the-llm-wiki.md",
              "wiki/log.md",
              "wiki/method/reporting-and-self-service.md",
              "wiki/method/the-method-and-craft-bar.md",
              "wiki/operations/drift-detection.md",
              "wiki/operations/the-gate-and-enforcement.md",
              "wiki/planning/the-planning-chain.md",
              "wiki/skills/skills-and-the-router.md",
              "wiki/state/id-system-and-state.md",
              "wiki/workflows/deterministic-workflow-engine.md"
            ],
            "change_fingerprint": "15e1402ce1c48e423dc237f6783e1a3d6391d9df2ee2e95a13c003e33bd7680b",
            "policy": {
              "enabled": false,
              "executor": "ai-collab",
              "neighbor_limit": 12,
              "max_changed_files": 25,
              "fallback": "full",
              "full_suite_triggers": [
                "release",
                "core_change",
                "impact_unavailable",
                "impact_degraded",
                "unmapped_change"
              ],
              "core_paths": [
                "package.json",
                "package-lock.json",
                "pyproject.toml",
                "Cargo.toml",
                "go.mod",
                ".github/workflows/**"
              ],
              "test_patterns": [
                "tests/**",
                "test/**",
                "spec/**",
                "**/*.test.*",
                "**/*.spec.*",
                "test_*.py",
                "*_test.py",
                "*_test.go",
                "**/test_*.py",
                "**/*_test.py",
                "**/*_test.go"
              ]
            },
            "selection_rules": {
              "precedence": [
                "exact_changed",
                "explicit_test_ownership",
                "structural_dependencies",
                "predictive_impact"
              ],
              "require_all_changed_files_mapped": true,
              "widen_before_full": true,
              "predictive_signal_is_sufficient_alone": false
            },
            "fallback": {
              "strategy": "full",
              "conditions": [
                "release",
                "core_change",
                "impact_unavailable",
                "impact_degraded",
                "unmapped_change"
              ]
            },
            "strategy": "full",
            "reason": "test_scope_disabled",
            "runtime_requests": {},
            "plan_hash": "6ee84b9b5196766e44c45300e3390474519ed5c3d040c476d5490d24c99f1b17"
          },
          "output_hash": "59dd1a7ae4acbd74310ec23b07b074fd1d9ff02142969d79eaf224af9c7999a1",
          "completed_at": "2026-07-15T03:53:09Z"
        },
        {
          "id": "review",
          "action": "judgment.request",
          "status": "completed",
          "resolved_input_hash": "a604fbfcb5a0f58262fae262321e1f651c916f6c9c1c4106de74af3fccd3d92d",
          "started_at": "2026-07-15T03:53:09Z",
          "judgment_request": {
            "contract_version": 1,
            "run_id": "WFR-021",
            "step_id": "review",
            "task": "code_review",
            "instructions": "Find material correctness, robustness, security, compatibility, or test gaps; do not restate mechanical facts.",
            "source_refs": [
              "scripts/prd_wiki_backfill.py",
              "scripts/prd_gate.py",
              "scripts/prd_config.py",
              "mcp/server.cjs",
              "tests/test_wiki_backfill.py",
              "tests/test_prd_gate.py",
              "tests/node/server.test.cjs",
              "skills/project-llm-wiki/SKILL.md",
              "templates/config.json",
              "templates/feature-skill-map.json"
            ],
            "source_hashes": {
              "scripts/prd_wiki_backfill.py": "babf4e9efb0b9757ab5750964a49523d09c7f109bd62658704ffd7a230e782f3",
              "scripts/prd_gate.py": "9b10809cb063da6b3261fb3d9373845651f1945120169d8f4dcce91b60f9c4f7",
              "scripts/prd_config.py": "bdafad2c740445b0b03424ba96a911c1d7a5025c40ca2cc723cf479ec90d61d0",
              "mcp/server.cjs": "8da30a3a3b7394d3b31dce81ff5470b2cd0808ca353cf3e159908fc5e2c37d52",
              "tests/test_wiki_backfill.py": "95dba2db1d17b56c58ea51143f093cf930a799ecaf3d6616ac17233da7d6b05f",
              "tests/test_prd_gate.py": "1022c74bcca6409e3dc30307980a02a7d53a3ad521ab061e09308d5bfb76e930",
              "tests/node/server.test.cjs": "39fdcd87c041654d279fb970eb48a3ee942757e4a7c4d63410ac0d129b93cf0e",
              "skills/project-llm-wiki/SKILL.md": "8f6a2d679c72c0c93b52f4f2429dbb3f8bbce4878b55fbeea10318d123e4ed65",
              "templates/config.json": "8ddf2613b58989ab42c5a4962196271f512902923a107d9030991c7e4dfc047f",
              "templates/feature-skill-map.json": "bca7abe17ee02e27eb3d6f3599630d0266021754f791a737eb3dead7d053341c"
            },
            "result_schema": {
              "type": "object",
              "required": [
                "summary",
                "findings",
                "source_refs"
              ],
              "properties": {
                "summary": {
                  "type": "string"
                },
                "findings": {
                  "type": "array",
                  "items": {
                    "type": "object"
                  }
                },
                "source_refs": {
                  "type": "array",
                  "items": {
                    "type": "string"
                  }
                }
              }
            },
            "executor": "ai-collab",
            "profile": "fast-capable",
            "constraints": {
              "no_project_state_writes": true,
              "require_source_refs": true
            },
            "request_hash": "1a8e5b3ca41f4dedd7ef685c862466761fa5e983aefba8d5befc2f9195b6093c"
          },
          "output": {
            "summary": "No remaining material correctness, robustness, security, compatibility, or test gaps after fixing configured wiki-directory handling.",
            "findings": [],
            "source_refs": [
              "scripts/prd_wiki_backfill.py",
              "scripts/prd_gate.py",
              "scripts/prd_config.py",
              "mcp/server.cjs",
              "tests/test_wiki_backfill.py",
              "tests/test_prd_gate.py",
              "tests/node/server.test.cjs",
              "skills/project-llm-wiki/SKILL.md",
              "templates/config.json",
              "templates/feature-skill-map.json"
            ]
          },
          "output_hash": "6093b6beb42332b309ec92b936a29fdb59263a58bc7a35a6a463eb903764b2f0",
          "completed_at": "2026-07-15T03:53:43Z",
          "judgment_result": {
            "request_hash": "1a8e5b3ca41f4dedd7ef685c862466761fa5e983aefba8d5befc2f9195b6093c",
            "executor": "ai-collab",
            "profile": "fast-capable"
          }
        }
      ],
      "completed_at": "2026-07-15T03:53:43Z"
    },
    {
      "id": "WFR-022",
      "schema_version": "1.0",
      "workflow_id": "session.start",
      "workflow_version": 1,
      "definition_hash": "84ce7a6cc9aa694e7d79ea287fc72dc11aae430d872a885ca70ba837e668657e",
      "plan_hash": "3ac96bd9bc6974dd538269c4c5f0c914e98110574189cd54d4ffbafb876b1a73",
      "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
      "inputs": {},
      "idempotency_key": "substrate-parity-plan-session-start",
      "status": "completed",
      "attempt": 1,
      "created_at": "2026-07-15T04:15:08Z",
      "updated_at": "2026-07-15T04:15:09Z",
      "receipts": [
        {
          "step_id": "config",
          "action": "config.audit",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "3c29c3b0cfac90c0c7df955d1fb281c137037adeba1b7c1feeccae165cf66a6b",
          "completed_at": "2026-07-15T04:15:08Z"
        },
        {
          "step_id": "state",
          "action": "state.consistency",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "5a1c6e5246defb1b6b6b90ff734db95bece2886b408ab112ed9b8e67222d5568",
          "completed_at": "2026-07-15T04:15:09Z"
        },
        {
          "step_id": "status",
          "action": "state.query",
          "input_hash": "a15231a2142a2a9a85355a8b9cbbccffe01a9c9c2c2fd8c2bc2987cdc481564a",
          "output_hash": "22f7da01cd462ac8fede8ebb534633b6ac721fcc905ff9a5ff85c982e008a23b",
          "completed_at": "2026-07-15T04:15:09Z"
        }
      ],
      "steps": [
        {
          "id": "config",
          "action": "config.audit",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-15T04:15:08Z",
          "output": {
            "status": "ok",
            "summary": {
              "settings": 172,
              "mutable": 163,
              "read_only_or_managed": 9,
              "unclassified": 0,
              "unknown": 0,
              "invalid": 0,
              "missing_using_defaults": 0
            },
            "unclassified_keys": [],
            "unknown_keys": [],
            "invalid_values": [],
            "missing_using_defaults": []
          },
          "output_hash": "3c29c3b0cfac90c0c7df955d1fb281c137037adeba1b7c1feeccae165cf66a6b",
          "completed_at": "2026-07-15T04:15:08Z"
        },
        {
          "id": "state",
          "action": "state.consistency",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-15T04:15:08Z",
          "output": {
            "status": "ok",
            "repo_root": "D:\\Projects\\prd-plugin",
            "summary": {
              "errors": 0,
              "warnings": 0,
              "infos": 0
            },
            "findings": []
          },
          "output_hash": "5a1c6e5246defb1b6b6b90ff734db95bece2886b408ab112ed9b8e67222d5568",
          "completed_at": "2026-07-15T04:15:09Z"
        },
        {
          "id": "status",
          "action": "state.query",
          "status": "completed",
          "resolved_input_hash": "a15231a2142a2a9a85355a8b9cbbccffe01a9c9c2c2fd8c2bc2987cdc481564a",
          "started_at": "2026-07-15T04:15:09Z",
          "output": {
            "repo_root": "D:\\Projects\\prd-plugin",
            "autonomy_level": "autonomous",
            "requests_by_status": {
              "accepted": 1,
              "deferred": 1,
              "implemented": 76,
              "proposed": 1,
              "rejected": 1
            },
            "active_tracking": [],
            "tracking_branches": [],
            "tracking_branch_counts": {},
            "tracking_branch_errors": [],
            "open_health": [
              "HLT-014"
            ],
            "stale_count": 0,
            "skill_usage": {
              "project-decision-policy": 1,
              "project-request-intake": 1,
              "project-test-driven-implementation": 1,
              "project-verification-before-completion": 1,
              "project-llm-wiki": 1
            },
            "wiki_backfill_pending": false,
            "version_update": null
          },
          "output_hash": "22f7da01cd462ac8fede8ebb534633b6ac721fcc905ff9a5ff85c982e008a23b",
          "completed_at": "2026-07-15T04:15:09Z"
        }
      ],
      "completed_at": "2026-07-15T04:15:09Z"
    },
    {
      "id": "WFR-023",
      "schema_version": "1.0",
      "workflow_id": "request.intake",
      "workflow_version": 1,
      "definition_hash": "b61272f54c5d4778a27afe601feaae39057f75fac2c289858b6caf5f3b2a4fbe",
      "plan_hash": "3e52b692ea292c6f0f1017b185ed5e3ffd1c176577140cf3c153f19e80c4ef8a",
      "input_hash": "f1d4f9d57d4dac2d94b6d9c521cad5ff7740e72887ea64e23bc3264e6c1ab6c0",
      "inputs": {
        "summary": "Synchronize PRD Plugin adapter and workflows with all relevant shipped AI-Collab Substrate capabilities",
        "request_type": "feature",
        "severity": "high",
        "scope": "local",
        "rationale": "AI-Collab ships knowledge, recall, context, goals, routing, tools, diagnostics, app evidence, and other capabilities that PRD currently does not consume or validate.",
        "affected_areas": [
          "substrate adapter",
          "configuration",
          "deterministic workflows",
          "skills",
          "hooks",
          "UTCP/MCP",
          "downstream templates",
          "validation"
        ],
        "expected_behavior": "A versioned capability contract and configurable workflow mappings use each relevant shipped Substrate function with explicit fallbacks and deliberate exclusions."
      },
      "idempotency_key": "substrate-shipped-capability-parity-request",
      "status": "completed",
      "attempt": 1,
      "created_at": "2026-07-15T04:18:06Z",
      "updated_at": "2026-07-15T04:18:06Z",
      "receipts": [
        {
          "step_id": "create",
          "action": "state.mutate",
          "input_hash": "947b0ea7c7db00f5dab201d13a90e9a7d6b436e76354fc4565af244b76d4ff65",
          "output_hash": "b1f020cf00d7a041641d213a8040794121c3fddf4fc5ee8b5e0eb18f3fe9aded",
          "completed_at": "2026-07-15T04:18:06Z"
        },
        {
          "step_id": "confirm",
          "action": "state.query",
          "input_hash": "3532d641c26c60ad46fcc124e02fa6fa56b00effacb7b74f9631418761697a4d",
          "output_hash": "ce5f43dd8dd2cae398fc5896e0f18bbd7e3f8e7e70a3371c6897b85a895c0d67",
          "completed_at": "2026-07-15T04:18:06Z"
        }
      ],
      "steps": [
        {
          "id": "create",
          "action": "state.mutate",
          "status": "completed",
          "resolved_input_hash": "947b0ea7c7db00f5dab201d13a90e9a7d6b436e76354fc4565af244b76d4ff65",
          "started_at": "2026-07-15T04:18:06Z",
          "execution_token": "b0f0cb7b3a4e61aeda318ba4f726c19d3850b6ccfd579c4976c585e2e22cd84c",
          "output": {
            "id": "REQ-099",
            "status": "proposed"
          },
          "output_hash": "b1f020cf00d7a041641d213a8040794121c3fddf4fc5ee8b5e0eb18f3fe9aded",
          "completed_at": "2026-07-15T04:18:06Z"
        },
        {
          "id": "confirm",
          "action": "state.query",
          "status": "completed",
          "resolved_input_hash": "3532d641c26c60ad46fcc124e02fa6fa56b00effacb7b74f9631418761697a4d",
          "started_at": "2026-07-15T04:18:06Z",
          "output": {
            "kind": "REQ",
            "record": {
              "id": "REQ-099",
              "status": "proposed",
              "request_type": "feature",
              "scope": "local",
              "visibility": "repo",
              "summary": "Synchronize PRD Plugin adapter and workflows with all relevant shipped AI-Collab Substrate capabilities",
              "severity": "high",
              "requested_by_agent": "AGENT-MCP",
              "created_at": "2026-07-15",
              "rationale": "AI-Collab ships knowledge, recall, context, goals, routing, tools, diagnostics, app evidence, and other capabilities that PRD currently does not consume or validate.",
              "affected_areas": [
                "substrate adapter",
                "configuration",
                "deterministic workflows",
                "skills",
                "hooks",
                "UTCP/MCP",
                "downstream templates",
                "validation"
              ],
              "expected_behavior": "A versioned capability contract and configurable workflow mappings use each relevant shipped Substrate function with explicit fallbacks and deliberate exclusions.",
              "upstream_submission": false
            }
          },
          "output_hash": "ce5f43dd8dd2cae398fc5896e0f18bbd7e3f8e7e70a3371c6897b85a895c0d67",
          "completed_at": "2026-07-15T04:18:06Z"
        }
      ],
      "completed_at": "2026-07-15T04:18:06Z"
    },
    {
      "id": "WFR-024",
      "schema_version": "1.0",
      "workflow_id": "planning.requirements",
      "workflow_version": 1,
      "definition_hash": "4bc4f642df46fc68377fcc1c83b7bd735522cb5e76f6334abd9076ea0fff0b73",
      "plan_hash": "b06fc8c036fa1fb1f299fc9e4795db0cca82171a000e54bb4941c483f9f7e382",
      "input_hash": "f0aa1d98d12918d6760080b9a80f54cb60554c9b6f919fa9a537846fad976704",
      "inputs": {
        "instructions": "Derive testable requirements for synchronizing PRD Plugin with every relevant shipped AI-Collab Substrate capability. Preserve PRD canonical authority, classify deliberate exclusions, require config/fallback/security/downstream parity, and avoid duplicating runtime systems.",
        "source_refs": [
          "docs/audits/substrate-capability-parity-2026-07-15.json",
          "docs/brainstorm/BR-2026-07-15-substrate-capability-parity.json",
          "scripts/prd_substrate.py",
          "scripts/prd_test_scope.py",
          "scripts/prd_reporting.py",
          "scripts/prd_workflows.py",
          "templates/workflows.json",
          "templates/config.json"
        ]
      },
      "idempotency_key": "substrate-capability-parity-requirements",
      "status": "completed",
      "attempt": 1,
      "created_at": "2026-07-15T04:22:44Z",
      "updated_at": "2026-07-15T04:23:05Z",
      "receipts": [
        {
          "step_id": "state",
          "action": "state.consistency",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "5a1c6e5246defb1b6b6b90ff734db95bece2886b408ab112ed9b8e67222d5568",
          "completed_at": "2026-07-15T04:22:45Z"
        },
        {
          "step_id": "requirements",
          "action": "judgment.request",
          "input_hash": "e2e9cf9b7762330fc1e1bb1f3119b1f04e0497a941222e553ce73731368cd3e1",
          "output_hash": "86ca4e0f7398eb06e13b61fe3f885930c4b68eba01278c4f9bac93c588c55275",
          "request_hash": "79f1e2ee4b23bf82cdb1d27fc183f7a849f3c8e2dd9bdc42431461165ffe8907",
          "completed_at": "2026-07-15T04:23:05Z"
        }
      ],
      "steps": [
        {
          "id": "state",
          "action": "state.consistency",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-15T04:22:44Z",
          "output": {
            "status": "ok",
            "repo_root": "D:\\Projects\\prd-plugin",
            "summary": {
              "errors": 0,
              "warnings": 0,
              "infos": 0
            },
            "findings": []
          },
          "output_hash": "5a1c6e5246defb1b6b6b90ff734db95bece2886b408ab112ed9b8e67222d5568",
          "completed_at": "2026-07-15T04:22:45Z"
        },
        {
          "id": "requirements",
          "action": "judgment.request",
          "status": "completed",
          "resolved_input_hash": "e2e9cf9b7762330fc1e1bb1f3119b1f04e0497a941222e553ce73731368cd3e1",
          "started_at": "2026-07-15T04:22:45Z",
          "judgment_request": {
            "contract_version": 1,
            "run_id": "WFR-024",
            "step_id": "requirements",
            "task": "requirements",
            "instructions": "Derive testable requirements for synchronizing PRD Plugin with every relevant shipped AI-Collab Substrate capability. Preserve PRD canonical authority, classify deliberate exclusions, require config/fallback/security/downstream parity, and avoid duplicating runtime systems.",
            "source_refs": [
              "docs/audits/substrate-capability-parity-2026-07-15.json",
              "docs/brainstorm/BR-2026-07-15-substrate-capability-parity.json",
              "scripts/prd_substrate.py",
              "scripts/prd_test_scope.py",
              "scripts/prd_reporting.py",
              "scripts/prd_workflows.py",
              "templates/workflows.json",
              "templates/config.json"
            ],
            "source_hashes": {
              "docs/audits/substrate-capability-parity-2026-07-15.json": "fa93c3fbb01de00ab96a2a5f315cfca9edbaa863c431e80c9a9216aa46f9de6f",
              "docs/brainstorm/BR-2026-07-15-substrate-capability-parity.json": "122e5060382ffee92cbd47aea97f79a6dfd5ab9b7d1e5c1d6a0a8650d29b9364",
              "scripts/prd_substrate.py": "f69547d6f18caf7566c27f902f2c7b74661cb99c8262be9d35dd620cfa5596f5",
              "scripts/prd_test_scope.py": "fb723e14e8ae9e8c54b9e756ce51ec41e9e30889ed913bec259aff1dcae6a177",
              "scripts/prd_reporting.py": "fc92cbd8eb72a2a9f5d098c2163db465563ee18aa49d0d1c85f7c8e765d68733",
              "scripts/prd_workflows.py": "dab1a3d0673b2e8d0edfef4e29737b791aded27ced533517564cc0bde5e74d59",
              "templates/workflows.json": "531d4942846071086848b0e4233f595c227d6f9d98a87b6cc57255af7d849a7a",
              "templates/config.json": "a8dc4b6249d31dfa90e3b7fbf32e053d920073674e243311b051b6120e655517"
            },
            "result_schema": {
              "type": "object",
              "required": [
                "summary",
                "requirements",
                "source_refs"
              ],
              "properties": {
                "summary": {
                  "type": "string"
                },
                "requirements": {
                  "type": "array",
                  "items": {
                    "type": "object"
                  }
                },
                "source_refs": {
                  "type": "array",
                  "items": {
                    "type": "string"
                  }
                }
              }
            },
            "executor": "ai-collab",
            "profile": "fast-capable",
            "constraints": {
              "no_project_state_writes": true,
              "require_source_refs": true
            },
            "request_hash": "79f1e2ee4b23bf82cdb1d27fc183f7a849f3c8e2dd9bdc42431461165ffe8907"
          },
          "output": {
            "summary": "Fourteen testable requirements cover capability parity, a real runtime bridge, authority, configuration, knowledge and context, verification, goals and workers, optional specialist/app use, diagnostics, workflow mapping, downstream delivery, and end-to-end compatibility.",
            "requirements": [
              {
                "id": "PRD-REQ-058",
                "summary": "Maintain a machine-readable parity catalog covering every shipped capability and classifying it as required, optional, discover-only, unsupported, or intentionally excluded.",
                "source_refs": [
                  "docs/audits/substrate-capability-parity-2026-07-15.json",
                  "docs/brainstorm/BR-2026-07-15-substrate-capability-parity.json"
                ]
              },
              {
                "id": "PRD-REQ-059",
                "summary": "Negotiate adapter/runtime contract version, runtime identity, workspace and repository scope, authorization, health and effective capabilities before use.",
                "source_refs": [
                  "docs/audits/substrate-capability-parity-2026-07-15.json",
                  "docs/brainstorm/BR-2026-07-15-substrate-capability-parity.json"
                ]
              },
              {
                "id": "PRD-REQ-060",
                "summary": "Provide one executable bridge for capability discovery, read calls, bounded execution requests, receipts and validated workflow/reporting resume.",
                "source_refs": [
                  "docs/audits/substrate-capability-parity-2026-07-15.json",
                  "docs/brainstorm/BR-2026-07-15-substrate-capability-parity.json"
                ]
              },
              {
                "id": "PRD-REQ-061",
                "summary": "Keep PRD canonical state and IDs behind PRD MCP while recording repo-qualified runtime links, idempotency keys and receipts.",
                "source_refs": [
                  "docs/audits/substrate-capability-parity-2026-07-15.json",
                  "docs/brainstorm/BR-2026-07-15-substrate-capability-parity.json"
                ]
              },
              {
                "id": "PRD-REQ-062",
                "summary": "Expose per-capability enablement, intent routing, bounds, timeout, caching, fallback and required/optional policy through unified config and profiles.",
                "source_refs": [
                  "docs/audits/substrate-capability-parity-2026-07-15.json",
                  "docs/brainstorm/BR-2026-07-15-substrate-capability-parity.json"
                ]
              },
              {
                "id": "PRD-REQ-063",
                "summary": "Use the shipped Knowledge Hub for federated wiki/docs/manual retrieval, freshness and optional browsing, with local Markdown fallback.",
                "source_refs": [
                  "docs/audits/substrate-capability-parity-2026-07-15.json",
                  "docs/brainstorm/BR-2026-07-15-substrate-capability-parity.json"
                ]
              },
              {
                "id": "PRD-REQ-064",
                "summary": "Use Substrate memory, code/docs recall, context packs and selected skillbooks before raw re-derivation when configured and available.",
                "source_refs": [
                  "docs/audits/substrate-capability-parity-2026-07-15.json",
                  "docs/brainstorm/BR-2026-07-15-substrate-capability-parity.json"
                ]
              },
              {
                "id": "PRD-REQ-065",
                "summary": "Execute impact-scoped verification end to end with impact, structural callers/references, test mapping, execution, degradation handling and fingerprint-bound results.",
                "source_refs": [
                  "docs/audits/substrate-capability-parity-2026-07-15.json",
                  "docs/brainstorm/BR-2026-07-15-substrate-capability-parity.json"
                ]
              },
              {
                "id": "PRD-REQ-066",
                "summary": "Bind PRD goals, work tracking, worker branches and evidence to Substrate goals and bus capsules without creating dual lifecycle authority.",
                "source_refs": [
                  "docs/audits/substrate-capability-parity-2026-07-15.json",
                  "docs/brainstorm/BR-2026-07-15-substrate-capability-parity.json"
                ]
              },
              {
                "id": "PRD-REQ-067",
                "summary": "Support consent- and intent-gated routing to agents, specialist workspaces, App Server visual evidence and relevant external tools.",
                "source_refs": [
                  "docs/audits/substrate-capability-parity-2026-07-15.json",
                  "docs/brainstorm/BR-2026-07-15-substrate-capability-parity.json"
                ]
              },
              {
                "id": "PRD-REQ-068",
                "summary": "Use runtime doctor, index/freshness status, notices, model state and tool telemetry in session, maintenance and configuration recommendations.",
                "source_refs": [
                  "docs/audits/substrate-capability-parity-2026-07-15.json",
                  "docs/brainstorm/BR-2026-07-15-substrate-capability-parity.json"
                ]
              },
              {
                "id": "PRD-REQ-069",
                "summary": "Map every shipped PRD workflow to relevant Substrate capabilities, explicit fallbacks and deliberate exclusions.",
                "source_refs": [
                  "docs/audits/substrate-capability-parity-2026-07-15.json",
                  "docs/brainstorm/BR-2026-07-15-substrate-capability-parity.json"
                ]
              },
              {
                "id": "PRD-REQ-070",
                "summary": "Ship adapter/config/workflow/skill/hook/tool/template/installer/docs/version parity to all downstream hosts.",
                "source_refs": [
                  "docs/audits/substrate-capability-parity-2026-07-15.json",
                  "docs/brainstorm/BR-2026-07-15-substrate-capability-parity.json"
                ]
              },
              {
                "id": "PRD-REQ-071",
                "summary": "Prove compatibility, authorization isolation, idempotency, interruption/replay, degraded fallback, latency bounds and cross-version behavior with automated tests.",
                "source_refs": [
                  "docs/audits/substrate-capability-parity-2026-07-15.json",
                  "docs/brainstorm/BR-2026-07-15-substrate-capability-parity.json"
                ]
              }
            ],
            "source_refs": [
              "docs/audits/substrate-capability-parity-2026-07-15.json",
              "docs/brainstorm/BR-2026-07-15-substrate-capability-parity.json",
              "scripts/prd_substrate.py",
              "scripts/prd_test_scope.py",
              "scripts/prd_reporting.py",
              "scripts/prd_workflows.py",
              "templates/workflows.json",
              "templates/config.json"
            ]
          },
          "output_hash": "86ca4e0f7398eb06e13b61fe3f885930c4b68eba01278c4f9bac93c588c55275",
          "completed_at": "2026-07-15T04:23:05Z",
          "judgment_result": {
            "request_hash": "79f1e2ee4b23bf82cdb1d27fc183f7a849f3c8e2dd9bdc42431461165ffe8907",
            "executor": "ai-collab",
            "profile": "fast-capable"
          }
        }
      ],
      "completed_at": "2026-07-15T04:23:05Z"
    },
    {
      "id": "WFR-025",
      "schema_version": "1.0",
      "workflow_id": "session.start",
      "workflow_version": 1,
      "definition_hash": "84ce7a6cc9aa694e7d79ea287fc72dc11aae430d872a885ca70ba837e668657e",
      "plan_hash": "3ac96bd9bc6974dd538269c4c5f0c914e98110574189cd54d4ffbafb876b1a73",
      "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
      "inputs": {},
      "idempotency_key": "substrate-sync-implementation-start-2026-07-15",
      "status": "completed",
      "attempt": 1,
      "created_at": "2026-07-15T04:42:17Z",
      "updated_at": "2026-07-15T04:42:19Z",
      "receipts": [
        {
          "step_id": "config",
          "action": "config.audit",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "3c29c3b0cfac90c0c7df955d1fb281c137037adeba1b7c1feeccae165cf66a6b",
          "completed_at": "2026-07-15T04:42:17Z"
        },
        {
          "step_id": "state",
          "action": "state.consistency",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "5a1c6e5246defb1b6b6b90ff734db95bece2886b408ab112ed9b8e67222d5568",
          "completed_at": "2026-07-15T04:42:19Z"
        },
        {
          "step_id": "status",
          "action": "state.query",
          "input_hash": "a15231a2142a2a9a85355a8b9cbbccffe01a9c9c2c2fd8c2bc2987cdc481564a",
          "output_hash": "270bc45c2ba15231e6c08ca029710ff691d98f6fe83ff37e14a4b2c89283bae8",
          "completed_at": "2026-07-15T04:42:19Z"
        }
      ],
      "steps": [
        {
          "id": "config",
          "action": "config.audit",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-15T04:42:17Z",
          "output": {
            "status": "ok",
            "summary": {
              "settings": 172,
              "mutable": 163,
              "read_only_or_managed": 9,
              "unclassified": 0,
              "unknown": 0,
              "invalid": 0,
              "missing_using_defaults": 0
            },
            "unclassified_keys": [],
            "unknown_keys": [],
            "invalid_values": [],
            "missing_using_defaults": []
          },
          "output_hash": "3c29c3b0cfac90c0c7df955d1fb281c137037adeba1b7c1feeccae165cf66a6b",
          "completed_at": "2026-07-15T04:42:17Z"
        },
        {
          "id": "state",
          "action": "state.consistency",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-15T04:42:17Z",
          "output": {
            "status": "ok",
            "repo_root": "D:\\Projects\\prd-plugin",
            "summary": {
              "errors": 0,
              "warnings": 0,
              "infos": 0
            },
            "findings": []
          },
          "output_hash": "5a1c6e5246defb1b6b6b90ff734db95bece2886b408ab112ed9b8e67222d5568",
          "completed_at": "2026-07-15T04:42:19Z"
        },
        {
          "id": "status",
          "action": "state.query",
          "status": "completed",
          "resolved_input_hash": "a15231a2142a2a9a85355a8b9cbbccffe01a9c9c2c2fd8c2bc2987cdc481564a",
          "started_at": "2026-07-15T04:42:19Z",
          "output": {
            "repo_root": "D:\\Projects\\prd-plugin",
            "autonomy_level": "autonomous",
            "requests_by_status": {
              "accepted": 2,
              "deferred": 1,
              "implemented": 76,
              "proposed": 1,
              "rejected": 1
            },
            "active_tracking": [],
            "tracking_branches": [],
            "tracking_branch_counts": {},
            "tracking_branch_errors": [],
            "open_health": [
              "HLT-014",
              "HLT-016",
              "HLT-017",
              "HLT-018",
              "HLT-019"
            ],
            "stale_count": 0,
            "skill_usage": {
              "project-decision-policy": 1,
              "project-request-intake": 1,
              "project-test-driven-implementation": 1,
              "project-verification-before-completion": 1,
              "project-llm-wiki": 1
            },
            "wiki_backfill_pending": false,
            "version_update": null
          },
          "output_hash": "270bc45c2ba15231e6c08ca029710ff691d98f6fe83ff37e14a4b2c89283bae8",
          "completed_at": "2026-07-15T04:42:19Z"
        }
      ],
      "completed_at": "2026-07-15T04:42:19Z"
    },
    {
      "id": "WFR-026",
      "schema_version": "1.0",
      "workflow_id": "session.start",
      "workflow_version": 1,
      "definition_hash": "d0f98da02571e6dd27fec4aed92d3c82af9db75f8b90b997bf665635c7b7f6ca",
      "plan_hash": "b5072615ca3b7e9a3bd85d50d1f069d99ef2a9816b32c03a370745ed7a205536",
      "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
      "inputs": {},
      "idempotency_key": "hook:SessionStart:019f6628-a63a-73e3-894d-aa2beef7b4a0",
      "status": "completed",
      "attempt": 1,
      "created_at": "2026-07-15T14:22:51Z",
      "updated_at": "2026-07-15T14:22:54Z",
      "receipts": [
        {
          "step_id": "config",
          "action": "config.audit",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "3782ec2317c0c8ee7598634310a2804d8aae4735f557498f9d3b8fae7c45e1e5",
          "completed_at": "2026-07-15T14:22:51Z"
        },
        {
          "step_id": "services",
          "action": "services.audit",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "13dcc58bd528f3efa3e6e0fa0853a6eedc376f1f3685fbd4869cbb2b60382ee3",
          "completed_at": "2026-07-15T14:22:51Z"
        },
        {
          "step_id": "state",
          "action": "state.consistency",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "5a1c6e5246defb1b6b6b90ff734db95bece2886b408ab112ed9b8e67222d5568",
          "completed_at": "2026-07-15T14:22:54Z"
        },
        {
          "step_id": "status",
          "action": "state.query",
          "input_hash": "a15231a2142a2a9a85355a8b9cbbccffe01a9c9c2c2fd8c2bc2987cdc481564a",
          "output_hash": "8ba9f7d3cc6705af37de9e3324d1258e21ccacb5ab0b2d7b389ca08885e11187",
          "completed_at": "2026-07-15T14:22:54Z"
        },
        {
          "step_id": "substrate",
          "action": "substrate.preflight",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "a6df426290b4549a59eecaa0519ead9bcc50b7fcb25bd2185ff6047960f19ccb",
          "completed_at": "2026-07-15T14:22:54Z"
        },
        {
          "step_id": "notices",
          "action": "substrate.notices",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "38b904a1cf83df048360fb2480571b749fd98d57e11f1afdffb5a74a78166fea",
          "completed_at": "2026-07-15T14:22:54Z"
        },
        {
          "step_id": "goals",
          "action": "substrate.goals",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "cdfd4de44a28140e686159f34f7b47975954c67e1d1efcef666e985acb136ed8",
          "completed_at": "2026-07-15T14:22:54Z"
        }
      ],
      "steps": [
        {
          "id": "config",
          "action": "config.audit",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-15T14:22:51Z",
          "output": {
            "status": "ok",
            "summary": {
              "settings": 195,
              "mutable": 186,
              "read_only_or_managed": 9,
              "unclassified": 0,
              "unknown": 0,
              "invalid": 0,
              "missing_using_defaults": 0
            },
            "unclassified_keys": [],
            "unknown_keys": [],
            "invalid_values": [],
            "missing_using_defaults": []
          },
          "output_hash": "3782ec2317c0c8ee7598634310a2804d8aae4735f557498f9d3b8fae7c45e1e5",
          "completed_at": "2026-07-15T14:22:51Z"
        },
        {
          "id": "services",
          "action": "services.audit",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-15T14:22:51Z",
          "output": {
            "status": "ok",
            "summary": {
              "critical": 0,
              "high": 0,
              "medium": 0,
              "low": 0
            },
            "findings": []
          },
          "output_hash": "13dcc58bd528f3efa3e6e0fa0853a6eedc376f1f3685fbd4869cbb2b60382ee3",
          "completed_at": "2026-07-15T14:22:51Z"
        },
        {
          "id": "state",
          "action": "state.consistency",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-15T14:22:51Z",
          "output": {
            "status": "ok",
            "repo_root": "D:\\Projects\\prd-plugin",
            "summary": {
              "errors": 0,
              "warnings": 0,
              "infos": 0
            },
            "findings": []
          },
          "output_hash": "5a1c6e5246defb1b6b6b90ff734db95bece2886b408ab112ed9b8e67222d5568",
          "completed_at": "2026-07-15T14:22:54Z"
        },
        {
          "id": "status",
          "action": "state.query",
          "status": "completed",
          "resolved_input_hash": "a15231a2142a2a9a85355a8b9cbbccffe01a9c9c2c2fd8c2bc2987cdc481564a",
          "started_at": "2026-07-15T14:22:54Z",
          "output": {
            "repo_root": "D:\\Projects\\prd-plugin",
            "autonomy_level": "autonomous",
            "requests_by_status": {
              "deferred": 1,
              "implemented": 80,
              "proposed": 1,
              "rejected": 1
            },
            "active_tracking": [],
            "tracking_branches": [],
            "tracking_branch_counts": {},
            "tracking_branch_errors": [],
            "open_health": [],
            "stale_count": 0,
            "skill_usage": {
              "project-decision-policy": 1,
              "project-request-intake": 1,
              "project-test-driven-implementation": 1,
              "project-verification-before-completion": 1,
              "project-llm-wiki": 1
            },
            "wiki_backfill_pending": false,
            "version_update": null
          },
          "output_hash": "8ba9f7d3cc6705af37de9e3324d1258e21ccacb5ab0b2d7b389ca08885e11187",
          "completed_at": "2026-07-15T14:22:54Z"
        },
        {
          "id": "substrate",
          "action": "substrate.preflight",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-15T14:22:54Z",
          "output": {
            "status": "disabled",
            "services": {
              "status": "ok",
              "summary": {
                "critical": 0,
                "high": 0,
                "medium": 0,
                "low": 0
              },
              "findings": []
            },
            "policy": {
              "configured": {
                "enabled": false,
                "mode": "off",
                "capabilities": [
                  "records",
                  "graph",
                  "events"
                ],
                "contract_version": 2,
                "require_source_refs": true,
                "endpoint": "http://127.0.0.1:47124",
                "manual_url": "http://127.0.0.1:47124/utcp.json",
                "knowledge_browse_url": "http://127.0.0.1:5276",
                "auth_env": "AI_COLLAB_API_KEY",
                "timeout_seconds": 5,
                "max_result_bytes": 1048576,
                "cache_ttl_seconds": 60,
                "fallback": "local",
                "automation": {
                  "discovery_on_session_start": true,
                  "knowledge_recall": true,
                  "memory_recall": true,
                  "context_enrichment": true,
                  "notices_on_session_start": false,
                  "goals_sync": false,
                  "telemetry_on_maintenance": false,
                  "reporting_dispatch": true,
                  "judgment_dispatch": true,
                  "verification_execution": true
                }
              },
              "active": false,
              "effective_mode": "off",
              "effective_capabilities": []
            }
          },
          "output_hash": "a6df426290b4549a59eecaa0519ead9bcc50b7fcb25bd2185ff6047960f19ccb",
          "completed_at": "2026-07-15T14:22:54Z"
        },
        {
          "id": "notices",
          "action": "substrate.notices",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-15T14:22:54Z",
          "output": {
            "status": "disabled"
          },
          "output_hash": "38b904a1cf83df048360fb2480571b749fd98d57e11f1afdffb5a74a78166fea",
          "completed_at": "2026-07-15T14:22:54Z"
        },
        {
          "id": "goals",
          "action": "substrate.goals",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-15T14:22:54Z",
          "output": {
            "status": "disabled",
            "created": 0,
            "observed": 0,
            "results": []
          },
          "output_hash": "cdfd4de44a28140e686159f34f7b47975954c67e1d1efcef666e985acb136ed8",
          "completed_at": "2026-07-15T14:22:54Z"
        }
      ],
      "completed_at": "2026-07-15T14:22:54Z"
    },
    {
      "id": "WFR-027",
      "schema_version": "1.0",
      "workflow_id": "session.stop",
      "workflow_version": 1,
      "definition_hash": "0cef7bb3e28321be8f85375c154955a69310ce297e47de3f3b8dd48f77a2f07d",
      "plan_hash": "a5e1d77ac734217487fc418e29c7163f4e81178e25d171e70cd4c999d527d3e8",
      "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
      "inputs": {},
      "idempotency_key": "hook:Stop:019f6628-a63a-73e3-894d-aa2beef7b4a0",
      "status": "completed",
      "attempt": 1,
      "created_at": "2026-07-15T14:24:14Z",
      "updated_at": "2026-07-15T14:24:14Z",
      "receipts": [
        {
          "step_id": "state",
          "action": "state.consistency",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "5a1c6e5246defb1b6b6b90ff734db95bece2886b408ab112ed9b8e67222d5568",
          "completed_at": "2026-07-15T14:24:14Z"
        },
        {
          "step_id": "goals",
          "action": "substrate.goals",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "cdfd4de44a28140e686159f34f7b47975954c67e1d1efcef666e985acb136ed8",
          "completed_at": "2026-07-15T14:24:14Z"
        },
        {
          "step_id": "staleness",
          "action": "staleness.audit",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "1e81cb0ffd0a4d04626920a203b38d2d23a264cd43e807a85d375d69cae8a658",
          "completed_at": "2026-07-15T14:24:14Z"
        },
        {
          "step_id": "reflections",
          "action": "reflection.list",
          "input_hash": "0172e841ab4c13b3a4061f073f9d68a716ec87a8a5d52fde41823385e0582573",
          "output_hash": "c1b6b635c0bab21120657277f14ef6f839909875f307a3745fa48aee2bd6e449",
          "completed_at": "2026-07-15T14:24:14Z"
        },
        {
          "step_id": "bundle",
          "action": "reporting.bundle",
          "input_hash": "aed8ebb688dc3c085dd978d7c4120572173c3cb87e75919e4a937dcca6ef9457",
          "output_hash": "6413b750e5adf462056ec1108a5d692cc446676e520bee65af98f64bc3e9bd9b",
          "completed_at": "2026-07-15T14:24:14Z"
        },
        {
          "step_id": "delegated",
          "action": "reporting.delegate",
          "input_hash": "669197e524ce450fa066ad7ef7d9da00168b780083ca6a5d7094bca3097e8568",
          "output_hash": "e6085059f197def80ae95add1f328418107bea5436c9bd002530043646a3a95c",
          "completed_at": "2026-07-15T14:24:14Z"
        }
      ],
      "steps": [
        {
          "id": "state",
          "action": "state.consistency",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-15T14:24:14Z",
          "output": {
            "status": "ok",
            "repo_root": "D:\\Projects\\prd-plugin",
            "summary": {
              "errors": 0,
              "warnings": 0,
              "infos": 0
            },
            "findings": []
          },
          "output_hash": "5a1c6e5246defb1b6b6b90ff734db95bece2886b408ab112ed9b8e67222d5568",
          "completed_at": "2026-07-15T14:24:14Z"
        },
        {
          "id": "goals",
          "action": "substrate.goals",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-15T14:24:14Z",
          "output": {
            "status": "disabled",
            "created": 0,
            "observed": 0,
            "results": []
          },
          "output_hash": "cdfd4de44a28140e686159f34f7b47975954c67e1d1efcef666e985acb136ed8",
          "completed_at": "2026-07-15T14:24:14Z"
        },
        {
          "id": "staleness",
          "action": "staleness.audit",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-15T14:24:14Z",
          "output": {
            "status": "ok",
            "repo_root": "D:\\Projects\\prd-plugin",
            "counts": {
              "stale": 0
            },
            "stale": []
          },
          "output_hash": "1e81cb0ffd0a4d04626920a203b38d2d23a264cd43e807a85d375d69cae8a658",
          "completed_at": "2026-07-15T14:24:14Z"
        },
        {
          "id": "reflections",
          "action": "reflection.list",
          "status": "completed",
          "resolved_input_hash": "0172e841ab4c13b3a4061f073f9d68a716ec87a8a5d52fde41823385e0582573",
          "started_at": "2026-07-15T14:24:14Z",
          "output": {
            "enabled": false,
            "on_stop": true,
            "max_questions_per_stop": 5,
            "categories": [
              {
                "id": "behaviour_quality",
                "name": "Behaviour quality",
                "enabled": true,
                "question_count": 3
              },
              {
                "id": "harness_friction",
                "name": "Harness friction",
                "enabled": true,
                "question_count": 2
              }
            ],
            "questions": [
              {
                "id": "RFQ-001",
                "text": "Based on the work you just carried out, would you classify your behaviour as good? Answer yes or no and cite observable evidence.",
                "enabled": true,
                "category_id": "behaviour_quality",
                "category_name": "Behaviour quality",
                "effective_enabled": false
              },
              {
                "id": "RFQ-002",
                "text": "If you answered no, what could you do differently to correct your behaviour?",
                "enabled": true,
                "category_id": "behaviour_quality",
                "category_name": "Behaviour quality",
                "effective_enabled": false
              },
              {
                "id": "RFQ-003",
                "text": "Would another attempt using the identified good behaviours materially improve the outcome? Answer yes or no and state the next corrective action if yes.",
                "enabled": true,
                "category_id": "behaviour_quality",
                "category_name": "Behaviour quality",
                "effective_enabled": false
              },
              {
                "id": "RFQ-004",
                "text": "What harness friction points made this work more difficult?",
                "enabled": true,
                "category_id": "harness_friction",
                "category_name": "Harness friction",
                "effective_enabled": false
              },
              {
                "id": "RFQ-005",
                "text": "What up to three changes would most improve friction in the harness?",
                "enabled": true,
                "category_id": "harness_friction",
                "category_name": "Harness friction",
                "effective_enabled": false
              }
            ]
          },
          "output_hash": "c1b6b635c0bab21120657277f14ef6f839909875f307a3745fa48aee2bd6e449",
          "completed_at": "2026-07-15T14:24:14Z"
        },
        {
          "id": "bundle",
          "action": "reporting.bundle",
          "status": "completed",
          "resolved_input_hash": "aed8ebb688dc3c085dd978d7c4120572173c3cb87e75919e4a937dcca6ef9457",
          "started_at": "2026-07-15T14:24:14Z",
          "output": {
            "contract_version": 1,
            "task": "session_summary",
            "repo": "prd-plugin",
            "policy": {
              "enabled": false,
              "executor": "ai-collab",
              "contract_version": 1,
              "profile": "fast-capable",
              "tasks": [
                "report_summary",
                "session_summary",
                "wiki_synthesis",
                "triage_draft"
              ],
              "fallback": "main",
              "require_source_refs": true,
              "max_input_tokens": 12000,
              "max_output_tokens": 1500,
              "timeout_seconds": 30
            },
            "facts": {
              "requests_by_status": {
                "deferred": 1,
                "implemented": 80,
                "proposed": 1,
                "rejected": 1
              },
              "active_requests": [
                {
                  "id": "REQ-072",
                  "status": "proposed",
                  "severity": "low",
                  "summary": "opencode run-until-done: session.idle is a non-blocking notification, so the stop guard can't force continuation on opencode (currently degrades to a printed reminder, 0.5.95). Investigate whether opencode exposes any vetoable/continuation mechanism (a different event, a permission hook, or a 'continue' API) to enforce run-until-done, or accept the reminder as the permanent ceiling. Low priority — user rarely uses opencode."
                }
              ],
              "active_tracking": [],
              "open_health": [],
              "evidence_count": 104,
              "decision_count": 9
            },
            "findings": [],
            "source_refs": [
              ".prd_plugin/config.json",
              ".prd_plugin/state/decisions.json",
              ".prd_plugin/state/evidence.json",
              ".prd_plugin/state/health.json",
              ".prd_plugin/state/requests.json",
              ".prd_plugin/state/tracking.json",
              "REQ-072"
            ],
            "constraints": {
              "max_input_tokens": 12000,
              "max_output_tokens": 1500,
              "timeout_seconds": 30,
              "require_source_refs": true,
              "no_project_state_writes": true,
              "no_secrets_or_local_session_content": true
            }
          },
          "output_hash": "6413b750e5adf462056ec1108a5d692cc446676e520bee65af98f64bc3e9bd9b",
          "completed_at": "2026-07-15T14:24:14Z"
        },
        {
          "id": "delegated",
          "action": "reporting.delegate",
          "status": "completed",
          "resolved_input_hash": "669197e524ce450fa066ad7ef7d9da00168b780083ca6a5d7094bca3097e8568",
          "started_at": "2026-07-15T14:24:14Z",
          "output": {
            "status": "fallback",
            "action": "main",
            "reason": "disabled"
          },
          "output_hash": "e6085059f197def80ae95add1f328418107bea5436c9bd002530043646a3a95c",
          "completed_at": "2026-07-15T14:24:14Z"
        }
      ],
      "completed_at": "2026-07-15T14:24:14Z"
    },
    {
      "id": "WFR-028",
      "schema_version": "1.0",
      "workflow_id": "session.start",
      "workflow_version": 1,
      "definition_hash": "d0f98da02571e6dd27fec4aed92d3c82af9db75f8b90b997bf665635c7b7f6ca",
      "plan_hash": "b5072615ca3b7e9a3bd85d50d1f069d99ef2a9816b32c03a370745ed7a205536",
      "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
      "inputs": {},
      "idempotency_key": "hook:SessionStart:019f662a-d766-74d0-b47f-24b4988439d6",
      "status": "completed",
      "attempt": 1,
      "created_at": "2026-07-15T14:25:13Z",
      "updated_at": "2026-07-15T14:25:14Z",
      "receipts": [
        {
          "step_id": "config",
          "action": "config.audit",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "3782ec2317c0c8ee7598634310a2804d8aae4735f557498f9d3b8fae7c45e1e5",
          "completed_at": "2026-07-15T14:25:13Z"
        },
        {
          "step_id": "services",
          "action": "services.audit",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "13dcc58bd528f3efa3e6e0fa0853a6eedc376f1f3685fbd4869cbb2b60382ee3",
          "completed_at": "2026-07-15T14:25:13Z"
        },
        {
          "step_id": "state",
          "action": "state.consistency",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "5a1c6e5246defb1b6b6b90ff734db95bece2886b408ab112ed9b8e67222d5568",
          "completed_at": "2026-07-15T14:25:14Z"
        },
        {
          "step_id": "status",
          "action": "state.query",
          "input_hash": "a15231a2142a2a9a85355a8b9cbbccffe01a9c9c2c2fd8c2bc2987cdc481564a",
          "output_hash": "8ba9f7d3cc6705af37de9e3324d1258e21ccacb5ab0b2d7b389ca08885e11187",
          "completed_at": "2026-07-15T14:25:14Z"
        },
        {
          "step_id": "substrate",
          "action": "substrate.preflight",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "a6df426290b4549a59eecaa0519ead9bcc50b7fcb25bd2185ff6047960f19ccb",
          "completed_at": "2026-07-15T14:25:14Z"
        },
        {
          "step_id": "notices",
          "action": "substrate.notices",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "38b904a1cf83df048360fb2480571b749fd98d57e11f1afdffb5a74a78166fea",
          "completed_at": "2026-07-15T14:25:14Z"
        },
        {
          "step_id": "goals",
          "action": "substrate.goals",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "cdfd4de44a28140e686159f34f7b47975954c67e1d1efcef666e985acb136ed8",
          "completed_at": "2026-07-15T14:25:14Z"
        }
      ],
      "steps": [
        {
          "id": "config",
          "action": "config.audit",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-15T14:25:13Z",
          "output": {
            "status": "ok",
            "summary": {
              "settings": 195,
              "mutable": 186,
              "read_only_or_managed": 9,
              "unclassified": 0,
              "unknown": 0,
              "invalid": 0,
              "missing_using_defaults": 0
            },
            "unclassified_keys": [],
            "unknown_keys": [],
            "invalid_values": [],
            "missing_using_defaults": []
          },
          "output_hash": "3782ec2317c0c8ee7598634310a2804d8aae4735f557498f9d3b8fae7c45e1e5",
          "completed_at": "2026-07-15T14:25:13Z"
        },
        {
          "id": "services",
          "action": "services.audit",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-15T14:25:13Z",
          "output": {
            "status": "ok",
            "summary": {
              "critical": 0,
              "high": 0,
              "medium": 0,
              "low": 0
            },
            "findings": []
          },
          "output_hash": "13dcc58bd528f3efa3e6e0fa0853a6eedc376f1f3685fbd4869cbb2b60382ee3",
          "completed_at": "2026-07-15T14:25:13Z"
        },
        {
          "id": "state",
          "action": "state.consistency",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-15T14:25:13Z",
          "output": {
            "status": "ok",
            "repo_root": "D:\\Projects\\prd-plugin",
            "summary": {
              "errors": 0,
              "warnings": 0,
              "infos": 0
            },
            "findings": []
          },
          "output_hash": "5a1c6e5246defb1b6b6b90ff734db95bece2886b408ab112ed9b8e67222d5568",
          "completed_at": "2026-07-15T14:25:14Z"
        },
        {
          "id": "status",
          "action": "state.query",
          "status": "completed",
          "resolved_input_hash": "a15231a2142a2a9a85355a8b9cbbccffe01a9c9c2c2fd8c2bc2987cdc481564a",
          "started_at": "2026-07-15T14:25:14Z",
          "output": {
            "repo_root": "D:\\Projects\\prd-plugin",
            "autonomy_level": "autonomous",
            "requests_by_status": {
              "deferred": 1,
              "implemented": 80,
              "proposed": 1,
              "rejected": 1
            },
            "active_tracking": [],
            "tracking_branches": [],
            "tracking_branch_counts": {},
            "tracking_branch_errors": [],
            "open_health": [],
            "stale_count": 0,
            "skill_usage": {
              "project-decision-policy": 1,
              "project-request-intake": 1,
              "project-test-driven-implementation": 1,
              "project-verification-before-completion": 1,
              "project-llm-wiki": 1
            },
            "wiki_backfill_pending": false,
            "version_update": null
          },
          "output_hash": "8ba9f7d3cc6705af37de9e3324d1258e21ccacb5ab0b2d7b389ca08885e11187",
          "completed_at": "2026-07-15T14:25:14Z"
        },
        {
          "id": "substrate",
          "action": "substrate.preflight",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-15T14:25:14Z",
          "output": {
            "status": "disabled",
            "services": {
              "status": "ok",
              "summary": {
                "critical": 0,
                "high": 0,
                "medium": 0,
                "low": 0
              },
              "findings": []
            },
            "policy": {
              "configured": {
                "enabled": false,
                "mode": "off",
                "capabilities": [
                  "records",
                  "graph",
                  "events"
                ],
                "contract_version": 2,
                "require_source_refs": true,
                "endpoint": "http://127.0.0.1:47124",
                "manual_url": "http://127.0.0.1:47124/utcp.json",
                "knowledge_browse_url": "http://127.0.0.1:5276",
                "auth_env": "AI_COLLAB_API_KEY",
                "timeout_seconds": 5,
                "max_result_bytes": 1048576,
                "cache_ttl_seconds": 60,
                "fallback": "local",
                "automation": {
                  "discovery_on_session_start": true,
                  "knowledge_recall": true,
                  "memory_recall": true,
                  "context_enrichment": true,
                  "notices_on_session_start": false,
                  "goals_sync": false,
                  "telemetry_on_maintenance": false,
                  "reporting_dispatch": true,
                  "judgment_dispatch": true,
                  "verification_execution": true
                }
              },
              "active": false,
              "effective_mode": "off",
              "effective_capabilities": []
            }
          },
          "output_hash": "a6df426290b4549a59eecaa0519ead9bcc50b7fcb25bd2185ff6047960f19ccb",
          "completed_at": "2026-07-15T14:25:14Z"
        },
        {
          "id": "notices",
          "action": "substrate.notices",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-15T14:25:14Z",
          "output": {
            "status": "disabled"
          },
          "output_hash": "38b904a1cf83df048360fb2480571b749fd98d57e11f1afdffb5a74a78166fea",
          "completed_at": "2026-07-15T14:25:14Z"
        },
        {
          "id": "goals",
          "action": "substrate.goals",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-15T14:25:14Z",
          "output": {
            "status": "disabled",
            "created": 0,
            "observed": 0,
            "results": []
          },
          "output_hash": "cdfd4de44a28140e686159f34f7b47975954c67e1d1efcef666e985acb136ed8",
          "completed_at": "2026-07-15T14:25:14Z"
        }
      ],
      "completed_at": "2026-07-15T14:25:14Z"
    },
    {
      "id": "WFR-029",
      "schema_version": "1.0",
      "workflow_id": "session.stop",
      "workflow_version": 1,
      "definition_hash": "0cef7bb3e28321be8f85375c154955a69310ce297e47de3f3b8dd48f77a2f07d",
      "plan_hash": "a5e1d77ac734217487fc418e29c7163f4e81178e25d171e70cd4c999d527d3e8",
      "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
      "inputs": {},
      "idempotency_key": "hook:Stop:019f662a-d766-74d0-b47f-24b4988439d6",
      "status": "completed",
      "attempt": 1,
      "created_at": "2026-07-15T14:25:17Z",
      "updated_at": "2026-07-15T14:25:18Z",
      "receipts": [
        {
          "step_id": "state",
          "action": "state.consistency",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "5a1c6e5246defb1b6b6b90ff734db95bece2886b408ab112ed9b8e67222d5568",
          "completed_at": "2026-07-15T14:25:18Z"
        },
        {
          "step_id": "goals",
          "action": "substrate.goals",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "cdfd4de44a28140e686159f34f7b47975954c67e1d1efcef666e985acb136ed8",
          "completed_at": "2026-07-15T14:25:18Z"
        },
        {
          "step_id": "staleness",
          "action": "staleness.audit",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "1e81cb0ffd0a4d04626920a203b38d2d23a264cd43e807a85d375d69cae8a658",
          "completed_at": "2026-07-15T14:25:18Z"
        },
        {
          "step_id": "reflections",
          "action": "reflection.list",
          "input_hash": "0172e841ab4c13b3a4061f073f9d68a716ec87a8a5d52fde41823385e0582573",
          "output_hash": "c1b6b635c0bab21120657277f14ef6f839909875f307a3745fa48aee2bd6e449",
          "completed_at": "2026-07-15T14:25:18Z"
        },
        {
          "step_id": "bundle",
          "action": "reporting.bundle",
          "input_hash": "aed8ebb688dc3c085dd978d7c4120572173c3cb87e75919e4a937dcca6ef9457",
          "output_hash": "6413b750e5adf462056ec1108a5d692cc446676e520bee65af98f64bc3e9bd9b",
          "completed_at": "2026-07-15T14:25:18Z"
        },
        {
          "step_id": "delegated",
          "action": "reporting.delegate",
          "input_hash": "669197e524ce450fa066ad7ef7d9da00168b780083ca6a5d7094bca3097e8568",
          "output_hash": "e6085059f197def80ae95add1f328418107bea5436c9bd002530043646a3a95c",
          "completed_at": "2026-07-15T14:25:18Z"
        }
      ],
      "steps": [
        {
          "id": "state",
          "action": "state.consistency",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-15T14:25:17Z",
          "output": {
            "status": "ok",
            "repo_root": "D:\\Projects\\prd-plugin",
            "summary": {
              "errors": 0,
              "warnings": 0,
              "infos": 0
            },
            "findings": []
          },
          "output_hash": "5a1c6e5246defb1b6b6b90ff734db95bece2886b408ab112ed9b8e67222d5568",
          "completed_at": "2026-07-15T14:25:18Z"
        },
        {
          "id": "goals",
          "action": "substrate.goals",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-15T14:25:18Z",
          "output": {
            "status": "disabled",
            "created": 0,
            "observed": 0,
            "results": []
          },
          "output_hash": "cdfd4de44a28140e686159f34f7b47975954c67e1d1efcef666e985acb136ed8",
          "completed_at": "2026-07-15T14:25:18Z"
        },
        {
          "id": "staleness",
          "action": "staleness.audit",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-15T14:25:18Z",
          "output": {
            "status": "ok",
            "repo_root": "D:\\Projects\\prd-plugin",
            "counts": {
              "stale": 0
            },
            "stale": []
          },
          "output_hash": "1e81cb0ffd0a4d04626920a203b38d2d23a264cd43e807a85d375d69cae8a658",
          "completed_at": "2026-07-15T14:25:18Z"
        },
        {
          "id": "reflections",
          "action": "reflection.list",
          "status": "completed",
          "resolved_input_hash": "0172e841ab4c13b3a4061f073f9d68a716ec87a8a5d52fde41823385e0582573",
          "started_at": "2026-07-15T14:25:18Z",
          "output": {
            "enabled": false,
            "on_stop": true,
            "max_questions_per_stop": 5,
            "categories": [
              {
                "id": "behaviour_quality",
                "name": "Behaviour quality",
                "enabled": true,
                "question_count": 3
              },
              {
                "id": "harness_friction",
                "name": "Harness friction",
                "enabled": true,
                "question_count": 2
              }
            ],
            "questions": [
              {
                "id": "RFQ-001",
                "text": "Based on the work you just carried out, would you classify your behaviour as good? Answer yes or no and cite observable evidence.",
                "enabled": true,
                "category_id": "behaviour_quality",
                "category_name": "Behaviour quality",
                "effective_enabled": false
              },
              {
                "id": "RFQ-002",
                "text": "If you answered no, what could you do differently to correct your behaviour?",
                "enabled": true,
                "category_id": "behaviour_quality",
                "category_name": "Behaviour quality",
                "effective_enabled": false
              },
              {
                "id": "RFQ-003",
                "text": "Would another attempt using the identified good behaviours materially improve the outcome? Answer yes or no and state the next corrective action if yes.",
                "enabled": true,
                "category_id": "behaviour_quality",
                "category_name": "Behaviour quality",
                "effective_enabled": false
              },
              {
                "id": "RFQ-004",
                "text": "What harness friction points made this work more difficult?",
                "enabled": true,
                "category_id": "harness_friction",
                "category_name": "Harness friction",
                "effective_enabled": false
              },
              {
                "id": "RFQ-005",
                "text": "What up to three changes would most improve friction in the harness?",
                "enabled": true,
                "category_id": "harness_friction",
                "category_name": "Harness friction",
                "effective_enabled": false
              }
            ]
          },
          "output_hash": "c1b6b635c0bab21120657277f14ef6f839909875f307a3745fa48aee2bd6e449",
          "completed_at": "2026-07-15T14:25:18Z"
        },
        {
          "id": "bundle",
          "action": "reporting.bundle",
          "status": "completed",
          "resolved_input_hash": "aed8ebb688dc3c085dd978d7c4120572173c3cb87e75919e4a937dcca6ef9457",
          "started_at": "2026-07-15T14:25:18Z",
          "output": {
            "contract_version": 1,
            "task": "session_summary",
            "repo": "prd-plugin",
            "policy": {
              "enabled": false,
              "executor": "ai-collab",
              "contract_version": 1,
              "profile": "fast-capable",
              "tasks": [
                "report_summary",
                "session_summary",
                "wiki_synthesis",
                "triage_draft"
              ],
              "fallback": "main",
              "require_source_refs": true,
              "max_input_tokens": 12000,
              "max_output_tokens": 1500,
              "timeout_seconds": 30
            },
            "facts": {
              "requests_by_status": {
                "deferred": 1,
                "implemented": 80,
                "proposed": 1,
                "rejected": 1
              },
              "active_requests": [
                {
                  "id": "REQ-072",
                  "status": "proposed",
                  "severity": "low",
                  "summary": "opencode run-until-done: session.idle is a non-blocking notification, so the stop guard can't force continuation on opencode (currently degrades to a printed reminder, 0.5.95). Investigate whether opencode exposes any vetoable/continuation mechanism (a different event, a permission hook, or a 'continue' API) to enforce run-until-done, or accept the reminder as the permanent ceiling. Low priority — user rarely uses opencode."
                }
              ],
              "active_tracking": [],
              "open_health": [],
              "evidence_count": 104,
              "decision_count": 9
            },
            "findings": [],
            "source_refs": [
              ".prd_plugin/config.json",
              ".prd_plugin/state/decisions.json",
              ".prd_plugin/state/evidence.json",
              ".prd_plugin/state/health.json",
              ".prd_plugin/state/requests.json",
              ".prd_plugin/state/tracking.json",
              "REQ-072"
            ],
            "constraints": {
              "max_input_tokens": 12000,
              "max_output_tokens": 1500,
              "timeout_seconds": 30,
              "require_source_refs": true,
              "no_project_state_writes": true,
              "no_secrets_or_local_session_content": true
            }
          },
          "output_hash": "6413b750e5adf462056ec1108a5d692cc446676e520bee65af98f64bc3e9bd9b",
          "completed_at": "2026-07-15T14:25:18Z"
        },
        {
          "id": "delegated",
          "action": "reporting.delegate",
          "status": "completed",
          "resolved_input_hash": "669197e524ce450fa066ad7ef7d9da00168b780083ca6a5d7094bca3097e8568",
          "started_at": "2026-07-15T14:25:18Z",
          "output": {
            "status": "fallback",
            "action": "main",
            "reason": "disabled"
          },
          "output_hash": "e6085059f197def80ae95add1f328418107bea5436c9bd002530043646a3a95c",
          "completed_at": "2026-07-15T14:25:18Z"
        }
      ],
      "completed_at": "2026-07-15T14:25:18Z"
    },
    {
      "id": "WFR-030",
      "schema_version": "1.0",
      "workflow_id": "session.start",
      "workflow_version": 1,
      "definition_hash": "d0f98da02571e6dd27fec4aed92d3c82af9db75f8b90b997bf665635c7b7f6ca",
      "plan_hash": "b5072615ca3b7e9a3bd85d50d1f069d99ef2a9816b32c03a370745ed7a205536",
      "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
      "inputs": {},
      "idempotency_key": "hook:SessionStart:019f662b-0dfd-7c11-a317-0bc5bcc6294c",
      "status": "completed",
      "attempt": 1,
      "created_at": "2026-07-15T14:25:27Z",
      "updated_at": "2026-07-15T14:25:28Z",
      "receipts": [
        {
          "step_id": "config",
          "action": "config.audit",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "3782ec2317c0c8ee7598634310a2804d8aae4735f557498f9d3b8fae7c45e1e5",
          "completed_at": "2026-07-15T14:25:27Z"
        },
        {
          "step_id": "services",
          "action": "services.audit",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "13dcc58bd528f3efa3e6e0fa0853a6eedc376f1f3685fbd4869cbb2b60382ee3",
          "completed_at": "2026-07-15T14:25:27Z"
        },
        {
          "step_id": "state",
          "action": "state.consistency",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "5a1c6e5246defb1b6b6b90ff734db95bece2886b408ab112ed9b8e67222d5568",
          "completed_at": "2026-07-15T14:25:27Z"
        },
        {
          "step_id": "status",
          "action": "state.query",
          "input_hash": "a15231a2142a2a9a85355a8b9cbbccffe01a9c9c2c2fd8c2bc2987cdc481564a",
          "output_hash": "8ba9f7d3cc6705af37de9e3324d1258e21ccacb5ab0b2d7b389ca08885e11187",
          "completed_at": "2026-07-15T14:25:28Z"
        },
        {
          "step_id": "substrate",
          "action": "substrate.preflight",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "a6df426290b4549a59eecaa0519ead9bcc50b7fcb25bd2185ff6047960f19ccb",
          "completed_at": "2026-07-15T14:25:28Z"
        },
        {
          "step_id": "notices",
          "action": "substrate.notices",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "38b904a1cf83df048360fb2480571b749fd98d57e11f1afdffb5a74a78166fea",
          "completed_at": "2026-07-15T14:25:28Z"
        },
        {
          "step_id": "goals",
          "action": "substrate.goals",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "cdfd4de44a28140e686159f34f7b47975954c67e1d1efcef666e985acb136ed8",
          "completed_at": "2026-07-15T14:25:28Z"
        }
      ],
      "steps": [
        {
          "id": "config",
          "action": "config.audit",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-15T14:25:27Z",
          "output": {
            "status": "ok",
            "summary": {
              "settings": 195,
              "mutable": 186,
              "read_only_or_managed": 9,
              "unclassified": 0,
              "unknown": 0,
              "invalid": 0,
              "missing_using_defaults": 0
            },
            "unclassified_keys": [],
            "unknown_keys": [],
            "invalid_values": [],
            "missing_using_defaults": []
          },
          "output_hash": "3782ec2317c0c8ee7598634310a2804d8aae4735f557498f9d3b8fae7c45e1e5",
          "completed_at": "2026-07-15T14:25:27Z"
        },
        {
          "id": "services",
          "action": "services.audit",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-15T14:25:27Z",
          "output": {
            "status": "ok",
            "summary": {
              "critical": 0,
              "high": 0,
              "medium": 0,
              "low": 0
            },
            "findings": []
          },
          "output_hash": "13dcc58bd528f3efa3e6e0fa0853a6eedc376f1f3685fbd4869cbb2b60382ee3",
          "completed_at": "2026-07-15T14:25:27Z"
        },
        {
          "id": "state",
          "action": "state.consistency",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-15T14:25:27Z",
          "output": {
            "status": "ok",
            "repo_root": "D:\\Projects\\prd-plugin",
            "summary": {
              "errors": 0,
              "warnings": 0,
              "infos": 0
            },
            "findings": []
          },
          "output_hash": "5a1c6e5246defb1b6b6b90ff734db95bece2886b408ab112ed9b8e67222d5568",
          "completed_at": "2026-07-15T14:25:27Z"
        },
        {
          "id": "status",
          "action": "state.query",
          "status": "completed",
          "resolved_input_hash": "a15231a2142a2a9a85355a8b9cbbccffe01a9c9c2c2fd8c2bc2987cdc481564a",
          "started_at": "2026-07-15T14:25:27Z",
          "output": {
            "repo_root": "D:\\Projects\\prd-plugin",
            "autonomy_level": "autonomous",
            "requests_by_status": {
              "deferred": 1,
              "implemented": 80,
              "proposed": 1,
              "rejected": 1
            },
            "active_tracking": [],
            "tracking_branches": [],
            "tracking_branch_counts": {},
            "tracking_branch_errors": [],
            "open_health": [],
            "stale_count": 0,
            "skill_usage": {
              "project-decision-policy": 1,
              "project-request-intake": 1,
              "project-test-driven-implementation": 1,
              "project-verification-before-completion": 1,
              "project-llm-wiki": 1
            },
            "wiki_backfill_pending": false,
            "version_update": null
          },
          "output_hash": "8ba9f7d3cc6705af37de9e3324d1258e21ccacb5ab0b2d7b389ca08885e11187",
          "completed_at": "2026-07-15T14:25:28Z"
        },
        {
          "id": "substrate",
          "action": "substrate.preflight",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-15T14:25:28Z",
          "output": {
            "status": "disabled",
            "services": {
              "status": "ok",
              "summary": {
                "critical": 0,
                "high": 0,
                "medium": 0,
                "low": 0
              },
              "findings": []
            },
            "policy": {
              "configured": {
                "enabled": false,
                "mode": "off",
                "capabilities": [
                  "records",
                  "graph",
                  "events"
                ],
                "contract_version": 2,
                "require_source_refs": true,
                "endpoint": "http://127.0.0.1:47124",
                "manual_url": "http://127.0.0.1:47124/utcp.json",
                "knowledge_browse_url": "http://127.0.0.1:5276",
                "auth_env": "AI_COLLAB_API_KEY",
                "timeout_seconds": 5,
                "max_result_bytes": 1048576,
                "cache_ttl_seconds": 60,
                "fallback": "local",
                "automation": {
                  "discovery_on_session_start": true,
                  "knowledge_recall": true,
                  "memory_recall": true,
                  "context_enrichment": true,
                  "notices_on_session_start": false,
                  "goals_sync": false,
                  "telemetry_on_maintenance": false,
                  "reporting_dispatch": true,
                  "judgment_dispatch": true,
                  "verification_execution": true
                }
              },
              "active": false,
              "effective_mode": "off",
              "effective_capabilities": []
            }
          },
          "output_hash": "a6df426290b4549a59eecaa0519ead9bcc50b7fcb25bd2185ff6047960f19ccb",
          "completed_at": "2026-07-15T14:25:28Z"
        },
        {
          "id": "notices",
          "action": "substrate.notices",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-15T14:25:28Z",
          "output": {
            "status": "disabled"
          },
          "output_hash": "38b904a1cf83df048360fb2480571b749fd98d57e11f1afdffb5a74a78166fea",
          "completed_at": "2026-07-15T14:25:28Z"
        },
        {
          "id": "goals",
          "action": "substrate.goals",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-15T14:25:28Z",
          "output": {
            "status": "disabled",
            "created": 0,
            "observed": 0,
            "results": []
          },
          "output_hash": "cdfd4de44a28140e686159f34f7b47975954c67e1d1efcef666e985acb136ed8",
          "completed_at": "2026-07-15T14:25:28Z"
        }
      ],
      "completed_at": "2026-07-15T14:25:28Z"
    },
    {
      "id": "WFR-031",
      "schema_version": "1.0",
      "workflow_id": "session.stop",
      "workflow_version": 1,
      "definition_hash": "0cef7bb3e28321be8f85375c154955a69310ce297e47de3f3b8dd48f77a2f07d",
      "plan_hash": "a5e1d77ac734217487fc418e29c7163f4e81178e25d171e70cd4c999d527d3e8",
      "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
      "inputs": {},
      "idempotency_key": "hook:Stop:019f662b-0dfd-7c11-a317-0bc5bcc6294c",
      "status": "completed",
      "attempt": 1,
      "created_at": "2026-07-15T14:25:30Z",
      "updated_at": "2026-07-15T14:25:31Z",
      "receipts": [
        {
          "step_id": "state",
          "action": "state.consistency",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "5a1c6e5246defb1b6b6b90ff734db95bece2886b408ab112ed9b8e67222d5568",
          "completed_at": "2026-07-15T14:25:30Z"
        },
        {
          "step_id": "goals",
          "action": "substrate.goals",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "cdfd4de44a28140e686159f34f7b47975954c67e1d1efcef666e985acb136ed8",
          "completed_at": "2026-07-15T14:25:30Z"
        },
        {
          "step_id": "staleness",
          "action": "staleness.audit",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "1e81cb0ffd0a4d04626920a203b38d2d23a264cd43e807a85d375d69cae8a658",
          "completed_at": "2026-07-15T14:25:30Z"
        },
        {
          "step_id": "reflections",
          "action": "reflection.list",
          "input_hash": "0172e841ab4c13b3a4061f073f9d68a716ec87a8a5d52fde41823385e0582573",
          "output_hash": "c1b6b635c0bab21120657277f14ef6f839909875f307a3745fa48aee2bd6e449",
          "completed_at": "2026-07-15T14:25:30Z"
        },
        {
          "step_id": "bundle",
          "action": "reporting.bundle",
          "input_hash": "aed8ebb688dc3c085dd978d7c4120572173c3cb87e75919e4a937dcca6ef9457",
          "output_hash": "6413b750e5adf462056ec1108a5d692cc446676e520bee65af98f64bc3e9bd9b",
          "completed_at": "2026-07-15T14:25:31Z"
        },
        {
          "step_id": "delegated",
          "action": "reporting.delegate",
          "input_hash": "669197e524ce450fa066ad7ef7d9da00168b780083ca6a5d7094bca3097e8568",
          "output_hash": "e6085059f197def80ae95add1f328418107bea5436c9bd002530043646a3a95c",
          "completed_at": "2026-07-15T14:25:31Z"
        }
      ],
      "steps": [
        {
          "id": "state",
          "action": "state.consistency",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-15T14:25:30Z",
          "output": {
            "status": "ok",
            "repo_root": "D:\\Projects\\prd-plugin",
            "summary": {
              "errors": 0,
              "warnings": 0,
              "infos": 0
            },
            "findings": []
          },
          "output_hash": "5a1c6e5246defb1b6b6b90ff734db95bece2886b408ab112ed9b8e67222d5568",
          "completed_at": "2026-07-15T14:25:30Z"
        },
        {
          "id": "goals",
          "action": "substrate.goals",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-15T14:25:30Z",
          "output": {
            "status": "disabled",
            "created": 0,
            "observed": 0,
            "results": []
          },
          "output_hash": "cdfd4de44a28140e686159f34f7b47975954c67e1d1efcef666e985acb136ed8",
          "completed_at": "2026-07-15T14:25:30Z"
        },
        {
          "id": "staleness",
          "action": "staleness.audit",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-15T14:25:30Z",
          "output": {
            "status": "ok",
            "repo_root": "D:\\Projects\\prd-plugin",
            "counts": {
              "stale": 0
            },
            "stale": []
          },
          "output_hash": "1e81cb0ffd0a4d04626920a203b38d2d23a264cd43e807a85d375d69cae8a658",
          "completed_at": "2026-07-15T14:25:30Z"
        },
        {
          "id": "reflections",
          "action": "reflection.list",
          "status": "completed",
          "resolved_input_hash": "0172e841ab4c13b3a4061f073f9d68a716ec87a8a5d52fde41823385e0582573",
          "started_at": "2026-07-15T14:25:30Z",
          "output": {
            "enabled": false,
            "on_stop": true,
            "max_questions_per_stop": 5,
            "categories": [
              {
                "id": "behaviour_quality",
                "name": "Behaviour quality",
                "enabled": true,
                "question_count": 3
              },
              {
                "id": "harness_friction",
                "name": "Harness friction",
                "enabled": true,
                "question_count": 2
              }
            ],
            "questions": [
              {
                "id": "RFQ-001",
                "text": "Based on the work you just carried out, would you classify your behaviour as good? Answer yes or no and cite observable evidence.",
                "enabled": true,
                "category_id": "behaviour_quality",
                "category_name": "Behaviour quality",
                "effective_enabled": false
              },
              {
                "id": "RFQ-002",
                "text": "If you answered no, what could you do differently to correct your behaviour?",
                "enabled": true,
                "category_id": "behaviour_quality",
                "category_name": "Behaviour quality",
                "effective_enabled": false
              },
              {
                "id": "RFQ-003",
                "text": "Would another attempt using the identified good behaviours materially improve the outcome? Answer yes or no and state the next corrective action if yes.",
                "enabled": true,
                "category_id": "behaviour_quality",
                "category_name": "Behaviour quality",
                "effective_enabled": false
              },
              {
                "id": "RFQ-004",
                "text": "What harness friction points made this work more difficult?",
                "enabled": true,
                "category_id": "harness_friction",
                "category_name": "Harness friction",
                "effective_enabled": false
              },
              {
                "id": "RFQ-005",
                "text": "What up to three changes would most improve friction in the harness?",
                "enabled": true,
                "category_id": "harness_friction",
                "category_name": "Harness friction",
                "effective_enabled": false
              }
            ]
          },
          "output_hash": "c1b6b635c0bab21120657277f14ef6f839909875f307a3745fa48aee2bd6e449",
          "completed_at": "2026-07-15T14:25:30Z"
        },
        {
          "id": "bundle",
          "action": "reporting.bundle",
          "status": "completed",
          "resolved_input_hash": "aed8ebb688dc3c085dd978d7c4120572173c3cb87e75919e4a937dcca6ef9457",
          "started_at": "2026-07-15T14:25:31Z",
          "output": {
            "contract_version": 1,
            "task": "session_summary",
            "repo": "prd-plugin",
            "policy": {
              "enabled": false,
              "executor": "ai-collab",
              "contract_version": 1,
              "profile": "fast-capable",
              "tasks": [
                "report_summary",
                "session_summary",
                "wiki_synthesis",
                "triage_draft"
              ],
              "fallback": "main",
              "require_source_refs": true,
              "max_input_tokens": 12000,
              "max_output_tokens": 1500,
              "timeout_seconds": 30
            },
            "facts": {
              "requests_by_status": {
                "deferred": 1,
                "implemented": 80,
                "proposed": 1,
                "rejected": 1
              },
              "active_requests": [
                {
                  "id": "REQ-072",
                  "status": "proposed",
                  "severity": "low",
                  "summary": "opencode run-until-done: session.idle is a non-blocking notification, so the stop guard can't force continuation on opencode (currently degrades to a printed reminder, 0.5.95). Investigate whether opencode exposes any vetoable/continuation mechanism (a different event, a permission hook, or a 'continue' API) to enforce run-until-done, or accept the reminder as the permanent ceiling. Low priority — user rarely uses opencode."
                }
              ],
              "active_tracking": [],
              "open_health": [],
              "evidence_count": 104,
              "decision_count": 9
            },
            "findings": [],
            "source_refs": [
              ".prd_plugin/config.json",
              ".prd_plugin/state/decisions.json",
              ".prd_plugin/state/evidence.json",
              ".prd_plugin/state/health.json",
              ".prd_plugin/state/requests.json",
              ".prd_plugin/state/tracking.json",
              "REQ-072"
            ],
            "constraints": {
              "max_input_tokens": 12000,
              "max_output_tokens": 1500,
              "timeout_seconds": 30,
              "require_source_refs": true,
              "no_project_state_writes": true,
              "no_secrets_or_local_session_content": true
            }
          },
          "output_hash": "6413b750e5adf462056ec1108a5d692cc446676e520bee65af98f64bc3e9bd9b",
          "completed_at": "2026-07-15T14:25:31Z"
        },
        {
          "id": "delegated",
          "action": "reporting.delegate",
          "status": "completed",
          "resolved_input_hash": "669197e524ce450fa066ad7ef7d9da00168b780083ca6a5d7094bca3097e8568",
          "started_at": "2026-07-15T14:25:31Z",
          "output": {
            "status": "fallback",
            "action": "main",
            "reason": "disabled"
          },
          "output_hash": "e6085059f197def80ae95add1f328418107bea5436c9bd002530043646a3a95c",
          "completed_at": "2026-07-15T14:25:31Z"
        }
      ],
      "completed_at": "2026-07-15T14:25:31Z"
    },
    {
      "id": "WFR-032",
      "schema_version": "1.0",
      "workflow_id": "session.start",
      "workflow_version": 1,
      "definition_hash": "d0f98da02571e6dd27fec4aed92d3c82af9db75f8b90b997bf665635c7b7f6ca",
      "plan_hash": "b5072615ca3b7e9a3bd85d50d1f069d99ef2a9816b32c03a370745ed7a205536",
      "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
      "inputs": {},
      "idempotency_key": "hook:SessionStart:019f6632-f338-7b13-8b21-38314fe0d3a9",
      "status": "completed",
      "attempt": 1,
      "created_at": "2026-07-15T14:34:05Z",
      "updated_at": "2026-07-15T14:34:06Z",
      "receipts": [
        {
          "step_id": "config",
          "action": "config.audit",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "3782ec2317c0c8ee7598634310a2804d8aae4735f557498f9d3b8fae7c45e1e5",
          "completed_at": "2026-07-15T14:34:05Z"
        },
        {
          "step_id": "services",
          "action": "services.audit",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "13dcc58bd528f3efa3e6e0fa0853a6eedc376f1f3685fbd4869cbb2b60382ee3",
          "completed_at": "2026-07-15T14:34:05Z"
        },
        {
          "step_id": "state",
          "action": "state.consistency",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "5a1c6e5246defb1b6b6b90ff734db95bece2886b408ab112ed9b8e67222d5568",
          "completed_at": "2026-07-15T14:34:06Z"
        },
        {
          "step_id": "status",
          "action": "state.query",
          "input_hash": "a15231a2142a2a9a85355a8b9cbbccffe01a9c9c2c2fd8c2bc2987cdc481564a",
          "output_hash": "8ba9f7d3cc6705af37de9e3324d1258e21ccacb5ab0b2d7b389ca08885e11187",
          "completed_at": "2026-07-15T14:34:06Z"
        },
        {
          "step_id": "substrate",
          "action": "substrate.preflight",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "a6df426290b4549a59eecaa0519ead9bcc50b7fcb25bd2185ff6047960f19ccb",
          "completed_at": "2026-07-15T14:34:06Z"
        },
        {
          "step_id": "notices",
          "action": "substrate.notices",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "38b904a1cf83df048360fb2480571b749fd98d57e11f1afdffb5a74a78166fea",
          "completed_at": "2026-07-15T14:34:06Z"
        },
        {
          "step_id": "goals",
          "action": "substrate.goals",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "cdfd4de44a28140e686159f34f7b47975954c67e1d1efcef666e985acb136ed8",
          "completed_at": "2026-07-15T14:34:06Z"
        }
      ],
      "steps": [
        {
          "id": "config",
          "action": "config.audit",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-15T14:34:05Z",
          "output": {
            "status": "ok",
            "summary": {
              "settings": 195,
              "mutable": 186,
              "read_only_or_managed": 9,
              "unclassified": 0,
              "unknown": 0,
              "invalid": 0,
              "missing_using_defaults": 0
            },
            "unclassified_keys": [],
            "unknown_keys": [],
            "invalid_values": [],
            "missing_using_defaults": []
          },
          "output_hash": "3782ec2317c0c8ee7598634310a2804d8aae4735f557498f9d3b8fae7c45e1e5",
          "completed_at": "2026-07-15T14:34:05Z"
        },
        {
          "id": "services",
          "action": "services.audit",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-15T14:34:05Z",
          "output": {
            "status": "ok",
            "summary": {
              "critical": 0,
              "high": 0,
              "medium": 0,
              "low": 0
            },
            "findings": []
          },
          "output_hash": "13dcc58bd528f3efa3e6e0fa0853a6eedc376f1f3685fbd4869cbb2b60382ee3",
          "completed_at": "2026-07-15T14:34:05Z"
        },
        {
          "id": "state",
          "action": "state.consistency",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-15T14:34:05Z",
          "output": {
            "status": "ok",
            "repo_root": "D:\\Projects\\prd-plugin",
            "summary": {
              "errors": 0,
              "warnings": 0,
              "infos": 0
            },
            "findings": []
          },
          "output_hash": "5a1c6e5246defb1b6b6b90ff734db95bece2886b408ab112ed9b8e67222d5568",
          "completed_at": "2026-07-15T14:34:06Z"
        },
        {
          "id": "status",
          "action": "state.query",
          "status": "completed",
          "resolved_input_hash": "a15231a2142a2a9a85355a8b9cbbccffe01a9c9c2c2fd8c2bc2987cdc481564a",
          "started_at": "2026-07-15T14:34:06Z",
          "output": {
            "repo_root": "D:\\Projects\\prd-plugin",
            "autonomy_level": "autonomous",
            "requests_by_status": {
              "deferred": 1,
              "implemented": 80,
              "proposed": 1,
              "rejected": 1
            },
            "active_tracking": [],
            "tracking_branches": [],
            "tracking_branch_counts": {},
            "tracking_branch_errors": [],
            "open_health": [],
            "stale_count": 0,
            "skill_usage": {
              "project-decision-policy": 1,
              "project-request-intake": 1,
              "project-test-driven-implementation": 1,
              "project-verification-before-completion": 1,
              "project-llm-wiki": 1
            },
            "wiki_backfill_pending": false,
            "version_update": null
          },
          "output_hash": "8ba9f7d3cc6705af37de9e3324d1258e21ccacb5ab0b2d7b389ca08885e11187",
          "completed_at": "2026-07-15T14:34:06Z"
        },
        {
          "id": "substrate",
          "action": "substrate.preflight",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-15T14:34:06Z",
          "output": {
            "status": "disabled",
            "services": {
              "status": "ok",
              "summary": {
                "critical": 0,
                "high": 0,
                "medium": 0,
                "low": 0
              },
              "findings": []
            },
            "policy": {
              "configured": {
                "enabled": false,
                "mode": "off",
                "capabilities": [
                  "records",
                  "graph",
                  "events"
                ],
                "contract_version": 2,
                "require_source_refs": true,
                "endpoint": "http://127.0.0.1:47124",
                "manual_url": "http://127.0.0.1:47124/utcp.json",
                "knowledge_browse_url": "http://127.0.0.1:5276",
                "auth_env": "AI_COLLAB_API_KEY",
                "timeout_seconds": 5,
                "max_result_bytes": 1048576,
                "cache_ttl_seconds": 60,
                "fallback": "local",
                "automation": {
                  "discovery_on_session_start": true,
                  "knowledge_recall": true,
                  "memory_recall": true,
                  "context_enrichment": true,
                  "notices_on_session_start": false,
                  "goals_sync": false,
                  "telemetry_on_maintenance": false,
                  "reporting_dispatch": true,
                  "judgment_dispatch": true,
                  "verification_execution": true
                }
              },
              "active": false,
              "effective_mode": "off",
              "effective_capabilities": []
            }
          },
          "output_hash": "a6df426290b4549a59eecaa0519ead9bcc50b7fcb25bd2185ff6047960f19ccb",
          "completed_at": "2026-07-15T14:34:06Z"
        },
        {
          "id": "notices",
          "action": "substrate.notices",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-15T14:34:06Z",
          "output": {
            "status": "disabled"
          },
          "output_hash": "38b904a1cf83df048360fb2480571b749fd98d57e11f1afdffb5a74a78166fea",
          "completed_at": "2026-07-15T14:34:06Z"
        },
        {
          "id": "goals",
          "action": "substrate.goals",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-15T14:34:06Z",
          "output": {
            "status": "disabled",
            "created": 0,
            "observed": 0,
            "results": []
          },
          "output_hash": "cdfd4de44a28140e686159f34f7b47975954c67e1d1efcef666e985acb136ed8",
          "completed_at": "2026-07-15T14:34:06Z"
        }
      ],
      "completed_at": "2026-07-15T14:34:06Z"
    },
    {
      "id": "WFR-033",
      "schema_version": "1.0",
      "workflow_id": "session.stop",
      "workflow_version": 1,
      "definition_hash": "0cef7bb3e28321be8f85375c154955a69310ce297e47de3f3b8dd48f77a2f07d",
      "plan_hash": "a5e1d77ac734217487fc418e29c7163f4e81178e25d171e70cd4c999d527d3e8",
      "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
      "inputs": {},
      "idempotency_key": "hook:Stop:019f6632-f338-7b13-8b21-38314fe0d3a9",
      "status": "completed",
      "attempt": 1,
      "created_at": "2026-07-15T14:35:01Z",
      "updated_at": "2026-07-15T14:35:01Z",
      "receipts": [
        {
          "step_id": "state",
          "action": "state.consistency",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "5a1c6e5246defb1b6b6b90ff734db95bece2886b408ab112ed9b8e67222d5568",
          "completed_at": "2026-07-15T14:35:01Z"
        },
        {
          "step_id": "goals",
          "action": "substrate.goals",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "cdfd4de44a28140e686159f34f7b47975954c67e1d1efcef666e985acb136ed8",
          "completed_at": "2026-07-15T14:35:01Z"
        },
        {
          "step_id": "staleness",
          "action": "staleness.audit",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "1e81cb0ffd0a4d04626920a203b38d2d23a264cd43e807a85d375d69cae8a658",
          "completed_at": "2026-07-15T14:35:01Z"
        },
        {
          "step_id": "reflections",
          "action": "reflection.list",
          "input_hash": "0172e841ab4c13b3a4061f073f9d68a716ec87a8a5d52fde41823385e0582573",
          "output_hash": "c1b6b635c0bab21120657277f14ef6f839909875f307a3745fa48aee2bd6e449",
          "completed_at": "2026-07-15T14:35:01Z"
        },
        {
          "step_id": "bundle",
          "action": "reporting.bundle",
          "input_hash": "aed8ebb688dc3c085dd978d7c4120572173c3cb87e75919e4a937dcca6ef9457",
          "output_hash": "6413b750e5adf462056ec1108a5d692cc446676e520bee65af98f64bc3e9bd9b",
          "completed_at": "2026-07-15T14:35:01Z"
        },
        {
          "step_id": "delegated",
          "action": "reporting.delegate",
          "input_hash": "669197e524ce450fa066ad7ef7d9da00168b780083ca6a5d7094bca3097e8568",
          "output_hash": "e6085059f197def80ae95add1f328418107bea5436c9bd002530043646a3a95c",
          "completed_at": "2026-07-15T14:35:01Z"
        }
      ],
      "steps": [
        {
          "id": "state",
          "action": "state.consistency",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-15T14:35:01Z",
          "output": {
            "status": "ok",
            "repo_root": "D:\\Projects\\prd-plugin",
            "summary": {
              "errors": 0,
              "warnings": 0,
              "infos": 0
            },
            "findings": []
          },
          "output_hash": "5a1c6e5246defb1b6b6b90ff734db95bece2886b408ab112ed9b8e67222d5568",
          "completed_at": "2026-07-15T14:35:01Z"
        },
        {
          "id": "goals",
          "action": "substrate.goals",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-15T14:35:01Z",
          "output": {
            "status": "disabled",
            "created": 0,
            "observed": 0,
            "results": []
          },
          "output_hash": "cdfd4de44a28140e686159f34f7b47975954c67e1d1efcef666e985acb136ed8",
          "completed_at": "2026-07-15T14:35:01Z"
        },
        {
          "id": "staleness",
          "action": "staleness.audit",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-15T14:35:01Z",
          "output": {
            "status": "ok",
            "repo_root": "D:\\Projects\\prd-plugin",
            "counts": {
              "stale": 0
            },
            "stale": []
          },
          "output_hash": "1e81cb0ffd0a4d04626920a203b38d2d23a264cd43e807a85d375d69cae8a658",
          "completed_at": "2026-07-15T14:35:01Z"
        },
        {
          "id": "reflections",
          "action": "reflection.list",
          "status": "completed",
          "resolved_input_hash": "0172e841ab4c13b3a4061f073f9d68a716ec87a8a5d52fde41823385e0582573",
          "started_at": "2026-07-15T14:35:01Z",
          "output": {
            "enabled": false,
            "on_stop": true,
            "max_questions_per_stop": 5,
            "categories": [
              {
                "id": "behaviour_quality",
                "name": "Behaviour quality",
                "enabled": true,
                "question_count": 3
              },
              {
                "id": "harness_friction",
                "name": "Harness friction",
                "enabled": true,
                "question_count": 2
              }
            ],
            "questions": [
              {
                "id": "RFQ-001",
                "text": "Based on the work you just carried out, would you classify your behaviour as good? Answer yes or no and cite observable evidence.",
                "enabled": true,
                "category_id": "behaviour_quality",
                "category_name": "Behaviour quality",
                "effective_enabled": false
              },
              {
                "id": "RFQ-002",
                "text": "If you answered no, what could you do differently to correct your behaviour?",
                "enabled": true,
                "category_id": "behaviour_quality",
                "category_name": "Behaviour quality",
                "effective_enabled": false
              },
              {
                "id": "RFQ-003",
                "text": "Would another attempt using the identified good behaviours materially improve the outcome? Answer yes or no and state the next corrective action if yes.",
                "enabled": true,
                "category_id": "behaviour_quality",
                "category_name": "Behaviour quality",
                "effective_enabled": false
              },
              {
                "id": "RFQ-004",
                "text": "What harness friction points made this work more difficult?",
                "enabled": true,
                "category_id": "harness_friction",
                "category_name": "Harness friction",
                "effective_enabled": false
              },
              {
                "id": "RFQ-005",
                "text": "What up to three changes would most improve friction in the harness?",
                "enabled": true,
                "category_id": "harness_friction",
                "category_name": "Harness friction",
                "effective_enabled": false
              }
            ]
          },
          "output_hash": "c1b6b635c0bab21120657277f14ef6f839909875f307a3745fa48aee2bd6e449",
          "completed_at": "2026-07-15T14:35:01Z"
        },
        {
          "id": "bundle",
          "action": "reporting.bundle",
          "status": "completed",
          "resolved_input_hash": "aed8ebb688dc3c085dd978d7c4120572173c3cb87e75919e4a937dcca6ef9457",
          "started_at": "2026-07-15T14:35:01Z",
          "output": {
            "contract_version": 1,
            "task": "session_summary",
            "repo": "prd-plugin",
            "policy": {
              "enabled": false,
              "executor": "ai-collab",
              "contract_version": 1,
              "profile": "fast-capable",
              "tasks": [
                "report_summary",
                "session_summary",
                "wiki_synthesis",
                "triage_draft"
              ],
              "fallback": "main",
              "require_source_refs": true,
              "max_input_tokens": 12000,
              "max_output_tokens": 1500,
              "timeout_seconds": 30
            },
            "facts": {
              "requests_by_status": {
                "deferred": 1,
                "implemented": 80,
                "proposed": 1,
                "rejected": 1
              },
              "active_requests": [
                {
                  "id": "REQ-072",
                  "status": "proposed",
                  "severity": "low",
                  "summary": "opencode run-until-done: session.idle is a non-blocking notification, so the stop guard can't force continuation on opencode (currently degrades to a printed reminder, 0.5.95). Investigate whether opencode exposes any vetoable/continuation mechanism (a different event, a permission hook, or a 'continue' API) to enforce run-until-done, or accept the reminder as the permanent ceiling. Low priority — user rarely uses opencode."
                }
              ],
              "active_tracking": [],
              "open_health": [],
              "evidence_count": 104,
              "decision_count": 9
            },
            "findings": [],
            "source_refs": [
              ".prd_plugin/config.json",
              ".prd_plugin/state/decisions.json",
              ".prd_plugin/state/evidence.json",
              ".prd_plugin/state/health.json",
              ".prd_plugin/state/requests.json",
              ".prd_plugin/state/tracking.json",
              "REQ-072"
            ],
            "constraints": {
              "max_input_tokens": 12000,
              "max_output_tokens": 1500,
              "timeout_seconds": 30,
              "require_source_refs": true,
              "no_project_state_writes": true,
              "no_secrets_or_local_session_content": true
            }
          },
          "output_hash": "6413b750e5adf462056ec1108a5d692cc446676e520bee65af98f64bc3e9bd9b",
          "completed_at": "2026-07-15T14:35:01Z"
        },
        {
          "id": "delegated",
          "action": "reporting.delegate",
          "status": "completed",
          "resolved_input_hash": "669197e524ce450fa066ad7ef7d9da00168b780083ca6a5d7094bca3097e8568",
          "started_at": "2026-07-15T14:35:01Z",
          "output": {
            "status": "fallback",
            "action": "main",
            "reason": "disabled"
          },
          "output_hash": "e6085059f197def80ae95add1f328418107bea5436c9bd002530043646a3a95c",
          "completed_at": "2026-07-15T14:35:01Z"
        }
      ],
      "completed_at": "2026-07-15T14:35:01Z"
    },
    {
      "id": "WFR-034",
      "schema_version": "1.0",
      "workflow_id": "session.start",
      "workflow_version": 1,
      "definition_hash": "d0f98da02571e6dd27fec4aed92d3c82af9db75f8b90b997bf665635c7b7f6ca",
      "plan_hash": "b5072615ca3b7e9a3bd85d50d1f069d99ef2a9816b32c03a370745ed7a205536",
      "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
      "inputs": {},
      "idempotency_key": "hook:SessionStart:019f6634-824f-7372-b3c0-7939141414c3",
      "status": "completed",
      "attempt": 1,
      "created_at": "2026-07-15T14:35:47Z",
      "updated_at": "2026-07-15T14:35:48Z",
      "receipts": [
        {
          "step_id": "config",
          "action": "config.audit",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "3782ec2317c0c8ee7598634310a2804d8aae4735f557498f9d3b8fae7c45e1e5",
          "completed_at": "2026-07-15T14:35:47Z"
        },
        {
          "step_id": "services",
          "action": "services.audit",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "13dcc58bd528f3efa3e6e0fa0853a6eedc376f1f3685fbd4869cbb2b60382ee3",
          "completed_at": "2026-07-15T14:35:48Z"
        },
        {
          "step_id": "state",
          "action": "state.consistency",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "5a1c6e5246defb1b6b6b90ff734db95bece2886b408ab112ed9b8e67222d5568",
          "completed_at": "2026-07-15T14:35:48Z"
        },
        {
          "step_id": "status",
          "action": "state.query",
          "input_hash": "a15231a2142a2a9a85355a8b9cbbccffe01a9c9c2c2fd8c2bc2987cdc481564a",
          "output_hash": "8ba9f7d3cc6705af37de9e3324d1258e21ccacb5ab0b2d7b389ca08885e11187",
          "completed_at": "2026-07-15T14:35:48Z"
        },
        {
          "step_id": "substrate",
          "action": "substrate.preflight",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "a6df426290b4549a59eecaa0519ead9bcc50b7fcb25bd2185ff6047960f19ccb",
          "completed_at": "2026-07-15T14:35:48Z"
        },
        {
          "step_id": "notices",
          "action": "substrate.notices",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "38b904a1cf83df048360fb2480571b749fd98d57e11f1afdffb5a74a78166fea",
          "completed_at": "2026-07-15T14:35:48Z"
        },
        {
          "step_id": "goals",
          "action": "substrate.goals",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "cdfd4de44a28140e686159f34f7b47975954c67e1d1efcef666e985acb136ed8",
          "completed_at": "2026-07-15T14:35:48Z"
        }
      ],
      "steps": [
        {
          "id": "config",
          "action": "config.audit",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-15T14:35:47Z",
          "output": {
            "status": "ok",
            "summary": {
              "settings": 195,
              "mutable": 186,
              "read_only_or_managed": 9,
              "unclassified": 0,
              "unknown": 0,
              "invalid": 0,
              "missing_using_defaults": 0
            },
            "unclassified_keys": [],
            "unknown_keys": [],
            "invalid_values": [],
            "missing_using_defaults": []
          },
          "output_hash": "3782ec2317c0c8ee7598634310a2804d8aae4735f557498f9d3b8fae7c45e1e5",
          "completed_at": "2026-07-15T14:35:47Z"
        },
        {
          "id": "services",
          "action": "services.audit",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-15T14:35:47Z",
          "output": {
            "status": "ok",
            "summary": {
              "critical": 0,
              "high": 0,
              "medium": 0,
              "low": 0
            },
            "findings": []
          },
          "output_hash": "13dcc58bd528f3efa3e6e0fa0853a6eedc376f1f3685fbd4869cbb2b60382ee3",
          "completed_at": "2026-07-15T14:35:48Z"
        },
        {
          "id": "state",
          "action": "state.consistency",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-15T14:35:48Z",
          "output": {
            "status": "ok",
            "repo_root": "D:\\Projects\\prd-plugin",
            "summary": {
              "errors": 0,
              "warnings": 0,
              "infos": 0
            },
            "findings": []
          },
          "output_hash": "5a1c6e5246defb1b6b6b90ff734db95bece2886b408ab112ed9b8e67222d5568",
          "completed_at": "2026-07-15T14:35:48Z"
        },
        {
          "id": "status",
          "action": "state.query",
          "status": "completed",
          "resolved_input_hash": "a15231a2142a2a9a85355a8b9cbbccffe01a9c9c2c2fd8c2bc2987cdc481564a",
          "started_at": "2026-07-15T14:35:48Z",
          "output": {
            "repo_root": "D:\\Projects\\prd-plugin",
            "autonomy_level": "autonomous",
            "requests_by_status": {
              "deferred": 1,
              "implemented": 80,
              "proposed": 1,
              "rejected": 1
            },
            "active_tracking": [],
            "tracking_branches": [],
            "tracking_branch_counts": {},
            "tracking_branch_errors": [],
            "open_health": [],
            "stale_count": 0,
            "skill_usage": {
              "project-decision-policy": 1,
              "project-request-intake": 1,
              "project-test-driven-implementation": 1,
              "project-verification-before-completion": 1,
              "project-llm-wiki": 1
            },
            "wiki_backfill_pending": false,
            "version_update": null
          },
          "output_hash": "8ba9f7d3cc6705af37de9e3324d1258e21ccacb5ab0b2d7b389ca08885e11187",
          "completed_at": "2026-07-15T14:35:48Z"
        },
        {
          "id": "substrate",
          "action": "substrate.preflight",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-15T14:35:48Z",
          "output": {
            "status": "disabled",
            "services": {
              "status": "ok",
              "summary": {
                "critical": 0,
                "high": 0,
                "medium": 0,
                "low": 0
              },
              "findings": []
            },
            "policy": {
              "configured": {
                "enabled": false,
                "mode": "off",
                "capabilities": [
                  "records",
                  "graph",
                  "events"
                ],
                "contract_version": 2,
                "require_source_refs": true,
                "endpoint": "http://127.0.0.1:47124",
                "manual_url": "http://127.0.0.1:47124/utcp.json",
                "knowledge_browse_url": "http://127.0.0.1:5276",
                "auth_env": "AI_COLLAB_API_KEY",
                "timeout_seconds": 5,
                "max_result_bytes": 1048576,
                "cache_ttl_seconds": 60,
                "fallback": "local",
                "automation": {
                  "discovery_on_session_start": true,
                  "knowledge_recall": true,
                  "memory_recall": true,
                  "context_enrichment": true,
                  "notices_on_session_start": false,
                  "goals_sync": false,
                  "telemetry_on_maintenance": false,
                  "reporting_dispatch": true,
                  "judgment_dispatch": true,
                  "verification_execution": true
                }
              },
              "active": false,
              "effective_mode": "off",
              "effective_capabilities": []
            }
          },
          "output_hash": "a6df426290b4549a59eecaa0519ead9bcc50b7fcb25bd2185ff6047960f19ccb",
          "completed_at": "2026-07-15T14:35:48Z"
        },
        {
          "id": "notices",
          "action": "substrate.notices",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-15T14:35:48Z",
          "output": {
            "status": "disabled"
          },
          "output_hash": "38b904a1cf83df048360fb2480571b749fd98d57e11f1afdffb5a74a78166fea",
          "completed_at": "2026-07-15T14:35:48Z"
        },
        {
          "id": "goals",
          "action": "substrate.goals",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-15T14:35:48Z",
          "output": {
            "status": "disabled",
            "created": 0,
            "observed": 0,
            "results": []
          },
          "output_hash": "cdfd4de44a28140e686159f34f7b47975954c67e1d1efcef666e985acb136ed8",
          "completed_at": "2026-07-15T14:35:48Z"
        }
      ],
      "completed_at": "2026-07-15T14:35:48Z"
    },
    {
      "id": "WFR-035",
      "schema_version": "1.0",
      "workflow_id": "session.stop",
      "workflow_version": 1,
      "definition_hash": "0cef7bb3e28321be8f85375c154955a69310ce297e47de3f3b8dd48f77a2f07d",
      "plan_hash": "a5e1d77ac734217487fc418e29c7163f4e81178e25d171e70cd4c999d527d3e8",
      "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
      "inputs": {},
      "idempotency_key": "hook:Stop:019f6634-824f-7372-b3c0-7939141414c3",
      "status": "completed",
      "attempt": 1,
      "created_at": "2026-07-15T14:35:54Z",
      "updated_at": "2026-07-15T14:35:54Z",
      "receipts": [
        {
          "step_id": "state",
          "action": "state.consistency",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "5a1c6e5246defb1b6b6b90ff734db95bece2886b408ab112ed9b8e67222d5568",
          "completed_at": "2026-07-15T14:35:54Z"
        },
        {
          "step_id": "goals",
          "action": "substrate.goals",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "cdfd4de44a28140e686159f34f7b47975954c67e1d1efcef666e985acb136ed8",
          "completed_at": "2026-07-15T14:35:54Z"
        },
        {
          "step_id": "staleness",
          "action": "staleness.audit",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "1e81cb0ffd0a4d04626920a203b38d2d23a264cd43e807a85d375d69cae8a658",
          "completed_at": "2026-07-15T14:35:54Z"
        },
        {
          "step_id": "reflections",
          "action": "reflection.list",
          "input_hash": "0172e841ab4c13b3a4061f073f9d68a716ec87a8a5d52fde41823385e0582573",
          "output_hash": "c1b6b635c0bab21120657277f14ef6f839909875f307a3745fa48aee2bd6e449",
          "completed_at": "2026-07-15T14:35:54Z"
        },
        {
          "step_id": "bundle",
          "action": "reporting.bundle",
          "input_hash": "aed8ebb688dc3c085dd978d7c4120572173c3cb87e75919e4a937dcca6ef9457",
          "output_hash": "6413b750e5adf462056ec1108a5d692cc446676e520bee65af98f64bc3e9bd9b",
          "completed_at": "2026-07-15T14:35:54Z"
        },
        {
          "step_id": "delegated",
          "action": "reporting.delegate",
          "input_hash": "669197e524ce450fa066ad7ef7d9da00168b780083ca6a5d7094bca3097e8568",
          "output_hash": "e6085059f197def80ae95add1f328418107bea5436c9bd002530043646a3a95c",
          "completed_at": "2026-07-15T14:35:54Z"
        }
      ],
      "steps": [
        {
          "id": "state",
          "action": "state.consistency",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-15T14:35:54Z",
          "output": {
            "status": "ok",
            "repo_root": "D:\\Projects\\prd-plugin",
            "summary": {
              "errors": 0,
              "warnings": 0,
              "infos": 0
            },
            "findings": []
          },
          "output_hash": "5a1c6e5246defb1b6b6b90ff734db95bece2886b408ab112ed9b8e67222d5568",
          "completed_at": "2026-07-15T14:35:54Z"
        },
        {
          "id": "goals",
          "action": "substrate.goals",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-15T14:35:54Z",
          "output": {
            "status": "disabled",
            "created": 0,
            "observed": 0,
            "results": []
          },
          "output_hash": "cdfd4de44a28140e686159f34f7b47975954c67e1d1efcef666e985acb136ed8",
          "completed_at": "2026-07-15T14:35:54Z"
        },
        {
          "id": "staleness",
          "action": "staleness.audit",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-15T14:35:54Z",
          "output": {
            "status": "ok",
            "repo_root": "D:\\Projects\\prd-plugin",
            "counts": {
              "stale": 0
            },
            "stale": []
          },
          "output_hash": "1e81cb0ffd0a4d04626920a203b38d2d23a264cd43e807a85d375d69cae8a658",
          "completed_at": "2026-07-15T14:35:54Z"
        },
        {
          "id": "reflections",
          "action": "reflection.list",
          "status": "completed",
          "resolved_input_hash": "0172e841ab4c13b3a4061f073f9d68a716ec87a8a5d52fde41823385e0582573",
          "started_at": "2026-07-15T14:35:54Z",
          "output": {
            "enabled": false,
            "on_stop": true,
            "max_questions_per_stop": 5,
            "categories": [
              {
                "id": "behaviour_quality",
                "name": "Behaviour quality",
                "enabled": true,
                "question_count": 3
              },
              {
                "id": "harness_friction",
                "name": "Harness friction",
                "enabled": true,
                "question_count": 2
              }
            ],
            "questions": [
              {
                "id": "RFQ-001",
                "text": "Based on the work you just carried out, would you classify your behaviour as good? Answer yes or no and cite observable evidence.",
                "enabled": true,
                "category_id": "behaviour_quality",
                "category_name": "Behaviour quality",
                "effective_enabled": false
              },
              {
                "id": "RFQ-002",
                "text": "If you answered no, what could you do differently to correct your behaviour?",
                "enabled": true,
                "category_id": "behaviour_quality",
                "category_name": "Behaviour quality",
                "effective_enabled": false
              },
              {
                "id": "RFQ-003",
                "text": "Would another attempt using the identified good behaviours materially improve the outcome? Answer yes or no and state the next corrective action if yes.",
                "enabled": true,
                "category_id": "behaviour_quality",
                "category_name": "Behaviour quality",
                "effective_enabled": false
              },
              {
                "id": "RFQ-004",
                "text": "What harness friction points made this work more difficult?",
                "enabled": true,
                "category_id": "harness_friction",
                "category_name": "Harness friction",
                "effective_enabled": false
              },
              {
                "id": "RFQ-005",
                "text": "What up to three changes would most improve friction in the harness?",
                "enabled": true,
                "category_id": "harness_friction",
                "category_name": "Harness friction",
                "effective_enabled": false
              }
            ]
          },
          "output_hash": "c1b6b635c0bab21120657277f14ef6f839909875f307a3745fa48aee2bd6e449",
          "completed_at": "2026-07-15T14:35:54Z"
        },
        {
          "id": "bundle",
          "action": "reporting.bundle",
          "status": "completed",
          "resolved_input_hash": "aed8ebb688dc3c085dd978d7c4120572173c3cb87e75919e4a937dcca6ef9457",
          "started_at": "2026-07-15T14:35:54Z",
          "output": {
            "contract_version": 1,
            "task": "session_summary",
            "repo": "prd-plugin",
            "policy": {
              "enabled": false,
              "executor": "ai-collab",
              "contract_version": 1,
              "profile": "fast-capable",
              "tasks": [
                "report_summary",
                "session_summary",
                "wiki_synthesis",
                "triage_draft"
              ],
              "fallback": "main",
              "require_source_refs": true,
              "max_input_tokens": 12000,
              "max_output_tokens": 1500,
              "timeout_seconds": 30
            },
            "facts": {
              "requests_by_status": {
                "deferred": 1,
                "implemented": 80,
                "proposed": 1,
                "rejected": 1
              },
              "active_requests": [
                {
                  "id": "REQ-072",
                  "status": "proposed",
                  "severity": "low",
                  "summary": "opencode run-until-done: session.idle is a non-blocking notification, so the stop guard can't force continuation on opencode (currently degrades to a printed reminder, 0.5.95). Investigate whether opencode exposes any vetoable/continuation mechanism (a different event, a permission hook, or a 'continue' API) to enforce run-until-done, or accept the reminder as the permanent ceiling. Low priority — user rarely uses opencode."
                }
              ],
              "active_tracking": [],
              "open_health": [],
              "evidence_count": 104,
              "decision_count": 9
            },
            "findings": [],
            "source_refs": [
              ".prd_plugin/config.json",
              ".prd_plugin/state/decisions.json",
              ".prd_plugin/state/evidence.json",
              ".prd_plugin/state/health.json",
              ".prd_plugin/state/requests.json",
              ".prd_plugin/state/tracking.json",
              "REQ-072"
            ],
            "constraints": {
              "max_input_tokens": 12000,
              "max_output_tokens": 1500,
              "timeout_seconds": 30,
              "require_source_refs": true,
              "no_project_state_writes": true,
              "no_secrets_or_local_session_content": true
            }
          },
          "output_hash": "6413b750e5adf462056ec1108a5d692cc446676e520bee65af98f64bc3e9bd9b",
          "completed_at": "2026-07-15T14:35:54Z"
        },
        {
          "id": "delegated",
          "action": "reporting.delegate",
          "status": "completed",
          "resolved_input_hash": "669197e524ce450fa066ad7ef7d9da00168b780083ca6a5d7094bca3097e8568",
          "started_at": "2026-07-15T14:35:54Z",
          "output": {
            "status": "fallback",
            "action": "main",
            "reason": "disabled"
          },
          "output_hash": "e6085059f197def80ae95add1f328418107bea5436c9bd002530043646a3a95c",
          "completed_at": "2026-07-15T14:35:54Z"
        }
      ],
      "completed_at": "2026-07-15T14:35:54Z"
    },
    {
      "id": "WFR-036",
      "schema_version": "1.0",
      "workflow_id": "session.start",
      "workflow_version": 1,
      "definition_hash": "d0f98da02571e6dd27fec4aed92d3c82af9db75f8b90b997bf665635c7b7f6ca",
      "plan_hash": "b5072615ca3b7e9a3bd85d50d1f069d99ef2a9816b32c03a370745ed7a205536",
      "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
      "inputs": {},
      "idempotency_key": "hook:SessionStart:019f6634-c79d-7092-9828-405ef7918267",
      "status": "completed",
      "attempt": 1,
      "created_at": "2026-07-15T14:36:04Z",
      "updated_at": "2026-07-15T14:36:05Z",
      "receipts": [
        {
          "step_id": "config",
          "action": "config.audit",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "3782ec2317c0c8ee7598634310a2804d8aae4735f557498f9d3b8fae7c45e1e5",
          "completed_at": "2026-07-15T14:36:04Z"
        },
        {
          "step_id": "services",
          "action": "services.audit",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "13dcc58bd528f3efa3e6e0fa0853a6eedc376f1f3685fbd4869cbb2b60382ee3",
          "completed_at": "2026-07-15T14:36:04Z"
        },
        {
          "step_id": "state",
          "action": "state.consistency",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "5a1c6e5246defb1b6b6b90ff734db95bece2886b408ab112ed9b8e67222d5568",
          "completed_at": "2026-07-15T14:36:05Z"
        },
        {
          "step_id": "status",
          "action": "state.query",
          "input_hash": "a15231a2142a2a9a85355a8b9cbbccffe01a9c9c2c2fd8c2bc2987cdc481564a",
          "output_hash": "8ba9f7d3cc6705af37de9e3324d1258e21ccacb5ab0b2d7b389ca08885e11187",
          "completed_at": "2026-07-15T14:36:05Z"
        },
        {
          "step_id": "substrate",
          "action": "substrate.preflight",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "a6df426290b4549a59eecaa0519ead9bcc50b7fcb25bd2185ff6047960f19ccb",
          "completed_at": "2026-07-15T14:36:05Z"
        },
        {
          "step_id": "notices",
          "action": "substrate.notices",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "38b904a1cf83df048360fb2480571b749fd98d57e11f1afdffb5a74a78166fea",
          "completed_at": "2026-07-15T14:36:05Z"
        },
        {
          "step_id": "goals",
          "action": "substrate.goals",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "cdfd4de44a28140e686159f34f7b47975954c67e1d1efcef666e985acb136ed8",
          "completed_at": "2026-07-15T14:36:05Z"
        }
      ],
      "steps": [
        {
          "id": "config",
          "action": "config.audit",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-15T14:36:04Z",
          "output": {
            "status": "ok",
            "summary": {
              "settings": 195,
              "mutable": 186,
              "read_only_or_managed": 9,
              "unclassified": 0,
              "unknown": 0,
              "invalid": 0,
              "missing_using_defaults": 0
            },
            "unclassified_keys": [],
            "unknown_keys": [],
            "invalid_values": [],
            "missing_using_defaults": []
          },
          "output_hash": "3782ec2317c0c8ee7598634310a2804d8aae4735f557498f9d3b8fae7c45e1e5",
          "completed_at": "2026-07-15T14:36:04Z"
        },
        {
          "id": "services",
          "action": "services.audit",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-15T14:36:04Z",
          "output": {
            "status": "ok",
            "summary": {
              "critical": 0,
              "high": 0,
              "medium": 0,
              "low": 0
            },
            "findings": []
          },
          "output_hash": "13dcc58bd528f3efa3e6e0fa0853a6eedc376f1f3685fbd4869cbb2b60382ee3",
          "completed_at": "2026-07-15T14:36:04Z"
        },
        {
          "id": "state",
          "action": "state.consistency",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-15T14:36:04Z",
          "output": {
            "status": "ok",
            "repo_root": "D:\\Projects\\prd-plugin",
            "summary": {
              "errors": 0,
              "warnings": 0,
              "infos": 0
            },
            "findings": []
          },
          "output_hash": "5a1c6e5246defb1b6b6b90ff734db95bece2886b408ab112ed9b8e67222d5568",
          "completed_at": "2026-07-15T14:36:05Z"
        },
        {
          "id": "status",
          "action": "state.query",
          "status": "completed",
          "resolved_input_hash": "a15231a2142a2a9a85355a8b9cbbccffe01a9c9c2c2fd8c2bc2987cdc481564a",
          "started_at": "2026-07-15T14:36:05Z",
          "output": {
            "repo_root": "D:\\Projects\\prd-plugin",
            "autonomy_level": "autonomous",
            "requests_by_status": {
              "deferred": 1,
              "implemented": 80,
              "proposed": 1,
              "rejected": 1
            },
            "active_tracking": [],
            "tracking_branches": [],
            "tracking_branch_counts": {},
            "tracking_branch_errors": [],
            "open_health": [],
            "stale_count": 0,
            "skill_usage": {
              "project-decision-policy": 1,
              "project-request-intake": 1,
              "project-test-driven-implementation": 1,
              "project-verification-before-completion": 1,
              "project-llm-wiki": 1
            },
            "wiki_backfill_pending": false,
            "version_update": null
          },
          "output_hash": "8ba9f7d3cc6705af37de9e3324d1258e21ccacb5ab0b2d7b389ca08885e11187",
          "completed_at": "2026-07-15T14:36:05Z"
        },
        {
          "id": "substrate",
          "action": "substrate.preflight",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-15T14:36:05Z",
          "output": {
            "status": "disabled",
            "services": {
              "status": "ok",
              "summary": {
                "critical": 0,
                "high": 0,
                "medium": 0,
                "low": 0
              },
              "findings": []
            },
            "policy": {
              "configured": {
                "enabled": false,
                "mode": "off",
                "capabilities": [
                  "records",
                  "graph",
                  "events"
                ],
                "contract_version": 2,
                "require_source_refs": true,
                "endpoint": "http://127.0.0.1:47124",
                "manual_url": "http://127.0.0.1:47124/utcp.json",
                "knowledge_browse_url": "http://127.0.0.1:5276",
                "auth_env": "AI_COLLAB_API_KEY",
                "timeout_seconds": 5,
                "max_result_bytes": 1048576,
                "cache_ttl_seconds": 60,
                "fallback": "local",
                "automation": {
                  "discovery_on_session_start": true,
                  "knowledge_recall": true,
                  "memory_recall": true,
                  "context_enrichment": true,
                  "notices_on_session_start": false,
                  "goals_sync": false,
                  "telemetry_on_maintenance": false,
                  "reporting_dispatch": true,
                  "judgment_dispatch": true,
                  "verification_execution": true
                }
              },
              "active": false,
              "effective_mode": "off",
              "effective_capabilities": []
            }
          },
          "output_hash": "a6df426290b4549a59eecaa0519ead9bcc50b7fcb25bd2185ff6047960f19ccb",
          "completed_at": "2026-07-15T14:36:05Z"
        },
        {
          "id": "notices",
          "action": "substrate.notices",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-15T14:36:05Z",
          "output": {
            "status": "disabled"
          },
          "output_hash": "38b904a1cf83df048360fb2480571b749fd98d57e11f1afdffb5a74a78166fea",
          "completed_at": "2026-07-15T14:36:05Z"
        },
        {
          "id": "goals",
          "action": "substrate.goals",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-15T14:36:05Z",
          "output": {
            "status": "disabled",
            "created": 0,
            "observed": 0,
            "results": []
          },
          "output_hash": "cdfd4de44a28140e686159f34f7b47975954c67e1d1efcef666e985acb136ed8",
          "completed_at": "2026-07-15T14:36:05Z"
        }
      ],
      "completed_at": "2026-07-15T14:36:05Z"
    },
    {
      "id": "WFR-037",
      "schema_version": "1.0",
      "workflow_id": "session.stop",
      "workflow_version": 1,
      "definition_hash": "0cef7bb3e28321be8f85375c154955a69310ce297e47de3f3b8dd48f77a2f07d",
      "plan_hash": "a5e1d77ac734217487fc418e29c7163f4e81178e25d171e70cd4c999d527d3e8",
      "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
      "inputs": {},
      "idempotency_key": "hook:Stop:019f6634-c79d-7092-9828-405ef7918267",
      "status": "completed",
      "attempt": 1,
      "created_at": "2026-07-15T14:36:08Z",
      "updated_at": "2026-07-15T14:36:09Z",
      "receipts": [
        {
          "step_id": "state",
          "action": "state.consistency",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "5a1c6e5246defb1b6b6b90ff734db95bece2886b408ab112ed9b8e67222d5568",
          "completed_at": "2026-07-15T14:36:09Z"
        },
        {
          "step_id": "goals",
          "action": "substrate.goals",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "cdfd4de44a28140e686159f34f7b47975954c67e1d1efcef666e985acb136ed8",
          "completed_at": "2026-07-15T14:36:09Z"
        },
        {
          "step_id": "staleness",
          "action": "staleness.audit",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "1e81cb0ffd0a4d04626920a203b38d2d23a264cd43e807a85d375d69cae8a658",
          "completed_at": "2026-07-15T14:36:09Z"
        },
        {
          "step_id": "reflections",
          "action": "reflection.list",
          "input_hash": "0172e841ab4c13b3a4061f073f9d68a716ec87a8a5d52fde41823385e0582573",
          "output_hash": "c1b6b635c0bab21120657277f14ef6f839909875f307a3745fa48aee2bd6e449",
          "completed_at": "2026-07-15T14:36:09Z"
        },
        {
          "step_id": "bundle",
          "action": "reporting.bundle",
          "input_hash": "aed8ebb688dc3c085dd978d7c4120572173c3cb87e75919e4a937dcca6ef9457",
          "output_hash": "6413b750e5adf462056ec1108a5d692cc446676e520bee65af98f64bc3e9bd9b",
          "completed_at": "2026-07-15T14:36:09Z"
        },
        {
          "step_id": "delegated",
          "action": "reporting.delegate",
          "input_hash": "669197e524ce450fa066ad7ef7d9da00168b780083ca6a5d7094bca3097e8568",
          "output_hash": "e6085059f197def80ae95add1f328418107bea5436c9bd002530043646a3a95c",
          "completed_at": "2026-07-15T14:36:09Z"
        }
      ],
      "steps": [
        {
          "id": "state",
          "action": "state.consistency",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-15T14:36:08Z",
          "output": {
            "status": "ok",
            "repo_root": "D:\\Projects\\prd-plugin",
            "summary": {
              "errors": 0,
              "warnings": 0,
              "infos": 0
            },
            "findings": []
          },
          "output_hash": "5a1c6e5246defb1b6b6b90ff734db95bece2886b408ab112ed9b8e67222d5568",
          "completed_at": "2026-07-15T14:36:09Z"
        },
        {
          "id": "goals",
          "action": "substrate.goals",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-15T14:36:09Z",
          "output": {
            "status": "disabled",
            "created": 0,
            "observed": 0,
            "results": []
          },
          "output_hash": "cdfd4de44a28140e686159f34f7b47975954c67e1d1efcef666e985acb136ed8",
          "completed_at": "2026-07-15T14:36:09Z"
        },
        {
          "id": "staleness",
          "action": "staleness.audit",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-15T14:36:09Z",
          "output": {
            "status": "ok",
            "repo_root": "D:\\Projects\\prd-plugin",
            "counts": {
              "stale": 0
            },
            "stale": []
          },
          "output_hash": "1e81cb0ffd0a4d04626920a203b38d2d23a264cd43e807a85d375d69cae8a658",
          "completed_at": "2026-07-15T14:36:09Z"
        },
        {
          "id": "reflections",
          "action": "reflection.list",
          "status": "completed",
          "resolved_input_hash": "0172e841ab4c13b3a4061f073f9d68a716ec87a8a5d52fde41823385e0582573",
          "started_at": "2026-07-15T14:36:09Z",
          "output": {
            "enabled": false,
            "on_stop": true,
            "max_questions_per_stop": 5,
            "categories": [
              {
                "id": "behaviour_quality",
                "name": "Behaviour quality",
                "enabled": true,
                "question_count": 3
              },
              {
                "id": "harness_friction",
                "name": "Harness friction",
                "enabled": true,
                "question_count": 2
              }
            ],
            "questions": [
              {
                "id": "RFQ-001",
                "text": "Based on the work you just carried out, would you classify your behaviour as good? Answer yes or no and cite observable evidence.",
                "enabled": true,
                "category_id": "behaviour_quality",
                "category_name": "Behaviour quality",
                "effective_enabled": false
              },
              {
                "id": "RFQ-002",
                "text": "If you answered no, what could you do differently to correct your behaviour?",
                "enabled": true,
                "category_id": "behaviour_quality",
                "category_name": "Behaviour quality",
                "effective_enabled": false
              },
              {
                "id": "RFQ-003",
                "text": "Would another attempt using the identified good behaviours materially improve the outcome? Answer yes or no and state the next corrective action if yes.",
                "enabled": true,
                "category_id": "behaviour_quality",
                "category_name": "Behaviour quality",
                "effective_enabled": false
              },
              {
                "id": "RFQ-004",
                "text": "What harness friction points made this work more difficult?",
                "enabled": true,
                "category_id": "harness_friction",
                "category_name": "Harness friction",
                "effective_enabled": false
              },
              {
                "id": "RFQ-005",
                "text": "What up to three changes would most improve friction in the harness?",
                "enabled": true,
                "category_id": "harness_friction",
                "category_name": "Harness friction",
                "effective_enabled": false
              }
            ]
          },
          "output_hash": "c1b6b635c0bab21120657277f14ef6f839909875f307a3745fa48aee2bd6e449",
          "completed_at": "2026-07-15T14:36:09Z"
        },
        {
          "id": "bundle",
          "action": "reporting.bundle",
          "status": "completed",
          "resolved_input_hash": "aed8ebb688dc3c085dd978d7c4120572173c3cb87e75919e4a937dcca6ef9457",
          "started_at": "2026-07-15T14:36:09Z",
          "output": {
            "contract_version": 1,
            "task": "session_summary",
            "repo": "prd-plugin",
            "policy": {
              "enabled": false,
              "executor": "ai-collab",
              "contract_version": 1,
              "profile": "fast-capable",
              "tasks": [
                "report_summary",
                "session_summary",
                "wiki_synthesis",
                "triage_draft"
              ],
              "fallback": "main",
              "require_source_refs": true,
              "max_input_tokens": 12000,
              "max_output_tokens": 1500,
              "timeout_seconds": 30
            },
            "facts": {
              "requests_by_status": {
                "deferred": 1,
                "implemented": 80,
                "proposed": 1,
                "rejected": 1
              },
              "active_requests": [
                {
                  "id": "REQ-072",
                  "status": "proposed",
                  "severity": "low",
                  "summary": "opencode run-until-done: session.idle is a non-blocking notification, so the stop guard can't force continuation on opencode (currently degrades to a printed reminder, 0.5.95). Investigate whether opencode exposes any vetoable/continuation mechanism (a different event, a permission hook, or a 'continue' API) to enforce run-until-done, or accept the reminder as the permanent ceiling. Low priority — user rarely uses opencode."
                }
              ],
              "active_tracking": [],
              "open_health": [],
              "evidence_count": 104,
              "decision_count": 9
            },
            "findings": [],
            "source_refs": [
              ".prd_plugin/config.json",
              ".prd_plugin/state/decisions.json",
              ".prd_plugin/state/evidence.json",
              ".prd_plugin/state/health.json",
              ".prd_plugin/state/requests.json",
              ".prd_plugin/state/tracking.json",
              "REQ-072"
            ],
            "constraints": {
              "max_input_tokens": 12000,
              "max_output_tokens": 1500,
              "timeout_seconds": 30,
              "require_source_refs": true,
              "no_project_state_writes": true,
              "no_secrets_or_local_session_content": true
            }
          },
          "output_hash": "6413b750e5adf462056ec1108a5d692cc446676e520bee65af98f64bc3e9bd9b",
          "completed_at": "2026-07-15T14:36:09Z"
        },
        {
          "id": "delegated",
          "action": "reporting.delegate",
          "status": "completed",
          "resolved_input_hash": "669197e524ce450fa066ad7ef7d9da00168b780083ca6a5d7094bca3097e8568",
          "started_at": "2026-07-15T14:36:09Z",
          "output": {
            "status": "fallback",
            "action": "main",
            "reason": "disabled"
          },
          "output_hash": "e6085059f197def80ae95add1f328418107bea5436c9bd002530043646a3a95c",
          "completed_at": "2026-07-15T14:36:09Z"
        }
      ],
      "completed_at": "2026-07-15T14:36:09Z"
    },
    {
      "id": "WFR-038",
      "schema_version": "1.0",
      "workflow_id": "session.start",
      "workflow_version": 1,
      "definition_hash": "d0f98da02571e6dd27fec4aed92d3c82af9db75f8b90b997bf665635c7b7f6ca",
      "plan_hash": "b5072615ca3b7e9a3bd85d50d1f069d99ef2a9816b32c03a370745ed7a205536",
      "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
      "inputs": {},
      "idempotency_key": "hook:SessionStart:019f6635-36b7-7be2-8575-aefb905bca9c",
      "status": "completed",
      "attempt": 1,
      "created_at": "2026-07-15T14:36:38Z",
      "updated_at": "2026-07-15T14:36:39Z",
      "receipts": [
        {
          "step_id": "config",
          "action": "config.audit",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "3782ec2317c0c8ee7598634310a2804d8aae4735f557498f9d3b8fae7c45e1e5",
          "completed_at": "2026-07-15T14:36:38Z"
        },
        {
          "step_id": "services",
          "action": "services.audit",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "13dcc58bd528f3efa3e6e0fa0853a6eedc376f1f3685fbd4869cbb2b60382ee3",
          "completed_at": "2026-07-15T14:36:38Z"
        },
        {
          "step_id": "state",
          "action": "state.consistency",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "5a1c6e5246defb1b6b6b90ff734db95bece2886b408ab112ed9b8e67222d5568",
          "completed_at": "2026-07-15T14:36:39Z"
        },
        {
          "step_id": "status",
          "action": "state.query",
          "input_hash": "a15231a2142a2a9a85355a8b9cbbccffe01a9c9c2c2fd8c2bc2987cdc481564a",
          "output_hash": "8ba9f7d3cc6705af37de9e3324d1258e21ccacb5ab0b2d7b389ca08885e11187",
          "completed_at": "2026-07-15T14:36:39Z"
        },
        {
          "step_id": "substrate",
          "action": "substrate.preflight",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "a6df426290b4549a59eecaa0519ead9bcc50b7fcb25bd2185ff6047960f19ccb",
          "completed_at": "2026-07-15T14:36:39Z"
        },
        {
          "step_id": "notices",
          "action": "substrate.notices",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "38b904a1cf83df048360fb2480571b749fd98d57e11f1afdffb5a74a78166fea",
          "completed_at": "2026-07-15T14:36:39Z"
        },
        {
          "step_id": "goals",
          "action": "substrate.goals",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "cdfd4de44a28140e686159f34f7b47975954c67e1d1efcef666e985acb136ed8",
          "completed_at": "2026-07-15T14:36:39Z"
        }
      ],
      "steps": [
        {
          "id": "config",
          "action": "config.audit",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-15T14:36:38Z",
          "output": {
            "status": "ok",
            "summary": {
              "settings": 195,
              "mutable": 186,
              "read_only_or_managed": 9,
              "unclassified": 0,
              "unknown": 0,
              "invalid": 0,
              "missing_using_defaults": 0
            },
            "unclassified_keys": [],
            "unknown_keys": [],
            "invalid_values": [],
            "missing_using_defaults": []
          },
          "output_hash": "3782ec2317c0c8ee7598634310a2804d8aae4735f557498f9d3b8fae7c45e1e5",
          "completed_at": "2026-07-15T14:36:38Z"
        },
        {
          "id": "services",
          "action": "services.audit",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-15T14:36:38Z",
          "output": {
            "status": "ok",
            "summary": {
              "critical": 0,
              "high": 0,
              "medium": 0,
              "low": 0
            },
            "findings": []
          },
          "output_hash": "13dcc58bd528f3efa3e6e0fa0853a6eedc376f1f3685fbd4869cbb2b60382ee3",
          "completed_at": "2026-07-15T14:36:38Z"
        },
        {
          "id": "state",
          "action": "state.consistency",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-15T14:36:38Z",
          "output": {
            "status": "ok",
            "repo_root": "D:\\Projects\\prd-plugin",
            "summary": {
              "errors": 0,
              "warnings": 0,
              "infos": 0
            },
            "findings": []
          },
          "output_hash": "5a1c6e5246defb1b6b6b90ff734db95bece2886b408ab112ed9b8e67222d5568",
          "completed_at": "2026-07-15T14:36:39Z"
        },
        {
          "id": "status",
          "action": "state.query",
          "status": "completed",
          "resolved_input_hash": "a15231a2142a2a9a85355a8b9cbbccffe01a9c9c2c2fd8c2bc2987cdc481564a",
          "started_at": "2026-07-15T14:36:39Z",
          "output": {
            "repo_root": "D:\\Projects\\prd-plugin",
            "autonomy_level": "autonomous",
            "requests_by_status": {
              "deferred": 1,
              "implemented": 80,
              "proposed": 1,
              "rejected": 1
            },
            "active_tracking": [],
            "tracking_branches": [],
            "tracking_branch_counts": {},
            "tracking_branch_errors": [],
            "open_health": [],
            "stale_count": 0,
            "skill_usage": {
              "project-decision-policy": 1,
              "project-request-intake": 1,
              "project-test-driven-implementation": 1,
              "project-verification-before-completion": 1,
              "project-llm-wiki": 1
            },
            "wiki_backfill_pending": false,
            "version_update": null
          },
          "output_hash": "8ba9f7d3cc6705af37de9e3324d1258e21ccacb5ab0b2d7b389ca08885e11187",
          "completed_at": "2026-07-15T14:36:39Z"
        },
        {
          "id": "substrate",
          "action": "substrate.preflight",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-15T14:36:39Z",
          "output": {
            "status": "disabled",
            "services": {
              "status": "ok",
              "summary": {
                "critical": 0,
                "high": 0,
                "medium": 0,
                "low": 0
              },
              "findings": []
            },
            "policy": {
              "configured": {
                "enabled": false,
                "mode": "off",
                "capabilities": [
                  "records",
                  "graph",
                  "events"
                ],
                "contract_version": 2,
                "require_source_refs": true,
                "endpoint": "http://127.0.0.1:47124",
                "manual_url": "http://127.0.0.1:47124/utcp.json",
                "knowledge_browse_url": "http://127.0.0.1:5276",
                "auth_env": "AI_COLLAB_API_KEY",
                "timeout_seconds": 5,
                "max_result_bytes": 1048576,
                "cache_ttl_seconds": 60,
                "fallback": "local",
                "automation": {
                  "discovery_on_session_start": true,
                  "knowledge_recall": true,
                  "memory_recall": true,
                  "context_enrichment": true,
                  "notices_on_session_start": false,
                  "goals_sync": false,
                  "telemetry_on_maintenance": false,
                  "reporting_dispatch": true,
                  "judgment_dispatch": true,
                  "verification_execution": true
                }
              },
              "active": false,
              "effective_mode": "off",
              "effective_capabilities": []
            }
          },
          "output_hash": "a6df426290b4549a59eecaa0519ead9bcc50b7fcb25bd2185ff6047960f19ccb",
          "completed_at": "2026-07-15T14:36:39Z"
        },
        {
          "id": "notices",
          "action": "substrate.notices",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-15T14:36:39Z",
          "output": {
            "status": "disabled"
          },
          "output_hash": "38b904a1cf83df048360fb2480571b749fd98d57e11f1afdffb5a74a78166fea",
          "completed_at": "2026-07-15T14:36:39Z"
        },
        {
          "id": "goals",
          "action": "substrate.goals",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-15T14:36:39Z",
          "output": {
            "status": "disabled",
            "created": 0,
            "observed": 0,
            "results": []
          },
          "output_hash": "cdfd4de44a28140e686159f34f7b47975954c67e1d1efcef666e985acb136ed8",
          "completed_at": "2026-07-15T14:36:39Z"
        }
      ],
      "completed_at": "2026-07-15T14:36:39Z"
    },
    {
      "id": "WFR-039",
      "schema_version": "1.0",
      "workflow_id": "session.stop",
      "workflow_version": 1,
      "definition_hash": "0cef7bb3e28321be8f85375c154955a69310ce297e47de3f3b8dd48f77a2f07d",
      "plan_hash": "a5e1d77ac734217487fc418e29c7163f4e81178e25d171e70cd4c999d527d3e8",
      "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
      "inputs": {},
      "idempotency_key": "hook:Stop:019f6635-36b7-7be2-8575-aefb905bca9c",
      "status": "completed",
      "attempt": 1,
      "created_at": "2026-07-15T14:36:43Z",
      "updated_at": "2026-07-15T14:36:44Z",
      "receipts": [
        {
          "step_id": "state",
          "action": "state.consistency",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "5a1c6e5246defb1b6b6b90ff734db95bece2886b408ab112ed9b8e67222d5568",
          "completed_at": "2026-07-15T14:36:44Z"
        },
        {
          "step_id": "goals",
          "action": "substrate.goals",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "cdfd4de44a28140e686159f34f7b47975954c67e1d1efcef666e985acb136ed8",
          "completed_at": "2026-07-15T14:36:44Z"
        },
        {
          "step_id": "staleness",
          "action": "staleness.audit",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "1e81cb0ffd0a4d04626920a203b38d2d23a264cd43e807a85d375d69cae8a658",
          "completed_at": "2026-07-15T14:36:44Z"
        },
        {
          "step_id": "reflections",
          "action": "reflection.list",
          "input_hash": "0172e841ab4c13b3a4061f073f9d68a716ec87a8a5d52fde41823385e0582573",
          "output_hash": "c1b6b635c0bab21120657277f14ef6f839909875f307a3745fa48aee2bd6e449",
          "completed_at": "2026-07-15T14:36:44Z"
        },
        {
          "step_id": "bundle",
          "action": "reporting.bundle",
          "input_hash": "aed8ebb688dc3c085dd978d7c4120572173c3cb87e75919e4a937dcca6ef9457",
          "output_hash": "6413b750e5adf462056ec1108a5d692cc446676e520bee65af98f64bc3e9bd9b",
          "completed_at": "2026-07-15T14:36:44Z"
        },
        {
          "step_id": "delegated",
          "action": "reporting.delegate",
          "input_hash": "669197e524ce450fa066ad7ef7d9da00168b780083ca6a5d7094bca3097e8568",
          "output_hash": "e6085059f197def80ae95add1f328418107bea5436c9bd002530043646a3a95c",
          "completed_at": "2026-07-15T14:36:44Z"
        }
      ],
      "steps": [
        {
          "id": "state",
          "action": "state.consistency",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-15T14:36:43Z",
          "output": {
            "status": "ok",
            "repo_root": "D:\\Projects\\prd-plugin",
            "summary": {
              "errors": 0,
              "warnings": 0,
              "infos": 0
            },
            "findings": []
          },
          "output_hash": "5a1c6e5246defb1b6b6b90ff734db95bece2886b408ab112ed9b8e67222d5568",
          "completed_at": "2026-07-15T14:36:44Z"
        },
        {
          "id": "goals",
          "action": "substrate.goals",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-15T14:36:44Z",
          "output": {
            "status": "disabled",
            "created": 0,
            "observed": 0,
            "results": []
          },
          "output_hash": "cdfd4de44a28140e686159f34f7b47975954c67e1d1efcef666e985acb136ed8",
          "completed_at": "2026-07-15T14:36:44Z"
        },
        {
          "id": "staleness",
          "action": "staleness.audit",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-15T14:36:44Z",
          "output": {
            "status": "ok",
            "repo_root": "D:\\Projects\\prd-plugin",
            "counts": {
              "stale": 0
            },
            "stale": []
          },
          "output_hash": "1e81cb0ffd0a4d04626920a203b38d2d23a264cd43e807a85d375d69cae8a658",
          "completed_at": "2026-07-15T14:36:44Z"
        },
        {
          "id": "reflections",
          "action": "reflection.list",
          "status": "completed",
          "resolved_input_hash": "0172e841ab4c13b3a4061f073f9d68a716ec87a8a5d52fde41823385e0582573",
          "started_at": "2026-07-15T14:36:44Z",
          "output": {
            "enabled": false,
            "on_stop": true,
            "max_questions_per_stop": 5,
            "categories": [
              {
                "id": "behaviour_quality",
                "name": "Behaviour quality",
                "enabled": true,
                "question_count": 3
              },
              {
                "id": "harness_friction",
                "name": "Harness friction",
                "enabled": true,
                "question_count": 2
              }
            ],
            "questions": [
              {
                "id": "RFQ-001",
                "text": "Based on the work you just carried out, would you classify your behaviour as good? Answer yes or no and cite observable evidence.",
                "enabled": true,
                "category_id": "behaviour_quality",
                "category_name": "Behaviour quality",
                "effective_enabled": false
              },
              {
                "id": "RFQ-002",
                "text": "If you answered no, what could you do differently to correct your behaviour?",
                "enabled": true,
                "category_id": "behaviour_quality",
                "category_name": "Behaviour quality",
                "effective_enabled": false
              },
              {
                "id": "RFQ-003",
                "text": "Would another attempt using the identified good behaviours materially improve the outcome? Answer yes or no and state the next corrective action if yes.",
                "enabled": true,
                "category_id": "behaviour_quality",
                "category_name": "Behaviour quality",
                "effective_enabled": false
              },
              {
                "id": "RFQ-004",
                "text": "What harness friction points made this work more difficult?",
                "enabled": true,
                "category_id": "harness_friction",
                "category_name": "Harness friction",
                "effective_enabled": false
              },
              {
                "id": "RFQ-005",
                "text": "What up to three changes would most improve friction in the harness?",
                "enabled": true,
                "category_id": "harness_friction",
                "category_name": "Harness friction",
                "effective_enabled": false
              }
            ]
          },
          "output_hash": "c1b6b635c0bab21120657277f14ef6f839909875f307a3745fa48aee2bd6e449",
          "completed_at": "2026-07-15T14:36:44Z"
        },
        {
          "id": "bundle",
          "action": "reporting.bundle",
          "status": "completed",
          "resolved_input_hash": "aed8ebb688dc3c085dd978d7c4120572173c3cb87e75919e4a937dcca6ef9457",
          "started_at": "2026-07-15T14:36:44Z",
          "output": {
            "contract_version": 1,
            "task": "session_summary",
            "repo": "prd-plugin",
            "policy": {
              "enabled": false,
              "executor": "ai-collab",
              "contract_version": 1,
              "profile": "fast-capable",
              "tasks": [
                "report_summary",
                "session_summary",
                "wiki_synthesis",
                "triage_draft"
              ],
              "fallback": "main",
              "require_source_refs": true,
              "max_input_tokens": 12000,
              "max_output_tokens": 1500,
              "timeout_seconds": 30
            },
            "facts": {
              "requests_by_status": {
                "deferred": 1,
                "implemented": 80,
                "proposed": 1,
                "rejected": 1
              },
              "active_requests": [
                {
                  "id": "REQ-072",
                  "status": "proposed",
                  "severity": "low",
                  "summary": "opencode run-until-done: session.idle is a non-blocking notification, so the stop guard can't force continuation on opencode (currently degrades to a printed reminder, 0.5.95). Investigate whether opencode exposes any vetoable/continuation mechanism (a different event, a permission hook, or a 'continue' API) to enforce run-until-done, or accept the reminder as the permanent ceiling. Low priority — user rarely uses opencode."
                }
              ],
              "active_tracking": [],
              "open_health": [],
              "evidence_count": 104,
              "decision_count": 9
            },
            "findings": [],
            "source_refs": [
              ".prd_plugin/config.json",
              ".prd_plugin/state/decisions.json",
              ".prd_plugin/state/evidence.json",
              ".prd_plugin/state/health.json",
              ".prd_plugin/state/requests.json",
              ".prd_plugin/state/tracking.json",
              "REQ-072"
            ],
            "constraints": {
              "max_input_tokens": 12000,
              "max_output_tokens": 1500,
              "timeout_seconds": 30,
              "require_source_refs": true,
              "no_project_state_writes": true,
              "no_secrets_or_local_session_content": true
            }
          },
          "output_hash": "6413b750e5adf462056ec1108a5d692cc446676e520bee65af98f64bc3e9bd9b",
          "completed_at": "2026-07-15T14:36:44Z"
        },
        {
          "id": "delegated",
          "action": "reporting.delegate",
          "status": "completed",
          "resolved_input_hash": "669197e524ce450fa066ad7ef7d9da00168b780083ca6a5d7094bca3097e8568",
          "started_at": "2026-07-15T14:36:44Z",
          "output": {
            "status": "fallback",
            "action": "main",
            "reason": "disabled"
          },
          "output_hash": "e6085059f197def80ae95add1f328418107bea5436c9bd002530043646a3a95c",
          "completed_at": "2026-07-15T14:36:44Z"
        }
      ],
      "completed_at": "2026-07-15T14:36:44Z"
    },
    {
      "id": "WFR-040",
      "schema_version": "1.0",
      "workflow_id": "session.start",
      "workflow_version": 1,
      "definition_hash": "d0f98da02571e6dd27fec4aed92d3c82af9db75f8b90b997bf665635c7b7f6ca",
      "plan_hash": "b5072615ca3b7e9a3bd85d50d1f069d99ef2a9816b32c03a370745ed7a205536",
      "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
      "inputs": {},
      "idempotency_key": "hook:SessionStart:019f6635-81de-7040-93bf-b18fd7ec5e32",
      "status": "completed",
      "attempt": 1,
      "created_at": "2026-07-15T14:36:52Z",
      "updated_at": "2026-07-15T14:36:53Z",
      "receipts": [
        {
          "step_id": "config",
          "action": "config.audit",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "3782ec2317c0c8ee7598634310a2804d8aae4735f557498f9d3b8fae7c45e1e5",
          "completed_at": "2026-07-15T14:36:52Z"
        },
        {
          "step_id": "services",
          "action": "services.audit",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "13dcc58bd528f3efa3e6e0fa0853a6eedc376f1f3685fbd4869cbb2b60382ee3",
          "completed_at": "2026-07-15T14:36:52Z"
        },
        {
          "step_id": "state",
          "action": "state.consistency",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "5a1c6e5246defb1b6b6b90ff734db95bece2886b408ab112ed9b8e67222d5568",
          "completed_at": "2026-07-15T14:36:53Z"
        },
        {
          "step_id": "status",
          "action": "state.query",
          "input_hash": "a15231a2142a2a9a85355a8b9cbbccffe01a9c9c2c2fd8c2bc2987cdc481564a",
          "output_hash": "8ba9f7d3cc6705af37de9e3324d1258e21ccacb5ab0b2d7b389ca08885e11187",
          "completed_at": "2026-07-15T14:36:53Z"
        },
        {
          "step_id": "substrate",
          "action": "substrate.preflight",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "a6df426290b4549a59eecaa0519ead9bcc50b7fcb25bd2185ff6047960f19ccb",
          "completed_at": "2026-07-15T14:36:53Z"
        },
        {
          "step_id": "notices",
          "action": "substrate.notices",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "38b904a1cf83df048360fb2480571b749fd98d57e11f1afdffb5a74a78166fea",
          "completed_at": "2026-07-15T14:36:53Z"
        },
        {
          "step_id": "goals",
          "action": "substrate.goals",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "cdfd4de44a28140e686159f34f7b47975954c67e1d1efcef666e985acb136ed8",
          "completed_at": "2026-07-15T14:36:53Z"
        }
      ],
      "steps": [
        {
          "id": "config",
          "action": "config.audit",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-15T14:36:52Z",
          "output": {
            "status": "ok",
            "summary": {
              "settings": 195,
              "mutable": 186,
              "read_only_or_managed": 9,
              "unclassified": 0,
              "unknown": 0,
              "invalid": 0,
              "missing_using_defaults": 0
            },
            "unclassified_keys": [],
            "unknown_keys": [],
            "invalid_values": [],
            "missing_using_defaults": []
          },
          "output_hash": "3782ec2317c0c8ee7598634310a2804d8aae4735f557498f9d3b8fae7c45e1e5",
          "completed_at": "2026-07-15T14:36:52Z"
        },
        {
          "id": "services",
          "action": "services.audit",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-15T14:36:52Z",
          "output": {
            "status": "ok",
            "summary": {
              "critical": 0,
              "high": 0,
              "medium": 0,
              "low": 0
            },
            "findings": []
          },
          "output_hash": "13dcc58bd528f3efa3e6e0fa0853a6eedc376f1f3685fbd4869cbb2b60382ee3",
          "completed_at": "2026-07-15T14:36:52Z"
        },
        {
          "id": "state",
          "action": "state.consistency",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-15T14:36:52Z",
          "output": {
            "status": "ok",
            "repo_root": "D:\\Projects\\prd-plugin",
            "summary": {
              "errors": 0,
              "warnings": 0,
              "infos": 0
            },
            "findings": []
          },
          "output_hash": "5a1c6e5246defb1b6b6b90ff734db95bece2886b408ab112ed9b8e67222d5568",
          "completed_at": "2026-07-15T14:36:53Z"
        },
        {
          "id": "status",
          "action": "state.query",
          "status": "completed",
          "resolved_input_hash": "a15231a2142a2a9a85355a8b9cbbccffe01a9c9c2c2fd8c2bc2987cdc481564a",
          "started_at": "2026-07-15T14:36:53Z",
          "output": {
            "repo_root": "D:\\Projects\\prd-plugin",
            "autonomy_level": "autonomous",
            "requests_by_status": {
              "deferred": 1,
              "implemented": 80,
              "proposed": 1,
              "rejected": 1
            },
            "active_tracking": [],
            "tracking_branches": [],
            "tracking_branch_counts": {},
            "tracking_branch_errors": [],
            "open_health": [],
            "stale_count": 0,
            "skill_usage": {
              "project-decision-policy": 1,
              "project-request-intake": 1,
              "project-test-driven-implementation": 1,
              "project-verification-before-completion": 1,
              "project-llm-wiki": 1
            },
            "wiki_backfill_pending": false,
            "version_update": null
          },
          "output_hash": "8ba9f7d3cc6705af37de9e3324d1258e21ccacb5ab0b2d7b389ca08885e11187",
          "completed_at": "2026-07-15T14:36:53Z"
        },
        {
          "id": "substrate",
          "action": "substrate.preflight",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-15T14:36:53Z",
          "output": {
            "status": "disabled",
            "services": {
              "status": "ok",
              "summary": {
                "critical": 0,
                "high": 0,
                "medium": 0,
                "low": 0
              },
              "findings": []
            },
            "policy": {
              "configured": {
                "enabled": false,
                "mode": "off",
                "capabilities": [
                  "records",
                  "graph",
                  "events"
                ],
                "contract_version": 2,
                "require_source_refs": true,
                "endpoint": "http://127.0.0.1:47124",
                "manual_url": "http://127.0.0.1:47124/utcp.json",
                "knowledge_browse_url": "http://127.0.0.1:5276",
                "auth_env": "AI_COLLAB_API_KEY",
                "timeout_seconds": 5,
                "max_result_bytes": 1048576,
                "cache_ttl_seconds": 60,
                "fallback": "local",
                "automation": {
                  "discovery_on_session_start": true,
                  "knowledge_recall": true,
                  "memory_recall": true,
                  "context_enrichment": true,
                  "notices_on_session_start": false,
                  "goals_sync": false,
                  "telemetry_on_maintenance": false,
                  "reporting_dispatch": true,
                  "judgment_dispatch": true,
                  "verification_execution": true
                }
              },
              "active": false,
              "effective_mode": "off",
              "effective_capabilities": []
            }
          },
          "output_hash": "a6df426290b4549a59eecaa0519ead9bcc50b7fcb25bd2185ff6047960f19ccb",
          "completed_at": "2026-07-15T14:36:53Z"
        },
        {
          "id": "notices",
          "action": "substrate.notices",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-15T14:36:53Z",
          "output": {
            "status": "disabled"
          },
          "output_hash": "38b904a1cf83df048360fb2480571b749fd98d57e11f1afdffb5a74a78166fea",
          "completed_at": "2026-07-15T14:36:53Z"
        },
        {
          "id": "goals",
          "action": "substrate.goals",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-15T14:36:53Z",
          "output": {
            "status": "disabled",
            "created": 0,
            "observed": 0,
            "results": []
          },
          "output_hash": "cdfd4de44a28140e686159f34f7b47975954c67e1d1efcef666e985acb136ed8",
          "completed_at": "2026-07-15T14:36:53Z"
        }
      ],
      "completed_at": "2026-07-15T14:36:53Z"
    },
    {
      "id": "WFR-041",
      "schema_version": "1.0",
      "workflow_id": "session.stop",
      "workflow_version": 1,
      "definition_hash": "0cef7bb3e28321be8f85375c154955a69310ce297e47de3f3b8dd48f77a2f07d",
      "plan_hash": "a5e1d77ac734217487fc418e29c7163f4e81178e25d171e70cd4c999d527d3e8",
      "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
      "inputs": {},
      "idempotency_key": "hook:Stop:019f6635-81de-7040-93bf-b18fd7ec5e32",
      "status": "completed",
      "attempt": 1,
      "created_at": "2026-07-15T14:37:06Z",
      "updated_at": "2026-07-15T14:37:07Z",
      "receipts": [
        {
          "step_id": "state",
          "action": "state.consistency",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "5a1c6e5246defb1b6b6b90ff734db95bece2886b408ab112ed9b8e67222d5568",
          "completed_at": "2026-07-15T14:37:07Z"
        },
        {
          "step_id": "goals",
          "action": "substrate.goals",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "cdfd4de44a28140e686159f34f7b47975954c67e1d1efcef666e985acb136ed8",
          "completed_at": "2026-07-15T14:37:07Z"
        },
        {
          "step_id": "staleness",
          "action": "staleness.audit",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "1e81cb0ffd0a4d04626920a203b38d2d23a264cd43e807a85d375d69cae8a658",
          "completed_at": "2026-07-15T14:37:07Z"
        },
        {
          "step_id": "reflections",
          "action": "reflection.list",
          "input_hash": "0172e841ab4c13b3a4061f073f9d68a716ec87a8a5d52fde41823385e0582573",
          "output_hash": "c1b6b635c0bab21120657277f14ef6f839909875f307a3745fa48aee2bd6e449",
          "completed_at": "2026-07-15T14:37:07Z"
        },
        {
          "step_id": "bundle",
          "action": "reporting.bundle",
          "input_hash": "aed8ebb688dc3c085dd978d7c4120572173c3cb87e75919e4a937dcca6ef9457",
          "output_hash": "6413b750e5adf462056ec1108a5d692cc446676e520bee65af98f64bc3e9bd9b",
          "completed_at": "2026-07-15T14:37:07Z"
        },
        {
          "step_id": "delegated",
          "action": "reporting.delegate",
          "input_hash": "669197e524ce450fa066ad7ef7d9da00168b780083ca6a5d7094bca3097e8568",
          "output_hash": "e6085059f197def80ae95add1f328418107bea5436c9bd002530043646a3a95c",
          "completed_at": "2026-07-15T14:37:07Z"
        }
      ],
      "steps": [
        {
          "id": "state",
          "action": "state.consistency",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-15T14:37:06Z",
          "output": {
            "status": "ok",
            "repo_root": "D:\\Projects\\prd-plugin",
            "summary": {
              "errors": 0,
              "warnings": 0,
              "infos": 0
            },
            "findings": []
          },
          "output_hash": "5a1c6e5246defb1b6b6b90ff734db95bece2886b408ab112ed9b8e67222d5568",
          "completed_at": "2026-07-15T14:37:07Z"
        },
        {
          "id": "goals",
          "action": "substrate.goals",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-15T14:37:07Z",
          "output": {
            "status": "disabled",
            "created": 0,
            "observed": 0,
            "results": []
          },
          "output_hash": "cdfd4de44a28140e686159f34f7b47975954c67e1d1efcef666e985acb136ed8",
          "completed_at": "2026-07-15T14:37:07Z"
        },
        {
          "id": "staleness",
          "action": "staleness.audit",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-15T14:37:07Z",
          "output": {
            "status": "ok",
            "repo_root": "D:\\Projects\\prd-plugin",
            "counts": {
              "stale": 0
            },
            "stale": []
          },
          "output_hash": "1e81cb0ffd0a4d04626920a203b38d2d23a264cd43e807a85d375d69cae8a658",
          "completed_at": "2026-07-15T14:37:07Z"
        },
        {
          "id": "reflections",
          "action": "reflection.list",
          "status": "completed",
          "resolved_input_hash": "0172e841ab4c13b3a4061f073f9d68a716ec87a8a5d52fde41823385e0582573",
          "started_at": "2026-07-15T14:37:07Z",
          "output": {
            "enabled": false,
            "on_stop": true,
            "max_questions_per_stop": 5,
            "categories": [
              {
                "id": "behaviour_quality",
                "name": "Behaviour quality",
                "enabled": true,
                "question_count": 3
              },
              {
                "id": "harness_friction",
                "name": "Harness friction",
                "enabled": true,
                "question_count": 2
              }
            ],
            "questions": [
              {
                "id": "RFQ-001",
                "text": "Based on the work you just carried out, would you classify your behaviour as good? Answer yes or no and cite observable evidence.",
                "enabled": true,
                "category_id": "behaviour_quality",
                "category_name": "Behaviour quality",
                "effective_enabled": false
              },
              {
                "id": "RFQ-002",
                "text": "If you answered no, what could you do differently to correct your behaviour?",
                "enabled": true,
                "category_id": "behaviour_quality",
                "category_name": "Behaviour quality",
                "effective_enabled": false
              },
              {
                "id": "RFQ-003",
                "text": "Would another attempt using the identified good behaviours materially improve the outcome? Answer yes or no and state the next corrective action if yes.",
                "enabled": true,
                "category_id": "behaviour_quality",
                "category_name": "Behaviour quality",
                "effective_enabled": false
              },
              {
                "id": "RFQ-004",
                "text": "What harness friction points made this work more difficult?",
                "enabled": true,
                "category_id": "harness_friction",
                "category_name": "Harness friction",
                "effective_enabled": false
              },
              {
                "id": "RFQ-005",
                "text": "What up to three changes would most improve friction in the harness?",
                "enabled": true,
                "category_id": "harness_friction",
                "category_name": "Harness friction",
                "effective_enabled": false
              }
            ]
          },
          "output_hash": "c1b6b635c0bab21120657277f14ef6f839909875f307a3745fa48aee2bd6e449",
          "completed_at": "2026-07-15T14:37:07Z"
        },
        {
          "id": "bundle",
          "action": "reporting.bundle",
          "status": "completed",
          "resolved_input_hash": "aed8ebb688dc3c085dd978d7c4120572173c3cb87e75919e4a937dcca6ef9457",
          "started_at": "2026-07-15T14:37:07Z",
          "output": {
            "contract_version": 1,
            "task": "session_summary",
            "repo": "prd-plugin",
            "policy": {
              "enabled": false,
              "executor": "ai-collab",
              "contract_version": 1,
              "profile": "fast-capable",
              "tasks": [
                "report_summary",
                "session_summary",
                "wiki_synthesis",
                "triage_draft"
              ],
              "fallback": "main",
              "require_source_refs": true,
              "max_input_tokens": 12000,
              "max_output_tokens": 1500,
              "timeout_seconds": 30
            },
            "facts": {
              "requests_by_status": {
                "deferred": 1,
                "implemented": 80,
                "proposed": 1,
                "rejected": 1
              },
              "active_requests": [
                {
                  "id": "REQ-072",
                  "status": "proposed",
                  "severity": "low",
                  "summary": "opencode run-until-done: session.idle is a non-blocking notification, so the stop guard can't force continuation on opencode (currently degrades to a printed reminder, 0.5.95). Investigate whether opencode exposes any vetoable/continuation mechanism (a different event, a permission hook, or a 'continue' API) to enforce run-until-done, or accept the reminder as the permanent ceiling. Low priority — user rarely uses opencode."
                }
              ],
              "active_tracking": [],
              "open_health": [],
              "evidence_count": 104,
              "decision_count": 9
            },
            "findings": [],
            "source_refs": [
              ".prd_plugin/config.json",
              ".prd_plugin/state/decisions.json",
              ".prd_plugin/state/evidence.json",
              ".prd_plugin/state/health.json",
              ".prd_plugin/state/requests.json",
              ".prd_plugin/state/tracking.json",
              "REQ-072"
            ],
            "constraints": {
              "max_input_tokens": 12000,
              "max_output_tokens": 1500,
              "timeout_seconds": 30,
              "require_source_refs": true,
              "no_project_state_writes": true,
              "no_secrets_or_local_session_content": true
            }
          },
          "output_hash": "6413b750e5adf462056ec1108a5d692cc446676e520bee65af98f64bc3e9bd9b",
          "completed_at": "2026-07-15T14:37:07Z"
        },
        {
          "id": "delegated",
          "action": "reporting.delegate",
          "status": "completed",
          "resolved_input_hash": "669197e524ce450fa066ad7ef7d9da00168b780083ca6a5d7094bca3097e8568",
          "started_at": "2026-07-15T14:37:07Z",
          "output": {
            "status": "fallback",
            "action": "main",
            "reason": "disabled"
          },
          "output_hash": "e6085059f197def80ae95add1f328418107bea5436c9bd002530043646a3a95c",
          "completed_at": "2026-07-15T14:37:07Z"
        }
      ],
      "completed_at": "2026-07-15T14:37:07Z"
    },
    {
      "id": "WFR-042",
      "schema_version": "1.0",
      "workflow_id": "session.start",
      "workflow_version": 1,
      "definition_hash": "d0f98da02571e6dd27fec4aed92d3c82af9db75f8b90b997bf665635c7b7f6ca",
      "plan_hash": "b5072615ca3b7e9a3bd85d50d1f069d99ef2a9816b32c03a370745ed7a205536",
      "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
      "inputs": {},
      "idempotency_key": "hook:SessionStart:019f6636-cf25-7071-b85c-11207d87e366",
      "status": "completed",
      "attempt": 1,
      "created_at": "2026-07-15T14:38:17Z",
      "updated_at": "2026-07-15T14:38:18Z",
      "receipts": [
        {
          "step_id": "config",
          "action": "config.audit",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "3782ec2317c0c8ee7598634310a2804d8aae4735f557498f9d3b8fae7c45e1e5",
          "completed_at": "2026-07-15T14:38:17Z"
        },
        {
          "step_id": "services",
          "action": "services.audit",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "13dcc58bd528f3efa3e6e0fa0853a6eedc376f1f3685fbd4869cbb2b60382ee3",
          "completed_at": "2026-07-15T14:38:17Z"
        },
        {
          "step_id": "state",
          "action": "state.consistency",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "5a1c6e5246defb1b6b6b90ff734db95bece2886b408ab112ed9b8e67222d5568",
          "completed_at": "2026-07-15T14:38:18Z"
        },
        {
          "step_id": "status",
          "action": "state.query",
          "input_hash": "a15231a2142a2a9a85355a8b9cbbccffe01a9c9c2c2fd8c2bc2987cdc481564a",
          "output_hash": "8ba9f7d3cc6705af37de9e3324d1258e21ccacb5ab0b2d7b389ca08885e11187",
          "completed_at": "2026-07-15T14:38:18Z"
        },
        {
          "step_id": "substrate",
          "action": "substrate.preflight",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "a6df426290b4549a59eecaa0519ead9bcc50b7fcb25bd2185ff6047960f19ccb",
          "completed_at": "2026-07-15T14:38:18Z"
        },
        {
          "step_id": "notices",
          "action": "substrate.notices",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "38b904a1cf83df048360fb2480571b749fd98d57e11f1afdffb5a74a78166fea",
          "completed_at": "2026-07-15T14:38:18Z"
        },
        {
          "step_id": "goals",
          "action": "substrate.goals",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "cdfd4de44a28140e686159f34f7b47975954c67e1d1efcef666e985acb136ed8",
          "completed_at": "2026-07-15T14:38:18Z"
        }
      ],
      "steps": [
        {
          "id": "config",
          "action": "config.audit",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-15T14:38:17Z",
          "output": {
            "status": "ok",
            "summary": {
              "settings": 195,
              "mutable": 186,
              "read_only_or_managed": 9,
              "unclassified": 0,
              "unknown": 0,
              "invalid": 0,
              "missing_using_defaults": 0
            },
            "unclassified_keys": [],
            "unknown_keys": [],
            "invalid_values": [],
            "missing_using_defaults": []
          },
          "output_hash": "3782ec2317c0c8ee7598634310a2804d8aae4735f557498f9d3b8fae7c45e1e5",
          "completed_at": "2026-07-15T14:38:17Z"
        },
        {
          "id": "services",
          "action": "services.audit",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-15T14:38:17Z",
          "output": {
            "status": "ok",
            "summary": {
              "critical": 0,
              "high": 0,
              "medium": 0,
              "low": 0
            },
            "findings": []
          },
          "output_hash": "13dcc58bd528f3efa3e6e0fa0853a6eedc376f1f3685fbd4869cbb2b60382ee3",
          "completed_at": "2026-07-15T14:38:17Z"
        },
        {
          "id": "state",
          "action": "state.consistency",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-15T14:38:17Z",
          "output": {
            "status": "ok",
            "repo_root": "D:\\Projects\\prd-plugin",
            "summary": {
              "errors": 0,
              "warnings": 0,
              "infos": 0
            },
            "findings": []
          },
          "output_hash": "5a1c6e5246defb1b6b6b90ff734db95bece2886b408ab112ed9b8e67222d5568",
          "completed_at": "2026-07-15T14:38:18Z"
        },
        {
          "id": "status",
          "action": "state.query",
          "status": "completed",
          "resolved_input_hash": "a15231a2142a2a9a85355a8b9cbbccffe01a9c9c2c2fd8c2bc2987cdc481564a",
          "started_at": "2026-07-15T14:38:18Z",
          "output": {
            "repo_root": "D:\\Projects\\prd-plugin",
            "autonomy_level": "autonomous",
            "requests_by_status": {
              "deferred": 1,
              "implemented": 80,
              "proposed": 1,
              "rejected": 1
            },
            "active_tracking": [],
            "tracking_branches": [],
            "tracking_branch_counts": {},
            "tracking_branch_errors": [],
            "open_health": [],
            "stale_count": 0,
            "skill_usage": {
              "project-decision-policy": 1,
              "project-request-intake": 1,
              "project-test-driven-implementation": 1,
              "project-verification-before-completion": 1,
              "project-llm-wiki": 1
            },
            "wiki_backfill_pending": false,
            "version_update": null
          },
          "output_hash": "8ba9f7d3cc6705af37de9e3324d1258e21ccacb5ab0b2d7b389ca08885e11187",
          "completed_at": "2026-07-15T14:38:18Z"
        },
        {
          "id": "substrate",
          "action": "substrate.preflight",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-15T14:38:18Z",
          "output": {
            "status": "disabled",
            "services": {
              "status": "ok",
              "summary": {
                "critical": 0,
                "high": 0,
                "medium": 0,
                "low": 0
              },
              "findings": []
            },
            "policy": {
              "configured": {
                "enabled": false,
                "mode": "off",
                "capabilities": [
                  "records",
                  "graph",
                  "events"
                ],
                "contract_version": 2,
                "require_source_refs": true,
                "endpoint": "http://127.0.0.1:47124",
                "manual_url": "http://127.0.0.1:47124/utcp.json",
                "knowledge_browse_url": "http://127.0.0.1:5276",
                "auth_env": "AI_COLLAB_API_KEY",
                "timeout_seconds": 5,
                "max_result_bytes": 1048576,
                "cache_ttl_seconds": 60,
                "fallback": "local",
                "automation": {
                  "discovery_on_session_start": true,
                  "knowledge_recall": true,
                  "memory_recall": true,
                  "context_enrichment": true,
                  "notices_on_session_start": false,
                  "goals_sync": false,
                  "telemetry_on_maintenance": false,
                  "reporting_dispatch": true,
                  "judgment_dispatch": true,
                  "verification_execution": true
                }
              },
              "active": false,
              "effective_mode": "off",
              "effective_capabilities": []
            }
          },
          "output_hash": "a6df426290b4549a59eecaa0519ead9bcc50b7fcb25bd2185ff6047960f19ccb",
          "completed_at": "2026-07-15T14:38:18Z"
        },
        {
          "id": "notices",
          "action": "substrate.notices",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-15T14:38:18Z",
          "output": {
            "status": "disabled"
          },
          "output_hash": "38b904a1cf83df048360fb2480571b749fd98d57e11f1afdffb5a74a78166fea",
          "completed_at": "2026-07-15T14:38:18Z"
        },
        {
          "id": "goals",
          "action": "substrate.goals",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-15T14:38:18Z",
          "output": {
            "status": "disabled",
            "created": 0,
            "observed": 0,
            "results": []
          },
          "output_hash": "cdfd4de44a28140e686159f34f7b47975954c67e1d1efcef666e985acb136ed8",
          "completed_at": "2026-07-15T14:38:18Z"
        }
      ],
      "completed_at": "2026-07-15T14:38:18Z"
    },
    {
      "id": "WFR-043",
      "schema_version": "1.0",
      "workflow_id": "session.stop",
      "workflow_version": 1,
      "definition_hash": "0cef7bb3e28321be8f85375c154955a69310ce297e47de3f3b8dd48f77a2f07d",
      "plan_hash": "a5e1d77ac734217487fc418e29c7163f4e81178e25d171e70cd4c999d527d3e8",
      "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
      "inputs": {},
      "idempotency_key": "hook:Stop:019f6636-cf25-7071-b85c-11207d87e366",
      "status": "completed",
      "attempt": 1,
      "created_at": "2026-07-15T14:38:21Z",
      "updated_at": "2026-07-15T14:38:22Z",
      "receipts": [
        {
          "step_id": "state",
          "action": "state.consistency",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "5a1c6e5246defb1b6b6b90ff734db95bece2886b408ab112ed9b8e67222d5568",
          "completed_at": "2026-07-15T14:38:22Z"
        },
        {
          "step_id": "goals",
          "action": "substrate.goals",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "cdfd4de44a28140e686159f34f7b47975954c67e1d1efcef666e985acb136ed8",
          "completed_at": "2026-07-15T14:38:22Z"
        },
        {
          "step_id": "staleness",
          "action": "staleness.audit",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "1e81cb0ffd0a4d04626920a203b38d2d23a264cd43e807a85d375d69cae8a658",
          "completed_at": "2026-07-15T14:38:22Z"
        },
        {
          "step_id": "reflections",
          "action": "reflection.list",
          "input_hash": "0172e841ab4c13b3a4061f073f9d68a716ec87a8a5d52fde41823385e0582573",
          "output_hash": "c1b6b635c0bab21120657277f14ef6f839909875f307a3745fa48aee2bd6e449",
          "completed_at": "2026-07-15T14:38:22Z"
        },
        {
          "step_id": "bundle",
          "action": "reporting.bundle",
          "input_hash": "aed8ebb688dc3c085dd978d7c4120572173c3cb87e75919e4a937dcca6ef9457",
          "output_hash": "6413b750e5adf462056ec1108a5d692cc446676e520bee65af98f64bc3e9bd9b",
          "completed_at": "2026-07-15T14:38:22Z"
        },
        {
          "step_id": "delegated",
          "action": "reporting.delegate",
          "input_hash": "669197e524ce450fa066ad7ef7d9da00168b780083ca6a5d7094bca3097e8568",
          "output_hash": "e6085059f197def80ae95add1f328418107bea5436c9bd002530043646a3a95c",
          "completed_at": "2026-07-15T14:38:22Z"
        }
      ],
      "steps": [
        {
          "id": "state",
          "action": "state.consistency",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-15T14:38:21Z",
          "output": {
            "status": "ok",
            "repo_root": "D:\\Projects\\prd-plugin",
            "summary": {
              "errors": 0,
              "warnings": 0,
              "infos": 0
            },
            "findings": []
          },
          "output_hash": "5a1c6e5246defb1b6b6b90ff734db95bece2886b408ab112ed9b8e67222d5568",
          "completed_at": "2026-07-15T14:38:22Z"
        },
        {
          "id": "goals",
          "action": "substrate.goals",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-15T14:38:22Z",
          "output": {
            "status": "disabled",
            "created": 0,
            "observed": 0,
            "results": []
          },
          "output_hash": "cdfd4de44a28140e686159f34f7b47975954c67e1d1efcef666e985acb136ed8",
          "completed_at": "2026-07-15T14:38:22Z"
        },
        {
          "id": "staleness",
          "action": "staleness.audit",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-15T14:38:22Z",
          "output": {
            "status": "ok",
            "repo_root": "D:\\Projects\\prd-plugin",
            "counts": {
              "stale": 0
            },
            "stale": []
          },
          "output_hash": "1e81cb0ffd0a4d04626920a203b38d2d23a264cd43e807a85d375d69cae8a658",
          "completed_at": "2026-07-15T14:38:22Z"
        },
        {
          "id": "reflections",
          "action": "reflection.list",
          "status": "completed",
          "resolved_input_hash": "0172e841ab4c13b3a4061f073f9d68a716ec87a8a5d52fde41823385e0582573",
          "started_at": "2026-07-15T14:38:22Z",
          "output": {
            "enabled": false,
            "on_stop": true,
            "max_questions_per_stop": 5,
            "categories": [
              {
                "id": "behaviour_quality",
                "name": "Behaviour quality",
                "enabled": true,
                "question_count": 3
              },
              {
                "id": "harness_friction",
                "name": "Harness friction",
                "enabled": true,
                "question_count": 2
              }
            ],
            "questions": [
              {
                "id": "RFQ-001",
                "text": "Based on the work you just carried out, would you classify your behaviour as good? Answer yes or no and cite observable evidence.",
                "enabled": true,
                "category_id": "behaviour_quality",
                "category_name": "Behaviour quality",
                "effective_enabled": false
              },
              {
                "id": "RFQ-002",
                "text": "If you answered no, what could you do differently to correct your behaviour?",
                "enabled": true,
                "category_id": "behaviour_quality",
                "category_name": "Behaviour quality",
                "effective_enabled": false
              },
              {
                "id": "RFQ-003",
                "text": "Would another attempt using the identified good behaviours materially improve the outcome? Answer yes or no and state the next corrective action if yes.",
                "enabled": true,
                "category_id": "behaviour_quality",
                "category_name": "Behaviour quality",
                "effective_enabled": false
              },
              {
                "id": "RFQ-004",
                "text": "What harness friction points made this work more difficult?",
                "enabled": true,
                "category_id": "harness_friction",
                "category_name": "Harness friction",
                "effective_enabled": false
              },
              {
                "id": "RFQ-005",
                "text": "What up to three changes would most improve friction in the harness?",
                "enabled": true,
                "category_id": "harness_friction",
                "category_name": "Harness friction",
                "effective_enabled": false
              }
            ]
          },
          "output_hash": "c1b6b635c0bab21120657277f14ef6f839909875f307a3745fa48aee2bd6e449",
          "completed_at": "2026-07-15T14:38:22Z"
        },
        {
          "id": "bundle",
          "action": "reporting.bundle",
          "status": "completed",
          "resolved_input_hash": "aed8ebb688dc3c085dd978d7c4120572173c3cb87e75919e4a937dcca6ef9457",
          "started_at": "2026-07-15T14:38:22Z",
          "output": {
            "contract_version": 1,
            "task": "session_summary",
            "repo": "prd-plugin",
            "policy": {
              "enabled": false,
              "executor": "ai-collab",
              "contract_version": 1,
              "profile": "fast-capable",
              "tasks": [
                "report_summary",
                "session_summary",
                "wiki_synthesis",
                "triage_draft"
              ],
              "fallback": "main",
              "require_source_refs": true,
              "max_input_tokens": 12000,
              "max_output_tokens": 1500,
              "timeout_seconds": 30
            },
            "facts": {
              "requests_by_status": {
                "deferred": 1,
                "implemented": 80,
                "proposed": 1,
                "rejected": 1
              },
              "active_requests": [
                {
                  "id": "REQ-072",
                  "status": "proposed",
                  "severity": "low",
                  "summary": "opencode run-until-done: session.idle is a non-blocking notification, so the stop guard can't force continuation on opencode (currently degrades to a printed reminder, 0.5.95). Investigate whether opencode exposes any vetoable/continuation mechanism (a different event, a permission hook, or a 'continue' API) to enforce run-until-done, or accept the reminder as the permanent ceiling. Low priority — user rarely uses opencode."
                }
              ],
              "active_tracking": [],
              "open_health": [],
              "evidence_count": 104,
              "decision_count": 9
            },
            "findings": [],
            "source_refs": [
              ".prd_plugin/config.json",
              ".prd_plugin/state/decisions.json",
              ".prd_plugin/state/evidence.json",
              ".prd_plugin/state/health.json",
              ".prd_plugin/state/requests.json",
              ".prd_plugin/state/tracking.json",
              "REQ-072"
            ],
            "constraints": {
              "max_input_tokens": 12000,
              "max_output_tokens": 1500,
              "timeout_seconds": 30,
              "require_source_refs": true,
              "no_project_state_writes": true,
              "no_secrets_or_local_session_content": true
            }
          },
          "output_hash": "6413b750e5adf462056ec1108a5d692cc446676e520bee65af98f64bc3e9bd9b",
          "completed_at": "2026-07-15T14:38:22Z"
        },
        {
          "id": "delegated",
          "action": "reporting.delegate",
          "status": "completed",
          "resolved_input_hash": "669197e524ce450fa066ad7ef7d9da00168b780083ca6a5d7094bca3097e8568",
          "started_at": "2026-07-15T14:38:22Z",
          "output": {
            "status": "fallback",
            "action": "main",
            "reason": "disabled"
          },
          "output_hash": "e6085059f197def80ae95add1f328418107bea5436c9bd002530043646a3a95c",
          "completed_at": "2026-07-15T14:38:22Z"
        }
      ],
      "completed_at": "2026-07-15T14:38:22Z"
    },
    {
      "id": "WFR-044",
      "schema_version": "1.0",
      "workflow_id": "session.start",
      "workflow_version": 1,
      "definition_hash": "d0f98da02571e6dd27fec4aed92d3c82af9db75f8b90b997bf665635c7b7f6ca",
      "plan_hash": "b5072615ca3b7e9a3bd85d50d1f069d99ef2a9816b32c03a370745ed7a205536",
      "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
      "inputs": {},
      "idempotency_key": "hook:SessionStart:019f6638-0842-74c3-946a-a161fb86f2de",
      "status": "completed",
      "attempt": 1,
      "created_at": "2026-07-15T14:39:38Z",
      "updated_at": "2026-07-15T14:39:39Z",
      "receipts": [
        {
          "step_id": "config",
          "action": "config.audit",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "3782ec2317c0c8ee7598634310a2804d8aae4735f557498f9d3b8fae7c45e1e5",
          "completed_at": "2026-07-15T14:39:38Z"
        },
        {
          "step_id": "services",
          "action": "services.audit",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "13dcc58bd528f3efa3e6e0fa0853a6eedc376f1f3685fbd4869cbb2b60382ee3",
          "completed_at": "2026-07-15T14:39:38Z"
        },
        {
          "step_id": "state",
          "action": "state.consistency",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "5a1c6e5246defb1b6b6b90ff734db95bece2886b408ab112ed9b8e67222d5568",
          "completed_at": "2026-07-15T14:39:39Z"
        },
        {
          "step_id": "status",
          "action": "state.query",
          "input_hash": "a15231a2142a2a9a85355a8b9cbbccffe01a9c9c2c2fd8c2bc2987cdc481564a",
          "output_hash": "8ba9f7d3cc6705af37de9e3324d1258e21ccacb5ab0b2d7b389ca08885e11187",
          "completed_at": "2026-07-15T14:39:39Z"
        },
        {
          "step_id": "substrate",
          "action": "substrate.preflight",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "a6df426290b4549a59eecaa0519ead9bcc50b7fcb25bd2185ff6047960f19ccb",
          "completed_at": "2026-07-15T14:39:39Z"
        },
        {
          "step_id": "notices",
          "action": "substrate.notices",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "38b904a1cf83df048360fb2480571b749fd98d57e11f1afdffb5a74a78166fea",
          "completed_at": "2026-07-15T14:39:39Z"
        },
        {
          "step_id": "goals",
          "action": "substrate.goals",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "cdfd4de44a28140e686159f34f7b47975954c67e1d1efcef666e985acb136ed8",
          "completed_at": "2026-07-15T14:39:39Z"
        }
      ],
      "steps": [
        {
          "id": "config",
          "action": "config.audit",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-15T14:39:38Z",
          "output": {
            "status": "ok",
            "summary": {
              "settings": 195,
              "mutable": 186,
              "read_only_or_managed": 9,
              "unclassified": 0,
              "unknown": 0,
              "invalid": 0,
              "missing_using_defaults": 0
            },
            "unclassified_keys": [],
            "unknown_keys": [],
            "invalid_values": [],
            "missing_using_defaults": []
          },
          "output_hash": "3782ec2317c0c8ee7598634310a2804d8aae4735f557498f9d3b8fae7c45e1e5",
          "completed_at": "2026-07-15T14:39:38Z"
        },
        {
          "id": "services",
          "action": "services.audit",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-15T14:39:38Z",
          "output": {
            "status": "ok",
            "summary": {
              "critical": 0,
              "high": 0,
              "medium": 0,
              "low": 0
            },
            "findings": []
          },
          "output_hash": "13dcc58bd528f3efa3e6e0fa0853a6eedc376f1f3685fbd4869cbb2b60382ee3",
          "completed_at": "2026-07-15T14:39:38Z"
        },
        {
          "id": "state",
          "action": "state.consistency",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-15T14:39:38Z",
          "output": {
            "status": "ok",
            "repo_root": "D:\\Projects\\prd-plugin",
            "summary": {
              "errors": 0,
              "warnings": 0,
              "infos": 0
            },
            "findings": []
          },
          "output_hash": "5a1c6e5246defb1b6b6b90ff734db95bece2886b408ab112ed9b8e67222d5568",
          "completed_at": "2026-07-15T14:39:39Z"
        },
        {
          "id": "status",
          "action": "state.query",
          "status": "completed",
          "resolved_input_hash": "a15231a2142a2a9a85355a8b9cbbccffe01a9c9c2c2fd8c2bc2987cdc481564a",
          "started_at": "2026-07-15T14:39:39Z",
          "output": {
            "repo_root": "D:\\Projects\\prd-plugin",
            "autonomy_level": "autonomous",
            "requests_by_status": {
              "deferred": 1,
              "implemented": 80,
              "proposed": 1,
              "rejected": 1
            },
            "active_tracking": [],
            "tracking_branches": [],
            "tracking_branch_counts": {},
            "tracking_branch_errors": [],
            "open_health": [],
            "stale_count": 0,
            "skill_usage": {
              "project-decision-policy": 1,
              "project-request-intake": 1,
              "project-test-driven-implementation": 1,
              "project-verification-before-completion": 1,
              "project-llm-wiki": 1
            },
            "wiki_backfill_pending": false,
            "version_update": null
          },
          "output_hash": "8ba9f7d3cc6705af37de9e3324d1258e21ccacb5ab0b2d7b389ca08885e11187",
          "completed_at": "2026-07-15T14:39:39Z"
        },
        {
          "id": "substrate",
          "action": "substrate.preflight",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-15T14:39:39Z",
          "output": {
            "status": "disabled",
            "services": {
              "status": "ok",
              "summary": {
                "critical": 0,
                "high": 0,
                "medium": 0,
                "low": 0
              },
              "findings": []
            },
            "policy": {
              "configured": {
                "enabled": false,
                "mode": "off",
                "capabilities": [
                  "records",
                  "graph",
                  "events"
                ],
                "contract_version": 2,
                "require_source_refs": true,
                "endpoint": "http://127.0.0.1:47124",
                "manual_url": "http://127.0.0.1:47124/utcp.json",
                "knowledge_browse_url": "http://127.0.0.1:5276",
                "auth_env": "AI_COLLAB_API_KEY",
                "timeout_seconds": 5,
                "max_result_bytes": 1048576,
                "cache_ttl_seconds": 60,
                "fallback": "local",
                "automation": {
                  "discovery_on_session_start": true,
                  "knowledge_recall": true,
                  "memory_recall": true,
                  "context_enrichment": true,
                  "notices_on_session_start": false,
                  "goals_sync": false,
                  "telemetry_on_maintenance": false,
                  "reporting_dispatch": true,
                  "judgment_dispatch": true,
                  "verification_execution": true
                }
              },
              "active": false,
              "effective_mode": "off",
              "effective_capabilities": []
            }
          },
          "output_hash": "a6df426290b4549a59eecaa0519ead9bcc50b7fcb25bd2185ff6047960f19ccb",
          "completed_at": "2026-07-15T14:39:39Z"
        },
        {
          "id": "notices",
          "action": "substrate.notices",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-15T14:39:39Z",
          "output": {
            "status": "disabled"
          },
          "output_hash": "38b904a1cf83df048360fb2480571b749fd98d57e11f1afdffb5a74a78166fea",
          "completed_at": "2026-07-15T14:39:39Z"
        },
        {
          "id": "goals",
          "action": "substrate.goals",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-15T14:39:39Z",
          "output": {
            "status": "disabled",
            "created": 0,
            "observed": 0,
            "results": []
          },
          "output_hash": "cdfd4de44a28140e686159f34f7b47975954c67e1d1efcef666e985acb136ed8",
          "completed_at": "2026-07-15T14:39:39Z"
        }
      ],
      "completed_at": "2026-07-15T14:39:39Z"
    },
    {
      "id": "WFR-045",
      "schema_version": "1.0",
      "workflow_id": "session.stop",
      "workflow_version": 1,
      "definition_hash": "0cef7bb3e28321be8f85375c154955a69310ce297e47de3f3b8dd48f77a2f07d",
      "plan_hash": "a5e1d77ac734217487fc418e29c7163f4e81178e25d171e70cd4c999d527d3e8",
      "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
      "inputs": {},
      "idempotency_key": "hook:Stop:019f6638-0842-74c3-946a-a161fb86f2de",
      "status": "completed",
      "attempt": 1,
      "created_at": "2026-07-15T14:39:49Z",
      "updated_at": "2026-07-15T14:39:50Z",
      "receipts": [
        {
          "step_id": "state",
          "action": "state.consistency",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "5a1c6e5246defb1b6b6b90ff734db95bece2886b408ab112ed9b8e67222d5568",
          "completed_at": "2026-07-15T14:39:49Z"
        },
        {
          "step_id": "goals",
          "action": "substrate.goals",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "cdfd4de44a28140e686159f34f7b47975954c67e1d1efcef666e985acb136ed8",
          "completed_at": "2026-07-15T14:39:50Z"
        },
        {
          "step_id": "staleness",
          "action": "staleness.audit",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "1e81cb0ffd0a4d04626920a203b38d2d23a264cd43e807a85d375d69cae8a658",
          "completed_at": "2026-07-15T14:39:50Z"
        },
        {
          "step_id": "reflections",
          "action": "reflection.list",
          "input_hash": "0172e841ab4c13b3a4061f073f9d68a716ec87a8a5d52fde41823385e0582573",
          "output_hash": "c1b6b635c0bab21120657277f14ef6f839909875f307a3745fa48aee2bd6e449",
          "completed_at": "2026-07-15T14:39:50Z"
        },
        {
          "step_id": "bundle",
          "action": "reporting.bundle",
          "input_hash": "aed8ebb688dc3c085dd978d7c4120572173c3cb87e75919e4a937dcca6ef9457",
          "output_hash": "6413b750e5adf462056ec1108a5d692cc446676e520bee65af98f64bc3e9bd9b",
          "completed_at": "2026-07-15T14:39:50Z"
        },
        {
          "step_id": "delegated",
          "action": "reporting.delegate",
          "input_hash": "669197e524ce450fa066ad7ef7d9da00168b780083ca6a5d7094bca3097e8568",
          "output_hash": "e6085059f197def80ae95add1f328418107bea5436c9bd002530043646a3a95c",
          "completed_at": "2026-07-15T14:39:50Z"
        }
      ],
      "steps": [
        {
          "id": "state",
          "action": "state.consistency",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-15T14:39:49Z",
          "output": {
            "status": "ok",
            "repo_root": "D:\\Projects\\prd-plugin",
            "summary": {
              "errors": 0,
              "warnings": 0,
              "infos": 0
            },
            "findings": []
          },
          "output_hash": "5a1c6e5246defb1b6b6b90ff734db95bece2886b408ab112ed9b8e67222d5568",
          "completed_at": "2026-07-15T14:39:49Z"
        },
        {
          "id": "goals",
          "action": "substrate.goals",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-15T14:39:49Z",
          "output": {
            "status": "disabled",
            "created": 0,
            "observed": 0,
            "results": []
          },
          "output_hash": "cdfd4de44a28140e686159f34f7b47975954c67e1d1efcef666e985acb136ed8",
          "completed_at": "2026-07-15T14:39:50Z"
        },
        {
          "id": "staleness",
          "action": "staleness.audit",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-15T14:39:50Z",
          "output": {
            "status": "ok",
            "repo_root": "D:\\Projects\\prd-plugin",
            "counts": {
              "stale": 0
            },
            "stale": []
          },
          "output_hash": "1e81cb0ffd0a4d04626920a203b38d2d23a264cd43e807a85d375d69cae8a658",
          "completed_at": "2026-07-15T14:39:50Z"
        },
        {
          "id": "reflections",
          "action": "reflection.list",
          "status": "completed",
          "resolved_input_hash": "0172e841ab4c13b3a4061f073f9d68a716ec87a8a5d52fde41823385e0582573",
          "started_at": "2026-07-15T14:39:50Z",
          "output": {
            "enabled": false,
            "on_stop": true,
            "max_questions_per_stop": 5,
            "categories": [
              {
                "id": "behaviour_quality",
                "name": "Behaviour quality",
                "enabled": true,
                "question_count": 3
              },
              {
                "id": "harness_friction",
                "name": "Harness friction",
                "enabled": true,
                "question_count": 2
              }
            ],
            "questions": [
              {
                "id": "RFQ-001",
                "text": "Based on the work you just carried out, would you classify your behaviour as good? Answer yes or no and cite observable evidence.",
                "enabled": true,
                "category_id": "behaviour_quality",
                "category_name": "Behaviour quality",
                "effective_enabled": false
              },
              {
                "id": "RFQ-002",
                "text": "If you answered no, what could you do differently to correct your behaviour?",
                "enabled": true,
                "category_id": "behaviour_quality",
                "category_name": "Behaviour quality",
                "effective_enabled": false
              },
              {
                "id": "RFQ-003",
                "text": "Would another attempt using the identified good behaviours materially improve the outcome? Answer yes or no and state the next corrective action if yes.",
                "enabled": true,
                "category_id": "behaviour_quality",
                "category_name": "Behaviour quality",
                "effective_enabled": false
              },
              {
                "id": "RFQ-004",
                "text": "What harness friction points made this work more difficult?",
                "enabled": true,
                "category_id": "harness_friction",
                "category_name": "Harness friction",
                "effective_enabled": false
              },
              {
                "id": "RFQ-005",
                "text": "What up to three changes would most improve friction in the harness?",
                "enabled": true,
                "category_id": "harness_friction",
                "category_name": "Harness friction",
                "effective_enabled": false
              }
            ]
          },
          "output_hash": "c1b6b635c0bab21120657277f14ef6f839909875f307a3745fa48aee2bd6e449",
          "completed_at": "2026-07-15T14:39:50Z"
        },
        {
          "id": "bundle",
          "action": "reporting.bundle",
          "status": "completed",
          "resolved_input_hash": "aed8ebb688dc3c085dd978d7c4120572173c3cb87e75919e4a937dcca6ef9457",
          "started_at": "2026-07-15T14:39:50Z",
          "output": {
            "contract_version": 1,
            "task": "session_summary",
            "repo": "prd-plugin",
            "policy": {
              "enabled": false,
              "executor": "ai-collab",
              "contract_version": 1,
              "profile": "fast-capable",
              "tasks": [
                "report_summary",
                "session_summary",
                "wiki_synthesis",
                "triage_draft"
              ],
              "fallback": "main",
              "require_source_refs": true,
              "max_input_tokens": 12000,
              "max_output_tokens": 1500,
              "timeout_seconds": 30
            },
            "facts": {
              "requests_by_status": {
                "deferred": 1,
                "implemented": 80,
                "proposed": 1,
                "rejected": 1
              },
              "active_requests": [
                {
                  "id": "REQ-072",
                  "status": "proposed",
                  "severity": "low",
                  "summary": "opencode run-until-done: session.idle is a non-blocking notification, so the stop guard can't force continuation on opencode (currently degrades to a printed reminder, 0.5.95). Investigate whether opencode exposes any vetoable/continuation mechanism (a different event, a permission hook, or a 'continue' API) to enforce run-until-done, or accept the reminder as the permanent ceiling. Low priority — user rarely uses opencode."
                }
              ],
              "active_tracking": [],
              "open_health": [],
              "evidence_count": 104,
              "decision_count": 9
            },
            "findings": [],
            "source_refs": [
              ".prd_plugin/config.json",
              ".prd_plugin/state/decisions.json",
              ".prd_plugin/state/evidence.json",
              ".prd_plugin/state/health.json",
              ".prd_plugin/state/requests.json",
              ".prd_plugin/state/tracking.json",
              "REQ-072"
            ],
            "constraints": {
              "max_input_tokens": 12000,
              "max_output_tokens": 1500,
              "timeout_seconds": 30,
              "require_source_refs": true,
              "no_project_state_writes": true,
              "no_secrets_or_local_session_content": true
            }
          },
          "output_hash": "6413b750e5adf462056ec1108a5d692cc446676e520bee65af98f64bc3e9bd9b",
          "completed_at": "2026-07-15T14:39:50Z"
        },
        {
          "id": "delegated",
          "action": "reporting.delegate",
          "status": "completed",
          "resolved_input_hash": "669197e524ce450fa066ad7ef7d9da00168b780083ca6a5d7094bca3097e8568",
          "started_at": "2026-07-15T14:39:50Z",
          "output": {
            "status": "fallback",
            "action": "main",
            "reason": "disabled"
          },
          "output_hash": "e6085059f197def80ae95add1f328418107bea5436c9bd002530043646a3a95c",
          "completed_at": "2026-07-15T14:39:50Z"
        }
      ],
      "completed_at": "2026-07-15T14:39:50Z"
    },
    {
      "id": "WFR-046",
      "schema_version": "1.0",
      "workflow_id": "session.start",
      "workflow_version": 1,
      "definition_hash": "d0f98da02571e6dd27fec4aed92d3c82af9db75f8b90b997bf665635c7b7f6ca",
      "plan_hash": "b5072615ca3b7e9a3bd85d50d1f069d99ef2a9816b32c03a370745ed7a205536",
      "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
      "inputs": {},
      "idempotency_key": "hook:SessionStart:019f663a-85e5-7021-9b52-4edf72a1c30d",
      "status": "completed",
      "attempt": 1,
      "created_at": "2026-07-15T14:42:21Z",
      "updated_at": "2026-07-15T14:42:22Z",
      "receipts": [
        {
          "step_id": "config",
          "action": "config.audit",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "3782ec2317c0c8ee7598634310a2804d8aae4735f557498f9d3b8fae7c45e1e5",
          "completed_at": "2026-07-15T14:42:21Z"
        },
        {
          "step_id": "services",
          "action": "services.audit",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "13dcc58bd528f3efa3e6e0fa0853a6eedc376f1f3685fbd4869cbb2b60382ee3",
          "completed_at": "2026-07-15T14:42:21Z"
        },
        {
          "step_id": "state",
          "action": "state.consistency",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "5a1c6e5246defb1b6b6b90ff734db95bece2886b408ab112ed9b8e67222d5568",
          "completed_at": "2026-07-15T14:42:21Z"
        },
        {
          "step_id": "status",
          "action": "state.query",
          "input_hash": "a15231a2142a2a9a85355a8b9cbbccffe01a9c9c2c2fd8c2bc2987cdc481564a",
          "output_hash": "8ba9f7d3cc6705af37de9e3324d1258e21ccacb5ab0b2d7b389ca08885e11187",
          "completed_at": "2026-07-15T14:42:22Z"
        },
        {
          "step_id": "substrate",
          "action": "substrate.preflight",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "a6df426290b4549a59eecaa0519ead9bcc50b7fcb25bd2185ff6047960f19ccb",
          "completed_at": "2026-07-15T14:42:22Z"
        },
        {
          "step_id": "notices",
          "action": "substrate.notices",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "38b904a1cf83df048360fb2480571b749fd98d57e11f1afdffb5a74a78166fea",
          "completed_at": "2026-07-15T14:42:22Z"
        },
        {
          "step_id": "goals",
          "action": "substrate.goals",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "cdfd4de44a28140e686159f34f7b47975954c67e1d1efcef666e985acb136ed8",
          "completed_at": "2026-07-15T14:42:22Z"
        }
      ],
      "steps": [
        {
          "id": "config",
          "action": "config.audit",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-15T14:42:21Z",
          "output": {
            "status": "ok",
            "summary": {
              "settings": 195,
              "mutable": 186,
              "read_only_or_managed": 9,
              "unclassified": 0,
              "unknown": 0,
              "invalid": 0,
              "missing_using_defaults": 0
            },
            "unclassified_keys": [],
            "unknown_keys": [],
            "invalid_values": [],
            "missing_using_defaults": []
          },
          "output_hash": "3782ec2317c0c8ee7598634310a2804d8aae4735f557498f9d3b8fae7c45e1e5",
          "completed_at": "2026-07-15T14:42:21Z"
        },
        {
          "id": "services",
          "action": "services.audit",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-15T14:42:21Z",
          "output": {
            "status": "ok",
            "summary": {
              "critical": 0,
              "high": 0,
              "medium": 0,
              "low": 0
            },
            "findings": []
          },
          "output_hash": "13dcc58bd528f3efa3e6e0fa0853a6eedc376f1f3685fbd4869cbb2b60382ee3",
          "completed_at": "2026-07-15T14:42:21Z"
        },
        {
          "id": "state",
          "action": "state.consistency",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-15T14:42:21Z",
          "output": {
            "status": "ok",
            "repo_root": "D:\\Projects\\prd-plugin",
            "summary": {
              "errors": 0,
              "warnings": 0,
              "infos": 0
            },
            "findings": []
          },
          "output_hash": "5a1c6e5246defb1b6b6b90ff734db95bece2886b408ab112ed9b8e67222d5568",
          "completed_at": "2026-07-15T14:42:21Z"
        },
        {
          "id": "status",
          "action": "state.query",
          "status": "completed",
          "resolved_input_hash": "a15231a2142a2a9a85355a8b9cbbccffe01a9c9c2c2fd8c2bc2987cdc481564a",
          "started_at": "2026-07-15T14:42:21Z",
          "output": {
            "repo_root": "D:\\Projects\\prd-plugin",
            "autonomy_level": "autonomous",
            "requests_by_status": {
              "deferred": 1,
              "implemented": 80,
              "proposed": 1,
              "rejected": 1
            },
            "active_tracking": [],
            "tracking_branches": [],
            "tracking_branch_counts": {},
            "tracking_branch_errors": [],
            "open_health": [],
            "stale_count": 0,
            "skill_usage": {
              "project-decision-policy": 1,
              "project-request-intake": 1,
              "project-test-driven-implementation": 1,
              "project-verification-before-completion": 1,
              "project-llm-wiki": 1
            },
            "wiki_backfill_pending": false,
            "version_update": null
          },
          "output_hash": "8ba9f7d3cc6705af37de9e3324d1258e21ccacb5ab0b2d7b389ca08885e11187",
          "completed_at": "2026-07-15T14:42:22Z"
        },
        {
          "id": "substrate",
          "action": "substrate.preflight",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-15T14:42:22Z",
          "output": {
            "status": "disabled",
            "services": {
              "status": "ok",
              "summary": {
                "critical": 0,
                "high": 0,
                "medium": 0,
                "low": 0
              },
              "findings": []
            },
            "policy": {
              "configured": {
                "enabled": false,
                "mode": "off",
                "capabilities": [
                  "records",
                  "graph",
                  "events"
                ],
                "contract_version": 2,
                "require_source_refs": true,
                "endpoint": "http://127.0.0.1:47124",
                "manual_url": "http://127.0.0.1:47124/utcp.json",
                "knowledge_browse_url": "http://127.0.0.1:5276",
                "auth_env": "AI_COLLAB_API_KEY",
                "timeout_seconds": 5,
                "max_result_bytes": 1048576,
                "cache_ttl_seconds": 60,
                "fallback": "local",
                "automation": {
                  "discovery_on_session_start": true,
                  "knowledge_recall": true,
                  "memory_recall": true,
                  "context_enrichment": true,
                  "notices_on_session_start": false,
                  "goals_sync": false,
                  "telemetry_on_maintenance": false,
                  "reporting_dispatch": true,
                  "judgment_dispatch": true,
                  "verification_execution": true
                }
              },
              "active": false,
              "effective_mode": "off",
              "effective_capabilities": []
            }
          },
          "output_hash": "a6df426290b4549a59eecaa0519ead9bcc50b7fcb25bd2185ff6047960f19ccb",
          "completed_at": "2026-07-15T14:42:22Z"
        },
        {
          "id": "notices",
          "action": "substrate.notices",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-15T14:42:22Z",
          "output": {
            "status": "disabled"
          },
          "output_hash": "38b904a1cf83df048360fb2480571b749fd98d57e11f1afdffb5a74a78166fea",
          "completed_at": "2026-07-15T14:42:22Z"
        },
        {
          "id": "goals",
          "action": "substrate.goals",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-15T14:42:22Z",
          "output": {
            "status": "disabled",
            "created": 0,
            "observed": 0,
            "results": []
          },
          "output_hash": "cdfd4de44a28140e686159f34f7b47975954c67e1d1efcef666e985acb136ed8",
          "completed_at": "2026-07-15T14:42:22Z"
        }
      ],
      "completed_at": "2026-07-15T14:42:22Z"
    },
    {
      "id": "WFR-047",
      "schema_version": "1.0",
      "workflow_id": "session.stop",
      "workflow_version": 1,
      "definition_hash": "0cef7bb3e28321be8f85375c154955a69310ce297e47de3f3b8dd48f77a2f07d",
      "plan_hash": "a5e1d77ac734217487fc418e29c7163f4e81178e25d171e70cd4c999d527d3e8",
      "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
      "inputs": {},
      "idempotency_key": "hook:Stop:019f663a-85e5-7021-9b52-4edf72a1c30d",
      "status": "completed",
      "attempt": 1,
      "created_at": "2026-07-15T14:42:24Z",
      "updated_at": "2026-07-15T14:42:25Z",
      "receipts": [
        {
          "step_id": "state",
          "action": "state.consistency",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "5a1c6e5246defb1b6b6b90ff734db95bece2886b408ab112ed9b8e67222d5568",
          "completed_at": "2026-07-15T14:42:24Z"
        },
        {
          "step_id": "goals",
          "action": "substrate.goals",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "cdfd4de44a28140e686159f34f7b47975954c67e1d1efcef666e985acb136ed8",
          "completed_at": "2026-07-15T14:42:24Z"
        },
        {
          "step_id": "staleness",
          "action": "staleness.audit",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "1e81cb0ffd0a4d04626920a203b38d2d23a264cd43e807a85d375d69cae8a658",
          "completed_at": "2026-07-15T14:42:24Z"
        },
        {
          "step_id": "reflections",
          "action": "reflection.list",
          "input_hash": "0172e841ab4c13b3a4061f073f9d68a716ec87a8a5d52fde41823385e0582573",
          "output_hash": "c1b6b635c0bab21120657277f14ef6f839909875f307a3745fa48aee2bd6e449",
          "completed_at": "2026-07-15T14:42:24Z"
        },
        {
          "step_id": "bundle",
          "action": "reporting.bundle",
          "input_hash": "aed8ebb688dc3c085dd978d7c4120572173c3cb87e75919e4a937dcca6ef9457",
          "output_hash": "6413b750e5adf462056ec1108a5d692cc446676e520bee65af98f64bc3e9bd9b",
          "completed_at": "2026-07-15T14:42:24Z"
        },
        {
          "step_id": "delegated",
          "action": "reporting.delegate",
          "input_hash": "669197e524ce450fa066ad7ef7d9da00168b780083ca6a5d7094bca3097e8568",
          "output_hash": "e6085059f197def80ae95add1f328418107bea5436c9bd002530043646a3a95c",
          "completed_at": "2026-07-15T14:42:24Z"
        }
      ],
      "steps": [
        {
          "id": "state",
          "action": "state.consistency",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-15T14:42:24Z",
          "output": {
            "status": "ok",
            "repo_root": "D:\\Projects\\prd-plugin",
            "summary": {
              "errors": 0,
              "warnings": 0,
              "infos": 0
            },
            "findings": []
          },
          "output_hash": "5a1c6e5246defb1b6b6b90ff734db95bece2886b408ab112ed9b8e67222d5568",
          "completed_at": "2026-07-15T14:42:24Z"
        },
        {
          "id": "goals",
          "action": "substrate.goals",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-15T14:42:24Z",
          "output": {
            "status": "disabled",
            "created": 0,
            "observed": 0,
            "results": []
          },
          "output_hash": "cdfd4de44a28140e686159f34f7b47975954c67e1d1efcef666e985acb136ed8",
          "completed_at": "2026-07-15T14:42:24Z"
        },
        {
          "id": "staleness",
          "action": "staleness.audit",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-15T14:42:24Z",
          "output": {
            "status": "ok",
            "repo_root": "D:\\Projects\\prd-plugin",
            "counts": {
              "stale": 0
            },
            "stale": []
          },
          "output_hash": "1e81cb0ffd0a4d04626920a203b38d2d23a264cd43e807a85d375d69cae8a658",
          "completed_at": "2026-07-15T14:42:24Z"
        },
        {
          "id": "reflections",
          "action": "reflection.list",
          "status": "completed",
          "resolved_input_hash": "0172e841ab4c13b3a4061f073f9d68a716ec87a8a5d52fde41823385e0582573",
          "started_at": "2026-07-15T14:42:24Z",
          "output": {
            "enabled": false,
            "on_stop": true,
            "max_questions_per_stop": 5,
            "categories": [
              {
                "id": "behaviour_quality",
                "name": "Behaviour quality",
                "enabled": true,
                "question_count": 3
              },
              {
                "id": "harness_friction",
                "name": "Harness friction",
                "enabled": true,
                "question_count": 2
              }
            ],
            "questions": [
              {
                "id": "RFQ-001",
                "text": "Based on the work you just carried out, would you classify your behaviour as good? Answer yes or no and cite observable evidence.",
                "enabled": true,
                "category_id": "behaviour_quality",
                "category_name": "Behaviour quality",
                "effective_enabled": false
              },
              {
                "id": "RFQ-002",
                "text": "If you answered no, what could you do differently to correct your behaviour?",
                "enabled": true,
                "category_id": "behaviour_quality",
                "category_name": "Behaviour quality",
                "effective_enabled": false
              },
              {
                "id": "RFQ-003",
                "text": "Would another attempt using the identified good behaviours materially improve the outcome? Answer yes or no and state the next corrective action if yes.",
                "enabled": true,
                "category_id": "behaviour_quality",
                "category_name": "Behaviour quality",
                "effective_enabled": false
              },
              {
                "id": "RFQ-004",
                "text": "What harness friction points made this work more difficult?",
                "enabled": true,
                "category_id": "harness_friction",
                "category_name": "Harness friction",
                "effective_enabled": false
              },
              {
                "id": "RFQ-005",
                "text": "What up to three changes would most improve friction in the harness?",
                "enabled": true,
                "category_id": "harness_friction",
                "category_name": "Harness friction",
                "effective_enabled": false
              }
            ]
          },
          "output_hash": "c1b6b635c0bab21120657277f14ef6f839909875f307a3745fa48aee2bd6e449",
          "completed_at": "2026-07-15T14:42:24Z"
        },
        {
          "id": "bundle",
          "action": "reporting.bundle",
          "status": "completed",
          "resolved_input_hash": "aed8ebb688dc3c085dd978d7c4120572173c3cb87e75919e4a937dcca6ef9457",
          "started_at": "2026-07-15T14:42:24Z",
          "output": {
            "contract_version": 1,
            "task": "session_summary",
            "repo": "prd-plugin",
            "policy": {
              "enabled": false,
              "executor": "ai-collab",
              "contract_version": 1,
              "profile": "fast-capable",
              "tasks": [
                "report_summary",
                "session_summary",
                "wiki_synthesis",
                "triage_draft"
              ],
              "fallback": "main",
              "require_source_refs": true,
              "max_input_tokens": 12000,
              "max_output_tokens": 1500,
              "timeout_seconds": 30
            },
            "facts": {
              "requests_by_status": {
                "deferred": 1,
                "implemented": 80,
                "proposed": 1,
                "rejected": 1
              },
              "active_requests": [
                {
                  "id": "REQ-072",
                  "status": "proposed",
                  "severity": "low",
                  "summary": "opencode run-until-done: session.idle is a non-blocking notification, so the stop guard can't force continuation on opencode (currently degrades to a printed reminder, 0.5.95). Investigate whether opencode exposes any vetoable/continuation mechanism (a different event, a permission hook, or a 'continue' API) to enforce run-until-done, or accept the reminder as the permanent ceiling. Low priority — user rarely uses opencode."
                }
              ],
              "active_tracking": [],
              "open_health": [],
              "evidence_count": 104,
              "decision_count": 9
            },
            "findings": [],
            "source_refs": [
              ".prd_plugin/config.json",
              ".prd_plugin/state/decisions.json",
              ".prd_plugin/state/evidence.json",
              ".prd_plugin/state/health.json",
              ".prd_plugin/state/requests.json",
              ".prd_plugin/state/tracking.json",
              "REQ-072"
            ],
            "constraints": {
              "max_input_tokens": 12000,
              "max_output_tokens": 1500,
              "timeout_seconds": 30,
              "require_source_refs": true,
              "no_project_state_writes": true,
              "no_secrets_or_local_session_content": true
            }
          },
          "output_hash": "6413b750e5adf462056ec1108a5d692cc446676e520bee65af98f64bc3e9bd9b",
          "completed_at": "2026-07-15T14:42:24Z"
        },
        {
          "id": "delegated",
          "action": "reporting.delegate",
          "status": "completed",
          "resolved_input_hash": "669197e524ce450fa066ad7ef7d9da00168b780083ca6a5d7094bca3097e8568",
          "started_at": "2026-07-15T14:42:24Z",
          "output": {
            "status": "fallback",
            "action": "main",
            "reason": "disabled"
          },
          "output_hash": "e6085059f197def80ae95add1f328418107bea5436c9bd002530043646a3a95c",
          "completed_at": "2026-07-15T14:42:24Z"
        }
      ],
      "completed_at": "2026-07-15T14:42:25Z"
    },
    {
      "id": "WFR-048",
      "schema_version": "1.0",
      "workflow_id": "session.start",
      "workflow_version": 1,
      "definition_hash": "d0f98da02571e6dd27fec4aed92d3c82af9db75f8b90b997bf665635c7b7f6ca",
      "plan_hash": "b5072615ca3b7e9a3bd85d50d1f069d99ef2a9816b32c03a370745ed7a205536",
      "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
      "inputs": {},
      "idempotency_key": "hook:SessionStart:019f663b-6a32-7611-b5ae-1d5c7cba8667",
      "status": "completed",
      "attempt": 1,
      "created_at": "2026-07-15T14:43:20Z",
      "updated_at": "2026-07-15T14:43:21Z",
      "receipts": [
        {
          "step_id": "config",
          "action": "config.audit",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "3782ec2317c0c8ee7598634310a2804d8aae4735f557498f9d3b8fae7c45e1e5",
          "completed_at": "2026-07-15T14:43:20Z"
        },
        {
          "step_id": "services",
          "action": "services.audit",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "13dcc58bd528f3efa3e6e0fa0853a6eedc376f1f3685fbd4869cbb2b60382ee3",
          "completed_at": "2026-07-15T14:43:20Z"
        },
        {
          "step_id": "state",
          "action": "state.consistency",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "5a1c6e5246defb1b6b6b90ff734db95bece2886b408ab112ed9b8e67222d5568",
          "completed_at": "2026-07-15T14:43:20Z"
        },
        {
          "step_id": "status",
          "action": "state.query",
          "input_hash": "a15231a2142a2a9a85355a8b9cbbccffe01a9c9c2c2fd8c2bc2987cdc481564a",
          "output_hash": "8ba9f7d3cc6705af37de9e3324d1258e21ccacb5ab0b2d7b389ca08885e11187",
          "completed_at": "2026-07-15T14:43:20Z"
        },
        {
          "step_id": "substrate",
          "action": "substrate.preflight",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "a6df426290b4549a59eecaa0519ead9bcc50b7fcb25bd2185ff6047960f19ccb",
          "completed_at": "2026-07-15T14:43:21Z"
        },
        {
          "step_id": "notices",
          "action": "substrate.notices",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "38b904a1cf83df048360fb2480571b749fd98d57e11f1afdffb5a74a78166fea",
          "completed_at": "2026-07-15T14:43:21Z"
        },
        {
          "step_id": "goals",
          "action": "substrate.goals",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "cdfd4de44a28140e686159f34f7b47975954c67e1d1efcef666e985acb136ed8",
          "completed_at": "2026-07-15T14:43:21Z"
        }
      ],
      "steps": [
        {
          "id": "config",
          "action": "config.audit",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-15T14:43:20Z",
          "output": {
            "status": "ok",
            "summary": {
              "settings": 195,
              "mutable": 186,
              "read_only_or_managed": 9,
              "unclassified": 0,
              "unknown": 0,
              "invalid": 0,
              "missing_using_defaults": 0
            },
            "unclassified_keys": [],
            "unknown_keys": [],
            "invalid_values": [],
            "missing_using_defaults": []
          },
          "output_hash": "3782ec2317c0c8ee7598634310a2804d8aae4735f557498f9d3b8fae7c45e1e5",
          "completed_at": "2026-07-15T14:43:20Z"
        },
        {
          "id": "services",
          "action": "services.audit",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-15T14:43:20Z",
          "output": {
            "status": "ok",
            "summary": {
              "critical": 0,
              "high": 0,
              "medium": 0,
              "low": 0
            },
            "findings": []
          },
          "output_hash": "13dcc58bd528f3efa3e6e0fa0853a6eedc376f1f3685fbd4869cbb2b60382ee3",
          "completed_at": "2026-07-15T14:43:20Z"
        },
        {
          "id": "state",
          "action": "state.consistency",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-15T14:43:20Z",
          "output": {
            "status": "ok",
            "repo_root": "D:\\Projects\\prd-plugin",
            "summary": {
              "errors": 0,
              "warnings": 0,
              "infos": 0
            },
            "findings": []
          },
          "output_hash": "5a1c6e5246defb1b6b6b90ff734db95bece2886b408ab112ed9b8e67222d5568",
          "completed_at": "2026-07-15T14:43:20Z"
        },
        {
          "id": "status",
          "action": "state.query",
          "status": "completed",
          "resolved_input_hash": "a15231a2142a2a9a85355a8b9cbbccffe01a9c9c2c2fd8c2bc2987cdc481564a",
          "started_at": "2026-07-15T14:43:20Z",
          "output": {
            "repo_root": "D:\\Projects\\prd-plugin",
            "autonomy_level": "autonomous",
            "requests_by_status": {
              "deferred": 1,
              "implemented": 80,
              "proposed": 1,
              "rejected": 1
            },
            "active_tracking": [],
            "tracking_branches": [],
            "tracking_branch_counts": {},
            "tracking_branch_errors": [],
            "open_health": [],
            "stale_count": 0,
            "skill_usage": {
              "project-decision-policy": 1,
              "project-request-intake": 1,
              "project-test-driven-implementation": 1,
              "project-verification-before-completion": 1,
              "project-llm-wiki": 1
            },
            "wiki_backfill_pending": false,
            "version_update": null
          },
          "output_hash": "8ba9f7d3cc6705af37de9e3324d1258e21ccacb5ab0b2d7b389ca08885e11187",
          "completed_at": "2026-07-15T14:43:20Z"
        },
        {
          "id": "substrate",
          "action": "substrate.preflight",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-15T14:43:21Z",
          "output": {
            "status": "disabled",
            "services": {
              "status": "ok",
              "summary": {
                "critical": 0,
                "high": 0,
                "medium": 0,
                "low": 0
              },
              "findings": []
            },
            "policy": {
              "configured": {
                "enabled": false,
                "mode": "off",
                "capabilities": [
                  "records",
                  "graph",
                  "events"
                ],
                "contract_version": 2,
                "require_source_refs": true,
                "endpoint": "http://127.0.0.1:47124",
                "manual_url": "http://127.0.0.1:47124/utcp.json",
                "knowledge_browse_url": "http://127.0.0.1:5276",
                "auth_env": "AI_COLLAB_API_KEY",
                "timeout_seconds": 5,
                "max_result_bytes": 1048576,
                "cache_ttl_seconds": 60,
                "fallback": "local",
                "automation": {
                  "discovery_on_session_start": true,
                  "knowledge_recall": true,
                  "memory_recall": true,
                  "context_enrichment": true,
                  "notices_on_session_start": false,
                  "goals_sync": false,
                  "telemetry_on_maintenance": false,
                  "reporting_dispatch": true,
                  "judgment_dispatch": true,
                  "verification_execution": true
                }
              },
              "active": false,
              "effective_mode": "off",
              "effective_capabilities": []
            }
          },
          "output_hash": "a6df426290b4549a59eecaa0519ead9bcc50b7fcb25bd2185ff6047960f19ccb",
          "completed_at": "2026-07-15T14:43:21Z"
        },
        {
          "id": "notices",
          "action": "substrate.notices",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-15T14:43:21Z",
          "output": {
            "status": "disabled"
          },
          "output_hash": "38b904a1cf83df048360fb2480571b749fd98d57e11f1afdffb5a74a78166fea",
          "completed_at": "2026-07-15T14:43:21Z"
        },
        {
          "id": "goals",
          "action": "substrate.goals",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-15T14:43:21Z",
          "output": {
            "status": "disabled",
            "created": 0,
            "observed": 0,
            "results": []
          },
          "output_hash": "cdfd4de44a28140e686159f34f7b47975954c67e1d1efcef666e985acb136ed8",
          "completed_at": "2026-07-15T14:43:21Z"
        }
      ],
      "completed_at": "2026-07-15T14:43:21Z"
    },
    {
      "id": "WFR-049",
      "schema_version": "1.0",
      "workflow_id": "session.stop",
      "workflow_version": 1,
      "definition_hash": "0cef7bb3e28321be8f85375c154955a69310ce297e47de3f3b8dd48f77a2f07d",
      "plan_hash": "a5e1d77ac734217487fc418e29c7163f4e81178e25d171e70cd4c999d527d3e8",
      "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
      "inputs": {},
      "idempotency_key": "hook:Stop:019f663b-6a32-7611-b5ae-1d5c7cba8667",
      "status": "completed",
      "attempt": 1,
      "created_at": "2026-07-15T14:43:24Z",
      "updated_at": "2026-07-15T14:43:25Z",
      "receipts": [
        {
          "step_id": "state",
          "action": "state.consistency",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "5a1c6e5246defb1b6b6b90ff734db95bece2886b408ab112ed9b8e67222d5568",
          "completed_at": "2026-07-15T14:43:25Z"
        },
        {
          "step_id": "goals",
          "action": "substrate.goals",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "cdfd4de44a28140e686159f34f7b47975954c67e1d1efcef666e985acb136ed8",
          "completed_at": "2026-07-15T14:43:25Z"
        },
        {
          "step_id": "staleness",
          "action": "staleness.audit",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "1e81cb0ffd0a4d04626920a203b38d2d23a264cd43e807a85d375d69cae8a658",
          "completed_at": "2026-07-15T14:43:25Z"
        },
        {
          "step_id": "reflections",
          "action": "reflection.list",
          "input_hash": "0172e841ab4c13b3a4061f073f9d68a716ec87a8a5d52fde41823385e0582573",
          "output_hash": "c1b6b635c0bab21120657277f14ef6f839909875f307a3745fa48aee2bd6e449",
          "completed_at": "2026-07-15T14:43:25Z"
        },
        {
          "step_id": "bundle",
          "action": "reporting.bundle",
          "input_hash": "aed8ebb688dc3c085dd978d7c4120572173c3cb87e75919e4a937dcca6ef9457",
          "output_hash": "6413b750e5adf462056ec1108a5d692cc446676e520bee65af98f64bc3e9bd9b",
          "completed_at": "2026-07-15T14:43:25Z"
        },
        {
          "step_id": "delegated",
          "action": "reporting.delegate",
          "input_hash": "669197e524ce450fa066ad7ef7d9da00168b780083ca6a5d7094bca3097e8568",
          "output_hash": "e6085059f197def80ae95add1f328418107bea5436c9bd002530043646a3a95c",
          "completed_at": "2026-07-15T14:43:25Z"
        }
      ],
      "steps": [
        {
          "id": "state",
          "action": "state.consistency",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-15T14:43:24Z",
          "output": {
            "status": "ok",
            "repo_root": "D:\\Projects\\prd-plugin",
            "summary": {
              "errors": 0,
              "warnings": 0,
              "infos": 0
            },
            "findings": []
          },
          "output_hash": "5a1c6e5246defb1b6b6b90ff734db95bece2886b408ab112ed9b8e67222d5568",
          "completed_at": "2026-07-15T14:43:25Z"
        },
        {
          "id": "goals",
          "action": "substrate.goals",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-15T14:43:25Z",
          "output": {
            "status": "disabled",
            "created": 0,
            "observed": 0,
            "results": []
          },
          "output_hash": "cdfd4de44a28140e686159f34f7b47975954c67e1d1efcef666e985acb136ed8",
          "completed_at": "2026-07-15T14:43:25Z"
        },
        {
          "id": "staleness",
          "action": "staleness.audit",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-15T14:43:25Z",
          "output": {
            "status": "ok",
            "repo_root": "D:\\Projects\\prd-plugin",
            "counts": {
              "stale": 0
            },
            "stale": []
          },
          "output_hash": "1e81cb0ffd0a4d04626920a203b38d2d23a264cd43e807a85d375d69cae8a658",
          "completed_at": "2026-07-15T14:43:25Z"
        },
        {
          "id": "reflections",
          "action": "reflection.list",
          "status": "completed",
          "resolved_input_hash": "0172e841ab4c13b3a4061f073f9d68a716ec87a8a5d52fde41823385e0582573",
          "started_at": "2026-07-15T14:43:25Z",
          "output": {
            "enabled": false,
            "on_stop": true,
            "max_questions_per_stop": 5,
            "categories": [
              {
                "id": "behaviour_quality",
                "name": "Behaviour quality",
                "enabled": true,
                "question_count": 3
              },
              {
                "id": "harness_friction",
                "name": "Harness friction",
                "enabled": true,
                "question_count": 2
              }
            ],
            "questions": [
              {
                "id": "RFQ-001",
                "text": "Based on the work you just carried out, would you classify your behaviour as good? Answer yes or no and cite observable evidence.",
                "enabled": true,
                "category_id": "behaviour_quality",
                "category_name": "Behaviour quality",
                "effective_enabled": false
              },
              {
                "id": "RFQ-002",
                "text": "If you answered no, what could you do differently to correct your behaviour?",
                "enabled": true,
                "category_id": "behaviour_quality",
                "category_name": "Behaviour quality",
                "effective_enabled": false
              },
              {
                "id": "RFQ-003",
                "text": "Would another attempt using the identified good behaviours materially improve the outcome? Answer yes or no and state the next corrective action if yes.",
                "enabled": true,
                "category_id": "behaviour_quality",
                "category_name": "Behaviour quality",
                "effective_enabled": false
              },
              {
                "id": "RFQ-004",
                "text": "What harness friction points made this work more difficult?",
                "enabled": true,
                "category_id": "harness_friction",
                "category_name": "Harness friction",
                "effective_enabled": false
              },
              {
                "id": "RFQ-005",
                "text": "What up to three changes would most improve friction in the harness?",
                "enabled": true,
                "category_id": "harness_friction",
                "category_name": "Harness friction",
                "effective_enabled": false
              }
            ]
          },
          "output_hash": "c1b6b635c0bab21120657277f14ef6f839909875f307a3745fa48aee2bd6e449",
          "completed_at": "2026-07-15T14:43:25Z"
        },
        {
          "id": "bundle",
          "action": "reporting.bundle",
          "status": "completed",
          "resolved_input_hash": "aed8ebb688dc3c085dd978d7c4120572173c3cb87e75919e4a937dcca6ef9457",
          "started_at": "2026-07-15T14:43:25Z",
          "output": {
            "contract_version": 1,
            "task": "session_summary",
            "repo": "prd-plugin",
            "policy": {
              "enabled": false,
              "executor": "ai-collab",
              "contract_version": 1,
              "profile": "fast-capable",
              "tasks": [
                "report_summary",
                "session_summary",
                "wiki_synthesis",
                "triage_draft"
              ],
              "fallback": "main",
              "require_source_refs": true,
              "max_input_tokens": 12000,
              "max_output_tokens": 1500,
              "timeout_seconds": 30
            },
            "facts": {
              "requests_by_status": {
                "deferred": 1,
                "implemented": 80,
                "proposed": 1,
                "rejected": 1
              },
              "active_requests": [
                {
                  "id": "REQ-072",
                  "status": "proposed",
                  "severity": "low",
                  "summary": "opencode run-until-done: session.idle is a non-blocking notification, so the stop guard can't force continuation on opencode (currently degrades to a printed reminder, 0.5.95). Investigate whether opencode exposes any vetoable/continuation mechanism (a different event, a permission hook, or a 'continue' API) to enforce run-until-done, or accept the reminder as the permanent ceiling. Low priority — user rarely uses opencode."
                }
              ],
              "active_tracking": [],
              "open_health": [],
              "evidence_count": 104,
              "decision_count": 9
            },
            "findings": [],
            "source_refs": [
              ".prd_plugin/config.json",
              ".prd_plugin/state/decisions.json",
              ".prd_plugin/state/evidence.json",
              ".prd_plugin/state/health.json",
              ".prd_plugin/state/requests.json",
              ".prd_plugin/state/tracking.json",
              "REQ-072"
            ],
            "constraints": {
              "max_input_tokens": 12000,
              "max_output_tokens": 1500,
              "timeout_seconds": 30,
              "require_source_refs": true,
              "no_project_state_writes": true,
              "no_secrets_or_local_session_content": true
            }
          },
          "output_hash": "6413b750e5adf462056ec1108a5d692cc446676e520bee65af98f64bc3e9bd9b",
          "completed_at": "2026-07-15T14:43:25Z"
        },
        {
          "id": "delegated",
          "action": "reporting.delegate",
          "status": "completed",
          "resolved_input_hash": "669197e524ce450fa066ad7ef7d9da00168b780083ca6a5d7094bca3097e8568",
          "started_at": "2026-07-15T14:43:25Z",
          "output": {
            "status": "fallback",
            "action": "main",
            "reason": "disabled"
          },
          "output_hash": "e6085059f197def80ae95add1f328418107bea5436c9bd002530043646a3a95c",
          "completed_at": "2026-07-15T14:43:25Z"
        }
      ],
      "completed_at": "2026-07-15T14:43:25Z"
    },
    {
      "id": "WFR-050",
      "schema_version": "1.0",
      "workflow_id": "session.start",
      "workflow_version": 1,
      "definition_hash": "d0f98da02571e6dd27fec4aed92d3c82af9db75f8b90b997bf665635c7b7f6ca",
      "plan_hash": "b5072615ca3b7e9a3bd85d50d1f069d99ef2a9816b32c03a370745ed7a205536",
      "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
      "inputs": {},
      "idempotency_key": "hook:SessionStart:019f663d-f0e3-7053-97bd-fb186bb138f0",
      "status": "completed",
      "attempt": 1,
      "created_at": "2026-07-15T14:46:05Z",
      "updated_at": "2026-07-15T14:46:06Z",
      "receipts": [
        {
          "step_id": "config",
          "action": "config.audit",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "3782ec2317c0c8ee7598634310a2804d8aae4735f557498f9d3b8fae7c45e1e5",
          "completed_at": "2026-07-15T14:46:05Z"
        },
        {
          "step_id": "services",
          "action": "services.audit",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "13dcc58bd528f3efa3e6e0fa0853a6eedc376f1f3685fbd4869cbb2b60382ee3",
          "completed_at": "2026-07-15T14:46:05Z"
        },
        {
          "step_id": "state",
          "action": "state.consistency",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "5a1c6e5246defb1b6b6b90ff734db95bece2886b408ab112ed9b8e67222d5568",
          "completed_at": "2026-07-15T14:46:06Z"
        },
        {
          "step_id": "status",
          "action": "state.query",
          "input_hash": "a15231a2142a2a9a85355a8b9cbbccffe01a9c9c2c2fd8c2bc2987cdc481564a",
          "output_hash": "8ba9f7d3cc6705af37de9e3324d1258e21ccacb5ab0b2d7b389ca08885e11187",
          "completed_at": "2026-07-15T14:46:06Z"
        },
        {
          "step_id": "substrate",
          "action": "substrate.preflight",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "a6df426290b4549a59eecaa0519ead9bcc50b7fcb25bd2185ff6047960f19ccb",
          "completed_at": "2026-07-15T14:46:06Z"
        },
        {
          "step_id": "notices",
          "action": "substrate.notices",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "38b904a1cf83df048360fb2480571b749fd98d57e11f1afdffb5a74a78166fea",
          "completed_at": "2026-07-15T14:46:06Z"
        },
        {
          "step_id": "goals",
          "action": "substrate.goals",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "cdfd4de44a28140e686159f34f7b47975954c67e1d1efcef666e985acb136ed8",
          "completed_at": "2026-07-15T14:46:06Z"
        }
      ],
      "steps": [
        {
          "id": "config",
          "action": "config.audit",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-15T14:46:05Z",
          "output": {
            "status": "ok",
            "summary": {
              "settings": 195,
              "mutable": 186,
              "read_only_or_managed": 9,
              "unclassified": 0,
              "unknown": 0,
              "invalid": 0,
              "missing_using_defaults": 0
            },
            "unclassified_keys": [],
            "unknown_keys": [],
            "invalid_values": [],
            "missing_using_defaults": []
          },
          "output_hash": "3782ec2317c0c8ee7598634310a2804d8aae4735f557498f9d3b8fae7c45e1e5",
          "completed_at": "2026-07-15T14:46:05Z"
        },
        {
          "id": "services",
          "action": "services.audit",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-15T14:46:05Z",
          "output": {
            "status": "ok",
            "summary": {
              "critical": 0,
              "high": 0,
              "medium": 0,
              "low": 0
            },
            "findings": []
          },
          "output_hash": "13dcc58bd528f3efa3e6e0fa0853a6eedc376f1f3685fbd4869cbb2b60382ee3",
          "completed_at": "2026-07-15T14:46:05Z"
        },
        {
          "id": "state",
          "action": "state.consistency",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-15T14:46:05Z",
          "output": {
            "status": "ok",
            "repo_root": "D:\\Projects\\prd-plugin",
            "summary": {
              "errors": 0,
              "warnings": 0,
              "infos": 0
            },
            "findings": []
          },
          "output_hash": "5a1c6e5246defb1b6b6b90ff734db95bece2886b408ab112ed9b8e67222d5568",
          "completed_at": "2026-07-15T14:46:06Z"
        },
        {
          "id": "status",
          "action": "state.query",
          "status": "completed",
          "resolved_input_hash": "a15231a2142a2a9a85355a8b9cbbccffe01a9c9c2c2fd8c2bc2987cdc481564a",
          "started_at": "2026-07-15T14:46:06Z",
          "output": {
            "repo_root": "D:\\Projects\\prd-plugin",
            "autonomy_level": "autonomous",
            "requests_by_status": {
              "deferred": 1,
              "implemented": 80,
              "proposed": 1,
              "rejected": 1
            },
            "active_tracking": [],
            "tracking_branches": [],
            "tracking_branch_counts": {},
            "tracking_branch_errors": [],
            "open_health": [],
            "stale_count": 0,
            "skill_usage": {
              "project-decision-policy": 1,
              "project-request-intake": 1,
              "project-test-driven-implementation": 1,
              "project-verification-before-completion": 1,
              "project-llm-wiki": 1
            },
            "wiki_backfill_pending": false,
            "version_update": null
          },
          "output_hash": "8ba9f7d3cc6705af37de9e3324d1258e21ccacb5ab0b2d7b389ca08885e11187",
          "completed_at": "2026-07-15T14:46:06Z"
        },
        {
          "id": "substrate",
          "action": "substrate.preflight",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-15T14:46:06Z",
          "output": {
            "status": "disabled",
            "services": {
              "status": "ok",
              "summary": {
                "critical": 0,
                "high": 0,
                "medium": 0,
                "low": 0
              },
              "findings": []
            },
            "policy": {
              "configured": {
                "enabled": false,
                "mode": "off",
                "capabilities": [
                  "records",
                  "graph",
                  "events"
                ],
                "contract_version": 2,
                "require_source_refs": true,
                "endpoint": "http://127.0.0.1:47124",
                "manual_url": "http://127.0.0.1:47124/utcp.json",
                "knowledge_browse_url": "http://127.0.0.1:5276",
                "auth_env": "AI_COLLAB_API_KEY",
                "timeout_seconds": 5,
                "max_result_bytes": 1048576,
                "cache_ttl_seconds": 60,
                "fallback": "local",
                "automation": {
                  "discovery_on_session_start": true,
                  "knowledge_recall": true,
                  "memory_recall": true,
                  "context_enrichment": true,
                  "notices_on_session_start": false,
                  "goals_sync": false,
                  "telemetry_on_maintenance": false,
                  "reporting_dispatch": true,
                  "judgment_dispatch": true,
                  "verification_execution": true
                }
              },
              "active": false,
              "effective_mode": "off",
              "effective_capabilities": []
            }
          },
          "output_hash": "a6df426290b4549a59eecaa0519ead9bcc50b7fcb25bd2185ff6047960f19ccb",
          "completed_at": "2026-07-15T14:46:06Z"
        },
        {
          "id": "notices",
          "action": "substrate.notices",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-15T14:46:06Z",
          "output": {
            "status": "disabled"
          },
          "output_hash": "38b904a1cf83df048360fb2480571b749fd98d57e11f1afdffb5a74a78166fea",
          "completed_at": "2026-07-15T14:46:06Z"
        },
        {
          "id": "goals",
          "action": "substrate.goals",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-15T14:46:06Z",
          "output": {
            "status": "disabled",
            "created": 0,
            "observed": 0,
            "results": []
          },
          "output_hash": "cdfd4de44a28140e686159f34f7b47975954c67e1d1efcef666e985acb136ed8",
          "completed_at": "2026-07-15T14:46:06Z"
        }
      ],
      "completed_at": "2026-07-15T14:46:06Z"
    },
    {
      "id": "WFR-051",
      "schema_version": "1.0",
      "workflow_id": "session.stop",
      "workflow_version": 1,
      "definition_hash": "0cef7bb3e28321be8f85375c154955a69310ce297e47de3f3b8dd48f77a2f07d",
      "plan_hash": "a5e1d77ac734217487fc418e29c7163f4e81178e25d171e70cd4c999d527d3e8",
      "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
      "inputs": {},
      "idempotency_key": "hook:Stop:019f663d-f0e3-7053-97bd-fb186bb138f0",
      "status": "completed",
      "attempt": 1,
      "created_at": "2026-07-15T14:46:10Z",
      "updated_at": "2026-07-15T14:46:11Z",
      "receipts": [
        {
          "step_id": "state",
          "action": "state.consistency",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "5a1c6e5246defb1b6b6b90ff734db95bece2886b408ab112ed9b8e67222d5568",
          "completed_at": "2026-07-15T14:46:11Z"
        },
        {
          "step_id": "goals",
          "action": "substrate.goals",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "cdfd4de44a28140e686159f34f7b47975954c67e1d1efcef666e985acb136ed8",
          "completed_at": "2026-07-15T14:46:11Z"
        },
        {
          "step_id": "staleness",
          "action": "staleness.audit",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "1e81cb0ffd0a4d04626920a203b38d2d23a264cd43e807a85d375d69cae8a658",
          "completed_at": "2026-07-15T14:46:11Z"
        },
        {
          "step_id": "reflections",
          "action": "reflection.list",
          "input_hash": "0172e841ab4c13b3a4061f073f9d68a716ec87a8a5d52fde41823385e0582573",
          "output_hash": "c1b6b635c0bab21120657277f14ef6f839909875f307a3745fa48aee2bd6e449",
          "completed_at": "2026-07-15T14:46:11Z"
        },
        {
          "step_id": "bundle",
          "action": "reporting.bundle",
          "input_hash": "aed8ebb688dc3c085dd978d7c4120572173c3cb87e75919e4a937dcca6ef9457",
          "output_hash": "6413b750e5adf462056ec1108a5d692cc446676e520bee65af98f64bc3e9bd9b",
          "completed_at": "2026-07-15T14:46:11Z"
        },
        {
          "step_id": "delegated",
          "action": "reporting.delegate",
          "input_hash": "669197e524ce450fa066ad7ef7d9da00168b780083ca6a5d7094bca3097e8568",
          "output_hash": "e6085059f197def80ae95add1f328418107bea5436c9bd002530043646a3a95c",
          "completed_at": "2026-07-15T14:46:11Z"
        }
      ],
      "steps": [
        {
          "id": "state",
          "action": "state.consistency",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-15T14:46:10Z",
          "output": {
            "status": "ok",
            "repo_root": "D:\\Projects\\prd-plugin",
            "summary": {
              "errors": 0,
              "warnings": 0,
              "infos": 0
            },
            "findings": []
          },
          "output_hash": "5a1c6e5246defb1b6b6b90ff734db95bece2886b408ab112ed9b8e67222d5568",
          "completed_at": "2026-07-15T14:46:11Z"
        },
        {
          "id": "goals",
          "action": "substrate.goals",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-15T14:46:11Z",
          "output": {
            "status": "disabled",
            "created": 0,
            "observed": 0,
            "results": []
          },
          "output_hash": "cdfd4de44a28140e686159f34f7b47975954c67e1d1efcef666e985acb136ed8",
          "completed_at": "2026-07-15T14:46:11Z"
        },
        {
          "id": "staleness",
          "action": "staleness.audit",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-15T14:46:11Z",
          "output": {
            "status": "ok",
            "repo_root": "D:\\Projects\\prd-plugin",
            "counts": {
              "stale": 0
            },
            "stale": []
          },
          "output_hash": "1e81cb0ffd0a4d04626920a203b38d2d23a264cd43e807a85d375d69cae8a658",
          "completed_at": "2026-07-15T14:46:11Z"
        },
        {
          "id": "reflections",
          "action": "reflection.list",
          "status": "completed",
          "resolved_input_hash": "0172e841ab4c13b3a4061f073f9d68a716ec87a8a5d52fde41823385e0582573",
          "started_at": "2026-07-15T14:46:11Z",
          "output": {
            "enabled": false,
            "on_stop": true,
            "max_questions_per_stop": 5,
            "categories": [
              {
                "id": "behaviour_quality",
                "name": "Behaviour quality",
                "enabled": true,
                "question_count": 3
              },
              {
                "id": "harness_friction",
                "name": "Harness friction",
                "enabled": true,
                "question_count": 2
              }
            ],
            "questions": [
              {
                "id": "RFQ-001",
                "text": "Based on the work you just carried out, would you classify your behaviour as good? Answer yes or no and cite observable evidence.",
                "enabled": true,
                "category_id": "behaviour_quality",
                "category_name": "Behaviour quality",
                "effective_enabled": false
              },
              {
                "id": "RFQ-002",
                "text": "If you answered no, what could you do differently to correct your behaviour?",
                "enabled": true,
                "category_id": "behaviour_quality",
                "category_name": "Behaviour quality",
                "effective_enabled": false
              },
              {
                "id": "RFQ-003",
                "text": "Would another attempt using the identified good behaviours materially improve the outcome? Answer yes or no and state the next corrective action if yes.",
                "enabled": true,
                "category_id": "behaviour_quality",
                "category_name": "Behaviour quality",
                "effective_enabled": false
              },
              {
                "id": "RFQ-004",
                "text": "What harness friction points made this work more difficult?",
                "enabled": true,
                "category_id": "harness_friction",
                "category_name": "Harness friction",
                "effective_enabled": false
              },
              {
                "id": "RFQ-005",
                "text": "What up to three changes would most improve friction in the harness?",
                "enabled": true,
                "category_id": "harness_friction",
                "category_name": "Harness friction",
                "effective_enabled": false
              }
            ]
          },
          "output_hash": "c1b6b635c0bab21120657277f14ef6f839909875f307a3745fa48aee2bd6e449",
          "completed_at": "2026-07-15T14:46:11Z"
        },
        {
          "id": "bundle",
          "action": "reporting.bundle",
          "status": "completed",
          "resolved_input_hash": "aed8ebb688dc3c085dd978d7c4120572173c3cb87e75919e4a937dcca6ef9457",
          "started_at": "2026-07-15T14:46:11Z",
          "output": {
            "contract_version": 1,
            "task": "session_summary",
            "repo": "prd-plugin",
            "policy": {
              "enabled": false,
              "executor": "ai-collab",
              "contract_version": 1,
              "profile": "fast-capable",
              "tasks": [
                "report_summary",
                "session_summary",
                "wiki_synthesis",
                "triage_draft"
              ],
              "fallback": "main",
              "require_source_refs": true,
              "max_input_tokens": 12000,
              "max_output_tokens": 1500,
              "timeout_seconds": 30
            },
            "facts": {
              "requests_by_status": {
                "deferred": 1,
                "implemented": 80,
                "proposed": 1,
                "rejected": 1
              },
              "active_requests": [
                {
                  "id": "REQ-072",
                  "status": "proposed",
                  "severity": "low",
                  "summary": "opencode run-until-done: session.idle is a non-blocking notification, so the stop guard can't force continuation on opencode (currently degrades to a printed reminder, 0.5.95). Investigate whether opencode exposes any vetoable/continuation mechanism (a different event, a permission hook, or a 'continue' API) to enforce run-until-done, or accept the reminder as the permanent ceiling. Low priority — user rarely uses opencode."
                }
              ],
              "active_tracking": [],
              "open_health": [],
              "evidence_count": 104,
              "decision_count": 9
            },
            "findings": [],
            "source_refs": [
              ".prd_plugin/config.json",
              ".prd_plugin/state/decisions.json",
              ".prd_plugin/state/evidence.json",
              ".prd_plugin/state/health.json",
              ".prd_plugin/state/requests.json",
              ".prd_plugin/state/tracking.json",
              "REQ-072"
            ],
            "constraints": {
              "max_input_tokens": 12000,
              "max_output_tokens": 1500,
              "timeout_seconds": 30,
              "require_source_refs": true,
              "no_project_state_writes": true,
              "no_secrets_or_local_session_content": true
            }
          },
          "output_hash": "6413b750e5adf462056ec1108a5d692cc446676e520bee65af98f64bc3e9bd9b",
          "completed_at": "2026-07-15T14:46:11Z"
        },
        {
          "id": "delegated",
          "action": "reporting.delegate",
          "status": "completed",
          "resolved_input_hash": "669197e524ce450fa066ad7ef7d9da00168b780083ca6a5d7094bca3097e8568",
          "started_at": "2026-07-15T14:46:11Z",
          "output": {
            "status": "fallback",
            "action": "main",
            "reason": "disabled"
          },
          "output_hash": "e6085059f197def80ae95add1f328418107bea5436c9bd002530043646a3a95c",
          "completed_at": "2026-07-15T14:46:11Z"
        }
      ],
      "completed_at": "2026-07-15T14:46:11Z"
    },
    {
      "id": "WFR-052",
      "schema_version": "1.0",
      "workflow_id": "session.start",
      "workflow_version": 1,
      "definition_hash": "d0f98da02571e6dd27fec4aed92d3c82af9db75f8b90b997bf665635c7b7f6ca",
      "plan_hash": "b5072615ca3b7e9a3bd85d50d1f069d99ef2a9816b32c03a370745ed7a205536",
      "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
      "inputs": {},
      "idempotency_key": "hook:SessionStart:019f663e-e45c-7171-b441-426a2a189a33",
      "status": "completed",
      "attempt": 1,
      "created_at": "2026-07-15T14:47:08Z",
      "updated_at": "2026-07-15T14:47:09Z",
      "receipts": [
        {
          "step_id": "config",
          "action": "config.audit",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "3782ec2317c0c8ee7598634310a2804d8aae4735f557498f9d3b8fae7c45e1e5",
          "completed_at": "2026-07-15T14:47:08Z"
        },
        {
          "step_id": "services",
          "action": "services.audit",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "13dcc58bd528f3efa3e6e0fa0853a6eedc376f1f3685fbd4869cbb2b60382ee3",
          "completed_at": "2026-07-15T14:47:08Z"
        },
        {
          "step_id": "state",
          "action": "state.consistency",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "5a1c6e5246defb1b6b6b90ff734db95bece2886b408ab112ed9b8e67222d5568",
          "completed_at": "2026-07-15T14:47:08Z"
        },
        {
          "step_id": "status",
          "action": "state.query",
          "input_hash": "a15231a2142a2a9a85355a8b9cbbccffe01a9c9c2c2fd8c2bc2987cdc481564a",
          "output_hash": "8ba9f7d3cc6705af37de9e3324d1258e21ccacb5ab0b2d7b389ca08885e11187",
          "completed_at": "2026-07-15T14:47:08Z"
        },
        {
          "step_id": "substrate",
          "action": "substrate.preflight",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "a6df426290b4549a59eecaa0519ead9bcc50b7fcb25bd2185ff6047960f19ccb",
          "completed_at": "2026-07-15T14:47:08Z"
        },
        {
          "step_id": "notices",
          "action": "substrate.notices",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "38b904a1cf83df048360fb2480571b749fd98d57e11f1afdffb5a74a78166fea",
          "completed_at": "2026-07-15T14:47:09Z"
        },
        {
          "step_id": "goals",
          "action": "substrate.goals",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "cdfd4de44a28140e686159f34f7b47975954c67e1d1efcef666e985acb136ed8",
          "completed_at": "2026-07-15T14:47:09Z"
        }
      ],
      "steps": [
        {
          "id": "config",
          "action": "config.audit",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-15T14:47:08Z",
          "output": {
            "status": "ok",
            "summary": {
              "settings": 195,
              "mutable": 186,
              "read_only_or_managed": 9,
              "unclassified": 0,
              "unknown": 0,
              "invalid": 0,
              "missing_using_defaults": 0
            },
            "unclassified_keys": [],
            "unknown_keys": [],
            "invalid_values": [],
            "missing_using_defaults": []
          },
          "output_hash": "3782ec2317c0c8ee7598634310a2804d8aae4735f557498f9d3b8fae7c45e1e5",
          "completed_at": "2026-07-15T14:47:08Z"
        },
        {
          "id": "services",
          "action": "services.audit",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-15T14:47:08Z",
          "output": {
            "status": "ok",
            "summary": {
              "critical": 0,
              "high": 0,
              "medium": 0,
              "low": 0
            },
            "findings": []
          },
          "output_hash": "13dcc58bd528f3efa3e6e0fa0853a6eedc376f1f3685fbd4869cbb2b60382ee3",
          "completed_at": "2026-07-15T14:47:08Z"
        },
        {
          "id": "state",
          "action": "state.consistency",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-15T14:47:08Z",
          "output": {
            "status": "ok",
            "repo_root": "D:\\Projects\\prd-plugin",
            "summary": {
              "errors": 0,
              "warnings": 0,
              "infos": 0
            },
            "findings": []
          },
          "output_hash": "5a1c6e5246defb1b6b6b90ff734db95bece2886b408ab112ed9b8e67222d5568",
          "completed_at": "2026-07-15T14:47:08Z"
        },
        {
          "id": "status",
          "action": "state.query",
          "status": "completed",
          "resolved_input_hash": "a15231a2142a2a9a85355a8b9cbbccffe01a9c9c2c2fd8c2bc2987cdc481564a",
          "started_at": "2026-07-15T14:47:08Z",
          "output": {
            "repo_root": "D:\\Projects\\prd-plugin",
            "autonomy_level": "autonomous",
            "requests_by_status": {
              "deferred": 1,
              "implemented": 80,
              "proposed": 1,
              "rejected": 1
            },
            "active_tracking": [],
            "tracking_branches": [],
            "tracking_branch_counts": {},
            "tracking_branch_errors": [],
            "open_health": [],
            "stale_count": 0,
            "skill_usage": {
              "project-decision-policy": 1,
              "project-request-intake": 1,
              "project-test-driven-implementation": 1,
              "project-verification-before-completion": 1,
              "project-llm-wiki": 1
            },
            "wiki_backfill_pending": false,
            "version_update": null
          },
          "output_hash": "8ba9f7d3cc6705af37de9e3324d1258e21ccacb5ab0b2d7b389ca08885e11187",
          "completed_at": "2026-07-15T14:47:08Z"
        },
        {
          "id": "substrate",
          "action": "substrate.preflight",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-15T14:47:08Z",
          "output": {
            "status": "disabled",
            "services": {
              "status": "ok",
              "summary": {
                "critical": 0,
                "high": 0,
                "medium": 0,
                "low": 0
              },
              "findings": []
            },
            "policy": {
              "configured": {
                "enabled": false,
                "mode": "off",
                "capabilities": [
                  "records",
                  "graph",
                  "events"
                ],
                "contract_version": 2,
                "require_source_refs": true,
                "endpoint": "http://127.0.0.1:47124",
                "manual_url": "http://127.0.0.1:47124/utcp.json",
                "knowledge_browse_url": "http://127.0.0.1:5276",
                "auth_env": "AI_COLLAB_API_KEY",
                "timeout_seconds": 5,
                "max_result_bytes": 1048576,
                "cache_ttl_seconds": 60,
                "fallback": "local",
                "automation": {
                  "discovery_on_session_start": true,
                  "knowledge_recall": true,
                  "memory_recall": true,
                  "context_enrichment": true,
                  "notices_on_session_start": false,
                  "goals_sync": false,
                  "telemetry_on_maintenance": false,
                  "reporting_dispatch": true,
                  "judgment_dispatch": true,
                  "verification_execution": true
                }
              },
              "active": false,
              "effective_mode": "off",
              "effective_capabilities": []
            }
          },
          "output_hash": "a6df426290b4549a59eecaa0519ead9bcc50b7fcb25bd2185ff6047960f19ccb",
          "completed_at": "2026-07-15T14:47:08Z"
        },
        {
          "id": "notices",
          "action": "substrate.notices",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-15T14:47:09Z",
          "output": {
            "status": "disabled"
          },
          "output_hash": "38b904a1cf83df048360fb2480571b749fd98d57e11f1afdffb5a74a78166fea",
          "completed_at": "2026-07-15T14:47:09Z"
        },
        {
          "id": "goals",
          "action": "substrate.goals",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-15T14:47:09Z",
          "output": {
            "status": "disabled",
            "created": 0,
            "observed": 0,
            "results": []
          },
          "output_hash": "cdfd4de44a28140e686159f34f7b47975954c67e1d1efcef666e985acb136ed8",
          "completed_at": "2026-07-15T14:47:09Z"
        }
      ],
      "completed_at": "2026-07-15T14:47:09Z"
    },
    {
      "id": "WFR-053",
      "schema_version": "1.0",
      "workflow_id": "session.stop",
      "workflow_version": 1,
      "definition_hash": "0cef7bb3e28321be8f85375c154955a69310ce297e47de3f3b8dd48f77a2f07d",
      "plan_hash": "a5e1d77ac734217487fc418e29c7163f4e81178e25d171e70cd4c999d527d3e8",
      "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
      "inputs": {},
      "idempotency_key": "hook:Stop:019f663e-e45c-7171-b441-426a2a189a33",
      "status": "completed",
      "attempt": 1,
      "created_at": "2026-07-15T14:47:11Z",
      "updated_at": "2026-07-15T14:47:11Z",
      "receipts": [
        {
          "step_id": "state",
          "action": "state.consistency",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "5a1c6e5246defb1b6b6b90ff734db95bece2886b408ab112ed9b8e67222d5568",
          "completed_at": "2026-07-15T14:47:11Z"
        },
        {
          "step_id": "goals",
          "action": "substrate.goals",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "cdfd4de44a28140e686159f34f7b47975954c67e1d1efcef666e985acb136ed8",
          "completed_at": "2026-07-15T14:47:11Z"
        },
        {
          "step_id": "staleness",
          "action": "staleness.audit",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "1e81cb0ffd0a4d04626920a203b38d2d23a264cd43e807a85d375d69cae8a658",
          "completed_at": "2026-07-15T14:47:11Z"
        },
        {
          "step_id": "reflections",
          "action": "reflection.list",
          "input_hash": "0172e841ab4c13b3a4061f073f9d68a716ec87a8a5d52fde41823385e0582573",
          "output_hash": "c1b6b635c0bab21120657277f14ef6f839909875f307a3745fa48aee2bd6e449",
          "completed_at": "2026-07-15T14:47:11Z"
        },
        {
          "step_id": "bundle",
          "action": "reporting.bundle",
          "input_hash": "aed8ebb688dc3c085dd978d7c4120572173c3cb87e75919e4a937dcca6ef9457",
          "output_hash": "6413b750e5adf462056ec1108a5d692cc446676e520bee65af98f64bc3e9bd9b",
          "completed_at": "2026-07-15T14:47:11Z"
        },
        {
          "step_id": "delegated",
          "action": "reporting.delegate",
          "input_hash": "669197e524ce450fa066ad7ef7d9da00168b780083ca6a5d7094bca3097e8568",
          "output_hash": "e6085059f197def80ae95add1f328418107bea5436c9bd002530043646a3a95c",
          "completed_at": "2026-07-15T14:47:11Z"
        }
      ],
      "steps": [
        {
          "id": "state",
          "action": "state.consistency",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-15T14:47:11Z",
          "output": {
            "status": "ok",
            "repo_root": "D:\\Projects\\prd-plugin",
            "summary": {
              "errors": 0,
              "warnings": 0,
              "infos": 0
            },
            "findings": []
          },
          "output_hash": "5a1c6e5246defb1b6b6b90ff734db95bece2886b408ab112ed9b8e67222d5568",
          "completed_at": "2026-07-15T14:47:11Z"
        },
        {
          "id": "goals",
          "action": "substrate.goals",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-15T14:47:11Z",
          "output": {
            "status": "disabled",
            "created": 0,
            "observed": 0,
            "results": []
          },
          "output_hash": "cdfd4de44a28140e686159f34f7b47975954c67e1d1efcef666e985acb136ed8",
          "completed_at": "2026-07-15T14:47:11Z"
        },
        {
          "id": "staleness",
          "action": "staleness.audit",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-15T14:47:11Z",
          "output": {
            "status": "ok",
            "repo_root": "D:\\Projects\\prd-plugin",
            "counts": {
              "stale": 0
            },
            "stale": []
          },
          "output_hash": "1e81cb0ffd0a4d04626920a203b38d2d23a264cd43e807a85d375d69cae8a658",
          "completed_at": "2026-07-15T14:47:11Z"
        },
        {
          "id": "reflections",
          "action": "reflection.list",
          "status": "completed",
          "resolved_input_hash": "0172e841ab4c13b3a4061f073f9d68a716ec87a8a5d52fde41823385e0582573",
          "started_at": "2026-07-15T14:47:11Z",
          "output": {
            "enabled": false,
            "on_stop": true,
            "max_questions_per_stop": 5,
            "categories": [
              {
                "id": "behaviour_quality",
                "name": "Behaviour quality",
                "enabled": true,
                "question_count": 3
              },
              {
                "id": "harness_friction",
                "name": "Harness friction",
                "enabled": true,
                "question_count": 2
              }
            ],
            "questions": [
              {
                "id": "RFQ-001",
                "text": "Based on the work you just carried out, would you classify your behaviour as good? Answer yes or no and cite observable evidence.",
                "enabled": true,
                "category_id": "behaviour_quality",
                "category_name": "Behaviour quality",
                "effective_enabled": false
              },
              {
                "id": "RFQ-002",
                "text": "If you answered no, what could you do differently to correct your behaviour?",
                "enabled": true,
                "category_id": "behaviour_quality",
                "category_name": "Behaviour quality",
                "effective_enabled": false
              },
              {
                "id": "RFQ-003",
                "text": "Would another attempt using the identified good behaviours materially improve the outcome? Answer yes or no and state the next corrective action if yes.",
                "enabled": true,
                "category_id": "behaviour_quality",
                "category_name": "Behaviour quality",
                "effective_enabled": false
              },
              {
                "id": "RFQ-004",
                "text": "What harness friction points made this work more difficult?",
                "enabled": true,
                "category_id": "harness_friction",
                "category_name": "Harness friction",
                "effective_enabled": false
              },
              {
                "id": "RFQ-005",
                "text": "What up to three changes would most improve friction in the harness?",
                "enabled": true,
                "category_id": "harness_friction",
                "category_name": "Harness friction",
                "effective_enabled": false
              }
            ]
          },
          "output_hash": "c1b6b635c0bab21120657277f14ef6f839909875f307a3745fa48aee2bd6e449",
          "completed_at": "2026-07-15T14:47:11Z"
        },
        {
          "id": "bundle",
          "action": "reporting.bundle",
          "status": "completed",
          "resolved_input_hash": "aed8ebb688dc3c085dd978d7c4120572173c3cb87e75919e4a937dcca6ef9457",
          "started_at": "2026-07-15T14:47:11Z",
          "output": {
            "contract_version": 1,
            "task": "session_summary",
            "repo": "prd-plugin",
            "policy": {
              "enabled": false,
              "executor": "ai-collab",
              "contract_version": 1,
              "profile": "fast-capable",
              "tasks": [
                "report_summary",
                "session_summary",
                "wiki_synthesis",
                "triage_draft"
              ],
              "fallback": "main",
              "require_source_refs": true,
              "max_input_tokens": 12000,
              "max_output_tokens": 1500,
              "timeout_seconds": 30
            },
            "facts": {
              "requests_by_status": {
                "deferred": 1,
                "implemented": 80,
                "proposed": 1,
                "rejected": 1
              },
              "active_requests": [
                {
                  "id": "REQ-072",
                  "status": "proposed",
                  "severity": "low",
                  "summary": "opencode run-until-done: session.idle is a non-blocking notification, so the stop guard can't force continuation on opencode (currently degrades to a printed reminder, 0.5.95). Investigate whether opencode exposes any vetoable/continuation mechanism (a different event, a permission hook, or a 'continue' API) to enforce run-until-done, or accept the reminder as the permanent ceiling. Low priority — user rarely uses opencode."
                }
              ],
              "active_tracking": [],
              "open_health": [],
              "evidence_count": 104,
              "decision_count": 9
            },
            "findings": [],
            "source_refs": [
              ".prd_plugin/config.json",
              ".prd_plugin/state/decisions.json",
              ".prd_plugin/state/evidence.json",
              ".prd_plugin/state/health.json",
              ".prd_plugin/state/requests.json",
              ".prd_plugin/state/tracking.json",
              "REQ-072"
            ],
            "constraints": {
              "max_input_tokens": 12000,
              "max_output_tokens": 1500,
              "timeout_seconds": 30,
              "require_source_refs": true,
              "no_project_state_writes": true,
              "no_secrets_or_local_session_content": true
            }
          },
          "output_hash": "6413b750e5adf462056ec1108a5d692cc446676e520bee65af98f64bc3e9bd9b",
          "completed_at": "2026-07-15T14:47:11Z"
        },
        {
          "id": "delegated",
          "action": "reporting.delegate",
          "status": "completed",
          "resolved_input_hash": "669197e524ce450fa066ad7ef7d9da00168b780083ca6a5d7094bca3097e8568",
          "started_at": "2026-07-15T14:47:11Z",
          "output": {
            "status": "fallback",
            "action": "main",
            "reason": "disabled"
          },
          "output_hash": "e6085059f197def80ae95add1f328418107bea5436c9bd002530043646a3a95c",
          "completed_at": "2026-07-15T14:47:11Z"
        }
      ],
      "completed_at": "2026-07-15T14:47:11Z"
    },
    {
      "id": "WFR-054",
      "schema_version": "1.0",
      "workflow_id": "session.start",
      "workflow_version": 1,
      "definition_hash": "d0f98da02571e6dd27fec4aed92d3c82af9db75f8b90b997bf665635c7b7f6ca",
      "plan_hash": "b5072615ca3b7e9a3bd85d50d1f069d99ef2a9816b32c03a370745ed7a205536",
      "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
      "inputs": {},
      "idempotency_key": "hook:SessionStart:019f6640-4739-7f92-9406-91208405f3ed",
      "status": "completed",
      "attempt": 1,
      "created_at": "2026-07-15T14:48:40Z",
      "updated_at": "2026-07-15T14:48:42Z",
      "receipts": [
        {
          "step_id": "config",
          "action": "config.audit",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "3782ec2317c0c8ee7598634310a2804d8aae4735f557498f9d3b8fae7c45e1e5",
          "completed_at": "2026-07-15T14:48:41Z"
        },
        {
          "step_id": "services",
          "action": "services.audit",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "13dcc58bd528f3efa3e6e0fa0853a6eedc376f1f3685fbd4869cbb2b60382ee3",
          "completed_at": "2026-07-15T14:48:41Z"
        },
        {
          "step_id": "state",
          "action": "state.consistency",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "5a1c6e5246defb1b6b6b90ff734db95bece2886b408ab112ed9b8e67222d5568",
          "completed_at": "2026-07-15T14:48:41Z"
        },
        {
          "step_id": "status",
          "action": "state.query",
          "input_hash": "a15231a2142a2a9a85355a8b9cbbccffe01a9c9c2c2fd8c2bc2987cdc481564a",
          "output_hash": "8ba9f7d3cc6705af37de9e3324d1258e21ccacb5ab0b2d7b389ca08885e11187",
          "completed_at": "2026-07-15T14:48:41Z"
        },
        {
          "step_id": "substrate",
          "action": "substrate.preflight",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "a6df426290b4549a59eecaa0519ead9bcc50b7fcb25bd2185ff6047960f19ccb",
          "completed_at": "2026-07-15T14:48:41Z"
        },
        {
          "step_id": "notices",
          "action": "substrate.notices",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "38b904a1cf83df048360fb2480571b749fd98d57e11f1afdffb5a74a78166fea",
          "completed_at": "2026-07-15T14:48:41Z"
        },
        {
          "step_id": "goals",
          "action": "substrate.goals",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "cdfd4de44a28140e686159f34f7b47975954c67e1d1efcef666e985acb136ed8",
          "completed_at": "2026-07-15T14:48:42Z"
        }
      ],
      "steps": [
        {
          "id": "config",
          "action": "config.audit",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-15T14:48:41Z",
          "output": {
            "status": "ok",
            "summary": {
              "settings": 195,
              "mutable": 186,
              "read_only_or_managed": 9,
              "unclassified": 0,
              "unknown": 0,
              "invalid": 0,
              "missing_using_defaults": 0
            },
            "unclassified_keys": [],
            "unknown_keys": [],
            "invalid_values": [],
            "missing_using_defaults": []
          },
          "output_hash": "3782ec2317c0c8ee7598634310a2804d8aae4735f557498f9d3b8fae7c45e1e5",
          "completed_at": "2026-07-15T14:48:41Z"
        },
        {
          "id": "services",
          "action": "services.audit",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-15T14:48:41Z",
          "output": {
            "status": "ok",
            "summary": {
              "critical": 0,
              "high": 0,
              "medium": 0,
              "low": 0
            },
            "findings": []
          },
          "output_hash": "13dcc58bd528f3efa3e6e0fa0853a6eedc376f1f3685fbd4869cbb2b60382ee3",
          "completed_at": "2026-07-15T14:48:41Z"
        },
        {
          "id": "state",
          "action": "state.consistency",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-15T14:48:41Z",
          "output": {
            "status": "ok",
            "repo_root": "D:\\Projects\\prd-plugin",
            "summary": {
              "errors": 0,
              "warnings": 0,
              "infos": 0
            },
            "findings": []
          },
          "output_hash": "5a1c6e5246defb1b6b6b90ff734db95bece2886b408ab112ed9b8e67222d5568",
          "completed_at": "2026-07-15T14:48:41Z"
        },
        {
          "id": "status",
          "action": "state.query",
          "status": "completed",
          "resolved_input_hash": "a15231a2142a2a9a85355a8b9cbbccffe01a9c9c2c2fd8c2bc2987cdc481564a",
          "started_at": "2026-07-15T14:48:41Z",
          "output": {
            "repo_root": "D:\\Projects\\prd-plugin",
            "autonomy_level": "autonomous",
            "requests_by_status": {
              "deferred": 1,
              "implemented": 80,
              "proposed": 1,
              "rejected": 1
            },
            "active_tracking": [],
            "tracking_branches": [],
            "tracking_branch_counts": {},
            "tracking_branch_errors": [],
            "open_health": [],
            "stale_count": 0,
            "skill_usage": {
              "project-decision-policy": 1,
              "project-request-intake": 1,
              "project-test-driven-implementation": 1,
              "project-verification-before-completion": 1,
              "project-llm-wiki": 1
            },
            "wiki_backfill_pending": false,
            "version_update": null
          },
          "output_hash": "8ba9f7d3cc6705af37de9e3324d1258e21ccacb5ab0b2d7b389ca08885e11187",
          "completed_at": "2026-07-15T14:48:41Z"
        },
        {
          "id": "substrate",
          "action": "substrate.preflight",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-15T14:48:41Z",
          "output": {
            "status": "disabled",
            "services": {
              "status": "ok",
              "summary": {
                "critical": 0,
                "high": 0,
                "medium": 0,
                "low": 0
              },
              "findings": []
            },
            "policy": {
              "configured": {
                "enabled": false,
                "mode": "off",
                "capabilities": [
                  "records",
                  "graph",
                  "events"
                ],
                "contract_version": 2,
                "require_source_refs": true,
                "endpoint": "http://127.0.0.1:47124",
                "manual_url": "http://127.0.0.1:47124/utcp.json",
                "knowledge_browse_url": "http://127.0.0.1:5276",
                "auth_env": "AI_COLLAB_API_KEY",
                "timeout_seconds": 5,
                "max_result_bytes": 1048576,
                "cache_ttl_seconds": 60,
                "fallback": "local",
                "automation": {
                  "discovery_on_session_start": true,
                  "knowledge_recall": true,
                  "memory_recall": true,
                  "context_enrichment": true,
                  "notices_on_session_start": false,
                  "goals_sync": false,
                  "telemetry_on_maintenance": false,
                  "reporting_dispatch": true,
                  "judgment_dispatch": true,
                  "verification_execution": true
                }
              },
              "active": false,
              "effective_mode": "off",
              "effective_capabilities": []
            }
          },
          "output_hash": "a6df426290b4549a59eecaa0519ead9bcc50b7fcb25bd2185ff6047960f19ccb",
          "completed_at": "2026-07-15T14:48:41Z"
        },
        {
          "id": "notices",
          "action": "substrate.notices",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-15T14:48:41Z",
          "output": {
            "status": "disabled"
          },
          "output_hash": "38b904a1cf83df048360fb2480571b749fd98d57e11f1afdffb5a74a78166fea",
          "completed_at": "2026-07-15T14:48:41Z"
        },
        {
          "id": "goals",
          "action": "substrate.goals",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-15T14:48:42Z",
          "output": {
            "status": "disabled",
            "created": 0,
            "observed": 0,
            "results": []
          },
          "output_hash": "cdfd4de44a28140e686159f34f7b47975954c67e1d1efcef666e985acb136ed8",
          "completed_at": "2026-07-15T14:48:42Z"
        }
      ],
      "completed_at": "2026-07-15T14:48:42Z"
    },
    {
      "id": "WFR-055",
      "schema_version": "1.0",
      "workflow_id": "session.stop",
      "workflow_version": 1,
      "definition_hash": "0cef7bb3e28321be8f85375c154955a69310ce297e47de3f3b8dd48f77a2f07d",
      "plan_hash": "a5e1d77ac734217487fc418e29c7163f4e81178e25d171e70cd4c999d527d3e8",
      "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
      "inputs": {},
      "idempotency_key": "hook:Stop:019f6640-4739-7f92-9406-91208405f3ed",
      "status": "completed",
      "attempt": 1,
      "created_at": "2026-07-15T14:48:44Z",
      "updated_at": "2026-07-15T14:48:45Z",
      "receipts": [
        {
          "step_id": "state",
          "action": "state.consistency",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "5a1c6e5246defb1b6b6b90ff734db95bece2886b408ab112ed9b8e67222d5568",
          "completed_at": "2026-07-15T14:48:45Z"
        },
        {
          "step_id": "goals",
          "action": "substrate.goals",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "cdfd4de44a28140e686159f34f7b47975954c67e1d1efcef666e985acb136ed8",
          "completed_at": "2026-07-15T14:48:45Z"
        },
        {
          "step_id": "staleness",
          "action": "staleness.audit",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "1e81cb0ffd0a4d04626920a203b38d2d23a264cd43e807a85d375d69cae8a658",
          "completed_at": "2026-07-15T14:48:45Z"
        },
        {
          "step_id": "reflections",
          "action": "reflection.list",
          "input_hash": "0172e841ab4c13b3a4061f073f9d68a716ec87a8a5d52fde41823385e0582573",
          "output_hash": "c1b6b635c0bab21120657277f14ef6f839909875f307a3745fa48aee2bd6e449",
          "completed_at": "2026-07-15T14:48:45Z"
        },
        {
          "step_id": "bundle",
          "action": "reporting.bundle",
          "input_hash": "aed8ebb688dc3c085dd978d7c4120572173c3cb87e75919e4a937dcca6ef9457",
          "output_hash": "6413b750e5adf462056ec1108a5d692cc446676e520bee65af98f64bc3e9bd9b",
          "completed_at": "2026-07-15T14:48:45Z"
        },
        {
          "step_id": "delegated",
          "action": "reporting.delegate",
          "input_hash": "669197e524ce450fa066ad7ef7d9da00168b780083ca6a5d7094bca3097e8568",
          "output_hash": "e6085059f197def80ae95add1f328418107bea5436c9bd002530043646a3a95c",
          "completed_at": "2026-07-15T14:48:45Z"
        }
      ],
      "steps": [
        {
          "id": "state",
          "action": "state.consistency",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-15T14:48:44Z",
          "output": {
            "status": "ok",
            "repo_root": "D:\\Projects\\prd-plugin",
            "summary": {
              "errors": 0,
              "warnings": 0,
              "infos": 0
            },
            "findings": []
          },
          "output_hash": "5a1c6e5246defb1b6b6b90ff734db95bece2886b408ab112ed9b8e67222d5568",
          "completed_at": "2026-07-15T14:48:45Z"
        },
        {
          "id": "goals",
          "action": "substrate.goals",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-15T14:48:45Z",
          "output": {
            "status": "disabled",
            "created": 0,
            "observed": 0,
            "results": []
          },
          "output_hash": "cdfd4de44a28140e686159f34f7b47975954c67e1d1efcef666e985acb136ed8",
          "completed_at": "2026-07-15T14:48:45Z"
        },
        {
          "id": "staleness",
          "action": "staleness.audit",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-15T14:48:45Z",
          "output": {
            "status": "ok",
            "repo_root": "D:\\Projects\\prd-plugin",
            "counts": {
              "stale": 0
            },
            "stale": []
          },
          "output_hash": "1e81cb0ffd0a4d04626920a203b38d2d23a264cd43e807a85d375d69cae8a658",
          "completed_at": "2026-07-15T14:48:45Z"
        },
        {
          "id": "reflections",
          "action": "reflection.list",
          "status": "completed",
          "resolved_input_hash": "0172e841ab4c13b3a4061f073f9d68a716ec87a8a5d52fde41823385e0582573",
          "started_at": "2026-07-15T14:48:45Z",
          "output": {
            "enabled": false,
            "on_stop": true,
            "max_questions_per_stop": 5,
            "categories": [
              {
                "id": "behaviour_quality",
                "name": "Behaviour quality",
                "enabled": true,
                "question_count": 3
              },
              {
                "id": "harness_friction",
                "name": "Harness friction",
                "enabled": true,
                "question_count": 2
              }
            ],
            "questions": [
              {
                "id": "RFQ-001",
                "text": "Based on the work you just carried out, would you classify your behaviour as good? Answer yes or no and cite observable evidence.",
                "enabled": true,
                "category_id": "behaviour_quality",
                "category_name": "Behaviour quality",
                "effective_enabled": false
              },
              {
                "id": "RFQ-002",
                "text": "If you answered no, what could you do differently to correct your behaviour?",
                "enabled": true,
                "category_id": "behaviour_quality",
                "category_name": "Behaviour quality",
                "effective_enabled": false
              },
              {
                "id": "RFQ-003",
                "text": "Would another attempt using the identified good behaviours materially improve the outcome? Answer yes or no and state the next corrective action if yes.",
                "enabled": true,
                "category_id": "behaviour_quality",
                "category_name": "Behaviour quality",
                "effective_enabled": false
              },
              {
                "id": "RFQ-004",
                "text": "What harness friction points made this work more difficult?",
                "enabled": true,
                "category_id": "harness_friction",
                "category_name": "Harness friction",
                "effective_enabled": false
              },
              {
                "id": "RFQ-005",
                "text": "What up to three changes would most improve friction in the harness?",
                "enabled": true,
                "category_id": "harness_friction",
                "category_name": "Harness friction",
                "effective_enabled": false
              }
            ]
          },
          "output_hash": "c1b6b635c0bab21120657277f14ef6f839909875f307a3745fa48aee2bd6e449",
          "completed_at": "2026-07-15T14:48:45Z"
        },
        {
          "id": "bundle",
          "action": "reporting.bundle",
          "status": "completed",
          "resolved_input_hash": "aed8ebb688dc3c085dd978d7c4120572173c3cb87e75919e4a937dcca6ef9457",
          "started_at": "2026-07-15T14:48:45Z",
          "output": {
            "contract_version": 1,
            "task": "session_summary",
            "repo": "prd-plugin",
            "policy": {
              "enabled": false,
              "executor": "ai-collab",
              "contract_version": 1,
              "profile": "fast-capable",
              "tasks": [
                "report_summary",
                "session_summary",
                "wiki_synthesis",
                "triage_draft"
              ],
              "fallback": "main",
              "require_source_refs": true,
              "max_input_tokens": 12000,
              "max_output_tokens": 1500,
              "timeout_seconds": 30
            },
            "facts": {
              "requests_by_status": {
                "deferred": 1,
                "implemented": 80,
                "proposed": 1,
                "rejected": 1
              },
              "active_requests": [
                {
                  "id": "REQ-072",
                  "status": "proposed",
                  "severity": "low",
                  "summary": "opencode run-until-done: session.idle is a non-blocking notification, so the stop guard can't force continuation on opencode (currently degrades to a printed reminder, 0.5.95). Investigate whether opencode exposes any vetoable/continuation mechanism (a different event, a permission hook, or a 'continue' API) to enforce run-until-done, or accept the reminder as the permanent ceiling. Low priority — user rarely uses opencode."
                }
              ],
              "active_tracking": [],
              "open_health": [],
              "evidence_count": 104,
              "decision_count": 9
            },
            "findings": [],
            "source_refs": [
              ".prd_plugin/config.json",
              ".prd_plugin/state/decisions.json",
              ".prd_plugin/state/evidence.json",
              ".prd_plugin/state/health.json",
              ".prd_plugin/state/requests.json",
              ".prd_plugin/state/tracking.json",
              "REQ-072"
            ],
            "constraints": {
              "max_input_tokens": 12000,
              "max_output_tokens": 1500,
              "timeout_seconds": 30,
              "require_source_refs": true,
              "no_project_state_writes": true,
              "no_secrets_or_local_session_content": true
            }
          },
          "output_hash": "6413b750e5adf462056ec1108a5d692cc446676e520bee65af98f64bc3e9bd9b",
          "completed_at": "2026-07-15T14:48:45Z"
        },
        {
          "id": "delegated",
          "action": "reporting.delegate",
          "status": "completed",
          "resolved_input_hash": "669197e524ce450fa066ad7ef7d9da00168b780083ca6a5d7094bca3097e8568",
          "started_at": "2026-07-15T14:48:45Z",
          "output": {
            "status": "fallback",
            "action": "main",
            "reason": "disabled"
          },
          "output_hash": "e6085059f197def80ae95add1f328418107bea5436c9bd002530043646a3a95c",
          "completed_at": "2026-07-15T14:48:45Z"
        }
      ],
      "completed_at": "2026-07-15T14:48:45Z"
    },
    {
      "id": "WFR-056",
      "schema_version": "1.0",
      "workflow_id": "session.start",
      "workflow_version": 1,
      "definition_hash": "d0f98da02571e6dd27fec4aed92d3c82af9db75f8b90b997bf665635c7b7f6ca",
      "plan_hash": "b5072615ca3b7e9a3bd85d50d1f069d99ef2a9816b32c03a370745ed7a205536",
      "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
      "inputs": {},
      "idempotency_key": "hook:SessionStart:019f6641-9460-7df0-b9e0-10e949d5b285",
      "status": "completed",
      "attempt": 1,
      "created_at": "2026-07-15T14:50:04Z",
      "updated_at": "2026-07-15T14:50:05Z",
      "receipts": [
        {
          "step_id": "config",
          "action": "config.audit",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "3782ec2317c0c8ee7598634310a2804d8aae4735f557498f9d3b8fae7c45e1e5",
          "completed_at": "2026-07-15T14:50:04Z"
        },
        {
          "step_id": "services",
          "action": "services.audit",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "13dcc58bd528f3efa3e6e0fa0853a6eedc376f1f3685fbd4869cbb2b60382ee3",
          "completed_at": "2026-07-15T14:50:04Z"
        },
        {
          "step_id": "state",
          "action": "state.consistency",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "5a1c6e5246defb1b6b6b90ff734db95bece2886b408ab112ed9b8e67222d5568",
          "completed_at": "2026-07-15T14:50:04Z"
        },
        {
          "step_id": "status",
          "action": "state.query",
          "input_hash": "a15231a2142a2a9a85355a8b9cbbccffe01a9c9c2c2fd8c2bc2987cdc481564a",
          "output_hash": "8ba9f7d3cc6705af37de9e3324d1258e21ccacb5ab0b2d7b389ca08885e11187",
          "completed_at": "2026-07-15T14:50:04Z"
        },
        {
          "step_id": "substrate",
          "action": "substrate.preflight",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "a6df426290b4549a59eecaa0519ead9bcc50b7fcb25bd2185ff6047960f19ccb",
          "completed_at": "2026-07-15T14:50:04Z"
        },
        {
          "step_id": "notices",
          "action": "substrate.notices",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "38b904a1cf83df048360fb2480571b749fd98d57e11f1afdffb5a74a78166fea",
          "completed_at": "2026-07-15T14:50:05Z"
        },
        {
          "step_id": "goals",
          "action": "substrate.goals",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "cdfd4de44a28140e686159f34f7b47975954c67e1d1efcef666e985acb136ed8",
          "completed_at": "2026-07-15T14:50:05Z"
        }
      ],
      "steps": [
        {
          "id": "config",
          "action": "config.audit",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-15T14:50:04Z",
          "output": {
            "status": "ok",
            "summary": {
              "settings": 195,
              "mutable": 186,
              "read_only_or_managed": 9,
              "unclassified": 0,
              "unknown": 0,
              "invalid": 0,
              "missing_using_defaults": 0
            },
            "unclassified_keys": [],
            "unknown_keys": [],
            "invalid_values": [],
            "missing_using_defaults": []
          },
          "output_hash": "3782ec2317c0c8ee7598634310a2804d8aae4735f557498f9d3b8fae7c45e1e5",
          "completed_at": "2026-07-15T14:50:04Z"
        },
        {
          "id": "services",
          "action": "services.audit",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-15T14:50:04Z",
          "output": {
            "status": "ok",
            "summary": {
              "critical": 0,
              "high": 0,
              "medium": 0,
              "low": 0
            },
            "findings": []
          },
          "output_hash": "13dcc58bd528f3efa3e6e0fa0853a6eedc376f1f3685fbd4869cbb2b60382ee3",
          "completed_at": "2026-07-15T14:50:04Z"
        },
        {
          "id": "state",
          "action": "state.consistency",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-15T14:50:04Z",
          "output": {
            "status": "ok",
            "repo_root": "D:\\Projects\\prd-plugin",
            "summary": {
              "errors": 0,
              "warnings": 0,
              "infos": 0
            },
            "findings": []
          },
          "output_hash": "5a1c6e5246defb1b6b6b90ff734db95bece2886b408ab112ed9b8e67222d5568",
          "completed_at": "2026-07-15T14:50:04Z"
        },
        {
          "id": "status",
          "action": "state.query",
          "status": "completed",
          "resolved_input_hash": "a15231a2142a2a9a85355a8b9cbbccffe01a9c9c2c2fd8c2bc2987cdc481564a",
          "started_at": "2026-07-15T14:50:04Z",
          "output": {
            "repo_root": "D:\\Projects\\prd-plugin",
            "autonomy_level": "autonomous",
            "requests_by_status": {
              "deferred": 1,
              "implemented": 80,
              "proposed": 1,
              "rejected": 1
            },
            "active_tracking": [],
            "tracking_branches": [],
            "tracking_branch_counts": {},
            "tracking_branch_errors": [],
            "open_health": [],
            "stale_count": 0,
            "skill_usage": {
              "project-decision-policy": 1,
              "project-request-intake": 1,
              "project-test-driven-implementation": 1,
              "project-verification-before-completion": 1,
              "project-llm-wiki": 1
            },
            "wiki_backfill_pending": false,
            "version_update": null
          },
          "output_hash": "8ba9f7d3cc6705af37de9e3324d1258e21ccacb5ab0b2d7b389ca08885e11187",
          "completed_at": "2026-07-15T14:50:04Z"
        },
        {
          "id": "substrate",
          "action": "substrate.preflight",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-15T14:50:04Z",
          "output": {
            "status": "disabled",
            "services": {
              "status": "ok",
              "summary": {
                "critical": 0,
                "high": 0,
                "medium": 0,
                "low": 0
              },
              "findings": []
            },
            "policy": {
              "configured": {
                "enabled": false,
                "mode": "off",
                "capabilities": [
                  "records",
                  "graph",
                  "events"
                ],
                "contract_version": 2,
                "require_source_refs": true,
                "endpoint": "http://127.0.0.1:47124",
                "manual_url": "http://127.0.0.1:47124/utcp.json",
                "knowledge_browse_url": "http://127.0.0.1:5276",
                "auth_env": "AI_COLLAB_API_KEY",
                "timeout_seconds": 5,
                "max_result_bytes": 1048576,
                "cache_ttl_seconds": 60,
                "fallback": "local",
                "automation": {
                  "discovery_on_session_start": true,
                  "knowledge_recall": true,
                  "memory_recall": true,
                  "context_enrichment": true,
                  "notices_on_session_start": false,
                  "goals_sync": false,
                  "telemetry_on_maintenance": false,
                  "reporting_dispatch": true,
                  "judgment_dispatch": true,
                  "verification_execution": true
                }
              },
              "active": false,
              "effective_mode": "off",
              "effective_capabilities": []
            }
          },
          "output_hash": "a6df426290b4549a59eecaa0519ead9bcc50b7fcb25bd2185ff6047960f19ccb",
          "completed_at": "2026-07-15T14:50:04Z"
        },
        {
          "id": "notices",
          "action": "substrate.notices",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-15T14:50:04Z",
          "output": {
            "status": "disabled"
          },
          "output_hash": "38b904a1cf83df048360fb2480571b749fd98d57e11f1afdffb5a74a78166fea",
          "completed_at": "2026-07-15T14:50:05Z"
        },
        {
          "id": "goals",
          "action": "substrate.goals",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-15T14:50:05Z",
          "output": {
            "status": "disabled",
            "created": 0,
            "observed": 0,
            "results": []
          },
          "output_hash": "cdfd4de44a28140e686159f34f7b47975954c67e1d1efcef666e985acb136ed8",
          "completed_at": "2026-07-15T14:50:05Z"
        }
      ],
      "completed_at": "2026-07-15T14:50:05Z"
    },
    {
      "id": "WFR-057",
      "schema_version": "1.0",
      "workflow_id": "session.stop",
      "workflow_version": 1,
      "definition_hash": "0cef7bb3e28321be8f85375c154955a69310ce297e47de3f3b8dd48f77a2f07d",
      "plan_hash": "a5e1d77ac734217487fc418e29c7163f4e81178e25d171e70cd4c999d527d3e8",
      "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
      "inputs": {},
      "idempotency_key": "hook:Stop:019f6641-9460-7df0-b9e0-10e949d5b285",
      "status": "completed",
      "attempt": 1,
      "created_at": "2026-07-15T14:50:08Z",
      "updated_at": "2026-07-15T14:50:08Z",
      "receipts": [
        {
          "step_id": "state",
          "action": "state.consistency",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "5a1c6e5246defb1b6b6b90ff734db95bece2886b408ab112ed9b8e67222d5568",
          "completed_at": "2026-07-15T14:50:08Z"
        },
        {
          "step_id": "goals",
          "action": "substrate.goals",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "cdfd4de44a28140e686159f34f7b47975954c67e1d1efcef666e985acb136ed8",
          "completed_at": "2026-07-15T14:50:08Z"
        },
        {
          "step_id": "staleness",
          "action": "staleness.audit",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "1e81cb0ffd0a4d04626920a203b38d2d23a264cd43e807a85d375d69cae8a658",
          "completed_at": "2026-07-15T14:50:08Z"
        },
        {
          "step_id": "reflections",
          "action": "reflection.list",
          "input_hash": "0172e841ab4c13b3a4061f073f9d68a716ec87a8a5d52fde41823385e0582573",
          "output_hash": "c1b6b635c0bab21120657277f14ef6f839909875f307a3745fa48aee2bd6e449",
          "completed_at": "2026-07-15T14:50:08Z"
        },
        {
          "step_id": "bundle",
          "action": "reporting.bundle",
          "input_hash": "aed8ebb688dc3c085dd978d7c4120572173c3cb87e75919e4a937dcca6ef9457",
          "output_hash": "6413b750e5adf462056ec1108a5d692cc446676e520bee65af98f64bc3e9bd9b",
          "completed_at": "2026-07-15T14:50:08Z"
        },
        {
          "step_id": "delegated",
          "action": "reporting.delegate",
          "input_hash": "669197e524ce450fa066ad7ef7d9da00168b780083ca6a5d7094bca3097e8568",
          "output_hash": "e6085059f197def80ae95add1f328418107bea5436c9bd002530043646a3a95c",
          "completed_at": "2026-07-15T14:50:08Z"
        }
      ],
      "steps": [
        {
          "id": "state",
          "action": "state.consistency",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-15T14:50:08Z",
          "output": {
            "status": "ok",
            "repo_root": "D:\\Projects\\prd-plugin",
            "summary": {
              "errors": 0,
              "warnings": 0,
              "infos": 0
            },
            "findings": []
          },
          "output_hash": "5a1c6e5246defb1b6b6b90ff734db95bece2886b408ab112ed9b8e67222d5568",
          "completed_at": "2026-07-15T14:50:08Z"
        },
        {
          "id": "goals",
          "action": "substrate.goals",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-15T14:50:08Z",
          "output": {
            "status": "disabled",
            "created": 0,
            "observed": 0,
            "results": []
          },
          "output_hash": "cdfd4de44a28140e686159f34f7b47975954c67e1d1efcef666e985acb136ed8",
          "completed_at": "2026-07-15T14:50:08Z"
        },
        {
          "id": "staleness",
          "action": "staleness.audit",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-15T14:50:08Z",
          "output": {
            "status": "ok",
            "repo_root": "D:\\Projects\\prd-plugin",
            "counts": {
              "stale": 0
            },
            "stale": []
          },
          "output_hash": "1e81cb0ffd0a4d04626920a203b38d2d23a264cd43e807a85d375d69cae8a658",
          "completed_at": "2026-07-15T14:50:08Z"
        },
        {
          "id": "reflections",
          "action": "reflection.list",
          "status": "completed",
          "resolved_input_hash": "0172e841ab4c13b3a4061f073f9d68a716ec87a8a5d52fde41823385e0582573",
          "started_at": "2026-07-15T14:50:08Z",
          "output": {
            "enabled": false,
            "on_stop": true,
            "max_questions_per_stop": 5,
            "categories": [
              {
                "id": "behaviour_quality",
                "name": "Behaviour quality",
                "enabled": true,
                "question_count": 3
              },
              {
                "id": "harness_friction",
                "name": "Harness friction",
                "enabled": true,
                "question_count": 2
              }
            ],
            "questions": [
              {
                "id": "RFQ-001",
                "text": "Based on the work you just carried out, would you classify your behaviour as good? Answer yes or no and cite observable evidence.",
                "enabled": true,
                "category_id": "behaviour_quality",
                "category_name": "Behaviour quality",
                "effective_enabled": false
              },
              {
                "id": "RFQ-002",
                "text": "If you answered no, what could you do differently to correct your behaviour?",
                "enabled": true,
                "category_id": "behaviour_quality",
                "category_name": "Behaviour quality",
                "effective_enabled": false
              },
              {
                "id": "RFQ-003",
                "text": "Would another attempt using the identified good behaviours materially improve the outcome? Answer yes or no and state the next corrective action if yes.",
                "enabled": true,
                "category_id": "behaviour_quality",
                "category_name": "Behaviour quality",
                "effective_enabled": false
              },
              {
                "id": "RFQ-004",
                "text": "What harness friction points made this work more difficult?",
                "enabled": true,
                "category_id": "harness_friction",
                "category_name": "Harness friction",
                "effective_enabled": false
              },
              {
                "id": "RFQ-005",
                "text": "What up to three changes would most improve friction in the harness?",
                "enabled": true,
                "category_id": "harness_friction",
                "category_name": "Harness friction",
                "effective_enabled": false
              }
            ]
          },
          "output_hash": "c1b6b635c0bab21120657277f14ef6f839909875f307a3745fa48aee2bd6e449",
          "completed_at": "2026-07-15T14:50:08Z"
        },
        {
          "id": "bundle",
          "action": "reporting.bundle",
          "status": "completed",
          "resolved_input_hash": "aed8ebb688dc3c085dd978d7c4120572173c3cb87e75919e4a937dcca6ef9457",
          "started_at": "2026-07-15T14:50:08Z",
          "output": {
            "contract_version": 1,
            "task": "session_summary",
            "repo": "prd-plugin",
            "policy": {
              "enabled": false,
              "executor": "ai-collab",
              "contract_version": 1,
              "profile": "fast-capable",
              "tasks": [
                "report_summary",
                "session_summary",
                "wiki_synthesis",
                "triage_draft"
              ],
              "fallback": "main",
              "require_source_refs": true,
              "max_input_tokens": 12000,
              "max_output_tokens": 1500,
              "timeout_seconds": 30
            },
            "facts": {
              "requests_by_status": {
                "deferred": 1,
                "implemented": 80,
                "proposed": 1,
                "rejected": 1
              },
              "active_requests": [
                {
                  "id": "REQ-072",
                  "status": "proposed",
                  "severity": "low",
                  "summary": "opencode run-until-done: session.idle is a non-blocking notification, so the stop guard can't force continuation on opencode (currently degrades to a printed reminder, 0.5.95). Investigate whether opencode exposes any vetoable/continuation mechanism (a different event, a permission hook, or a 'continue' API) to enforce run-until-done, or accept the reminder as the permanent ceiling. Low priority — user rarely uses opencode."
                }
              ],
              "active_tracking": [],
              "open_health": [],
              "evidence_count": 104,
              "decision_count": 9
            },
            "findings": [],
            "source_refs": [
              ".prd_plugin/config.json",
              ".prd_plugin/state/decisions.json",
              ".prd_plugin/state/evidence.json",
              ".prd_plugin/state/health.json",
              ".prd_plugin/state/requests.json",
              ".prd_plugin/state/tracking.json",
              "REQ-072"
            ],
            "constraints": {
              "max_input_tokens": 12000,
              "max_output_tokens": 1500,
              "timeout_seconds": 30,
              "require_source_refs": true,
              "no_project_state_writes": true,
              "no_secrets_or_local_session_content": true
            }
          },
          "output_hash": "6413b750e5adf462056ec1108a5d692cc446676e520bee65af98f64bc3e9bd9b",
          "completed_at": "2026-07-15T14:50:08Z"
        },
        {
          "id": "delegated",
          "action": "reporting.delegate",
          "status": "completed",
          "resolved_input_hash": "669197e524ce450fa066ad7ef7d9da00168b780083ca6a5d7094bca3097e8568",
          "started_at": "2026-07-15T14:50:08Z",
          "output": {
            "status": "fallback",
            "action": "main",
            "reason": "disabled"
          },
          "output_hash": "e6085059f197def80ae95add1f328418107bea5436c9bd002530043646a3a95c",
          "completed_at": "2026-07-15T14:50:08Z"
        }
      ],
      "completed_at": "2026-07-15T14:50:08Z"
    },
    {
      "id": "WFR-058",
      "schema_version": "1.0",
      "workflow_id": "session.start",
      "workflow_version": 1,
      "definition_hash": "d0f98da02571e6dd27fec4aed92d3c82af9db75f8b90b997bf665635c7b7f6ca",
      "plan_hash": "b5072615ca3b7e9a3bd85d50d1f069d99ef2a9816b32c03a370745ed7a205536",
      "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
      "inputs": {},
      "idempotency_key": "hook:SessionStart:019f6646-4f60-7e02-b8d9-f434734fcafc",
      "status": "completed",
      "attempt": 1,
      "created_at": "2026-07-15T14:55:14Z",
      "updated_at": "2026-07-15T14:55:15Z",
      "receipts": [
        {
          "step_id": "config",
          "action": "config.audit",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "3782ec2317c0c8ee7598634310a2804d8aae4735f557498f9d3b8fae7c45e1e5",
          "completed_at": "2026-07-15T14:55:14Z"
        },
        {
          "step_id": "services",
          "action": "services.audit",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "13dcc58bd528f3efa3e6e0fa0853a6eedc376f1f3685fbd4869cbb2b60382ee3",
          "completed_at": "2026-07-15T14:55:14Z"
        },
        {
          "step_id": "state",
          "action": "state.consistency",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "5a1c6e5246defb1b6b6b90ff734db95bece2886b408ab112ed9b8e67222d5568",
          "completed_at": "2026-07-15T14:55:14Z"
        },
        {
          "step_id": "status",
          "action": "state.query",
          "input_hash": "a15231a2142a2a9a85355a8b9cbbccffe01a9c9c2c2fd8c2bc2987cdc481564a",
          "output_hash": "8ba9f7d3cc6705af37de9e3324d1258e21ccacb5ab0b2d7b389ca08885e11187",
          "completed_at": "2026-07-15T14:55:14Z"
        },
        {
          "step_id": "substrate",
          "action": "substrate.preflight",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "a6df426290b4549a59eecaa0519ead9bcc50b7fcb25bd2185ff6047960f19ccb",
          "completed_at": "2026-07-15T14:55:15Z"
        },
        {
          "step_id": "notices",
          "action": "substrate.notices",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "38b904a1cf83df048360fb2480571b749fd98d57e11f1afdffb5a74a78166fea",
          "completed_at": "2026-07-15T14:55:15Z"
        },
        {
          "step_id": "goals",
          "action": "substrate.goals",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "cdfd4de44a28140e686159f34f7b47975954c67e1d1efcef666e985acb136ed8",
          "completed_at": "2026-07-15T14:55:15Z"
        }
      ],
      "steps": [
        {
          "id": "config",
          "action": "config.audit",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-15T14:55:14Z",
          "output": {
            "status": "ok",
            "summary": {
              "settings": 195,
              "mutable": 186,
              "read_only_or_managed": 9,
              "unclassified": 0,
              "unknown": 0,
              "invalid": 0,
              "missing_using_defaults": 0
            },
            "unclassified_keys": [],
            "unknown_keys": [],
            "invalid_values": [],
            "missing_using_defaults": []
          },
          "output_hash": "3782ec2317c0c8ee7598634310a2804d8aae4735f557498f9d3b8fae7c45e1e5",
          "completed_at": "2026-07-15T14:55:14Z"
        },
        {
          "id": "services",
          "action": "services.audit",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-15T14:55:14Z",
          "output": {
            "status": "ok",
            "summary": {
              "critical": 0,
              "high": 0,
              "medium": 0,
              "low": 0
            },
            "findings": []
          },
          "output_hash": "13dcc58bd528f3efa3e6e0fa0853a6eedc376f1f3685fbd4869cbb2b60382ee3",
          "completed_at": "2026-07-15T14:55:14Z"
        },
        {
          "id": "state",
          "action": "state.consistency",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-15T14:55:14Z",
          "output": {
            "status": "ok",
            "repo_root": "D:\\Projects\\prd-plugin",
            "summary": {
              "errors": 0,
              "warnings": 0,
              "infos": 0
            },
            "findings": []
          },
          "output_hash": "5a1c6e5246defb1b6b6b90ff734db95bece2886b408ab112ed9b8e67222d5568",
          "completed_at": "2026-07-15T14:55:14Z"
        },
        {
          "id": "status",
          "action": "state.query",
          "status": "completed",
          "resolved_input_hash": "a15231a2142a2a9a85355a8b9cbbccffe01a9c9c2c2fd8c2bc2987cdc481564a",
          "started_at": "2026-07-15T14:55:14Z",
          "output": {
            "repo_root": "D:\\Projects\\prd-plugin",
            "autonomy_level": "autonomous",
            "requests_by_status": {
              "deferred": 1,
              "implemented": 80,
              "proposed": 1,
              "rejected": 1
            },
            "active_tracking": [],
            "tracking_branches": [],
            "tracking_branch_counts": {},
            "tracking_branch_errors": [],
            "open_health": [],
            "stale_count": 0,
            "skill_usage": {
              "project-decision-policy": 1,
              "project-request-intake": 1,
              "project-test-driven-implementation": 1,
              "project-verification-before-completion": 1,
              "project-llm-wiki": 1
            },
            "wiki_backfill_pending": false,
            "version_update": null
          },
          "output_hash": "8ba9f7d3cc6705af37de9e3324d1258e21ccacb5ab0b2d7b389ca08885e11187",
          "completed_at": "2026-07-15T14:55:14Z"
        },
        {
          "id": "substrate",
          "action": "substrate.preflight",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-15T14:55:14Z",
          "output": {
            "status": "disabled",
            "services": {
              "status": "ok",
              "summary": {
                "critical": 0,
                "high": 0,
                "medium": 0,
                "low": 0
              },
              "findings": []
            },
            "policy": {
              "configured": {
                "enabled": false,
                "mode": "off",
                "capabilities": [
                  "records",
                  "graph",
                  "events"
                ],
                "contract_version": 2,
                "require_source_refs": true,
                "endpoint": "http://127.0.0.1:47124",
                "manual_url": "http://127.0.0.1:47124/utcp.json",
                "knowledge_browse_url": "http://127.0.0.1:5276",
                "auth_env": "AI_COLLAB_API_KEY",
                "timeout_seconds": 5,
                "max_result_bytes": 1048576,
                "cache_ttl_seconds": 60,
                "fallback": "local",
                "automation": {
                  "discovery_on_session_start": true,
                  "knowledge_recall": true,
                  "memory_recall": true,
                  "context_enrichment": true,
                  "notices_on_session_start": false,
                  "goals_sync": false,
                  "telemetry_on_maintenance": false,
                  "reporting_dispatch": true,
                  "judgment_dispatch": true,
                  "verification_execution": true
                }
              },
              "active": false,
              "effective_mode": "off",
              "effective_capabilities": []
            }
          },
          "output_hash": "a6df426290b4549a59eecaa0519ead9bcc50b7fcb25bd2185ff6047960f19ccb",
          "completed_at": "2026-07-15T14:55:15Z"
        },
        {
          "id": "notices",
          "action": "substrate.notices",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-15T14:55:15Z",
          "output": {
            "status": "disabled"
          },
          "output_hash": "38b904a1cf83df048360fb2480571b749fd98d57e11f1afdffb5a74a78166fea",
          "completed_at": "2026-07-15T14:55:15Z"
        },
        {
          "id": "goals",
          "action": "substrate.goals",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-15T14:55:15Z",
          "output": {
            "status": "disabled",
            "created": 0,
            "observed": 0,
            "results": []
          },
          "output_hash": "cdfd4de44a28140e686159f34f7b47975954c67e1d1efcef666e985acb136ed8",
          "completed_at": "2026-07-15T14:55:15Z"
        }
      ],
      "completed_at": "2026-07-15T14:55:15Z"
    },
    {
      "id": "WFR-059",
      "schema_version": "1.0",
      "workflow_id": "session.stop",
      "workflow_version": 1,
      "definition_hash": "0cef7bb3e28321be8f85375c154955a69310ce297e47de3f3b8dd48f77a2f07d",
      "plan_hash": "a5e1d77ac734217487fc418e29c7163f4e81178e25d171e70cd4c999d527d3e8",
      "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
      "inputs": {},
      "idempotency_key": "hook:Stop:019f6646-4f60-7e02-b8d9-f434734fcafc",
      "status": "completed",
      "attempt": 1,
      "created_at": "2026-07-15T15:01:52Z",
      "updated_at": "2026-07-15T15:01:54Z",
      "receipts": [
        {
          "step_id": "state",
          "action": "state.consistency",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "5a1c6e5246defb1b6b6b90ff734db95bece2886b408ab112ed9b8e67222d5568",
          "completed_at": "2026-07-15T15:01:53Z"
        },
        {
          "step_id": "goals",
          "action": "substrate.goals",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "cdfd4de44a28140e686159f34f7b47975954c67e1d1efcef666e985acb136ed8",
          "completed_at": "2026-07-15T15:01:53Z"
        },
        {
          "step_id": "staleness",
          "action": "staleness.audit",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "1e81cb0ffd0a4d04626920a203b38d2d23a264cd43e807a85d375d69cae8a658",
          "completed_at": "2026-07-15T15:01:53Z"
        },
        {
          "step_id": "reflections",
          "action": "reflection.list",
          "input_hash": "0172e841ab4c13b3a4061f073f9d68a716ec87a8a5d52fde41823385e0582573",
          "output_hash": "c1b6b635c0bab21120657277f14ef6f839909875f307a3745fa48aee2bd6e449",
          "completed_at": "2026-07-15T15:01:53Z"
        },
        {
          "step_id": "bundle",
          "action": "reporting.bundle",
          "input_hash": "aed8ebb688dc3c085dd978d7c4120572173c3cb87e75919e4a937dcca6ef9457",
          "output_hash": "6413b750e5adf462056ec1108a5d692cc446676e520bee65af98f64bc3e9bd9b",
          "completed_at": "2026-07-15T15:01:53Z"
        },
        {
          "step_id": "delegated",
          "action": "reporting.delegate",
          "input_hash": "669197e524ce450fa066ad7ef7d9da00168b780083ca6a5d7094bca3097e8568",
          "output_hash": "e6085059f197def80ae95add1f328418107bea5436c9bd002530043646a3a95c",
          "completed_at": "2026-07-15T15:01:54Z"
        }
      ],
      "steps": [
        {
          "id": "state",
          "action": "state.consistency",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-15T15:01:52Z",
          "output": {
            "status": "ok",
            "repo_root": "D:\\Projects\\prd-plugin",
            "summary": {
              "errors": 0,
              "warnings": 0,
              "infos": 0
            },
            "findings": []
          },
          "output_hash": "5a1c6e5246defb1b6b6b90ff734db95bece2886b408ab112ed9b8e67222d5568",
          "completed_at": "2026-07-15T15:01:53Z"
        },
        {
          "id": "goals",
          "action": "substrate.goals",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-15T15:01:53Z",
          "output": {
            "status": "disabled",
            "created": 0,
            "observed": 0,
            "results": []
          },
          "output_hash": "cdfd4de44a28140e686159f34f7b47975954c67e1d1efcef666e985acb136ed8",
          "completed_at": "2026-07-15T15:01:53Z"
        },
        {
          "id": "staleness",
          "action": "staleness.audit",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-15T15:01:53Z",
          "output": {
            "status": "ok",
            "repo_root": "D:\\Projects\\prd-plugin",
            "counts": {
              "stale": 0
            },
            "stale": []
          },
          "output_hash": "1e81cb0ffd0a4d04626920a203b38d2d23a264cd43e807a85d375d69cae8a658",
          "completed_at": "2026-07-15T15:01:53Z"
        },
        {
          "id": "reflections",
          "action": "reflection.list",
          "status": "completed",
          "resolved_input_hash": "0172e841ab4c13b3a4061f073f9d68a716ec87a8a5d52fde41823385e0582573",
          "started_at": "2026-07-15T15:01:53Z",
          "output": {
            "enabled": false,
            "on_stop": true,
            "max_questions_per_stop": 5,
            "categories": [
              {
                "id": "behaviour_quality",
                "name": "Behaviour quality",
                "enabled": true,
                "question_count": 3
              },
              {
                "id": "harness_friction",
                "name": "Harness friction",
                "enabled": true,
                "question_count": 2
              }
            ],
            "questions": [
              {
                "id": "RFQ-001",
                "text": "Based on the work you just carried out, would you classify your behaviour as good? Answer yes or no and cite observable evidence.",
                "enabled": true,
                "category_id": "behaviour_quality",
                "category_name": "Behaviour quality",
                "effective_enabled": false
              },
              {
                "id": "RFQ-002",
                "text": "If you answered no, what could you do differently to correct your behaviour?",
                "enabled": true,
                "category_id": "behaviour_quality",
                "category_name": "Behaviour quality",
                "effective_enabled": false
              },
              {
                "id": "RFQ-003",
                "text": "Would another attempt using the identified good behaviours materially improve the outcome? Answer yes or no and state the next corrective action if yes.",
                "enabled": true,
                "category_id": "behaviour_quality",
                "category_name": "Behaviour quality",
                "effective_enabled": false
              },
              {
                "id": "RFQ-004",
                "text": "What harness friction points made this work more difficult?",
                "enabled": true,
                "category_id": "harness_friction",
                "category_name": "Harness friction",
                "effective_enabled": false
              },
              {
                "id": "RFQ-005",
                "text": "What up to three changes would most improve friction in the harness?",
                "enabled": true,
                "category_id": "harness_friction",
                "category_name": "Harness friction",
                "effective_enabled": false
              }
            ]
          },
          "output_hash": "c1b6b635c0bab21120657277f14ef6f839909875f307a3745fa48aee2bd6e449",
          "completed_at": "2026-07-15T15:01:53Z"
        },
        {
          "id": "bundle",
          "action": "reporting.bundle",
          "status": "completed",
          "resolved_input_hash": "aed8ebb688dc3c085dd978d7c4120572173c3cb87e75919e4a937dcca6ef9457",
          "started_at": "2026-07-15T15:01:53Z",
          "output": {
            "contract_version": 1,
            "task": "session_summary",
            "repo": "prd-plugin",
            "policy": {
              "enabled": false,
              "executor": "ai-collab",
              "contract_version": 1,
              "profile": "fast-capable",
              "tasks": [
                "report_summary",
                "session_summary",
                "wiki_synthesis",
                "triage_draft"
              ],
              "fallback": "main",
              "require_source_refs": true,
              "max_input_tokens": 12000,
              "max_output_tokens": 1500,
              "timeout_seconds": 30
            },
            "facts": {
              "requests_by_status": {
                "deferred": 1,
                "implemented": 80,
                "proposed": 1,
                "rejected": 1
              },
              "active_requests": [
                {
                  "id": "REQ-072",
                  "status": "proposed",
                  "severity": "low",
                  "summary": "opencode run-until-done: session.idle is a non-blocking notification, so the stop guard can't force continuation on opencode (currently degrades to a printed reminder, 0.5.95). Investigate whether opencode exposes any vetoable/continuation mechanism (a different event, a permission hook, or a 'continue' API) to enforce run-until-done, or accept the reminder as the permanent ceiling. Low priority — user rarely uses opencode."
                }
              ],
              "active_tracking": [],
              "open_health": [],
              "evidence_count": 104,
              "decision_count": 9
            },
            "findings": [],
            "source_refs": [
              ".prd_plugin/config.json",
              ".prd_plugin/state/decisions.json",
              ".prd_plugin/state/evidence.json",
              ".prd_plugin/state/health.json",
              ".prd_plugin/state/requests.json",
              ".prd_plugin/state/tracking.json",
              "REQ-072"
            ],
            "constraints": {
              "max_input_tokens": 12000,
              "max_output_tokens": 1500,
              "timeout_seconds": 30,
              "require_source_refs": true,
              "no_project_state_writes": true,
              "no_secrets_or_local_session_content": true
            }
          },
          "output_hash": "6413b750e5adf462056ec1108a5d692cc446676e520bee65af98f64bc3e9bd9b",
          "completed_at": "2026-07-15T15:01:53Z"
        },
        {
          "id": "delegated",
          "action": "reporting.delegate",
          "status": "completed",
          "resolved_input_hash": "669197e524ce450fa066ad7ef7d9da00168b780083ca6a5d7094bca3097e8568",
          "started_at": "2026-07-15T15:01:53Z",
          "output": {
            "status": "fallback",
            "action": "main",
            "reason": "disabled"
          },
          "output_hash": "e6085059f197def80ae95add1f328418107bea5436c9bd002530043646a3a95c",
          "completed_at": "2026-07-15T15:01:54Z"
        }
      ],
      "completed_at": "2026-07-15T15:01:54Z"
    },
    {
      "id": "WFR-060",
      "schema_version": "1.0",
      "workflow_id": "session.start",
      "workflow_version": 1,
      "definition_hash": "d0f98da02571e6dd27fec4aed92d3c82af9db75f8b90b997bf665635c7b7f6ca",
      "plan_hash": "b5072615ca3b7e9a3bd85d50d1f069d99ef2a9816b32c03a370745ed7a205536",
      "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
      "inputs": {},
      "idempotency_key": "hook:SessionStart:019f664c-9f4c-7e11-b384-2bfb9f7dd441",
      "status": "completed",
      "attempt": 1,
      "created_at": "2026-07-15T15:02:07Z",
      "updated_at": "2026-07-15T15:02:09Z",
      "receipts": [
        {
          "step_id": "config",
          "action": "config.audit",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "3782ec2317c0c8ee7598634310a2804d8aae4735f557498f9d3b8fae7c45e1e5",
          "completed_at": "2026-07-15T15:02:07Z"
        },
        {
          "step_id": "services",
          "action": "services.audit",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "13dcc58bd528f3efa3e6e0fa0853a6eedc376f1f3685fbd4869cbb2b60382ee3",
          "completed_at": "2026-07-15T15:02:07Z"
        },
        {
          "step_id": "state",
          "action": "state.consistency",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "5a1c6e5246defb1b6b6b90ff734db95bece2886b408ab112ed9b8e67222d5568",
          "completed_at": "2026-07-15T15:02:08Z"
        },
        {
          "step_id": "status",
          "action": "state.query",
          "input_hash": "a15231a2142a2a9a85355a8b9cbbccffe01a9c9c2c2fd8c2bc2987cdc481564a",
          "output_hash": "8ba9f7d3cc6705af37de9e3324d1258e21ccacb5ab0b2d7b389ca08885e11187",
          "completed_at": "2026-07-15T15:02:08Z"
        },
        {
          "step_id": "substrate",
          "action": "substrate.preflight",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "a6df426290b4549a59eecaa0519ead9bcc50b7fcb25bd2185ff6047960f19ccb",
          "completed_at": "2026-07-15T15:02:09Z"
        },
        {
          "step_id": "notices",
          "action": "substrate.notices",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "38b904a1cf83df048360fb2480571b749fd98d57e11f1afdffb5a74a78166fea",
          "completed_at": "2026-07-15T15:02:09Z"
        },
        {
          "step_id": "goals",
          "action": "substrate.goals",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "cdfd4de44a28140e686159f34f7b47975954c67e1d1efcef666e985acb136ed8",
          "completed_at": "2026-07-15T15:02:09Z"
        }
      ],
      "steps": [
        {
          "id": "config",
          "action": "config.audit",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-15T15:02:07Z",
          "output": {
            "status": "ok",
            "summary": {
              "settings": 195,
              "mutable": 186,
              "read_only_or_managed": 9,
              "unclassified": 0,
              "unknown": 0,
              "invalid": 0,
              "missing_using_defaults": 0
            },
            "unclassified_keys": [],
            "unknown_keys": [],
            "invalid_values": [],
            "missing_using_defaults": []
          },
          "output_hash": "3782ec2317c0c8ee7598634310a2804d8aae4735f557498f9d3b8fae7c45e1e5",
          "completed_at": "2026-07-15T15:02:07Z"
        },
        {
          "id": "services",
          "action": "services.audit",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-15T15:02:07Z",
          "output": {
            "status": "ok",
            "summary": {
              "critical": 0,
              "high": 0,
              "medium": 0,
              "low": 0
            },
            "findings": []
          },
          "output_hash": "13dcc58bd528f3efa3e6e0fa0853a6eedc376f1f3685fbd4869cbb2b60382ee3",
          "completed_at": "2026-07-15T15:02:07Z"
        },
        {
          "id": "state",
          "action": "state.consistency",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-15T15:02:07Z",
          "output": {
            "status": "ok",
            "repo_root": "D:\\Projects\\prd-plugin",
            "summary": {
              "errors": 0,
              "warnings": 0,
              "infos": 0
            },
            "findings": []
          },
          "output_hash": "5a1c6e5246defb1b6b6b90ff734db95bece2886b408ab112ed9b8e67222d5568",
          "completed_at": "2026-07-15T15:02:08Z"
        },
        {
          "id": "status",
          "action": "state.query",
          "status": "completed",
          "resolved_input_hash": "a15231a2142a2a9a85355a8b9cbbccffe01a9c9c2c2fd8c2bc2987cdc481564a",
          "started_at": "2026-07-15T15:02:08Z",
          "output": {
            "repo_root": "D:\\Projects\\prd-plugin",
            "autonomy_level": "autonomous",
            "requests_by_status": {
              "deferred": 1,
              "implemented": 80,
              "proposed": 1,
              "rejected": 1
            },
            "active_tracking": [],
            "tracking_branches": [],
            "tracking_branch_counts": {},
            "tracking_branch_errors": [],
            "open_health": [],
            "stale_count": 0,
            "skill_usage": {
              "project-decision-policy": 1,
              "project-request-intake": 1,
              "project-test-driven-implementation": 1,
              "project-verification-before-completion": 1,
              "project-llm-wiki": 1
            },
            "wiki_backfill_pending": false,
            "version_update": null
          },
          "output_hash": "8ba9f7d3cc6705af37de9e3324d1258e21ccacb5ab0b2d7b389ca08885e11187",
          "completed_at": "2026-07-15T15:02:08Z"
        },
        {
          "id": "substrate",
          "action": "substrate.preflight",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-15T15:02:09Z",
          "output": {
            "status": "disabled",
            "services": {
              "status": "ok",
              "summary": {
                "critical": 0,
                "high": 0,
                "medium": 0,
                "low": 0
              },
              "findings": []
            },
            "policy": {
              "configured": {
                "enabled": false,
                "mode": "off",
                "capabilities": [
                  "records",
                  "graph",
                  "events"
                ],
                "contract_version": 2,
                "require_source_refs": true,
                "endpoint": "http://127.0.0.1:47124",
                "manual_url": "http://127.0.0.1:47124/utcp.json",
                "knowledge_browse_url": "http://127.0.0.1:5276",
                "auth_env": "AI_COLLAB_API_KEY",
                "timeout_seconds": 5,
                "max_result_bytes": 1048576,
                "cache_ttl_seconds": 60,
                "fallback": "local",
                "automation": {
                  "discovery_on_session_start": true,
                  "knowledge_recall": true,
                  "memory_recall": true,
                  "context_enrichment": true,
                  "notices_on_session_start": false,
                  "goals_sync": false,
                  "telemetry_on_maintenance": false,
                  "reporting_dispatch": true,
                  "judgment_dispatch": true,
                  "verification_execution": true
                }
              },
              "active": false,
              "effective_mode": "off",
              "effective_capabilities": []
            }
          },
          "output_hash": "a6df426290b4549a59eecaa0519ead9bcc50b7fcb25bd2185ff6047960f19ccb",
          "completed_at": "2026-07-15T15:02:09Z"
        },
        {
          "id": "notices",
          "action": "substrate.notices",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-15T15:02:09Z",
          "output": {
            "status": "disabled"
          },
          "output_hash": "38b904a1cf83df048360fb2480571b749fd98d57e11f1afdffb5a74a78166fea",
          "completed_at": "2026-07-15T15:02:09Z"
        },
        {
          "id": "goals",
          "action": "substrate.goals",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-15T15:02:09Z",
          "output": {
            "status": "disabled",
            "created": 0,
            "observed": 0,
            "results": []
          },
          "output_hash": "cdfd4de44a28140e686159f34f7b47975954c67e1d1efcef666e985acb136ed8",
          "completed_at": "2026-07-15T15:02:09Z"
        }
      ],
      "completed_at": "2026-07-15T15:02:09Z"
    },
    {
      "id": "WFR-061",
      "schema_version": "1.0",
      "workflow_id": "session.stop",
      "workflow_version": 1,
      "definition_hash": "0cef7bb3e28321be8f85375c154955a69310ce297e47de3f3b8dd48f77a2f07d",
      "plan_hash": "a5e1d77ac734217487fc418e29c7163f4e81178e25d171e70cd4c999d527d3e8",
      "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
      "inputs": {},
      "idempotency_key": "hook:Stop:019f664c-9f4c-7e11-b384-2bfb9f7dd441",
      "status": "completed",
      "attempt": 1,
      "created_at": "2026-07-15T15:02:12Z",
      "updated_at": "2026-07-15T15:02:13Z",
      "receipts": [
        {
          "step_id": "state",
          "action": "state.consistency",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "5a1c6e5246defb1b6b6b90ff734db95bece2886b408ab112ed9b8e67222d5568",
          "completed_at": "2026-07-15T15:02:13Z"
        },
        {
          "step_id": "goals",
          "action": "substrate.goals",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "cdfd4de44a28140e686159f34f7b47975954c67e1d1efcef666e985acb136ed8",
          "completed_at": "2026-07-15T15:02:13Z"
        },
        {
          "step_id": "staleness",
          "action": "staleness.audit",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "1e81cb0ffd0a4d04626920a203b38d2d23a264cd43e807a85d375d69cae8a658",
          "completed_at": "2026-07-15T15:02:13Z"
        },
        {
          "step_id": "reflections",
          "action": "reflection.list",
          "input_hash": "0172e841ab4c13b3a4061f073f9d68a716ec87a8a5d52fde41823385e0582573",
          "output_hash": "c1b6b635c0bab21120657277f14ef6f839909875f307a3745fa48aee2bd6e449",
          "completed_at": "2026-07-15T15:02:13Z"
        },
        {
          "step_id": "bundle",
          "action": "reporting.bundle",
          "input_hash": "aed8ebb688dc3c085dd978d7c4120572173c3cb87e75919e4a937dcca6ef9457",
          "output_hash": "6413b750e5adf462056ec1108a5d692cc446676e520bee65af98f64bc3e9bd9b",
          "completed_at": "2026-07-15T15:02:13Z"
        },
        {
          "step_id": "delegated",
          "action": "reporting.delegate",
          "input_hash": "669197e524ce450fa066ad7ef7d9da00168b780083ca6a5d7094bca3097e8568",
          "output_hash": "e6085059f197def80ae95add1f328418107bea5436c9bd002530043646a3a95c",
          "completed_at": "2026-07-15T15:02:13Z"
        }
      ],
      "steps": [
        {
          "id": "state",
          "action": "state.consistency",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-15T15:02:12Z",
          "output": {
            "status": "ok",
            "repo_root": "D:\\Projects\\prd-plugin",
            "summary": {
              "errors": 0,
              "warnings": 0,
              "infos": 0
            },
            "findings": []
          },
          "output_hash": "5a1c6e5246defb1b6b6b90ff734db95bece2886b408ab112ed9b8e67222d5568",
          "completed_at": "2026-07-15T15:02:13Z"
        },
        {
          "id": "goals",
          "action": "substrate.goals",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-15T15:02:13Z",
          "output": {
            "status": "disabled",
            "created": 0,
            "observed": 0,
            "results": []
          },
          "output_hash": "cdfd4de44a28140e686159f34f7b47975954c67e1d1efcef666e985acb136ed8",
          "completed_at": "2026-07-15T15:02:13Z"
        },
        {
          "id": "staleness",
          "action": "staleness.audit",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-15T15:02:13Z",
          "output": {
            "status": "ok",
            "repo_root": "D:\\Projects\\prd-plugin",
            "counts": {
              "stale": 0
            },
            "stale": []
          },
          "output_hash": "1e81cb0ffd0a4d04626920a203b38d2d23a264cd43e807a85d375d69cae8a658",
          "completed_at": "2026-07-15T15:02:13Z"
        },
        {
          "id": "reflections",
          "action": "reflection.list",
          "status": "completed",
          "resolved_input_hash": "0172e841ab4c13b3a4061f073f9d68a716ec87a8a5d52fde41823385e0582573",
          "started_at": "2026-07-15T15:02:13Z",
          "output": {
            "enabled": false,
            "on_stop": true,
            "max_questions_per_stop": 5,
            "categories": [
              {
                "id": "behaviour_quality",
                "name": "Behaviour quality",
                "enabled": true,
                "question_count": 3
              },
              {
                "id": "harness_friction",
                "name": "Harness friction",
                "enabled": true,
                "question_count": 2
              }
            ],
            "questions": [
              {
                "id": "RFQ-001",
                "text": "Based on the work you just carried out, would you classify your behaviour as good? Answer yes or no and cite observable evidence.",
                "enabled": true,
                "category_id": "behaviour_quality",
                "category_name": "Behaviour quality",
                "effective_enabled": false
              },
              {
                "id": "RFQ-002",
                "text": "If you answered no, what could you do differently to correct your behaviour?",
                "enabled": true,
                "category_id": "behaviour_quality",
                "category_name": "Behaviour quality",
                "effective_enabled": false
              },
              {
                "id": "RFQ-003",
                "text": "Would another attempt using the identified good behaviours materially improve the outcome? Answer yes or no and state the next corrective action if yes.",
                "enabled": true,
                "category_id": "behaviour_quality",
                "category_name": "Behaviour quality",
                "effective_enabled": false
              },
              {
                "id": "RFQ-004",
                "text": "What harness friction points made this work more difficult?",
                "enabled": true,
                "category_id": "harness_friction",
                "category_name": "Harness friction",
                "effective_enabled": false
              },
              {
                "id": "RFQ-005",
                "text": "What up to three changes would most improve friction in the harness?",
                "enabled": true,
                "category_id": "harness_friction",
                "category_name": "Harness friction",
                "effective_enabled": false
              }
            ]
          },
          "output_hash": "c1b6b635c0bab21120657277f14ef6f839909875f307a3745fa48aee2bd6e449",
          "completed_at": "2026-07-15T15:02:13Z"
        },
        {
          "id": "bundle",
          "action": "reporting.bundle",
          "status": "completed",
          "resolved_input_hash": "aed8ebb688dc3c085dd978d7c4120572173c3cb87e75919e4a937dcca6ef9457",
          "started_at": "2026-07-15T15:02:13Z",
          "output": {
            "contract_version": 1,
            "task": "session_summary",
            "repo": "prd-plugin",
            "policy": {
              "enabled": false,
              "executor": "ai-collab",
              "contract_version": 1,
              "profile": "fast-capable",
              "tasks": [
                "report_summary",
                "session_summary",
                "wiki_synthesis",
                "triage_draft"
              ],
              "fallback": "main",
              "require_source_refs": true,
              "max_input_tokens": 12000,
              "max_output_tokens": 1500,
              "timeout_seconds": 30
            },
            "facts": {
              "requests_by_status": {
                "deferred": 1,
                "implemented": 80,
                "proposed": 1,
                "rejected": 1
              },
              "active_requests": [
                {
                  "id": "REQ-072",
                  "status": "proposed",
                  "severity": "low",
                  "summary": "opencode run-until-done: session.idle is a non-blocking notification, so the stop guard can't force continuation on opencode (currently degrades to a printed reminder, 0.5.95). Investigate whether opencode exposes any vetoable/continuation mechanism (a different event, a permission hook, or a 'continue' API) to enforce run-until-done, or accept the reminder as the permanent ceiling. Low priority — user rarely uses opencode."
                }
              ],
              "active_tracking": [],
              "open_health": [],
              "evidence_count": 104,
              "decision_count": 9
            },
            "findings": [],
            "source_refs": [
              ".prd_plugin/config.json",
              ".prd_plugin/state/decisions.json",
              ".prd_plugin/state/evidence.json",
              ".prd_plugin/state/health.json",
              ".prd_plugin/state/requests.json",
              ".prd_plugin/state/tracking.json",
              "REQ-072"
            ],
            "constraints": {
              "max_input_tokens": 12000,
              "max_output_tokens": 1500,
              "timeout_seconds": 30,
              "require_source_refs": true,
              "no_project_state_writes": true,
              "no_secrets_or_local_session_content": true
            }
          },
          "output_hash": "6413b750e5adf462056ec1108a5d692cc446676e520bee65af98f64bc3e9bd9b",
          "completed_at": "2026-07-15T15:02:13Z"
        },
        {
          "id": "delegated",
          "action": "reporting.delegate",
          "status": "completed",
          "resolved_input_hash": "669197e524ce450fa066ad7ef7d9da00168b780083ca6a5d7094bca3097e8568",
          "started_at": "2026-07-15T15:02:13Z",
          "output": {
            "status": "fallback",
            "action": "main",
            "reason": "disabled"
          },
          "output_hash": "e6085059f197def80ae95add1f328418107bea5436c9bd002530043646a3a95c",
          "completed_at": "2026-07-15T15:02:13Z"
        }
      ],
      "completed_at": "2026-07-15T15:02:13Z"
    },
    {
      "id": "WFR-062",
      "schema_version": "1.0",
      "workflow_id": "session.start",
      "workflow_version": 1,
      "definition_hash": "d0f98da02571e6dd27fec4aed92d3c82af9db75f8b90b997bf665635c7b7f6ca",
      "plan_hash": "b5072615ca3b7e9a3bd85d50d1f069d99ef2a9816b32c03a370745ed7a205536",
      "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
      "inputs": {},
      "idempotency_key": "hook:SessionStart:019f664c-dba8-7940-9572-33d4e0990c59",
      "status": "completed",
      "attempt": 1,
      "created_at": "2026-07-15T15:02:23Z",
      "updated_at": "2026-07-15T15:02:24Z",
      "receipts": [
        {
          "step_id": "config",
          "action": "config.audit",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "3782ec2317c0c8ee7598634310a2804d8aae4735f557498f9d3b8fae7c45e1e5",
          "completed_at": "2026-07-15T15:02:23Z"
        },
        {
          "step_id": "services",
          "action": "services.audit",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "13dcc58bd528f3efa3e6e0fa0853a6eedc376f1f3685fbd4869cbb2b60382ee3",
          "completed_at": "2026-07-15T15:02:23Z"
        },
        {
          "step_id": "state",
          "action": "state.consistency",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "5a1c6e5246defb1b6b6b90ff734db95bece2886b408ab112ed9b8e67222d5568",
          "completed_at": "2026-07-15T15:02:24Z"
        },
        {
          "step_id": "status",
          "action": "state.query",
          "input_hash": "a15231a2142a2a9a85355a8b9cbbccffe01a9c9c2c2fd8c2bc2987cdc481564a",
          "output_hash": "8ba9f7d3cc6705af37de9e3324d1258e21ccacb5ab0b2d7b389ca08885e11187",
          "completed_at": "2026-07-15T15:02:24Z"
        },
        {
          "step_id": "substrate",
          "action": "substrate.preflight",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "a6df426290b4549a59eecaa0519ead9bcc50b7fcb25bd2185ff6047960f19ccb",
          "completed_at": "2026-07-15T15:02:24Z"
        },
        {
          "step_id": "notices",
          "action": "substrate.notices",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "38b904a1cf83df048360fb2480571b749fd98d57e11f1afdffb5a74a78166fea",
          "completed_at": "2026-07-15T15:02:24Z"
        },
        {
          "step_id": "goals",
          "action": "substrate.goals",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "cdfd4de44a28140e686159f34f7b47975954c67e1d1efcef666e985acb136ed8",
          "completed_at": "2026-07-15T15:02:24Z"
        }
      ],
      "steps": [
        {
          "id": "config",
          "action": "config.audit",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-15T15:02:23Z",
          "output": {
            "status": "ok",
            "summary": {
              "settings": 195,
              "mutable": 186,
              "read_only_or_managed": 9,
              "unclassified": 0,
              "unknown": 0,
              "invalid": 0,
              "missing_using_defaults": 0
            },
            "unclassified_keys": [],
            "unknown_keys": [],
            "invalid_values": [],
            "missing_using_defaults": []
          },
          "output_hash": "3782ec2317c0c8ee7598634310a2804d8aae4735f557498f9d3b8fae7c45e1e5",
          "completed_at": "2026-07-15T15:02:23Z"
        },
        {
          "id": "services",
          "action": "services.audit",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-15T15:02:23Z",
          "output": {
            "status": "ok",
            "summary": {
              "critical": 0,
              "high": 0,
              "medium": 0,
              "low": 0
            },
            "findings": []
          },
          "output_hash": "13dcc58bd528f3efa3e6e0fa0853a6eedc376f1f3685fbd4869cbb2b60382ee3",
          "completed_at": "2026-07-15T15:02:23Z"
        },
        {
          "id": "state",
          "action": "state.consistency",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-15T15:02:23Z",
          "output": {
            "status": "ok",
            "repo_root": "D:\\Projects\\prd-plugin",
            "summary": {
              "errors": 0,
              "warnings": 0,
              "infos": 0
            },
            "findings": []
          },
          "output_hash": "5a1c6e5246defb1b6b6b90ff734db95bece2886b408ab112ed9b8e67222d5568",
          "completed_at": "2026-07-15T15:02:24Z"
        },
        {
          "id": "status",
          "action": "state.query",
          "status": "completed",
          "resolved_input_hash": "a15231a2142a2a9a85355a8b9cbbccffe01a9c9c2c2fd8c2bc2987cdc481564a",
          "started_at": "2026-07-15T15:02:24Z",
          "output": {
            "repo_root": "D:\\Projects\\prd-plugin",
            "autonomy_level": "autonomous",
            "requests_by_status": {
              "deferred": 1,
              "implemented": 80,
              "proposed": 1,
              "rejected": 1
            },
            "active_tracking": [],
            "tracking_branches": [],
            "tracking_branch_counts": {},
            "tracking_branch_errors": [],
            "open_health": [],
            "stale_count": 0,
            "skill_usage": {
              "project-decision-policy": 1,
              "project-request-intake": 1,
              "project-test-driven-implementation": 1,
              "project-verification-before-completion": 1,
              "project-llm-wiki": 1
            },
            "wiki_backfill_pending": false,
            "version_update": null
          },
          "output_hash": "8ba9f7d3cc6705af37de9e3324d1258e21ccacb5ab0b2d7b389ca08885e11187",
          "completed_at": "2026-07-15T15:02:24Z"
        },
        {
          "id": "substrate",
          "action": "substrate.preflight",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-15T15:02:24Z",
          "output": {
            "status": "disabled",
            "services": {
              "status": "ok",
              "summary": {
                "critical": 0,
                "high": 0,
                "medium": 0,
                "low": 0
              },
              "findings": []
            },
            "policy": {
              "configured": {
                "enabled": false,
                "mode": "off",
                "capabilities": [
                  "records",
                  "graph",
                  "events"
                ],
                "contract_version": 2,
                "require_source_refs": true,
                "endpoint": "http://127.0.0.1:47124",
                "manual_url": "http://127.0.0.1:47124/utcp.json",
                "knowledge_browse_url": "http://127.0.0.1:5276",
                "auth_env": "AI_COLLAB_API_KEY",
                "timeout_seconds": 5,
                "max_result_bytes": 1048576,
                "cache_ttl_seconds": 60,
                "fallback": "local",
                "automation": {
                  "discovery_on_session_start": true,
                  "knowledge_recall": true,
                  "memory_recall": true,
                  "context_enrichment": true,
                  "notices_on_session_start": false,
                  "goals_sync": false,
                  "telemetry_on_maintenance": false,
                  "reporting_dispatch": true,
                  "judgment_dispatch": true,
                  "verification_execution": true
                }
              },
              "active": false,
              "effective_mode": "off",
              "effective_capabilities": []
            }
          },
          "output_hash": "a6df426290b4549a59eecaa0519ead9bcc50b7fcb25bd2185ff6047960f19ccb",
          "completed_at": "2026-07-15T15:02:24Z"
        },
        {
          "id": "notices",
          "action": "substrate.notices",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-15T15:02:24Z",
          "output": {
            "status": "disabled"
          },
          "output_hash": "38b904a1cf83df048360fb2480571b749fd98d57e11f1afdffb5a74a78166fea",
          "completed_at": "2026-07-15T15:02:24Z"
        },
        {
          "id": "goals",
          "action": "substrate.goals",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-15T15:02:24Z",
          "output": {
            "status": "disabled",
            "created": 0,
            "observed": 0,
            "results": []
          },
          "output_hash": "cdfd4de44a28140e686159f34f7b47975954c67e1d1efcef666e985acb136ed8",
          "completed_at": "2026-07-15T15:02:24Z"
        }
      ],
      "completed_at": "2026-07-15T15:02:24Z"
    },
    {
      "id": "WFR-063",
      "schema_version": "1.0",
      "workflow_id": "session.stop",
      "workflow_version": 1,
      "definition_hash": "0cef7bb3e28321be8f85375c154955a69310ce297e47de3f3b8dd48f77a2f07d",
      "plan_hash": "a5e1d77ac734217487fc418e29c7163f4e81178e25d171e70cd4c999d527d3e8",
      "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
      "inputs": {},
      "idempotency_key": "hook:Stop:019f664c-dba8-7940-9572-33d4e0990c59",
      "status": "completed",
      "attempt": 1,
      "created_at": "2026-07-15T15:02:27Z",
      "updated_at": "2026-07-15T15:02:28Z",
      "receipts": [
        {
          "step_id": "state",
          "action": "state.consistency",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "5a1c6e5246defb1b6b6b90ff734db95bece2886b408ab112ed9b8e67222d5568",
          "completed_at": "2026-07-15T15:02:28Z"
        },
        {
          "step_id": "goals",
          "action": "substrate.goals",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "cdfd4de44a28140e686159f34f7b47975954c67e1d1efcef666e985acb136ed8",
          "completed_at": "2026-07-15T15:02:28Z"
        },
        {
          "step_id": "staleness",
          "action": "staleness.audit",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "1e81cb0ffd0a4d04626920a203b38d2d23a264cd43e807a85d375d69cae8a658",
          "completed_at": "2026-07-15T15:02:28Z"
        },
        {
          "step_id": "reflections",
          "action": "reflection.list",
          "input_hash": "0172e841ab4c13b3a4061f073f9d68a716ec87a8a5d52fde41823385e0582573",
          "output_hash": "c1b6b635c0bab21120657277f14ef6f839909875f307a3745fa48aee2bd6e449",
          "completed_at": "2026-07-15T15:02:28Z"
        },
        {
          "step_id": "bundle",
          "action": "reporting.bundle",
          "input_hash": "aed8ebb688dc3c085dd978d7c4120572173c3cb87e75919e4a937dcca6ef9457",
          "output_hash": "6413b750e5adf462056ec1108a5d692cc446676e520bee65af98f64bc3e9bd9b",
          "completed_at": "2026-07-15T15:02:28Z"
        },
        {
          "step_id": "delegated",
          "action": "reporting.delegate",
          "input_hash": "669197e524ce450fa066ad7ef7d9da00168b780083ca6a5d7094bca3097e8568",
          "output_hash": "e6085059f197def80ae95add1f328418107bea5436c9bd002530043646a3a95c",
          "completed_at": "2026-07-15T15:02:28Z"
        }
      ],
      "steps": [
        {
          "id": "state",
          "action": "state.consistency",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-15T15:02:27Z",
          "output": {
            "status": "ok",
            "repo_root": "D:\\Projects\\prd-plugin",
            "summary": {
              "errors": 0,
              "warnings": 0,
              "infos": 0
            },
            "findings": []
          },
          "output_hash": "5a1c6e5246defb1b6b6b90ff734db95bece2886b408ab112ed9b8e67222d5568",
          "completed_at": "2026-07-15T15:02:28Z"
        },
        {
          "id": "goals",
          "action": "substrate.goals",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-15T15:02:28Z",
          "output": {
            "status": "disabled",
            "created": 0,
            "observed": 0,
            "results": []
          },
          "output_hash": "cdfd4de44a28140e686159f34f7b47975954c67e1d1efcef666e985acb136ed8",
          "completed_at": "2026-07-15T15:02:28Z"
        },
        {
          "id": "staleness",
          "action": "staleness.audit",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-15T15:02:28Z",
          "output": {
            "status": "ok",
            "repo_root": "D:\\Projects\\prd-plugin",
            "counts": {
              "stale": 0
            },
            "stale": []
          },
          "output_hash": "1e81cb0ffd0a4d04626920a203b38d2d23a264cd43e807a85d375d69cae8a658",
          "completed_at": "2026-07-15T15:02:28Z"
        },
        {
          "id": "reflections",
          "action": "reflection.list",
          "status": "completed",
          "resolved_input_hash": "0172e841ab4c13b3a4061f073f9d68a716ec87a8a5d52fde41823385e0582573",
          "started_at": "2026-07-15T15:02:28Z",
          "output": {
            "enabled": false,
            "on_stop": true,
            "max_questions_per_stop": 5,
            "categories": [
              {
                "id": "behaviour_quality",
                "name": "Behaviour quality",
                "enabled": true,
                "question_count": 3
              },
              {
                "id": "harness_friction",
                "name": "Harness friction",
                "enabled": true,
                "question_count": 2
              }
            ],
            "questions": [
              {
                "id": "RFQ-001",
                "text": "Based on the work you just carried out, would you classify your behaviour as good? Answer yes or no and cite observable evidence.",
                "enabled": true,
                "category_id": "behaviour_quality",
                "category_name": "Behaviour quality",
                "effective_enabled": false
              },
              {
                "id": "RFQ-002",
                "text": "If you answered no, what could you do differently to correct your behaviour?",
                "enabled": true,
                "category_id": "behaviour_quality",
                "category_name": "Behaviour quality",
                "effective_enabled": false
              },
              {
                "id": "RFQ-003",
                "text": "Would another attempt using the identified good behaviours materially improve the outcome? Answer yes or no and state the next corrective action if yes.",
                "enabled": true,
                "category_id": "behaviour_quality",
                "category_name": "Behaviour quality",
                "effective_enabled": false
              },
              {
                "id": "RFQ-004",
                "text": "What harness friction points made this work more difficult?",
                "enabled": true,
                "category_id": "harness_friction",
                "category_name": "Harness friction",
                "effective_enabled": false
              },
              {
                "id": "RFQ-005",
                "text": "What up to three changes would most improve friction in the harness?",
                "enabled": true,
                "category_id": "harness_friction",
                "category_name": "Harness friction",
                "effective_enabled": false
              }
            ]
          },
          "output_hash": "c1b6b635c0bab21120657277f14ef6f839909875f307a3745fa48aee2bd6e449",
          "completed_at": "2026-07-15T15:02:28Z"
        },
        {
          "id": "bundle",
          "action": "reporting.bundle",
          "status": "completed",
          "resolved_input_hash": "aed8ebb688dc3c085dd978d7c4120572173c3cb87e75919e4a937dcca6ef9457",
          "started_at": "2026-07-15T15:02:28Z",
          "output": {
            "contract_version": 1,
            "task": "session_summary",
            "repo": "prd-plugin",
            "policy": {
              "enabled": false,
              "executor": "ai-collab",
              "contract_version": 1,
              "profile": "fast-capable",
              "tasks": [
                "report_summary",
                "session_summary",
                "wiki_synthesis",
                "triage_draft"
              ],
              "fallback": "main",
              "require_source_refs": true,
              "max_input_tokens": 12000,
              "max_output_tokens": 1500,
              "timeout_seconds": 30
            },
            "facts": {
              "requests_by_status": {
                "deferred": 1,
                "implemented": 80,
                "proposed": 1,
                "rejected": 1
              },
              "active_requests": [
                {
                  "id": "REQ-072",
                  "status": "proposed",
                  "severity": "low",
                  "summary": "opencode run-until-done: session.idle is a non-blocking notification, so the stop guard can't force continuation on opencode (currently degrades to a printed reminder, 0.5.95). Investigate whether opencode exposes any vetoable/continuation mechanism (a different event, a permission hook, or a 'continue' API) to enforce run-until-done, or accept the reminder as the permanent ceiling. Low priority — user rarely uses opencode."
                }
              ],
              "active_tracking": [],
              "open_health": [],
              "evidence_count": 104,
              "decision_count": 9
            },
            "findings": [],
            "source_refs": [
              ".prd_plugin/config.json",
              ".prd_plugin/state/decisions.json",
              ".prd_plugin/state/evidence.json",
              ".prd_plugin/state/health.json",
              ".prd_plugin/state/requests.json",
              ".prd_plugin/state/tracking.json",
              "REQ-072"
            ],
            "constraints": {
              "max_input_tokens": 12000,
              "max_output_tokens": 1500,
              "timeout_seconds": 30,
              "require_source_refs": true,
              "no_project_state_writes": true,
              "no_secrets_or_local_session_content": true
            }
          },
          "output_hash": "6413b750e5adf462056ec1108a5d692cc446676e520bee65af98f64bc3e9bd9b",
          "completed_at": "2026-07-15T15:02:28Z"
        },
        {
          "id": "delegated",
          "action": "reporting.delegate",
          "status": "completed",
          "resolved_input_hash": "669197e524ce450fa066ad7ef7d9da00168b780083ca6a5d7094bca3097e8568",
          "started_at": "2026-07-15T15:02:28Z",
          "output": {
            "status": "fallback",
            "action": "main",
            "reason": "disabled"
          },
          "output_hash": "e6085059f197def80ae95add1f328418107bea5436c9bd002530043646a3a95c",
          "completed_at": "2026-07-15T15:02:28Z"
        }
      ],
      "completed_at": "2026-07-15T15:02:28Z"
    },
    {
      "id": "WFR-064",
      "schema_version": "1.0",
      "workflow_id": "session.start",
      "workflow_version": 1,
      "definition_hash": "d0f98da02571e6dd27fec4aed92d3c82af9db75f8b90b997bf665635c7b7f6ca",
      "plan_hash": "b5072615ca3b7e9a3bd85d50d1f069d99ef2a9816b32c03a370745ed7a205536",
      "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
      "inputs": {},
      "idempotency_key": "hook:SessionStart:019f664d-5214-7700-8bf9-217ff45dc0fb",
      "status": "completed",
      "attempt": 1,
      "created_at": "2026-07-15T15:02:53Z",
      "updated_at": "2026-07-15T15:02:55Z",
      "receipts": [
        {
          "step_id": "config",
          "action": "config.audit",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "3782ec2317c0c8ee7598634310a2804d8aae4735f557498f9d3b8fae7c45e1e5",
          "completed_at": "2026-07-15T15:02:53Z"
        },
        {
          "step_id": "services",
          "action": "services.audit",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "13dcc58bd528f3efa3e6e0fa0853a6eedc376f1f3685fbd4869cbb2b60382ee3",
          "completed_at": "2026-07-15T15:02:54Z"
        },
        {
          "step_id": "state",
          "action": "state.consistency",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "5a1c6e5246defb1b6b6b90ff734db95bece2886b408ab112ed9b8e67222d5568",
          "completed_at": "2026-07-15T15:02:55Z"
        },
        {
          "step_id": "status",
          "action": "state.query",
          "input_hash": "a15231a2142a2a9a85355a8b9cbbccffe01a9c9c2c2fd8c2bc2987cdc481564a",
          "output_hash": "8ba9f7d3cc6705af37de9e3324d1258e21ccacb5ab0b2d7b389ca08885e11187",
          "completed_at": "2026-07-15T15:02:55Z"
        },
        {
          "step_id": "substrate",
          "action": "substrate.preflight",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "a6df426290b4549a59eecaa0519ead9bcc50b7fcb25bd2185ff6047960f19ccb",
          "completed_at": "2026-07-15T15:02:55Z"
        },
        {
          "step_id": "notices",
          "action": "substrate.notices",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "38b904a1cf83df048360fb2480571b749fd98d57e11f1afdffb5a74a78166fea",
          "completed_at": "2026-07-15T15:02:55Z"
        },
        {
          "step_id": "goals",
          "action": "substrate.goals",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "cdfd4de44a28140e686159f34f7b47975954c67e1d1efcef666e985acb136ed8",
          "completed_at": "2026-07-15T15:02:55Z"
        }
      ],
      "steps": [
        {
          "id": "config",
          "action": "config.audit",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-15T15:02:53Z",
          "output": {
            "status": "ok",
            "summary": {
              "settings": 195,
              "mutable": 186,
              "read_only_or_managed": 9,
              "unclassified": 0,
              "unknown": 0,
              "invalid": 0,
              "missing_using_defaults": 0
            },
            "unclassified_keys": [],
            "unknown_keys": [],
            "invalid_values": [],
            "missing_using_defaults": []
          },
          "output_hash": "3782ec2317c0c8ee7598634310a2804d8aae4735f557498f9d3b8fae7c45e1e5",
          "completed_at": "2026-07-15T15:02:53Z"
        },
        {
          "id": "services",
          "action": "services.audit",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-15T15:02:54Z",
          "output": {
            "status": "ok",
            "summary": {
              "critical": 0,
              "high": 0,
              "medium": 0,
              "low": 0
            },
            "findings": []
          },
          "output_hash": "13dcc58bd528f3efa3e6e0fa0853a6eedc376f1f3685fbd4869cbb2b60382ee3",
          "completed_at": "2026-07-15T15:02:54Z"
        },
        {
          "id": "state",
          "action": "state.consistency",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-15T15:02:54Z",
          "output": {
            "status": "ok",
            "repo_root": "D:\\Projects\\prd-plugin",
            "summary": {
              "errors": 0,
              "warnings": 0,
              "infos": 0
            },
            "findings": []
          },
          "output_hash": "5a1c6e5246defb1b6b6b90ff734db95bece2886b408ab112ed9b8e67222d5568",
          "completed_at": "2026-07-15T15:02:55Z"
        },
        {
          "id": "status",
          "action": "state.query",
          "status": "completed",
          "resolved_input_hash": "a15231a2142a2a9a85355a8b9cbbccffe01a9c9c2c2fd8c2bc2987cdc481564a",
          "started_at": "2026-07-15T15:02:55Z",
          "output": {
            "repo_root": "D:\\Projects\\prd-plugin",
            "autonomy_level": "autonomous",
            "requests_by_status": {
              "deferred": 1,
              "implemented": 80,
              "proposed": 1,
              "rejected": 1
            },
            "active_tracking": [],
            "tracking_branches": [],
            "tracking_branch_counts": {},
            "tracking_branch_errors": [],
            "open_health": [],
            "stale_count": 0,
            "skill_usage": {
              "project-decision-policy": 1,
              "project-request-intake": 1,
              "project-test-driven-implementation": 1,
              "project-verification-before-completion": 1,
              "project-llm-wiki": 1
            },
            "wiki_backfill_pending": false,
            "version_update": null
          },
          "output_hash": "8ba9f7d3cc6705af37de9e3324d1258e21ccacb5ab0b2d7b389ca08885e11187",
          "completed_at": "2026-07-15T15:02:55Z"
        },
        {
          "id": "substrate",
          "action": "substrate.preflight",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-15T15:02:55Z",
          "output": {
            "status": "disabled",
            "services": {
              "status": "ok",
              "summary": {
                "critical": 0,
                "high": 0,
                "medium": 0,
                "low": 0
              },
              "findings": []
            },
            "policy": {
              "configured": {
                "enabled": false,
                "mode": "off",
                "capabilities": [
                  "records",
                  "graph",
                  "events"
                ],
                "contract_version": 2,
                "require_source_refs": true,
                "endpoint": "http://127.0.0.1:47124",
                "manual_url": "http://127.0.0.1:47124/utcp.json",
                "knowledge_browse_url": "http://127.0.0.1:5276",
                "auth_env": "AI_COLLAB_API_KEY",
                "timeout_seconds": 5,
                "max_result_bytes": 1048576,
                "cache_ttl_seconds": 60,
                "fallback": "local",
                "automation": {
                  "discovery_on_session_start": true,
                  "knowledge_recall": true,
                  "memory_recall": true,
                  "context_enrichment": true,
                  "notices_on_session_start": false,
                  "goals_sync": false,
                  "telemetry_on_maintenance": false,
                  "reporting_dispatch": true,
                  "judgment_dispatch": true,
                  "verification_execution": true
                }
              },
              "active": false,
              "effective_mode": "off",
              "effective_capabilities": []
            }
          },
          "output_hash": "a6df426290b4549a59eecaa0519ead9bcc50b7fcb25bd2185ff6047960f19ccb",
          "completed_at": "2026-07-15T15:02:55Z"
        },
        {
          "id": "notices",
          "action": "substrate.notices",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-15T15:02:55Z",
          "output": {
            "status": "disabled"
          },
          "output_hash": "38b904a1cf83df048360fb2480571b749fd98d57e11f1afdffb5a74a78166fea",
          "completed_at": "2026-07-15T15:02:55Z"
        },
        {
          "id": "goals",
          "action": "substrate.goals",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-15T15:02:55Z",
          "output": {
            "status": "disabled",
            "created": 0,
            "observed": 0,
            "results": []
          },
          "output_hash": "cdfd4de44a28140e686159f34f7b47975954c67e1d1efcef666e985acb136ed8",
          "completed_at": "2026-07-15T15:02:55Z"
        }
      ],
      "completed_at": "2026-07-15T15:02:55Z"
    },
    {
      "id": "WFR-065",
      "schema_version": "1.0",
      "workflow_id": "session.stop",
      "workflow_version": 1,
      "definition_hash": "0cef7bb3e28321be8f85375c154955a69310ce297e47de3f3b8dd48f77a2f07d",
      "plan_hash": "a5e1d77ac734217487fc418e29c7163f4e81178e25d171e70cd4c999d527d3e8",
      "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
      "inputs": {},
      "idempotency_key": "hook:Stop:019f664d-5214-7700-8bf9-217ff45dc0fb",
      "status": "completed",
      "attempt": 1,
      "created_at": "2026-07-15T15:02:58Z",
      "updated_at": "2026-07-15T15:02:59Z",
      "receipts": [
        {
          "step_id": "state",
          "action": "state.consistency",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "5a1c6e5246defb1b6b6b90ff734db95bece2886b408ab112ed9b8e67222d5568",
          "completed_at": "2026-07-15T15:02:58Z"
        },
        {
          "step_id": "goals",
          "action": "substrate.goals",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "cdfd4de44a28140e686159f34f7b47975954c67e1d1efcef666e985acb136ed8",
          "completed_at": "2026-07-15T15:02:59Z"
        },
        {
          "step_id": "staleness",
          "action": "staleness.audit",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "1e81cb0ffd0a4d04626920a203b38d2d23a264cd43e807a85d375d69cae8a658",
          "completed_at": "2026-07-15T15:02:59Z"
        },
        {
          "step_id": "reflections",
          "action": "reflection.list",
          "input_hash": "0172e841ab4c13b3a4061f073f9d68a716ec87a8a5d52fde41823385e0582573",
          "output_hash": "c1b6b635c0bab21120657277f14ef6f839909875f307a3745fa48aee2bd6e449",
          "completed_at": "2026-07-15T15:02:59Z"
        },
        {
          "step_id": "bundle",
          "action": "reporting.bundle",
          "input_hash": "aed8ebb688dc3c085dd978d7c4120572173c3cb87e75919e4a937dcca6ef9457",
          "output_hash": "6413b750e5adf462056ec1108a5d692cc446676e520bee65af98f64bc3e9bd9b",
          "completed_at": "2026-07-15T15:02:59Z"
        },
        {
          "step_id": "delegated",
          "action": "reporting.delegate",
          "input_hash": "669197e524ce450fa066ad7ef7d9da00168b780083ca6a5d7094bca3097e8568",
          "output_hash": "e6085059f197def80ae95add1f328418107bea5436c9bd002530043646a3a95c",
          "completed_at": "2026-07-15T15:02:59Z"
        }
      ],
      "steps": [
        {
          "id": "state",
          "action": "state.consistency",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-15T15:02:58Z",
          "output": {
            "status": "ok",
            "repo_root": "D:\\Projects\\prd-plugin",
            "summary": {
              "errors": 0,
              "warnings": 0,
              "infos": 0
            },
            "findings": []
          },
          "output_hash": "5a1c6e5246defb1b6b6b90ff734db95bece2886b408ab112ed9b8e67222d5568",
          "completed_at": "2026-07-15T15:02:58Z"
        },
        {
          "id": "goals",
          "action": "substrate.goals",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-15T15:02:59Z",
          "output": {
            "status": "disabled",
            "created": 0,
            "observed": 0,
            "results": []
          },
          "output_hash": "cdfd4de44a28140e686159f34f7b47975954c67e1d1efcef666e985acb136ed8",
          "completed_at": "2026-07-15T15:02:59Z"
        },
        {
          "id": "staleness",
          "action": "staleness.audit",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-15T15:02:59Z",
          "output": {
            "status": "ok",
            "repo_root": "D:\\Projects\\prd-plugin",
            "counts": {
              "stale": 0
            },
            "stale": []
          },
          "output_hash": "1e81cb0ffd0a4d04626920a203b38d2d23a264cd43e807a85d375d69cae8a658",
          "completed_at": "2026-07-15T15:02:59Z"
        },
        {
          "id": "reflections",
          "action": "reflection.list",
          "status": "completed",
          "resolved_input_hash": "0172e841ab4c13b3a4061f073f9d68a716ec87a8a5d52fde41823385e0582573",
          "started_at": "2026-07-15T15:02:59Z",
          "output": {
            "enabled": false,
            "on_stop": true,
            "max_questions_per_stop": 5,
            "categories": [
              {
                "id": "behaviour_quality",
                "name": "Behaviour quality",
                "enabled": true,
                "question_count": 3
              },
              {
                "id": "harness_friction",
                "name": "Harness friction",
                "enabled": true,
                "question_count": 2
              }
            ],
            "questions": [
              {
                "id": "RFQ-001",
                "text": "Based on the work you just carried out, would you classify your behaviour as good? Answer yes or no and cite observable evidence.",
                "enabled": true,
                "category_id": "behaviour_quality",
                "category_name": "Behaviour quality",
                "effective_enabled": false
              },
              {
                "id": "RFQ-002",
                "text": "If you answered no, what could you do differently to correct your behaviour?",
                "enabled": true,
                "category_id": "behaviour_quality",
                "category_name": "Behaviour quality",
                "effective_enabled": false
              },
              {
                "id": "RFQ-003",
                "text": "Would another attempt using the identified good behaviours materially improve the outcome? Answer yes or no and state the next corrective action if yes.",
                "enabled": true,
                "category_id": "behaviour_quality",
                "category_name": "Behaviour quality",
                "effective_enabled": false
              },
              {
                "id": "RFQ-004",
                "text": "What harness friction points made this work more difficult?",
                "enabled": true,
                "category_id": "harness_friction",
                "category_name": "Harness friction",
                "effective_enabled": false
              },
              {
                "id": "RFQ-005",
                "text": "What up to three changes would most improve friction in the harness?",
                "enabled": true,
                "category_id": "harness_friction",
                "category_name": "Harness friction",
                "effective_enabled": false
              }
            ]
          },
          "output_hash": "c1b6b635c0bab21120657277f14ef6f839909875f307a3745fa48aee2bd6e449",
          "completed_at": "2026-07-15T15:02:59Z"
        },
        {
          "id": "bundle",
          "action": "reporting.bundle",
          "status": "completed",
          "resolved_input_hash": "aed8ebb688dc3c085dd978d7c4120572173c3cb87e75919e4a937dcca6ef9457",
          "started_at": "2026-07-15T15:02:59Z",
          "output": {
            "contract_version": 1,
            "task": "session_summary",
            "repo": "prd-plugin",
            "policy": {
              "enabled": false,
              "executor": "ai-collab",
              "contract_version": 1,
              "profile": "fast-capable",
              "tasks": [
                "report_summary",
                "session_summary",
                "wiki_synthesis",
                "triage_draft"
              ],
              "fallback": "main",
              "require_source_refs": true,
              "max_input_tokens": 12000,
              "max_output_tokens": 1500,
              "timeout_seconds": 30
            },
            "facts": {
              "requests_by_status": {
                "deferred": 1,
                "implemented": 80,
                "proposed": 1,
                "rejected": 1
              },
              "active_requests": [
                {
                  "id": "REQ-072",
                  "status": "proposed",
                  "severity": "low",
                  "summary": "opencode run-until-done: session.idle is a non-blocking notification, so the stop guard can't force continuation on opencode (currently degrades to a printed reminder, 0.5.95). Investigate whether opencode exposes any vetoable/continuation mechanism (a different event, a permission hook, or a 'continue' API) to enforce run-until-done, or accept the reminder as the permanent ceiling. Low priority — user rarely uses opencode."
                }
              ],
              "active_tracking": [],
              "open_health": [],
              "evidence_count": 104,
              "decision_count": 9
            },
            "findings": [],
            "source_refs": [
              ".prd_plugin/config.json",
              ".prd_plugin/state/decisions.json",
              ".prd_plugin/state/evidence.json",
              ".prd_plugin/state/health.json",
              ".prd_plugin/state/requests.json",
              ".prd_plugin/state/tracking.json",
              "REQ-072"
            ],
            "constraints": {
              "max_input_tokens": 12000,
              "max_output_tokens": 1500,
              "timeout_seconds": 30,
              "require_source_refs": true,
              "no_project_state_writes": true,
              "no_secrets_or_local_session_content": true
            }
          },
          "output_hash": "6413b750e5adf462056ec1108a5d692cc446676e520bee65af98f64bc3e9bd9b",
          "completed_at": "2026-07-15T15:02:59Z"
        },
        {
          "id": "delegated",
          "action": "reporting.delegate",
          "status": "completed",
          "resolved_input_hash": "669197e524ce450fa066ad7ef7d9da00168b780083ca6a5d7094bca3097e8568",
          "started_at": "2026-07-15T15:02:59Z",
          "output": {
            "status": "fallback",
            "action": "main",
            "reason": "disabled"
          },
          "output_hash": "e6085059f197def80ae95add1f328418107bea5436c9bd002530043646a3a95c",
          "completed_at": "2026-07-15T15:02:59Z"
        }
      ],
      "completed_at": "2026-07-15T15:02:59Z"
    },
    {
      "id": "WFR-066",
      "schema_version": "1.0",
      "workflow_id": "session.start",
      "workflow_version": 1,
      "definition_hash": "d0f98da02571e6dd27fec4aed92d3c82af9db75f8b90b997bf665635c7b7f6ca",
      "plan_hash": "b5072615ca3b7e9a3bd85d50d1f069d99ef2a9816b32c03a370745ed7a205536",
      "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
      "inputs": {},
      "idempotency_key": "hook:SessionStart:019f6650-ec5c-7ca1-9a92-d922cbad9bf2",
      "status": "completed",
      "attempt": 1,
      "created_at": "2026-07-15T15:06:49Z",
      "updated_at": "2026-07-15T15:06:51Z",
      "receipts": [
        {
          "step_id": "config",
          "action": "config.audit",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "3782ec2317c0c8ee7598634310a2804d8aae4735f557498f9d3b8fae7c45e1e5",
          "completed_at": "2026-07-15T15:06:49Z"
        },
        {
          "step_id": "services",
          "action": "services.audit",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "13dcc58bd528f3efa3e6e0fa0853a6eedc376f1f3685fbd4869cbb2b60382ee3",
          "completed_at": "2026-07-15T15:06:49Z"
        },
        {
          "step_id": "state",
          "action": "state.consistency",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "5a1c6e5246defb1b6b6b90ff734db95bece2886b408ab112ed9b8e67222d5568",
          "completed_at": "2026-07-15T15:06:50Z"
        },
        {
          "step_id": "status",
          "action": "state.query",
          "input_hash": "a15231a2142a2a9a85355a8b9cbbccffe01a9c9c2c2fd8c2bc2987cdc481564a",
          "output_hash": "8ba9f7d3cc6705af37de9e3324d1258e21ccacb5ab0b2d7b389ca08885e11187",
          "completed_at": "2026-07-15T15:06:50Z"
        },
        {
          "step_id": "substrate",
          "action": "substrate.preflight",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "a6df426290b4549a59eecaa0519ead9bcc50b7fcb25bd2185ff6047960f19ccb",
          "completed_at": "2026-07-15T15:06:50Z"
        },
        {
          "step_id": "notices",
          "action": "substrate.notices",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "38b904a1cf83df048360fb2480571b749fd98d57e11f1afdffb5a74a78166fea",
          "completed_at": "2026-07-15T15:06:50Z"
        },
        {
          "step_id": "goals",
          "action": "substrate.goals",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "cdfd4de44a28140e686159f34f7b47975954c67e1d1efcef666e985acb136ed8",
          "completed_at": "2026-07-15T15:06:51Z"
        }
      ],
      "steps": [
        {
          "id": "config",
          "action": "config.audit",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-15T15:06:49Z",
          "output": {
            "status": "ok",
            "summary": {
              "settings": 195,
              "mutable": 186,
              "read_only_or_managed": 9,
              "unclassified": 0,
              "unknown": 0,
              "invalid": 0,
              "missing_using_defaults": 0
            },
            "unclassified_keys": [],
            "unknown_keys": [],
            "invalid_values": [],
            "missing_using_defaults": []
          },
          "output_hash": "3782ec2317c0c8ee7598634310a2804d8aae4735f557498f9d3b8fae7c45e1e5",
          "completed_at": "2026-07-15T15:06:49Z"
        },
        {
          "id": "services",
          "action": "services.audit",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-15T15:06:49Z",
          "output": {
            "status": "ok",
            "summary": {
              "critical": 0,
              "high": 0,
              "medium": 0,
              "low": 0
            },
            "findings": []
          },
          "output_hash": "13dcc58bd528f3efa3e6e0fa0853a6eedc376f1f3685fbd4869cbb2b60382ee3",
          "completed_at": "2026-07-15T15:06:49Z"
        },
        {
          "id": "state",
          "action": "state.consistency",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-15T15:06:49Z",
          "output": {
            "status": "ok",
            "repo_root": "D:\\Projects\\prd-plugin",
            "summary": {
              "errors": 0,
              "warnings": 0,
              "infos": 0
            },
            "findings": []
          },
          "output_hash": "5a1c6e5246defb1b6b6b90ff734db95bece2886b408ab112ed9b8e67222d5568",
          "completed_at": "2026-07-15T15:06:50Z"
        },
        {
          "id": "status",
          "action": "state.query",
          "status": "completed",
          "resolved_input_hash": "a15231a2142a2a9a85355a8b9cbbccffe01a9c9c2c2fd8c2bc2987cdc481564a",
          "started_at": "2026-07-15T15:06:50Z",
          "output": {
            "repo_root": "D:\\Projects\\prd-plugin",
            "autonomy_level": "autonomous",
            "requests_by_status": {
              "deferred": 1,
              "implemented": 80,
              "proposed": 1,
              "rejected": 1
            },
            "active_tracking": [],
            "tracking_branches": [],
            "tracking_branch_counts": {},
            "tracking_branch_errors": [],
            "open_health": [],
            "stale_count": 0,
            "skill_usage": {
              "project-decision-policy": 1,
              "project-request-intake": 1,
              "project-test-driven-implementation": 1,
              "project-verification-before-completion": 1,
              "project-llm-wiki": 1
            },
            "wiki_backfill_pending": false,
            "version_update": null
          },
          "output_hash": "8ba9f7d3cc6705af37de9e3324d1258e21ccacb5ab0b2d7b389ca08885e11187",
          "completed_at": "2026-07-15T15:06:50Z"
        },
        {
          "id": "substrate",
          "action": "substrate.preflight",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-15T15:06:50Z",
          "output": {
            "status": "disabled",
            "services": {
              "status": "ok",
              "summary": {
                "critical": 0,
                "high": 0,
                "medium": 0,
                "low": 0
              },
              "findings": []
            },
            "policy": {
              "configured": {
                "enabled": false,
                "mode": "off",
                "capabilities": [
                  "records",
                  "graph",
                  "events"
                ],
                "contract_version": 2,
                "require_source_refs": true,
                "endpoint": "http://127.0.0.1:47124",
                "manual_url": "http://127.0.0.1:47124/utcp.json",
                "knowledge_browse_url": "http://127.0.0.1:5276",
                "auth_env": "AI_COLLAB_API_KEY",
                "timeout_seconds": 5,
                "max_result_bytes": 1048576,
                "cache_ttl_seconds": 60,
                "fallback": "local",
                "automation": {
                  "discovery_on_session_start": true,
                  "knowledge_recall": true,
                  "memory_recall": true,
                  "context_enrichment": true,
                  "notices_on_session_start": false,
                  "goals_sync": false,
                  "telemetry_on_maintenance": false,
                  "reporting_dispatch": true,
                  "judgment_dispatch": true,
                  "verification_execution": true
                }
              },
              "active": false,
              "effective_mode": "off",
              "effective_capabilities": []
            }
          },
          "output_hash": "a6df426290b4549a59eecaa0519ead9bcc50b7fcb25bd2185ff6047960f19ccb",
          "completed_at": "2026-07-15T15:06:50Z"
        },
        {
          "id": "notices",
          "action": "substrate.notices",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-15T15:06:50Z",
          "output": {
            "status": "disabled"
          },
          "output_hash": "38b904a1cf83df048360fb2480571b749fd98d57e11f1afdffb5a74a78166fea",
          "completed_at": "2026-07-15T15:06:50Z"
        },
        {
          "id": "goals",
          "action": "substrate.goals",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-15T15:06:50Z",
          "output": {
            "status": "disabled",
            "created": 0,
            "observed": 0,
            "results": []
          },
          "output_hash": "cdfd4de44a28140e686159f34f7b47975954c67e1d1efcef666e985acb136ed8",
          "completed_at": "2026-07-15T15:06:51Z"
        }
      ],
      "completed_at": "2026-07-15T15:06:51Z"
    },
    {
      "id": "WFR-067",
      "schema_version": "1.0",
      "workflow_id": "session.stop",
      "workflow_version": 1,
      "definition_hash": "0cef7bb3e28321be8f85375c154955a69310ce297e47de3f3b8dd48f77a2f07d",
      "plan_hash": "a5e1d77ac734217487fc418e29c7163f4e81178e25d171e70cd4c999d527d3e8",
      "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
      "inputs": {},
      "idempotency_key": "hook:Stop:019f6650-ec5c-7ca1-9a92-d922cbad9bf2",
      "status": "completed",
      "attempt": 1,
      "created_at": "2026-07-15T15:07:49Z",
      "updated_at": "2026-07-15T15:07:50Z",
      "receipts": [
        {
          "step_id": "state",
          "action": "state.consistency",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "5a1c6e5246defb1b6b6b90ff734db95bece2886b408ab112ed9b8e67222d5568",
          "completed_at": "2026-07-15T15:07:50Z"
        },
        {
          "step_id": "goals",
          "action": "substrate.goals",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "cdfd4de44a28140e686159f34f7b47975954c67e1d1efcef666e985acb136ed8",
          "completed_at": "2026-07-15T15:07:50Z"
        },
        {
          "step_id": "staleness",
          "action": "staleness.audit",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "1e81cb0ffd0a4d04626920a203b38d2d23a264cd43e807a85d375d69cae8a658",
          "completed_at": "2026-07-15T15:07:50Z"
        },
        {
          "step_id": "reflections",
          "action": "reflection.list",
          "input_hash": "0172e841ab4c13b3a4061f073f9d68a716ec87a8a5d52fde41823385e0582573",
          "output_hash": "c1b6b635c0bab21120657277f14ef6f839909875f307a3745fa48aee2bd6e449",
          "completed_at": "2026-07-15T15:07:50Z"
        },
        {
          "step_id": "bundle",
          "action": "reporting.bundle",
          "input_hash": "aed8ebb688dc3c085dd978d7c4120572173c3cb87e75919e4a937dcca6ef9457",
          "output_hash": "6413b750e5adf462056ec1108a5d692cc446676e520bee65af98f64bc3e9bd9b",
          "completed_at": "2026-07-15T15:07:50Z"
        },
        {
          "step_id": "delegated",
          "action": "reporting.delegate",
          "input_hash": "669197e524ce450fa066ad7ef7d9da00168b780083ca6a5d7094bca3097e8568",
          "output_hash": "e6085059f197def80ae95add1f328418107bea5436c9bd002530043646a3a95c",
          "completed_at": "2026-07-15T15:07:50Z"
        }
      ],
      "steps": [
        {
          "id": "state",
          "action": "state.consistency",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-15T15:07:49Z",
          "output": {
            "status": "ok",
            "repo_root": "D:\\Projects\\prd-plugin",
            "summary": {
              "errors": 0,
              "warnings": 0,
              "infos": 0
            },
            "findings": []
          },
          "output_hash": "5a1c6e5246defb1b6b6b90ff734db95bece2886b408ab112ed9b8e67222d5568",
          "completed_at": "2026-07-15T15:07:50Z"
        },
        {
          "id": "goals",
          "action": "substrate.goals",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-15T15:07:50Z",
          "output": {
            "status": "disabled",
            "created": 0,
            "observed": 0,
            "results": []
          },
          "output_hash": "cdfd4de44a28140e686159f34f7b47975954c67e1d1efcef666e985acb136ed8",
          "completed_at": "2026-07-15T15:07:50Z"
        },
        {
          "id": "staleness",
          "action": "staleness.audit",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-15T15:07:50Z",
          "output": {
            "status": "ok",
            "repo_root": "D:\\Projects\\prd-plugin",
            "counts": {
              "stale": 0
            },
            "stale": []
          },
          "output_hash": "1e81cb0ffd0a4d04626920a203b38d2d23a264cd43e807a85d375d69cae8a658",
          "completed_at": "2026-07-15T15:07:50Z"
        },
        {
          "id": "reflections",
          "action": "reflection.list",
          "status": "completed",
          "resolved_input_hash": "0172e841ab4c13b3a4061f073f9d68a716ec87a8a5d52fde41823385e0582573",
          "started_at": "2026-07-15T15:07:50Z",
          "output": {
            "enabled": false,
            "on_stop": true,
            "max_questions_per_stop": 5,
            "categories": [
              {
                "id": "behaviour_quality",
                "name": "Behaviour quality",
                "enabled": true,
                "question_count": 3
              },
              {
                "id": "harness_friction",
                "name": "Harness friction",
                "enabled": true,
                "question_count": 2
              }
            ],
            "questions": [
              {
                "id": "RFQ-001",
                "text": "Based on the work you just carried out, would you classify your behaviour as good? Answer yes or no and cite observable evidence.",
                "enabled": true,
                "category_id": "behaviour_quality",
                "category_name": "Behaviour quality",
                "effective_enabled": false
              },
              {
                "id": "RFQ-002",
                "text": "If you answered no, what could you do differently to correct your behaviour?",
                "enabled": true,
                "category_id": "behaviour_quality",
                "category_name": "Behaviour quality",
                "effective_enabled": false
              },
              {
                "id": "RFQ-003",
                "text": "Would another attempt using the identified good behaviours materially improve the outcome? Answer yes or no and state the next corrective action if yes.",
                "enabled": true,
                "category_id": "behaviour_quality",
                "category_name": "Behaviour quality",
                "effective_enabled": false
              },
              {
                "id": "RFQ-004",
                "text": "What harness friction points made this work more difficult?",
                "enabled": true,
                "category_id": "harness_friction",
                "category_name": "Harness friction",
                "effective_enabled": false
              },
              {
                "id": "RFQ-005",
                "text": "What up to three changes would most improve friction in the harness?",
                "enabled": true,
                "category_id": "harness_friction",
                "category_name": "Harness friction",
                "effective_enabled": false
              }
            ]
          },
          "output_hash": "c1b6b635c0bab21120657277f14ef6f839909875f307a3745fa48aee2bd6e449",
          "completed_at": "2026-07-15T15:07:50Z"
        },
        {
          "id": "bundle",
          "action": "reporting.bundle",
          "status": "completed",
          "resolved_input_hash": "aed8ebb688dc3c085dd978d7c4120572173c3cb87e75919e4a937dcca6ef9457",
          "started_at": "2026-07-15T15:07:50Z",
          "output": {
            "contract_version": 1,
            "task": "session_summary",
            "repo": "prd-plugin",
            "policy": {
              "enabled": false,
              "executor": "ai-collab",
              "contract_version": 1,
              "profile": "fast-capable",
              "tasks": [
                "report_summary",
                "session_summary",
                "wiki_synthesis",
                "triage_draft"
              ],
              "fallback": "main",
              "require_source_refs": true,
              "max_input_tokens": 12000,
              "max_output_tokens": 1500,
              "timeout_seconds": 30
            },
            "facts": {
              "requests_by_status": {
                "deferred": 1,
                "implemented": 80,
                "proposed": 1,
                "rejected": 1
              },
              "active_requests": [
                {
                  "id": "REQ-072",
                  "status": "proposed",
                  "severity": "low",
                  "summary": "opencode run-until-done: session.idle is a non-blocking notification, so the stop guard can't force continuation on opencode (currently degrades to a printed reminder, 0.5.95). Investigate whether opencode exposes any vetoable/continuation mechanism (a different event, a permission hook, or a 'continue' API) to enforce run-until-done, or accept the reminder as the permanent ceiling. Low priority — user rarely uses opencode."
                }
              ],
              "active_tracking": [],
              "open_health": [],
              "evidence_count": 104,
              "decision_count": 9
            },
            "findings": [],
            "source_refs": [
              ".prd_plugin/config.json",
              ".prd_plugin/state/decisions.json",
              ".prd_plugin/state/evidence.json",
              ".prd_plugin/state/health.json",
              ".prd_plugin/state/requests.json",
              ".prd_plugin/state/tracking.json",
              "REQ-072"
            ],
            "constraints": {
              "max_input_tokens": 12000,
              "max_output_tokens": 1500,
              "timeout_seconds": 30,
              "require_source_refs": true,
              "no_project_state_writes": true,
              "no_secrets_or_local_session_content": true
            }
          },
          "output_hash": "6413b750e5adf462056ec1108a5d692cc446676e520bee65af98f64bc3e9bd9b",
          "completed_at": "2026-07-15T15:07:50Z"
        },
        {
          "id": "delegated",
          "action": "reporting.delegate",
          "status": "completed",
          "resolved_input_hash": "669197e524ce450fa066ad7ef7d9da00168b780083ca6a5d7094bca3097e8568",
          "started_at": "2026-07-15T15:07:50Z",
          "output": {
            "status": "fallback",
            "action": "main",
            "reason": "disabled"
          },
          "output_hash": "e6085059f197def80ae95add1f328418107bea5436c9bd002530043646a3a95c",
          "completed_at": "2026-07-15T15:07:50Z"
        }
      ],
      "completed_at": "2026-07-15T15:07:50Z"
    },
    {
      "id": "WFR-068",
      "schema_version": "1.0",
      "workflow_id": "session.start",
      "workflow_version": 1,
      "definition_hash": "d0f98da02571e6dd27fec4aed92d3c82af9db75f8b90b997bf665635c7b7f6ca",
      "plan_hash": "b5072615ca3b7e9a3bd85d50d1f069d99ef2a9816b32c03a370745ed7a205536",
      "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
      "inputs": {},
      "idempotency_key": "hook:SessionStart:019f6652-0b76-7e22-97c5-b39ad54f3baa",
      "status": "completed",
      "attempt": 1,
      "created_at": "2026-07-15T15:08:03Z",
      "updated_at": "2026-07-15T15:08:04Z",
      "receipts": [
        {
          "step_id": "config",
          "action": "config.audit",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "3782ec2317c0c8ee7598634310a2804d8aae4735f557498f9d3b8fae7c45e1e5",
          "completed_at": "2026-07-15T15:08:03Z"
        },
        {
          "step_id": "services",
          "action": "services.audit",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "13dcc58bd528f3efa3e6e0fa0853a6eedc376f1f3685fbd4869cbb2b60382ee3",
          "completed_at": "2026-07-15T15:08:03Z"
        },
        {
          "step_id": "state",
          "action": "state.consistency",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "5a1c6e5246defb1b6b6b90ff734db95bece2886b408ab112ed9b8e67222d5568",
          "completed_at": "2026-07-15T15:08:03Z"
        },
        {
          "step_id": "status",
          "action": "state.query",
          "input_hash": "a15231a2142a2a9a85355a8b9cbbccffe01a9c9c2c2fd8c2bc2987cdc481564a",
          "output_hash": "8ba9f7d3cc6705af37de9e3324d1258e21ccacb5ab0b2d7b389ca08885e11187",
          "completed_at": "2026-07-15T15:08:03Z"
        },
        {
          "step_id": "substrate",
          "action": "substrate.preflight",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "a6df426290b4549a59eecaa0519ead9bcc50b7fcb25bd2185ff6047960f19ccb",
          "completed_at": "2026-07-15T15:08:04Z"
        },
        {
          "step_id": "notices",
          "action": "substrate.notices",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "38b904a1cf83df048360fb2480571b749fd98d57e11f1afdffb5a74a78166fea",
          "completed_at": "2026-07-15T15:08:04Z"
        },
        {
          "step_id": "goals",
          "action": "substrate.goals",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "cdfd4de44a28140e686159f34f7b47975954c67e1d1efcef666e985acb136ed8",
          "completed_at": "2026-07-15T15:08:04Z"
        }
      ],
      "steps": [
        {
          "id": "config",
          "action": "config.audit",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-15T15:08:03Z",
          "output": {
            "status": "ok",
            "summary": {
              "settings": 195,
              "mutable": 186,
              "read_only_or_managed": 9,
              "unclassified": 0,
              "unknown": 0,
              "invalid": 0,
              "missing_using_defaults": 0
            },
            "unclassified_keys": [],
            "unknown_keys": [],
            "invalid_values": [],
            "missing_using_defaults": []
          },
          "output_hash": "3782ec2317c0c8ee7598634310a2804d8aae4735f557498f9d3b8fae7c45e1e5",
          "completed_at": "2026-07-15T15:08:03Z"
        },
        {
          "id": "services",
          "action": "services.audit",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-15T15:08:03Z",
          "output": {
            "status": "ok",
            "summary": {
              "critical": 0,
              "high": 0,
              "medium": 0,
              "low": 0
            },
            "findings": []
          },
          "output_hash": "13dcc58bd528f3efa3e6e0fa0853a6eedc376f1f3685fbd4869cbb2b60382ee3",
          "completed_at": "2026-07-15T15:08:03Z"
        },
        {
          "id": "state",
          "action": "state.consistency",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-15T15:08:03Z",
          "output": {
            "status": "ok",
            "repo_root": "D:\\Projects\\prd-plugin",
            "summary": {
              "errors": 0,
              "warnings": 0,
              "infos": 0
            },
            "findings": []
          },
          "output_hash": "5a1c6e5246defb1b6b6b90ff734db95bece2886b408ab112ed9b8e67222d5568",
          "completed_at": "2026-07-15T15:08:03Z"
        },
        {
          "id": "status",
          "action": "state.query",
          "status": "completed",
          "resolved_input_hash": "a15231a2142a2a9a85355a8b9cbbccffe01a9c9c2c2fd8c2bc2987cdc481564a",
          "started_at": "2026-07-15T15:08:03Z",
          "output": {
            "repo_root": "D:\\Projects\\prd-plugin",
            "autonomy_level": "autonomous",
            "requests_by_status": {
              "deferred": 1,
              "implemented": 80,
              "proposed": 1,
              "rejected": 1
            },
            "active_tracking": [],
            "tracking_branches": [],
            "tracking_branch_counts": {},
            "tracking_branch_errors": [],
            "open_health": [],
            "stale_count": 0,
            "skill_usage": {
              "project-decision-policy": 1,
              "project-request-intake": 1,
              "project-test-driven-implementation": 1,
              "project-verification-before-completion": 1,
              "project-llm-wiki": 1
            },
            "wiki_backfill_pending": false,
            "version_update": null
          },
          "output_hash": "8ba9f7d3cc6705af37de9e3324d1258e21ccacb5ab0b2d7b389ca08885e11187",
          "completed_at": "2026-07-15T15:08:03Z"
        },
        {
          "id": "substrate",
          "action": "substrate.preflight",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-15T15:08:04Z",
          "output": {
            "status": "disabled",
            "services": {
              "status": "ok",
              "summary": {
                "critical": 0,
                "high": 0,
                "medium": 0,
                "low": 0
              },
              "findings": []
            },
            "policy": {
              "configured": {
                "enabled": false,
                "mode": "off",
                "capabilities": [
                  "records",
                  "graph",
                  "events"
                ],
                "contract_version": 2,
                "require_source_refs": true,
                "endpoint": "http://127.0.0.1:47124",
                "manual_url": "http://127.0.0.1:47124/utcp.json",
                "knowledge_browse_url": "http://127.0.0.1:5276",
                "auth_env": "AI_COLLAB_API_KEY",
                "timeout_seconds": 5,
                "max_result_bytes": 1048576,
                "cache_ttl_seconds": 60,
                "fallback": "local",
                "automation": {
                  "discovery_on_session_start": true,
                  "knowledge_recall": true,
                  "memory_recall": true,
                  "context_enrichment": true,
                  "notices_on_session_start": false,
                  "goals_sync": false,
                  "telemetry_on_maintenance": false,
                  "reporting_dispatch": true,
                  "judgment_dispatch": true,
                  "verification_execution": true
                }
              },
              "active": false,
              "effective_mode": "off",
              "effective_capabilities": []
            }
          },
          "output_hash": "a6df426290b4549a59eecaa0519ead9bcc50b7fcb25bd2185ff6047960f19ccb",
          "completed_at": "2026-07-15T15:08:04Z"
        },
        {
          "id": "notices",
          "action": "substrate.notices",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-15T15:08:04Z",
          "output": {
            "status": "disabled"
          },
          "output_hash": "38b904a1cf83df048360fb2480571b749fd98d57e11f1afdffb5a74a78166fea",
          "completed_at": "2026-07-15T15:08:04Z"
        },
        {
          "id": "goals",
          "action": "substrate.goals",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-15T15:08:04Z",
          "output": {
            "status": "disabled",
            "created": 0,
            "observed": 0,
            "results": []
          },
          "output_hash": "cdfd4de44a28140e686159f34f7b47975954c67e1d1efcef666e985acb136ed8",
          "completed_at": "2026-07-15T15:08:04Z"
        }
      ],
      "completed_at": "2026-07-15T15:08:04Z"
    },
    {
      "id": "WFR-069",
      "schema_version": "1.0",
      "workflow_id": "session.stop",
      "workflow_version": 1,
      "definition_hash": "0cef7bb3e28321be8f85375c154955a69310ce297e47de3f3b8dd48f77a2f07d",
      "plan_hash": "a5e1d77ac734217487fc418e29c7163f4e81178e25d171e70cd4c999d527d3e8",
      "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
      "inputs": {},
      "idempotency_key": "hook:Stop:019f6652-0b76-7e22-97c5-b39ad54f3baa",
      "status": "completed",
      "attempt": 1,
      "created_at": "2026-07-15T15:08:08Z",
      "updated_at": "2026-07-15T15:08:09Z",
      "receipts": [
        {
          "step_id": "state",
          "action": "state.consistency",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "5a1c6e5246defb1b6b6b90ff734db95bece2886b408ab112ed9b8e67222d5568",
          "completed_at": "2026-07-15T15:08:08Z"
        },
        {
          "step_id": "goals",
          "action": "substrate.goals",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "cdfd4de44a28140e686159f34f7b47975954c67e1d1efcef666e985acb136ed8",
          "completed_at": "2026-07-15T15:08:09Z"
        },
        {
          "step_id": "staleness",
          "action": "staleness.audit",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "1e81cb0ffd0a4d04626920a203b38d2d23a264cd43e807a85d375d69cae8a658",
          "completed_at": "2026-07-15T15:08:09Z"
        },
        {
          "step_id": "reflections",
          "action": "reflection.list",
          "input_hash": "0172e841ab4c13b3a4061f073f9d68a716ec87a8a5d52fde41823385e0582573",
          "output_hash": "c1b6b635c0bab21120657277f14ef6f839909875f307a3745fa48aee2bd6e449",
          "completed_at": "2026-07-15T15:08:09Z"
        },
        {
          "step_id": "bundle",
          "action": "reporting.bundle",
          "input_hash": "aed8ebb688dc3c085dd978d7c4120572173c3cb87e75919e4a937dcca6ef9457",
          "output_hash": "6413b750e5adf462056ec1108a5d692cc446676e520bee65af98f64bc3e9bd9b",
          "completed_at": "2026-07-15T15:08:09Z"
        },
        {
          "step_id": "delegated",
          "action": "reporting.delegate",
          "input_hash": "669197e524ce450fa066ad7ef7d9da00168b780083ca6a5d7094bca3097e8568",
          "output_hash": "e6085059f197def80ae95add1f328418107bea5436c9bd002530043646a3a95c",
          "completed_at": "2026-07-15T15:08:09Z"
        }
      ],
      "steps": [
        {
          "id": "state",
          "action": "state.consistency",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-15T15:08:08Z",
          "output": {
            "status": "ok",
            "repo_root": "D:\\Projects\\prd-plugin",
            "summary": {
              "errors": 0,
              "warnings": 0,
              "infos": 0
            },
            "findings": []
          },
          "output_hash": "5a1c6e5246defb1b6b6b90ff734db95bece2886b408ab112ed9b8e67222d5568",
          "completed_at": "2026-07-15T15:08:08Z"
        },
        {
          "id": "goals",
          "action": "substrate.goals",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-15T15:08:08Z",
          "output": {
            "status": "disabled",
            "created": 0,
            "observed": 0,
            "results": []
          },
          "output_hash": "cdfd4de44a28140e686159f34f7b47975954c67e1d1efcef666e985acb136ed8",
          "completed_at": "2026-07-15T15:08:09Z"
        },
        {
          "id": "staleness",
          "action": "staleness.audit",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-15T15:08:09Z",
          "output": {
            "status": "ok",
            "repo_root": "D:\\Projects\\prd-plugin",
            "counts": {
              "stale": 0
            },
            "stale": []
          },
          "output_hash": "1e81cb0ffd0a4d04626920a203b38d2d23a264cd43e807a85d375d69cae8a658",
          "completed_at": "2026-07-15T15:08:09Z"
        },
        {
          "id": "reflections",
          "action": "reflection.list",
          "status": "completed",
          "resolved_input_hash": "0172e841ab4c13b3a4061f073f9d68a716ec87a8a5d52fde41823385e0582573",
          "started_at": "2026-07-15T15:08:09Z",
          "output": {
            "enabled": false,
            "on_stop": true,
            "max_questions_per_stop": 5,
            "categories": [
              {
                "id": "behaviour_quality",
                "name": "Behaviour quality",
                "enabled": true,
                "question_count": 3
              },
              {
                "id": "harness_friction",
                "name": "Harness friction",
                "enabled": true,
                "question_count": 2
              }
            ],
            "questions": [
              {
                "id": "RFQ-001",
                "text": "Based on the work you just carried out, would you classify your behaviour as good? Answer yes or no and cite observable evidence.",
                "enabled": true,
                "category_id": "behaviour_quality",
                "category_name": "Behaviour quality",
                "effective_enabled": false
              },
              {
                "id": "RFQ-002",
                "text": "If you answered no, what could you do differently to correct your behaviour?",
                "enabled": true,
                "category_id": "behaviour_quality",
                "category_name": "Behaviour quality",
                "effective_enabled": false
              },
              {
                "id": "RFQ-003",
                "text": "Would another attempt using the identified good behaviours materially improve the outcome? Answer yes or no and state the next corrective action if yes.",
                "enabled": true,
                "category_id": "behaviour_quality",
                "category_name": "Behaviour quality",
                "effective_enabled": false
              },
              {
                "id": "RFQ-004",
                "text": "What harness friction points made this work more difficult?",
                "enabled": true,
                "category_id": "harness_friction",
                "category_name": "Harness friction",
                "effective_enabled": false
              },
              {
                "id": "RFQ-005",
                "text": "What up to three changes would most improve friction in the harness?",
                "enabled": true,
                "category_id": "harness_friction",
                "category_name": "Harness friction",
                "effective_enabled": false
              }
            ]
          },
          "output_hash": "c1b6b635c0bab21120657277f14ef6f839909875f307a3745fa48aee2bd6e449",
          "completed_at": "2026-07-15T15:08:09Z"
        },
        {
          "id": "bundle",
          "action": "reporting.bundle",
          "status": "completed",
          "resolved_input_hash": "aed8ebb688dc3c085dd978d7c4120572173c3cb87e75919e4a937dcca6ef9457",
          "started_at": "2026-07-15T15:08:09Z",
          "output": {
            "contract_version": 1,
            "task": "session_summary",
            "repo": "prd-plugin",
            "policy": {
              "enabled": false,
              "executor": "ai-collab",
              "contract_version": 1,
              "profile": "fast-capable",
              "tasks": [
                "report_summary",
                "session_summary",
                "wiki_synthesis",
                "triage_draft"
              ],
              "fallback": "main",
              "require_source_refs": true,
              "max_input_tokens": 12000,
              "max_output_tokens": 1500,
              "timeout_seconds": 30
            },
            "facts": {
              "requests_by_status": {
                "deferred": 1,
                "implemented": 80,
                "proposed": 1,
                "rejected": 1
              },
              "active_requests": [
                {
                  "id": "REQ-072",
                  "status": "proposed",
                  "severity": "low",
                  "summary": "opencode run-until-done: session.idle is a non-blocking notification, so the stop guard can't force continuation on opencode (currently degrades to a printed reminder, 0.5.95). Investigate whether opencode exposes any vetoable/continuation mechanism (a different event, a permission hook, or a 'continue' API) to enforce run-until-done, or accept the reminder as the permanent ceiling. Low priority — user rarely uses opencode."
                }
              ],
              "active_tracking": [],
              "open_health": [],
              "evidence_count": 104,
              "decision_count": 9
            },
            "findings": [],
            "source_refs": [
              ".prd_plugin/config.json",
              ".prd_plugin/state/decisions.json",
              ".prd_plugin/state/evidence.json",
              ".prd_plugin/state/health.json",
              ".prd_plugin/state/requests.json",
              ".prd_plugin/state/tracking.json",
              "REQ-072"
            ],
            "constraints": {
              "max_input_tokens": 12000,
              "max_output_tokens": 1500,
              "timeout_seconds": 30,
              "require_source_refs": true,
              "no_project_state_writes": true,
              "no_secrets_or_local_session_content": true
            }
          },
          "output_hash": "6413b750e5adf462056ec1108a5d692cc446676e520bee65af98f64bc3e9bd9b",
          "completed_at": "2026-07-15T15:08:09Z"
        },
        {
          "id": "delegated",
          "action": "reporting.delegate",
          "status": "completed",
          "resolved_input_hash": "669197e524ce450fa066ad7ef7d9da00168b780083ca6a5d7094bca3097e8568",
          "started_at": "2026-07-15T15:08:09Z",
          "output": {
            "status": "fallback",
            "action": "main",
            "reason": "disabled"
          },
          "output_hash": "e6085059f197def80ae95add1f328418107bea5436c9bd002530043646a3a95c",
          "completed_at": "2026-07-15T15:08:09Z"
        }
      ],
      "completed_at": "2026-07-15T15:08:09Z"
    },
    {
      "id": "WFR-070",
      "schema_version": "1.0",
      "workflow_id": "session.start",
      "workflow_version": 1,
      "definition_hash": "d0f98da02571e6dd27fec4aed92d3c82af9db75f8b90b997bf665635c7b7f6ca",
      "plan_hash": "b5072615ca3b7e9a3bd85d50d1f069d99ef2a9816b32c03a370745ed7a205536",
      "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
      "inputs": {},
      "idempotency_key": "hook:SessionStart:019f6652-fcb8-7ee1-8233-34df92fe2739",
      "status": "completed",
      "attempt": 1,
      "created_at": "2026-07-15T15:09:04Z",
      "updated_at": "2026-07-15T15:09:06Z",
      "receipts": [
        {
          "step_id": "config",
          "action": "config.audit",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "3782ec2317c0c8ee7598634310a2804d8aae4735f557498f9d3b8fae7c45e1e5",
          "completed_at": "2026-07-15T15:09:04Z"
        },
        {
          "step_id": "services",
          "action": "services.audit",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "13dcc58bd528f3efa3e6e0fa0853a6eedc376f1f3685fbd4869cbb2b60382ee3",
          "completed_at": "2026-07-15T15:09:04Z"
        },
        {
          "step_id": "state",
          "action": "state.consistency",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "5a1c6e5246defb1b6b6b90ff734db95bece2886b408ab112ed9b8e67222d5568",
          "completed_at": "2026-07-15T15:09:05Z"
        },
        {
          "step_id": "status",
          "action": "state.query",
          "input_hash": "a15231a2142a2a9a85355a8b9cbbccffe01a9c9c2c2fd8c2bc2987cdc481564a",
          "output_hash": "8ba9f7d3cc6705af37de9e3324d1258e21ccacb5ab0b2d7b389ca08885e11187",
          "completed_at": "2026-07-15T15:09:05Z"
        },
        {
          "step_id": "substrate",
          "action": "substrate.preflight",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "a6df426290b4549a59eecaa0519ead9bcc50b7fcb25bd2185ff6047960f19ccb",
          "completed_at": "2026-07-15T15:09:05Z"
        },
        {
          "step_id": "notices",
          "action": "substrate.notices",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "38b904a1cf83df048360fb2480571b749fd98d57e11f1afdffb5a74a78166fea",
          "completed_at": "2026-07-15T15:09:05Z"
        },
        {
          "step_id": "goals",
          "action": "substrate.goals",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "cdfd4de44a28140e686159f34f7b47975954c67e1d1efcef666e985acb136ed8",
          "completed_at": "2026-07-15T15:09:06Z"
        }
      ],
      "steps": [
        {
          "id": "config",
          "action": "config.audit",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-15T15:09:04Z",
          "output": {
            "status": "ok",
            "summary": {
              "settings": 195,
              "mutable": 186,
              "read_only_or_managed": 9,
              "unclassified": 0,
              "unknown": 0,
              "invalid": 0,
              "missing_using_defaults": 0
            },
            "unclassified_keys": [],
            "unknown_keys": [],
            "invalid_values": [],
            "missing_using_defaults": []
          },
          "output_hash": "3782ec2317c0c8ee7598634310a2804d8aae4735f557498f9d3b8fae7c45e1e5",
          "completed_at": "2026-07-15T15:09:04Z"
        },
        {
          "id": "services",
          "action": "services.audit",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-15T15:09:04Z",
          "output": {
            "status": "ok",
            "summary": {
              "critical": 0,
              "high": 0,
              "medium": 0,
              "low": 0
            },
            "findings": []
          },
          "output_hash": "13dcc58bd528f3efa3e6e0fa0853a6eedc376f1f3685fbd4869cbb2b60382ee3",
          "completed_at": "2026-07-15T15:09:04Z"
        },
        {
          "id": "state",
          "action": "state.consistency",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-15T15:09:04Z",
          "output": {
            "status": "ok",
            "repo_root": "D:\\Projects\\prd-plugin",
            "summary": {
              "errors": 0,
              "warnings": 0,
              "infos": 0
            },
            "findings": []
          },
          "output_hash": "5a1c6e5246defb1b6b6b90ff734db95bece2886b408ab112ed9b8e67222d5568",
          "completed_at": "2026-07-15T15:09:05Z"
        },
        {
          "id": "status",
          "action": "state.query",
          "status": "completed",
          "resolved_input_hash": "a15231a2142a2a9a85355a8b9cbbccffe01a9c9c2c2fd8c2bc2987cdc481564a",
          "started_at": "2026-07-15T15:09:05Z",
          "output": {
            "repo_root": "D:\\Projects\\prd-plugin",
            "autonomy_level": "autonomous",
            "requests_by_status": {
              "deferred": 1,
              "implemented": 80,
              "proposed": 1,
              "rejected": 1
            },
            "active_tracking": [],
            "tracking_branches": [],
            "tracking_branch_counts": {},
            "tracking_branch_errors": [],
            "open_health": [],
            "stale_count": 0,
            "skill_usage": {
              "project-decision-policy": 1,
              "project-request-intake": 1,
              "project-test-driven-implementation": 1,
              "project-verification-before-completion": 1,
              "project-llm-wiki": 1
            },
            "wiki_backfill_pending": false,
            "version_update": null
          },
          "output_hash": "8ba9f7d3cc6705af37de9e3324d1258e21ccacb5ab0b2d7b389ca08885e11187",
          "completed_at": "2026-07-15T15:09:05Z"
        },
        {
          "id": "substrate",
          "action": "substrate.preflight",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-15T15:09:05Z",
          "output": {
            "status": "disabled",
            "services": {
              "status": "ok",
              "summary": {
                "critical": 0,
                "high": 0,
                "medium": 0,
                "low": 0
              },
              "findings": []
            },
            "policy": {
              "configured": {
                "enabled": false,
                "mode": "off",
                "capabilities": [
                  "records",
                  "graph",
                  "events"
                ],
                "contract_version": 2,
                "require_source_refs": true,
                "endpoint": "http://127.0.0.1:47124",
                "manual_url": "http://127.0.0.1:47124/utcp.json",
                "knowledge_browse_url": "http://127.0.0.1:5276",
                "auth_env": "AI_COLLAB_API_KEY",
                "timeout_seconds": 5,
                "max_result_bytes": 1048576,
                "cache_ttl_seconds": 60,
                "fallback": "local",
                "automation": {
                  "discovery_on_session_start": true,
                  "knowledge_recall": true,
                  "memory_recall": true,
                  "context_enrichment": true,
                  "notices_on_session_start": false,
                  "goals_sync": false,
                  "telemetry_on_maintenance": false,
                  "reporting_dispatch": true,
                  "judgment_dispatch": true,
                  "verification_execution": true
                }
              },
              "active": false,
              "effective_mode": "off",
              "effective_capabilities": []
            }
          },
          "output_hash": "a6df426290b4549a59eecaa0519ead9bcc50b7fcb25bd2185ff6047960f19ccb",
          "completed_at": "2026-07-15T15:09:05Z"
        },
        {
          "id": "notices",
          "action": "substrate.notices",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-15T15:09:05Z",
          "output": {
            "status": "disabled"
          },
          "output_hash": "38b904a1cf83df048360fb2480571b749fd98d57e11f1afdffb5a74a78166fea",
          "completed_at": "2026-07-15T15:09:05Z"
        },
        {
          "id": "goals",
          "action": "substrate.goals",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-15T15:09:05Z",
          "output": {
            "status": "disabled",
            "created": 0,
            "observed": 0,
            "results": []
          },
          "output_hash": "cdfd4de44a28140e686159f34f7b47975954c67e1d1efcef666e985acb136ed8",
          "completed_at": "2026-07-15T15:09:06Z"
        }
      ],
      "completed_at": "2026-07-15T15:09:06Z"
    },
    {
      "id": "WFR-071",
      "schema_version": "1.0",
      "workflow_id": "session.stop",
      "workflow_version": 1,
      "definition_hash": "0cef7bb3e28321be8f85375c154955a69310ce297e47de3f3b8dd48f77a2f07d",
      "plan_hash": "a5e1d77ac734217487fc418e29c7163f4e81178e25d171e70cd4c999d527d3e8",
      "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
      "inputs": {},
      "idempotency_key": "hook:Stop:019f6652-fcb8-7ee1-8233-34df92fe2739",
      "status": "completed",
      "attempt": 1,
      "created_at": "2026-07-15T15:09:09Z",
      "updated_at": "2026-07-15T15:09:10Z",
      "receipts": [
        {
          "step_id": "state",
          "action": "state.consistency",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "5a1c6e5246defb1b6b6b90ff734db95bece2886b408ab112ed9b8e67222d5568",
          "completed_at": "2026-07-15T15:09:09Z"
        },
        {
          "step_id": "goals",
          "action": "substrate.goals",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "cdfd4de44a28140e686159f34f7b47975954c67e1d1efcef666e985acb136ed8",
          "completed_at": "2026-07-15T15:09:09Z"
        },
        {
          "step_id": "staleness",
          "action": "staleness.audit",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "1e81cb0ffd0a4d04626920a203b38d2d23a264cd43e807a85d375d69cae8a658",
          "completed_at": "2026-07-15T15:09:10Z"
        },
        {
          "step_id": "reflections",
          "action": "reflection.list",
          "input_hash": "0172e841ab4c13b3a4061f073f9d68a716ec87a8a5d52fde41823385e0582573",
          "output_hash": "c1b6b635c0bab21120657277f14ef6f839909875f307a3745fa48aee2bd6e449",
          "completed_at": "2026-07-15T15:09:10Z"
        },
        {
          "step_id": "bundle",
          "action": "reporting.bundle",
          "input_hash": "aed8ebb688dc3c085dd978d7c4120572173c3cb87e75919e4a937dcca6ef9457",
          "output_hash": "6413b750e5adf462056ec1108a5d692cc446676e520bee65af98f64bc3e9bd9b",
          "completed_at": "2026-07-15T15:09:10Z"
        },
        {
          "step_id": "delegated",
          "action": "reporting.delegate",
          "input_hash": "669197e524ce450fa066ad7ef7d9da00168b780083ca6a5d7094bca3097e8568",
          "output_hash": "e6085059f197def80ae95add1f328418107bea5436c9bd002530043646a3a95c",
          "completed_at": "2026-07-15T15:09:10Z"
        }
      ],
      "steps": [
        {
          "id": "state",
          "action": "state.consistency",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-15T15:09:09Z",
          "output": {
            "status": "ok",
            "repo_root": "D:\\Projects\\prd-plugin",
            "summary": {
              "errors": 0,
              "warnings": 0,
              "infos": 0
            },
            "findings": []
          },
          "output_hash": "5a1c6e5246defb1b6b6b90ff734db95bece2886b408ab112ed9b8e67222d5568",
          "completed_at": "2026-07-15T15:09:09Z"
        },
        {
          "id": "goals",
          "action": "substrate.goals",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-15T15:09:09Z",
          "output": {
            "status": "disabled",
            "created": 0,
            "observed": 0,
            "results": []
          },
          "output_hash": "cdfd4de44a28140e686159f34f7b47975954c67e1d1efcef666e985acb136ed8",
          "completed_at": "2026-07-15T15:09:09Z"
        },
        {
          "id": "staleness",
          "action": "staleness.audit",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-15T15:09:10Z",
          "output": {
            "status": "ok",
            "repo_root": "D:\\Projects\\prd-plugin",
            "counts": {
              "stale": 0
            },
            "stale": []
          },
          "output_hash": "1e81cb0ffd0a4d04626920a203b38d2d23a264cd43e807a85d375d69cae8a658",
          "completed_at": "2026-07-15T15:09:10Z"
        },
        {
          "id": "reflections",
          "action": "reflection.list",
          "status": "completed",
          "resolved_input_hash": "0172e841ab4c13b3a4061f073f9d68a716ec87a8a5d52fde41823385e0582573",
          "started_at": "2026-07-15T15:09:10Z",
          "output": {
            "enabled": false,
            "on_stop": true,
            "max_questions_per_stop": 5,
            "categories": [
              {
                "id": "behaviour_quality",
                "name": "Behaviour quality",
                "enabled": true,
                "question_count": 3
              },
              {
                "id": "harness_friction",
                "name": "Harness friction",
                "enabled": true,
                "question_count": 2
              }
            ],
            "questions": [
              {
                "id": "RFQ-001",
                "text": "Based on the work you just carried out, would you classify your behaviour as good? Answer yes or no and cite observable evidence.",
                "enabled": true,
                "category_id": "behaviour_quality",
                "category_name": "Behaviour quality",
                "effective_enabled": false
              },
              {
                "id": "RFQ-002",
                "text": "If you answered no, what could you do differently to correct your behaviour?",
                "enabled": true,
                "category_id": "behaviour_quality",
                "category_name": "Behaviour quality",
                "effective_enabled": false
              },
              {
                "id": "RFQ-003",
                "text": "Would another attempt using the identified good behaviours materially improve the outcome? Answer yes or no and state the next corrective action if yes.",
                "enabled": true,
                "category_id": "behaviour_quality",
                "category_name": "Behaviour quality",
                "effective_enabled": false
              },
              {
                "id": "RFQ-004",
                "text": "What harness friction points made this work more difficult?",
                "enabled": true,
                "category_id": "harness_friction",
                "category_name": "Harness friction",
                "effective_enabled": false
              },
              {
                "id": "RFQ-005",
                "text": "What up to three changes would most improve friction in the harness?",
                "enabled": true,
                "category_id": "harness_friction",
                "category_name": "Harness friction",
                "effective_enabled": false
              }
            ]
          },
          "output_hash": "c1b6b635c0bab21120657277f14ef6f839909875f307a3745fa48aee2bd6e449",
          "completed_at": "2026-07-15T15:09:10Z"
        },
        {
          "id": "bundle",
          "action": "reporting.bundle",
          "status": "completed",
          "resolved_input_hash": "aed8ebb688dc3c085dd978d7c4120572173c3cb87e75919e4a937dcca6ef9457",
          "started_at": "2026-07-15T15:09:10Z",
          "output": {
            "contract_version": 1,
            "task": "session_summary",
            "repo": "prd-plugin",
            "policy": {
              "enabled": false,
              "executor": "ai-collab",
              "contract_version": 1,
              "profile": "fast-capable",
              "tasks": [
                "report_summary",
                "session_summary",
                "wiki_synthesis",
                "triage_draft"
              ],
              "fallback": "main",
              "require_source_refs": true,
              "max_input_tokens": 12000,
              "max_output_tokens": 1500,
              "timeout_seconds": 30
            },
            "facts": {
              "requests_by_status": {
                "deferred": 1,
                "implemented": 80,
                "proposed": 1,
                "rejected": 1
              },
              "active_requests": [
                {
                  "id": "REQ-072",
                  "status": "proposed",
                  "severity": "low",
                  "summary": "opencode run-until-done: session.idle is a non-blocking notification, so the stop guard can't force continuation on opencode (currently degrades to a printed reminder, 0.5.95). Investigate whether opencode exposes any vetoable/continuation mechanism (a different event, a permission hook, or a 'continue' API) to enforce run-until-done, or accept the reminder as the permanent ceiling. Low priority — user rarely uses opencode."
                }
              ],
              "active_tracking": [],
              "open_health": [],
              "evidence_count": 104,
              "decision_count": 9
            },
            "findings": [],
            "source_refs": [
              ".prd_plugin/config.json",
              ".prd_plugin/state/decisions.json",
              ".prd_plugin/state/evidence.json",
              ".prd_plugin/state/health.json",
              ".prd_plugin/state/requests.json",
              ".prd_plugin/state/tracking.json",
              "REQ-072"
            ],
            "constraints": {
              "max_input_tokens": 12000,
              "max_output_tokens": 1500,
              "timeout_seconds": 30,
              "require_source_refs": true,
              "no_project_state_writes": true,
              "no_secrets_or_local_session_content": true
            }
          },
          "output_hash": "6413b750e5adf462056ec1108a5d692cc446676e520bee65af98f64bc3e9bd9b",
          "completed_at": "2026-07-15T15:09:10Z"
        },
        {
          "id": "delegated",
          "action": "reporting.delegate",
          "status": "completed",
          "resolved_input_hash": "669197e524ce450fa066ad7ef7d9da00168b780083ca6a5d7094bca3097e8568",
          "started_at": "2026-07-15T15:09:10Z",
          "output": {
            "status": "fallback",
            "action": "main",
            "reason": "disabled"
          },
          "output_hash": "e6085059f197def80ae95add1f328418107bea5436c9bd002530043646a3a95c",
          "completed_at": "2026-07-15T15:09:10Z"
        }
      ],
      "completed_at": "2026-07-15T15:09:10Z"
    },
    {
      "id": "WFR-072",
      "schema_version": "1.0",
      "workflow_id": "session.start",
      "workflow_version": 1,
      "definition_hash": "d0f98da02571e6dd27fec4aed92d3c82af9db75f8b90b997bf665635c7b7f6ca",
      "plan_hash": "b5072615ca3b7e9a3bd85d50d1f069d99ef2a9816b32c03a370745ed7a205536",
      "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
      "inputs": {},
      "idempotency_key": "hook:SessionStart:019f6658-c020-7171-b6af-f162221cc389",
      "status": "completed",
      "attempt": 1,
      "created_at": "2026-07-15T15:15:23Z",
      "updated_at": "2026-07-15T15:15:24Z",
      "receipts": [
        {
          "step_id": "config",
          "action": "config.audit",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "3782ec2317c0c8ee7598634310a2804d8aae4735f557498f9d3b8fae7c45e1e5",
          "completed_at": "2026-07-15T15:15:23Z"
        },
        {
          "step_id": "services",
          "action": "services.audit",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "13dcc58bd528f3efa3e6e0fa0853a6eedc376f1f3685fbd4869cbb2b60382ee3",
          "completed_at": "2026-07-15T15:15:23Z"
        },
        {
          "step_id": "state",
          "action": "state.consistency",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "5a1c6e5246defb1b6b6b90ff734db95bece2886b408ab112ed9b8e67222d5568",
          "completed_at": "2026-07-15T15:15:23Z"
        },
        {
          "step_id": "status",
          "action": "state.query",
          "input_hash": "a15231a2142a2a9a85355a8b9cbbccffe01a9c9c2c2fd8c2bc2987cdc481564a",
          "output_hash": "8ba9f7d3cc6705af37de9e3324d1258e21ccacb5ab0b2d7b389ca08885e11187",
          "completed_at": "2026-07-15T15:15:24Z"
        },
        {
          "step_id": "substrate",
          "action": "substrate.preflight",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "a6df426290b4549a59eecaa0519ead9bcc50b7fcb25bd2185ff6047960f19ccb",
          "completed_at": "2026-07-15T15:15:24Z"
        },
        {
          "step_id": "notices",
          "action": "substrate.notices",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "38b904a1cf83df048360fb2480571b749fd98d57e11f1afdffb5a74a78166fea",
          "completed_at": "2026-07-15T15:15:24Z"
        },
        {
          "step_id": "goals",
          "action": "substrate.goals",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "cdfd4de44a28140e686159f34f7b47975954c67e1d1efcef666e985acb136ed8",
          "completed_at": "2026-07-15T15:15:24Z"
        }
      ],
      "steps": [
        {
          "id": "config",
          "action": "config.audit",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-15T15:15:23Z",
          "output": {
            "status": "ok",
            "summary": {
              "settings": 195,
              "mutable": 186,
              "read_only_or_managed": 9,
              "unclassified": 0,
              "unknown": 0,
              "invalid": 0,
              "missing_using_defaults": 0
            },
            "unclassified_keys": [],
            "unknown_keys": [],
            "invalid_values": [],
            "missing_using_defaults": []
          },
          "output_hash": "3782ec2317c0c8ee7598634310a2804d8aae4735f557498f9d3b8fae7c45e1e5",
          "completed_at": "2026-07-15T15:15:23Z"
        },
        {
          "id": "services",
          "action": "services.audit",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-15T15:15:23Z",
          "output": {
            "status": "ok",
            "summary": {
              "critical": 0,
              "high": 0,
              "medium": 0,
              "low": 0
            },
            "findings": []
          },
          "output_hash": "13dcc58bd528f3efa3e6e0fa0853a6eedc376f1f3685fbd4869cbb2b60382ee3",
          "completed_at": "2026-07-15T15:15:23Z"
        },
        {
          "id": "state",
          "action": "state.consistency",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-15T15:15:23Z",
          "output": {
            "status": "ok",
            "repo_root": "D:\\Projects\\prd-plugin",
            "summary": {
              "errors": 0,
              "warnings": 0,
              "infos": 0
            },
            "findings": []
          },
          "output_hash": "5a1c6e5246defb1b6b6b90ff734db95bece2886b408ab112ed9b8e67222d5568",
          "completed_at": "2026-07-15T15:15:23Z"
        },
        {
          "id": "status",
          "action": "state.query",
          "status": "completed",
          "resolved_input_hash": "a15231a2142a2a9a85355a8b9cbbccffe01a9c9c2c2fd8c2bc2987cdc481564a",
          "started_at": "2026-07-15T15:15:24Z",
          "output": {
            "repo_root": "D:\\Projects\\prd-plugin",
            "autonomy_level": "autonomous",
            "requests_by_status": {
              "deferred": 1,
              "implemented": 80,
              "proposed": 1,
              "rejected": 1
            },
            "active_tracking": [],
            "tracking_branches": [],
            "tracking_branch_counts": {},
            "tracking_branch_errors": [],
            "open_health": [],
            "stale_count": 0,
            "skill_usage": {
              "project-decision-policy": 1,
              "project-request-intake": 1,
              "project-test-driven-implementation": 1,
              "project-verification-before-completion": 1,
              "project-llm-wiki": 1
            },
            "wiki_backfill_pending": false,
            "version_update": null
          },
          "output_hash": "8ba9f7d3cc6705af37de9e3324d1258e21ccacb5ab0b2d7b389ca08885e11187",
          "completed_at": "2026-07-15T15:15:24Z"
        },
        {
          "id": "substrate",
          "action": "substrate.preflight",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-15T15:15:24Z",
          "output": {
            "status": "disabled",
            "services": {
              "status": "ok",
              "summary": {
                "critical": 0,
                "high": 0,
                "medium": 0,
                "low": 0
              },
              "findings": []
            },
            "policy": {
              "configured": {
                "enabled": false,
                "mode": "off",
                "capabilities": [
                  "records",
                  "graph",
                  "events"
                ],
                "contract_version": 2,
                "require_source_refs": true,
                "endpoint": "http://127.0.0.1:47124",
                "manual_url": "http://127.0.0.1:47124/utcp.json",
                "knowledge_browse_url": "http://127.0.0.1:5276",
                "auth_env": "AI_COLLAB_API_KEY",
                "timeout_seconds": 5,
                "max_result_bytes": 1048576,
                "cache_ttl_seconds": 60,
                "fallback": "local",
                "automation": {
                  "discovery_on_session_start": true,
                  "knowledge_recall": true,
                  "memory_recall": true,
                  "context_enrichment": true,
                  "notices_on_session_start": false,
                  "goals_sync": false,
                  "telemetry_on_maintenance": false,
                  "reporting_dispatch": true,
                  "judgment_dispatch": true,
                  "verification_execution": true
                }
              },
              "active": false,
              "effective_mode": "off",
              "effective_capabilities": []
            }
          },
          "output_hash": "a6df426290b4549a59eecaa0519ead9bcc50b7fcb25bd2185ff6047960f19ccb",
          "completed_at": "2026-07-15T15:15:24Z"
        },
        {
          "id": "notices",
          "action": "substrate.notices",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-15T15:15:24Z",
          "output": {
            "status": "disabled"
          },
          "output_hash": "38b904a1cf83df048360fb2480571b749fd98d57e11f1afdffb5a74a78166fea",
          "completed_at": "2026-07-15T15:15:24Z"
        },
        {
          "id": "goals",
          "action": "substrate.goals",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-15T15:15:24Z",
          "output": {
            "status": "disabled",
            "created": 0,
            "observed": 0,
            "results": []
          },
          "output_hash": "cdfd4de44a28140e686159f34f7b47975954c67e1d1efcef666e985acb136ed8",
          "completed_at": "2026-07-15T15:15:24Z"
        }
      ],
      "completed_at": "2026-07-15T15:15:24Z"
    },
    {
      "id": "WFR-073",
      "schema_version": "1.0",
      "workflow_id": "session.stop",
      "workflow_version": 1,
      "definition_hash": "0cef7bb3e28321be8f85375c154955a69310ce297e47de3f3b8dd48f77a2f07d",
      "plan_hash": "a5e1d77ac734217487fc418e29c7163f4e81178e25d171e70cd4c999d527d3e8",
      "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
      "inputs": {},
      "idempotency_key": "hook:Stop:019f6658-c020-7171-b6af-f162221cc389",
      "status": "completed",
      "attempt": 1,
      "created_at": "2026-07-15T15:18:31Z",
      "updated_at": "2026-07-15T15:18:32Z",
      "receipts": [
        {
          "step_id": "state",
          "action": "state.consistency",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "5a1c6e5246defb1b6b6b90ff734db95bece2886b408ab112ed9b8e67222d5568",
          "completed_at": "2026-07-15T15:18:31Z"
        },
        {
          "step_id": "goals",
          "action": "substrate.goals",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "cdfd4de44a28140e686159f34f7b47975954c67e1d1efcef666e985acb136ed8",
          "completed_at": "2026-07-15T15:18:32Z"
        },
        {
          "step_id": "staleness",
          "action": "staleness.audit",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "1e81cb0ffd0a4d04626920a203b38d2d23a264cd43e807a85d375d69cae8a658",
          "completed_at": "2026-07-15T15:18:32Z"
        },
        {
          "step_id": "reflections",
          "action": "reflection.list",
          "input_hash": "0172e841ab4c13b3a4061f073f9d68a716ec87a8a5d52fde41823385e0582573",
          "output_hash": "c1b6b635c0bab21120657277f14ef6f839909875f307a3745fa48aee2bd6e449",
          "completed_at": "2026-07-15T15:18:32Z"
        },
        {
          "step_id": "bundle",
          "action": "reporting.bundle",
          "input_hash": "aed8ebb688dc3c085dd978d7c4120572173c3cb87e75919e4a937dcca6ef9457",
          "output_hash": "6413b750e5adf462056ec1108a5d692cc446676e520bee65af98f64bc3e9bd9b",
          "completed_at": "2026-07-15T15:18:32Z"
        },
        {
          "step_id": "delegated",
          "action": "reporting.delegate",
          "input_hash": "669197e524ce450fa066ad7ef7d9da00168b780083ca6a5d7094bca3097e8568",
          "output_hash": "e6085059f197def80ae95add1f328418107bea5436c9bd002530043646a3a95c",
          "completed_at": "2026-07-15T15:18:32Z"
        }
      ],
      "steps": [
        {
          "id": "state",
          "action": "state.consistency",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-15T15:18:31Z",
          "output": {
            "status": "ok",
            "repo_root": "D:\\Projects\\prd-plugin",
            "summary": {
              "errors": 0,
              "warnings": 0,
              "infos": 0
            },
            "findings": []
          },
          "output_hash": "5a1c6e5246defb1b6b6b90ff734db95bece2886b408ab112ed9b8e67222d5568",
          "completed_at": "2026-07-15T15:18:31Z"
        },
        {
          "id": "goals",
          "action": "substrate.goals",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-15T15:18:32Z",
          "output": {
            "status": "disabled",
            "created": 0,
            "observed": 0,
            "results": []
          },
          "output_hash": "cdfd4de44a28140e686159f34f7b47975954c67e1d1efcef666e985acb136ed8",
          "completed_at": "2026-07-15T15:18:32Z"
        },
        {
          "id": "staleness",
          "action": "staleness.audit",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-15T15:18:32Z",
          "output": {
            "status": "ok",
            "repo_root": "D:\\Projects\\prd-plugin",
            "counts": {
              "stale": 0
            },
            "stale": []
          },
          "output_hash": "1e81cb0ffd0a4d04626920a203b38d2d23a264cd43e807a85d375d69cae8a658",
          "completed_at": "2026-07-15T15:18:32Z"
        },
        {
          "id": "reflections",
          "action": "reflection.list",
          "status": "completed",
          "resolved_input_hash": "0172e841ab4c13b3a4061f073f9d68a716ec87a8a5d52fde41823385e0582573",
          "started_at": "2026-07-15T15:18:32Z",
          "output": {
            "enabled": false,
            "on_stop": true,
            "max_questions_per_stop": 5,
            "categories": [
              {
                "id": "behaviour_quality",
                "name": "Behaviour quality",
                "enabled": true,
                "question_count": 3
              },
              {
                "id": "harness_friction",
                "name": "Harness friction",
                "enabled": true,
                "question_count": 2
              }
            ],
            "questions": [
              {
                "id": "RFQ-001",
                "text": "Based on the work you just carried out, would you classify your behaviour as good? Answer yes or no and cite observable evidence.",
                "enabled": true,
                "category_id": "behaviour_quality",
                "category_name": "Behaviour quality",
                "effective_enabled": false
              },
              {
                "id": "RFQ-002",
                "text": "If you answered no, what could you do differently to correct your behaviour?",
                "enabled": true,
                "category_id": "behaviour_quality",
                "category_name": "Behaviour quality",
                "effective_enabled": false
              },
              {
                "id": "RFQ-003",
                "text": "Would another attempt using the identified good behaviours materially improve the outcome? Answer yes or no and state the next corrective action if yes.",
                "enabled": true,
                "category_id": "behaviour_quality",
                "category_name": "Behaviour quality",
                "effective_enabled": false
              },
              {
                "id": "RFQ-004",
                "text": "What harness friction points made this work more difficult?",
                "enabled": true,
                "category_id": "harness_friction",
                "category_name": "Harness friction",
                "effective_enabled": false
              },
              {
                "id": "RFQ-005",
                "text": "What up to three changes would most improve friction in the harness?",
                "enabled": true,
                "category_id": "harness_friction",
                "category_name": "Harness friction",
                "effective_enabled": false
              }
            ]
          },
          "output_hash": "c1b6b635c0bab21120657277f14ef6f839909875f307a3745fa48aee2bd6e449",
          "completed_at": "2026-07-15T15:18:32Z"
        },
        {
          "id": "bundle",
          "action": "reporting.bundle",
          "status": "completed",
          "resolved_input_hash": "aed8ebb688dc3c085dd978d7c4120572173c3cb87e75919e4a937dcca6ef9457",
          "started_at": "2026-07-15T15:18:32Z",
          "output": {
            "contract_version": 1,
            "task": "session_summary",
            "repo": "prd-plugin",
            "policy": {
              "enabled": false,
              "executor": "ai-collab",
              "contract_version": 1,
              "profile": "fast-capable",
              "tasks": [
                "report_summary",
                "session_summary",
                "wiki_synthesis",
                "triage_draft"
              ],
              "fallback": "main",
              "require_source_refs": true,
              "max_input_tokens": 12000,
              "max_output_tokens": 1500,
              "timeout_seconds": 30
            },
            "facts": {
              "requests_by_status": {
                "deferred": 1,
                "implemented": 80,
                "proposed": 1,
                "rejected": 1
              },
              "active_requests": [
                {
                  "id": "REQ-072",
                  "status": "proposed",
                  "severity": "low",
                  "summary": "opencode run-until-done: session.idle is a non-blocking notification, so the stop guard can't force continuation on opencode (currently degrades to a printed reminder, 0.5.95). Investigate whether opencode exposes any vetoable/continuation mechanism (a different event, a permission hook, or a 'continue' API) to enforce run-until-done, or accept the reminder as the permanent ceiling. Low priority — user rarely uses opencode."
                }
              ],
              "active_tracking": [],
              "open_health": [],
              "evidence_count": 104,
              "decision_count": 9
            },
            "findings": [],
            "source_refs": [
              ".prd_plugin/config.json",
              ".prd_plugin/state/decisions.json",
              ".prd_plugin/state/evidence.json",
              ".prd_plugin/state/health.json",
              ".prd_plugin/state/requests.json",
              ".prd_plugin/state/tracking.json",
              "REQ-072"
            ],
            "constraints": {
              "max_input_tokens": 12000,
              "max_output_tokens": 1500,
              "timeout_seconds": 30,
              "require_source_refs": true,
              "no_project_state_writes": true,
              "no_secrets_or_local_session_content": true
            }
          },
          "output_hash": "6413b750e5adf462056ec1108a5d692cc446676e520bee65af98f64bc3e9bd9b",
          "completed_at": "2026-07-15T15:18:32Z"
        },
        {
          "id": "delegated",
          "action": "reporting.delegate",
          "status": "completed",
          "resolved_input_hash": "669197e524ce450fa066ad7ef7d9da00168b780083ca6a5d7094bca3097e8568",
          "started_at": "2026-07-15T15:18:32Z",
          "output": {
            "status": "fallback",
            "action": "main",
            "reason": "disabled"
          },
          "output_hash": "e6085059f197def80ae95add1f328418107bea5436c9bd002530043646a3a95c",
          "completed_at": "2026-07-15T15:18:32Z"
        }
      ],
      "completed_at": "2026-07-15T15:18:32Z"
    },
    {
      "id": "WFR-074",
      "schema_version": "1.0",
      "workflow_id": "session.start",
      "workflow_version": 1,
      "definition_hash": "d0f98da02571e6dd27fec4aed92d3c82af9db75f8b90b997bf665635c7b7f6ca",
      "plan_hash": "b5072615ca3b7e9a3bd85d50d1f069d99ef2a9816b32c03a370745ed7a205536",
      "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
      "inputs": {},
      "idempotency_key": "hook:SessionStart:019f665b-d9e4-74b0-9586-4b94c33fb881",
      "status": "completed",
      "attempt": 1,
      "created_at": "2026-07-15T15:18:45Z",
      "updated_at": "2026-07-15T15:18:47Z",
      "receipts": [
        {
          "step_id": "config",
          "action": "config.audit",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "3782ec2317c0c8ee7598634310a2804d8aae4735f557498f9d3b8fae7c45e1e5",
          "completed_at": "2026-07-15T15:18:45Z"
        },
        {
          "step_id": "services",
          "action": "services.audit",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "13dcc58bd528f3efa3e6e0fa0853a6eedc376f1f3685fbd4869cbb2b60382ee3",
          "completed_at": "2026-07-15T15:18:45Z"
        },
        {
          "step_id": "state",
          "action": "state.consistency",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "5a1c6e5246defb1b6b6b90ff734db95bece2886b408ab112ed9b8e67222d5568",
          "completed_at": "2026-07-15T15:18:46Z"
        },
        {
          "step_id": "status",
          "action": "state.query",
          "input_hash": "a15231a2142a2a9a85355a8b9cbbccffe01a9c9c2c2fd8c2bc2987cdc481564a",
          "output_hash": "8ba9f7d3cc6705af37de9e3324d1258e21ccacb5ab0b2d7b389ca08885e11187",
          "completed_at": "2026-07-15T15:18:46Z"
        },
        {
          "step_id": "substrate",
          "action": "substrate.preflight",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "a6df426290b4549a59eecaa0519ead9bcc50b7fcb25bd2185ff6047960f19ccb",
          "completed_at": "2026-07-15T15:18:47Z"
        },
        {
          "step_id": "notices",
          "action": "substrate.notices",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "38b904a1cf83df048360fb2480571b749fd98d57e11f1afdffb5a74a78166fea",
          "completed_at": "2026-07-15T15:18:47Z"
        },
        {
          "step_id": "goals",
          "action": "substrate.goals",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "cdfd4de44a28140e686159f34f7b47975954c67e1d1efcef666e985acb136ed8",
          "completed_at": "2026-07-15T15:18:47Z"
        }
      ],
      "steps": [
        {
          "id": "config",
          "action": "config.audit",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-15T15:18:45Z",
          "output": {
            "status": "ok",
            "summary": {
              "settings": 195,
              "mutable": 186,
              "read_only_or_managed": 9,
              "unclassified": 0,
              "unknown": 0,
              "invalid": 0,
              "missing_using_defaults": 0
            },
            "unclassified_keys": [],
            "unknown_keys": [],
            "invalid_values": [],
            "missing_using_defaults": []
          },
          "output_hash": "3782ec2317c0c8ee7598634310a2804d8aae4735f557498f9d3b8fae7c45e1e5",
          "completed_at": "2026-07-15T15:18:45Z"
        },
        {
          "id": "services",
          "action": "services.audit",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-15T15:18:45Z",
          "output": {
            "status": "ok",
            "summary": {
              "critical": 0,
              "high": 0,
              "medium": 0,
              "low": 0
            },
            "findings": []
          },
          "output_hash": "13dcc58bd528f3efa3e6e0fa0853a6eedc376f1f3685fbd4869cbb2b60382ee3",
          "completed_at": "2026-07-15T15:18:45Z"
        },
        {
          "id": "state",
          "action": "state.consistency",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-15T15:18:46Z",
          "output": {
            "status": "ok",
            "repo_root": "D:\\Projects\\prd-plugin",
            "summary": {
              "errors": 0,
              "warnings": 0,
              "infos": 0
            },
            "findings": []
          },
          "output_hash": "5a1c6e5246defb1b6b6b90ff734db95bece2886b408ab112ed9b8e67222d5568",
          "completed_at": "2026-07-15T15:18:46Z"
        },
        {
          "id": "status",
          "action": "state.query",
          "status": "completed",
          "resolved_input_hash": "a15231a2142a2a9a85355a8b9cbbccffe01a9c9c2c2fd8c2bc2987cdc481564a",
          "started_at": "2026-07-15T15:18:46Z",
          "output": {
            "repo_root": "D:\\Projects\\prd-plugin",
            "autonomy_level": "autonomous",
            "requests_by_status": {
              "deferred": 1,
              "implemented": 80,
              "proposed": 1,
              "rejected": 1
            },
            "active_tracking": [],
            "tracking_branches": [],
            "tracking_branch_counts": {},
            "tracking_branch_errors": [],
            "open_health": [],
            "stale_count": 0,
            "skill_usage": {
              "project-decision-policy": 1,
              "project-request-intake": 1,
              "project-test-driven-implementation": 1,
              "project-verification-before-completion": 1,
              "project-llm-wiki": 1
            },
            "wiki_backfill_pending": false,
            "version_update": null
          },
          "output_hash": "8ba9f7d3cc6705af37de9e3324d1258e21ccacb5ab0b2d7b389ca08885e11187",
          "completed_at": "2026-07-15T15:18:46Z"
        },
        {
          "id": "substrate",
          "action": "substrate.preflight",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-15T15:18:47Z",
          "output": {
            "status": "disabled",
            "services": {
              "status": "ok",
              "summary": {
                "critical": 0,
                "high": 0,
                "medium": 0,
                "low": 0
              },
              "findings": []
            },
            "policy": {
              "configured": {
                "enabled": false,
                "mode": "off",
                "capabilities": [
                  "records",
                  "graph",
                  "events"
                ],
                "contract_version": 2,
                "require_source_refs": true,
                "endpoint": "http://127.0.0.1:47124",
                "manual_url": "http://127.0.0.1:47124/utcp.json",
                "knowledge_browse_url": "http://127.0.0.1:5276",
                "auth_env": "AI_COLLAB_API_KEY",
                "timeout_seconds": 5,
                "max_result_bytes": 1048576,
                "cache_ttl_seconds": 60,
                "fallback": "local",
                "automation": {
                  "discovery_on_session_start": true,
                  "knowledge_recall": true,
                  "memory_recall": true,
                  "context_enrichment": true,
                  "notices_on_session_start": false,
                  "goals_sync": false,
                  "telemetry_on_maintenance": false,
                  "reporting_dispatch": true,
                  "judgment_dispatch": true,
                  "verification_execution": true
                }
              },
              "active": false,
              "effective_mode": "off",
              "effective_capabilities": []
            }
          },
          "output_hash": "a6df426290b4549a59eecaa0519ead9bcc50b7fcb25bd2185ff6047960f19ccb",
          "completed_at": "2026-07-15T15:18:47Z"
        },
        {
          "id": "notices",
          "action": "substrate.notices",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-15T15:18:47Z",
          "output": {
            "status": "disabled"
          },
          "output_hash": "38b904a1cf83df048360fb2480571b749fd98d57e11f1afdffb5a74a78166fea",
          "completed_at": "2026-07-15T15:18:47Z"
        },
        {
          "id": "goals",
          "action": "substrate.goals",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-15T15:18:47Z",
          "output": {
            "status": "disabled",
            "created": 0,
            "observed": 0,
            "results": []
          },
          "output_hash": "cdfd4de44a28140e686159f34f7b47975954c67e1d1efcef666e985acb136ed8",
          "completed_at": "2026-07-15T15:18:47Z"
        }
      ],
      "completed_at": "2026-07-15T15:18:47Z"
    },
    {
      "id": "WFR-075",
      "schema_version": "1.0",
      "workflow_id": "session.stop",
      "workflow_version": 1,
      "definition_hash": "0cef7bb3e28321be8f85375c154955a69310ce297e47de3f3b8dd48f77a2f07d",
      "plan_hash": "a5e1d77ac734217487fc418e29c7163f4e81178e25d171e70cd4c999d527d3e8",
      "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
      "inputs": {},
      "idempotency_key": "hook:Stop:019f665b-d9e4-74b0-9586-4b94c33fb881",
      "status": "completed",
      "attempt": 1,
      "created_at": "2026-07-15T15:18:51Z",
      "updated_at": "2026-07-15T15:18:52Z",
      "receipts": [
        {
          "step_id": "state",
          "action": "state.consistency",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "5a1c6e5246defb1b6b6b90ff734db95bece2886b408ab112ed9b8e67222d5568",
          "completed_at": "2026-07-15T15:18:52Z"
        },
        {
          "step_id": "goals",
          "action": "substrate.goals",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "cdfd4de44a28140e686159f34f7b47975954c67e1d1efcef666e985acb136ed8",
          "completed_at": "2026-07-15T15:18:52Z"
        },
        {
          "step_id": "staleness",
          "action": "staleness.audit",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "1e81cb0ffd0a4d04626920a203b38d2d23a264cd43e807a85d375d69cae8a658",
          "completed_at": "2026-07-15T15:18:52Z"
        },
        {
          "step_id": "reflections",
          "action": "reflection.list",
          "input_hash": "0172e841ab4c13b3a4061f073f9d68a716ec87a8a5d52fde41823385e0582573",
          "output_hash": "c1b6b635c0bab21120657277f14ef6f839909875f307a3745fa48aee2bd6e449",
          "completed_at": "2026-07-15T15:18:52Z"
        },
        {
          "step_id": "bundle",
          "action": "reporting.bundle",
          "input_hash": "aed8ebb688dc3c085dd978d7c4120572173c3cb87e75919e4a937dcca6ef9457",
          "output_hash": "6413b750e5adf462056ec1108a5d692cc446676e520bee65af98f64bc3e9bd9b",
          "completed_at": "2026-07-15T15:18:52Z"
        },
        {
          "step_id": "delegated",
          "action": "reporting.delegate",
          "input_hash": "669197e524ce450fa066ad7ef7d9da00168b780083ca6a5d7094bca3097e8568",
          "output_hash": "e6085059f197def80ae95add1f328418107bea5436c9bd002530043646a3a95c",
          "completed_at": "2026-07-15T15:18:52Z"
        }
      ],
      "steps": [
        {
          "id": "state",
          "action": "state.consistency",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-15T15:18:51Z",
          "output": {
            "status": "ok",
            "repo_root": "D:\\Projects\\prd-plugin",
            "summary": {
              "errors": 0,
              "warnings": 0,
              "infos": 0
            },
            "findings": []
          },
          "output_hash": "5a1c6e5246defb1b6b6b90ff734db95bece2886b408ab112ed9b8e67222d5568",
          "completed_at": "2026-07-15T15:18:52Z"
        },
        {
          "id": "goals",
          "action": "substrate.goals",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-15T15:18:52Z",
          "output": {
            "status": "disabled",
            "created": 0,
            "observed": 0,
            "results": []
          },
          "output_hash": "cdfd4de44a28140e686159f34f7b47975954c67e1d1efcef666e985acb136ed8",
          "completed_at": "2026-07-15T15:18:52Z"
        },
        {
          "id": "staleness",
          "action": "staleness.audit",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-15T15:18:52Z",
          "output": {
            "status": "ok",
            "repo_root": "D:\\Projects\\prd-plugin",
            "counts": {
              "stale": 0
            },
            "stale": []
          },
          "output_hash": "1e81cb0ffd0a4d04626920a203b38d2d23a264cd43e807a85d375d69cae8a658",
          "completed_at": "2026-07-15T15:18:52Z"
        },
        {
          "id": "reflections",
          "action": "reflection.list",
          "status": "completed",
          "resolved_input_hash": "0172e841ab4c13b3a4061f073f9d68a716ec87a8a5d52fde41823385e0582573",
          "started_at": "2026-07-15T15:18:52Z",
          "output": {
            "enabled": false,
            "on_stop": true,
            "max_questions_per_stop": 5,
            "categories": [
              {
                "id": "behaviour_quality",
                "name": "Behaviour quality",
                "enabled": true,
                "question_count": 3
              },
              {
                "id": "harness_friction",
                "name": "Harness friction",
                "enabled": true,
                "question_count": 2
              }
            ],
            "questions": [
              {
                "id": "RFQ-001",
                "text": "Based on the work you just carried out, would you classify your behaviour as good? Answer yes or no and cite observable evidence.",
                "enabled": true,
                "category_id": "behaviour_quality",
                "category_name": "Behaviour quality",
                "effective_enabled": false
              },
              {
                "id": "RFQ-002",
                "text": "If you answered no, what could you do differently to correct your behaviour?",
                "enabled": true,
                "category_id": "behaviour_quality",
                "category_name": "Behaviour quality",
                "effective_enabled": false
              },
              {
                "id": "RFQ-003",
                "text": "Would another attempt using the identified good behaviours materially improve the outcome? Answer yes or no and state the next corrective action if yes.",
                "enabled": true,
                "category_id": "behaviour_quality",
                "category_name": "Behaviour quality",
                "effective_enabled": false
              },
              {
                "id": "RFQ-004",
                "text": "What harness friction points made this work more difficult?",
                "enabled": true,
                "category_id": "harness_friction",
                "category_name": "Harness friction",
                "effective_enabled": false
              },
              {
                "id": "RFQ-005",
                "text": "What up to three changes would most improve friction in the harness?",
                "enabled": true,
                "category_id": "harness_friction",
                "category_name": "Harness friction",
                "effective_enabled": false
              }
            ]
          },
          "output_hash": "c1b6b635c0bab21120657277f14ef6f839909875f307a3745fa48aee2bd6e449",
          "completed_at": "2026-07-15T15:18:52Z"
        },
        {
          "id": "bundle",
          "action": "reporting.bundle",
          "status": "completed",
          "resolved_input_hash": "aed8ebb688dc3c085dd978d7c4120572173c3cb87e75919e4a937dcca6ef9457",
          "started_at": "2026-07-15T15:18:52Z",
          "output": {
            "contract_version": 1,
            "task": "session_summary",
            "repo": "prd-plugin",
            "policy": {
              "enabled": false,
              "executor": "ai-collab",
              "contract_version": 1,
              "profile": "fast-capable",
              "tasks": [
                "report_summary",
                "session_summary",
                "wiki_synthesis",
                "triage_draft"
              ],
              "fallback": "main",
              "require_source_refs": true,
              "max_input_tokens": 12000,
              "max_output_tokens": 1500,
              "timeout_seconds": 30
            },
            "facts": {
              "requests_by_status": {
                "deferred": 1,
                "implemented": 80,
                "proposed": 1,
                "rejected": 1
              },
              "active_requests": [
                {
                  "id": "REQ-072",
                  "status": "proposed",
                  "severity": "low",
                  "summary": "opencode run-until-done: session.idle is a non-blocking notification, so the stop guard can't force continuation on opencode (currently degrades to a printed reminder, 0.5.95). Investigate whether opencode exposes any vetoable/continuation mechanism (a different event, a permission hook, or a 'continue' API) to enforce run-until-done, or accept the reminder as the permanent ceiling. Low priority — user rarely uses opencode."
                }
              ],
              "active_tracking": [],
              "open_health": [],
              "evidence_count": 104,
              "decision_count": 9
            },
            "findings": [],
            "source_refs": [
              ".prd_plugin/config.json",
              ".prd_plugin/state/decisions.json",
              ".prd_plugin/state/evidence.json",
              ".prd_plugin/state/health.json",
              ".prd_plugin/state/requests.json",
              ".prd_plugin/state/tracking.json",
              "REQ-072"
            ],
            "constraints": {
              "max_input_tokens": 12000,
              "max_output_tokens": 1500,
              "timeout_seconds": 30,
              "require_source_refs": true,
              "no_project_state_writes": true,
              "no_secrets_or_local_session_content": true
            }
          },
          "output_hash": "6413b750e5adf462056ec1108a5d692cc446676e520bee65af98f64bc3e9bd9b",
          "completed_at": "2026-07-15T15:18:52Z"
        },
        {
          "id": "delegated",
          "action": "reporting.delegate",
          "status": "completed",
          "resolved_input_hash": "669197e524ce450fa066ad7ef7d9da00168b780083ca6a5d7094bca3097e8568",
          "started_at": "2026-07-15T15:18:52Z",
          "output": {
            "status": "fallback",
            "action": "main",
            "reason": "disabled"
          },
          "output_hash": "e6085059f197def80ae95add1f328418107bea5436c9bd002530043646a3a95c",
          "completed_at": "2026-07-15T15:18:52Z"
        }
      ],
      "completed_at": "2026-07-15T15:18:52Z"
    },
    {
      "id": "WFR-076",
      "schema_version": "1.0",
      "workflow_id": "session.start",
      "workflow_version": 1,
      "definition_hash": "d0f98da02571e6dd27fec4aed92d3c82af9db75f8b90b997bf665635c7b7f6ca",
      "plan_hash": "b5072615ca3b7e9a3bd85d50d1f069d99ef2a9816b32c03a370745ed7a205536",
      "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
      "inputs": {},
      "idempotency_key": "hook:SessionStart:019f665c-1474-7760-95a2-a9c3dcc321e1",
      "status": "completed",
      "attempt": 1,
      "created_at": "2026-07-15T15:19:00Z",
      "updated_at": "2026-07-15T15:19:02Z",
      "receipts": [
        {
          "step_id": "config",
          "action": "config.audit",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "3782ec2317c0c8ee7598634310a2804d8aae4735f557498f9d3b8fae7c45e1e5",
          "completed_at": "2026-07-15T15:19:00Z"
        },
        {
          "step_id": "services",
          "action": "services.audit",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "13dcc58bd528f3efa3e6e0fa0853a6eedc376f1f3685fbd4869cbb2b60382ee3",
          "completed_at": "2026-07-15T15:19:00Z"
        },
        {
          "step_id": "state",
          "action": "state.consistency",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "5a1c6e5246defb1b6b6b90ff734db95bece2886b408ab112ed9b8e67222d5568",
          "completed_at": "2026-07-15T15:19:01Z"
        },
        {
          "step_id": "status",
          "action": "state.query",
          "input_hash": "a15231a2142a2a9a85355a8b9cbbccffe01a9c9c2c2fd8c2bc2987cdc481564a",
          "output_hash": "8ba9f7d3cc6705af37de9e3324d1258e21ccacb5ab0b2d7b389ca08885e11187",
          "completed_at": "2026-07-15T15:19:01Z"
        },
        {
          "step_id": "substrate",
          "action": "substrate.preflight",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "a6df426290b4549a59eecaa0519ead9bcc50b7fcb25bd2185ff6047960f19ccb",
          "completed_at": "2026-07-15T15:19:02Z"
        },
        {
          "step_id": "notices",
          "action": "substrate.notices",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "38b904a1cf83df048360fb2480571b749fd98d57e11f1afdffb5a74a78166fea",
          "completed_at": "2026-07-15T15:19:02Z"
        },
        {
          "step_id": "goals",
          "action": "substrate.goals",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "cdfd4de44a28140e686159f34f7b47975954c67e1d1efcef666e985acb136ed8",
          "completed_at": "2026-07-15T15:19:02Z"
        }
      ],
      "steps": [
        {
          "id": "config",
          "action": "config.audit",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-15T15:19:00Z",
          "output": {
            "status": "ok",
            "summary": {
              "settings": 195,
              "mutable": 186,
              "read_only_or_managed": 9,
              "unclassified": 0,
              "unknown": 0,
              "invalid": 0,
              "missing_using_defaults": 0
            },
            "unclassified_keys": [],
            "unknown_keys": [],
            "invalid_values": [],
            "missing_using_defaults": []
          },
          "output_hash": "3782ec2317c0c8ee7598634310a2804d8aae4735f557498f9d3b8fae7c45e1e5",
          "completed_at": "2026-07-15T15:19:00Z"
        },
        {
          "id": "services",
          "action": "services.audit",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-15T15:19:00Z",
          "output": {
            "status": "ok",
            "summary": {
              "critical": 0,
              "high": 0,
              "medium": 0,
              "low": 0
            },
            "findings": []
          },
          "output_hash": "13dcc58bd528f3efa3e6e0fa0853a6eedc376f1f3685fbd4869cbb2b60382ee3",
          "completed_at": "2026-07-15T15:19:00Z"
        },
        {
          "id": "state",
          "action": "state.consistency",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-15T15:19:00Z",
          "output": {
            "status": "ok",
            "repo_root": "D:\\Projects\\prd-plugin",
            "summary": {
              "errors": 0,
              "warnings": 0,
              "infos": 0
            },
            "findings": []
          },
          "output_hash": "5a1c6e5246defb1b6b6b90ff734db95bece2886b408ab112ed9b8e67222d5568",
          "completed_at": "2026-07-15T15:19:01Z"
        },
        {
          "id": "status",
          "action": "state.query",
          "status": "completed",
          "resolved_input_hash": "a15231a2142a2a9a85355a8b9cbbccffe01a9c9c2c2fd8c2bc2987cdc481564a",
          "started_at": "2026-07-15T15:19:01Z",
          "output": {
            "repo_root": "D:\\Projects\\prd-plugin",
            "autonomy_level": "autonomous",
            "requests_by_status": {
              "deferred": 1,
              "implemented": 80,
              "proposed": 1,
              "rejected": 1
            },
            "active_tracking": [],
            "tracking_branches": [],
            "tracking_branch_counts": {},
            "tracking_branch_errors": [],
            "open_health": [],
            "stale_count": 0,
            "skill_usage": {
              "project-decision-policy": 1,
              "project-request-intake": 1,
              "project-test-driven-implementation": 1,
              "project-verification-before-completion": 1,
              "project-llm-wiki": 1
            },
            "wiki_backfill_pending": false,
            "version_update": null
          },
          "output_hash": "8ba9f7d3cc6705af37de9e3324d1258e21ccacb5ab0b2d7b389ca08885e11187",
          "completed_at": "2026-07-15T15:19:01Z"
        },
        {
          "id": "substrate",
          "action": "substrate.preflight",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-15T15:19:01Z",
          "output": {
            "status": "disabled",
            "services": {
              "status": "ok",
              "summary": {
                "critical": 0,
                "high": 0,
                "medium": 0,
                "low": 0
              },
              "findings": []
            },
            "policy": {
              "configured": {
                "enabled": false,
                "mode": "off",
                "capabilities": [
                  "records",
                  "graph",
                  "events"
                ],
                "contract_version": 2,
                "require_source_refs": true,
                "endpoint": "http://127.0.0.1:47124",
                "manual_url": "http://127.0.0.1:47124/utcp.json",
                "knowledge_browse_url": "http://127.0.0.1:5276",
                "auth_env": "AI_COLLAB_API_KEY",
                "timeout_seconds": 5,
                "max_result_bytes": 1048576,
                "cache_ttl_seconds": 60,
                "fallback": "local",
                "automation": {
                  "discovery_on_session_start": true,
                  "knowledge_recall": true,
                  "memory_recall": true,
                  "context_enrichment": true,
                  "notices_on_session_start": false,
                  "goals_sync": false,
                  "telemetry_on_maintenance": false,
                  "reporting_dispatch": true,
                  "judgment_dispatch": true,
                  "verification_execution": true
                }
              },
              "active": false,
              "effective_mode": "off",
              "effective_capabilities": []
            }
          },
          "output_hash": "a6df426290b4549a59eecaa0519ead9bcc50b7fcb25bd2185ff6047960f19ccb",
          "completed_at": "2026-07-15T15:19:02Z"
        },
        {
          "id": "notices",
          "action": "substrate.notices",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-15T15:19:02Z",
          "output": {
            "status": "disabled"
          },
          "output_hash": "38b904a1cf83df048360fb2480571b749fd98d57e11f1afdffb5a74a78166fea",
          "completed_at": "2026-07-15T15:19:02Z"
        },
        {
          "id": "goals",
          "action": "substrate.goals",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-15T15:19:02Z",
          "output": {
            "status": "disabled",
            "created": 0,
            "observed": 0,
            "results": []
          },
          "output_hash": "cdfd4de44a28140e686159f34f7b47975954c67e1d1efcef666e985acb136ed8",
          "completed_at": "2026-07-15T15:19:02Z"
        }
      ],
      "completed_at": "2026-07-15T15:19:02Z"
    },
    {
      "id": "WFR-077",
      "schema_version": "1.0",
      "workflow_id": "session.stop",
      "workflow_version": 1,
      "definition_hash": "0cef7bb3e28321be8f85375c154955a69310ce297e47de3f3b8dd48f77a2f07d",
      "plan_hash": "a5e1d77ac734217487fc418e29c7163f4e81178e25d171e70cd4c999d527d3e8",
      "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
      "inputs": {},
      "idempotency_key": "hook:Stop:019f665c-1474-7760-95a2-a9c3dcc321e1",
      "status": "completed",
      "attempt": 1,
      "created_at": "2026-07-15T15:19:07Z",
      "updated_at": "2026-07-15T15:19:08Z",
      "receipts": [
        {
          "step_id": "state",
          "action": "state.consistency",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "5a1c6e5246defb1b6b6b90ff734db95bece2886b408ab112ed9b8e67222d5568",
          "completed_at": "2026-07-15T15:19:08Z"
        },
        {
          "step_id": "goals",
          "action": "substrate.goals",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "cdfd4de44a28140e686159f34f7b47975954c67e1d1efcef666e985acb136ed8",
          "completed_at": "2026-07-15T15:19:08Z"
        },
        {
          "step_id": "staleness",
          "action": "staleness.audit",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "1e81cb0ffd0a4d04626920a203b38d2d23a264cd43e807a85d375d69cae8a658",
          "completed_at": "2026-07-15T15:19:08Z"
        },
        {
          "step_id": "reflections",
          "action": "reflection.list",
          "input_hash": "0172e841ab4c13b3a4061f073f9d68a716ec87a8a5d52fde41823385e0582573",
          "output_hash": "c1b6b635c0bab21120657277f14ef6f839909875f307a3745fa48aee2bd6e449",
          "completed_at": "2026-07-15T15:19:08Z"
        },
        {
          "step_id": "bundle",
          "action": "reporting.bundle",
          "input_hash": "aed8ebb688dc3c085dd978d7c4120572173c3cb87e75919e4a937dcca6ef9457",
          "output_hash": "6413b750e5adf462056ec1108a5d692cc446676e520bee65af98f64bc3e9bd9b",
          "completed_at": "2026-07-15T15:19:08Z"
        },
        {
          "step_id": "delegated",
          "action": "reporting.delegate",
          "input_hash": "669197e524ce450fa066ad7ef7d9da00168b780083ca6a5d7094bca3097e8568",
          "output_hash": "e6085059f197def80ae95add1f328418107bea5436c9bd002530043646a3a95c",
          "completed_at": "2026-07-15T15:19:08Z"
        }
      ],
      "steps": [
        {
          "id": "state",
          "action": "state.consistency",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-15T15:19:07Z",
          "output": {
            "status": "ok",
            "repo_root": "D:\\Projects\\prd-plugin",
            "summary": {
              "errors": 0,
              "warnings": 0,
              "infos": 0
            },
            "findings": []
          },
          "output_hash": "5a1c6e5246defb1b6b6b90ff734db95bece2886b408ab112ed9b8e67222d5568",
          "completed_at": "2026-07-15T15:19:08Z"
        },
        {
          "id": "goals",
          "action": "substrate.goals",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-15T15:19:08Z",
          "output": {
            "status": "disabled",
            "created": 0,
            "observed": 0,
            "results": []
          },
          "output_hash": "cdfd4de44a28140e686159f34f7b47975954c67e1d1efcef666e985acb136ed8",
          "completed_at": "2026-07-15T15:19:08Z"
        },
        {
          "id": "staleness",
          "action": "staleness.audit",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-15T15:19:08Z",
          "output": {
            "status": "ok",
            "repo_root": "D:\\Projects\\prd-plugin",
            "counts": {
              "stale": 0
            },
            "stale": []
          },
          "output_hash": "1e81cb0ffd0a4d04626920a203b38d2d23a264cd43e807a85d375d69cae8a658",
          "completed_at": "2026-07-15T15:19:08Z"
        },
        {
          "id": "reflections",
          "action": "reflection.list",
          "status": "completed",
          "resolved_input_hash": "0172e841ab4c13b3a4061f073f9d68a716ec87a8a5d52fde41823385e0582573",
          "started_at": "2026-07-15T15:19:08Z",
          "output": {
            "enabled": false,
            "on_stop": true,
            "max_questions_per_stop": 5,
            "categories": [
              {
                "id": "behaviour_quality",
                "name": "Behaviour quality",
                "enabled": true,
                "question_count": 3
              },
              {
                "id": "harness_friction",
                "name": "Harness friction",
                "enabled": true,
                "question_count": 2
              }
            ],
            "questions": [
              {
                "id": "RFQ-001",
                "text": "Based on the work you just carried out, would you classify your behaviour as good? Answer yes or no and cite observable evidence.",
                "enabled": true,
                "category_id": "behaviour_quality",
                "category_name": "Behaviour quality",
                "effective_enabled": false
              },
              {
                "id": "RFQ-002",
                "text": "If you answered no, what could you do differently to correct your behaviour?",
                "enabled": true,
                "category_id": "behaviour_quality",
                "category_name": "Behaviour quality",
                "effective_enabled": false
              },
              {
                "id": "RFQ-003",
                "text": "Would another attempt using the identified good behaviours materially improve the outcome? Answer yes or no and state the next corrective action if yes.",
                "enabled": true,
                "category_id": "behaviour_quality",
                "category_name": "Behaviour quality",
                "effective_enabled": false
              },
              {
                "id": "RFQ-004",
                "text": "What harness friction points made this work more difficult?",
                "enabled": true,
                "category_id": "harness_friction",
                "category_name": "Harness friction",
                "effective_enabled": false
              },
              {
                "id": "RFQ-005",
                "text": "What up to three changes would most improve friction in the harness?",
                "enabled": true,
                "category_id": "harness_friction",
                "category_name": "Harness friction",
                "effective_enabled": false
              }
            ]
          },
          "output_hash": "c1b6b635c0bab21120657277f14ef6f839909875f307a3745fa48aee2bd6e449",
          "completed_at": "2026-07-15T15:19:08Z"
        },
        {
          "id": "bundle",
          "action": "reporting.bundle",
          "status": "completed",
          "resolved_input_hash": "aed8ebb688dc3c085dd978d7c4120572173c3cb87e75919e4a937dcca6ef9457",
          "started_at": "2026-07-15T15:19:08Z",
          "output": {
            "contract_version": 1,
            "task": "session_summary",
            "repo": "prd-plugin",
            "policy": {
              "enabled": false,
              "executor": "ai-collab",
              "contract_version": 1,
              "profile": "fast-capable",
              "tasks": [
                "report_summary",
                "session_summary",
                "wiki_synthesis",
                "triage_draft"
              ],
              "fallback": "main",
              "require_source_refs": true,
              "max_input_tokens": 12000,
              "max_output_tokens": 1500,
              "timeout_seconds": 30
            },
            "facts": {
              "requests_by_status": {
                "deferred": 1,
                "implemented": 80,
                "proposed": 1,
                "rejected": 1
              },
              "active_requests": [
                {
                  "id": "REQ-072",
                  "status": "proposed",
                  "severity": "low",
                  "summary": "opencode run-until-done: session.idle is a non-blocking notification, so the stop guard can't force continuation on opencode (currently degrades to a printed reminder, 0.5.95). Investigate whether opencode exposes any vetoable/continuation mechanism (a different event, a permission hook, or a 'continue' API) to enforce run-until-done, or accept the reminder as the permanent ceiling. Low priority — user rarely uses opencode."
                }
              ],
              "active_tracking": [],
              "open_health": [],
              "evidence_count": 104,
              "decision_count": 9
            },
            "findings": [],
            "source_refs": [
              ".prd_plugin/config.json",
              ".prd_plugin/state/decisions.json",
              ".prd_plugin/state/evidence.json",
              ".prd_plugin/state/health.json",
              ".prd_plugin/state/requests.json",
              ".prd_plugin/state/tracking.json",
              "REQ-072"
            ],
            "constraints": {
              "max_input_tokens": 12000,
              "max_output_tokens": 1500,
              "timeout_seconds": 30,
              "require_source_refs": true,
              "no_project_state_writes": true,
              "no_secrets_or_local_session_content": true
            }
          },
          "output_hash": "6413b750e5adf462056ec1108a5d692cc446676e520bee65af98f64bc3e9bd9b",
          "completed_at": "2026-07-15T15:19:08Z"
        },
        {
          "id": "delegated",
          "action": "reporting.delegate",
          "status": "completed",
          "resolved_input_hash": "669197e524ce450fa066ad7ef7d9da00168b780083ca6a5d7094bca3097e8568",
          "started_at": "2026-07-15T15:19:08Z",
          "output": {
            "status": "fallback",
            "action": "main",
            "reason": "disabled"
          },
          "output_hash": "e6085059f197def80ae95add1f328418107bea5436c9bd002530043646a3a95c",
          "completed_at": "2026-07-15T15:19:08Z"
        }
      ],
      "completed_at": "2026-07-15T15:19:08Z"
    },
    {
      "id": "WFR-078",
      "schema_version": "1.0",
      "workflow_id": "session.start",
      "workflow_version": 1,
      "definition_hash": "d0f98da02571e6dd27fec4aed92d3c82af9db75f8b90b997bf665635c7b7f6ca",
      "plan_hash": "b5072615ca3b7e9a3bd85d50d1f069d99ef2a9816b32c03a370745ed7a205536",
      "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
      "inputs": {},
      "idempotency_key": "hook:SessionStart:019f665f-aa87-7840-a58b-be425331d624",
      "status": "completed",
      "attempt": 1,
      "created_at": "2026-07-15T15:22:58Z",
      "updated_at": "2026-07-15T15:22:59Z",
      "receipts": [
        {
          "step_id": "config",
          "action": "config.audit",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "3782ec2317c0c8ee7598634310a2804d8aae4735f557498f9d3b8fae7c45e1e5",
          "completed_at": "2026-07-15T15:22:58Z"
        },
        {
          "step_id": "services",
          "action": "services.audit",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "13dcc58bd528f3efa3e6e0fa0853a6eedc376f1f3685fbd4869cbb2b60382ee3",
          "completed_at": "2026-07-15T15:22:58Z"
        },
        {
          "step_id": "state",
          "action": "state.consistency",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "5a1c6e5246defb1b6b6b90ff734db95bece2886b408ab112ed9b8e67222d5568",
          "completed_at": "2026-07-15T15:22:58Z"
        },
        {
          "step_id": "status",
          "action": "state.query",
          "input_hash": "a15231a2142a2a9a85355a8b9cbbccffe01a9c9c2c2fd8c2bc2987cdc481564a",
          "output_hash": "8ba9f7d3cc6705af37de9e3324d1258e21ccacb5ab0b2d7b389ca08885e11187",
          "completed_at": "2026-07-15T15:22:59Z"
        },
        {
          "step_id": "substrate",
          "action": "substrate.preflight",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "a6df426290b4549a59eecaa0519ead9bcc50b7fcb25bd2185ff6047960f19ccb",
          "completed_at": "2026-07-15T15:22:59Z"
        },
        {
          "step_id": "notices",
          "action": "substrate.notices",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "38b904a1cf83df048360fb2480571b749fd98d57e11f1afdffb5a74a78166fea",
          "completed_at": "2026-07-15T15:22:59Z"
        },
        {
          "step_id": "goals",
          "action": "substrate.goals",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "cdfd4de44a28140e686159f34f7b47975954c67e1d1efcef666e985acb136ed8",
          "completed_at": "2026-07-15T15:22:59Z"
        }
      ],
      "steps": [
        {
          "id": "config",
          "action": "config.audit",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-15T15:22:58Z",
          "output": {
            "status": "ok",
            "summary": {
              "settings": 195,
              "mutable": 186,
              "read_only_or_managed": 9,
              "unclassified": 0,
              "unknown": 0,
              "invalid": 0,
              "missing_using_defaults": 0
            },
            "unclassified_keys": [],
            "unknown_keys": [],
            "invalid_values": [],
            "missing_using_defaults": []
          },
          "output_hash": "3782ec2317c0c8ee7598634310a2804d8aae4735f557498f9d3b8fae7c45e1e5",
          "completed_at": "2026-07-15T15:22:58Z"
        },
        {
          "id": "services",
          "action": "services.audit",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-15T15:22:58Z",
          "output": {
            "status": "ok",
            "summary": {
              "critical": 0,
              "high": 0,
              "medium": 0,
              "low": 0
            },
            "findings": []
          },
          "output_hash": "13dcc58bd528f3efa3e6e0fa0853a6eedc376f1f3685fbd4869cbb2b60382ee3",
          "completed_at": "2026-07-15T15:22:58Z"
        },
        {
          "id": "state",
          "action": "state.consistency",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-15T15:22:58Z",
          "output": {
            "status": "ok",
            "repo_root": "D:\\Projects\\prd-plugin",
            "summary": {
              "errors": 0,
              "warnings": 0,
              "infos": 0
            },
            "findings": []
          },
          "output_hash": "5a1c6e5246defb1b6b6b90ff734db95bece2886b408ab112ed9b8e67222d5568",
          "completed_at": "2026-07-15T15:22:58Z"
        },
        {
          "id": "status",
          "action": "state.query",
          "status": "completed",
          "resolved_input_hash": "a15231a2142a2a9a85355a8b9cbbccffe01a9c9c2c2fd8c2bc2987cdc481564a",
          "started_at": "2026-07-15T15:22:58Z",
          "output": {
            "repo_root": "D:\\Projects\\prd-plugin",
            "autonomy_level": "autonomous",
            "requests_by_status": {
              "deferred": 1,
              "implemented": 80,
              "proposed": 1,
              "rejected": 1
            },
            "active_tracking": [],
            "tracking_branches": [],
            "tracking_branch_counts": {},
            "tracking_branch_errors": [],
            "open_health": [],
            "stale_count": 0,
            "skill_usage": {
              "project-decision-policy": 1,
              "project-request-intake": 1,
              "project-test-driven-implementation": 1,
              "project-verification-before-completion": 1,
              "project-llm-wiki": 1
            },
            "wiki_backfill_pending": false,
            "version_update": null
          },
          "output_hash": "8ba9f7d3cc6705af37de9e3324d1258e21ccacb5ab0b2d7b389ca08885e11187",
          "completed_at": "2026-07-15T15:22:59Z"
        },
        {
          "id": "substrate",
          "action": "substrate.preflight",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-15T15:22:59Z",
          "output": {
            "status": "disabled",
            "services": {
              "status": "ok",
              "summary": {
                "critical": 0,
                "high": 0,
                "medium": 0,
                "low": 0
              },
              "findings": []
            },
            "policy": {
              "configured": {
                "enabled": false,
                "mode": "off",
                "capabilities": [
                  "records",
                  "graph",
                  "events"
                ],
                "contract_version": 2,
                "require_source_refs": true,
                "endpoint": "http://127.0.0.1:47124",
                "manual_url": "http://127.0.0.1:47124/utcp.json",
                "knowledge_browse_url": "http://127.0.0.1:5276",
                "auth_env": "AI_COLLAB_API_KEY",
                "timeout_seconds": 5,
                "max_result_bytes": 1048576,
                "cache_ttl_seconds": 60,
                "fallback": "local",
                "automation": {
                  "discovery_on_session_start": true,
                  "knowledge_recall": true,
                  "memory_recall": true,
                  "context_enrichment": true,
                  "notices_on_session_start": false,
                  "goals_sync": false,
                  "telemetry_on_maintenance": false,
                  "reporting_dispatch": true,
                  "judgment_dispatch": true,
                  "verification_execution": true
                }
              },
              "active": false,
              "effective_mode": "off",
              "effective_capabilities": []
            }
          },
          "output_hash": "a6df426290b4549a59eecaa0519ead9bcc50b7fcb25bd2185ff6047960f19ccb",
          "completed_at": "2026-07-15T15:22:59Z"
        },
        {
          "id": "notices",
          "action": "substrate.notices",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-15T15:22:59Z",
          "output": {
            "status": "disabled"
          },
          "output_hash": "38b904a1cf83df048360fb2480571b749fd98d57e11f1afdffb5a74a78166fea",
          "completed_at": "2026-07-15T15:22:59Z"
        },
        {
          "id": "goals",
          "action": "substrate.goals",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-15T15:22:59Z",
          "output": {
            "status": "disabled",
            "created": 0,
            "observed": 0,
            "results": []
          },
          "output_hash": "cdfd4de44a28140e686159f34f7b47975954c67e1d1efcef666e985acb136ed8",
          "completed_at": "2026-07-15T15:22:59Z"
        }
      ],
      "completed_at": "2026-07-15T15:22:59Z"
    },
    {
      "id": "WFR-079",
      "schema_version": "1.0",
      "workflow_id": "session.start",
      "workflow_version": 1,
      "definition_hash": "d0f98da02571e6dd27fec4aed92d3c82af9db75f8b90b997bf665635c7b7f6ca",
      "plan_hash": "b5072615ca3b7e9a3bd85d50d1f069d99ef2a9816b32c03a370745ed7a205536",
      "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
      "inputs": {},
      "idempotency_key": "room-utcp-mcp-intake-20260715-session",
      "status": "completed",
      "attempt": 1,
      "created_at": "2026-07-15T15:26:05Z",
      "updated_at": "2026-07-15T15:26:08Z",
      "receipts": [
        {
          "step_id": "config",
          "action": "config.audit",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "3782ec2317c0c8ee7598634310a2804d8aae4735f557498f9d3b8fae7c45e1e5",
          "completed_at": "2026-07-15T15:26:05Z"
        },
        {
          "step_id": "services",
          "action": "services.audit",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "13dcc58bd528f3efa3e6e0fa0853a6eedc376f1f3685fbd4869cbb2b60382ee3",
          "completed_at": "2026-07-15T15:26:05Z"
        },
        {
          "step_id": "state",
          "action": "state.consistency",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "5a1c6e5246defb1b6b6b90ff734db95bece2886b408ab112ed9b8e67222d5568",
          "completed_at": "2026-07-15T15:26:07Z"
        },
        {
          "step_id": "status",
          "action": "state.query",
          "input_hash": "a15231a2142a2a9a85355a8b9cbbccffe01a9c9c2c2fd8c2bc2987cdc481564a",
          "output_hash": "8ba9f7d3cc6705af37de9e3324d1258e21ccacb5ab0b2d7b389ca08885e11187",
          "completed_at": "2026-07-15T15:26:07Z"
        },
        {
          "step_id": "substrate",
          "action": "substrate.preflight",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "a6df426290b4549a59eecaa0519ead9bcc50b7fcb25bd2185ff6047960f19ccb",
          "completed_at": "2026-07-15T15:26:07Z"
        },
        {
          "step_id": "notices",
          "action": "substrate.notices",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "38b904a1cf83df048360fb2480571b749fd98d57e11f1afdffb5a74a78166fea",
          "completed_at": "2026-07-15T15:26:07Z"
        },
        {
          "step_id": "goals",
          "action": "substrate.goals",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "cdfd4de44a28140e686159f34f7b47975954c67e1d1efcef666e985acb136ed8",
          "completed_at": "2026-07-15T15:26:08Z"
        }
      ],
      "steps": [
        {
          "id": "config",
          "action": "config.audit",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-15T15:26:05Z",
          "output": {
            "status": "ok",
            "summary": {
              "settings": 195,
              "mutable": 186,
              "read_only_or_managed": 9,
              "unclassified": 0,
              "unknown": 0,
              "invalid": 0,
              "missing_using_defaults": 0
            },
            "unclassified_keys": [],
            "unknown_keys": [],
            "invalid_values": [],
            "missing_using_defaults": []
          },
          "output_hash": "3782ec2317c0c8ee7598634310a2804d8aae4735f557498f9d3b8fae7c45e1e5",
          "completed_at": "2026-07-15T15:26:05Z"
        },
        {
          "id": "services",
          "action": "services.audit",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-15T15:26:05Z",
          "output": {
            "status": "ok",
            "summary": {
              "critical": 0,
              "high": 0,
              "medium": 0,
              "low": 0
            },
            "findings": []
          },
          "output_hash": "13dcc58bd528f3efa3e6e0fa0853a6eedc376f1f3685fbd4869cbb2b60382ee3",
          "completed_at": "2026-07-15T15:26:05Z"
        },
        {
          "id": "state",
          "action": "state.consistency",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-15T15:26:05Z",
          "output": {
            "status": "ok",
            "repo_root": "D:\\Projects\\prd-plugin",
            "summary": {
              "errors": 0,
              "warnings": 0,
              "infos": 0
            },
            "findings": []
          },
          "output_hash": "5a1c6e5246defb1b6b6b90ff734db95bece2886b408ab112ed9b8e67222d5568",
          "completed_at": "2026-07-15T15:26:07Z"
        },
        {
          "id": "status",
          "action": "state.query",
          "status": "completed",
          "resolved_input_hash": "a15231a2142a2a9a85355a8b9cbbccffe01a9c9c2c2fd8c2bc2987cdc481564a",
          "started_at": "2026-07-15T15:26:07Z",
          "output": {
            "repo_root": "D:\\Projects\\prd-plugin",
            "autonomy_level": "autonomous",
            "requests_by_status": {
              "deferred": 1,
              "implemented": 80,
              "proposed": 1,
              "rejected": 1
            },
            "active_tracking": [],
            "tracking_branches": [],
            "tracking_branch_counts": {},
            "tracking_branch_errors": [],
            "open_health": [],
            "stale_count": 0,
            "skill_usage": {
              "project-decision-policy": 1,
              "project-request-intake": 1,
              "project-test-driven-implementation": 1,
              "project-verification-before-completion": 1,
              "project-llm-wiki": 1
            },
            "wiki_backfill_pending": false,
            "version_update": null
          },
          "output_hash": "8ba9f7d3cc6705af37de9e3324d1258e21ccacb5ab0b2d7b389ca08885e11187",
          "completed_at": "2026-07-15T15:26:07Z"
        },
        {
          "id": "substrate",
          "action": "substrate.preflight",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-15T15:26:07Z",
          "output": {
            "status": "disabled",
            "services": {
              "status": "ok",
              "summary": {
                "critical": 0,
                "high": 0,
                "medium": 0,
                "low": 0
              },
              "findings": []
            },
            "policy": {
              "configured": {
                "enabled": false,
                "mode": "off",
                "capabilities": [
                  "records",
                  "graph",
                  "events"
                ],
                "contract_version": 2,
                "require_source_refs": true,
                "endpoint": "http://127.0.0.1:47124",
                "manual_url": "http://127.0.0.1:47124/utcp.json",
                "knowledge_browse_url": "http://127.0.0.1:5276",
                "auth_env": "AI_COLLAB_API_KEY",
                "timeout_seconds": 5,
                "max_result_bytes": 1048576,
                "cache_ttl_seconds": 60,
                "fallback": "local",
                "automation": {
                  "discovery_on_session_start": true,
                  "knowledge_recall": true,
                  "memory_recall": true,
                  "context_enrichment": true,
                  "notices_on_session_start": false,
                  "goals_sync": false,
                  "telemetry_on_maintenance": false,
                  "reporting_dispatch": true,
                  "judgment_dispatch": true,
                  "verification_execution": true
                }
              },
              "active": false,
              "effective_mode": "off",
              "effective_capabilities": []
            }
          },
          "output_hash": "a6df426290b4549a59eecaa0519ead9bcc50b7fcb25bd2185ff6047960f19ccb",
          "completed_at": "2026-07-15T15:26:07Z"
        },
        {
          "id": "notices",
          "action": "substrate.notices",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-15T15:26:07Z",
          "output": {
            "status": "disabled"
          },
          "output_hash": "38b904a1cf83df048360fb2480571b749fd98d57e11f1afdffb5a74a78166fea",
          "completed_at": "2026-07-15T15:26:07Z"
        },
        {
          "id": "goals",
          "action": "substrate.goals",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-15T15:26:08Z",
          "output": {
            "status": "disabled",
            "created": 0,
            "observed": 0,
            "results": []
          },
          "output_hash": "cdfd4de44a28140e686159f34f7b47975954c67e1d1efcef666e985acb136ed8",
          "completed_at": "2026-07-15T15:26:08Z"
        }
      ],
      "completed_at": "2026-07-15T15:26:08Z"
    },
    {
      "id": "WFR-080",
      "schema_version": "1.0",
      "workflow_id": "request.intake",
      "workflow_version": 1,
      "definition_hash": "b61272f54c5d4778a27afe601feaae39057f75fac2c289858b6caf5f3b2a4fbe",
      "plan_hash": "76a0e5c7c67966bf138b077ff1ae6dae6d1f6d87c567471fae8e609252e5d4ea",
      "input_hash": "836f46fca2f3844cf14643859010a7d5a51da0e62e5d42d64fd3c05a58355513",
      "inputs": {
        "summary": "Make PRD Plugin's complete official UTCP manual the canonical tool catalog and expose MCP through the official @utcp/mcp-bridge instead of maintaining a separate MCP catalog.",
        "request_type": "change",
        "severity": "high",
        "scope": "upstream",
        "rationale": "The current implementation defines 45 MCP tools independently, generates 12 UTCP tools, and checks in only 11, creating coverage and drift. This supersedes the older split recorded by REQ-082 and ARCH-DEC-019. Mutation guards remain enforced by handlers and explicit permission metadata.",
        "affected_areas": [
          "scripts/prd_tools.py",
          "utcp.json",
          "mcp/server.cjs",
          "tests/test_prd_tools.py",
          "tests/node/server.test.cjs",
          "templates and installer parity",
          "README/docs/wiki",
          "package metadata"
        ],
        "expected_behavior": "A single complete official UTCP manual is repository-owned and authoritative for every PRD Plugin tool, including mutation tools with permission metadata. MCP exposure is projected through the official bridge, with handler-level validation and parity tests preventing catalog drift."
      },
      "idempotency_key": "utcp-canonical-mcp-bridge-change-20260715",
      "status": "blocked",
      "attempt": 1,
      "created_at": "2026-07-15T15:28:37Z",
      "updated_at": "2026-07-15T15:28:38Z",
      "receipts": [],
      "steps": [
        {
          "id": "create",
          "action": "state.mutate",
          "status": "outcome_unknown",
          "resolved_input_hash": "30a7f7242f0e38f8c437ee1e23c512e0bd13b582a900731435fcc9ad505333b9",
          "started_at": "2026-07-15T15:28:37Z",
          "execution_token": "d84d60869ff439eb04a6bb94c26b17ebca971ae368af36deda36dcd55bb312cf"
        },
        {
          "id": "confirm",
          "action": "state.query",
          "status": "pending"
        }
      ],
      "error": {
        "type": "ActionError",
        "message": "D:\\Projects\\prd-plugin\\mcp\\server.cjs:2201\n    throw new ToolError(\n    ^\n\nError: prd_file_request: parallel worker sessions cannot mutate canonical state or allocate IDs. Record progress with prd_update_tracking_branch on the assigned DBR; the lead performs canonical writes and promotion.\n    at enforceWorkerWriteBoundary (D:\\Projects\\prd-plugin\\mcp\\server.cjs:2201:11)\n    at Object.callTool (D:\\Projects\\prd-plugin\\mcp\\server.cjs:2239:3)\n    at [eval]:1:44\n    at runScriptInThisContext (node:internal/vm:219:10)\n    at node:internal/process/execution:483:12\n    at [eval]-wrapper:6:24\n    at runScriptInContext (node:internal/process/execution:481:60)\n    at evalFunction (node:internal/process/execution:315:30)\n    at evalTypeScript (node:internal/process/execution:327:3)\n    at node:internal/main/eval_string:71:3\n\nNode.js v26.3.0"
      }
    },
    {
      "id": "WFR-081",
      "schema_version": "1.0",
      "workflow_id": "session.stop",
      "workflow_version": 1,
      "definition_hash": "0cef7bb3e28321be8f85375c154955a69310ce297e47de3f3b8dd48f77a2f07d",
      "plan_hash": "a5e1d77ac734217487fc418e29c7163f4e81178e25d171e70cd4c999d527d3e8",
      "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
      "inputs": {},
      "idempotency_key": "hook:Stop:019f665f-aa87-7840-a58b-be425331d624",
      "status": "completed",
      "attempt": 1,
      "created_at": "2026-07-15T15:30:29Z",
      "updated_at": "2026-07-15T15:30:31Z",
      "receipts": [
        {
          "step_id": "state",
          "action": "state.consistency",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "5a1c6e5246defb1b6b6b90ff734db95bece2886b408ab112ed9b8e67222d5568",
          "completed_at": "2026-07-15T15:30:30Z"
        },
        {
          "step_id": "goals",
          "action": "substrate.goals",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "cdfd4de44a28140e686159f34f7b47975954c67e1d1efcef666e985acb136ed8",
          "completed_at": "2026-07-15T15:30:30Z"
        },
        {
          "step_id": "staleness",
          "action": "staleness.audit",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "1e81cb0ffd0a4d04626920a203b38d2d23a264cd43e807a85d375d69cae8a658",
          "completed_at": "2026-07-15T15:30:30Z"
        },
        {
          "step_id": "reflections",
          "action": "reflection.list",
          "input_hash": "0172e841ab4c13b3a4061f073f9d68a716ec87a8a5d52fde41823385e0582573",
          "output_hash": "c1b6b635c0bab21120657277f14ef6f839909875f307a3745fa48aee2bd6e449",
          "completed_at": "2026-07-15T15:30:30Z"
        },
        {
          "step_id": "bundle",
          "action": "reporting.bundle",
          "input_hash": "aed8ebb688dc3c085dd978d7c4120572173c3cb87e75919e4a937dcca6ef9457",
          "output_hash": "6413b750e5adf462056ec1108a5d692cc446676e520bee65af98f64bc3e9bd9b",
          "completed_at": "2026-07-15T15:30:30Z"
        },
        {
          "step_id": "delegated",
          "action": "reporting.delegate",
          "input_hash": "669197e524ce450fa066ad7ef7d9da00168b780083ca6a5d7094bca3097e8568",
          "output_hash": "e6085059f197def80ae95add1f328418107bea5436c9bd002530043646a3a95c",
          "completed_at": "2026-07-15T15:30:31Z"
        }
      ],
      "steps": [
        {
          "id": "state",
          "action": "state.consistency",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-15T15:30:29Z",
          "output": {
            "status": "ok",
            "repo_root": "D:\\Projects\\prd-plugin",
            "summary": {
              "errors": 0,
              "warnings": 0,
              "infos": 0
            },
            "findings": []
          },
          "output_hash": "5a1c6e5246defb1b6b6b90ff734db95bece2886b408ab112ed9b8e67222d5568",
          "completed_at": "2026-07-15T15:30:30Z"
        },
        {
          "id": "goals",
          "action": "substrate.goals",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-15T15:30:30Z",
          "output": {
            "status": "disabled",
            "created": 0,
            "observed": 0,
            "results": []
          },
          "output_hash": "cdfd4de44a28140e686159f34f7b47975954c67e1d1efcef666e985acb136ed8",
          "completed_at": "2026-07-15T15:30:30Z"
        },
        {
          "id": "staleness",
          "action": "staleness.audit",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-15T15:30:30Z",
          "output": {
            "status": "ok",
            "repo_root": "D:\\Projects\\prd-plugin",
            "counts": {
              "stale": 0
            },
            "stale": []
          },
          "output_hash": "1e81cb0ffd0a4d04626920a203b38d2d23a264cd43e807a85d375d69cae8a658",
          "completed_at": "2026-07-15T15:30:30Z"
        },
        {
          "id": "reflections",
          "action": "reflection.list",
          "status": "completed",
          "resolved_input_hash": "0172e841ab4c13b3a4061f073f9d68a716ec87a8a5d52fde41823385e0582573",
          "started_at": "2026-07-15T15:30:30Z",
          "output": {
            "enabled": false,
            "on_stop": true,
            "max_questions_per_stop": 5,
            "categories": [
              {
                "id": "behaviour_quality",
                "name": "Behaviour quality",
                "enabled": true,
                "question_count": 3
              },
              {
                "id": "harness_friction",
                "name": "Harness friction",
                "enabled": true,
                "question_count": 2
              }
            ],
            "questions": [
              {
                "id": "RFQ-001",
                "text": "Based on the work you just carried out, would you classify your behaviour as good? Answer yes or no and cite observable evidence.",
                "enabled": true,
                "category_id": "behaviour_quality",
                "category_name": "Behaviour quality",
                "effective_enabled": false
              },
              {
                "id": "RFQ-002",
                "text": "If you answered no, what could you do differently to correct your behaviour?",
                "enabled": true,
                "category_id": "behaviour_quality",
                "category_name": "Behaviour quality",
                "effective_enabled": false
              },
              {
                "id": "RFQ-003",
                "text": "Would another attempt using the identified good behaviours materially improve the outcome? Answer yes or no and state the next corrective action if yes.",
                "enabled": true,
                "category_id": "behaviour_quality",
                "category_name": "Behaviour quality",
                "effective_enabled": false
              },
              {
                "id": "RFQ-004",
                "text": "What harness friction points made this work more difficult?",
                "enabled": true,
                "category_id": "harness_friction",
                "category_name": "Harness friction",
                "effective_enabled": false
              },
              {
                "id": "RFQ-005",
                "text": "What up to three changes would most improve friction in the harness?",
                "enabled": true,
                "category_id": "harness_friction",
                "category_name": "Harness friction",
                "effective_enabled": false
              }
            ]
          },
          "output_hash": "c1b6b635c0bab21120657277f14ef6f839909875f307a3745fa48aee2bd6e449",
          "completed_at": "2026-07-15T15:30:30Z"
        },
        {
          "id": "bundle",
          "action": "reporting.bundle",
          "status": "completed",
          "resolved_input_hash": "aed8ebb688dc3c085dd978d7c4120572173c3cb87e75919e4a937dcca6ef9457",
          "started_at": "2026-07-15T15:30:30Z",
          "output": {
            "contract_version": 1,
            "task": "session_summary",
            "repo": "prd-plugin",
            "policy": {
              "enabled": false,
              "executor": "ai-collab",
              "contract_version": 1,
              "profile": "fast-capable",
              "tasks": [
                "report_summary",
                "session_summary",
                "wiki_synthesis",
                "triage_draft"
              ],
              "fallback": "main",
              "require_source_refs": true,
              "max_input_tokens": 12000,
              "max_output_tokens": 1500,
              "timeout_seconds": 30
            },
            "facts": {
              "requests_by_status": {
                "deferred": 1,
                "implemented": 80,
                "proposed": 1,
                "rejected": 1
              },
              "active_requests": [
                {
                  "id": "REQ-072",
                  "status": "proposed",
                  "severity": "low",
                  "summary": "opencode run-until-done: session.idle is a non-blocking notification, so the stop guard can't force continuation on opencode (currently degrades to a printed reminder, 0.5.95). Investigate whether opencode exposes any vetoable/continuation mechanism (a different event, a permission hook, or a 'continue' API) to enforce run-until-done, or accept the reminder as the permanent ceiling. Low priority — user rarely uses opencode."
                }
              ],
              "active_tracking": [],
              "open_health": [],
              "evidence_count": 104,
              "decision_count": 9
            },
            "findings": [],
            "source_refs": [
              ".prd_plugin/config.json",
              ".prd_plugin/state/decisions.json",
              ".prd_plugin/state/evidence.json",
              ".prd_plugin/state/health.json",
              ".prd_plugin/state/requests.json",
              ".prd_plugin/state/tracking.json",
              "REQ-072"
            ],
            "constraints": {
              "max_input_tokens": 12000,
              "max_output_tokens": 1500,
              "timeout_seconds": 30,
              "require_source_refs": true,
              "no_project_state_writes": true,
              "no_secrets_or_local_session_content": true
            }
          },
          "output_hash": "6413b750e5adf462056ec1108a5d692cc446676e520bee65af98f64bc3e9bd9b",
          "completed_at": "2026-07-15T15:30:30Z"
        },
        {
          "id": "delegated",
          "action": "reporting.delegate",
          "status": "completed",
          "resolved_input_hash": "669197e524ce450fa066ad7ef7d9da00168b780083ca6a5d7094bca3097e8568",
          "started_at": "2026-07-15T15:30:31Z",
          "output": {
            "status": "fallback",
            "action": "main",
            "reason": "disabled"
          },
          "output_hash": "e6085059f197def80ae95add1f328418107bea5436c9bd002530043646a3a95c",
          "completed_at": "2026-07-15T15:30:31Z"
        }
      ],
      "completed_at": "2026-07-15T15:30:31Z"
    },
    {
      "id": "WFR-082",
      "schema_version": "1.0",
      "workflow_id": "session.start",
      "workflow_version": 1,
      "definition_hash": "d0f98da02571e6dd27fec4aed92d3c82af9db75f8b90b997bf665635c7b7f6ca",
      "plan_hash": "b5072615ca3b7e9a3bd85d50d1f069d99ef2a9816b32c03a370745ed7a205536",
      "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
      "inputs": {},
      "idempotency_key": "hook:SessionStart:019f6677-45dc-7811-988c-2d70bb4e6108",
      "status": "completed",
      "attempt": 1,
      "created_at": "2026-07-15T15:48:42Z",
      "updated_at": "2026-07-15T15:48:45Z",
      "receipts": [
        {
          "step_id": "config",
          "action": "config.audit",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "3782ec2317c0c8ee7598634310a2804d8aae4735f557498f9d3b8fae7c45e1e5",
          "completed_at": "2026-07-15T15:48:42Z"
        },
        {
          "step_id": "services",
          "action": "services.audit",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "13dcc58bd528f3efa3e6e0fa0853a6eedc376f1f3685fbd4869cbb2b60382ee3",
          "completed_at": "2026-07-15T15:48:42Z"
        },
        {
          "step_id": "state",
          "action": "state.consistency",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "5a1c6e5246defb1b6b6b90ff734db95bece2886b408ab112ed9b8e67222d5568",
          "completed_at": "2026-07-15T15:48:44Z"
        },
        {
          "step_id": "status",
          "action": "state.query",
          "input_hash": "a15231a2142a2a9a85355a8b9cbbccffe01a9c9c2c2fd8c2bc2987cdc481564a",
          "output_hash": "8ba9f7d3cc6705af37de9e3324d1258e21ccacb5ab0b2d7b389ca08885e11187",
          "completed_at": "2026-07-15T15:48:44Z"
        },
        {
          "step_id": "substrate",
          "action": "substrate.preflight",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "a6df426290b4549a59eecaa0519ead9bcc50b7fcb25bd2185ff6047960f19ccb",
          "completed_at": "2026-07-15T15:48:44Z"
        },
        {
          "step_id": "notices",
          "action": "substrate.notices",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "38b904a1cf83df048360fb2480571b749fd98d57e11f1afdffb5a74a78166fea",
          "completed_at": "2026-07-15T15:48:45Z"
        },
        {
          "step_id": "goals",
          "action": "substrate.goals",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "cdfd4de44a28140e686159f34f7b47975954c67e1d1efcef666e985acb136ed8",
          "completed_at": "2026-07-15T15:48:45Z"
        }
      ],
      "steps": [
        {
          "id": "config",
          "action": "config.audit",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-15T15:48:42Z",
          "output": {
            "status": "ok",
            "summary": {
              "settings": 195,
              "mutable": 186,
              "read_only_or_managed": 9,
              "unclassified": 0,
              "unknown": 0,
              "invalid": 0,
              "missing_using_defaults": 0
            },
            "unclassified_keys": [],
            "unknown_keys": [],
            "invalid_values": [],
            "missing_using_defaults": []
          },
          "output_hash": "3782ec2317c0c8ee7598634310a2804d8aae4735f557498f9d3b8fae7c45e1e5",
          "completed_at": "2026-07-15T15:48:42Z"
        },
        {
          "id": "services",
          "action": "services.audit",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-15T15:48:42Z",
          "output": {
            "status": "ok",
            "summary": {
              "critical": 0,
              "high": 0,
              "medium": 0,
              "low": 0
            },
            "findings": []
          },
          "output_hash": "13dcc58bd528f3efa3e6e0fa0853a6eedc376f1f3685fbd4869cbb2b60382ee3",
          "completed_at": "2026-07-15T15:48:42Z"
        },
        {
          "id": "state",
          "action": "state.consistency",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-15T15:48:42Z",
          "output": {
            "status": "ok",
            "repo_root": "D:\\Projects\\prd-plugin",
            "summary": {
              "errors": 0,
              "warnings": 0,
              "infos": 0
            },
            "findings": []
          },
          "output_hash": "5a1c6e5246defb1b6b6b90ff734db95bece2886b408ab112ed9b8e67222d5568",
          "completed_at": "2026-07-15T15:48:44Z"
        },
        {
          "id": "status",
          "action": "state.query",
          "status": "completed",
          "resolved_input_hash": "a15231a2142a2a9a85355a8b9cbbccffe01a9c9c2c2fd8c2bc2987cdc481564a",
          "started_at": "2026-07-15T15:48:44Z",
          "output": {
            "repo_root": "D:\\Projects\\prd-plugin",
            "autonomy_level": "autonomous",
            "requests_by_status": {
              "deferred": 1,
              "implemented": 80,
              "proposed": 1,
              "rejected": 1
            },
            "active_tracking": [],
            "tracking_branches": [],
            "tracking_branch_counts": {},
            "tracking_branch_errors": [],
            "open_health": [],
            "stale_count": 0,
            "skill_usage": {
              "project-decision-policy": 1,
              "project-request-intake": 1,
              "project-test-driven-implementation": 1,
              "project-verification-before-completion": 1,
              "project-llm-wiki": 1
            },
            "wiki_backfill_pending": false,
            "version_update": null
          },
          "output_hash": "8ba9f7d3cc6705af37de9e3324d1258e21ccacb5ab0b2d7b389ca08885e11187",
          "completed_at": "2026-07-15T15:48:44Z"
        },
        {
          "id": "substrate",
          "action": "substrate.preflight",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-15T15:48:44Z",
          "output": {
            "status": "disabled",
            "services": {
              "status": "ok",
              "summary": {
                "critical": 0,
                "high": 0,
                "medium": 0,
                "low": 0
              },
              "findings": []
            },
            "policy": {
              "configured": {
                "enabled": false,
                "mode": "off",
                "capabilities": [
                  "records",
                  "graph",
                  "events"
                ],
                "contract_version": 2,
                "require_source_refs": true,
                "endpoint": "http://127.0.0.1:47124",
                "manual_url": "http://127.0.0.1:47124/utcp.json",
                "knowledge_browse_url": "http://127.0.0.1:5276",
                "auth_env": "AI_COLLAB_API_KEY",
                "timeout_seconds": 5,
                "max_result_bytes": 1048576,
                "cache_ttl_seconds": 60,
                "fallback": "local",
                "automation": {
                  "discovery_on_session_start": true,
                  "knowledge_recall": true,
                  "memory_recall": true,
                  "context_enrichment": true,
                  "notices_on_session_start": false,
                  "goals_sync": false,
                  "telemetry_on_maintenance": false,
                  "reporting_dispatch": true,
                  "judgment_dispatch": true,
                  "verification_execution": true
                }
              },
              "active": false,
              "effective_mode": "off",
              "effective_capabilities": []
            }
          },
          "output_hash": "a6df426290b4549a59eecaa0519ead9bcc50b7fcb25bd2185ff6047960f19ccb",
          "completed_at": "2026-07-15T15:48:44Z"
        },
        {
          "id": "notices",
          "action": "substrate.notices",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-15T15:48:44Z",
          "output": {
            "status": "disabled"
          },
          "output_hash": "38b904a1cf83df048360fb2480571b749fd98d57e11f1afdffb5a74a78166fea",
          "completed_at": "2026-07-15T15:48:45Z"
        },
        {
          "id": "goals",
          "action": "substrate.goals",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-15T15:48:45Z",
          "output": {
            "status": "disabled",
            "created": 0,
            "observed": 0,
            "results": []
          },
          "output_hash": "cdfd4de44a28140e686159f34f7b47975954c67e1d1efcef666e985acb136ed8",
          "completed_at": "2026-07-15T15:48:45Z"
        }
      ],
      "completed_at": "2026-07-15T15:48:45Z"
    },
    {
      "id": "WFR-083",
      "schema_version": "1.0",
      "workflow_id": "session.stop",
      "workflow_version": 1,
      "definition_hash": "0cef7bb3e28321be8f85375c154955a69310ce297e47de3f3b8dd48f77a2f07d",
      "plan_hash": "a5e1d77ac734217487fc418e29c7163f4e81178e25d171e70cd4c999d527d3e8",
      "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
      "inputs": {},
      "idempotency_key": "hook:Stop:019f6677-45dc-7811-988c-2d70bb4e6108",
      "status": "completed",
      "attempt": 1,
      "created_at": "2026-07-15T15:48:47Z",
      "updated_at": "2026-07-15T15:48:48Z",
      "receipts": [
        {
          "step_id": "state",
          "action": "state.consistency",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "5a1c6e5246defb1b6b6b90ff734db95bece2886b408ab112ed9b8e67222d5568",
          "completed_at": "2026-07-15T15:48:48Z"
        },
        {
          "step_id": "goals",
          "action": "substrate.goals",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "cdfd4de44a28140e686159f34f7b47975954c67e1d1efcef666e985acb136ed8",
          "completed_at": "2026-07-15T15:48:48Z"
        },
        {
          "step_id": "staleness",
          "action": "staleness.audit",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "1e81cb0ffd0a4d04626920a203b38d2d23a264cd43e807a85d375d69cae8a658",
          "completed_at": "2026-07-15T15:48:48Z"
        },
        {
          "step_id": "reflections",
          "action": "reflection.list",
          "input_hash": "0172e841ab4c13b3a4061f073f9d68a716ec87a8a5d52fde41823385e0582573",
          "output_hash": "c1b6b635c0bab21120657277f14ef6f839909875f307a3745fa48aee2bd6e449",
          "completed_at": "2026-07-15T15:48:48Z"
        },
        {
          "step_id": "bundle",
          "action": "reporting.bundle",
          "input_hash": "aed8ebb688dc3c085dd978d7c4120572173c3cb87e75919e4a937dcca6ef9457",
          "output_hash": "6413b750e5adf462056ec1108a5d692cc446676e520bee65af98f64bc3e9bd9b",
          "completed_at": "2026-07-15T15:48:48Z"
        },
        {
          "step_id": "delegated",
          "action": "reporting.delegate",
          "input_hash": "669197e524ce450fa066ad7ef7d9da00168b780083ca6a5d7094bca3097e8568",
          "output_hash": "e6085059f197def80ae95add1f328418107bea5436c9bd002530043646a3a95c",
          "completed_at": "2026-07-15T15:48:48Z"
        }
      ],
      "steps": [
        {
          "id": "state",
          "action": "state.consistency",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-15T15:48:48Z",
          "output": {
            "status": "ok",
            "repo_root": "D:\\Projects\\prd-plugin",
            "summary": {
              "errors": 0,
              "warnings": 0,
              "infos": 0
            },
            "findings": []
          },
          "output_hash": "5a1c6e5246defb1b6b6b90ff734db95bece2886b408ab112ed9b8e67222d5568",
          "completed_at": "2026-07-15T15:48:48Z"
        },
        {
          "id": "goals",
          "action": "substrate.goals",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-15T15:48:48Z",
          "output": {
            "status": "disabled",
            "created": 0,
            "observed": 0,
            "results": []
          },
          "output_hash": "cdfd4de44a28140e686159f34f7b47975954c67e1d1efcef666e985acb136ed8",
          "completed_at": "2026-07-15T15:48:48Z"
        },
        {
          "id": "staleness",
          "action": "staleness.audit",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-15T15:48:48Z",
          "output": {
            "status": "ok",
            "repo_root": "D:\\Projects\\prd-plugin",
            "counts": {
              "stale": 0
            },
            "stale": []
          },
          "output_hash": "1e81cb0ffd0a4d04626920a203b38d2d23a264cd43e807a85d375d69cae8a658",
          "completed_at": "2026-07-15T15:48:48Z"
        },
        {
          "id": "reflections",
          "action": "reflection.list",
          "status": "completed",
          "resolved_input_hash": "0172e841ab4c13b3a4061f073f9d68a716ec87a8a5d52fde41823385e0582573",
          "started_at": "2026-07-15T15:48:48Z",
          "output": {
            "enabled": false,
            "on_stop": true,
            "max_questions_per_stop": 5,
            "categories": [
              {
                "id": "behaviour_quality",
                "name": "Behaviour quality",
                "enabled": true,
                "question_count": 3
              },
              {
                "id": "harness_friction",
                "name": "Harness friction",
                "enabled": true,
                "question_count": 2
              }
            ],
            "questions": [
              {
                "id": "RFQ-001",
                "text": "Based on the work you just carried out, would you classify your behaviour as good? Answer yes or no and cite observable evidence.",
                "enabled": true,
                "category_id": "behaviour_quality",
                "category_name": "Behaviour quality",
                "effective_enabled": false
              },
              {
                "id": "RFQ-002",
                "text": "If you answered no, what could you do differently to correct your behaviour?",
                "enabled": true,
                "category_id": "behaviour_quality",
                "category_name": "Behaviour quality",
                "effective_enabled": false
              },
              {
                "id": "RFQ-003",
                "text": "Would another attempt using the identified good behaviours materially improve the outcome? Answer yes or no and state the next corrective action if yes.",
                "enabled": true,
                "category_id": "behaviour_quality",
                "category_name": "Behaviour quality",
                "effective_enabled": false
              },
              {
                "id": "RFQ-004",
                "text": "What harness friction points made this work more difficult?",
                "enabled": true,
                "category_id": "harness_friction",
                "category_name": "Harness friction",
                "effective_enabled": false
              },
              {
                "id": "RFQ-005",
                "text": "What up to three changes would most improve friction in the harness?",
                "enabled": true,
                "category_id": "harness_friction",
                "category_name": "Harness friction",
                "effective_enabled": false
              }
            ]
          },
          "output_hash": "c1b6b635c0bab21120657277f14ef6f839909875f307a3745fa48aee2bd6e449",
          "completed_at": "2026-07-15T15:48:48Z"
        },
        {
          "id": "bundle",
          "action": "reporting.bundle",
          "status": "completed",
          "resolved_input_hash": "aed8ebb688dc3c085dd978d7c4120572173c3cb87e75919e4a937dcca6ef9457",
          "started_at": "2026-07-15T15:48:48Z",
          "output": {
            "contract_version": 1,
            "task": "session_summary",
            "repo": "prd-plugin",
            "policy": {
              "enabled": false,
              "executor": "ai-collab",
              "contract_version": 1,
              "profile": "fast-capable",
              "tasks": [
                "report_summary",
                "session_summary",
                "wiki_synthesis",
                "triage_draft"
              ],
              "fallback": "main",
              "require_source_refs": true,
              "max_input_tokens": 12000,
              "max_output_tokens": 1500,
              "timeout_seconds": 30
            },
            "facts": {
              "requests_by_status": {
                "deferred": 1,
                "implemented": 80,
                "proposed": 1,
                "rejected": 1
              },
              "active_requests": [
                {
                  "id": "REQ-072",
                  "status": "proposed",
                  "severity": "low",
                  "summary": "opencode run-until-done: session.idle is a non-blocking notification, so the stop guard can't force continuation on opencode (currently degrades to a printed reminder, 0.5.95). Investigate whether opencode exposes any vetoable/continuation mechanism (a different event, a permission hook, or a 'continue' API) to enforce run-until-done, or accept the reminder as the permanent ceiling. Low priority — user rarely uses opencode."
                }
              ],
              "active_tracking": [],
              "open_health": [],
              "evidence_count": 104,
              "decision_count": 9
            },
            "findings": [],
            "source_refs": [
              ".prd_plugin/config.json",
              ".prd_plugin/state/decisions.json",
              ".prd_plugin/state/evidence.json",
              ".prd_plugin/state/health.json",
              ".prd_plugin/state/requests.json",
              ".prd_plugin/state/tracking.json",
              "REQ-072"
            ],
            "constraints": {
              "max_input_tokens": 12000,
              "max_output_tokens": 1500,
              "timeout_seconds": 30,
              "require_source_refs": true,
              "no_project_state_writes": true,
              "no_secrets_or_local_session_content": true
            }
          },
          "output_hash": "6413b750e5adf462056ec1108a5d692cc446676e520bee65af98f64bc3e9bd9b",
          "completed_at": "2026-07-15T15:48:48Z"
        },
        {
          "id": "delegated",
          "action": "reporting.delegate",
          "status": "completed",
          "resolved_input_hash": "669197e524ce450fa066ad7ef7d9da00168b780083ca6a5d7094bca3097e8568",
          "started_at": "2026-07-15T15:48:48Z",
          "output": {
            "status": "fallback",
            "action": "main",
            "reason": "disabled"
          },
          "output_hash": "e6085059f197def80ae95add1f328418107bea5436c9bd002530043646a3a95c",
          "completed_at": "2026-07-15T15:48:48Z"
        }
      ],
      "completed_at": "2026-07-15T15:48:48Z"
    },
    {
      "id": "WFR-084",
      "schema_version": "1.0",
      "workflow_id": "session.start",
      "workflow_version": 1,
      "definition_hash": "d0f98da02571e6dd27fec4aed92d3c82af9db75f8b90b997bf665635c7b7f6ca",
      "plan_hash": "b5072615ca3b7e9a3bd85d50d1f069d99ef2a9816b32c03a370745ed7a205536",
      "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
      "inputs": {},
      "idempotency_key": "hook:SessionStart:019f667a-8445-71d1-a133-a32470db36aa",
      "status": "completed",
      "attempt": 1,
      "created_at": "2026-07-15T15:52:15Z",
      "updated_at": "2026-07-15T15:52:16Z",
      "receipts": [
        {
          "step_id": "config",
          "action": "config.audit",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "3782ec2317c0c8ee7598634310a2804d8aae4735f557498f9d3b8fae7c45e1e5",
          "completed_at": "2026-07-15T15:52:15Z"
        },
        {
          "step_id": "services",
          "action": "services.audit",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "13dcc58bd528f3efa3e6e0fa0853a6eedc376f1f3685fbd4869cbb2b60382ee3",
          "completed_at": "2026-07-15T15:52:15Z"
        },
        {
          "step_id": "state",
          "action": "state.consistency",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "5a1c6e5246defb1b6b6b90ff734db95bece2886b408ab112ed9b8e67222d5568",
          "completed_at": "2026-07-15T15:52:15Z"
        },
        {
          "step_id": "status",
          "action": "state.query",
          "input_hash": "a15231a2142a2a9a85355a8b9cbbccffe01a9c9c2c2fd8c2bc2987cdc481564a",
          "output_hash": "8ba9f7d3cc6705af37de9e3324d1258e21ccacb5ab0b2d7b389ca08885e11187",
          "completed_at": "2026-07-15T15:52:16Z"
        },
        {
          "step_id": "substrate",
          "action": "substrate.preflight",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "a6df426290b4549a59eecaa0519ead9bcc50b7fcb25bd2185ff6047960f19ccb",
          "completed_at": "2026-07-15T15:52:16Z"
        },
        {
          "step_id": "notices",
          "action": "substrate.notices",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "38b904a1cf83df048360fb2480571b749fd98d57e11f1afdffb5a74a78166fea",
          "completed_at": "2026-07-15T15:52:16Z"
        },
        {
          "step_id": "goals",
          "action": "substrate.goals",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "cdfd4de44a28140e686159f34f7b47975954c67e1d1efcef666e985acb136ed8",
          "completed_at": "2026-07-15T15:52:16Z"
        }
      ],
      "steps": [
        {
          "id": "config",
          "action": "config.audit",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-15T15:52:15Z",
          "output": {
            "status": "ok",
            "summary": {
              "settings": 195,
              "mutable": 186,
              "read_only_or_managed": 9,
              "unclassified": 0,
              "unknown": 0,
              "invalid": 0,
              "missing_using_defaults": 0
            },
            "unclassified_keys": [],
            "unknown_keys": [],
            "invalid_values": [],
            "missing_using_defaults": []
          },
          "output_hash": "3782ec2317c0c8ee7598634310a2804d8aae4735f557498f9d3b8fae7c45e1e5",
          "completed_at": "2026-07-15T15:52:15Z"
        },
        {
          "id": "services",
          "action": "services.audit",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-15T15:52:15Z",
          "output": {
            "status": "ok",
            "summary": {
              "critical": 0,
              "high": 0,
              "medium": 0,
              "low": 0
            },
            "findings": []
          },
          "output_hash": "13dcc58bd528f3efa3e6e0fa0853a6eedc376f1f3685fbd4869cbb2b60382ee3",
          "completed_at": "2026-07-15T15:52:15Z"
        },
        {
          "id": "state",
          "action": "state.consistency",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-15T15:52:15Z",
          "output": {
            "status": "ok",
            "repo_root": "D:\\Projects\\prd-plugin",
            "summary": {
              "errors": 0,
              "warnings": 0,
              "infos": 0
            },
            "findings": []
          },
          "output_hash": "5a1c6e5246defb1b6b6b90ff734db95bece2886b408ab112ed9b8e67222d5568",
          "completed_at": "2026-07-15T15:52:15Z"
        },
        {
          "id": "status",
          "action": "state.query",
          "status": "completed",
          "resolved_input_hash": "a15231a2142a2a9a85355a8b9cbbccffe01a9c9c2c2fd8c2bc2987cdc481564a",
          "started_at": "2026-07-15T15:52:15Z",
          "output": {
            "repo_root": "D:\\Projects\\prd-plugin",
            "autonomy_level": "autonomous",
            "requests_by_status": {
              "deferred": 1,
              "implemented": 80,
              "proposed": 1,
              "rejected": 1
            },
            "active_tracking": [],
            "tracking_branches": [],
            "tracking_branch_counts": {},
            "tracking_branch_errors": [],
            "open_health": [],
            "stale_count": 0,
            "skill_usage": {
              "project-decision-policy": 1,
              "project-request-intake": 1,
              "project-test-driven-implementation": 1,
              "project-verification-before-completion": 1,
              "project-llm-wiki": 1
            },
            "wiki_backfill_pending": false,
            "version_update": null
          },
          "output_hash": "8ba9f7d3cc6705af37de9e3324d1258e21ccacb5ab0b2d7b389ca08885e11187",
          "completed_at": "2026-07-15T15:52:16Z"
        },
        {
          "id": "substrate",
          "action": "substrate.preflight",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-15T15:52:16Z",
          "output": {
            "status": "disabled",
            "services": {
              "status": "ok",
              "summary": {
                "critical": 0,
                "high": 0,
                "medium": 0,
                "low": 0
              },
              "findings": []
            },
            "policy": {
              "configured": {
                "enabled": false,
                "mode": "off",
                "capabilities": [
                  "records",
                  "graph",
                  "events"
                ],
                "contract_version": 2,
                "require_source_refs": true,
                "endpoint": "http://127.0.0.1:47124",
                "manual_url": "http://127.0.0.1:47124/utcp.json",
                "knowledge_browse_url": "http://127.0.0.1:5276",
                "auth_env": "AI_COLLAB_API_KEY",
                "timeout_seconds": 5,
                "max_result_bytes": 1048576,
                "cache_ttl_seconds": 60,
                "fallback": "local",
                "automation": {
                  "discovery_on_session_start": true,
                  "knowledge_recall": true,
                  "memory_recall": true,
                  "context_enrichment": true,
                  "notices_on_session_start": false,
                  "goals_sync": false,
                  "telemetry_on_maintenance": false,
                  "reporting_dispatch": true,
                  "judgment_dispatch": true,
                  "verification_execution": true
                }
              },
              "active": false,
              "effective_mode": "off",
              "effective_capabilities": []
            }
          },
          "output_hash": "a6df426290b4549a59eecaa0519ead9bcc50b7fcb25bd2185ff6047960f19ccb",
          "completed_at": "2026-07-15T15:52:16Z"
        },
        {
          "id": "notices",
          "action": "substrate.notices",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-15T15:52:16Z",
          "output": {
            "status": "disabled"
          },
          "output_hash": "38b904a1cf83df048360fb2480571b749fd98d57e11f1afdffb5a74a78166fea",
          "completed_at": "2026-07-15T15:52:16Z"
        },
        {
          "id": "goals",
          "action": "substrate.goals",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-15T15:52:16Z",
          "output": {
            "status": "disabled",
            "created": 0,
            "observed": 0,
            "results": []
          },
          "output_hash": "cdfd4de44a28140e686159f34f7b47975954c67e1d1efcef666e985acb136ed8",
          "completed_at": "2026-07-15T15:52:16Z"
        }
      ],
      "completed_at": "2026-07-15T15:52:16Z"
    },
    {
      "id": "WFR-085",
      "schema_version": "1.0",
      "workflow_id": "session.stop",
      "workflow_version": 1,
      "definition_hash": "0cef7bb3e28321be8f85375c154955a69310ce297e47de3f3b8dd48f77a2f07d",
      "plan_hash": "a5e1d77ac734217487fc418e29c7163f4e81178e25d171e70cd4c999d527d3e8",
      "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
      "inputs": {},
      "idempotency_key": "hook:Stop:019f667a-8445-71d1-a133-a32470db36aa",
      "status": "completed",
      "attempt": 1,
      "created_at": "2026-07-15T15:52:19Z",
      "updated_at": "2026-07-15T15:52:20Z",
      "receipts": [
        {
          "step_id": "state",
          "action": "state.consistency",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "5a1c6e5246defb1b6b6b90ff734db95bece2886b408ab112ed9b8e67222d5568",
          "completed_at": "2026-07-15T15:52:19Z"
        },
        {
          "step_id": "goals",
          "action": "substrate.goals",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "cdfd4de44a28140e686159f34f7b47975954c67e1d1efcef666e985acb136ed8",
          "completed_at": "2026-07-15T15:52:20Z"
        },
        {
          "step_id": "staleness",
          "action": "staleness.audit",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "1e81cb0ffd0a4d04626920a203b38d2d23a264cd43e807a85d375d69cae8a658",
          "completed_at": "2026-07-15T15:52:20Z"
        },
        {
          "step_id": "reflections",
          "action": "reflection.list",
          "input_hash": "0172e841ab4c13b3a4061f073f9d68a716ec87a8a5d52fde41823385e0582573",
          "output_hash": "c1b6b635c0bab21120657277f14ef6f839909875f307a3745fa48aee2bd6e449",
          "completed_at": "2026-07-15T15:52:20Z"
        },
        {
          "step_id": "bundle",
          "action": "reporting.bundle",
          "input_hash": "aed8ebb688dc3c085dd978d7c4120572173c3cb87e75919e4a937dcca6ef9457",
          "output_hash": "6413b750e5adf462056ec1108a5d692cc446676e520bee65af98f64bc3e9bd9b",
          "completed_at": "2026-07-15T15:52:20Z"
        },
        {
          "step_id": "delegated",
          "action": "reporting.delegate",
          "input_hash": "669197e524ce450fa066ad7ef7d9da00168b780083ca6a5d7094bca3097e8568",
          "output_hash": "e6085059f197def80ae95add1f328418107bea5436c9bd002530043646a3a95c",
          "completed_at": "2026-07-15T15:52:20Z"
        }
      ],
      "steps": [
        {
          "id": "state",
          "action": "state.consistency",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-15T15:52:19Z",
          "output": {
            "status": "ok",
            "repo_root": "D:\\Projects\\prd-plugin",
            "summary": {
              "errors": 0,
              "warnings": 0,
              "infos": 0
            },
            "findings": []
          },
          "output_hash": "5a1c6e5246defb1b6b6b90ff734db95bece2886b408ab112ed9b8e67222d5568",
          "completed_at": "2026-07-15T15:52:19Z"
        },
        {
          "id": "goals",
          "action": "substrate.goals",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-15T15:52:19Z",
          "output": {
            "status": "disabled",
            "created": 0,
            "observed": 0,
            "results": []
          },
          "output_hash": "cdfd4de44a28140e686159f34f7b47975954c67e1d1efcef666e985acb136ed8",
          "completed_at": "2026-07-15T15:52:20Z"
        },
        {
          "id": "staleness",
          "action": "staleness.audit",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-15T15:52:20Z",
          "output": {
            "status": "ok",
            "repo_root": "D:\\Projects\\prd-plugin",
            "counts": {
              "stale": 0
            },
            "stale": []
          },
          "output_hash": "1e81cb0ffd0a4d04626920a203b38d2d23a264cd43e807a85d375d69cae8a658",
          "completed_at": "2026-07-15T15:52:20Z"
        },
        {
          "id": "reflections",
          "action": "reflection.list",
          "status": "completed",
          "resolved_input_hash": "0172e841ab4c13b3a4061f073f9d68a716ec87a8a5d52fde41823385e0582573",
          "started_at": "2026-07-15T15:52:20Z",
          "output": {
            "enabled": false,
            "on_stop": true,
            "max_questions_per_stop": 5,
            "categories": [
              {
                "id": "behaviour_quality",
                "name": "Behaviour quality",
                "enabled": true,
                "question_count": 3
              },
              {
                "id": "harness_friction",
                "name": "Harness friction",
                "enabled": true,
                "question_count": 2
              }
            ],
            "questions": [
              {
                "id": "RFQ-001",
                "text": "Based on the work you just carried out, would you classify your behaviour as good? Answer yes or no and cite observable evidence.",
                "enabled": true,
                "category_id": "behaviour_quality",
                "category_name": "Behaviour quality",
                "effective_enabled": false
              },
              {
                "id": "RFQ-002",
                "text": "If you answered no, what could you do differently to correct your behaviour?",
                "enabled": true,
                "category_id": "behaviour_quality",
                "category_name": "Behaviour quality",
                "effective_enabled": false
              },
              {
                "id": "RFQ-003",
                "text": "Would another attempt using the identified good behaviours materially improve the outcome? Answer yes or no and state the next corrective action if yes.",
                "enabled": true,
                "category_id": "behaviour_quality",
                "category_name": "Behaviour quality",
                "effective_enabled": false
              },
              {
                "id": "RFQ-004",
                "text": "What harness friction points made this work more difficult?",
                "enabled": true,
                "category_id": "harness_friction",
                "category_name": "Harness friction",
                "effective_enabled": false
              },
              {
                "id": "RFQ-005",
                "text": "What up to three changes would most improve friction in the harness?",
                "enabled": true,
                "category_id": "harness_friction",
                "category_name": "Harness friction",
                "effective_enabled": false
              }
            ]
          },
          "output_hash": "c1b6b635c0bab21120657277f14ef6f839909875f307a3745fa48aee2bd6e449",
          "completed_at": "2026-07-15T15:52:20Z"
        },
        {
          "id": "bundle",
          "action": "reporting.bundle",
          "status": "completed",
          "resolved_input_hash": "aed8ebb688dc3c085dd978d7c4120572173c3cb87e75919e4a937dcca6ef9457",
          "started_at": "2026-07-15T15:52:20Z",
          "output": {
            "contract_version": 1,
            "task": "session_summary",
            "repo": "prd-plugin",
            "policy": {
              "enabled": false,
              "executor": "ai-collab",
              "contract_version": 1,
              "profile": "fast-capable",
              "tasks": [
                "report_summary",
                "session_summary",
                "wiki_synthesis",
                "triage_draft"
              ],
              "fallback": "main",
              "require_source_refs": true,
              "max_input_tokens": 12000,
              "max_output_tokens": 1500,
              "timeout_seconds": 30
            },
            "facts": {
              "requests_by_status": {
                "deferred": 1,
                "implemented": 80,
                "proposed": 1,
                "rejected": 1
              },
              "active_requests": [
                {
                  "id": "REQ-072",
                  "status": "proposed",
                  "severity": "low",
                  "summary": "opencode run-until-done: session.idle is a non-blocking notification, so the stop guard can't force continuation on opencode (currently degrades to a printed reminder, 0.5.95). Investigate whether opencode exposes any vetoable/continuation mechanism (a different event, a permission hook, or a 'continue' API) to enforce run-until-done, or accept the reminder as the permanent ceiling. Low priority — user rarely uses opencode."
                }
              ],
              "active_tracking": [],
              "open_health": [],
              "evidence_count": 104,
              "decision_count": 9
            },
            "findings": [],
            "source_refs": [
              ".prd_plugin/config.json",
              ".prd_plugin/state/decisions.json",
              ".prd_plugin/state/evidence.json",
              ".prd_plugin/state/health.json",
              ".prd_plugin/state/requests.json",
              ".prd_plugin/state/tracking.json",
              "REQ-072"
            ],
            "constraints": {
              "max_input_tokens": 12000,
              "max_output_tokens": 1500,
              "timeout_seconds": 30,
              "require_source_refs": true,
              "no_project_state_writes": true,
              "no_secrets_or_local_session_content": true
            }
          },
          "output_hash": "6413b750e5adf462056ec1108a5d692cc446676e520bee65af98f64bc3e9bd9b",
          "completed_at": "2026-07-15T15:52:20Z"
        },
        {
          "id": "delegated",
          "action": "reporting.delegate",
          "status": "completed",
          "resolved_input_hash": "669197e524ce450fa066ad7ef7d9da00168b780083ca6a5d7094bca3097e8568",
          "started_at": "2026-07-15T15:52:20Z",
          "output": {
            "status": "fallback",
            "action": "main",
            "reason": "disabled"
          },
          "output_hash": "e6085059f197def80ae95add1f328418107bea5436c9bd002530043646a3a95c",
          "completed_at": "2026-07-15T15:52:20Z"
        }
      ],
      "completed_at": "2026-07-15T15:52:20Z"
    },
    {
      "id": "WFR-086",
      "schema_version": "1.0",
      "workflow_id": "session.start",
      "workflow_version": 1,
      "definition_hash": "d0f98da02571e6dd27fec4aed92d3c82af9db75f8b90b997bf665635c7b7f6ca",
      "plan_hash": "b5072615ca3b7e9a3bd85d50d1f069d99ef2a9816b32c03a370745ed7a205536",
      "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
      "inputs": {},
      "idempotency_key": "hook:SessionStart:019f667d-e4da-7581-b942-31bc011c8168",
      "status": "completed",
      "attempt": 1,
      "created_at": "2026-07-15T15:55:57Z",
      "updated_at": "2026-07-15T15:55:58Z",
      "receipts": [
        {
          "step_id": "config",
          "action": "config.audit",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "3782ec2317c0c8ee7598634310a2804d8aae4735f557498f9d3b8fae7c45e1e5",
          "completed_at": "2026-07-15T15:55:57Z"
        },
        {
          "step_id": "services",
          "action": "services.audit",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "13dcc58bd528f3efa3e6e0fa0853a6eedc376f1f3685fbd4869cbb2b60382ee3",
          "completed_at": "2026-07-15T15:55:57Z"
        },
        {
          "step_id": "state",
          "action": "state.consistency",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "5a1c6e5246defb1b6b6b90ff734db95bece2886b408ab112ed9b8e67222d5568",
          "completed_at": "2026-07-15T15:55:57Z"
        },
        {
          "step_id": "status",
          "action": "state.query",
          "input_hash": "a15231a2142a2a9a85355a8b9cbbccffe01a9c9c2c2fd8c2bc2987cdc481564a",
          "output_hash": "8ba9f7d3cc6705af37de9e3324d1258e21ccacb5ab0b2d7b389ca08885e11187",
          "completed_at": "2026-07-15T15:55:58Z"
        },
        {
          "step_id": "substrate",
          "action": "substrate.preflight",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "a6df426290b4549a59eecaa0519ead9bcc50b7fcb25bd2185ff6047960f19ccb",
          "completed_at": "2026-07-15T15:55:58Z"
        },
        {
          "step_id": "notices",
          "action": "substrate.notices",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "38b904a1cf83df048360fb2480571b749fd98d57e11f1afdffb5a74a78166fea",
          "completed_at": "2026-07-15T15:55:58Z"
        },
        {
          "step_id": "goals",
          "action": "substrate.goals",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "cdfd4de44a28140e686159f34f7b47975954c67e1d1efcef666e985acb136ed8",
          "completed_at": "2026-07-15T15:55:58Z"
        }
      ],
      "steps": [
        {
          "id": "config",
          "action": "config.audit",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-15T15:55:57Z",
          "output": {
            "status": "ok",
            "summary": {
              "settings": 195,
              "mutable": 186,
              "read_only_or_managed": 9,
              "unclassified": 0,
              "unknown": 0,
              "invalid": 0,
              "missing_using_defaults": 0
            },
            "unclassified_keys": [],
            "unknown_keys": [],
            "invalid_values": [],
            "missing_using_defaults": []
          },
          "output_hash": "3782ec2317c0c8ee7598634310a2804d8aae4735f557498f9d3b8fae7c45e1e5",
          "completed_at": "2026-07-15T15:55:57Z"
        },
        {
          "id": "services",
          "action": "services.audit",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-15T15:55:57Z",
          "output": {
            "status": "ok",
            "summary": {
              "critical": 0,
              "high": 0,
              "medium": 0,
              "low": 0
            },
            "findings": []
          },
          "output_hash": "13dcc58bd528f3efa3e6e0fa0853a6eedc376f1f3685fbd4869cbb2b60382ee3",
          "completed_at": "2026-07-15T15:55:57Z"
        },
        {
          "id": "state",
          "action": "state.consistency",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-15T15:55:57Z",
          "output": {
            "status": "ok",
            "repo_root": "D:\\Projects\\prd-plugin",
            "summary": {
              "errors": 0,
              "warnings": 0,
              "infos": 0
            },
            "findings": []
          },
          "output_hash": "5a1c6e5246defb1b6b6b90ff734db95bece2886b408ab112ed9b8e67222d5568",
          "completed_at": "2026-07-15T15:55:57Z"
        },
        {
          "id": "status",
          "action": "state.query",
          "status": "completed",
          "resolved_input_hash": "a15231a2142a2a9a85355a8b9cbbccffe01a9c9c2c2fd8c2bc2987cdc481564a",
          "started_at": "2026-07-15T15:55:57Z",
          "output": {
            "repo_root": "D:\\Projects\\prd-plugin",
            "autonomy_level": "autonomous",
            "requests_by_status": {
              "deferred": 1,
              "implemented": 80,
              "proposed": 1,
              "rejected": 1
            },
            "active_tracking": [],
            "tracking_branches": [],
            "tracking_branch_counts": {},
            "tracking_branch_errors": [],
            "open_health": [],
            "stale_count": 0,
            "skill_usage": {
              "project-decision-policy": 1,
              "project-request-intake": 1,
              "project-test-driven-implementation": 1,
              "project-verification-before-completion": 1,
              "project-llm-wiki": 1
            },
            "wiki_backfill_pending": false,
            "version_update": null
          },
          "output_hash": "8ba9f7d3cc6705af37de9e3324d1258e21ccacb5ab0b2d7b389ca08885e11187",
          "completed_at": "2026-07-15T15:55:58Z"
        },
        {
          "id": "substrate",
          "action": "substrate.preflight",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-15T15:55:58Z",
          "output": {
            "status": "disabled",
            "services": {
              "status": "ok",
              "summary": {
                "critical": 0,
                "high": 0,
                "medium": 0,
                "low": 0
              },
              "findings": []
            },
            "policy": {
              "configured": {
                "enabled": false,
                "mode": "off",
                "capabilities": [
                  "records",
                  "graph",
                  "events"
                ],
                "contract_version": 2,
                "require_source_refs": true,
                "endpoint": "http://127.0.0.1:47124",
                "manual_url": "http://127.0.0.1:47124/utcp.json",
                "knowledge_browse_url": "http://127.0.0.1:5276",
                "auth_env": "AI_COLLAB_API_KEY",
                "timeout_seconds": 5,
                "max_result_bytes": 1048576,
                "cache_ttl_seconds": 60,
                "fallback": "local",
                "automation": {
                  "discovery_on_session_start": true,
                  "knowledge_recall": true,
                  "memory_recall": true,
                  "context_enrichment": true,
                  "notices_on_session_start": false,
                  "goals_sync": false,
                  "telemetry_on_maintenance": false,
                  "reporting_dispatch": true,
                  "judgment_dispatch": true,
                  "verification_execution": true
                }
              },
              "active": false,
              "effective_mode": "off",
              "effective_capabilities": []
            }
          },
          "output_hash": "a6df426290b4549a59eecaa0519ead9bcc50b7fcb25bd2185ff6047960f19ccb",
          "completed_at": "2026-07-15T15:55:58Z"
        },
        {
          "id": "notices",
          "action": "substrate.notices",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-15T15:55:58Z",
          "output": {
            "status": "disabled"
          },
          "output_hash": "38b904a1cf83df048360fb2480571b749fd98d57e11f1afdffb5a74a78166fea",
          "completed_at": "2026-07-15T15:55:58Z"
        },
        {
          "id": "goals",
          "action": "substrate.goals",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-15T15:55:58Z",
          "output": {
            "status": "disabled",
            "created": 0,
            "observed": 0,
            "results": []
          },
          "output_hash": "cdfd4de44a28140e686159f34f7b47975954c67e1d1efcef666e985acb136ed8",
          "completed_at": "2026-07-15T15:55:58Z"
        }
      ],
      "completed_at": "2026-07-15T15:55:58Z"
    },
    {
      "id": "WFR-087",
      "schema_version": "1.0",
      "workflow_id": "session.stop",
      "workflow_version": 1,
      "definition_hash": "0cef7bb3e28321be8f85375c154955a69310ce297e47de3f3b8dd48f77a2f07d",
      "plan_hash": "a5e1d77ac734217487fc418e29c7163f4e81178e25d171e70cd4c999d527d3e8",
      "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
      "inputs": {},
      "idempotency_key": "hook:Stop:019f667d-e4da-7581-b942-31bc011c8168",
      "status": "completed",
      "attempt": 1,
      "created_at": "2026-07-15T15:58:12Z",
      "updated_at": "2026-07-15T15:58:12Z",
      "receipts": [
        {
          "step_id": "state",
          "action": "state.consistency",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "5a1c6e5246defb1b6b6b90ff734db95bece2886b408ab112ed9b8e67222d5568",
          "completed_at": "2026-07-15T15:58:12Z"
        },
        {
          "step_id": "goals",
          "action": "substrate.goals",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "cdfd4de44a28140e686159f34f7b47975954c67e1d1efcef666e985acb136ed8",
          "completed_at": "2026-07-15T15:58:12Z"
        },
        {
          "step_id": "staleness",
          "action": "staleness.audit",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "1e81cb0ffd0a4d04626920a203b38d2d23a264cd43e807a85d375d69cae8a658",
          "completed_at": "2026-07-15T15:58:12Z"
        },
        {
          "step_id": "reflections",
          "action": "reflection.list",
          "input_hash": "0172e841ab4c13b3a4061f073f9d68a716ec87a8a5d52fde41823385e0582573",
          "output_hash": "c1b6b635c0bab21120657277f14ef6f839909875f307a3745fa48aee2bd6e449",
          "completed_at": "2026-07-15T15:58:12Z"
        },
        {
          "step_id": "bundle",
          "action": "reporting.bundle",
          "input_hash": "aed8ebb688dc3c085dd978d7c4120572173c3cb87e75919e4a937dcca6ef9457",
          "output_hash": "6413b750e5adf462056ec1108a5d692cc446676e520bee65af98f64bc3e9bd9b",
          "completed_at": "2026-07-15T15:58:12Z"
        },
        {
          "step_id": "delegated",
          "action": "reporting.delegate",
          "input_hash": "669197e524ce450fa066ad7ef7d9da00168b780083ca6a5d7094bca3097e8568",
          "output_hash": "e6085059f197def80ae95add1f328418107bea5436c9bd002530043646a3a95c",
          "completed_at": "2026-07-15T15:58:12Z"
        }
      ],
      "steps": [
        {
          "id": "state",
          "action": "state.consistency",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-15T15:58:12Z",
          "output": {
            "status": "ok",
            "repo_root": "D:\\Projects\\prd-plugin",
            "summary": {
              "errors": 0,
              "warnings": 0,
              "infos": 0
            },
            "findings": []
          },
          "output_hash": "5a1c6e5246defb1b6b6b90ff734db95bece2886b408ab112ed9b8e67222d5568",
          "completed_at": "2026-07-15T15:58:12Z"
        },
        {
          "id": "goals",
          "action": "substrate.goals",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-15T15:58:12Z",
          "output": {
            "status": "disabled",
            "created": 0,
            "observed": 0,
            "results": []
          },
          "output_hash": "cdfd4de44a28140e686159f34f7b47975954c67e1d1efcef666e985acb136ed8",
          "completed_at": "2026-07-15T15:58:12Z"
        },
        {
          "id": "staleness",
          "action": "staleness.audit",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-15T15:58:12Z",
          "output": {
            "status": "ok",
            "repo_root": "D:\\Projects\\prd-plugin",
            "counts": {
              "stale": 0
            },
            "stale": []
          },
          "output_hash": "1e81cb0ffd0a4d04626920a203b38d2d23a264cd43e807a85d375d69cae8a658",
          "completed_at": "2026-07-15T15:58:12Z"
        },
        {
          "id": "reflections",
          "action": "reflection.list",
          "status": "completed",
          "resolved_input_hash": "0172e841ab4c13b3a4061f073f9d68a716ec87a8a5d52fde41823385e0582573",
          "started_at": "2026-07-15T15:58:12Z",
          "output": {
            "enabled": false,
            "on_stop": true,
            "max_questions_per_stop": 5,
            "categories": [
              {
                "id": "behaviour_quality",
                "name": "Behaviour quality",
                "enabled": true,
                "question_count": 3
              },
              {
                "id": "harness_friction",
                "name": "Harness friction",
                "enabled": true,
                "question_count": 2
              }
            ],
            "questions": [
              {
                "id": "RFQ-001",
                "text": "Based on the work you just carried out, would you classify your behaviour as good? Answer yes or no and cite observable evidence.",
                "enabled": true,
                "category_id": "behaviour_quality",
                "category_name": "Behaviour quality",
                "effective_enabled": false
              },
              {
                "id": "RFQ-002",
                "text": "If you answered no, what could you do differently to correct your behaviour?",
                "enabled": true,
                "category_id": "behaviour_quality",
                "category_name": "Behaviour quality",
                "effective_enabled": false
              },
              {
                "id": "RFQ-003",
                "text": "Would another attempt using the identified good behaviours materially improve the outcome? Answer yes or no and state the next corrective action if yes.",
                "enabled": true,
                "category_id": "behaviour_quality",
                "category_name": "Behaviour quality",
                "effective_enabled": false
              },
              {
                "id": "RFQ-004",
                "text": "What harness friction points made this work more difficult?",
                "enabled": true,
                "category_id": "harness_friction",
                "category_name": "Harness friction",
                "effective_enabled": false
              },
              {
                "id": "RFQ-005",
                "text": "What up to three changes would most improve friction in the harness?",
                "enabled": true,
                "category_id": "harness_friction",
                "category_name": "Harness friction",
                "effective_enabled": false
              }
            ]
          },
          "output_hash": "c1b6b635c0bab21120657277f14ef6f839909875f307a3745fa48aee2bd6e449",
          "completed_at": "2026-07-15T15:58:12Z"
        },
        {
          "id": "bundle",
          "action": "reporting.bundle",
          "status": "completed",
          "resolved_input_hash": "aed8ebb688dc3c085dd978d7c4120572173c3cb87e75919e4a937dcca6ef9457",
          "started_at": "2026-07-15T15:58:12Z",
          "output": {
            "contract_version": 1,
            "task": "session_summary",
            "repo": "prd-plugin",
            "policy": {
              "enabled": false,
              "executor": "ai-collab",
              "contract_version": 1,
              "profile": "fast-capable",
              "tasks": [
                "report_summary",
                "session_summary",
                "wiki_synthesis",
                "triage_draft"
              ],
              "fallback": "main",
              "require_source_refs": true,
              "max_input_tokens": 12000,
              "max_output_tokens": 1500,
              "timeout_seconds": 30
            },
            "facts": {
              "requests_by_status": {
                "deferred": 1,
                "implemented": 80,
                "proposed": 1,
                "rejected": 1
              },
              "active_requests": [
                {
                  "id": "REQ-072",
                  "status": "proposed",
                  "severity": "low",
                  "summary": "opencode run-until-done: session.idle is a non-blocking notification, so the stop guard can't force continuation on opencode (currently degrades to a printed reminder, 0.5.95). Investigate whether opencode exposes any vetoable/continuation mechanism (a different event, a permission hook, or a 'continue' API) to enforce run-until-done, or accept the reminder as the permanent ceiling. Low priority — user rarely uses opencode."
                }
              ],
              "active_tracking": [],
              "open_health": [],
              "evidence_count": 104,
              "decision_count": 9
            },
            "findings": [],
            "source_refs": [
              ".prd_plugin/config.json",
              ".prd_plugin/state/decisions.json",
              ".prd_plugin/state/evidence.json",
              ".prd_plugin/state/health.json",
              ".prd_plugin/state/requests.json",
              ".prd_plugin/state/tracking.json",
              "REQ-072"
            ],
            "constraints": {
              "max_input_tokens": 12000,
              "max_output_tokens": 1500,
              "timeout_seconds": 30,
              "require_source_refs": true,
              "no_project_state_writes": true,
              "no_secrets_or_local_session_content": true
            }
          },
          "output_hash": "6413b750e5adf462056ec1108a5d692cc446676e520bee65af98f64bc3e9bd9b",
          "completed_at": "2026-07-15T15:58:12Z"
        },
        {
          "id": "delegated",
          "action": "reporting.delegate",
          "status": "completed",
          "resolved_input_hash": "669197e524ce450fa066ad7ef7d9da00168b780083ca6a5d7094bca3097e8568",
          "started_at": "2026-07-15T15:58:12Z",
          "output": {
            "status": "fallback",
            "action": "main",
            "reason": "disabled"
          },
          "output_hash": "e6085059f197def80ae95add1f328418107bea5436c9bd002530043646a3a95c",
          "completed_at": "2026-07-15T15:58:12Z"
        }
      ],
      "completed_at": "2026-07-15T15:58:12Z"
    },
    {
      "id": "WFR-088",
      "schema_version": "1.0",
      "workflow_id": "session.start",
      "workflow_version": 1,
      "definition_hash": "d0f98da02571e6dd27fec4aed92d3c82af9db75f8b90b997bf665635c7b7f6ca",
      "plan_hash": "b5072615ca3b7e9a3bd85d50d1f069d99ef2a9816b32c03a370745ed7a205536",
      "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
      "inputs": {},
      "idempotency_key": "hook:SessionStart:019f6682-8905-77b2-ab46-ac1d5984c1b8",
      "status": "completed",
      "attempt": 1,
      "created_at": "2026-07-15T16:01:00Z",
      "updated_at": "2026-07-15T16:01:02Z",
      "receipts": [
        {
          "step_id": "config",
          "action": "config.audit",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "3782ec2317c0c8ee7598634310a2804d8aae4735f557498f9d3b8fae7c45e1e5",
          "completed_at": "2026-07-15T16:01:00Z"
        },
        {
          "step_id": "services",
          "action": "services.audit",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "13dcc58bd528f3efa3e6e0fa0853a6eedc376f1f3685fbd4869cbb2b60382ee3",
          "completed_at": "2026-07-15T16:01:00Z"
        },
        {
          "step_id": "state",
          "action": "state.consistency",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "5a1c6e5246defb1b6b6b90ff734db95bece2886b408ab112ed9b8e67222d5568",
          "completed_at": "2026-07-15T16:01:01Z"
        },
        {
          "step_id": "status",
          "action": "state.query",
          "input_hash": "a15231a2142a2a9a85355a8b9cbbccffe01a9c9c2c2fd8c2bc2987cdc481564a",
          "output_hash": "8ba9f7d3cc6705af37de9e3324d1258e21ccacb5ab0b2d7b389ca08885e11187",
          "completed_at": "2026-07-15T16:01:01Z"
        },
        {
          "step_id": "substrate",
          "action": "substrate.preflight",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "a6df426290b4549a59eecaa0519ead9bcc50b7fcb25bd2185ff6047960f19ccb",
          "completed_at": "2026-07-15T16:01:01Z"
        },
        {
          "step_id": "notices",
          "action": "substrate.notices",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "38b904a1cf83df048360fb2480571b749fd98d57e11f1afdffb5a74a78166fea",
          "completed_at": "2026-07-15T16:01:01Z"
        },
        {
          "step_id": "goals",
          "action": "substrate.goals",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "cdfd4de44a28140e686159f34f7b47975954c67e1d1efcef666e985acb136ed8",
          "completed_at": "2026-07-15T16:01:02Z"
        }
      ],
      "steps": [
        {
          "id": "config",
          "action": "config.audit",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-15T16:01:00Z",
          "output": {
            "status": "ok",
            "summary": {
              "settings": 195,
              "mutable": 186,
              "read_only_or_managed": 9,
              "unclassified": 0,
              "unknown": 0,
              "invalid": 0,
              "missing_using_defaults": 0
            },
            "unclassified_keys": [],
            "unknown_keys": [],
            "invalid_values": [],
            "missing_using_defaults": []
          },
          "output_hash": "3782ec2317c0c8ee7598634310a2804d8aae4735f557498f9d3b8fae7c45e1e5",
          "completed_at": "2026-07-15T16:01:00Z"
        },
        {
          "id": "services",
          "action": "services.audit",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-15T16:01:00Z",
          "output": {
            "status": "ok",
            "summary": {
              "critical": 0,
              "high": 0,
              "medium": 0,
              "low": 0
            },
            "findings": []
          },
          "output_hash": "13dcc58bd528f3efa3e6e0fa0853a6eedc376f1f3685fbd4869cbb2b60382ee3",
          "completed_at": "2026-07-15T16:01:00Z"
        },
        {
          "id": "state",
          "action": "state.consistency",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-15T16:01:01Z",
          "output": {
            "status": "ok",
            "repo_root": "D:\\Projects\\prd-plugin",
            "summary": {
              "errors": 0,
              "warnings": 0,
              "infos": 0
            },
            "findings": []
          },
          "output_hash": "5a1c6e5246defb1b6b6b90ff734db95bece2886b408ab112ed9b8e67222d5568",
          "completed_at": "2026-07-15T16:01:01Z"
        },
        {
          "id": "status",
          "action": "state.query",
          "status": "completed",
          "resolved_input_hash": "a15231a2142a2a9a85355a8b9cbbccffe01a9c9c2c2fd8c2bc2987cdc481564a",
          "started_at": "2026-07-15T16:01:01Z",
          "output": {
            "repo_root": "D:\\Projects\\prd-plugin",
            "autonomy_level": "autonomous",
            "requests_by_status": {
              "deferred": 1,
              "implemented": 80,
              "proposed": 1,
              "rejected": 1
            },
            "active_tracking": [],
            "tracking_branches": [],
            "tracking_branch_counts": {},
            "tracking_branch_errors": [],
            "open_health": [],
            "stale_count": 0,
            "skill_usage": {
              "project-decision-policy": 1,
              "project-request-intake": 1,
              "project-test-driven-implementation": 1,
              "project-verification-before-completion": 1,
              "project-llm-wiki": 1
            },
            "wiki_backfill_pending": false,
            "version_update": null
          },
          "output_hash": "8ba9f7d3cc6705af37de9e3324d1258e21ccacb5ab0b2d7b389ca08885e11187",
          "completed_at": "2026-07-15T16:01:01Z"
        },
        {
          "id": "substrate",
          "action": "substrate.preflight",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-15T16:01:01Z",
          "output": {
            "status": "disabled",
            "services": {
              "status": "ok",
              "summary": {
                "critical": 0,
                "high": 0,
                "medium": 0,
                "low": 0
              },
              "findings": []
            },
            "policy": {
              "configured": {
                "enabled": false,
                "mode": "off",
                "capabilities": [
                  "records",
                  "graph",
                  "events"
                ],
                "contract_version": 2,
                "require_source_refs": true,
                "endpoint": "http://127.0.0.1:47124",
                "manual_url": "http://127.0.0.1:47124/utcp.json",
                "knowledge_browse_url": "http://127.0.0.1:5276",
                "auth_env": "AI_COLLAB_API_KEY",
                "timeout_seconds": 5,
                "max_result_bytes": 1048576,
                "cache_ttl_seconds": 60,
                "fallback": "local",
                "automation": {
                  "discovery_on_session_start": true,
                  "knowledge_recall": true,
                  "memory_recall": true,
                  "context_enrichment": true,
                  "notices_on_session_start": false,
                  "goals_sync": false,
                  "telemetry_on_maintenance": false,
                  "reporting_dispatch": true,
                  "judgment_dispatch": true,
                  "verification_execution": true
                }
              },
              "active": false,
              "effective_mode": "off",
              "effective_capabilities": []
            }
          },
          "output_hash": "a6df426290b4549a59eecaa0519ead9bcc50b7fcb25bd2185ff6047960f19ccb",
          "completed_at": "2026-07-15T16:01:01Z"
        },
        {
          "id": "notices",
          "action": "substrate.notices",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-15T16:01:01Z",
          "output": {
            "status": "disabled"
          },
          "output_hash": "38b904a1cf83df048360fb2480571b749fd98d57e11f1afdffb5a74a78166fea",
          "completed_at": "2026-07-15T16:01:01Z"
        },
        {
          "id": "goals",
          "action": "substrate.goals",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-15T16:01:01Z",
          "output": {
            "status": "disabled",
            "created": 0,
            "observed": 0,
            "results": []
          },
          "output_hash": "cdfd4de44a28140e686159f34f7b47975954c67e1d1efcef666e985acb136ed8",
          "completed_at": "2026-07-15T16:01:02Z"
        }
      ],
      "completed_at": "2026-07-15T16:01:02Z"
    },
    {
      "id": "WFR-089",
      "schema_version": "1.0",
      "workflow_id": "session.stop",
      "workflow_version": 1,
      "definition_hash": "0cef7bb3e28321be8f85375c154955a69310ce297e47de3f3b8dd48f77a2f07d",
      "plan_hash": "a5e1d77ac734217487fc418e29c7163f4e81178e25d171e70cd4c999d527d3e8",
      "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
      "inputs": {},
      "idempotency_key": "hook:Stop:019f6682-8905-77b2-ab46-ac1d5984c1b8",
      "status": "completed",
      "attempt": 1,
      "created_at": "2026-07-15T16:01:05Z",
      "updated_at": "2026-07-15T16:01:06Z",
      "receipts": [
        {
          "step_id": "state",
          "action": "state.consistency",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "5a1c6e5246defb1b6b6b90ff734db95bece2886b408ab112ed9b8e67222d5568",
          "completed_at": "2026-07-15T16:01:05Z"
        },
        {
          "step_id": "goals",
          "action": "substrate.goals",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "cdfd4de44a28140e686159f34f7b47975954c67e1d1efcef666e985acb136ed8",
          "completed_at": "2026-07-15T16:01:05Z"
        },
        {
          "step_id": "staleness",
          "action": "staleness.audit",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "1e81cb0ffd0a4d04626920a203b38d2d23a264cd43e807a85d375d69cae8a658",
          "completed_at": "2026-07-15T16:01:05Z"
        },
        {
          "step_id": "reflections",
          "action": "reflection.list",
          "input_hash": "0172e841ab4c13b3a4061f073f9d68a716ec87a8a5d52fde41823385e0582573",
          "output_hash": "c1b6b635c0bab21120657277f14ef6f839909875f307a3745fa48aee2bd6e449",
          "completed_at": "2026-07-15T16:01:05Z"
        },
        {
          "step_id": "bundle",
          "action": "reporting.bundle",
          "input_hash": "aed8ebb688dc3c085dd978d7c4120572173c3cb87e75919e4a937dcca6ef9457",
          "output_hash": "6413b750e5adf462056ec1108a5d692cc446676e520bee65af98f64bc3e9bd9b",
          "completed_at": "2026-07-15T16:01:05Z"
        },
        {
          "step_id": "delegated",
          "action": "reporting.delegate",
          "input_hash": "669197e524ce450fa066ad7ef7d9da00168b780083ca6a5d7094bca3097e8568",
          "output_hash": "e6085059f197def80ae95add1f328418107bea5436c9bd002530043646a3a95c",
          "completed_at": "2026-07-15T16:01:05Z"
        }
      ],
      "steps": [
        {
          "id": "state",
          "action": "state.consistency",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-15T16:01:05Z",
          "output": {
            "status": "ok",
            "repo_root": "D:\\Projects\\prd-plugin",
            "summary": {
              "errors": 0,
              "warnings": 0,
              "infos": 0
            },
            "findings": []
          },
          "output_hash": "5a1c6e5246defb1b6b6b90ff734db95bece2886b408ab112ed9b8e67222d5568",
          "completed_at": "2026-07-15T16:01:05Z"
        },
        {
          "id": "goals",
          "action": "substrate.goals",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-15T16:01:05Z",
          "output": {
            "status": "disabled",
            "created": 0,
            "observed": 0,
            "results": []
          },
          "output_hash": "cdfd4de44a28140e686159f34f7b47975954c67e1d1efcef666e985acb136ed8",
          "completed_at": "2026-07-15T16:01:05Z"
        },
        {
          "id": "staleness",
          "action": "staleness.audit",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-15T16:01:05Z",
          "output": {
            "status": "ok",
            "repo_root": "D:\\Projects\\prd-plugin",
            "counts": {
              "stale": 0
            },
            "stale": []
          },
          "output_hash": "1e81cb0ffd0a4d04626920a203b38d2d23a264cd43e807a85d375d69cae8a658",
          "completed_at": "2026-07-15T16:01:05Z"
        },
        {
          "id": "reflections",
          "action": "reflection.list",
          "status": "completed",
          "resolved_input_hash": "0172e841ab4c13b3a4061f073f9d68a716ec87a8a5d52fde41823385e0582573",
          "started_at": "2026-07-15T16:01:05Z",
          "output": {
            "enabled": false,
            "on_stop": true,
            "max_questions_per_stop": 5,
            "categories": [
              {
                "id": "behaviour_quality",
                "name": "Behaviour quality",
                "enabled": true,
                "question_count": 3
              },
              {
                "id": "harness_friction",
                "name": "Harness friction",
                "enabled": true,
                "question_count": 2
              }
            ],
            "questions": [
              {
                "id": "RFQ-001",
                "text": "Based on the work you just carried out, would you classify your behaviour as good? Answer yes or no and cite observable evidence.",
                "enabled": true,
                "category_id": "behaviour_quality",
                "category_name": "Behaviour quality",
                "effective_enabled": false
              },
              {
                "id": "RFQ-002",
                "text": "If you answered no, what could you do differently to correct your behaviour?",
                "enabled": true,
                "category_id": "behaviour_quality",
                "category_name": "Behaviour quality",
                "effective_enabled": false
              },
              {
                "id": "RFQ-003",
                "text": "Would another attempt using the identified good behaviours materially improve the outcome? Answer yes or no and state the next corrective action if yes.",
                "enabled": true,
                "category_id": "behaviour_quality",
                "category_name": "Behaviour quality",
                "effective_enabled": false
              },
              {
                "id": "RFQ-004",
                "text": "What harness friction points made this work more difficult?",
                "enabled": true,
                "category_id": "harness_friction",
                "category_name": "Harness friction",
                "effective_enabled": false
              },
              {
                "id": "RFQ-005",
                "text": "What up to three changes would most improve friction in the harness?",
                "enabled": true,
                "category_id": "harness_friction",
                "category_name": "Harness friction",
                "effective_enabled": false
              }
            ]
          },
          "output_hash": "c1b6b635c0bab21120657277f14ef6f839909875f307a3745fa48aee2bd6e449",
          "completed_at": "2026-07-15T16:01:05Z"
        },
        {
          "id": "bundle",
          "action": "reporting.bundle",
          "status": "completed",
          "resolved_input_hash": "aed8ebb688dc3c085dd978d7c4120572173c3cb87e75919e4a937dcca6ef9457",
          "started_at": "2026-07-15T16:01:05Z",
          "output": {
            "contract_version": 1,
            "task": "session_summary",
            "repo": "prd-plugin",
            "policy": {
              "enabled": false,
              "executor": "ai-collab",
              "contract_version": 1,
              "profile": "fast-capable",
              "tasks": [
                "report_summary",
                "session_summary",
                "wiki_synthesis",
                "triage_draft"
              ],
              "fallback": "main",
              "require_source_refs": true,
              "max_input_tokens": 12000,
              "max_output_tokens": 1500,
              "timeout_seconds": 30
            },
            "facts": {
              "requests_by_status": {
                "deferred": 1,
                "implemented": 80,
                "proposed": 1,
                "rejected": 1
              },
              "active_requests": [
                {
                  "id": "REQ-072",
                  "status": "proposed",
                  "severity": "low",
                  "summary": "opencode run-until-done: session.idle is a non-blocking notification, so the stop guard can't force continuation on opencode (currently degrades to a printed reminder, 0.5.95). Investigate whether opencode exposes any vetoable/continuation mechanism (a different event, a permission hook, or a 'continue' API) to enforce run-until-done, or accept the reminder as the permanent ceiling. Low priority — user rarely uses opencode."
                }
              ],
              "active_tracking": [],
              "open_health": [],
              "evidence_count": 104,
              "decision_count": 9
            },
            "findings": [],
            "source_refs": [
              ".prd_plugin/config.json",
              ".prd_plugin/state/decisions.json",
              ".prd_plugin/state/evidence.json",
              ".prd_plugin/state/health.json",
              ".prd_plugin/state/requests.json",
              ".prd_plugin/state/tracking.json",
              "REQ-072"
            ],
            "constraints": {
              "max_input_tokens": 12000,
              "max_output_tokens": 1500,
              "timeout_seconds": 30,
              "require_source_refs": true,
              "no_project_state_writes": true,
              "no_secrets_or_local_session_content": true
            }
          },
          "output_hash": "6413b750e5adf462056ec1108a5d692cc446676e520bee65af98f64bc3e9bd9b",
          "completed_at": "2026-07-15T16:01:05Z"
        },
        {
          "id": "delegated",
          "action": "reporting.delegate",
          "status": "completed",
          "resolved_input_hash": "669197e524ce450fa066ad7ef7d9da00168b780083ca6a5d7094bca3097e8568",
          "started_at": "2026-07-15T16:01:05Z",
          "output": {
            "status": "fallback",
            "action": "main",
            "reason": "disabled"
          },
          "output_hash": "e6085059f197def80ae95add1f328418107bea5436c9bd002530043646a3a95c",
          "completed_at": "2026-07-15T16:01:05Z"
        }
      ],
      "completed_at": "2026-07-15T16:01:06Z"
    },
    {
      "id": "WFR-090",
      "schema_version": "1.0",
      "workflow_id": "session.start",
      "workflow_version": 1,
      "definition_hash": "d0f98da02571e6dd27fec4aed92d3c82af9db75f8b90b997bf665635c7b7f6ca",
      "plan_hash": "b5072615ca3b7e9a3bd85d50d1f069d99ef2a9816b32c03a370745ed7a205536",
      "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
      "inputs": {},
      "idempotency_key": "hook:SessionStart:019f6682-e883-79c1-acf3-047552b39eea",
      "status": "completed",
      "attempt": 1,
      "created_at": "2026-07-15T16:01:25Z",
      "updated_at": "2026-07-15T16:01:26Z",
      "receipts": [
        {
          "step_id": "config",
          "action": "config.audit",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "3782ec2317c0c8ee7598634310a2804d8aae4735f557498f9d3b8fae7c45e1e5",
          "completed_at": "2026-07-15T16:01:25Z"
        },
        {
          "step_id": "services",
          "action": "services.audit",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "13dcc58bd528f3efa3e6e0fa0853a6eedc376f1f3685fbd4869cbb2b60382ee3",
          "completed_at": "2026-07-15T16:01:25Z"
        },
        {
          "step_id": "state",
          "action": "state.consistency",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "5a1c6e5246defb1b6b6b90ff734db95bece2886b408ab112ed9b8e67222d5568",
          "completed_at": "2026-07-15T16:01:26Z"
        },
        {
          "step_id": "status",
          "action": "state.query",
          "input_hash": "a15231a2142a2a9a85355a8b9cbbccffe01a9c9c2c2fd8c2bc2987cdc481564a",
          "output_hash": "8ba9f7d3cc6705af37de9e3324d1258e21ccacb5ab0b2d7b389ca08885e11187",
          "completed_at": "2026-07-15T16:01:26Z"
        },
        {
          "step_id": "substrate",
          "action": "substrate.preflight",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "a6df426290b4549a59eecaa0519ead9bcc50b7fcb25bd2185ff6047960f19ccb",
          "completed_at": "2026-07-15T16:01:26Z"
        },
        {
          "step_id": "notices",
          "action": "substrate.notices",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "38b904a1cf83df048360fb2480571b749fd98d57e11f1afdffb5a74a78166fea",
          "completed_at": "2026-07-15T16:01:26Z"
        },
        {
          "step_id": "goals",
          "action": "substrate.goals",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "cdfd4de44a28140e686159f34f7b47975954c67e1d1efcef666e985acb136ed8",
          "completed_at": "2026-07-15T16:01:26Z"
        }
      ],
      "steps": [
        {
          "id": "config",
          "action": "config.audit",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-15T16:01:25Z",
          "output": {
            "status": "ok",
            "summary": {
              "settings": 195,
              "mutable": 186,
              "read_only_or_managed": 9,
              "unclassified": 0,
              "unknown": 0,
              "invalid": 0,
              "missing_using_defaults": 0
            },
            "unclassified_keys": [],
            "unknown_keys": [],
            "invalid_values": [],
            "missing_using_defaults": []
          },
          "output_hash": "3782ec2317c0c8ee7598634310a2804d8aae4735f557498f9d3b8fae7c45e1e5",
          "completed_at": "2026-07-15T16:01:25Z"
        },
        {
          "id": "services",
          "action": "services.audit",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-15T16:01:25Z",
          "output": {
            "status": "ok",
            "summary": {
              "critical": 0,
              "high": 0,
              "medium": 0,
              "low": 0
            },
            "findings": []
          },
          "output_hash": "13dcc58bd528f3efa3e6e0fa0853a6eedc376f1f3685fbd4869cbb2b60382ee3",
          "completed_at": "2026-07-15T16:01:25Z"
        },
        {
          "id": "state",
          "action": "state.consistency",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-15T16:01:25Z",
          "output": {
            "status": "ok",
            "repo_root": "D:\\Projects\\prd-plugin",
            "summary": {
              "errors": 0,
              "warnings": 0,
              "infos": 0
            },
            "findings": []
          },
          "output_hash": "5a1c6e5246defb1b6b6b90ff734db95bece2886b408ab112ed9b8e67222d5568",
          "completed_at": "2026-07-15T16:01:26Z"
        },
        {
          "id": "status",
          "action": "state.query",
          "status": "completed",
          "resolved_input_hash": "a15231a2142a2a9a85355a8b9cbbccffe01a9c9c2c2fd8c2bc2987cdc481564a",
          "started_at": "2026-07-15T16:01:26Z",
          "output": {
            "repo_root": "D:\\Projects\\prd-plugin",
            "autonomy_level": "autonomous",
            "requests_by_status": {
              "deferred": 1,
              "implemented": 80,
              "proposed": 1,
              "rejected": 1
            },
            "active_tracking": [],
            "tracking_branches": [],
            "tracking_branch_counts": {},
            "tracking_branch_errors": [],
            "open_health": [],
            "stale_count": 0,
            "skill_usage": {
              "project-decision-policy": 1,
              "project-request-intake": 1,
              "project-test-driven-implementation": 1,
              "project-verification-before-completion": 1,
              "project-llm-wiki": 1
            },
            "wiki_backfill_pending": false,
            "version_update": null
          },
          "output_hash": "8ba9f7d3cc6705af37de9e3324d1258e21ccacb5ab0b2d7b389ca08885e11187",
          "completed_at": "2026-07-15T16:01:26Z"
        },
        {
          "id": "substrate",
          "action": "substrate.preflight",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-15T16:01:26Z",
          "output": {
            "status": "disabled",
            "services": {
              "status": "ok",
              "summary": {
                "critical": 0,
                "high": 0,
                "medium": 0,
                "low": 0
              },
              "findings": []
            },
            "policy": {
              "configured": {
                "enabled": false,
                "mode": "off",
                "capabilities": [
                  "records",
                  "graph",
                  "events"
                ],
                "contract_version": 2,
                "require_source_refs": true,
                "endpoint": "http://127.0.0.1:47124",
                "manual_url": "http://127.0.0.1:47124/utcp.json",
                "knowledge_browse_url": "http://127.0.0.1:5276",
                "auth_env": "AI_COLLAB_API_KEY",
                "timeout_seconds": 5,
                "max_result_bytes": 1048576,
                "cache_ttl_seconds": 60,
                "fallback": "local",
                "automation": {
                  "discovery_on_session_start": true,
                  "knowledge_recall": true,
                  "memory_recall": true,
                  "context_enrichment": true,
                  "notices_on_session_start": false,
                  "goals_sync": false,
                  "telemetry_on_maintenance": false,
                  "reporting_dispatch": true,
                  "judgment_dispatch": true,
                  "verification_execution": true
                }
              },
              "active": false,
              "effective_mode": "off",
              "effective_capabilities": []
            }
          },
          "output_hash": "a6df426290b4549a59eecaa0519ead9bcc50b7fcb25bd2185ff6047960f19ccb",
          "completed_at": "2026-07-15T16:01:26Z"
        },
        {
          "id": "notices",
          "action": "substrate.notices",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-15T16:01:26Z",
          "output": {
            "status": "disabled"
          },
          "output_hash": "38b904a1cf83df048360fb2480571b749fd98d57e11f1afdffb5a74a78166fea",
          "completed_at": "2026-07-15T16:01:26Z"
        },
        {
          "id": "goals",
          "action": "substrate.goals",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-15T16:01:26Z",
          "output": {
            "status": "disabled",
            "created": 0,
            "observed": 0,
            "results": []
          },
          "output_hash": "cdfd4de44a28140e686159f34f7b47975954c67e1d1efcef666e985acb136ed8",
          "completed_at": "2026-07-15T16:01:26Z"
        }
      ],
      "completed_at": "2026-07-15T16:01:26Z"
    },
    {
      "id": "WFR-091",
      "schema_version": "1.0",
      "workflow_id": "session.stop",
      "workflow_version": 1,
      "definition_hash": "0cef7bb3e28321be8f85375c154955a69310ce297e47de3f3b8dd48f77a2f07d",
      "plan_hash": "a5e1d77ac734217487fc418e29c7163f4e81178e25d171e70cd4c999d527d3e8",
      "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
      "inputs": {},
      "idempotency_key": "hook:Stop:019f6682-e883-79c1-acf3-047552b39eea",
      "status": "completed",
      "attempt": 1,
      "created_at": "2026-07-15T16:01:29Z",
      "updated_at": "2026-07-15T16:01:29Z",
      "receipts": [
        {
          "step_id": "state",
          "action": "state.consistency",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "5a1c6e5246defb1b6b6b90ff734db95bece2886b408ab112ed9b8e67222d5568",
          "completed_at": "2026-07-15T16:01:29Z"
        },
        {
          "step_id": "goals",
          "action": "substrate.goals",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "cdfd4de44a28140e686159f34f7b47975954c67e1d1efcef666e985acb136ed8",
          "completed_at": "2026-07-15T16:01:29Z"
        },
        {
          "step_id": "staleness",
          "action": "staleness.audit",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "1e81cb0ffd0a4d04626920a203b38d2d23a264cd43e807a85d375d69cae8a658",
          "completed_at": "2026-07-15T16:01:29Z"
        },
        {
          "step_id": "reflections",
          "action": "reflection.list",
          "input_hash": "0172e841ab4c13b3a4061f073f9d68a716ec87a8a5d52fde41823385e0582573",
          "output_hash": "c1b6b635c0bab21120657277f14ef6f839909875f307a3745fa48aee2bd6e449",
          "completed_at": "2026-07-15T16:01:29Z"
        },
        {
          "step_id": "bundle",
          "action": "reporting.bundle",
          "input_hash": "aed8ebb688dc3c085dd978d7c4120572173c3cb87e75919e4a937dcca6ef9457",
          "output_hash": "6413b750e5adf462056ec1108a5d692cc446676e520bee65af98f64bc3e9bd9b",
          "completed_at": "2026-07-15T16:01:29Z"
        },
        {
          "step_id": "delegated",
          "action": "reporting.delegate",
          "input_hash": "669197e524ce450fa066ad7ef7d9da00168b780083ca6a5d7094bca3097e8568",
          "output_hash": "e6085059f197def80ae95add1f328418107bea5436c9bd002530043646a3a95c",
          "completed_at": "2026-07-15T16:01:29Z"
        }
      ],
      "steps": [
        {
          "id": "state",
          "action": "state.consistency",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-15T16:01:29Z",
          "output": {
            "status": "ok",
            "repo_root": "D:\\Projects\\prd-plugin",
            "summary": {
              "errors": 0,
              "warnings": 0,
              "infos": 0
            },
            "findings": []
          },
          "output_hash": "5a1c6e5246defb1b6b6b90ff734db95bece2886b408ab112ed9b8e67222d5568",
          "completed_at": "2026-07-15T16:01:29Z"
        },
        {
          "id": "goals",
          "action": "substrate.goals",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-15T16:01:29Z",
          "output": {
            "status": "disabled",
            "created": 0,
            "observed": 0,
            "results": []
          },
          "output_hash": "cdfd4de44a28140e686159f34f7b47975954c67e1d1efcef666e985acb136ed8",
          "completed_at": "2026-07-15T16:01:29Z"
        },
        {
          "id": "staleness",
          "action": "staleness.audit",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-15T16:01:29Z",
          "output": {
            "status": "ok",
            "repo_root": "D:\\Projects\\prd-plugin",
            "counts": {
              "stale": 0
            },
            "stale": []
          },
          "output_hash": "1e81cb0ffd0a4d04626920a203b38d2d23a264cd43e807a85d375d69cae8a658",
          "completed_at": "2026-07-15T16:01:29Z"
        },
        {
          "id": "reflections",
          "action": "reflection.list",
          "status": "completed",
          "resolved_input_hash": "0172e841ab4c13b3a4061f073f9d68a716ec87a8a5d52fde41823385e0582573",
          "started_at": "2026-07-15T16:01:29Z",
          "output": {
            "enabled": false,
            "on_stop": true,
            "max_questions_per_stop": 5,
            "categories": [
              {
                "id": "behaviour_quality",
                "name": "Behaviour quality",
                "enabled": true,
                "question_count": 3
              },
              {
                "id": "harness_friction",
                "name": "Harness friction",
                "enabled": true,
                "question_count": 2
              }
            ],
            "questions": [
              {
                "id": "RFQ-001",
                "text": "Based on the work you just carried out, would you classify your behaviour as good? Answer yes or no and cite observable evidence.",
                "enabled": true,
                "category_id": "behaviour_quality",
                "category_name": "Behaviour quality",
                "effective_enabled": false
              },
              {
                "id": "RFQ-002",
                "text": "If you answered no, what could you do differently to correct your behaviour?",
                "enabled": true,
                "category_id": "behaviour_quality",
                "category_name": "Behaviour quality",
                "effective_enabled": false
              },
              {
                "id": "RFQ-003",
                "text": "Would another attempt using the identified good behaviours materially improve the outcome? Answer yes or no and state the next corrective action if yes.",
                "enabled": true,
                "category_id": "behaviour_quality",
                "category_name": "Behaviour quality",
                "effective_enabled": false
              },
              {
                "id": "RFQ-004",
                "text": "What harness friction points made this work more difficult?",
                "enabled": true,
                "category_id": "harness_friction",
                "category_name": "Harness friction",
                "effective_enabled": false
              },
              {
                "id": "RFQ-005",
                "text": "What up to three changes would most improve friction in the harness?",
                "enabled": true,
                "category_id": "harness_friction",
                "category_name": "Harness friction",
                "effective_enabled": false
              }
            ]
          },
          "output_hash": "c1b6b635c0bab21120657277f14ef6f839909875f307a3745fa48aee2bd6e449",
          "completed_at": "2026-07-15T16:01:29Z"
        },
        {
          "id": "bundle",
          "action": "reporting.bundle",
          "status": "completed",
          "resolved_input_hash": "aed8ebb688dc3c085dd978d7c4120572173c3cb87e75919e4a937dcca6ef9457",
          "started_at": "2026-07-15T16:01:29Z",
          "output": {
            "contract_version": 1,
            "task": "session_summary",
            "repo": "prd-plugin",
            "policy": {
              "enabled": false,
              "executor": "ai-collab",
              "contract_version": 1,
              "profile": "fast-capable",
              "tasks": [
                "report_summary",
                "session_summary",
                "wiki_synthesis",
                "triage_draft"
              ],
              "fallback": "main",
              "require_source_refs": true,
              "max_input_tokens": 12000,
              "max_output_tokens": 1500,
              "timeout_seconds": 30
            },
            "facts": {
              "requests_by_status": {
                "deferred": 1,
                "implemented": 80,
                "proposed": 1,
                "rejected": 1
              },
              "active_requests": [
                {
                  "id": "REQ-072",
                  "status": "proposed",
                  "severity": "low",
                  "summary": "opencode run-until-done: session.idle is a non-blocking notification, so the stop guard can't force continuation on opencode (currently degrades to a printed reminder, 0.5.95). Investigate whether opencode exposes any vetoable/continuation mechanism (a different event, a permission hook, or a 'continue' API) to enforce run-until-done, or accept the reminder as the permanent ceiling. Low priority — user rarely uses opencode."
                }
              ],
              "active_tracking": [],
              "open_health": [],
              "evidence_count": 104,
              "decision_count": 9
            },
            "findings": [],
            "source_refs": [
              ".prd_plugin/config.json",
              ".prd_plugin/state/decisions.json",
              ".prd_plugin/state/evidence.json",
              ".prd_plugin/state/health.json",
              ".prd_plugin/state/requests.json",
              ".prd_plugin/state/tracking.json",
              "REQ-072"
            ],
            "constraints": {
              "max_input_tokens": 12000,
              "max_output_tokens": 1500,
              "timeout_seconds": 30,
              "require_source_refs": true,
              "no_project_state_writes": true,
              "no_secrets_or_local_session_content": true
            }
          },
          "output_hash": "6413b750e5adf462056ec1108a5d692cc446676e520bee65af98f64bc3e9bd9b",
          "completed_at": "2026-07-15T16:01:29Z"
        },
        {
          "id": "delegated",
          "action": "reporting.delegate",
          "status": "completed",
          "resolved_input_hash": "669197e524ce450fa066ad7ef7d9da00168b780083ca6a5d7094bca3097e8568",
          "started_at": "2026-07-15T16:01:29Z",
          "output": {
            "status": "fallback",
            "action": "main",
            "reason": "disabled"
          },
          "output_hash": "e6085059f197def80ae95add1f328418107bea5436c9bd002530043646a3a95c",
          "completed_at": "2026-07-15T16:01:29Z"
        }
      ],
      "completed_at": "2026-07-15T16:01:29Z"
    },
    {
      "id": "WFR-092",
      "schema_version": "1.0",
      "workflow_id": "session.start",
      "workflow_version": 1,
      "definition_hash": "d0f98da02571e6dd27fec4aed92d3c82af9db75f8b90b997bf665635c7b7f6ca",
      "plan_hash": "b5072615ca3b7e9a3bd85d50d1f069d99ef2a9816b32c03a370745ed7a205536",
      "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
      "inputs": {},
      "idempotency_key": "hook:SessionStart:019f6685-c0ce-7f31-9a9f-572f3e27d1bc",
      "status": "completed",
      "attempt": 1,
      "created_at": "2026-07-15T16:04:31Z",
      "updated_at": "2026-07-15T16:04:32Z",
      "receipts": [
        {
          "step_id": "config",
          "action": "config.audit",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "3782ec2317c0c8ee7598634310a2804d8aae4735f557498f9d3b8fae7c45e1e5",
          "completed_at": "2026-07-15T16:04:31Z"
        },
        {
          "step_id": "services",
          "action": "services.audit",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "13dcc58bd528f3efa3e6e0fa0853a6eedc376f1f3685fbd4869cbb2b60382ee3",
          "completed_at": "2026-07-15T16:04:31Z"
        },
        {
          "step_id": "state",
          "action": "state.consistency",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "5a1c6e5246defb1b6b6b90ff734db95bece2886b408ab112ed9b8e67222d5568",
          "completed_at": "2026-07-15T16:04:32Z"
        },
        {
          "step_id": "status",
          "action": "state.query",
          "input_hash": "a15231a2142a2a9a85355a8b9cbbccffe01a9c9c2c2fd8c2bc2987cdc481564a",
          "output_hash": "8ba9f7d3cc6705af37de9e3324d1258e21ccacb5ab0b2d7b389ca08885e11187",
          "completed_at": "2026-07-15T16:04:32Z"
        },
        {
          "step_id": "substrate",
          "action": "substrate.preflight",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "a6df426290b4549a59eecaa0519ead9bcc50b7fcb25bd2185ff6047960f19ccb",
          "completed_at": "2026-07-15T16:04:32Z"
        },
        {
          "step_id": "notices",
          "action": "substrate.notices",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "38b904a1cf83df048360fb2480571b749fd98d57e11f1afdffb5a74a78166fea",
          "completed_at": "2026-07-15T16:04:32Z"
        },
        {
          "step_id": "goals",
          "action": "substrate.goals",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "cdfd4de44a28140e686159f34f7b47975954c67e1d1efcef666e985acb136ed8",
          "completed_at": "2026-07-15T16:04:32Z"
        }
      ],
      "steps": [
        {
          "id": "config",
          "action": "config.audit",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-15T16:04:31Z",
          "output": {
            "status": "ok",
            "summary": {
              "settings": 195,
              "mutable": 186,
              "read_only_or_managed": 9,
              "unclassified": 0,
              "unknown": 0,
              "invalid": 0,
              "missing_using_defaults": 0
            },
            "unclassified_keys": [],
            "unknown_keys": [],
            "invalid_values": [],
            "missing_using_defaults": []
          },
          "output_hash": "3782ec2317c0c8ee7598634310a2804d8aae4735f557498f9d3b8fae7c45e1e5",
          "completed_at": "2026-07-15T16:04:31Z"
        },
        {
          "id": "services",
          "action": "services.audit",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-15T16:04:31Z",
          "output": {
            "status": "ok",
            "summary": {
              "critical": 0,
              "high": 0,
              "medium": 0,
              "low": 0
            },
            "findings": []
          },
          "output_hash": "13dcc58bd528f3efa3e6e0fa0853a6eedc376f1f3685fbd4869cbb2b60382ee3",
          "completed_at": "2026-07-15T16:04:31Z"
        },
        {
          "id": "state",
          "action": "state.consistency",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-15T16:04:31Z",
          "output": {
            "status": "ok",
            "repo_root": "D:\\Projects\\prd-plugin",
            "summary": {
              "errors": 0,
              "warnings": 0,
              "infos": 0
            },
            "findings": []
          },
          "output_hash": "5a1c6e5246defb1b6b6b90ff734db95bece2886b408ab112ed9b8e67222d5568",
          "completed_at": "2026-07-15T16:04:32Z"
        },
        {
          "id": "status",
          "action": "state.query",
          "status": "completed",
          "resolved_input_hash": "a15231a2142a2a9a85355a8b9cbbccffe01a9c9c2c2fd8c2bc2987cdc481564a",
          "started_at": "2026-07-15T16:04:32Z",
          "output": {
            "repo_root": "D:\\Projects\\prd-plugin",
            "autonomy_level": "autonomous",
            "requests_by_status": {
              "deferred": 1,
              "implemented": 80,
              "proposed": 1,
              "rejected": 1
            },
            "active_tracking": [],
            "tracking_branches": [],
            "tracking_branch_counts": {},
            "tracking_branch_errors": [],
            "open_health": [],
            "stale_count": 0,
            "skill_usage": {
              "project-decision-policy": 1,
              "project-request-intake": 1,
              "project-test-driven-implementation": 1,
              "project-verification-before-completion": 1,
              "project-llm-wiki": 1
            },
            "wiki_backfill_pending": false,
            "version_update": null
          },
          "output_hash": "8ba9f7d3cc6705af37de9e3324d1258e21ccacb5ab0b2d7b389ca08885e11187",
          "completed_at": "2026-07-15T16:04:32Z"
        },
        {
          "id": "substrate",
          "action": "substrate.preflight",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-15T16:04:32Z",
          "output": {
            "status": "disabled",
            "services": {
              "status": "ok",
              "summary": {
                "critical": 0,
                "high": 0,
                "medium": 0,
                "low": 0
              },
              "findings": []
            },
            "policy": {
              "configured": {
                "enabled": false,
                "mode": "off",
                "capabilities": [
                  "records",
                  "graph",
                  "events"
                ],
                "contract_version": 2,
                "require_source_refs": true,
                "endpoint": "http://127.0.0.1:47124",
                "manual_url": "http://127.0.0.1:47124/utcp.json",
                "knowledge_browse_url": "http://127.0.0.1:5276",
                "auth_env": "AI_COLLAB_API_KEY",
                "timeout_seconds": 5,
                "max_result_bytes": 1048576,
                "cache_ttl_seconds": 60,
                "fallback": "local",
                "automation": {
                  "discovery_on_session_start": true,
                  "knowledge_recall": true,
                  "memory_recall": true,
                  "context_enrichment": true,
                  "notices_on_session_start": false,
                  "goals_sync": false,
                  "telemetry_on_maintenance": false,
                  "reporting_dispatch": true,
                  "judgment_dispatch": true,
                  "verification_execution": true
                }
              },
              "active": false,
              "effective_mode": "off",
              "effective_capabilities": []
            }
          },
          "output_hash": "a6df426290b4549a59eecaa0519ead9bcc50b7fcb25bd2185ff6047960f19ccb",
          "completed_at": "2026-07-15T16:04:32Z"
        },
        {
          "id": "notices",
          "action": "substrate.notices",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-15T16:04:32Z",
          "output": {
            "status": "disabled"
          },
          "output_hash": "38b904a1cf83df048360fb2480571b749fd98d57e11f1afdffb5a74a78166fea",
          "completed_at": "2026-07-15T16:04:32Z"
        },
        {
          "id": "goals",
          "action": "substrate.goals",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-15T16:04:32Z",
          "output": {
            "status": "disabled",
            "created": 0,
            "observed": 0,
            "results": []
          },
          "output_hash": "cdfd4de44a28140e686159f34f7b47975954c67e1d1efcef666e985acb136ed8",
          "completed_at": "2026-07-15T16:04:32Z"
        }
      ],
      "completed_at": "2026-07-15T16:04:32Z"
    },
    {
      "id": "WFR-093",
      "schema_version": "1.0",
      "workflow_id": "session.stop",
      "workflow_version": 1,
      "definition_hash": "0cef7bb3e28321be8f85375c154955a69310ce297e47de3f3b8dd48f77a2f07d",
      "plan_hash": "a5e1d77ac734217487fc418e29c7163f4e81178e25d171e70cd4c999d527d3e8",
      "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
      "inputs": {},
      "idempotency_key": "hook:Stop:019f6685-c0ce-7f31-9a9f-572f3e27d1bc",
      "status": "completed",
      "attempt": 1,
      "created_at": "2026-07-15T16:05:18Z",
      "updated_at": "2026-07-15T16:05:19Z",
      "receipts": [
        {
          "step_id": "state",
          "action": "state.consistency",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "5a1c6e5246defb1b6b6b90ff734db95bece2886b408ab112ed9b8e67222d5568",
          "completed_at": "2026-07-15T16:05:19Z"
        },
        {
          "step_id": "goals",
          "action": "substrate.goals",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "cdfd4de44a28140e686159f34f7b47975954c67e1d1efcef666e985acb136ed8",
          "completed_at": "2026-07-15T16:05:19Z"
        },
        {
          "step_id": "staleness",
          "action": "staleness.audit",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "1e81cb0ffd0a4d04626920a203b38d2d23a264cd43e807a85d375d69cae8a658",
          "completed_at": "2026-07-15T16:05:19Z"
        },
        {
          "step_id": "reflections",
          "action": "reflection.list",
          "input_hash": "0172e841ab4c13b3a4061f073f9d68a716ec87a8a5d52fde41823385e0582573",
          "output_hash": "c1b6b635c0bab21120657277f14ef6f839909875f307a3745fa48aee2bd6e449",
          "completed_at": "2026-07-15T16:05:19Z"
        },
        {
          "step_id": "bundle",
          "action": "reporting.bundle",
          "input_hash": "aed8ebb688dc3c085dd978d7c4120572173c3cb87e75919e4a937dcca6ef9457",
          "output_hash": "6413b750e5adf462056ec1108a5d692cc446676e520bee65af98f64bc3e9bd9b",
          "completed_at": "2026-07-15T16:05:19Z"
        },
        {
          "step_id": "delegated",
          "action": "reporting.delegate",
          "input_hash": "669197e524ce450fa066ad7ef7d9da00168b780083ca6a5d7094bca3097e8568",
          "output_hash": "e6085059f197def80ae95add1f328418107bea5436c9bd002530043646a3a95c",
          "completed_at": "2026-07-15T16:05:19Z"
        }
      ],
      "steps": [
        {
          "id": "state",
          "action": "state.consistency",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-15T16:05:18Z",
          "output": {
            "status": "ok",
            "repo_root": "D:\\Projects\\prd-plugin",
            "summary": {
              "errors": 0,
              "warnings": 0,
              "infos": 0
            },
            "findings": []
          },
          "output_hash": "5a1c6e5246defb1b6b6b90ff734db95bece2886b408ab112ed9b8e67222d5568",
          "completed_at": "2026-07-15T16:05:19Z"
        },
        {
          "id": "goals",
          "action": "substrate.goals",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-15T16:05:19Z",
          "output": {
            "status": "disabled",
            "created": 0,
            "observed": 0,
            "results": []
          },
          "output_hash": "cdfd4de44a28140e686159f34f7b47975954c67e1d1efcef666e985acb136ed8",
          "completed_at": "2026-07-15T16:05:19Z"
        },
        {
          "id": "staleness",
          "action": "staleness.audit",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-15T16:05:19Z",
          "output": {
            "status": "ok",
            "repo_root": "D:\\Projects\\prd-plugin",
            "counts": {
              "stale": 0
            },
            "stale": []
          },
          "output_hash": "1e81cb0ffd0a4d04626920a203b38d2d23a264cd43e807a85d375d69cae8a658",
          "completed_at": "2026-07-15T16:05:19Z"
        },
        {
          "id": "reflections",
          "action": "reflection.list",
          "status": "completed",
          "resolved_input_hash": "0172e841ab4c13b3a4061f073f9d68a716ec87a8a5d52fde41823385e0582573",
          "started_at": "2026-07-15T16:05:19Z",
          "output": {
            "enabled": false,
            "on_stop": true,
            "max_questions_per_stop": 5,
            "categories": [
              {
                "id": "behaviour_quality",
                "name": "Behaviour quality",
                "enabled": true,
                "question_count": 3
              },
              {
                "id": "harness_friction",
                "name": "Harness friction",
                "enabled": true,
                "question_count": 2
              }
            ],
            "questions": [
              {
                "id": "RFQ-001",
                "text": "Based on the work you just carried out, would you classify your behaviour as good? Answer yes or no and cite observable evidence.",
                "enabled": true,
                "category_id": "behaviour_quality",
                "category_name": "Behaviour quality",
                "effective_enabled": false
              },
              {
                "id": "RFQ-002",
                "text": "If you answered no, what could you do differently to correct your behaviour?",
                "enabled": true,
                "category_id": "behaviour_quality",
                "category_name": "Behaviour quality",
                "effective_enabled": false
              },
              {
                "id": "RFQ-003",
                "text": "Would another attempt using the identified good behaviours materially improve the outcome? Answer yes or no and state the next corrective action if yes.",
                "enabled": true,
                "category_id": "behaviour_quality",
                "category_name": "Behaviour quality",
                "effective_enabled": false
              },
              {
                "id": "RFQ-004",
                "text": "What harness friction points made this work more difficult?",
                "enabled": true,
                "category_id": "harness_friction",
                "category_name": "Harness friction",
                "effective_enabled": false
              },
              {
                "id": "RFQ-005",
                "text": "What up to three changes would most improve friction in the harness?",
                "enabled": true,
                "category_id": "harness_friction",
                "category_name": "Harness friction",
                "effective_enabled": false
              }
            ]
          },
          "output_hash": "c1b6b635c0bab21120657277f14ef6f839909875f307a3745fa48aee2bd6e449",
          "completed_at": "2026-07-15T16:05:19Z"
        },
        {
          "id": "bundle",
          "action": "reporting.bundle",
          "status": "completed",
          "resolved_input_hash": "aed8ebb688dc3c085dd978d7c4120572173c3cb87e75919e4a937dcca6ef9457",
          "started_at": "2026-07-15T16:05:19Z",
          "output": {
            "contract_version": 1,
            "task": "session_summary",
            "repo": "prd-plugin",
            "policy": {
              "enabled": false,
              "executor": "ai-collab",
              "contract_version": 1,
              "profile": "fast-capable",
              "tasks": [
                "report_summary",
                "session_summary",
                "wiki_synthesis",
                "triage_draft"
              ],
              "fallback": "main",
              "require_source_refs": true,
              "max_input_tokens": 12000,
              "max_output_tokens": 1500,
              "timeout_seconds": 30
            },
            "facts": {
              "requests_by_status": {
                "deferred": 1,
                "implemented": 80,
                "proposed": 1,
                "rejected": 1
              },
              "active_requests": [
                {
                  "id": "REQ-072",
                  "status": "proposed",
                  "severity": "low",
                  "summary": "opencode run-until-done: session.idle is a non-blocking notification, so the stop guard can't force continuation on opencode (currently degrades to a printed reminder, 0.5.95). Investigate whether opencode exposes any vetoable/continuation mechanism (a different event, a permission hook, or a 'continue' API) to enforce run-until-done, or accept the reminder as the permanent ceiling. Low priority — user rarely uses opencode."
                }
              ],
              "active_tracking": [],
              "open_health": [],
              "evidence_count": 104,
              "decision_count": 9
            },
            "findings": [],
            "source_refs": [
              ".prd_plugin/config.json",
              ".prd_plugin/state/decisions.json",
              ".prd_plugin/state/evidence.json",
              ".prd_plugin/state/health.json",
              ".prd_plugin/state/requests.json",
              ".prd_plugin/state/tracking.json",
              "REQ-072"
            ],
            "constraints": {
              "max_input_tokens": 12000,
              "max_output_tokens": 1500,
              "timeout_seconds": 30,
              "require_source_refs": true,
              "no_project_state_writes": true,
              "no_secrets_or_local_session_content": true
            }
          },
          "output_hash": "6413b750e5adf462056ec1108a5d692cc446676e520bee65af98f64bc3e9bd9b",
          "completed_at": "2026-07-15T16:05:19Z"
        },
        {
          "id": "delegated",
          "action": "reporting.delegate",
          "status": "completed",
          "resolved_input_hash": "669197e524ce450fa066ad7ef7d9da00168b780083ca6a5d7094bca3097e8568",
          "started_at": "2026-07-15T16:05:19Z",
          "output": {
            "status": "fallback",
            "action": "main",
            "reason": "disabled"
          },
          "output_hash": "e6085059f197def80ae95add1f328418107bea5436c9bd002530043646a3a95c",
          "completed_at": "2026-07-15T16:05:19Z"
        }
      ],
      "completed_at": "2026-07-15T16:05:19Z"
    },
    {
      "id": "WFR-094",
      "schema_version": "1.0",
      "workflow_id": "session.start",
      "workflow_version": 1,
      "definition_hash": "d0f98da02571e6dd27fec4aed92d3c82af9db75f8b90b997bf665635c7b7f6ca",
      "plan_hash": "b5072615ca3b7e9a3bd85d50d1f069d99ef2a9816b32c03a370745ed7a205536",
      "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
      "inputs": {},
      "idempotency_key": "hook:SessionStart:019f6687-03aa-70e1-b9ea-d1bc18cd1abf",
      "status": "completed",
      "attempt": 1,
      "created_at": "2026-07-15T16:05:55Z",
      "updated_at": "2026-07-15T16:05:56Z",
      "receipts": [
        {
          "step_id": "config",
          "action": "config.audit",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "3782ec2317c0c8ee7598634310a2804d8aae4735f557498f9d3b8fae7c45e1e5",
          "completed_at": "2026-07-15T16:05:55Z"
        },
        {
          "step_id": "services",
          "action": "services.audit",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "13dcc58bd528f3efa3e6e0fa0853a6eedc376f1f3685fbd4869cbb2b60382ee3",
          "completed_at": "2026-07-15T16:05:55Z"
        },
        {
          "step_id": "state",
          "action": "state.consistency",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "5a1c6e5246defb1b6b6b90ff734db95bece2886b408ab112ed9b8e67222d5568",
          "completed_at": "2026-07-15T16:05:55Z"
        },
        {
          "step_id": "status",
          "action": "state.query",
          "input_hash": "a15231a2142a2a9a85355a8b9cbbccffe01a9c9c2c2fd8c2bc2987cdc481564a",
          "output_hash": "8ba9f7d3cc6705af37de9e3324d1258e21ccacb5ab0b2d7b389ca08885e11187",
          "completed_at": "2026-07-15T16:05:56Z"
        },
        {
          "step_id": "substrate",
          "action": "substrate.preflight",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "a6df426290b4549a59eecaa0519ead9bcc50b7fcb25bd2185ff6047960f19ccb",
          "completed_at": "2026-07-15T16:05:56Z"
        },
        {
          "step_id": "notices",
          "action": "substrate.notices",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "38b904a1cf83df048360fb2480571b749fd98d57e11f1afdffb5a74a78166fea",
          "completed_at": "2026-07-15T16:05:56Z"
        },
        {
          "step_id": "goals",
          "action": "substrate.goals",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "cdfd4de44a28140e686159f34f7b47975954c67e1d1efcef666e985acb136ed8",
          "completed_at": "2026-07-15T16:05:56Z"
        }
      ],
      "steps": [
        {
          "id": "config",
          "action": "config.audit",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-15T16:05:55Z",
          "output": {
            "status": "ok",
            "summary": {
              "settings": 195,
              "mutable": 186,
              "read_only_or_managed": 9,
              "unclassified": 0,
              "unknown": 0,
              "invalid": 0,
              "missing_using_defaults": 0
            },
            "unclassified_keys": [],
            "unknown_keys": [],
            "invalid_values": [],
            "missing_using_defaults": []
          },
          "output_hash": "3782ec2317c0c8ee7598634310a2804d8aae4735f557498f9d3b8fae7c45e1e5",
          "completed_at": "2026-07-15T16:05:55Z"
        },
        {
          "id": "services",
          "action": "services.audit",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-15T16:05:55Z",
          "output": {
            "status": "ok",
            "summary": {
              "critical": 0,
              "high": 0,
              "medium": 0,
              "low": 0
            },
            "findings": []
          },
          "output_hash": "13dcc58bd528f3efa3e6e0fa0853a6eedc376f1f3685fbd4869cbb2b60382ee3",
          "completed_at": "2026-07-15T16:05:55Z"
        },
        {
          "id": "state",
          "action": "state.consistency",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-15T16:05:55Z",
          "output": {
            "status": "ok",
            "repo_root": "D:\\Projects\\prd-plugin",
            "summary": {
              "errors": 0,
              "warnings": 0,
              "infos": 0
            },
            "findings": []
          },
          "output_hash": "5a1c6e5246defb1b6b6b90ff734db95bece2886b408ab112ed9b8e67222d5568",
          "completed_at": "2026-07-15T16:05:55Z"
        },
        {
          "id": "status",
          "action": "state.query",
          "status": "completed",
          "resolved_input_hash": "a15231a2142a2a9a85355a8b9cbbccffe01a9c9c2c2fd8c2bc2987cdc481564a",
          "started_at": "2026-07-15T16:05:55Z",
          "output": {
            "repo_root": "D:\\Projects\\prd-plugin",
            "autonomy_level": "autonomous",
            "requests_by_status": {
              "deferred": 1,
              "implemented": 80,
              "proposed": 1,
              "rejected": 1
            },
            "active_tracking": [],
            "tracking_branches": [],
            "tracking_branch_counts": {},
            "tracking_branch_errors": [],
            "open_health": [],
            "stale_count": 0,
            "skill_usage": {
              "project-decision-policy": 1,
              "project-request-intake": 1,
              "project-test-driven-implementation": 1,
              "project-verification-before-completion": 1,
              "project-llm-wiki": 1
            },
            "wiki_backfill_pending": false,
            "version_update": null
          },
          "output_hash": "8ba9f7d3cc6705af37de9e3324d1258e21ccacb5ab0b2d7b389ca08885e11187",
          "completed_at": "2026-07-15T16:05:56Z"
        },
        {
          "id": "substrate",
          "action": "substrate.preflight",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-15T16:05:56Z",
          "output": {
            "status": "disabled",
            "services": {
              "status": "ok",
              "summary": {
                "critical": 0,
                "high": 0,
                "medium": 0,
                "low": 0
              },
              "findings": []
            },
            "policy": {
              "configured": {
                "enabled": false,
                "mode": "off",
                "capabilities": [
                  "records",
                  "graph",
                  "events"
                ],
                "contract_version": 2,
                "require_source_refs": true,
                "endpoint": "http://127.0.0.1:47124",
                "manual_url": "http://127.0.0.1:47124/utcp.json",
                "knowledge_browse_url": "http://127.0.0.1:5276",
                "auth_env": "AI_COLLAB_API_KEY",
                "timeout_seconds": 5,
                "max_result_bytes": 1048576,
                "cache_ttl_seconds": 60,
                "fallback": "local",
                "automation": {
                  "discovery_on_session_start": true,
                  "knowledge_recall": true,
                  "memory_recall": true,
                  "context_enrichment": true,
                  "notices_on_session_start": false,
                  "goals_sync": false,
                  "telemetry_on_maintenance": false,
                  "reporting_dispatch": true,
                  "judgment_dispatch": true,
                  "verification_execution": true
                }
              },
              "active": false,
              "effective_mode": "off",
              "effective_capabilities": []
            }
          },
          "output_hash": "a6df426290b4549a59eecaa0519ead9bcc50b7fcb25bd2185ff6047960f19ccb",
          "completed_at": "2026-07-15T16:05:56Z"
        },
        {
          "id": "notices",
          "action": "substrate.notices",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-15T16:05:56Z",
          "output": {
            "status": "disabled"
          },
          "output_hash": "38b904a1cf83df048360fb2480571b749fd98d57e11f1afdffb5a74a78166fea",
          "completed_at": "2026-07-15T16:05:56Z"
        },
        {
          "id": "goals",
          "action": "substrate.goals",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-15T16:05:56Z",
          "output": {
            "status": "disabled",
            "created": 0,
            "observed": 0,
            "results": []
          },
          "output_hash": "cdfd4de44a28140e686159f34f7b47975954c67e1d1efcef666e985acb136ed8",
          "completed_at": "2026-07-15T16:05:56Z"
        }
      ],
      "completed_at": "2026-07-15T16:05:56Z"
    },
    {
      "id": "WFR-095",
      "schema_version": "1.0",
      "workflow_id": "session.stop",
      "workflow_version": 1,
      "definition_hash": "0cef7bb3e28321be8f85375c154955a69310ce297e47de3f3b8dd48f77a2f07d",
      "plan_hash": "a5e1d77ac734217487fc418e29c7163f4e81178e25d171e70cd4c999d527d3e8",
      "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
      "inputs": {},
      "idempotency_key": "hook:Stop:019f6687-03aa-70e1-b9ea-d1bc18cd1abf",
      "status": "completed",
      "attempt": 1,
      "created_at": "2026-07-15T16:05:59Z",
      "updated_at": "2026-07-15T16:06:00Z",
      "receipts": [
        {
          "step_id": "state",
          "action": "state.consistency",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "5a1c6e5246defb1b6b6b90ff734db95bece2886b408ab112ed9b8e67222d5568",
          "completed_at": "2026-07-15T16:06:00Z"
        },
        {
          "step_id": "goals",
          "action": "substrate.goals",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "cdfd4de44a28140e686159f34f7b47975954c67e1d1efcef666e985acb136ed8",
          "completed_at": "2026-07-15T16:06:00Z"
        },
        {
          "step_id": "staleness",
          "action": "staleness.audit",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "1e81cb0ffd0a4d04626920a203b38d2d23a264cd43e807a85d375d69cae8a658",
          "completed_at": "2026-07-15T16:06:00Z"
        },
        {
          "step_id": "reflections",
          "action": "reflection.list",
          "input_hash": "0172e841ab4c13b3a4061f073f9d68a716ec87a8a5d52fde41823385e0582573",
          "output_hash": "c1b6b635c0bab21120657277f14ef6f839909875f307a3745fa48aee2bd6e449",
          "completed_at": "2026-07-15T16:06:00Z"
        },
        {
          "step_id": "bundle",
          "action": "reporting.bundle",
          "input_hash": "aed8ebb688dc3c085dd978d7c4120572173c3cb87e75919e4a937dcca6ef9457",
          "output_hash": "6413b750e5adf462056ec1108a5d692cc446676e520bee65af98f64bc3e9bd9b",
          "completed_at": "2026-07-15T16:06:00Z"
        },
        {
          "step_id": "delegated",
          "action": "reporting.delegate",
          "input_hash": "669197e524ce450fa066ad7ef7d9da00168b780083ca6a5d7094bca3097e8568",
          "output_hash": "e6085059f197def80ae95add1f328418107bea5436c9bd002530043646a3a95c",
          "completed_at": "2026-07-15T16:06:00Z"
        }
      ],
      "steps": [
        {
          "id": "state",
          "action": "state.consistency",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-15T16:05:59Z",
          "output": {
            "status": "ok",
            "repo_root": "D:\\Projects\\prd-plugin",
            "summary": {
              "errors": 0,
              "warnings": 0,
              "infos": 0
            },
            "findings": []
          },
          "output_hash": "5a1c6e5246defb1b6b6b90ff734db95bece2886b408ab112ed9b8e67222d5568",
          "completed_at": "2026-07-15T16:06:00Z"
        },
        {
          "id": "goals",
          "action": "substrate.goals",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-15T16:06:00Z",
          "output": {
            "status": "disabled",
            "created": 0,
            "observed": 0,
            "results": []
          },
          "output_hash": "cdfd4de44a28140e686159f34f7b47975954c67e1d1efcef666e985acb136ed8",
          "completed_at": "2026-07-15T16:06:00Z"
        },
        {
          "id": "staleness",
          "action": "staleness.audit",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-15T16:06:00Z",
          "output": {
            "status": "ok",
            "repo_root": "D:\\Projects\\prd-plugin",
            "counts": {
              "stale": 0
            },
            "stale": []
          },
          "output_hash": "1e81cb0ffd0a4d04626920a203b38d2d23a264cd43e807a85d375d69cae8a658",
          "completed_at": "2026-07-15T16:06:00Z"
        },
        {
          "id": "reflections",
          "action": "reflection.list",
          "status": "completed",
          "resolved_input_hash": "0172e841ab4c13b3a4061f073f9d68a716ec87a8a5d52fde41823385e0582573",
          "started_at": "2026-07-15T16:06:00Z",
          "output": {
            "enabled": false,
            "on_stop": true,
            "max_questions_per_stop": 5,
            "categories": [
              {
                "id": "behaviour_quality",
                "name": "Behaviour quality",
                "enabled": true,
                "question_count": 3
              },
              {
                "id": "harness_friction",
                "name": "Harness friction",
                "enabled": true,
                "question_count": 2
              }
            ],
            "questions": [
              {
                "id": "RFQ-001",
                "text": "Based on the work you just carried out, would you classify your behaviour as good? Answer yes or no and cite observable evidence.",
                "enabled": true,
                "category_id": "behaviour_quality",
                "category_name": "Behaviour quality",
                "effective_enabled": false
              },
              {
                "id": "RFQ-002",
                "text": "If you answered no, what could you do differently to correct your behaviour?",
                "enabled": true,
                "category_id": "behaviour_quality",
                "category_name": "Behaviour quality",
                "effective_enabled": false
              },
              {
                "id": "RFQ-003",
                "text": "Would another attempt using the identified good behaviours materially improve the outcome? Answer yes or no and state the next corrective action if yes.",
                "enabled": true,
                "category_id": "behaviour_quality",
                "category_name": "Behaviour quality",
                "effective_enabled": false
              },
              {
                "id": "RFQ-004",
                "text": "What harness friction points made this work more difficult?",
                "enabled": true,
                "category_id": "harness_friction",
                "category_name": "Harness friction",
                "effective_enabled": false
              },
              {
                "id": "RFQ-005",
                "text": "What up to three changes would most improve friction in the harness?",
                "enabled": true,
                "category_id": "harness_friction",
                "category_name": "Harness friction",
                "effective_enabled": false
              }
            ]
          },
          "output_hash": "c1b6b635c0bab21120657277f14ef6f839909875f307a3745fa48aee2bd6e449",
          "completed_at": "2026-07-15T16:06:00Z"
        },
        {
          "id": "bundle",
          "action": "reporting.bundle",
          "status": "completed",
          "resolved_input_hash": "aed8ebb688dc3c085dd978d7c4120572173c3cb87e75919e4a937dcca6ef9457",
          "started_at": "2026-07-15T16:06:00Z",
          "output": {
            "contract_version": 1,
            "task": "session_summary",
            "repo": "prd-plugin",
            "policy": {
              "enabled": false,
              "executor": "ai-collab",
              "contract_version": 1,
              "profile": "fast-capable",
              "tasks": [
                "report_summary",
                "session_summary",
                "wiki_synthesis",
                "triage_draft"
              ],
              "fallback": "main",
              "require_source_refs": true,
              "max_input_tokens": 12000,
              "max_output_tokens": 1500,
              "timeout_seconds": 30
            },
            "facts": {
              "requests_by_status": {
                "deferred": 1,
                "implemented": 80,
                "proposed": 1,
                "rejected": 1
              },
              "active_requests": [
                {
                  "id": "REQ-072",
                  "status": "proposed",
                  "severity": "low",
                  "summary": "opencode run-until-done: session.idle is a non-blocking notification, so the stop guard can't force continuation on opencode (currently degrades to a printed reminder, 0.5.95). Investigate whether opencode exposes any vetoable/continuation mechanism (a different event, a permission hook, or a 'continue' API) to enforce run-until-done, or accept the reminder as the permanent ceiling. Low priority — user rarely uses opencode."
                }
              ],
              "active_tracking": [],
              "open_health": [],
              "evidence_count": 104,
              "decision_count": 9
            },
            "findings": [],
            "source_refs": [
              ".prd_plugin/config.json",
              ".prd_plugin/state/decisions.json",
              ".prd_plugin/state/evidence.json",
              ".prd_plugin/state/health.json",
              ".prd_plugin/state/requests.json",
              ".prd_plugin/state/tracking.json",
              "REQ-072"
            ],
            "constraints": {
              "max_input_tokens": 12000,
              "max_output_tokens": 1500,
              "timeout_seconds": 30,
              "require_source_refs": true,
              "no_project_state_writes": true,
              "no_secrets_or_local_session_content": true
            }
          },
          "output_hash": "6413b750e5adf462056ec1108a5d692cc446676e520bee65af98f64bc3e9bd9b",
          "completed_at": "2026-07-15T16:06:00Z"
        },
        {
          "id": "delegated",
          "action": "reporting.delegate",
          "status": "completed",
          "resolved_input_hash": "669197e524ce450fa066ad7ef7d9da00168b780083ca6a5d7094bca3097e8568",
          "started_at": "2026-07-15T16:06:00Z",
          "output": {
            "status": "fallback",
            "action": "main",
            "reason": "disabled"
          },
          "output_hash": "e6085059f197def80ae95add1f328418107bea5436c9bd002530043646a3a95c",
          "completed_at": "2026-07-15T16:06:00Z"
        }
      ],
      "completed_at": "2026-07-15T16:06:00Z"
    },
    {
      "id": "WFR-096",
      "schema_version": "1.0",
      "workflow_id": "session.start",
      "workflow_version": 1,
      "definition_hash": "d0f98da02571e6dd27fec4aed92d3c82af9db75f8b90b997bf665635c7b7f6ca",
      "plan_hash": "b5072615ca3b7e9a3bd85d50d1f069d99ef2a9816b32c03a370745ed7a205536",
      "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
      "inputs": {},
      "idempotency_key": "hook:SessionStart:019f6687-5f4b-79c3-8ff0-6f2f7b3b58b1",
      "status": "completed",
      "attempt": 1,
      "created_at": "2026-07-15T16:06:17Z",
      "updated_at": "2026-07-15T16:06:18Z",
      "receipts": [
        {
          "step_id": "config",
          "action": "config.audit",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "3782ec2317c0c8ee7598634310a2804d8aae4735f557498f9d3b8fae7c45e1e5",
          "completed_at": "2026-07-15T16:06:17Z"
        },
        {
          "step_id": "services",
          "action": "services.audit",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "13dcc58bd528f3efa3e6e0fa0853a6eedc376f1f3685fbd4869cbb2b60382ee3",
          "completed_at": "2026-07-15T16:06:17Z"
        },
        {
          "step_id": "state",
          "action": "state.consistency",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "5a1c6e5246defb1b6b6b90ff734db95bece2886b408ab112ed9b8e67222d5568",
          "completed_at": "2026-07-15T16:06:18Z"
        },
        {
          "step_id": "status",
          "action": "state.query",
          "input_hash": "a15231a2142a2a9a85355a8b9cbbccffe01a9c9c2c2fd8c2bc2987cdc481564a",
          "output_hash": "8ba9f7d3cc6705af37de9e3324d1258e21ccacb5ab0b2d7b389ca08885e11187",
          "completed_at": "2026-07-15T16:06:18Z"
        },
        {
          "step_id": "substrate",
          "action": "substrate.preflight",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "a6df426290b4549a59eecaa0519ead9bcc50b7fcb25bd2185ff6047960f19ccb",
          "completed_at": "2026-07-15T16:06:18Z"
        },
        {
          "step_id": "notices",
          "action": "substrate.notices",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "38b904a1cf83df048360fb2480571b749fd98d57e11f1afdffb5a74a78166fea",
          "completed_at": "2026-07-15T16:06:18Z"
        },
        {
          "step_id": "goals",
          "action": "substrate.goals",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "cdfd4de44a28140e686159f34f7b47975954c67e1d1efcef666e985acb136ed8",
          "completed_at": "2026-07-15T16:06:18Z"
        }
      ],
      "steps": [
        {
          "id": "config",
          "action": "config.audit",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-15T16:06:17Z",
          "output": {
            "status": "ok",
            "summary": {
              "settings": 195,
              "mutable": 186,
              "read_only_or_managed": 9,
              "unclassified": 0,
              "unknown": 0,
              "invalid": 0,
              "missing_using_defaults": 0
            },
            "unclassified_keys": [],
            "unknown_keys": [],
            "invalid_values": [],
            "missing_using_defaults": []
          },
          "output_hash": "3782ec2317c0c8ee7598634310a2804d8aae4735f557498f9d3b8fae7c45e1e5",
          "completed_at": "2026-07-15T16:06:17Z"
        },
        {
          "id": "services",
          "action": "services.audit",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-15T16:06:17Z",
          "output": {
            "status": "ok",
            "summary": {
              "critical": 0,
              "high": 0,
              "medium": 0,
              "low": 0
            },
            "findings": []
          },
          "output_hash": "13dcc58bd528f3efa3e6e0fa0853a6eedc376f1f3685fbd4869cbb2b60382ee3",
          "completed_at": "2026-07-15T16:06:17Z"
        },
        {
          "id": "state",
          "action": "state.consistency",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-15T16:06:17Z",
          "output": {
            "status": "ok",
            "repo_root": "D:\\Projects\\prd-plugin",
            "summary": {
              "errors": 0,
              "warnings": 0,
              "infos": 0
            },
            "findings": []
          },
          "output_hash": "5a1c6e5246defb1b6b6b90ff734db95bece2886b408ab112ed9b8e67222d5568",
          "completed_at": "2026-07-15T16:06:18Z"
        },
        {
          "id": "status",
          "action": "state.query",
          "status": "completed",
          "resolved_input_hash": "a15231a2142a2a9a85355a8b9cbbccffe01a9c9c2c2fd8c2bc2987cdc481564a",
          "started_at": "2026-07-15T16:06:18Z",
          "output": {
            "repo_root": "D:\\Projects\\prd-plugin",
            "autonomy_level": "autonomous",
            "requests_by_status": {
              "deferred": 1,
              "implemented": 80,
              "proposed": 1,
              "rejected": 1
            },
            "active_tracking": [],
            "tracking_branches": [],
            "tracking_branch_counts": {},
            "tracking_branch_errors": [],
            "open_health": [],
            "stale_count": 0,
            "skill_usage": {
              "project-decision-policy": 1,
              "project-request-intake": 1,
              "project-test-driven-implementation": 1,
              "project-verification-before-completion": 1,
              "project-llm-wiki": 1
            },
            "wiki_backfill_pending": false,
            "version_update": null
          },
          "output_hash": "8ba9f7d3cc6705af37de9e3324d1258e21ccacb5ab0b2d7b389ca08885e11187",
          "completed_at": "2026-07-15T16:06:18Z"
        },
        {
          "id": "substrate",
          "action": "substrate.preflight",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-15T16:06:18Z",
          "output": {
            "status": "disabled",
            "services": {
              "status": "ok",
              "summary": {
                "critical": 0,
                "high": 0,
                "medium": 0,
                "low": 0
              },
              "findings": []
            },
            "policy": {
              "configured": {
                "enabled": false,
                "mode": "off",
                "capabilities": [
                  "records",
                  "graph",
                  "events"
                ],
                "contract_version": 2,
                "require_source_refs": true,
                "endpoint": "http://127.0.0.1:47124",
                "manual_url": "http://127.0.0.1:47124/utcp.json",
                "knowledge_browse_url": "http://127.0.0.1:5276",
                "auth_env": "AI_COLLAB_API_KEY",
                "timeout_seconds": 5,
                "max_result_bytes": 1048576,
                "cache_ttl_seconds": 60,
                "fallback": "local",
                "automation": {
                  "discovery_on_session_start": true,
                  "knowledge_recall": true,
                  "memory_recall": true,
                  "context_enrichment": true,
                  "notices_on_session_start": false,
                  "goals_sync": false,
                  "telemetry_on_maintenance": false,
                  "reporting_dispatch": true,
                  "judgment_dispatch": true,
                  "verification_execution": true
                }
              },
              "active": false,
              "effective_mode": "off",
              "effective_capabilities": []
            }
          },
          "output_hash": "a6df426290b4549a59eecaa0519ead9bcc50b7fcb25bd2185ff6047960f19ccb",
          "completed_at": "2026-07-15T16:06:18Z"
        },
        {
          "id": "notices",
          "action": "substrate.notices",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-15T16:06:18Z",
          "output": {
            "status": "disabled"
          },
          "output_hash": "38b904a1cf83df048360fb2480571b749fd98d57e11f1afdffb5a74a78166fea",
          "completed_at": "2026-07-15T16:06:18Z"
        },
        {
          "id": "goals",
          "action": "substrate.goals",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-15T16:06:18Z",
          "output": {
            "status": "disabled",
            "created": 0,
            "observed": 0,
            "results": []
          },
          "output_hash": "cdfd4de44a28140e686159f34f7b47975954c67e1d1efcef666e985acb136ed8",
          "completed_at": "2026-07-15T16:06:18Z"
        }
      ],
      "completed_at": "2026-07-15T16:06:18Z"
    },
    {
      "id": "WFR-097",
      "schema_version": "1.0",
      "workflow_id": "session.stop",
      "workflow_version": 1,
      "definition_hash": "0cef7bb3e28321be8f85375c154955a69310ce297e47de3f3b8dd48f77a2f07d",
      "plan_hash": "a5e1d77ac734217487fc418e29c7163f4e81178e25d171e70cd4c999d527d3e8",
      "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
      "inputs": {},
      "idempotency_key": "hook:Stop:019f6687-5f4b-79c3-8ff0-6f2f7b3b58b1",
      "status": "completed",
      "attempt": 1,
      "created_at": "2026-07-15T16:06:21Z",
      "updated_at": "2026-07-15T16:06:22Z",
      "receipts": [
        {
          "step_id": "state",
          "action": "state.consistency",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "5a1c6e5246defb1b6b6b90ff734db95bece2886b408ab112ed9b8e67222d5568",
          "completed_at": "2026-07-15T16:06:22Z"
        },
        {
          "step_id": "goals",
          "action": "substrate.goals",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "cdfd4de44a28140e686159f34f7b47975954c67e1d1efcef666e985acb136ed8",
          "completed_at": "2026-07-15T16:06:22Z"
        },
        {
          "step_id": "staleness",
          "action": "staleness.audit",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "1e81cb0ffd0a4d04626920a203b38d2d23a264cd43e807a85d375d69cae8a658",
          "completed_at": "2026-07-15T16:06:22Z"
        },
        {
          "step_id": "reflections",
          "action": "reflection.list",
          "input_hash": "0172e841ab4c13b3a4061f073f9d68a716ec87a8a5d52fde41823385e0582573",
          "output_hash": "c1b6b635c0bab21120657277f14ef6f839909875f307a3745fa48aee2bd6e449",
          "completed_at": "2026-07-15T16:06:22Z"
        },
        {
          "step_id": "bundle",
          "action": "reporting.bundle",
          "input_hash": "aed8ebb688dc3c085dd978d7c4120572173c3cb87e75919e4a937dcca6ef9457",
          "output_hash": "6413b750e5adf462056ec1108a5d692cc446676e520bee65af98f64bc3e9bd9b",
          "completed_at": "2026-07-15T16:06:22Z"
        },
        {
          "step_id": "delegated",
          "action": "reporting.delegate",
          "input_hash": "669197e524ce450fa066ad7ef7d9da00168b780083ca6a5d7094bca3097e8568",
          "output_hash": "e6085059f197def80ae95add1f328418107bea5436c9bd002530043646a3a95c",
          "completed_at": "2026-07-15T16:06:22Z"
        }
      ],
      "steps": [
        {
          "id": "state",
          "action": "state.consistency",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-15T16:06:21Z",
          "output": {
            "status": "ok",
            "repo_root": "D:\\Projects\\prd-plugin",
            "summary": {
              "errors": 0,
              "warnings": 0,
              "infos": 0
            },
            "findings": []
          },
          "output_hash": "5a1c6e5246defb1b6b6b90ff734db95bece2886b408ab112ed9b8e67222d5568",
          "completed_at": "2026-07-15T16:06:22Z"
        },
        {
          "id": "goals",
          "action": "substrate.goals",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-15T16:06:22Z",
          "output": {
            "status": "disabled",
            "created": 0,
            "observed": 0,
            "results": []
          },
          "output_hash": "cdfd4de44a28140e686159f34f7b47975954c67e1d1efcef666e985acb136ed8",
          "completed_at": "2026-07-15T16:06:22Z"
        },
        {
          "id": "staleness",
          "action": "staleness.audit",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-15T16:06:22Z",
          "output": {
            "status": "ok",
            "repo_root": "D:\\Projects\\prd-plugin",
            "counts": {
              "stale": 0
            },
            "stale": []
          },
          "output_hash": "1e81cb0ffd0a4d04626920a203b38d2d23a264cd43e807a85d375d69cae8a658",
          "completed_at": "2026-07-15T16:06:22Z"
        },
        {
          "id": "reflections",
          "action": "reflection.list",
          "status": "completed",
          "resolved_input_hash": "0172e841ab4c13b3a4061f073f9d68a716ec87a8a5d52fde41823385e0582573",
          "started_at": "2026-07-15T16:06:22Z",
          "output": {
            "enabled": false,
            "on_stop": true,
            "max_questions_per_stop": 5,
            "categories": [
              {
                "id": "behaviour_quality",
                "name": "Behaviour quality",
                "enabled": true,
                "question_count": 3
              },
              {
                "id": "harness_friction",
                "name": "Harness friction",
                "enabled": true,
                "question_count": 2
              }
            ],
            "questions": [
              {
                "id": "RFQ-001",
                "text": "Based on the work you just carried out, would you classify your behaviour as good? Answer yes or no and cite observable evidence.",
                "enabled": true,
                "category_id": "behaviour_quality",
                "category_name": "Behaviour quality",
                "effective_enabled": false
              },
              {
                "id": "RFQ-002",
                "text": "If you answered no, what could you do differently to correct your behaviour?",
                "enabled": true,
                "category_id": "behaviour_quality",
                "category_name": "Behaviour quality",
                "effective_enabled": false
              },
              {
                "id": "RFQ-003",
                "text": "Would another attempt using the identified good behaviours materially improve the outcome? Answer yes or no and state the next corrective action if yes.",
                "enabled": true,
                "category_id": "behaviour_quality",
                "category_name": "Behaviour quality",
                "effective_enabled": false
              },
              {
                "id": "RFQ-004",
                "text": "What harness friction points made this work more difficult?",
                "enabled": true,
                "category_id": "harness_friction",
                "category_name": "Harness friction",
                "effective_enabled": false
              },
              {
                "id": "RFQ-005",
                "text": "What up to three changes would most improve friction in the harness?",
                "enabled": true,
                "category_id": "harness_friction",
                "category_name": "Harness friction",
                "effective_enabled": false
              }
            ]
          },
          "output_hash": "c1b6b635c0bab21120657277f14ef6f839909875f307a3745fa48aee2bd6e449",
          "completed_at": "2026-07-15T16:06:22Z"
        },
        {
          "id": "bundle",
          "action": "reporting.bundle",
          "status": "completed",
          "resolved_input_hash": "aed8ebb688dc3c085dd978d7c4120572173c3cb87e75919e4a937dcca6ef9457",
          "started_at": "2026-07-15T16:06:22Z",
          "output": {
            "contract_version": 1,
            "task": "session_summary",
            "repo": "prd-plugin",
            "policy": {
              "enabled": false,
              "executor": "ai-collab",
              "contract_version": 1,
              "profile": "fast-capable",
              "tasks": [
                "report_summary",
                "session_summary",
                "wiki_synthesis",
                "triage_draft"
              ],
              "fallback": "main",
              "require_source_refs": true,
              "max_input_tokens": 12000,
              "max_output_tokens": 1500,
              "timeout_seconds": 30
            },
            "facts": {
              "requests_by_status": {
                "deferred": 1,
                "implemented": 80,
                "proposed": 1,
                "rejected": 1
              },
              "active_requests": [
                {
                  "id": "REQ-072",
                  "status": "proposed",
                  "severity": "low",
                  "summary": "opencode run-until-done: session.idle is a non-blocking notification, so the stop guard can't force continuation on opencode (currently degrades to a printed reminder, 0.5.95). Investigate whether opencode exposes any vetoable/continuation mechanism (a different event, a permission hook, or a 'continue' API) to enforce run-until-done, or accept the reminder as the permanent ceiling. Low priority — user rarely uses opencode."
                }
              ],
              "active_tracking": [],
              "open_health": [],
              "evidence_count": 104,
              "decision_count": 9
            },
            "findings": [],
            "source_refs": [
              ".prd_plugin/config.json",
              ".prd_plugin/state/decisions.json",
              ".prd_plugin/state/evidence.json",
              ".prd_plugin/state/health.json",
              ".prd_plugin/state/requests.json",
              ".prd_plugin/state/tracking.json",
              "REQ-072"
            ],
            "constraints": {
              "max_input_tokens": 12000,
              "max_output_tokens": 1500,
              "timeout_seconds": 30,
              "require_source_refs": true,
              "no_project_state_writes": true,
              "no_secrets_or_local_session_content": true
            }
          },
          "output_hash": "6413b750e5adf462056ec1108a5d692cc446676e520bee65af98f64bc3e9bd9b",
          "completed_at": "2026-07-15T16:06:22Z"
        },
        {
          "id": "delegated",
          "action": "reporting.delegate",
          "status": "completed",
          "resolved_input_hash": "669197e524ce450fa066ad7ef7d9da00168b780083ca6a5d7094bca3097e8568",
          "started_at": "2026-07-15T16:06:22Z",
          "output": {
            "status": "fallback",
            "action": "main",
            "reason": "disabled"
          },
          "output_hash": "e6085059f197def80ae95add1f328418107bea5436c9bd002530043646a3a95c",
          "completed_at": "2026-07-15T16:06:22Z"
        }
      ],
      "completed_at": "2026-07-15T16:06:22Z"
    },
    {
      "id": "WFR-098",
      "schema_version": "1.0",
      "workflow_id": "session.start",
      "workflow_version": 1,
      "definition_hash": "d0f98da02571e6dd27fec4aed92d3c82af9db75f8b90b997bf665635c7b7f6ca",
      "plan_hash": "b5072615ca3b7e9a3bd85d50d1f069d99ef2a9816b32c03a370745ed7a205536",
      "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
      "inputs": {},
      "idempotency_key": "hook:SessionStart:019f668c-2a6b-7443-87ef-33bf7d414209",
      "status": "completed",
      "attempt": 1,
      "created_at": "2026-07-15T16:11:31Z",
      "updated_at": "2026-07-15T16:11:32Z",
      "receipts": [
        {
          "step_id": "config",
          "action": "config.audit",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "3782ec2317c0c8ee7598634310a2804d8aae4735f557498f9d3b8fae7c45e1e5",
          "completed_at": "2026-07-15T16:11:31Z"
        },
        {
          "step_id": "services",
          "action": "services.audit",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "13dcc58bd528f3efa3e6e0fa0853a6eedc376f1f3685fbd4869cbb2b60382ee3",
          "completed_at": "2026-07-15T16:11:31Z"
        },
        {
          "step_id": "state",
          "action": "state.consistency",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "5a1c6e5246defb1b6b6b90ff734db95bece2886b408ab112ed9b8e67222d5568",
          "completed_at": "2026-07-15T16:11:32Z"
        },
        {
          "step_id": "status",
          "action": "state.query",
          "input_hash": "a15231a2142a2a9a85355a8b9cbbccffe01a9c9c2c2fd8c2bc2987cdc481564a",
          "output_hash": "8ba9f7d3cc6705af37de9e3324d1258e21ccacb5ab0b2d7b389ca08885e11187",
          "completed_at": "2026-07-15T16:11:32Z"
        },
        {
          "step_id": "substrate",
          "action": "substrate.preflight",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "a6df426290b4549a59eecaa0519ead9bcc50b7fcb25bd2185ff6047960f19ccb",
          "completed_at": "2026-07-15T16:11:32Z"
        },
        {
          "step_id": "notices",
          "action": "substrate.notices",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "38b904a1cf83df048360fb2480571b749fd98d57e11f1afdffb5a74a78166fea",
          "completed_at": "2026-07-15T16:11:32Z"
        },
        {
          "step_id": "goals",
          "action": "substrate.goals",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "cdfd4de44a28140e686159f34f7b47975954c67e1d1efcef666e985acb136ed8",
          "completed_at": "2026-07-15T16:11:32Z"
        }
      ],
      "steps": [
        {
          "id": "config",
          "action": "config.audit",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-15T16:11:31Z",
          "output": {
            "status": "ok",
            "summary": {
              "settings": 195,
              "mutable": 186,
              "read_only_or_managed": 9,
              "unclassified": 0,
              "unknown": 0,
              "invalid": 0,
              "missing_using_defaults": 0
            },
            "unclassified_keys": [],
            "unknown_keys": [],
            "invalid_values": [],
            "missing_using_defaults": []
          },
          "output_hash": "3782ec2317c0c8ee7598634310a2804d8aae4735f557498f9d3b8fae7c45e1e5",
          "completed_at": "2026-07-15T16:11:31Z"
        },
        {
          "id": "services",
          "action": "services.audit",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-15T16:11:31Z",
          "output": {
            "status": "ok",
            "summary": {
              "critical": 0,
              "high": 0,
              "medium": 0,
              "low": 0
            },
            "findings": []
          },
          "output_hash": "13dcc58bd528f3efa3e6e0fa0853a6eedc376f1f3685fbd4869cbb2b60382ee3",
          "completed_at": "2026-07-15T16:11:31Z"
        },
        {
          "id": "state",
          "action": "state.consistency",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-15T16:11:31Z",
          "output": {
            "status": "ok",
            "repo_root": "D:\\Projects\\prd-plugin",
            "summary": {
              "errors": 0,
              "warnings": 0,
              "infos": 0
            },
            "findings": []
          },
          "output_hash": "5a1c6e5246defb1b6b6b90ff734db95bece2886b408ab112ed9b8e67222d5568",
          "completed_at": "2026-07-15T16:11:32Z"
        },
        {
          "id": "status",
          "action": "state.query",
          "status": "completed",
          "resolved_input_hash": "a15231a2142a2a9a85355a8b9cbbccffe01a9c9c2c2fd8c2bc2987cdc481564a",
          "started_at": "2026-07-15T16:11:32Z",
          "output": {
            "repo_root": "D:\\Projects\\prd-plugin",
            "autonomy_level": "autonomous",
            "requests_by_status": {
              "deferred": 1,
              "implemented": 80,
              "proposed": 1,
              "rejected": 1
            },
            "active_tracking": [],
            "tracking_branches": [],
            "tracking_branch_counts": {},
            "tracking_branch_errors": [],
            "open_health": [],
            "stale_count": 0,
            "skill_usage": {
              "project-decision-policy": 1,
              "project-request-intake": 1,
              "project-test-driven-implementation": 1,
              "project-verification-before-completion": 1,
              "project-llm-wiki": 1
            },
            "wiki_backfill_pending": false,
            "version_update": null
          },
          "output_hash": "8ba9f7d3cc6705af37de9e3324d1258e21ccacb5ab0b2d7b389ca08885e11187",
          "completed_at": "2026-07-15T16:11:32Z"
        },
        {
          "id": "substrate",
          "action": "substrate.preflight",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-15T16:11:32Z",
          "output": {
            "status": "disabled",
            "services": {
              "status": "ok",
              "summary": {
                "critical": 0,
                "high": 0,
                "medium": 0,
                "low": 0
              },
              "findings": []
            },
            "policy": {
              "configured": {
                "enabled": false,
                "mode": "off",
                "capabilities": [
                  "records",
                  "graph",
                  "events"
                ],
                "contract_version": 2,
                "require_source_refs": true,
                "endpoint": "http://127.0.0.1:47124",
                "manual_url": "http://127.0.0.1:47124/utcp.json",
                "knowledge_browse_url": "http://127.0.0.1:5276",
                "auth_env": "AI_COLLAB_API_KEY",
                "timeout_seconds": 5,
                "max_result_bytes": 1048576,
                "cache_ttl_seconds": 60,
                "fallback": "local",
                "automation": {
                  "discovery_on_session_start": true,
                  "knowledge_recall": true,
                  "memory_recall": true,
                  "context_enrichment": true,
                  "notices_on_session_start": false,
                  "goals_sync": false,
                  "telemetry_on_maintenance": false,
                  "reporting_dispatch": true,
                  "judgment_dispatch": true,
                  "verification_execution": true
                }
              },
              "active": false,
              "effective_mode": "off",
              "effective_capabilities": []
            }
          },
          "output_hash": "a6df426290b4549a59eecaa0519ead9bcc50b7fcb25bd2185ff6047960f19ccb",
          "completed_at": "2026-07-15T16:11:32Z"
        },
        {
          "id": "notices",
          "action": "substrate.notices",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-15T16:11:32Z",
          "output": {
            "status": "disabled"
          },
          "output_hash": "38b904a1cf83df048360fb2480571b749fd98d57e11f1afdffb5a74a78166fea",
          "completed_at": "2026-07-15T16:11:32Z"
        },
        {
          "id": "goals",
          "action": "substrate.goals",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-15T16:11:32Z",
          "output": {
            "status": "disabled",
            "created": 0,
            "observed": 0,
            "results": []
          },
          "output_hash": "cdfd4de44a28140e686159f34f7b47975954c67e1d1efcef666e985acb136ed8",
          "completed_at": "2026-07-15T16:11:32Z"
        }
      ],
      "completed_at": "2026-07-15T16:11:32Z"
    },
    {
      "id": "WFR-099",
      "schema_version": "1.0",
      "workflow_id": "request.intake",
      "workflow_version": 1,
      "definition_hash": "b61272f54c5d4778a27afe601feaae39057f75fac2c289858b6caf5f3b2a4fbe",
      "plan_hash": "6aa610dda504012ff50a6b46c0e129d7d02ad16d62055c2e42a0d68d85f37ffc",
      "input_hash": "598fccfa87d6f5bf0a4f0d4ab505cf9d1ade749817283515d22beda476799ad4",
      "inputs": {
        "summary": "Canonicalize PRD Plugin tools as one complete UTCP-first catalog with MCP generated through the official bridge",
        "request_type": "bug",
        "severity": "high",
        "scope": "upstream",
        "rationale": "Fresh reproduction on 2026-07-15 finds 45 independently defined MCP tools, 12 tools in the generated UTCP manual, and 11 tools in checked-in utcp.json. This contradicts the intended module architecture and the implemented conclusion in REQ-082 that the split is correct. The duplicated catalogs drift and omit mutation-capable tools from the canonical UTCP contract.",
        "affected_areas": [
          "mcp/server.cjs",
          "scripts/prd_tools.py",
          "utcp.json",
          "package.json",
          "REQ-082",
          "ARCH-DEC-019"
        ],
        "expected_behavior": "PRD Plugin publishes one complete official UTCP manual as the repo-owned source of truth; MCP exposure is generated through the official UTCP MCP bridge, while authorization, validation, and mutation guards remain inside handlers and declared permission metadata."
      },
      "idempotency_key": "alice-utcp-mcp-canonical-catalog-20260715",
      "status": "blocked",
      "attempt": 1,
      "created_at": "2026-07-15T16:17:18Z",
      "updated_at": "2026-07-15T16:17:18Z",
      "receipts": [],
      "steps": [
        {
          "id": "create",
          "action": "state.mutate",
          "status": "outcome_unknown",
          "resolved_input_hash": "44326477b7e4bf9f26f37418be9e7e5e6cfd255a4f36ff8dc59cb0fa5999ef8d",
          "started_at": "2026-07-15T16:17:18Z",
          "execution_token": "76764ab2a90c140cd5eb018fa5cb9f906f7d2668d33a400d523970e22f408ce1"
        },
        {
          "id": "confirm",
          "action": "state.query",
          "status": "pending"
        }
      ],
      "error": {
        "type": "ActionError",
        "message": "D:\\Projects\\prd-plugin\\mcp\\server.cjs:2201\n    throw new ToolError(\n    ^\n\nError: prd_file_request: parallel worker sessions cannot mutate canonical state or allocate IDs. Record progress with prd_update_tracking_branch on the assigned DBR; the lead performs canonical writes and promotion.\n    at enforceWorkerWriteBoundary (D:\\Projects\\prd-plugin\\mcp\\server.cjs:2201:11)\n    at Object.callTool (D:\\Projects\\prd-plugin\\mcp\\server.cjs:2239:3)\n    at [eval]:1:44\n    at runScriptInThisContext (node:internal/vm:219:10)\n    at node:internal/process/execution:483:12\n    at [eval]-wrapper:6:24\n    at runScriptInContext (node:internal/process/execution:481:60)\n    at evalFunction (node:internal/process/execution:315:30)\n    at evalTypeScript (node:internal/process/execution:327:3)\n    at node:internal/main/eval_string:71:3\n\nNode.js v26.3.0"
      }
    },
    {
      "id": "WFR-100",
      "schema_version": "1.0",
      "workflow_id": "session.stop",
      "workflow_version": 1,
      "definition_hash": "0cef7bb3e28321be8f85375c154955a69310ce297e47de3f3b8dd48f77a2f07d",
      "plan_hash": "a5e1d77ac734217487fc418e29c7163f4e81178e25d171e70cd4c999d527d3e8",
      "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
      "inputs": {},
      "idempotency_key": "hook:Stop:019f668c-2a6b-7443-87ef-33bf7d414209",
      "status": "completed",
      "attempt": 1,
      "created_at": "2026-07-15T16:18:25Z",
      "updated_at": "2026-07-15T16:18:25Z",
      "receipts": [
        {
          "step_id": "state",
          "action": "state.consistency",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "5a1c6e5246defb1b6b6b90ff734db95bece2886b408ab112ed9b8e67222d5568",
          "completed_at": "2026-07-15T16:18:25Z"
        },
        {
          "step_id": "goals",
          "action": "substrate.goals",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "cdfd4de44a28140e686159f34f7b47975954c67e1d1efcef666e985acb136ed8",
          "completed_at": "2026-07-15T16:18:25Z"
        },
        {
          "step_id": "staleness",
          "action": "staleness.audit",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "1e81cb0ffd0a4d04626920a203b38d2d23a264cd43e807a85d375d69cae8a658",
          "completed_at": "2026-07-15T16:18:25Z"
        },
        {
          "step_id": "reflections",
          "action": "reflection.list",
          "input_hash": "0172e841ab4c13b3a4061f073f9d68a716ec87a8a5d52fde41823385e0582573",
          "output_hash": "c1b6b635c0bab21120657277f14ef6f839909875f307a3745fa48aee2bd6e449",
          "completed_at": "2026-07-15T16:18:25Z"
        },
        {
          "step_id": "bundle",
          "action": "reporting.bundle",
          "input_hash": "aed8ebb688dc3c085dd978d7c4120572173c3cb87e75919e4a937dcca6ef9457",
          "output_hash": "6413b750e5adf462056ec1108a5d692cc446676e520bee65af98f64bc3e9bd9b",
          "completed_at": "2026-07-15T16:18:25Z"
        },
        {
          "step_id": "delegated",
          "action": "reporting.delegate",
          "input_hash": "669197e524ce450fa066ad7ef7d9da00168b780083ca6a5d7094bca3097e8568",
          "output_hash": "e6085059f197def80ae95add1f328418107bea5436c9bd002530043646a3a95c",
          "completed_at": "2026-07-15T16:18:25Z"
        }
      ],
      "steps": [
        {
          "id": "state",
          "action": "state.consistency",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-15T16:18:25Z",
          "output": {
            "status": "ok",
            "repo_root": "D:\\Projects\\prd-plugin",
            "summary": {
              "errors": 0,
              "warnings": 0,
              "infos": 0
            },
            "findings": []
          },
          "output_hash": "5a1c6e5246defb1b6b6b90ff734db95bece2886b408ab112ed9b8e67222d5568",
          "completed_at": "2026-07-15T16:18:25Z"
        },
        {
          "id": "goals",
          "action": "substrate.goals",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-15T16:18:25Z",
          "output": {
            "status": "disabled",
            "created": 0,
            "observed": 0,
            "results": []
          },
          "output_hash": "cdfd4de44a28140e686159f34f7b47975954c67e1d1efcef666e985acb136ed8",
          "completed_at": "2026-07-15T16:18:25Z"
        },
        {
          "id": "staleness",
          "action": "staleness.audit",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-15T16:18:25Z",
          "output": {
            "status": "ok",
            "repo_root": "D:\\Projects\\prd-plugin",
            "counts": {
              "stale": 0
            },
            "stale": []
          },
          "output_hash": "1e81cb0ffd0a4d04626920a203b38d2d23a264cd43e807a85d375d69cae8a658",
          "completed_at": "2026-07-15T16:18:25Z"
        },
        {
          "id": "reflections",
          "action": "reflection.list",
          "status": "completed",
          "resolved_input_hash": "0172e841ab4c13b3a4061f073f9d68a716ec87a8a5d52fde41823385e0582573",
          "started_at": "2026-07-15T16:18:25Z",
          "output": {
            "enabled": false,
            "on_stop": true,
            "max_questions_per_stop": 5,
            "categories": [
              {
                "id": "behaviour_quality",
                "name": "Behaviour quality",
                "enabled": true,
                "question_count": 3
              },
              {
                "id": "harness_friction",
                "name": "Harness friction",
                "enabled": true,
                "question_count": 2
              }
            ],
            "questions": [
              {
                "id": "RFQ-001",
                "text": "Based on the work you just carried out, would you classify your behaviour as good? Answer yes or no and cite observable evidence.",
                "enabled": true,
                "category_id": "behaviour_quality",
                "category_name": "Behaviour quality",
                "effective_enabled": false
              },
              {
                "id": "RFQ-002",
                "text": "If you answered no, what could you do differently to correct your behaviour?",
                "enabled": true,
                "category_id": "behaviour_quality",
                "category_name": "Behaviour quality",
                "effective_enabled": false
              },
              {
                "id": "RFQ-003",
                "text": "Would another attempt using the identified good behaviours materially improve the outcome? Answer yes or no and state the next corrective action if yes.",
                "enabled": true,
                "category_id": "behaviour_quality",
                "category_name": "Behaviour quality",
                "effective_enabled": false
              },
              {
                "id": "RFQ-004",
                "text": "What harness friction points made this work more difficult?",
                "enabled": true,
                "category_id": "harness_friction",
                "category_name": "Harness friction",
                "effective_enabled": false
              },
              {
                "id": "RFQ-005",
                "text": "What up to three changes would most improve friction in the harness?",
                "enabled": true,
                "category_id": "harness_friction",
                "category_name": "Harness friction",
                "effective_enabled": false
              }
            ]
          },
          "output_hash": "c1b6b635c0bab21120657277f14ef6f839909875f307a3745fa48aee2bd6e449",
          "completed_at": "2026-07-15T16:18:25Z"
        },
        {
          "id": "bundle",
          "action": "reporting.bundle",
          "status": "completed",
          "resolved_input_hash": "aed8ebb688dc3c085dd978d7c4120572173c3cb87e75919e4a937dcca6ef9457",
          "started_at": "2026-07-15T16:18:25Z",
          "output": {
            "contract_version": 1,
            "task": "session_summary",
            "repo": "prd-plugin",
            "policy": {
              "enabled": false,
              "executor": "ai-collab",
              "contract_version": 1,
              "profile": "fast-capable",
              "tasks": [
                "report_summary",
                "session_summary",
                "wiki_synthesis",
                "triage_draft"
              ],
              "fallback": "main",
              "require_source_refs": true,
              "max_input_tokens": 12000,
              "max_output_tokens": 1500,
              "timeout_seconds": 30
            },
            "facts": {
              "requests_by_status": {
                "deferred": 1,
                "implemented": 80,
                "proposed": 1,
                "rejected": 1
              },
              "active_requests": [
                {
                  "id": "REQ-072",
                  "status": "proposed",
                  "severity": "low",
                  "summary": "opencode run-until-done: session.idle is a non-blocking notification, so the stop guard can't force continuation on opencode (currently degrades to a printed reminder, 0.5.95). Investigate whether opencode exposes any vetoable/continuation mechanism (a different event, a permission hook, or a 'continue' API) to enforce run-until-done, or accept the reminder as the permanent ceiling. Low priority — user rarely uses opencode."
                }
              ],
              "active_tracking": [],
              "open_health": [],
              "evidence_count": 104,
              "decision_count": 9
            },
            "findings": [],
            "source_refs": [
              ".prd_plugin/config.json",
              ".prd_plugin/state/decisions.json",
              ".prd_plugin/state/evidence.json",
              ".prd_plugin/state/health.json",
              ".prd_plugin/state/requests.json",
              ".prd_plugin/state/tracking.json",
              "REQ-072"
            ],
            "constraints": {
              "max_input_tokens": 12000,
              "max_output_tokens": 1500,
              "timeout_seconds": 30,
              "require_source_refs": true,
              "no_project_state_writes": true,
              "no_secrets_or_local_session_content": true
            }
          },
          "output_hash": "6413b750e5adf462056ec1108a5d692cc446676e520bee65af98f64bc3e9bd9b",
          "completed_at": "2026-07-15T16:18:25Z"
        },
        {
          "id": "delegated",
          "action": "reporting.delegate",
          "status": "completed",
          "resolved_input_hash": "669197e524ce450fa066ad7ef7d9da00168b780083ca6a5d7094bca3097e8568",
          "started_at": "2026-07-15T16:18:25Z",
          "output": {
            "status": "fallback",
            "action": "main",
            "reason": "disabled"
          },
          "output_hash": "e6085059f197def80ae95add1f328418107bea5436c9bd002530043646a3a95c",
          "completed_at": "2026-07-15T16:18:25Z"
        }
      ],
      "completed_at": "2026-07-15T16:18:25Z"
    },
    {
      "id": "WFR-101",
      "schema_version": "1.0",
      "workflow_id": "session.start",
      "workflow_version": 1,
      "definition_hash": "d0f98da02571e6dd27fec4aed92d3c82af9db75f8b90b997bf665635c7b7f6ca",
      "plan_hash": "b5072615ca3b7e9a3bd85d50d1f069d99ef2a9816b32c03a370745ed7a205536",
      "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
      "inputs": {},
      "idempotency_key": "hook:SessionStart:019f6694-ce4d-7e03-a3f6-05d0d9b9b06a",
      "status": "completed",
      "attempt": 1,
      "created_at": "2026-07-15T16:20:58Z",
      "updated_at": "2026-07-15T16:20:59Z",
      "receipts": [
        {
          "step_id": "config",
          "action": "config.audit",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "3782ec2317c0c8ee7598634310a2804d8aae4735f557498f9d3b8fae7c45e1e5",
          "completed_at": "2026-07-15T16:20:58Z"
        },
        {
          "step_id": "services",
          "action": "services.audit",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "13dcc58bd528f3efa3e6e0fa0853a6eedc376f1f3685fbd4869cbb2b60382ee3",
          "completed_at": "2026-07-15T16:20:58Z"
        },
        {
          "step_id": "state",
          "action": "state.consistency",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "5a1c6e5246defb1b6b6b90ff734db95bece2886b408ab112ed9b8e67222d5568",
          "completed_at": "2026-07-15T16:20:59Z"
        },
        {
          "step_id": "status",
          "action": "state.query",
          "input_hash": "a15231a2142a2a9a85355a8b9cbbccffe01a9c9c2c2fd8c2bc2987cdc481564a",
          "output_hash": "8ba9f7d3cc6705af37de9e3324d1258e21ccacb5ab0b2d7b389ca08885e11187",
          "completed_at": "2026-07-15T16:20:59Z"
        },
        {
          "step_id": "substrate",
          "action": "substrate.preflight",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "a6df426290b4549a59eecaa0519ead9bcc50b7fcb25bd2185ff6047960f19ccb",
          "completed_at": "2026-07-15T16:20:59Z"
        },
        {
          "step_id": "notices",
          "action": "substrate.notices",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "38b904a1cf83df048360fb2480571b749fd98d57e11f1afdffb5a74a78166fea",
          "completed_at": "2026-07-15T16:20:59Z"
        },
        {
          "step_id": "goals",
          "action": "substrate.goals",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "cdfd4de44a28140e686159f34f7b47975954c67e1d1efcef666e985acb136ed8",
          "completed_at": "2026-07-15T16:20:59Z"
        }
      ],
      "steps": [
        {
          "id": "config",
          "action": "config.audit",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-15T16:20:58Z",
          "output": {
            "status": "ok",
            "summary": {
              "settings": 195,
              "mutable": 186,
              "read_only_or_managed": 9,
              "unclassified": 0,
              "unknown": 0,
              "invalid": 0,
              "missing_using_defaults": 0
            },
            "unclassified_keys": [],
            "unknown_keys": [],
            "invalid_values": [],
            "missing_using_defaults": []
          },
          "output_hash": "3782ec2317c0c8ee7598634310a2804d8aae4735f557498f9d3b8fae7c45e1e5",
          "completed_at": "2026-07-15T16:20:58Z"
        },
        {
          "id": "services",
          "action": "services.audit",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-15T16:20:58Z",
          "output": {
            "status": "ok",
            "summary": {
              "critical": 0,
              "high": 0,
              "medium": 0,
              "low": 0
            },
            "findings": []
          },
          "output_hash": "13dcc58bd528f3efa3e6e0fa0853a6eedc376f1f3685fbd4869cbb2b60382ee3",
          "completed_at": "2026-07-15T16:20:58Z"
        },
        {
          "id": "state",
          "action": "state.consistency",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-15T16:20:58Z",
          "output": {
            "status": "ok",
            "repo_root": "D:\\Projects\\prd-plugin",
            "summary": {
              "errors": 0,
              "warnings": 0,
              "infos": 0
            },
            "findings": []
          },
          "output_hash": "5a1c6e5246defb1b6b6b90ff734db95bece2886b408ab112ed9b8e67222d5568",
          "completed_at": "2026-07-15T16:20:59Z"
        },
        {
          "id": "status",
          "action": "state.query",
          "status": "completed",
          "resolved_input_hash": "a15231a2142a2a9a85355a8b9cbbccffe01a9c9c2c2fd8c2bc2987cdc481564a",
          "started_at": "2026-07-15T16:20:59Z",
          "output": {
            "repo_root": "D:\\Projects\\prd-plugin",
            "autonomy_level": "autonomous",
            "requests_by_status": {
              "deferred": 1,
              "implemented": 80,
              "proposed": 1,
              "rejected": 1
            },
            "active_tracking": [],
            "tracking_branches": [],
            "tracking_branch_counts": {},
            "tracking_branch_errors": [],
            "open_health": [],
            "stale_count": 0,
            "skill_usage": {
              "project-decision-policy": 1,
              "project-request-intake": 1,
              "project-test-driven-implementation": 1,
              "project-verification-before-completion": 1,
              "project-llm-wiki": 1
            },
            "wiki_backfill_pending": false,
            "version_update": null
          },
          "output_hash": "8ba9f7d3cc6705af37de9e3324d1258e21ccacb5ab0b2d7b389ca08885e11187",
          "completed_at": "2026-07-15T16:20:59Z"
        },
        {
          "id": "substrate",
          "action": "substrate.preflight",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-15T16:20:59Z",
          "output": {
            "status": "disabled",
            "services": {
              "status": "ok",
              "summary": {
                "critical": 0,
                "high": 0,
                "medium": 0,
                "low": 0
              },
              "findings": []
            },
            "policy": {
              "configured": {
                "enabled": false,
                "mode": "off",
                "capabilities": [
                  "records",
                  "graph",
                  "events"
                ],
                "contract_version": 2,
                "require_source_refs": true,
                "endpoint": "http://127.0.0.1:47124",
                "manual_url": "http://127.0.0.1:47124/utcp.json",
                "knowledge_browse_url": "http://127.0.0.1:5276",
                "auth_env": "AI_COLLAB_API_KEY",
                "timeout_seconds": 5,
                "max_result_bytes": 1048576,
                "cache_ttl_seconds": 60,
                "fallback": "local",
                "automation": {
                  "discovery_on_session_start": true,
                  "knowledge_recall": true,
                  "memory_recall": true,
                  "context_enrichment": true,
                  "notices_on_session_start": false,
                  "goals_sync": false,
                  "telemetry_on_maintenance": false,
                  "reporting_dispatch": true,
                  "judgment_dispatch": true,
                  "verification_execution": true
                }
              },
              "active": false,
              "effective_mode": "off",
              "effective_capabilities": []
            }
          },
          "output_hash": "a6df426290b4549a59eecaa0519ead9bcc50b7fcb25bd2185ff6047960f19ccb",
          "completed_at": "2026-07-15T16:20:59Z"
        },
        {
          "id": "notices",
          "action": "substrate.notices",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-15T16:20:59Z",
          "output": {
            "status": "disabled"
          },
          "output_hash": "38b904a1cf83df048360fb2480571b749fd98d57e11f1afdffb5a74a78166fea",
          "completed_at": "2026-07-15T16:20:59Z"
        },
        {
          "id": "goals",
          "action": "substrate.goals",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-15T16:20:59Z",
          "output": {
            "status": "disabled",
            "created": 0,
            "observed": 0,
            "results": []
          },
          "output_hash": "cdfd4de44a28140e686159f34f7b47975954c67e1d1efcef666e985acb136ed8",
          "completed_at": "2026-07-15T16:20:59Z"
        }
      ],
      "completed_at": "2026-07-15T16:20:59Z"
    },
    {
      "id": "WFR-102",
      "schema_version": "1.0",
      "workflow_id": "session.stop",
      "workflow_version": 1,
      "definition_hash": "0cef7bb3e28321be8f85375c154955a69310ce297e47de3f3b8dd48f77a2f07d",
      "plan_hash": "a5e1d77ac734217487fc418e29c7163f4e81178e25d171e70cd4c999d527d3e8",
      "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
      "inputs": {},
      "idempotency_key": "hook:Stop:019f6694-ce4d-7e03-a3f6-05d0d9b9b06a",
      "status": "completed",
      "attempt": 1,
      "created_at": "2026-07-15T16:24:08Z",
      "updated_at": "2026-07-15T16:24:09Z",
      "receipts": [
        {
          "step_id": "state",
          "action": "state.consistency",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "5a1c6e5246defb1b6b6b90ff734db95bece2886b408ab112ed9b8e67222d5568",
          "completed_at": "2026-07-15T16:24:08Z"
        },
        {
          "step_id": "goals",
          "action": "substrate.goals",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "cdfd4de44a28140e686159f34f7b47975954c67e1d1efcef666e985acb136ed8",
          "completed_at": "2026-07-15T16:24:08Z"
        },
        {
          "step_id": "staleness",
          "action": "staleness.audit",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "1e81cb0ffd0a4d04626920a203b38d2d23a264cd43e807a85d375d69cae8a658",
          "completed_at": "2026-07-15T16:24:09Z"
        },
        {
          "step_id": "reflections",
          "action": "reflection.list",
          "input_hash": "0172e841ab4c13b3a4061f073f9d68a716ec87a8a5d52fde41823385e0582573",
          "output_hash": "c1b6b635c0bab21120657277f14ef6f839909875f307a3745fa48aee2bd6e449",
          "completed_at": "2026-07-15T16:24:09Z"
        },
        {
          "step_id": "bundle",
          "action": "reporting.bundle",
          "input_hash": "aed8ebb688dc3c085dd978d7c4120572173c3cb87e75919e4a937dcca6ef9457",
          "output_hash": "6413b750e5adf462056ec1108a5d692cc446676e520bee65af98f64bc3e9bd9b",
          "completed_at": "2026-07-15T16:24:09Z"
        },
        {
          "step_id": "delegated",
          "action": "reporting.delegate",
          "input_hash": "669197e524ce450fa066ad7ef7d9da00168b780083ca6a5d7094bca3097e8568",
          "output_hash": "e6085059f197def80ae95add1f328418107bea5436c9bd002530043646a3a95c",
          "completed_at": "2026-07-15T16:24:09Z"
        }
      ],
      "steps": [
        {
          "id": "state",
          "action": "state.consistency",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-15T16:24:08Z",
          "output": {
            "status": "ok",
            "repo_root": "D:\\Projects\\prd-plugin",
            "summary": {
              "errors": 0,
              "warnings": 0,
              "infos": 0
            },
            "findings": []
          },
          "output_hash": "5a1c6e5246defb1b6b6b90ff734db95bece2886b408ab112ed9b8e67222d5568",
          "completed_at": "2026-07-15T16:24:08Z"
        },
        {
          "id": "goals",
          "action": "substrate.goals",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-15T16:24:08Z",
          "output": {
            "status": "disabled",
            "created": 0,
            "observed": 0,
            "results": []
          },
          "output_hash": "cdfd4de44a28140e686159f34f7b47975954c67e1d1efcef666e985acb136ed8",
          "completed_at": "2026-07-15T16:24:08Z"
        },
        {
          "id": "staleness",
          "action": "staleness.audit",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-15T16:24:09Z",
          "output": {
            "status": "ok",
            "repo_root": "D:\\Projects\\prd-plugin",
            "counts": {
              "stale": 0
            },
            "stale": []
          },
          "output_hash": "1e81cb0ffd0a4d04626920a203b38d2d23a264cd43e807a85d375d69cae8a658",
          "completed_at": "2026-07-15T16:24:09Z"
        },
        {
          "id": "reflections",
          "action": "reflection.list",
          "status": "completed",
          "resolved_input_hash": "0172e841ab4c13b3a4061f073f9d68a716ec87a8a5d52fde41823385e0582573",
          "started_at": "2026-07-15T16:24:09Z",
          "output": {
            "enabled": false,
            "on_stop": true,
            "max_questions_per_stop": 5,
            "categories": [
              {
                "id": "behaviour_quality",
                "name": "Behaviour quality",
                "enabled": true,
                "question_count": 3
              },
              {
                "id": "harness_friction",
                "name": "Harness friction",
                "enabled": true,
                "question_count": 2
              }
            ],
            "questions": [
              {
                "id": "RFQ-001",
                "text": "Based on the work you just carried out, would you classify your behaviour as good? Answer yes or no and cite observable evidence.",
                "enabled": true,
                "category_id": "behaviour_quality",
                "category_name": "Behaviour quality",
                "effective_enabled": false
              },
              {
                "id": "RFQ-002",
                "text": "If you answered no, what could you do differently to correct your behaviour?",
                "enabled": true,
                "category_id": "behaviour_quality",
                "category_name": "Behaviour quality",
                "effective_enabled": false
              },
              {
                "id": "RFQ-003",
                "text": "Would another attempt using the identified good behaviours materially improve the outcome? Answer yes or no and state the next corrective action if yes.",
                "enabled": true,
                "category_id": "behaviour_quality",
                "category_name": "Behaviour quality",
                "effective_enabled": false
              },
              {
                "id": "RFQ-004",
                "text": "What harness friction points made this work more difficult?",
                "enabled": true,
                "category_id": "harness_friction",
                "category_name": "Harness friction",
                "effective_enabled": false
              },
              {
                "id": "RFQ-005",
                "text": "What up to three changes would most improve friction in the harness?",
                "enabled": true,
                "category_id": "harness_friction",
                "category_name": "Harness friction",
                "effective_enabled": false
              }
            ]
          },
          "output_hash": "c1b6b635c0bab21120657277f14ef6f839909875f307a3745fa48aee2bd6e449",
          "completed_at": "2026-07-15T16:24:09Z"
        },
        {
          "id": "bundle",
          "action": "reporting.bundle",
          "status": "completed",
          "resolved_input_hash": "aed8ebb688dc3c085dd978d7c4120572173c3cb87e75919e4a937dcca6ef9457",
          "started_at": "2026-07-15T16:24:09Z",
          "output": {
            "contract_version": 1,
            "task": "session_summary",
            "repo": "prd-plugin",
            "policy": {
              "enabled": false,
              "executor": "ai-collab",
              "contract_version": 1,
              "profile": "fast-capable",
              "tasks": [
                "report_summary",
                "session_summary",
                "wiki_synthesis",
                "triage_draft"
              ],
              "fallback": "main",
              "require_source_refs": true,
              "max_input_tokens": 12000,
              "max_output_tokens": 1500,
              "timeout_seconds": 30
            },
            "facts": {
              "requests_by_status": {
                "deferred": 1,
                "implemented": 80,
                "proposed": 1,
                "rejected": 1
              },
              "active_requests": [
                {
                  "id": "REQ-072",
                  "status": "proposed",
                  "severity": "low",
                  "summary": "opencode run-until-done: session.idle is a non-blocking notification, so the stop guard can't force continuation on opencode (currently degrades to a printed reminder, 0.5.95). Investigate whether opencode exposes any vetoable/continuation mechanism (a different event, a permission hook, or a 'continue' API) to enforce run-until-done, or accept the reminder as the permanent ceiling. Low priority — user rarely uses opencode."
                }
              ],
              "active_tracking": [],
              "open_health": [],
              "evidence_count": 104,
              "decision_count": 9
            },
            "findings": [],
            "source_refs": [
              ".prd_plugin/config.json",
              ".prd_plugin/state/decisions.json",
              ".prd_plugin/state/evidence.json",
              ".prd_plugin/state/health.json",
              ".prd_plugin/state/requests.json",
              ".prd_plugin/state/tracking.json",
              "REQ-072"
            ],
            "constraints": {
              "max_input_tokens": 12000,
              "max_output_tokens": 1500,
              "timeout_seconds": 30,
              "require_source_refs": true,
              "no_project_state_writes": true,
              "no_secrets_or_local_session_content": true
            }
          },
          "output_hash": "6413b750e5adf462056ec1108a5d692cc446676e520bee65af98f64bc3e9bd9b",
          "completed_at": "2026-07-15T16:24:09Z"
        },
        {
          "id": "delegated",
          "action": "reporting.delegate",
          "status": "completed",
          "resolved_input_hash": "669197e524ce450fa066ad7ef7d9da00168b780083ca6a5d7094bca3097e8568",
          "started_at": "2026-07-15T16:24:09Z",
          "output": {
            "status": "fallback",
            "action": "main",
            "reason": "disabled"
          },
          "output_hash": "e6085059f197def80ae95add1f328418107bea5436c9bd002530043646a3a95c",
          "completed_at": "2026-07-15T16:24:09Z"
        }
      ],
      "completed_at": "2026-07-15T16:24:09Z"
    },
    {
      "id": "WFR-103",
      "schema_version": "1.0",
      "workflow_id": "session.start",
      "workflow_version": 1,
      "definition_hash": "d0f98da02571e6dd27fec4aed92d3c82af9db75f8b90b997bf665635c7b7f6ca",
      "plan_hash": "b5072615ca3b7e9a3bd85d50d1f069d99ef2a9816b32c03a370745ed7a205536",
      "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
      "inputs": {},
      "idempotency_key": "hook:SessionStart:019f669a-3613-7c42-821e-78bd93991e96",
      "status": "completed",
      "attempt": 1,
      "created_at": "2026-07-15T16:26:52Z",
      "updated_at": "2026-07-15T16:26:54Z",
      "receipts": [
        {
          "step_id": "config",
          "action": "config.audit",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "3782ec2317c0c8ee7598634310a2804d8aae4735f557498f9d3b8fae7c45e1e5",
          "completed_at": "2026-07-15T16:26:53Z"
        },
        {
          "step_id": "services",
          "action": "services.audit",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "13dcc58bd528f3efa3e6e0fa0853a6eedc376f1f3685fbd4869cbb2b60382ee3",
          "completed_at": "2026-07-15T16:26:53Z"
        },
        {
          "step_id": "state",
          "action": "state.consistency",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "5a1c6e5246defb1b6b6b90ff734db95bece2886b408ab112ed9b8e67222d5568",
          "completed_at": "2026-07-15T16:26:53Z"
        },
        {
          "step_id": "status",
          "action": "state.query",
          "input_hash": "a15231a2142a2a9a85355a8b9cbbccffe01a9c9c2c2fd8c2bc2987cdc481564a",
          "output_hash": "6f91cbd5cb9d6871bb23d28fb739627500e751cfc75ed29126709e48013398ad",
          "completed_at": "2026-07-15T16:26:53Z"
        },
        {
          "step_id": "substrate",
          "action": "substrate.preflight",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "a6df426290b4549a59eecaa0519ead9bcc50b7fcb25bd2185ff6047960f19ccb",
          "completed_at": "2026-07-15T16:26:53Z"
        },
        {
          "step_id": "notices",
          "action": "substrate.notices",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "38b904a1cf83df048360fb2480571b749fd98d57e11f1afdffb5a74a78166fea",
          "completed_at": "2026-07-15T16:26:54Z"
        },
        {
          "step_id": "goals",
          "action": "substrate.goals",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "cdfd4de44a28140e686159f34f7b47975954c67e1d1efcef666e985acb136ed8",
          "completed_at": "2026-07-15T16:26:54Z"
        }
      ],
      "steps": [
        {
          "id": "config",
          "action": "config.audit",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-15T16:26:53Z",
          "output": {
            "status": "ok",
            "summary": {
              "settings": 195,
              "mutable": 186,
              "read_only_or_managed": 9,
              "unclassified": 0,
              "unknown": 0,
              "invalid": 0,
              "missing_using_defaults": 0
            },
            "unclassified_keys": [],
            "unknown_keys": [],
            "invalid_values": [],
            "missing_using_defaults": []
          },
          "output_hash": "3782ec2317c0c8ee7598634310a2804d8aae4735f557498f9d3b8fae7c45e1e5",
          "completed_at": "2026-07-15T16:26:53Z"
        },
        {
          "id": "services",
          "action": "services.audit",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-15T16:26:53Z",
          "output": {
            "status": "ok",
            "summary": {
              "critical": 0,
              "high": 0,
              "medium": 0,
              "low": 0
            },
            "findings": []
          },
          "output_hash": "13dcc58bd528f3efa3e6e0fa0853a6eedc376f1f3685fbd4869cbb2b60382ee3",
          "completed_at": "2026-07-15T16:26:53Z"
        },
        {
          "id": "state",
          "action": "state.consistency",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-15T16:26:53Z",
          "output": {
            "status": "ok",
            "repo_root": "D:\\Projects\\prd-plugin",
            "summary": {
              "errors": 0,
              "warnings": 0,
              "infos": 0
            },
            "findings": []
          },
          "output_hash": "5a1c6e5246defb1b6b6b90ff734db95bece2886b408ab112ed9b8e67222d5568",
          "completed_at": "2026-07-15T16:26:53Z"
        },
        {
          "id": "status",
          "action": "state.query",
          "status": "completed",
          "resolved_input_hash": "a15231a2142a2a9a85355a8b9cbbccffe01a9c9c2c2fd8c2bc2987cdc481564a",
          "started_at": "2026-07-15T16:26:53Z",
          "output": {
            "repo_root": "D:\\Projects\\prd-plugin",
            "autonomy_level": "autonomous",
            "requests_by_status": {
              "deferred": 1,
              "implemented": 80,
              "proposed": 1,
              "rejected": 1
            },
            "active_tracking": [
              "TRK-114"
            ],
            "tracking_branches": [],
            "tracking_branch_counts": {},
            "tracking_branch_errors": [],
            "open_health": [],
            "stale_count": 0,
            "skill_usage": {
              "project-decision-policy": 1,
              "project-request-intake": 1,
              "project-test-driven-implementation": 1,
              "project-verification-before-completion": 1,
              "project-llm-wiki": 1
            },
            "wiki_backfill_pending": false,
            "version_update": null
          },
          "output_hash": "6f91cbd5cb9d6871bb23d28fb739627500e751cfc75ed29126709e48013398ad",
          "completed_at": "2026-07-15T16:26:53Z"
        },
        {
          "id": "substrate",
          "action": "substrate.preflight",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-15T16:26:53Z",
          "output": {
            "status": "disabled",
            "services": {
              "status": "ok",
              "summary": {
                "critical": 0,
                "high": 0,
                "medium": 0,
                "low": 0
              },
              "findings": []
            },
            "policy": {
              "configured": {
                "enabled": false,
                "mode": "off",
                "capabilities": [
                  "records",
                  "graph",
                  "events"
                ],
                "contract_version": 2,
                "require_source_refs": true,
                "endpoint": "http://127.0.0.1:47124",
                "manual_url": "http://127.0.0.1:47124/utcp.json",
                "knowledge_browse_url": "http://127.0.0.1:5276",
                "auth_env": "AI_COLLAB_API_KEY",
                "timeout_seconds": 5,
                "max_result_bytes": 1048576,
                "cache_ttl_seconds": 60,
                "fallback": "local",
                "automation": {
                  "discovery_on_session_start": true,
                  "knowledge_recall": true,
                  "memory_recall": true,
                  "context_enrichment": true,
                  "notices_on_session_start": false,
                  "goals_sync": false,
                  "telemetry_on_maintenance": false,
                  "reporting_dispatch": true,
                  "judgment_dispatch": true,
                  "verification_execution": true
                }
              },
              "active": false,
              "effective_mode": "off",
              "effective_capabilities": []
            }
          },
          "output_hash": "a6df426290b4549a59eecaa0519ead9bcc50b7fcb25bd2185ff6047960f19ccb",
          "completed_at": "2026-07-15T16:26:53Z"
        },
        {
          "id": "notices",
          "action": "substrate.notices",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-15T16:26:53Z",
          "output": {
            "status": "disabled"
          },
          "output_hash": "38b904a1cf83df048360fb2480571b749fd98d57e11f1afdffb5a74a78166fea",
          "completed_at": "2026-07-15T16:26:54Z"
        },
        {
          "id": "goals",
          "action": "substrate.goals",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-15T16:26:54Z",
          "output": {
            "status": "disabled",
            "created": 0,
            "observed": 0,
            "results": []
          },
          "output_hash": "cdfd4de44a28140e686159f34f7b47975954c67e1d1efcef666e985acb136ed8",
          "completed_at": "2026-07-15T16:26:54Z"
        }
      ],
      "completed_at": "2026-07-15T16:26:54Z"
    },
    {
      "id": "WFR-104",
      "schema_version": "1.0",
      "workflow_id": "session.stop",
      "workflow_version": 1,
      "definition_hash": "0cef7bb3e28321be8f85375c154955a69310ce297e47de3f3b8dd48f77a2f07d",
      "plan_hash": "a5e1d77ac734217487fc418e29c7163f4e81178e25d171e70cd4c999d527d3e8",
      "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
      "inputs": {},
      "idempotency_key": "hook:Stop:019f669a-3613-7c42-821e-78bd93991e96",
      "status": "completed",
      "attempt": 1,
      "created_at": "2026-07-15T16:31:48Z",
      "updated_at": "2026-07-15T16:31:49Z",
      "receipts": [
        {
          "step_id": "state",
          "action": "state.consistency",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "5a1c6e5246defb1b6b6b90ff734db95bece2886b408ab112ed9b8e67222d5568",
          "completed_at": "2026-07-15T16:31:49Z"
        },
        {
          "step_id": "goals",
          "action": "substrate.goals",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "cdfd4de44a28140e686159f34f7b47975954c67e1d1efcef666e985acb136ed8",
          "completed_at": "2026-07-15T16:31:49Z"
        },
        {
          "step_id": "staleness",
          "action": "staleness.audit",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "1e81cb0ffd0a4d04626920a203b38d2d23a264cd43e807a85d375d69cae8a658",
          "completed_at": "2026-07-15T16:31:49Z"
        },
        {
          "step_id": "reflections",
          "action": "reflection.list",
          "input_hash": "0172e841ab4c13b3a4061f073f9d68a716ec87a8a5d52fde41823385e0582573",
          "output_hash": "c1b6b635c0bab21120657277f14ef6f839909875f307a3745fa48aee2bd6e449",
          "completed_at": "2026-07-15T16:31:49Z"
        },
        {
          "step_id": "bundle",
          "action": "reporting.bundle",
          "input_hash": "aed8ebb688dc3c085dd978d7c4120572173c3cb87e75919e4a937dcca6ef9457",
          "output_hash": "f61aa7bfac7c2e96e3bf2d3386a95e45d2db52d040f05aff9ea963197eacc3f6",
          "completed_at": "2026-07-15T16:31:49Z"
        },
        {
          "step_id": "delegated",
          "action": "reporting.delegate",
          "input_hash": "5bf4dfad88c9958da759cb1561ca5fdd8f3ac9050e938bfde85af5c8d804adc9",
          "output_hash": "e6085059f197def80ae95add1f328418107bea5436c9bd002530043646a3a95c",
          "completed_at": "2026-07-15T16:31:49Z"
        }
      ],
      "steps": [
        {
          "id": "state",
          "action": "state.consistency",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-15T16:31:48Z",
          "output": {
            "status": "ok",
            "repo_root": "D:\\Projects\\prd-plugin",
            "summary": {
              "errors": 0,
              "warnings": 0,
              "infos": 0
            },
            "findings": []
          },
          "output_hash": "5a1c6e5246defb1b6b6b90ff734db95bece2886b408ab112ed9b8e67222d5568",
          "completed_at": "2026-07-15T16:31:49Z"
        },
        {
          "id": "goals",
          "action": "substrate.goals",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-15T16:31:49Z",
          "output": {
            "status": "disabled",
            "created": 0,
            "observed": 0,
            "results": []
          },
          "output_hash": "cdfd4de44a28140e686159f34f7b47975954c67e1d1efcef666e985acb136ed8",
          "completed_at": "2026-07-15T16:31:49Z"
        },
        {
          "id": "staleness",
          "action": "staleness.audit",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-15T16:31:49Z",
          "output": {
            "status": "ok",
            "repo_root": "D:\\Projects\\prd-plugin",
            "counts": {
              "stale": 0
            },
            "stale": []
          },
          "output_hash": "1e81cb0ffd0a4d04626920a203b38d2d23a264cd43e807a85d375d69cae8a658",
          "completed_at": "2026-07-15T16:31:49Z"
        },
        {
          "id": "reflections",
          "action": "reflection.list",
          "status": "completed",
          "resolved_input_hash": "0172e841ab4c13b3a4061f073f9d68a716ec87a8a5d52fde41823385e0582573",
          "started_at": "2026-07-15T16:31:49Z",
          "output": {
            "enabled": false,
            "on_stop": true,
            "max_questions_per_stop": 5,
            "categories": [
              {
                "id": "behaviour_quality",
                "name": "Behaviour quality",
                "enabled": true,
                "question_count": 3
              },
              {
                "id": "harness_friction",
                "name": "Harness friction",
                "enabled": true,
                "question_count": 2
              }
            ],
            "questions": [
              {
                "id": "RFQ-001",
                "text": "Based on the work you just carried out, would you classify your behaviour as good? Answer yes or no and cite observable evidence.",
                "enabled": true,
                "category_id": "behaviour_quality",
                "category_name": "Behaviour quality",
                "effective_enabled": false
              },
              {
                "id": "RFQ-002",
                "text": "If you answered no, what could you do differently to correct your behaviour?",
                "enabled": true,
                "category_id": "behaviour_quality",
                "category_name": "Behaviour quality",
                "effective_enabled": false
              },
              {
                "id": "RFQ-003",
                "text": "Would another attempt using the identified good behaviours materially improve the outcome? Answer yes or no and state the next corrective action if yes.",
                "enabled": true,
                "category_id": "behaviour_quality",
                "category_name": "Behaviour quality",
                "effective_enabled": false
              },
              {
                "id": "RFQ-004",
                "text": "What harness friction points made this work more difficult?",
                "enabled": true,
                "category_id": "harness_friction",
                "category_name": "Harness friction",
                "effective_enabled": false
              },
              {
                "id": "RFQ-005",
                "text": "What up to three changes would most improve friction in the harness?",
                "enabled": true,
                "category_id": "harness_friction",
                "category_name": "Harness friction",
                "effective_enabled": false
              }
            ]
          },
          "output_hash": "c1b6b635c0bab21120657277f14ef6f839909875f307a3745fa48aee2bd6e449",
          "completed_at": "2026-07-15T16:31:49Z"
        },
        {
          "id": "bundle",
          "action": "reporting.bundle",
          "status": "completed",
          "resolved_input_hash": "aed8ebb688dc3c085dd978d7c4120572173c3cb87e75919e4a937dcca6ef9457",
          "started_at": "2026-07-15T16:31:49Z",
          "output": {
            "contract_version": 1,
            "task": "session_summary",
            "repo": "prd-plugin",
            "policy": {
              "enabled": false,
              "executor": "ai-collab",
              "contract_version": 1,
              "profile": "fast-capable",
              "tasks": [
                "report_summary",
                "session_summary",
                "wiki_synthesis",
                "triage_draft"
              ],
              "fallback": "main",
              "require_source_refs": true,
              "max_input_tokens": 12000,
              "max_output_tokens": 1500,
              "timeout_seconds": 30
            },
            "facts": {
              "requests_by_status": {
                "deferred": 1,
                "implemented": 80,
                "proposed": 1,
                "rejected": 1
              },
              "active_requests": [
                {
                  "id": "REQ-072",
                  "status": "proposed",
                  "severity": "low",
                  "summary": "opencode run-until-done: session.idle is a non-blocking notification, so the stop guard can't force continuation on opencode (currently degrades to a printed reminder, 0.5.95). Investigate whether opencode exposes any vetoable/continuation mechanism (a different event, a permission hook, or a 'continue' API) to enforce run-until-done, or accept the reminder as the permanent ceiling. Low priority — user rarely uses opencode."
                }
              ],
              "active_tracking": [],
              "open_health": [],
              "evidence_count": 105,
              "decision_count": 10
            },
            "findings": [],
            "source_refs": [
              ".prd_plugin/config.json",
              ".prd_plugin/state/decisions.json",
              ".prd_plugin/state/evidence.json",
              ".prd_plugin/state/health.json",
              ".prd_plugin/state/requests.json",
              ".prd_plugin/state/tracking.json",
              "REQ-072"
            ],
            "constraints": {
              "max_input_tokens": 12000,
              "max_output_tokens": 1500,
              "timeout_seconds": 30,
              "require_source_refs": true,
              "no_project_state_writes": true,
              "no_secrets_or_local_session_content": true
            }
          },
          "output_hash": "f61aa7bfac7c2e96e3bf2d3386a95e45d2db52d040f05aff9ea963197eacc3f6",
          "completed_at": "2026-07-15T16:31:49Z"
        },
        {
          "id": "delegated",
          "action": "reporting.delegate",
          "status": "completed",
          "resolved_input_hash": "5bf4dfad88c9958da759cb1561ca5fdd8f3ac9050e938bfde85af5c8d804adc9",
          "started_at": "2026-07-15T16:31:49Z",
          "output": {
            "status": "fallback",
            "action": "main",
            "reason": "disabled"
          },
          "output_hash": "e6085059f197def80ae95add1f328418107bea5436c9bd002530043646a3a95c",
          "completed_at": "2026-07-15T16:31:49Z"
        }
      ],
      "completed_at": "2026-07-15T16:31:49Z"
    },
    {
      "id": "WFR-105",
      "schema_version": "1.0",
      "workflow_id": "session.start",
      "workflow_version": 1,
      "definition_hash": "d0f98da02571e6dd27fec4aed92d3c82af9db75f8b90b997bf665635c7b7f6ca",
      "plan_hash": "b5072615ca3b7e9a3bd85d50d1f069d99ef2a9816b32c03a370745ed7a205536",
      "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
      "inputs": {},
      "idempotency_key": "hook:SessionStart:019f66a0-0835-7353-8956-c40eede0b0a5",
      "status": "completed",
      "attempt": 1,
      "created_at": "2026-07-15T16:33:14Z",
      "updated_at": "2026-07-15T16:33:15Z",
      "receipts": [
        {
          "step_id": "config",
          "action": "config.audit",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "3782ec2317c0c8ee7598634310a2804d8aae4735f557498f9d3b8fae7c45e1e5",
          "completed_at": "2026-07-15T16:33:14Z"
        },
        {
          "step_id": "services",
          "action": "services.audit",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "13dcc58bd528f3efa3e6e0fa0853a6eedc376f1f3685fbd4869cbb2b60382ee3",
          "completed_at": "2026-07-15T16:33:14Z"
        },
        {
          "step_id": "state",
          "action": "state.consistency",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "5a1c6e5246defb1b6b6b90ff734db95bece2886b408ab112ed9b8e67222d5568",
          "completed_at": "2026-07-15T16:33:14Z"
        },
        {
          "step_id": "status",
          "action": "state.query",
          "input_hash": "a15231a2142a2a9a85355a8b9cbbccffe01a9c9c2c2fd8c2bc2987cdc481564a",
          "output_hash": "8ba9f7d3cc6705af37de9e3324d1258e21ccacb5ab0b2d7b389ca08885e11187",
          "completed_at": "2026-07-15T16:33:15Z"
        },
        {
          "step_id": "substrate",
          "action": "substrate.preflight",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "a6df426290b4549a59eecaa0519ead9bcc50b7fcb25bd2185ff6047960f19ccb",
          "completed_at": "2026-07-15T16:33:15Z"
        },
        {
          "step_id": "notices",
          "action": "substrate.notices",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "38b904a1cf83df048360fb2480571b749fd98d57e11f1afdffb5a74a78166fea",
          "completed_at": "2026-07-15T16:33:15Z"
        },
        {
          "step_id": "goals",
          "action": "substrate.goals",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "cdfd4de44a28140e686159f34f7b47975954c67e1d1efcef666e985acb136ed8",
          "completed_at": "2026-07-15T16:33:15Z"
        }
      ],
      "steps": [
        {
          "id": "config",
          "action": "config.audit",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-15T16:33:14Z",
          "output": {
            "status": "ok",
            "summary": {
              "settings": 195,
              "mutable": 186,
              "read_only_or_managed": 9,
              "unclassified": 0,
              "unknown": 0,
              "invalid": 0,
              "missing_using_defaults": 0
            },
            "unclassified_keys": [],
            "unknown_keys": [],
            "invalid_values": [],
            "missing_using_defaults": []
          },
          "output_hash": "3782ec2317c0c8ee7598634310a2804d8aae4735f557498f9d3b8fae7c45e1e5",
          "completed_at": "2026-07-15T16:33:14Z"
        },
        {
          "id": "services",
          "action": "services.audit",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-15T16:33:14Z",
          "output": {
            "status": "ok",
            "summary": {
              "critical": 0,
              "high": 0,
              "medium": 0,
              "low": 0
            },
            "findings": []
          },
          "output_hash": "13dcc58bd528f3efa3e6e0fa0853a6eedc376f1f3685fbd4869cbb2b60382ee3",
          "completed_at": "2026-07-15T16:33:14Z"
        },
        {
          "id": "state",
          "action": "state.consistency",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-15T16:33:14Z",
          "output": {
            "status": "ok",
            "repo_root": "D:\\Projects\\prd-plugin",
            "summary": {
              "errors": 0,
              "warnings": 0,
              "infos": 0
            },
            "findings": []
          },
          "output_hash": "5a1c6e5246defb1b6b6b90ff734db95bece2886b408ab112ed9b8e67222d5568",
          "completed_at": "2026-07-15T16:33:14Z"
        },
        {
          "id": "status",
          "action": "state.query",
          "status": "completed",
          "resolved_input_hash": "a15231a2142a2a9a85355a8b9cbbccffe01a9c9c2c2fd8c2bc2987cdc481564a",
          "started_at": "2026-07-15T16:33:14Z",
          "output": {
            "repo_root": "D:\\Projects\\prd-plugin",
            "autonomy_level": "autonomous",
            "requests_by_status": {
              "deferred": 1,
              "implemented": 80,
              "proposed": 1,
              "rejected": 1
            },
            "active_tracking": [],
            "tracking_branches": [],
            "tracking_branch_counts": {},
            "tracking_branch_errors": [],
            "open_health": [],
            "stale_count": 0,
            "skill_usage": {
              "project-decision-policy": 1,
              "project-request-intake": 1,
              "project-test-driven-implementation": 1,
              "project-verification-before-completion": 1,
              "project-llm-wiki": 1
            },
            "wiki_backfill_pending": false,
            "version_update": null
          },
          "output_hash": "8ba9f7d3cc6705af37de9e3324d1258e21ccacb5ab0b2d7b389ca08885e11187",
          "completed_at": "2026-07-15T16:33:15Z"
        },
        {
          "id": "substrate",
          "action": "substrate.preflight",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-15T16:33:15Z",
          "output": {
            "status": "disabled",
            "services": {
              "status": "ok",
              "summary": {
                "critical": 0,
                "high": 0,
                "medium": 0,
                "low": 0
              },
              "findings": []
            },
            "policy": {
              "configured": {
                "enabled": false,
                "mode": "off",
                "capabilities": [
                  "records",
                  "graph",
                  "events"
                ],
                "contract_version": 2,
                "require_source_refs": true,
                "endpoint": "http://127.0.0.1:47124",
                "manual_url": "http://127.0.0.1:47124/utcp.json",
                "knowledge_browse_url": "http://127.0.0.1:5276",
                "auth_env": "AI_COLLAB_API_KEY",
                "timeout_seconds": 5,
                "max_result_bytes": 1048576,
                "cache_ttl_seconds": 60,
                "fallback": "local",
                "automation": {
                  "discovery_on_session_start": true,
                  "knowledge_recall": true,
                  "memory_recall": true,
                  "context_enrichment": true,
                  "notices_on_session_start": false,
                  "goals_sync": false,
                  "telemetry_on_maintenance": false,
                  "reporting_dispatch": true,
                  "judgment_dispatch": true,
                  "verification_execution": true
                }
              },
              "active": false,
              "effective_mode": "off",
              "effective_capabilities": []
            }
          },
          "output_hash": "a6df426290b4549a59eecaa0519ead9bcc50b7fcb25bd2185ff6047960f19ccb",
          "completed_at": "2026-07-15T16:33:15Z"
        },
        {
          "id": "notices",
          "action": "substrate.notices",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-15T16:33:15Z",
          "output": {
            "status": "disabled"
          },
          "output_hash": "38b904a1cf83df048360fb2480571b749fd98d57e11f1afdffb5a74a78166fea",
          "completed_at": "2026-07-15T16:33:15Z"
        },
        {
          "id": "goals",
          "action": "substrate.goals",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-15T16:33:15Z",
          "output": {
            "status": "disabled",
            "created": 0,
            "observed": 0,
            "results": []
          },
          "output_hash": "cdfd4de44a28140e686159f34f7b47975954c67e1d1efcef666e985acb136ed8",
          "completed_at": "2026-07-15T16:33:15Z"
        }
      ],
      "completed_at": "2026-07-15T16:33:15Z"
    },
    {
      "id": "WFR-106",
      "schema_version": "1.0",
      "workflow_id": "session.stop",
      "workflow_version": 1,
      "definition_hash": "0cef7bb3e28321be8f85375c154955a69310ce297e47de3f3b8dd48f77a2f07d",
      "plan_hash": "a5e1d77ac734217487fc418e29c7163f4e81178e25d171e70cd4c999d527d3e8",
      "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
      "inputs": {},
      "idempotency_key": "hook:Stop:019f66a0-0835-7353-8956-c40eede0b0a5",
      "status": "completed",
      "attempt": 1,
      "created_at": "2026-07-15T16:33:19Z",
      "updated_at": "2026-07-15T16:33:20Z",
      "receipts": [
        {
          "step_id": "state",
          "action": "state.consistency",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "5a1c6e5246defb1b6b6b90ff734db95bece2886b408ab112ed9b8e67222d5568",
          "completed_at": "2026-07-15T16:33:19Z"
        },
        {
          "step_id": "goals",
          "action": "substrate.goals",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "cdfd4de44a28140e686159f34f7b47975954c67e1d1efcef666e985acb136ed8",
          "completed_at": "2026-07-15T16:33:20Z"
        },
        {
          "step_id": "staleness",
          "action": "staleness.audit",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "1e81cb0ffd0a4d04626920a203b38d2d23a264cd43e807a85d375d69cae8a658",
          "completed_at": "2026-07-15T16:33:20Z"
        },
        {
          "step_id": "reflections",
          "action": "reflection.list",
          "input_hash": "0172e841ab4c13b3a4061f073f9d68a716ec87a8a5d52fde41823385e0582573",
          "output_hash": "c1b6b635c0bab21120657277f14ef6f839909875f307a3745fa48aee2bd6e449",
          "completed_at": "2026-07-15T16:33:20Z"
        },
        {
          "step_id": "bundle",
          "action": "reporting.bundle",
          "input_hash": "aed8ebb688dc3c085dd978d7c4120572173c3cb87e75919e4a937dcca6ef9457",
          "output_hash": "f61aa7bfac7c2e96e3bf2d3386a95e45d2db52d040f05aff9ea963197eacc3f6",
          "completed_at": "2026-07-15T16:33:20Z"
        },
        {
          "step_id": "delegated",
          "action": "reporting.delegate",
          "input_hash": "5bf4dfad88c9958da759cb1561ca5fdd8f3ac9050e938bfde85af5c8d804adc9",
          "output_hash": "e6085059f197def80ae95add1f328418107bea5436c9bd002530043646a3a95c",
          "completed_at": "2026-07-15T16:33:20Z"
        }
      ],
      "steps": [
        {
          "id": "state",
          "action": "state.consistency",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-15T16:33:19Z",
          "output": {
            "status": "ok",
            "repo_root": "D:\\Projects\\prd-plugin",
            "summary": {
              "errors": 0,
              "warnings": 0,
              "infos": 0
            },
            "findings": []
          },
          "output_hash": "5a1c6e5246defb1b6b6b90ff734db95bece2886b408ab112ed9b8e67222d5568",
          "completed_at": "2026-07-15T16:33:19Z"
        },
        {
          "id": "goals",
          "action": "substrate.goals",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-15T16:33:20Z",
          "output": {
            "status": "disabled",
            "created": 0,
            "observed": 0,
            "results": []
          },
          "output_hash": "cdfd4de44a28140e686159f34f7b47975954c67e1d1efcef666e985acb136ed8",
          "completed_at": "2026-07-15T16:33:20Z"
        },
        {
          "id": "staleness",
          "action": "staleness.audit",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-15T16:33:20Z",
          "output": {
            "status": "ok",
            "repo_root": "D:\\Projects\\prd-plugin",
            "counts": {
              "stale": 0
            },
            "stale": []
          },
          "output_hash": "1e81cb0ffd0a4d04626920a203b38d2d23a264cd43e807a85d375d69cae8a658",
          "completed_at": "2026-07-15T16:33:20Z"
        },
        {
          "id": "reflections",
          "action": "reflection.list",
          "status": "completed",
          "resolved_input_hash": "0172e841ab4c13b3a4061f073f9d68a716ec87a8a5d52fde41823385e0582573",
          "started_at": "2026-07-15T16:33:20Z",
          "output": {
            "enabled": false,
            "on_stop": true,
            "max_questions_per_stop": 5,
            "categories": [
              {
                "id": "behaviour_quality",
                "name": "Behaviour quality",
                "enabled": true,
                "question_count": 3
              },
              {
                "id": "harness_friction",
                "name": "Harness friction",
                "enabled": true,
                "question_count": 2
              }
            ],
            "questions": [
              {
                "id": "RFQ-001",
                "text": "Based on the work you just carried out, would you classify your behaviour as good? Answer yes or no and cite observable evidence.",
                "enabled": true,
                "category_id": "behaviour_quality",
                "category_name": "Behaviour quality",
                "effective_enabled": false
              },
              {
                "id": "RFQ-002",
                "text": "If you answered no, what could you do differently to correct your behaviour?",
                "enabled": true,
                "category_id": "behaviour_quality",
                "category_name": "Behaviour quality",
                "effective_enabled": false
              },
              {
                "id": "RFQ-003",
                "text": "Would another attempt using the identified good behaviours materially improve the outcome? Answer yes or no and state the next corrective action if yes.",
                "enabled": true,
                "category_id": "behaviour_quality",
                "category_name": "Behaviour quality",
                "effective_enabled": false
              },
              {
                "id": "RFQ-004",
                "text": "What harness friction points made this work more difficult?",
                "enabled": true,
                "category_id": "harness_friction",
                "category_name": "Harness friction",
                "effective_enabled": false
              },
              {
                "id": "RFQ-005",
                "text": "What up to three changes would most improve friction in the harness?",
                "enabled": true,
                "category_id": "harness_friction",
                "category_name": "Harness friction",
                "effective_enabled": false
              }
            ]
          },
          "output_hash": "c1b6b635c0bab21120657277f14ef6f839909875f307a3745fa48aee2bd6e449",
          "completed_at": "2026-07-15T16:33:20Z"
        },
        {
          "id": "bundle",
          "action": "reporting.bundle",
          "status": "completed",
          "resolved_input_hash": "aed8ebb688dc3c085dd978d7c4120572173c3cb87e75919e4a937dcca6ef9457",
          "started_at": "2026-07-15T16:33:20Z",
          "output": {
            "contract_version": 1,
            "task": "session_summary",
            "repo": "prd-plugin",
            "policy": {
              "enabled": false,
              "executor": "ai-collab",
              "contract_version": 1,
              "profile": "fast-capable",
              "tasks": [
                "report_summary",
                "session_summary",
                "wiki_synthesis",
                "triage_draft"
              ],
              "fallback": "main",
              "require_source_refs": true,
              "max_input_tokens": 12000,
              "max_output_tokens": 1500,
              "timeout_seconds": 30
            },
            "facts": {
              "requests_by_status": {
                "deferred": 1,
                "implemented": 80,
                "proposed": 1,
                "rejected": 1
              },
              "active_requests": [
                {
                  "id": "REQ-072",
                  "status": "proposed",
                  "severity": "low",
                  "summary": "opencode run-until-done: session.idle is a non-blocking notification, so the stop guard can't force continuation on opencode (currently degrades to a printed reminder, 0.5.95). Investigate whether opencode exposes any vetoable/continuation mechanism (a different event, a permission hook, or a 'continue' API) to enforce run-until-done, or accept the reminder as the permanent ceiling. Low priority — user rarely uses opencode."
                }
              ],
              "active_tracking": [],
              "open_health": [],
              "evidence_count": 105,
              "decision_count": 10
            },
            "findings": [],
            "source_refs": [
              ".prd_plugin/config.json",
              ".prd_plugin/state/decisions.json",
              ".prd_plugin/state/evidence.json",
              ".prd_plugin/state/health.json",
              ".prd_plugin/state/requests.json",
              ".prd_plugin/state/tracking.json",
              "REQ-072"
            ],
            "constraints": {
              "max_input_tokens": 12000,
              "max_output_tokens": 1500,
              "timeout_seconds": 30,
              "require_source_refs": true,
              "no_project_state_writes": true,
              "no_secrets_or_local_session_content": true
            }
          },
          "output_hash": "f61aa7bfac7c2e96e3bf2d3386a95e45d2db52d040f05aff9ea963197eacc3f6",
          "completed_at": "2026-07-15T16:33:20Z"
        },
        {
          "id": "delegated",
          "action": "reporting.delegate",
          "status": "completed",
          "resolved_input_hash": "5bf4dfad88c9958da759cb1561ca5fdd8f3ac9050e938bfde85af5c8d804adc9",
          "started_at": "2026-07-15T16:33:20Z",
          "output": {
            "status": "fallback",
            "action": "main",
            "reason": "disabled"
          },
          "output_hash": "e6085059f197def80ae95add1f328418107bea5436c9bd002530043646a3a95c",
          "completed_at": "2026-07-15T16:33:20Z"
        }
      ],
      "completed_at": "2026-07-15T16:33:20Z"
    },
    {
      "id": "WFR-107",
      "schema_version": "1.0",
      "workflow_id": "session.start",
      "workflow_version": 1,
      "definition_hash": "d0f98da02571e6dd27fec4aed92d3c82af9db75f8b90b997bf665635c7b7f6ca",
      "plan_hash": "b5072615ca3b7e9a3bd85d50d1f069d99ef2a9816b32c03a370745ed7a205536",
      "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
      "inputs": {},
      "idempotency_key": "hook:SessionStart:019f66a0-a2a5-7d03-a1f0-c297029dc9fc",
      "status": "completed",
      "attempt": 1,
      "created_at": "2026-07-15T16:33:53Z",
      "updated_at": "2026-07-15T16:33:55Z",
      "receipts": [
        {
          "step_id": "config",
          "action": "config.audit",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "3782ec2317c0c8ee7598634310a2804d8aae4735f557498f9d3b8fae7c45e1e5",
          "completed_at": "2026-07-15T16:33:54Z"
        },
        {
          "step_id": "services",
          "action": "services.audit",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "13dcc58bd528f3efa3e6e0fa0853a6eedc376f1f3685fbd4869cbb2b60382ee3",
          "completed_at": "2026-07-15T16:33:54Z"
        },
        {
          "step_id": "state",
          "action": "state.consistency",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "5a1c6e5246defb1b6b6b90ff734db95bece2886b408ab112ed9b8e67222d5568",
          "completed_at": "2026-07-15T16:33:54Z"
        },
        {
          "step_id": "status",
          "action": "state.query",
          "input_hash": "a15231a2142a2a9a85355a8b9cbbccffe01a9c9c2c2fd8c2bc2987cdc481564a",
          "output_hash": "8ba9f7d3cc6705af37de9e3324d1258e21ccacb5ab0b2d7b389ca08885e11187",
          "completed_at": "2026-07-15T16:33:54Z"
        },
        {
          "step_id": "substrate",
          "action": "substrate.preflight",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "a6df426290b4549a59eecaa0519ead9bcc50b7fcb25bd2185ff6047960f19ccb",
          "completed_at": "2026-07-15T16:33:54Z"
        },
        {
          "step_id": "notices",
          "action": "substrate.notices",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "38b904a1cf83df048360fb2480571b749fd98d57e11f1afdffb5a74a78166fea",
          "completed_at": "2026-07-15T16:33:55Z"
        },
        {
          "step_id": "goals",
          "action": "substrate.goals",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "cdfd4de44a28140e686159f34f7b47975954c67e1d1efcef666e985acb136ed8",
          "completed_at": "2026-07-15T16:33:55Z"
        }
      ],
      "steps": [
        {
          "id": "config",
          "action": "config.audit",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-15T16:33:54Z",
          "output": {
            "status": "ok",
            "summary": {
              "settings": 195,
              "mutable": 186,
              "read_only_or_managed": 9,
              "unclassified": 0,
              "unknown": 0,
              "invalid": 0,
              "missing_using_defaults": 0
            },
            "unclassified_keys": [],
            "unknown_keys": [],
            "invalid_values": [],
            "missing_using_defaults": []
          },
          "output_hash": "3782ec2317c0c8ee7598634310a2804d8aae4735f557498f9d3b8fae7c45e1e5",
          "completed_at": "2026-07-15T16:33:54Z"
        },
        {
          "id": "services",
          "action": "services.audit",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-15T16:33:54Z",
          "output": {
            "status": "ok",
            "summary": {
              "critical": 0,
              "high": 0,
              "medium": 0,
              "low": 0
            },
            "findings": []
          },
          "output_hash": "13dcc58bd528f3efa3e6e0fa0853a6eedc376f1f3685fbd4869cbb2b60382ee3",
          "completed_at": "2026-07-15T16:33:54Z"
        },
        {
          "id": "state",
          "action": "state.consistency",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-15T16:33:54Z",
          "output": {
            "status": "ok",
            "repo_root": "D:\\Projects\\prd-plugin",
            "summary": {
              "errors": 0,
              "warnings": 0,
              "infos": 0
            },
            "findings": []
          },
          "output_hash": "5a1c6e5246defb1b6b6b90ff734db95bece2886b408ab112ed9b8e67222d5568",
          "completed_at": "2026-07-15T16:33:54Z"
        },
        {
          "id": "status",
          "action": "state.query",
          "status": "completed",
          "resolved_input_hash": "a15231a2142a2a9a85355a8b9cbbccffe01a9c9c2c2fd8c2bc2987cdc481564a",
          "started_at": "2026-07-15T16:33:54Z",
          "output": {
            "repo_root": "D:\\Projects\\prd-plugin",
            "autonomy_level": "autonomous",
            "requests_by_status": {
              "deferred": 1,
              "implemented": 80,
              "proposed": 1,
              "rejected": 1
            },
            "active_tracking": [],
            "tracking_branches": [],
            "tracking_branch_counts": {},
            "tracking_branch_errors": [],
            "open_health": [],
            "stale_count": 0,
            "skill_usage": {
              "project-decision-policy": 1,
              "project-request-intake": 1,
              "project-test-driven-implementation": 1,
              "project-verification-before-completion": 1,
              "project-llm-wiki": 1
            },
            "wiki_backfill_pending": false,
            "version_update": null
          },
          "output_hash": "8ba9f7d3cc6705af37de9e3324d1258e21ccacb5ab0b2d7b389ca08885e11187",
          "completed_at": "2026-07-15T16:33:54Z"
        },
        {
          "id": "substrate",
          "action": "substrate.preflight",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-15T16:33:54Z",
          "output": {
            "status": "disabled",
            "services": {
              "status": "ok",
              "summary": {
                "critical": 0,
                "high": 0,
                "medium": 0,
                "low": 0
              },
              "findings": []
            },
            "policy": {
              "configured": {
                "enabled": false,
                "mode": "off",
                "capabilities": [
                  "records",
                  "graph",
                  "events"
                ],
                "contract_version": 2,
                "require_source_refs": true,
                "endpoint": "http://127.0.0.1:47124",
                "manual_url": "http://127.0.0.1:47124/utcp.json",
                "knowledge_browse_url": "http://127.0.0.1:5276",
                "auth_env": "AI_COLLAB_API_KEY",
                "timeout_seconds": 5,
                "max_result_bytes": 1048576,
                "cache_ttl_seconds": 60,
                "fallback": "local",
                "automation": {
                  "discovery_on_session_start": true,
                  "knowledge_recall": true,
                  "memory_recall": true,
                  "context_enrichment": true,
                  "notices_on_session_start": false,
                  "goals_sync": false,
                  "telemetry_on_maintenance": false,
                  "reporting_dispatch": true,
                  "judgment_dispatch": true,
                  "verification_execution": true
                }
              },
              "active": false,
              "effective_mode": "off",
              "effective_capabilities": []
            }
          },
          "output_hash": "a6df426290b4549a59eecaa0519ead9bcc50b7fcb25bd2185ff6047960f19ccb",
          "completed_at": "2026-07-15T16:33:54Z"
        },
        {
          "id": "notices",
          "action": "substrate.notices",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-15T16:33:55Z",
          "output": {
            "status": "disabled"
          },
          "output_hash": "38b904a1cf83df048360fb2480571b749fd98d57e11f1afdffb5a74a78166fea",
          "completed_at": "2026-07-15T16:33:55Z"
        },
        {
          "id": "goals",
          "action": "substrate.goals",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-15T16:33:55Z",
          "output": {
            "status": "disabled",
            "created": 0,
            "observed": 0,
            "results": []
          },
          "output_hash": "cdfd4de44a28140e686159f34f7b47975954c67e1d1efcef666e985acb136ed8",
          "completed_at": "2026-07-15T16:33:55Z"
        }
      ],
      "completed_at": "2026-07-15T16:33:55Z"
    },
    {
      "id": "WFR-108",
      "schema_version": "1.0",
      "workflow_id": "session.stop",
      "workflow_version": 1,
      "definition_hash": "0cef7bb3e28321be8f85375c154955a69310ce297e47de3f3b8dd48f77a2f07d",
      "plan_hash": "a5e1d77ac734217487fc418e29c7163f4e81178e25d171e70cd4c999d527d3e8",
      "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
      "inputs": {},
      "idempotency_key": "hook:Stop:019f66a0-a2a5-7d03-a1f0-c297029dc9fc",
      "status": "completed",
      "attempt": 1,
      "created_at": "2026-07-15T16:33:59Z",
      "updated_at": "2026-07-15T16:34:00Z",
      "receipts": [
        {
          "step_id": "state",
          "action": "state.consistency",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "5a1c6e5246defb1b6b6b90ff734db95bece2886b408ab112ed9b8e67222d5568",
          "completed_at": "2026-07-15T16:34:00Z"
        },
        {
          "step_id": "goals",
          "action": "substrate.goals",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "cdfd4de44a28140e686159f34f7b47975954c67e1d1efcef666e985acb136ed8",
          "completed_at": "2026-07-15T16:34:00Z"
        },
        {
          "step_id": "staleness",
          "action": "staleness.audit",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "1e81cb0ffd0a4d04626920a203b38d2d23a264cd43e807a85d375d69cae8a658",
          "completed_at": "2026-07-15T16:34:00Z"
        },
        {
          "step_id": "reflections",
          "action": "reflection.list",
          "input_hash": "0172e841ab4c13b3a4061f073f9d68a716ec87a8a5d52fde41823385e0582573",
          "output_hash": "c1b6b635c0bab21120657277f14ef6f839909875f307a3745fa48aee2bd6e449",
          "completed_at": "2026-07-15T16:34:00Z"
        },
        {
          "step_id": "bundle",
          "action": "reporting.bundle",
          "input_hash": "aed8ebb688dc3c085dd978d7c4120572173c3cb87e75919e4a937dcca6ef9457",
          "output_hash": "f61aa7bfac7c2e96e3bf2d3386a95e45d2db52d040f05aff9ea963197eacc3f6",
          "completed_at": "2026-07-15T16:34:00Z"
        },
        {
          "step_id": "delegated",
          "action": "reporting.delegate",
          "input_hash": "5bf4dfad88c9958da759cb1561ca5fdd8f3ac9050e938bfde85af5c8d804adc9",
          "output_hash": "e6085059f197def80ae95add1f328418107bea5436c9bd002530043646a3a95c",
          "completed_at": "2026-07-15T16:34:00Z"
        }
      ],
      "steps": [
        {
          "id": "state",
          "action": "state.consistency",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-15T16:33:59Z",
          "output": {
            "status": "ok",
            "repo_root": "D:\\Projects\\prd-plugin",
            "summary": {
              "errors": 0,
              "warnings": 0,
              "infos": 0
            },
            "findings": []
          },
          "output_hash": "5a1c6e5246defb1b6b6b90ff734db95bece2886b408ab112ed9b8e67222d5568",
          "completed_at": "2026-07-15T16:34:00Z"
        },
        {
          "id": "goals",
          "action": "substrate.goals",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-15T16:34:00Z",
          "output": {
            "status": "disabled",
            "created": 0,
            "observed": 0,
            "results": []
          },
          "output_hash": "cdfd4de44a28140e686159f34f7b47975954c67e1d1efcef666e985acb136ed8",
          "completed_at": "2026-07-15T16:34:00Z"
        },
        {
          "id": "staleness",
          "action": "staleness.audit",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-15T16:34:00Z",
          "output": {
            "status": "ok",
            "repo_root": "D:\\Projects\\prd-plugin",
            "counts": {
              "stale": 0
            },
            "stale": []
          },
          "output_hash": "1e81cb0ffd0a4d04626920a203b38d2d23a264cd43e807a85d375d69cae8a658",
          "completed_at": "2026-07-15T16:34:00Z"
        },
        {
          "id": "reflections",
          "action": "reflection.list",
          "status": "completed",
          "resolved_input_hash": "0172e841ab4c13b3a4061f073f9d68a716ec87a8a5d52fde41823385e0582573",
          "started_at": "2026-07-15T16:34:00Z",
          "output": {
            "enabled": false,
            "on_stop": true,
            "max_questions_per_stop": 5,
            "categories": [
              {
                "id": "behaviour_quality",
                "name": "Behaviour quality",
                "enabled": true,
                "question_count": 3
              },
              {
                "id": "harness_friction",
                "name": "Harness friction",
                "enabled": true,
                "question_count": 2
              }
            ],
            "questions": [
              {
                "id": "RFQ-001",
                "text": "Based on the work you just carried out, would you classify your behaviour as good? Answer yes or no and cite observable evidence.",
                "enabled": true,
                "category_id": "behaviour_quality",
                "category_name": "Behaviour quality",
                "effective_enabled": false
              },
              {
                "id": "RFQ-002",
                "text": "If you answered no, what could you do differently to correct your behaviour?",
                "enabled": true,
                "category_id": "behaviour_quality",
                "category_name": "Behaviour quality",
                "effective_enabled": false
              },
              {
                "id": "RFQ-003",
                "text": "Would another attempt using the identified good behaviours materially improve the outcome? Answer yes or no and state the next corrective action if yes.",
                "enabled": true,
                "category_id": "behaviour_quality",
                "category_name": "Behaviour quality",
                "effective_enabled": false
              },
              {
                "id": "RFQ-004",
                "text": "What harness friction points made this work more difficult?",
                "enabled": true,
                "category_id": "harness_friction",
                "category_name": "Harness friction",
                "effective_enabled": false
              },
              {
                "id": "RFQ-005",
                "text": "What up to three changes would most improve friction in the harness?",
                "enabled": true,
                "category_id": "harness_friction",
                "category_name": "Harness friction",
                "effective_enabled": false
              }
            ]
          },
          "output_hash": "c1b6b635c0bab21120657277f14ef6f839909875f307a3745fa48aee2bd6e449",
          "completed_at": "2026-07-15T16:34:00Z"
        },
        {
          "id": "bundle",
          "action": "reporting.bundle",
          "status": "completed",
          "resolved_input_hash": "aed8ebb688dc3c085dd978d7c4120572173c3cb87e75919e4a937dcca6ef9457",
          "started_at": "2026-07-15T16:34:00Z",
          "output": {
            "contract_version": 1,
            "task": "session_summary",
            "repo": "prd-plugin",
            "policy": {
              "enabled": false,
              "executor": "ai-collab",
              "contract_version": 1,
              "profile": "fast-capable",
              "tasks": [
                "report_summary",
                "session_summary",
                "wiki_synthesis",
                "triage_draft"
              ],
              "fallback": "main",
              "require_source_refs": true,
              "max_input_tokens": 12000,
              "max_output_tokens": 1500,
              "timeout_seconds": 30
            },
            "facts": {
              "requests_by_status": {
                "deferred": 1,
                "implemented": 80,
                "proposed": 1,
                "rejected": 1
              },
              "active_requests": [
                {
                  "id": "REQ-072",
                  "status": "proposed",
                  "severity": "low",
                  "summary": "opencode run-until-done: session.idle is a non-blocking notification, so the stop guard can't force continuation on opencode (currently degrades to a printed reminder, 0.5.95). Investigate whether opencode exposes any vetoable/continuation mechanism (a different event, a permission hook, or a 'continue' API) to enforce run-until-done, or accept the reminder as the permanent ceiling. Low priority — user rarely uses opencode."
                }
              ],
              "active_tracking": [],
              "open_health": [],
              "evidence_count": 105,
              "decision_count": 10
            },
            "findings": [],
            "source_refs": [
              ".prd_plugin/config.json",
              ".prd_plugin/state/decisions.json",
              ".prd_plugin/state/evidence.json",
              ".prd_plugin/state/health.json",
              ".prd_plugin/state/requests.json",
              ".prd_plugin/state/tracking.json",
              "REQ-072"
            ],
            "constraints": {
              "max_input_tokens": 12000,
              "max_output_tokens": 1500,
              "timeout_seconds": 30,
              "require_source_refs": true,
              "no_project_state_writes": true,
              "no_secrets_or_local_session_content": true
            }
          },
          "output_hash": "f61aa7bfac7c2e96e3bf2d3386a95e45d2db52d040f05aff9ea963197eacc3f6",
          "completed_at": "2026-07-15T16:34:00Z"
        },
        {
          "id": "delegated",
          "action": "reporting.delegate",
          "status": "completed",
          "resolved_input_hash": "5bf4dfad88c9958da759cb1561ca5fdd8f3ac9050e938bfde85af5c8d804adc9",
          "started_at": "2026-07-15T16:34:00Z",
          "output": {
            "status": "fallback",
            "action": "main",
            "reason": "disabled"
          },
          "output_hash": "e6085059f197def80ae95add1f328418107bea5436c9bd002530043646a3a95c",
          "completed_at": "2026-07-15T16:34:00Z"
        }
      ],
      "completed_at": "2026-07-15T16:34:00Z"
    },
    {
      "id": "WFR-109",
      "schema_version": "1.0",
      "workflow_id": "session.start",
      "workflow_version": 1,
      "definition_hash": "d0f98da02571e6dd27fec4aed92d3c82af9db75f8b90b997bf665635c7b7f6ca",
      "plan_hash": "b5072615ca3b7e9a3bd85d50d1f069d99ef2a9816b32c03a370745ed7a205536",
      "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
      "inputs": {},
      "idempotency_key": "hook:SessionStart:019f66a6-a47a-7671-86e4-533ebf3418be",
      "status": "completed",
      "attempt": 1,
      "created_at": "2026-07-15T16:40:31Z",
      "updated_at": "2026-07-15T16:40:33Z",
      "receipts": [
        {
          "step_id": "config",
          "action": "config.audit",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "3782ec2317c0c8ee7598634310a2804d8aae4735f557498f9d3b8fae7c45e1e5",
          "completed_at": "2026-07-15T16:40:31Z"
        },
        {
          "step_id": "services",
          "action": "services.audit",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "13dcc58bd528f3efa3e6e0fa0853a6eedc376f1f3685fbd4869cbb2b60382ee3",
          "completed_at": "2026-07-15T16:40:31Z"
        },
        {
          "step_id": "state",
          "action": "state.consistency",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "5a1c6e5246defb1b6b6b90ff734db95bece2886b408ab112ed9b8e67222d5568",
          "completed_at": "2026-07-15T16:40:32Z"
        },
        {
          "step_id": "status",
          "action": "state.query",
          "input_hash": "a15231a2142a2a9a85355a8b9cbbccffe01a9c9c2c2fd8c2bc2987cdc481564a",
          "output_hash": "8ba9f7d3cc6705af37de9e3324d1258e21ccacb5ab0b2d7b389ca08885e11187",
          "completed_at": "2026-07-15T16:40:32Z"
        },
        {
          "step_id": "substrate",
          "action": "substrate.preflight",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "a6df426290b4549a59eecaa0519ead9bcc50b7fcb25bd2185ff6047960f19ccb",
          "completed_at": "2026-07-15T16:40:32Z"
        },
        {
          "step_id": "notices",
          "action": "substrate.notices",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "38b904a1cf83df048360fb2480571b749fd98d57e11f1afdffb5a74a78166fea",
          "completed_at": "2026-07-15T16:40:33Z"
        },
        {
          "step_id": "goals",
          "action": "substrate.goals",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "cdfd4de44a28140e686159f34f7b47975954c67e1d1efcef666e985acb136ed8",
          "completed_at": "2026-07-15T16:40:33Z"
        }
      ],
      "steps": [
        {
          "id": "config",
          "action": "config.audit",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-15T16:40:31Z",
          "output": {
            "status": "ok",
            "summary": {
              "settings": 195,
              "mutable": 186,
              "read_only_or_managed": 9,
              "unclassified": 0,
              "unknown": 0,
              "invalid": 0,
              "missing_using_defaults": 0
            },
            "unclassified_keys": [],
            "unknown_keys": [],
            "invalid_values": [],
            "missing_using_defaults": []
          },
          "output_hash": "3782ec2317c0c8ee7598634310a2804d8aae4735f557498f9d3b8fae7c45e1e5",
          "completed_at": "2026-07-15T16:40:31Z"
        },
        {
          "id": "services",
          "action": "services.audit",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-15T16:40:31Z",
          "output": {
            "status": "ok",
            "summary": {
              "critical": 0,
              "high": 0,
              "medium": 0,
              "low": 0
            },
            "findings": []
          },
          "output_hash": "13dcc58bd528f3efa3e6e0fa0853a6eedc376f1f3685fbd4869cbb2b60382ee3",
          "completed_at": "2026-07-15T16:40:31Z"
        },
        {
          "id": "state",
          "action": "state.consistency",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-15T16:40:32Z",
          "output": {
            "status": "ok",
            "repo_root": "D:\\Projects\\prd-plugin",
            "summary": {
              "errors": 0,
              "warnings": 0,
              "infos": 0
            },
            "findings": []
          },
          "output_hash": "5a1c6e5246defb1b6b6b90ff734db95bece2886b408ab112ed9b8e67222d5568",
          "completed_at": "2026-07-15T16:40:32Z"
        },
        {
          "id": "status",
          "action": "state.query",
          "status": "completed",
          "resolved_input_hash": "a15231a2142a2a9a85355a8b9cbbccffe01a9c9c2c2fd8c2bc2987cdc481564a",
          "started_at": "2026-07-15T16:40:32Z",
          "output": {
            "repo_root": "D:\\Projects\\prd-plugin",
            "autonomy_level": "autonomous",
            "requests_by_status": {
              "deferred": 1,
              "implemented": 80,
              "proposed": 1,
              "rejected": 1
            },
            "active_tracking": [],
            "tracking_branches": [],
            "tracking_branch_counts": {},
            "tracking_branch_errors": [],
            "open_health": [],
            "stale_count": 0,
            "skill_usage": {
              "project-decision-policy": 1,
              "project-request-intake": 1,
              "project-test-driven-implementation": 1,
              "project-verification-before-completion": 1,
              "project-llm-wiki": 1
            },
            "wiki_backfill_pending": false,
            "version_update": null
          },
          "output_hash": "8ba9f7d3cc6705af37de9e3324d1258e21ccacb5ab0b2d7b389ca08885e11187",
          "completed_at": "2026-07-15T16:40:32Z"
        },
        {
          "id": "substrate",
          "action": "substrate.preflight",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-15T16:40:32Z",
          "output": {
            "status": "disabled",
            "services": {
              "status": "ok",
              "summary": {
                "critical": 0,
                "high": 0,
                "medium": 0,
                "low": 0
              },
              "findings": []
            },
            "policy": {
              "configured": {
                "enabled": false,
                "mode": "off",
                "capabilities": [
                  "records",
                  "graph",
                  "events"
                ],
                "contract_version": 2,
                "require_source_refs": true,
                "endpoint": "http://127.0.0.1:47124",
                "manual_url": "http://127.0.0.1:47124/utcp.json",
                "knowledge_browse_url": "http://127.0.0.1:5276",
                "auth_env": "AI_COLLAB_API_KEY",
                "timeout_seconds": 5,
                "max_result_bytes": 1048576,
                "cache_ttl_seconds": 60,
                "fallback": "local",
                "automation": {
                  "discovery_on_session_start": true,
                  "knowledge_recall": true,
                  "memory_recall": true,
                  "context_enrichment": true,
                  "notices_on_session_start": false,
                  "goals_sync": false,
                  "telemetry_on_maintenance": false,
                  "reporting_dispatch": true,
                  "judgment_dispatch": true,
                  "verification_execution": true
                }
              },
              "active": false,
              "effective_mode": "off",
              "effective_capabilities": []
            }
          },
          "output_hash": "a6df426290b4549a59eecaa0519ead9bcc50b7fcb25bd2185ff6047960f19ccb",
          "completed_at": "2026-07-15T16:40:32Z"
        },
        {
          "id": "notices",
          "action": "substrate.notices",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-15T16:40:32Z",
          "output": {
            "status": "disabled"
          },
          "output_hash": "38b904a1cf83df048360fb2480571b749fd98d57e11f1afdffb5a74a78166fea",
          "completed_at": "2026-07-15T16:40:33Z"
        },
        {
          "id": "goals",
          "action": "substrate.goals",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-15T16:40:33Z",
          "output": {
            "status": "disabled",
            "created": 0,
            "observed": 0,
            "results": []
          },
          "output_hash": "cdfd4de44a28140e686159f34f7b47975954c67e1d1efcef666e985acb136ed8",
          "completed_at": "2026-07-15T16:40:33Z"
        }
      ],
      "completed_at": "2026-07-15T16:40:33Z"
    },
    {
      "id": "WFR-110",
      "schema_version": "1.0",
      "workflow_id": "session.stop",
      "workflow_version": 1,
      "definition_hash": "0cef7bb3e28321be8f85375c154955a69310ce297e47de3f3b8dd48f77a2f07d",
      "plan_hash": "a5e1d77ac734217487fc418e29c7163f4e81178e25d171e70cd4c999d527d3e8",
      "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
      "inputs": {},
      "idempotency_key": "hook:Stop:019f66a6-a47a-7671-86e4-533ebf3418be",
      "status": "completed",
      "attempt": 1,
      "created_at": "2026-07-15T16:41:19Z",
      "updated_at": "2026-07-15T16:41:20Z",
      "receipts": [
        {
          "step_id": "state",
          "action": "state.consistency",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "5a1c6e5246defb1b6b6b90ff734db95bece2886b408ab112ed9b8e67222d5568",
          "completed_at": "2026-07-15T16:41:20Z"
        },
        {
          "step_id": "goals",
          "action": "substrate.goals",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "cdfd4de44a28140e686159f34f7b47975954c67e1d1efcef666e985acb136ed8",
          "completed_at": "2026-07-15T16:41:20Z"
        },
        {
          "step_id": "staleness",
          "action": "staleness.audit",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "1e81cb0ffd0a4d04626920a203b38d2d23a264cd43e807a85d375d69cae8a658",
          "completed_at": "2026-07-15T16:41:20Z"
        },
        {
          "step_id": "reflections",
          "action": "reflection.list",
          "input_hash": "0172e841ab4c13b3a4061f073f9d68a716ec87a8a5d52fde41823385e0582573",
          "output_hash": "c1b6b635c0bab21120657277f14ef6f839909875f307a3745fa48aee2bd6e449",
          "completed_at": "2026-07-15T16:41:20Z"
        },
        {
          "step_id": "bundle",
          "action": "reporting.bundle",
          "input_hash": "aed8ebb688dc3c085dd978d7c4120572173c3cb87e75919e4a937dcca6ef9457",
          "output_hash": "f61aa7bfac7c2e96e3bf2d3386a95e45d2db52d040f05aff9ea963197eacc3f6",
          "completed_at": "2026-07-15T16:41:20Z"
        },
        {
          "step_id": "delegated",
          "action": "reporting.delegate",
          "input_hash": "5bf4dfad88c9958da759cb1561ca5fdd8f3ac9050e938bfde85af5c8d804adc9",
          "output_hash": "e6085059f197def80ae95add1f328418107bea5436c9bd002530043646a3a95c",
          "completed_at": "2026-07-15T16:41:20Z"
        }
      ],
      "steps": [
        {
          "id": "state",
          "action": "state.consistency",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-15T16:41:19Z",
          "output": {
            "status": "ok",
            "repo_root": "D:\\Projects\\prd-plugin",
            "summary": {
              "errors": 0,
              "warnings": 0,
              "infos": 0
            },
            "findings": []
          },
          "output_hash": "5a1c6e5246defb1b6b6b90ff734db95bece2886b408ab112ed9b8e67222d5568",
          "completed_at": "2026-07-15T16:41:20Z"
        },
        {
          "id": "goals",
          "action": "substrate.goals",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-15T16:41:20Z",
          "output": {
            "status": "disabled",
            "created": 0,
            "observed": 0,
            "results": []
          },
          "output_hash": "cdfd4de44a28140e686159f34f7b47975954c67e1d1efcef666e985acb136ed8",
          "completed_at": "2026-07-15T16:41:20Z"
        },
        {
          "id": "staleness",
          "action": "staleness.audit",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-15T16:41:20Z",
          "output": {
            "status": "ok",
            "repo_root": "D:\\Projects\\prd-plugin",
            "counts": {
              "stale": 0
            },
            "stale": []
          },
          "output_hash": "1e81cb0ffd0a4d04626920a203b38d2d23a264cd43e807a85d375d69cae8a658",
          "completed_at": "2026-07-15T16:41:20Z"
        },
        {
          "id": "reflections",
          "action": "reflection.list",
          "status": "completed",
          "resolved_input_hash": "0172e841ab4c13b3a4061f073f9d68a716ec87a8a5d52fde41823385e0582573",
          "started_at": "2026-07-15T16:41:20Z",
          "output": {
            "enabled": false,
            "on_stop": true,
            "max_questions_per_stop": 5,
            "categories": [
              {
                "id": "behaviour_quality",
                "name": "Behaviour quality",
                "enabled": true,
                "question_count": 3
              },
              {
                "id": "harness_friction",
                "name": "Harness friction",
                "enabled": true,
                "question_count": 2
              }
            ],
            "questions": [
              {
                "id": "RFQ-001",
                "text": "Based on the work you just carried out, would you classify your behaviour as good? Answer yes or no and cite observable evidence.",
                "enabled": true,
                "category_id": "behaviour_quality",
                "category_name": "Behaviour quality",
                "effective_enabled": false
              },
              {
                "id": "RFQ-002",
                "text": "If you answered no, what could you do differently to correct your behaviour?",
                "enabled": true,
                "category_id": "behaviour_quality",
                "category_name": "Behaviour quality",
                "effective_enabled": false
              },
              {
                "id": "RFQ-003",
                "text": "Would another attempt using the identified good behaviours materially improve the outcome? Answer yes or no and state the next corrective action if yes.",
                "enabled": true,
                "category_id": "behaviour_quality",
                "category_name": "Behaviour quality",
                "effective_enabled": false
              },
              {
                "id": "RFQ-004",
                "text": "What harness friction points made this work more difficult?",
                "enabled": true,
                "category_id": "harness_friction",
                "category_name": "Harness friction",
                "effective_enabled": false
              },
              {
                "id": "RFQ-005",
                "text": "What up to three changes would most improve friction in the harness?",
                "enabled": true,
                "category_id": "harness_friction",
                "category_name": "Harness friction",
                "effective_enabled": false
              }
            ]
          },
          "output_hash": "c1b6b635c0bab21120657277f14ef6f839909875f307a3745fa48aee2bd6e449",
          "completed_at": "2026-07-15T16:41:20Z"
        },
        {
          "id": "bundle",
          "action": "reporting.bundle",
          "status": "completed",
          "resolved_input_hash": "aed8ebb688dc3c085dd978d7c4120572173c3cb87e75919e4a937dcca6ef9457",
          "started_at": "2026-07-15T16:41:20Z",
          "output": {
            "contract_version": 1,
            "task": "session_summary",
            "repo": "prd-plugin",
            "policy": {
              "enabled": false,
              "executor": "ai-collab",
              "contract_version": 1,
              "profile": "fast-capable",
              "tasks": [
                "report_summary",
                "session_summary",
                "wiki_synthesis",
                "triage_draft"
              ],
              "fallback": "main",
              "require_source_refs": true,
              "max_input_tokens": 12000,
              "max_output_tokens": 1500,
              "timeout_seconds": 30
            },
            "facts": {
              "requests_by_status": {
                "deferred": 1,
                "implemented": 80,
                "proposed": 1,
                "rejected": 1
              },
              "active_requests": [
                {
                  "id": "REQ-072",
                  "status": "proposed",
                  "severity": "low",
                  "summary": "opencode run-until-done: session.idle is a non-blocking notification, so the stop guard can't force continuation on opencode (currently degrades to a printed reminder, 0.5.95). Investigate whether opencode exposes any vetoable/continuation mechanism (a different event, a permission hook, or a 'continue' API) to enforce run-until-done, or accept the reminder as the permanent ceiling. Low priority — user rarely uses opencode."
                }
              ],
              "active_tracking": [],
              "open_health": [],
              "evidence_count": 105,
              "decision_count": 10
            },
            "findings": [],
            "source_refs": [
              ".prd_plugin/config.json",
              ".prd_plugin/state/decisions.json",
              ".prd_plugin/state/evidence.json",
              ".prd_plugin/state/health.json",
              ".prd_plugin/state/requests.json",
              ".prd_plugin/state/tracking.json",
              "REQ-072"
            ],
            "constraints": {
              "max_input_tokens": 12000,
              "max_output_tokens": 1500,
              "timeout_seconds": 30,
              "require_source_refs": true,
              "no_project_state_writes": true,
              "no_secrets_or_local_session_content": true
            }
          },
          "output_hash": "f61aa7bfac7c2e96e3bf2d3386a95e45d2db52d040f05aff9ea963197eacc3f6",
          "completed_at": "2026-07-15T16:41:20Z"
        },
        {
          "id": "delegated",
          "action": "reporting.delegate",
          "status": "completed",
          "resolved_input_hash": "5bf4dfad88c9958da759cb1561ca5fdd8f3ac9050e938bfde85af5c8d804adc9",
          "started_at": "2026-07-15T16:41:20Z",
          "output": {
            "status": "fallback",
            "action": "main",
            "reason": "disabled"
          },
          "output_hash": "e6085059f197def80ae95add1f328418107bea5436c9bd002530043646a3a95c",
          "completed_at": "2026-07-15T16:41:20Z"
        }
      ],
      "completed_at": "2026-07-15T16:41:20Z"
    },
    {
      "id": "WFR-111",
      "schema_version": "1.0",
      "workflow_id": "session.start",
      "workflow_version": 1,
      "definition_hash": "d0f98da02571e6dd27fec4aed92d3c82af9db75f8b90b997bf665635c7b7f6ca",
      "plan_hash": "b5072615ca3b7e9a3bd85d50d1f069d99ef2a9816b32c03a370745ed7a205536",
      "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
      "inputs": {},
      "idempotency_key": "hook:SessionStart:019f66a7-a89d-72d3-9e4e-71b1dfd3e4e1",
      "status": "completed",
      "attempt": 1,
      "created_at": "2026-07-15T16:41:33Z",
      "updated_at": "2026-07-15T16:41:34Z",
      "receipts": [
        {
          "step_id": "config",
          "action": "config.audit",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "3782ec2317c0c8ee7598634310a2804d8aae4735f557498f9d3b8fae7c45e1e5",
          "completed_at": "2026-07-15T16:41:33Z"
        },
        {
          "step_id": "services",
          "action": "services.audit",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "13dcc58bd528f3efa3e6e0fa0853a6eedc376f1f3685fbd4869cbb2b60382ee3",
          "completed_at": "2026-07-15T16:41:33Z"
        },
        {
          "step_id": "state",
          "action": "state.consistency",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "5a1c6e5246defb1b6b6b90ff734db95bece2886b408ab112ed9b8e67222d5568",
          "completed_at": "2026-07-15T16:41:34Z"
        },
        {
          "step_id": "status",
          "action": "state.query",
          "input_hash": "a15231a2142a2a9a85355a8b9cbbccffe01a9c9c2c2fd8c2bc2987cdc481564a",
          "output_hash": "8ba9f7d3cc6705af37de9e3324d1258e21ccacb5ab0b2d7b389ca08885e11187",
          "completed_at": "2026-07-15T16:41:34Z"
        },
        {
          "step_id": "substrate",
          "action": "substrate.preflight",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "a6df426290b4549a59eecaa0519ead9bcc50b7fcb25bd2185ff6047960f19ccb",
          "completed_at": "2026-07-15T16:41:34Z"
        },
        {
          "step_id": "notices",
          "action": "substrate.notices",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "38b904a1cf83df048360fb2480571b749fd98d57e11f1afdffb5a74a78166fea",
          "completed_at": "2026-07-15T16:41:34Z"
        },
        {
          "step_id": "goals",
          "action": "substrate.goals",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "cdfd4de44a28140e686159f34f7b47975954c67e1d1efcef666e985acb136ed8",
          "completed_at": "2026-07-15T16:41:34Z"
        }
      ],
      "steps": [
        {
          "id": "config",
          "action": "config.audit",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-15T16:41:33Z",
          "output": {
            "status": "ok",
            "summary": {
              "settings": 195,
              "mutable": 186,
              "read_only_or_managed": 9,
              "unclassified": 0,
              "unknown": 0,
              "invalid": 0,
              "missing_using_defaults": 0
            },
            "unclassified_keys": [],
            "unknown_keys": [],
            "invalid_values": [],
            "missing_using_defaults": []
          },
          "output_hash": "3782ec2317c0c8ee7598634310a2804d8aae4735f557498f9d3b8fae7c45e1e5",
          "completed_at": "2026-07-15T16:41:33Z"
        },
        {
          "id": "services",
          "action": "services.audit",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-15T16:41:33Z",
          "output": {
            "status": "ok",
            "summary": {
              "critical": 0,
              "high": 0,
              "medium": 0,
              "low": 0
            },
            "findings": []
          },
          "output_hash": "13dcc58bd528f3efa3e6e0fa0853a6eedc376f1f3685fbd4869cbb2b60382ee3",
          "completed_at": "2026-07-15T16:41:33Z"
        },
        {
          "id": "state",
          "action": "state.consistency",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-15T16:41:33Z",
          "output": {
            "status": "ok",
            "repo_root": "D:\\Projects\\prd-plugin",
            "summary": {
              "errors": 0,
              "warnings": 0,
              "infos": 0
            },
            "findings": []
          },
          "output_hash": "5a1c6e5246defb1b6b6b90ff734db95bece2886b408ab112ed9b8e67222d5568",
          "completed_at": "2026-07-15T16:41:34Z"
        },
        {
          "id": "status",
          "action": "state.query",
          "status": "completed",
          "resolved_input_hash": "a15231a2142a2a9a85355a8b9cbbccffe01a9c9c2c2fd8c2bc2987cdc481564a",
          "started_at": "2026-07-15T16:41:34Z",
          "output": {
            "repo_root": "D:\\Projects\\prd-plugin",
            "autonomy_level": "autonomous",
            "requests_by_status": {
              "deferred": 1,
              "implemented": 80,
              "proposed": 1,
              "rejected": 1
            },
            "active_tracking": [],
            "tracking_branches": [],
            "tracking_branch_counts": {},
            "tracking_branch_errors": [],
            "open_health": [],
            "stale_count": 0,
            "skill_usage": {
              "project-decision-policy": 1,
              "project-request-intake": 1,
              "project-test-driven-implementation": 1,
              "project-verification-before-completion": 1,
              "project-llm-wiki": 1
            },
            "wiki_backfill_pending": false,
            "version_update": null
          },
          "output_hash": "8ba9f7d3cc6705af37de9e3324d1258e21ccacb5ab0b2d7b389ca08885e11187",
          "completed_at": "2026-07-15T16:41:34Z"
        },
        {
          "id": "substrate",
          "action": "substrate.preflight",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-15T16:41:34Z",
          "output": {
            "status": "disabled",
            "services": {
              "status": "ok",
              "summary": {
                "critical": 0,
                "high": 0,
                "medium": 0,
                "low": 0
              },
              "findings": []
            },
            "policy": {
              "configured": {
                "enabled": false,
                "mode": "off",
                "capabilities": [
                  "records",
                  "graph",
                  "events"
                ],
                "contract_version": 2,
                "require_source_refs": true,
                "endpoint": "http://127.0.0.1:47124",
                "manual_url": "http://127.0.0.1:47124/utcp.json",
                "knowledge_browse_url": "http://127.0.0.1:5276",
                "auth_env": "AI_COLLAB_API_KEY",
                "timeout_seconds": 5,
                "max_result_bytes": 1048576,
                "cache_ttl_seconds": 60,
                "fallback": "local",
                "automation": {
                  "discovery_on_session_start": true,
                  "knowledge_recall": true,
                  "memory_recall": true,
                  "context_enrichment": true,
                  "notices_on_session_start": false,
                  "goals_sync": false,
                  "telemetry_on_maintenance": false,
                  "reporting_dispatch": true,
                  "judgment_dispatch": true,
                  "verification_execution": true
                }
              },
              "active": false,
              "effective_mode": "off",
              "effective_capabilities": []
            }
          },
          "output_hash": "a6df426290b4549a59eecaa0519ead9bcc50b7fcb25bd2185ff6047960f19ccb",
          "completed_at": "2026-07-15T16:41:34Z"
        },
        {
          "id": "notices",
          "action": "substrate.notices",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-15T16:41:34Z",
          "output": {
            "status": "disabled"
          },
          "output_hash": "38b904a1cf83df048360fb2480571b749fd98d57e11f1afdffb5a74a78166fea",
          "completed_at": "2026-07-15T16:41:34Z"
        },
        {
          "id": "goals",
          "action": "substrate.goals",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-15T16:41:34Z",
          "output": {
            "status": "disabled",
            "created": 0,
            "observed": 0,
            "results": []
          },
          "output_hash": "cdfd4de44a28140e686159f34f7b47975954c67e1d1efcef666e985acb136ed8",
          "completed_at": "2026-07-15T16:41:34Z"
        }
      ],
      "completed_at": "2026-07-15T16:41:34Z"
    },
    {
      "id": "WFR-112",
      "schema_version": "1.0",
      "workflow_id": "session.stop",
      "workflow_version": 1,
      "definition_hash": "0cef7bb3e28321be8f85375c154955a69310ce297e47de3f3b8dd48f77a2f07d",
      "plan_hash": "a5e1d77ac734217487fc418e29c7163f4e81178e25d171e70cd4c999d527d3e8",
      "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
      "inputs": {},
      "idempotency_key": "hook:Stop:019f66a7-a89d-72d3-9e4e-71b1dfd3e4e1",
      "status": "completed",
      "attempt": 1,
      "created_at": "2026-07-15T16:41:40Z",
      "updated_at": "2026-07-15T16:41:41Z",
      "receipts": [
        {
          "step_id": "state",
          "action": "state.consistency",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "5a1c6e5246defb1b6b6b90ff734db95bece2886b408ab112ed9b8e67222d5568",
          "completed_at": "2026-07-15T16:41:40Z"
        },
        {
          "step_id": "goals",
          "action": "substrate.goals",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "cdfd4de44a28140e686159f34f7b47975954c67e1d1efcef666e985acb136ed8",
          "completed_at": "2026-07-15T16:41:40Z"
        },
        {
          "step_id": "staleness",
          "action": "staleness.audit",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "1e81cb0ffd0a4d04626920a203b38d2d23a264cd43e807a85d375d69cae8a658",
          "completed_at": "2026-07-15T16:41:40Z"
        },
        {
          "step_id": "reflections",
          "action": "reflection.list",
          "input_hash": "0172e841ab4c13b3a4061f073f9d68a716ec87a8a5d52fde41823385e0582573",
          "output_hash": "c1b6b635c0bab21120657277f14ef6f839909875f307a3745fa48aee2bd6e449",
          "completed_at": "2026-07-15T16:41:40Z"
        },
        {
          "step_id": "bundle",
          "action": "reporting.bundle",
          "input_hash": "aed8ebb688dc3c085dd978d7c4120572173c3cb87e75919e4a937dcca6ef9457",
          "output_hash": "f61aa7bfac7c2e96e3bf2d3386a95e45d2db52d040f05aff9ea963197eacc3f6",
          "completed_at": "2026-07-15T16:41:40Z"
        },
        {
          "step_id": "delegated",
          "action": "reporting.delegate",
          "input_hash": "5bf4dfad88c9958da759cb1561ca5fdd8f3ac9050e938bfde85af5c8d804adc9",
          "output_hash": "e6085059f197def80ae95add1f328418107bea5436c9bd002530043646a3a95c",
          "completed_at": "2026-07-15T16:41:41Z"
        }
      ],
      "steps": [
        {
          "id": "state",
          "action": "state.consistency",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-15T16:41:40Z",
          "output": {
            "status": "ok",
            "repo_root": "D:\\Projects\\prd-plugin",
            "summary": {
              "errors": 0,
              "warnings": 0,
              "infos": 0
            },
            "findings": []
          },
          "output_hash": "5a1c6e5246defb1b6b6b90ff734db95bece2886b408ab112ed9b8e67222d5568",
          "completed_at": "2026-07-15T16:41:40Z"
        },
        {
          "id": "goals",
          "action": "substrate.goals",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-15T16:41:40Z",
          "output": {
            "status": "disabled",
            "created": 0,
            "observed": 0,
            "results": []
          },
          "output_hash": "cdfd4de44a28140e686159f34f7b47975954c67e1d1efcef666e985acb136ed8",
          "completed_at": "2026-07-15T16:41:40Z"
        },
        {
          "id": "staleness",
          "action": "staleness.audit",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-15T16:41:40Z",
          "output": {
            "status": "ok",
            "repo_root": "D:\\Projects\\prd-plugin",
            "counts": {
              "stale": 0
            },
            "stale": []
          },
          "output_hash": "1e81cb0ffd0a4d04626920a203b38d2d23a264cd43e807a85d375d69cae8a658",
          "completed_at": "2026-07-15T16:41:40Z"
        },
        {
          "id": "reflections",
          "action": "reflection.list",
          "status": "completed",
          "resolved_input_hash": "0172e841ab4c13b3a4061f073f9d68a716ec87a8a5d52fde41823385e0582573",
          "started_at": "2026-07-15T16:41:40Z",
          "output": {
            "enabled": false,
            "on_stop": true,
            "max_questions_per_stop": 5,
            "categories": [
              {
                "id": "behaviour_quality",
                "name": "Behaviour quality",
                "enabled": true,
                "question_count": 3
              },
              {
                "id": "harness_friction",
                "name": "Harness friction",
                "enabled": true,
                "question_count": 2
              }
            ],
            "questions": [
              {
                "id": "RFQ-001",
                "text": "Based on the work you just carried out, would you classify your behaviour as good? Answer yes or no and cite observable evidence.",
                "enabled": true,
                "category_id": "behaviour_quality",
                "category_name": "Behaviour quality",
                "effective_enabled": false
              },
              {
                "id": "RFQ-002",
                "text": "If you answered no, what could you do differently to correct your behaviour?",
                "enabled": true,
                "category_id": "behaviour_quality",
                "category_name": "Behaviour quality",
                "effective_enabled": false
              },
              {
                "id": "RFQ-003",
                "text": "Would another attempt using the identified good behaviours materially improve the outcome? Answer yes or no and state the next corrective action if yes.",
                "enabled": true,
                "category_id": "behaviour_quality",
                "category_name": "Behaviour quality",
                "effective_enabled": false
              },
              {
                "id": "RFQ-004",
                "text": "What harness friction points made this work more difficult?",
                "enabled": true,
                "category_id": "harness_friction",
                "category_name": "Harness friction",
                "effective_enabled": false
              },
              {
                "id": "RFQ-005",
                "text": "What up to three changes would most improve friction in the harness?",
                "enabled": true,
                "category_id": "harness_friction",
                "category_name": "Harness friction",
                "effective_enabled": false
              }
            ]
          },
          "output_hash": "c1b6b635c0bab21120657277f14ef6f839909875f307a3745fa48aee2bd6e449",
          "completed_at": "2026-07-15T16:41:40Z"
        },
        {
          "id": "bundle",
          "action": "reporting.bundle",
          "status": "completed",
          "resolved_input_hash": "aed8ebb688dc3c085dd978d7c4120572173c3cb87e75919e4a937dcca6ef9457",
          "started_at": "2026-07-15T16:41:40Z",
          "output": {
            "contract_version": 1,
            "task": "session_summary",
            "repo": "prd-plugin",
            "policy": {
              "enabled": false,
              "executor": "ai-collab",
              "contract_version": 1,
              "profile": "fast-capable",
              "tasks": [
                "report_summary",
                "session_summary",
                "wiki_synthesis",
                "triage_draft"
              ],
              "fallback": "main",
              "require_source_refs": true,
              "max_input_tokens": 12000,
              "max_output_tokens": 1500,
              "timeout_seconds": 30
            },
            "facts": {
              "requests_by_status": {
                "deferred": 1,
                "implemented": 80,
                "proposed": 1,
                "rejected": 1
              },
              "active_requests": [
                {
                  "id": "REQ-072",
                  "status": "proposed",
                  "severity": "low",
                  "summary": "opencode run-until-done: session.idle is a non-blocking notification, so the stop guard can't force continuation on opencode (currently degrades to a printed reminder, 0.5.95). Investigate whether opencode exposes any vetoable/continuation mechanism (a different event, a permission hook, or a 'continue' API) to enforce run-until-done, or accept the reminder as the permanent ceiling. Low priority — user rarely uses opencode."
                }
              ],
              "active_tracking": [],
              "open_health": [],
              "evidence_count": 105,
              "decision_count": 10
            },
            "findings": [],
            "source_refs": [
              ".prd_plugin/config.json",
              ".prd_plugin/state/decisions.json",
              ".prd_plugin/state/evidence.json",
              ".prd_plugin/state/health.json",
              ".prd_plugin/state/requests.json",
              ".prd_plugin/state/tracking.json",
              "REQ-072"
            ],
            "constraints": {
              "max_input_tokens": 12000,
              "max_output_tokens": 1500,
              "timeout_seconds": 30,
              "require_source_refs": true,
              "no_project_state_writes": true,
              "no_secrets_or_local_session_content": true
            }
          },
          "output_hash": "f61aa7bfac7c2e96e3bf2d3386a95e45d2db52d040f05aff9ea963197eacc3f6",
          "completed_at": "2026-07-15T16:41:40Z"
        },
        {
          "id": "delegated",
          "action": "reporting.delegate",
          "status": "completed",
          "resolved_input_hash": "5bf4dfad88c9958da759cb1561ca5fdd8f3ac9050e938bfde85af5c8d804adc9",
          "started_at": "2026-07-15T16:41:40Z",
          "output": {
            "status": "fallback",
            "action": "main",
            "reason": "disabled"
          },
          "output_hash": "e6085059f197def80ae95add1f328418107bea5436c9bd002530043646a3a95c",
          "completed_at": "2026-07-15T16:41:41Z"
        }
      ],
      "completed_at": "2026-07-15T16:41:41Z"
    },
    {
      "id": "WFR-113",
      "schema_version": "1.0",
      "workflow_id": "session.start",
      "workflow_version": 1,
      "definition_hash": "d0f98da02571e6dd27fec4aed92d3c82af9db75f8b90b997bf665635c7b7f6ca",
      "plan_hash": "b5072615ca3b7e9a3bd85d50d1f069d99ef2a9816b32c03a370745ed7a205536",
      "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
      "inputs": {},
      "idempotency_key": "hook:SessionStart:019f66a8-17f3-7ad3-8380-7ca8346f4a49",
      "status": "completed",
      "attempt": 1,
      "created_at": "2026-07-15T16:42:02Z",
      "updated_at": "2026-07-15T16:42:03Z",
      "receipts": [
        {
          "step_id": "config",
          "action": "config.audit",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "3782ec2317c0c8ee7598634310a2804d8aae4735f557498f9d3b8fae7c45e1e5",
          "completed_at": "2026-07-15T16:42:02Z"
        },
        {
          "step_id": "services",
          "action": "services.audit",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "13dcc58bd528f3efa3e6e0fa0853a6eedc376f1f3685fbd4869cbb2b60382ee3",
          "completed_at": "2026-07-15T16:42:02Z"
        },
        {
          "step_id": "state",
          "action": "state.consistency",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "5a1c6e5246defb1b6b6b90ff734db95bece2886b408ab112ed9b8e67222d5568",
          "completed_at": "2026-07-15T16:42:02Z"
        },
        {
          "step_id": "status",
          "action": "state.query",
          "input_hash": "a15231a2142a2a9a85355a8b9cbbccffe01a9c9c2c2fd8c2bc2987cdc481564a",
          "output_hash": "8ba9f7d3cc6705af37de9e3324d1258e21ccacb5ab0b2d7b389ca08885e11187",
          "completed_at": "2026-07-15T16:42:02Z"
        },
        {
          "step_id": "substrate",
          "action": "substrate.preflight",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "a6df426290b4549a59eecaa0519ead9bcc50b7fcb25bd2185ff6047960f19ccb",
          "completed_at": "2026-07-15T16:42:03Z"
        },
        {
          "step_id": "notices",
          "action": "substrate.notices",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "38b904a1cf83df048360fb2480571b749fd98d57e11f1afdffb5a74a78166fea",
          "completed_at": "2026-07-15T16:42:03Z"
        },
        {
          "step_id": "goals",
          "action": "substrate.goals",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "cdfd4de44a28140e686159f34f7b47975954c67e1d1efcef666e985acb136ed8",
          "completed_at": "2026-07-15T16:42:03Z"
        }
      ],
      "steps": [
        {
          "id": "config",
          "action": "config.audit",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-15T16:42:02Z",
          "output": {
            "status": "ok",
            "summary": {
              "settings": 195,
              "mutable": 186,
              "read_only_or_managed": 9,
              "unclassified": 0,
              "unknown": 0,
              "invalid": 0,
              "missing_using_defaults": 0
            },
            "unclassified_keys": [],
            "unknown_keys": [],
            "invalid_values": [],
            "missing_using_defaults": []
          },
          "output_hash": "3782ec2317c0c8ee7598634310a2804d8aae4735f557498f9d3b8fae7c45e1e5",
          "completed_at": "2026-07-15T16:42:02Z"
        },
        {
          "id": "services",
          "action": "services.audit",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-15T16:42:02Z",
          "output": {
            "status": "ok",
            "summary": {
              "critical": 0,
              "high": 0,
              "medium": 0,
              "low": 0
            },
            "findings": []
          },
          "output_hash": "13dcc58bd528f3efa3e6e0fa0853a6eedc376f1f3685fbd4869cbb2b60382ee3",
          "completed_at": "2026-07-15T16:42:02Z"
        },
        {
          "id": "state",
          "action": "state.consistency",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-15T16:42:02Z",
          "output": {
            "status": "ok",
            "repo_root": "D:\\Projects\\prd-plugin",
            "summary": {
              "errors": 0,
              "warnings": 0,
              "infos": 0
            },
            "findings": []
          },
          "output_hash": "5a1c6e5246defb1b6b6b90ff734db95bece2886b408ab112ed9b8e67222d5568",
          "completed_at": "2026-07-15T16:42:02Z"
        },
        {
          "id": "status",
          "action": "state.query",
          "status": "completed",
          "resolved_input_hash": "a15231a2142a2a9a85355a8b9cbbccffe01a9c9c2c2fd8c2bc2987cdc481564a",
          "started_at": "2026-07-15T16:42:02Z",
          "output": {
            "repo_root": "D:\\Projects\\prd-plugin",
            "autonomy_level": "autonomous",
            "requests_by_status": {
              "deferred": 1,
              "implemented": 80,
              "proposed": 1,
              "rejected": 1
            },
            "active_tracking": [],
            "tracking_branches": [],
            "tracking_branch_counts": {},
            "tracking_branch_errors": [],
            "open_health": [],
            "stale_count": 0,
            "skill_usage": {
              "project-decision-policy": 1,
              "project-request-intake": 1,
              "project-test-driven-implementation": 1,
              "project-verification-before-completion": 1,
              "project-llm-wiki": 1
            },
            "wiki_backfill_pending": false,
            "version_update": null
          },
          "output_hash": "8ba9f7d3cc6705af37de9e3324d1258e21ccacb5ab0b2d7b389ca08885e11187",
          "completed_at": "2026-07-15T16:42:02Z"
        },
        {
          "id": "substrate",
          "action": "substrate.preflight",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-15T16:42:03Z",
          "output": {
            "status": "disabled",
            "services": {
              "status": "ok",
              "summary": {
                "critical": 0,
                "high": 0,
                "medium": 0,
                "low": 0
              },
              "findings": []
            },
            "policy": {
              "configured": {
                "enabled": false,
                "mode": "off",
                "capabilities": [
                  "records",
                  "graph",
                  "events"
                ],
                "contract_version": 2,
                "require_source_refs": true,
                "endpoint": "http://127.0.0.1:47124",
                "manual_url": "http://127.0.0.1:47124/utcp.json",
                "knowledge_browse_url": "http://127.0.0.1:5276",
                "auth_env": "AI_COLLAB_API_KEY",
                "timeout_seconds": 5,
                "max_result_bytes": 1048576,
                "cache_ttl_seconds": 60,
                "fallback": "local",
                "automation": {
                  "discovery_on_session_start": true,
                  "knowledge_recall": true,
                  "memory_recall": true,
                  "context_enrichment": true,
                  "notices_on_session_start": false,
                  "goals_sync": false,
                  "telemetry_on_maintenance": false,
                  "reporting_dispatch": true,
                  "judgment_dispatch": true,
                  "verification_execution": true
                }
              },
              "active": false,
              "effective_mode": "off",
              "effective_capabilities": []
            }
          },
          "output_hash": "a6df426290b4549a59eecaa0519ead9bcc50b7fcb25bd2185ff6047960f19ccb",
          "completed_at": "2026-07-15T16:42:03Z"
        },
        {
          "id": "notices",
          "action": "substrate.notices",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-15T16:42:03Z",
          "output": {
            "status": "disabled"
          },
          "output_hash": "38b904a1cf83df048360fb2480571b749fd98d57e11f1afdffb5a74a78166fea",
          "completed_at": "2026-07-15T16:42:03Z"
        },
        {
          "id": "goals",
          "action": "substrate.goals",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-15T16:42:03Z",
          "output": {
            "status": "disabled",
            "created": 0,
            "observed": 0,
            "results": []
          },
          "output_hash": "cdfd4de44a28140e686159f34f7b47975954c67e1d1efcef666e985acb136ed8",
          "completed_at": "2026-07-15T16:42:03Z"
        }
      ],
      "completed_at": "2026-07-15T16:42:03Z"
    },
    {
      "id": "WFR-114",
      "schema_version": "1.0",
      "workflow_id": "session.stop",
      "workflow_version": 1,
      "definition_hash": "0cef7bb3e28321be8f85375c154955a69310ce297e47de3f3b8dd48f77a2f07d",
      "plan_hash": "a5e1d77ac734217487fc418e29c7163f4e81178e25d171e70cd4c999d527d3e8",
      "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
      "inputs": {},
      "idempotency_key": "hook:Stop:019f66a8-17f3-7ad3-8380-7ca8346f4a49",
      "status": "completed",
      "attempt": 1,
      "created_at": "2026-07-15T16:42:05Z",
      "updated_at": "2026-07-15T16:42:06Z",
      "receipts": [
        {
          "step_id": "state",
          "action": "state.consistency",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "5a1c6e5246defb1b6b6b90ff734db95bece2886b408ab112ed9b8e67222d5568",
          "completed_at": "2026-07-15T16:42:06Z"
        },
        {
          "step_id": "goals",
          "action": "substrate.goals",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "cdfd4de44a28140e686159f34f7b47975954c67e1d1efcef666e985acb136ed8",
          "completed_at": "2026-07-15T16:42:06Z"
        },
        {
          "step_id": "staleness",
          "action": "staleness.audit",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "1e81cb0ffd0a4d04626920a203b38d2d23a264cd43e807a85d375d69cae8a658",
          "completed_at": "2026-07-15T16:42:06Z"
        },
        {
          "step_id": "reflections",
          "action": "reflection.list",
          "input_hash": "0172e841ab4c13b3a4061f073f9d68a716ec87a8a5d52fde41823385e0582573",
          "output_hash": "c1b6b635c0bab21120657277f14ef6f839909875f307a3745fa48aee2bd6e449",
          "completed_at": "2026-07-15T16:42:06Z"
        },
        {
          "step_id": "bundle",
          "action": "reporting.bundle",
          "input_hash": "aed8ebb688dc3c085dd978d7c4120572173c3cb87e75919e4a937dcca6ef9457",
          "output_hash": "f61aa7bfac7c2e96e3bf2d3386a95e45d2db52d040f05aff9ea963197eacc3f6",
          "completed_at": "2026-07-15T16:42:06Z"
        },
        {
          "step_id": "delegated",
          "action": "reporting.delegate",
          "input_hash": "5bf4dfad88c9958da759cb1561ca5fdd8f3ac9050e938bfde85af5c8d804adc9",
          "output_hash": "e6085059f197def80ae95add1f328418107bea5436c9bd002530043646a3a95c",
          "completed_at": "2026-07-15T16:42:06Z"
        }
      ],
      "steps": [
        {
          "id": "state",
          "action": "state.consistency",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-15T16:42:05Z",
          "output": {
            "status": "ok",
            "repo_root": "D:\\Projects\\prd-plugin",
            "summary": {
              "errors": 0,
              "warnings": 0,
              "infos": 0
            },
            "findings": []
          },
          "output_hash": "5a1c6e5246defb1b6b6b90ff734db95bece2886b408ab112ed9b8e67222d5568",
          "completed_at": "2026-07-15T16:42:06Z"
        },
        {
          "id": "goals",
          "action": "substrate.goals",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-15T16:42:06Z",
          "output": {
            "status": "disabled",
            "created": 0,
            "observed": 0,
            "results": []
          },
          "output_hash": "cdfd4de44a28140e686159f34f7b47975954c67e1d1efcef666e985acb136ed8",
          "completed_at": "2026-07-15T16:42:06Z"
        },
        {
          "id": "staleness",
          "action": "staleness.audit",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-15T16:42:06Z",
          "output": {
            "status": "ok",
            "repo_root": "D:\\Projects\\prd-plugin",
            "counts": {
              "stale": 0
            },
            "stale": []
          },
          "output_hash": "1e81cb0ffd0a4d04626920a203b38d2d23a264cd43e807a85d375d69cae8a658",
          "completed_at": "2026-07-15T16:42:06Z"
        },
        {
          "id": "reflections",
          "action": "reflection.list",
          "status": "completed",
          "resolved_input_hash": "0172e841ab4c13b3a4061f073f9d68a716ec87a8a5d52fde41823385e0582573",
          "started_at": "2026-07-15T16:42:06Z",
          "output": {
            "enabled": false,
            "on_stop": true,
            "max_questions_per_stop": 5,
            "categories": [
              {
                "id": "behaviour_quality",
                "name": "Behaviour quality",
                "enabled": true,
                "question_count": 3
              },
              {
                "id": "harness_friction",
                "name": "Harness friction",
                "enabled": true,
                "question_count": 2
              }
            ],
            "questions": [
              {
                "id": "RFQ-001",
                "text": "Based on the work you just carried out, would you classify your behaviour as good? Answer yes or no and cite observable evidence.",
                "enabled": true,
                "category_id": "behaviour_quality",
                "category_name": "Behaviour quality",
                "effective_enabled": false
              },
              {
                "id": "RFQ-002",
                "text": "If you answered no, what could you do differently to correct your behaviour?",
                "enabled": true,
                "category_id": "behaviour_quality",
                "category_name": "Behaviour quality",
                "effective_enabled": false
              },
              {
                "id": "RFQ-003",
                "text": "Would another attempt using the identified good behaviours materially improve the outcome? Answer yes or no and state the next corrective action if yes.",
                "enabled": true,
                "category_id": "behaviour_quality",
                "category_name": "Behaviour quality",
                "effective_enabled": false
              },
              {
                "id": "RFQ-004",
                "text": "What harness friction points made this work more difficult?",
                "enabled": true,
                "category_id": "harness_friction",
                "category_name": "Harness friction",
                "effective_enabled": false
              },
              {
                "id": "RFQ-005",
                "text": "What up to three changes would most improve friction in the harness?",
                "enabled": true,
                "category_id": "harness_friction",
                "category_name": "Harness friction",
                "effective_enabled": false
              }
            ]
          },
          "output_hash": "c1b6b635c0bab21120657277f14ef6f839909875f307a3745fa48aee2bd6e449",
          "completed_at": "2026-07-15T16:42:06Z"
        },
        {
          "id": "bundle",
          "action": "reporting.bundle",
          "status": "completed",
          "resolved_input_hash": "aed8ebb688dc3c085dd978d7c4120572173c3cb87e75919e4a937dcca6ef9457",
          "started_at": "2026-07-15T16:42:06Z",
          "output": {
            "contract_version": 1,
            "task": "session_summary",
            "repo": "prd-plugin",
            "policy": {
              "enabled": false,
              "executor": "ai-collab",
              "contract_version": 1,
              "profile": "fast-capable",
              "tasks": [
                "report_summary",
                "session_summary",
                "wiki_synthesis",
                "triage_draft"
              ],
              "fallback": "main",
              "require_source_refs": true,
              "max_input_tokens": 12000,
              "max_output_tokens": 1500,
              "timeout_seconds": 30
            },
            "facts": {
              "requests_by_status": {
                "deferred": 1,
                "implemented": 80,
                "proposed": 1,
                "rejected": 1
              },
              "active_requests": [
                {
                  "id": "REQ-072",
                  "status": "proposed",
                  "severity": "low",
                  "summary": "opencode run-until-done: session.idle is a non-blocking notification, so the stop guard can't force continuation on opencode (currently degrades to a printed reminder, 0.5.95). Investigate whether opencode exposes any vetoable/continuation mechanism (a different event, a permission hook, or a 'continue' API) to enforce run-until-done, or accept the reminder as the permanent ceiling. Low priority — user rarely uses opencode."
                }
              ],
              "active_tracking": [],
              "open_health": [],
              "evidence_count": 105,
              "decision_count": 10
            },
            "findings": [],
            "source_refs": [
              ".prd_plugin/config.json",
              ".prd_plugin/state/decisions.json",
              ".prd_plugin/state/evidence.json",
              ".prd_plugin/state/health.json",
              ".prd_plugin/state/requests.json",
              ".prd_plugin/state/tracking.json",
              "REQ-072"
            ],
            "constraints": {
              "max_input_tokens": 12000,
              "max_output_tokens": 1500,
              "timeout_seconds": 30,
              "require_source_refs": true,
              "no_project_state_writes": true,
              "no_secrets_or_local_session_content": true
            }
          },
          "output_hash": "f61aa7bfac7c2e96e3bf2d3386a95e45d2db52d040f05aff9ea963197eacc3f6",
          "completed_at": "2026-07-15T16:42:06Z"
        },
        {
          "id": "delegated",
          "action": "reporting.delegate",
          "status": "completed",
          "resolved_input_hash": "5bf4dfad88c9958da759cb1561ca5fdd8f3ac9050e938bfde85af5c8d804adc9",
          "started_at": "2026-07-15T16:42:06Z",
          "output": {
            "status": "fallback",
            "action": "main",
            "reason": "disabled"
          },
          "output_hash": "e6085059f197def80ae95add1f328418107bea5436c9bd002530043646a3a95c",
          "completed_at": "2026-07-15T16:42:06Z"
        }
      ],
      "completed_at": "2026-07-15T16:42:06Z"
    },
    {
      "id": "WFR-115",
      "schema_version": "1.0",
      "workflow_id": "session.start",
      "workflow_version": 1,
      "definition_hash": "d0f98da02571e6dd27fec4aed92d3c82af9db75f8b90b997bf665635c7b7f6ca",
      "plan_hash": "b5072615ca3b7e9a3bd85d50d1f069d99ef2a9816b32c03a370745ed7a205536",
      "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
      "inputs": {},
      "idempotency_key": "hook:SessionStart:019f66aa-246c-7f52-ab82-594a3d416449",
      "status": "completed",
      "attempt": 1,
      "created_at": "2026-07-15T16:44:16Z",
      "updated_at": "2026-07-15T16:44:17Z",
      "receipts": [
        {
          "step_id": "config",
          "action": "config.audit",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "3782ec2317c0c8ee7598634310a2804d8aae4735f557498f9d3b8fae7c45e1e5",
          "completed_at": "2026-07-15T16:44:16Z"
        },
        {
          "step_id": "services",
          "action": "services.audit",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "13dcc58bd528f3efa3e6e0fa0853a6eedc376f1f3685fbd4869cbb2b60382ee3",
          "completed_at": "2026-07-15T16:44:16Z"
        },
        {
          "step_id": "state",
          "action": "state.consistency",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "5a1c6e5246defb1b6b6b90ff734db95bece2886b408ab112ed9b8e67222d5568",
          "completed_at": "2026-07-15T16:44:17Z"
        },
        {
          "step_id": "status",
          "action": "state.query",
          "input_hash": "a15231a2142a2a9a85355a8b9cbbccffe01a9c9c2c2fd8c2bc2987cdc481564a",
          "output_hash": "8ba9f7d3cc6705af37de9e3324d1258e21ccacb5ab0b2d7b389ca08885e11187",
          "completed_at": "2026-07-15T16:44:17Z"
        },
        {
          "step_id": "substrate",
          "action": "substrate.preflight",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "a6df426290b4549a59eecaa0519ead9bcc50b7fcb25bd2185ff6047960f19ccb",
          "completed_at": "2026-07-15T16:44:17Z"
        },
        {
          "step_id": "notices",
          "action": "substrate.notices",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "38b904a1cf83df048360fb2480571b749fd98d57e11f1afdffb5a74a78166fea",
          "completed_at": "2026-07-15T16:44:17Z"
        },
        {
          "step_id": "goals",
          "action": "substrate.goals",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "cdfd4de44a28140e686159f34f7b47975954c67e1d1efcef666e985acb136ed8",
          "completed_at": "2026-07-15T16:44:17Z"
        }
      ],
      "steps": [
        {
          "id": "config",
          "action": "config.audit",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-15T16:44:16Z",
          "output": {
            "status": "ok",
            "summary": {
              "settings": 195,
              "mutable": 186,
              "read_only_or_managed": 9,
              "unclassified": 0,
              "unknown": 0,
              "invalid": 0,
              "missing_using_defaults": 0
            },
            "unclassified_keys": [],
            "unknown_keys": [],
            "invalid_values": [],
            "missing_using_defaults": []
          },
          "output_hash": "3782ec2317c0c8ee7598634310a2804d8aae4735f557498f9d3b8fae7c45e1e5",
          "completed_at": "2026-07-15T16:44:16Z"
        },
        {
          "id": "services",
          "action": "services.audit",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-15T16:44:16Z",
          "output": {
            "status": "ok",
            "summary": {
              "critical": 0,
              "high": 0,
              "medium": 0,
              "low": 0
            },
            "findings": []
          },
          "output_hash": "13dcc58bd528f3efa3e6e0fa0853a6eedc376f1f3685fbd4869cbb2b60382ee3",
          "completed_at": "2026-07-15T16:44:16Z"
        },
        {
          "id": "state",
          "action": "state.consistency",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-15T16:44:16Z",
          "output": {
            "status": "ok",
            "repo_root": "D:\\Projects\\prd-plugin",
            "summary": {
              "errors": 0,
              "warnings": 0,
              "infos": 0
            },
            "findings": []
          },
          "output_hash": "5a1c6e5246defb1b6b6b90ff734db95bece2886b408ab112ed9b8e67222d5568",
          "completed_at": "2026-07-15T16:44:17Z"
        },
        {
          "id": "status",
          "action": "state.query",
          "status": "completed",
          "resolved_input_hash": "a15231a2142a2a9a85355a8b9cbbccffe01a9c9c2c2fd8c2bc2987cdc481564a",
          "started_at": "2026-07-15T16:44:17Z",
          "output": {
            "repo_root": "D:\\Projects\\prd-plugin",
            "autonomy_level": "autonomous",
            "requests_by_status": {
              "deferred": 1,
              "implemented": 80,
              "proposed": 1,
              "rejected": 1
            },
            "active_tracking": [],
            "tracking_branches": [],
            "tracking_branch_counts": {},
            "tracking_branch_errors": [],
            "open_health": [],
            "stale_count": 0,
            "skill_usage": {
              "project-decision-policy": 1,
              "project-request-intake": 1,
              "project-test-driven-implementation": 1,
              "project-verification-before-completion": 1,
              "project-llm-wiki": 1
            },
            "wiki_backfill_pending": false,
            "version_update": null
          },
          "output_hash": "8ba9f7d3cc6705af37de9e3324d1258e21ccacb5ab0b2d7b389ca08885e11187",
          "completed_at": "2026-07-15T16:44:17Z"
        },
        {
          "id": "substrate",
          "action": "substrate.preflight",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-15T16:44:17Z",
          "output": {
            "status": "disabled",
            "services": {
              "status": "ok",
              "summary": {
                "critical": 0,
                "high": 0,
                "medium": 0,
                "low": 0
              },
              "findings": []
            },
            "policy": {
              "configured": {
                "enabled": false,
                "mode": "off",
                "capabilities": [
                  "records",
                  "graph",
                  "events"
                ],
                "contract_version": 2,
                "require_source_refs": true,
                "endpoint": "http://127.0.0.1:47124",
                "manual_url": "http://127.0.0.1:47124/utcp.json",
                "knowledge_browse_url": "http://127.0.0.1:5276",
                "auth_env": "AI_COLLAB_API_KEY",
                "timeout_seconds": 5,
                "max_result_bytes": 1048576,
                "cache_ttl_seconds": 60,
                "fallback": "local",
                "automation": {
                  "discovery_on_session_start": true,
                  "knowledge_recall": true,
                  "memory_recall": true,
                  "context_enrichment": true,
                  "notices_on_session_start": false,
                  "goals_sync": false,
                  "telemetry_on_maintenance": false,
                  "reporting_dispatch": true,
                  "judgment_dispatch": true,
                  "verification_execution": true
                }
              },
              "active": false,
              "effective_mode": "off",
              "effective_capabilities": []
            }
          },
          "output_hash": "a6df426290b4549a59eecaa0519ead9bcc50b7fcb25bd2185ff6047960f19ccb",
          "completed_at": "2026-07-15T16:44:17Z"
        },
        {
          "id": "notices",
          "action": "substrate.notices",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-15T16:44:17Z",
          "output": {
            "status": "disabled"
          },
          "output_hash": "38b904a1cf83df048360fb2480571b749fd98d57e11f1afdffb5a74a78166fea",
          "completed_at": "2026-07-15T16:44:17Z"
        },
        {
          "id": "goals",
          "action": "substrate.goals",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-15T16:44:17Z",
          "output": {
            "status": "disabled",
            "created": 0,
            "observed": 0,
            "results": []
          },
          "output_hash": "cdfd4de44a28140e686159f34f7b47975954c67e1d1efcef666e985acb136ed8",
          "completed_at": "2026-07-15T16:44:17Z"
        }
      ],
      "completed_at": "2026-07-15T16:44:17Z"
    },
    {
      "id": "WFR-116",
      "schema_version": "1.0",
      "workflow_id": "session.stop",
      "workflow_version": 1,
      "definition_hash": "0cef7bb3e28321be8f85375c154955a69310ce297e47de3f3b8dd48f77a2f07d",
      "plan_hash": "a5e1d77ac734217487fc418e29c7163f4e81178e25d171e70cd4c999d527d3e8",
      "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
      "inputs": {},
      "idempotency_key": "hook:Stop:019f66aa-246c-7f52-ab82-594a3d416449",
      "status": "completed",
      "attempt": 1,
      "created_at": "2026-07-15T16:45:31Z",
      "updated_at": "2026-07-15T16:45:32Z",
      "receipts": [
        {
          "step_id": "state",
          "action": "state.consistency",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "5a1c6e5246defb1b6b6b90ff734db95bece2886b408ab112ed9b8e67222d5568",
          "completed_at": "2026-07-15T16:45:32Z"
        },
        {
          "step_id": "goals",
          "action": "substrate.goals",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "cdfd4de44a28140e686159f34f7b47975954c67e1d1efcef666e985acb136ed8",
          "completed_at": "2026-07-15T16:45:32Z"
        },
        {
          "step_id": "staleness",
          "action": "staleness.audit",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "1e81cb0ffd0a4d04626920a203b38d2d23a264cd43e807a85d375d69cae8a658",
          "completed_at": "2026-07-15T16:45:32Z"
        },
        {
          "step_id": "reflections",
          "action": "reflection.list",
          "input_hash": "0172e841ab4c13b3a4061f073f9d68a716ec87a8a5d52fde41823385e0582573",
          "output_hash": "c1b6b635c0bab21120657277f14ef6f839909875f307a3745fa48aee2bd6e449",
          "completed_at": "2026-07-15T16:45:32Z"
        },
        {
          "step_id": "bundle",
          "action": "reporting.bundle",
          "input_hash": "aed8ebb688dc3c085dd978d7c4120572173c3cb87e75919e4a937dcca6ef9457",
          "output_hash": "f61aa7bfac7c2e96e3bf2d3386a95e45d2db52d040f05aff9ea963197eacc3f6",
          "completed_at": "2026-07-15T16:45:32Z"
        },
        {
          "step_id": "delegated",
          "action": "reporting.delegate",
          "input_hash": "5bf4dfad88c9958da759cb1561ca5fdd8f3ac9050e938bfde85af5c8d804adc9",
          "output_hash": "e6085059f197def80ae95add1f328418107bea5436c9bd002530043646a3a95c",
          "completed_at": "2026-07-15T16:45:32Z"
        }
      ],
      "steps": [
        {
          "id": "state",
          "action": "state.consistency",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-15T16:45:31Z",
          "output": {
            "status": "ok",
            "repo_root": "D:\\Projects\\prd-plugin",
            "summary": {
              "errors": 0,
              "warnings": 0,
              "infos": 0
            },
            "findings": []
          },
          "output_hash": "5a1c6e5246defb1b6b6b90ff734db95bece2886b408ab112ed9b8e67222d5568",
          "completed_at": "2026-07-15T16:45:32Z"
        },
        {
          "id": "goals",
          "action": "substrate.goals",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-15T16:45:32Z",
          "output": {
            "status": "disabled",
            "created": 0,
            "observed": 0,
            "results": []
          },
          "output_hash": "cdfd4de44a28140e686159f34f7b47975954c67e1d1efcef666e985acb136ed8",
          "completed_at": "2026-07-15T16:45:32Z"
        },
        {
          "id": "staleness",
          "action": "staleness.audit",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-15T16:45:32Z",
          "output": {
            "status": "ok",
            "repo_root": "D:\\Projects\\prd-plugin",
            "counts": {
              "stale": 0
            },
            "stale": []
          },
          "output_hash": "1e81cb0ffd0a4d04626920a203b38d2d23a264cd43e807a85d375d69cae8a658",
          "completed_at": "2026-07-15T16:45:32Z"
        },
        {
          "id": "reflections",
          "action": "reflection.list",
          "status": "completed",
          "resolved_input_hash": "0172e841ab4c13b3a4061f073f9d68a716ec87a8a5d52fde41823385e0582573",
          "started_at": "2026-07-15T16:45:32Z",
          "output": {
            "enabled": false,
            "on_stop": true,
            "max_questions_per_stop": 5,
            "categories": [
              {
                "id": "behaviour_quality",
                "name": "Behaviour quality",
                "enabled": true,
                "question_count": 3
              },
              {
                "id": "harness_friction",
                "name": "Harness friction",
                "enabled": true,
                "question_count": 2
              }
            ],
            "questions": [
              {
                "id": "RFQ-001",
                "text": "Based on the work you just carried out, would you classify your behaviour as good? Answer yes or no and cite observable evidence.",
                "enabled": true,
                "category_id": "behaviour_quality",
                "category_name": "Behaviour quality",
                "effective_enabled": false
              },
              {
                "id": "RFQ-002",
                "text": "If you answered no, what could you do differently to correct your behaviour?",
                "enabled": true,
                "category_id": "behaviour_quality",
                "category_name": "Behaviour quality",
                "effective_enabled": false
              },
              {
                "id": "RFQ-003",
                "text": "Would another attempt using the identified good behaviours materially improve the outcome? Answer yes or no and state the next corrective action if yes.",
                "enabled": true,
                "category_id": "behaviour_quality",
                "category_name": "Behaviour quality",
                "effective_enabled": false
              },
              {
                "id": "RFQ-004",
                "text": "What harness friction points made this work more difficult?",
                "enabled": true,
                "category_id": "harness_friction",
                "category_name": "Harness friction",
                "effective_enabled": false
              },
              {
                "id": "RFQ-005",
                "text": "What up to three changes would most improve friction in the harness?",
                "enabled": true,
                "category_id": "harness_friction",
                "category_name": "Harness friction",
                "effective_enabled": false
              }
            ]
          },
          "output_hash": "c1b6b635c0bab21120657277f14ef6f839909875f307a3745fa48aee2bd6e449",
          "completed_at": "2026-07-15T16:45:32Z"
        },
        {
          "id": "bundle",
          "action": "reporting.bundle",
          "status": "completed",
          "resolved_input_hash": "aed8ebb688dc3c085dd978d7c4120572173c3cb87e75919e4a937dcca6ef9457",
          "started_at": "2026-07-15T16:45:32Z",
          "output": {
            "contract_version": 1,
            "task": "session_summary",
            "repo": "prd-plugin",
            "policy": {
              "enabled": false,
              "executor": "ai-collab",
              "contract_version": 1,
              "profile": "fast-capable",
              "tasks": [
                "report_summary",
                "session_summary",
                "wiki_synthesis",
                "triage_draft"
              ],
              "fallback": "main",
              "require_source_refs": true,
              "max_input_tokens": 12000,
              "max_output_tokens": 1500,
              "timeout_seconds": 30
            },
            "facts": {
              "requests_by_status": {
                "deferred": 1,
                "implemented": 80,
                "proposed": 1,
                "rejected": 1
              },
              "active_requests": [
                {
                  "id": "REQ-072",
                  "status": "proposed",
                  "severity": "low",
                  "summary": "opencode run-until-done: session.idle is a non-blocking notification, so the stop guard can't force continuation on opencode (currently degrades to a printed reminder, 0.5.95). Investigate whether opencode exposes any vetoable/continuation mechanism (a different event, a permission hook, or a 'continue' API) to enforce run-until-done, or accept the reminder as the permanent ceiling. Low priority — user rarely uses opencode."
                }
              ],
              "active_tracking": [],
              "open_health": [],
              "evidence_count": 105,
              "decision_count": 10
            },
            "findings": [],
            "source_refs": [
              ".prd_plugin/config.json",
              ".prd_plugin/state/decisions.json",
              ".prd_plugin/state/evidence.json",
              ".prd_plugin/state/health.json",
              ".prd_plugin/state/requests.json",
              ".prd_plugin/state/tracking.json",
              "REQ-072"
            ],
            "constraints": {
              "max_input_tokens": 12000,
              "max_output_tokens": 1500,
              "timeout_seconds": 30,
              "require_source_refs": true,
              "no_project_state_writes": true,
              "no_secrets_or_local_session_content": true
            }
          },
          "output_hash": "f61aa7bfac7c2e96e3bf2d3386a95e45d2db52d040f05aff9ea963197eacc3f6",
          "completed_at": "2026-07-15T16:45:32Z"
        },
        {
          "id": "delegated",
          "action": "reporting.delegate",
          "status": "completed",
          "resolved_input_hash": "5bf4dfad88c9958da759cb1561ca5fdd8f3ac9050e938bfde85af5c8d804adc9",
          "started_at": "2026-07-15T16:45:32Z",
          "output": {
            "status": "fallback",
            "action": "main",
            "reason": "disabled"
          },
          "output_hash": "e6085059f197def80ae95add1f328418107bea5436c9bd002530043646a3a95c",
          "completed_at": "2026-07-15T16:45:32Z"
        }
      ],
      "completed_at": "2026-07-15T16:45:32Z"
    },
    {
      "id": "WFR-117",
      "schema_version": "1.0",
      "workflow_id": "session.start",
      "workflow_version": 1,
      "definition_hash": "d0f98da02571e6dd27fec4aed92d3c82af9db75f8b90b997bf665635c7b7f6ca",
      "plan_hash": "b5072615ca3b7e9a3bd85d50d1f069d99ef2a9816b32c03a370745ed7a205536",
      "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
      "inputs": {},
      "idempotency_key": "hook:SessionStart:019f66ac-1a61-70f3-8f1b-1a8a508759f2",
      "status": "completed",
      "attempt": 1,
      "created_at": "2026-07-15T16:46:25Z",
      "updated_at": "2026-07-15T16:46:26Z",
      "receipts": [
        {
          "step_id": "config",
          "action": "config.audit",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "3782ec2317c0c8ee7598634310a2804d8aae4735f557498f9d3b8fae7c45e1e5",
          "completed_at": "2026-07-15T16:46:25Z"
        },
        {
          "step_id": "services",
          "action": "services.audit",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "13dcc58bd528f3efa3e6e0fa0853a6eedc376f1f3685fbd4869cbb2b60382ee3",
          "completed_at": "2026-07-15T16:46:25Z"
        },
        {
          "step_id": "state",
          "action": "state.consistency",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "5a1c6e5246defb1b6b6b90ff734db95bece2886b408ab112ed9b8e67222d5568",
          "completed_at": "2026-07-15T16:46:25Z"
        },
        {
          "step_id": "status",
          "action": "state.query",
          "input_hash": "a15231a2142a2a9a85355a8b9cbbccffe01a9c9c2c2fd8c2bc2987cdc481564a",
          "output_hash": "8ba9f7d3cc6705af37de9e3324d1258e21ccacb5ab0b2d7b389ca08885e11187",
          "completed_at": "2026-07-15T16:46:26Z"
        },
        {
          "step_id": "substrate",
          "action": "substrate.preflight",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "a6df426290b4549a59eecaa0519ead9bcc50b7fcb25bd2185ff6047960f19ccb",
          "completed_at": "2026-07-15T16:46:26Z"
        },
        {
          "step_id": "notices",
          "action": "substrate.notices",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "38b904a1cf83df048360fb2480571b749fd98d57e11f1afdffb5a74a78166fea",
          "completed_at": "2026-07-15T16:46:26Z"
        },
        {
          "step_id": "goals",
          "action": "substrate.goals",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "cdfd4de44a28140e686159f34f7b47975954c67e1d1efcef666e985acb136ed8",
          "completed_at": "2026-07-15T16:46:26Z"
        }
      ],
      "steps": [
        {
          "id": "config",
          "action": "config.audit",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-15T16:46:25Z",
          "output": {
            "status": "ok",
            "summary": {
              "settings": 195,
              "mutable": 186,
              "read_only_or_managed": 9,
              "unclassified": 0,
              "unknown": 0,
              "invalid": 0,
              "missing_using_defaults": 0
            },
            "unclassified_keys": [],
            "unknown_keys": [],
            "invalid_values": [],
            "missing_using_defaults": []
          },
          "output_hash": "3782ec2317c0c8ee7598634310a2804d8aae4735f557498f9d3b8fae7c45e1e5",
          "completed_at": "2026-07-15T16:46:25Z"
        },
        {
          "id": "services",
          "action": "services.audit",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-15T16:46:25Z",
          "output": {
            "status": "ok",
            "summary": {
              "critical": 0,
              "high": 0,
              "medium": 0,
              "low": 0
            },
            "findings": []
          },
          "output_hash": "13dcc58bd528f3efa3e6e0fa0853a6eedc376f1f3685fbd4869cbb2b60382ee3",
          "completed_at": "2026-07-15T16:46:25Z"
        },
        {
          "id": "state",
          "action": "state.consistency",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-15T16:46:25Z",
          "output": {
            "status": "ok",
            "repo_root": "D:\\Projects\\prd-plugin",
            "summary": {
              "errors": 0,
              "warnings": 0,
              "infos": 0
            },
            "findings": []
          },
          "output_hash": "5a1c6e5246defb1b6b6b90ff734db95bece2886b408ab112ed9b8e67222d5568",
          "completed_at": "2026-07-15T16:46:25Z"
        },
        {
          "id": "status",
          "action": "state.query",
          "status": "completed",
          "resolved_input_hash": "a15231a2142a2a9a85355a8b9cbbccffe01a9c9c2c2fd8c2bc2987cdc481564a",
          "started_at": "2026-07-15T16:46:26Z",
          "output": {
            "repo_root": "D:\\Projects\\prd-plugin",
            "autonomy_level": "autonomous",
            "requests_by_status": {
              "deferred": 1,
              "implemented": 80,
              "proposed": 1,
              "rejected": 1
            },
            "active_tracking": [],
            "tracking_branches": [],
            "tracking_branch_counts": {},
            "tracking_branch_errors": [],
            "open_health": [],
            "stale_count": 0,
            "skill_usage": {
              "project-decision-policy": 1,
              "project-request-intake": 1,
              "project-test-driven-implementation": 1,
              "project-verification-before-completion": 1,
              "project-llm-wiki": 1
            },
            "wiki_backfill_pending": false,
            "version_update": null
          },
          "output_hash": "8ba9f7d3cc6705af37de9e3324d1258e21ccacb5ab0b2d7b389ca08885e11187",
          "completed_at": "2026-07-15T16:46:26Z"
        },
        {
          "id": "substrate",
          "action": "substrate.preflight",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-15T16:46:26Z",
          "output": {
            "status": "disabled",
            "services": {
              "status": "ok",
              "summary": {
                "critical": 0,
                "high": 0,
                "medium": 0,
                "low": 0
              },
              "findings": []
            },
            "policy": {
              "configured": {
                "enabled": false,
                "mode": "off",
                "capabilities": [
                  "records",
                  "graph",
                  "events"
                ],
                "contract_version": 2,
                "require_source_refs": true,
                "endpoint": "http://127.0.0.1:47124",
                "manual_url": "http://127.0.0.1:47124/utcp.json",
                "knowledge_browse_url": "http://127.0.0.1:5276",
                "auth_env": "AI_COLLAB_API_KEY",
                "timeout_seconds": 5,
                "max_result_bytes": 1048576,
                "cache_ttl_seconds": 60,
                "fallback": "local",
                "automation": {
                  "discovery_on_session_start": true,
                  "knowledge_recall": true,
                  "memory_recall": true,
                  "context_enrichment": true,
                  "notices_on_session_start": false,
                  "goals_sync": false,
                  "telemetry_on_maintenance": false,
                  "reporting_dispatch": true,
                  "judgment_dispatch": true,
                  "verification_execution": true
                }
              },
              "active": false,
              "effective_mode": "off",
              "effective_capabilities": []
            }
          },
          "output_hash": "a6df426290b4549a59eecaa0519ead9bcc50b7fcb25bd2185ff6047960f19ccb",
          "completed_at": "2026-07-15T16:46:26Z"
        },
        {
          "id": "notices",
          "action": "substrate.notices",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-15T16:46:26Z",
          "output": {
            "status": "disabled"
          },
          "output_hash": "38b904a1cf83df048360fb2480571b749fd98d57e11f1afdffb5a74a78166fea",
          "completed_at": "2026-07-15T16:46:26Z"
        },
        {
          "id": "goals",
          "action": "substrate.goals",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-15T16:46:26Z",
          "output": {
            "status": "disabled",
            "created": 0,
            "observed": 0,
            "results": []
          },
          "output_hash": "cdfd4de44a28140e686159f34f7b47975954c67e1d1efcef666e985acb136ed8",
          "completed_at": "2026-07-15T16:46:26Z"
        }
      ],
      "completed_at": "2026-07-15T16:46:26Z"
    },
    {
      "id": "WFR-118",
      "schema_version": "1.0",
      "workflow_id": "session.stop",
      "workflow_version": 1,
      "definition_hash": "0cef7bb3e28321be8f85375c154955a69310ce297e47de3f3b8dd48f77a2f07d",
      "plan_hash": "a5e1d77ac734217487fc418e29c7163f4e81178e25d171e70cd4c999d527d3e8",
      "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
      "inputs": {},
      "idempotency_key": "hook:Stop:019f66ac-1a61-70f3-8f1b-1a8a508759f2",
      "status": "completed",
      "attempt": 1,
      "created_at": "2026-07-15T16:46:28Z",
      "updated_at": "2026-07-15T16:46:29Z",
      "receipts": [
        {
          "step_id": "state",
          "action": "state.consistency",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "5a1c6e5246defb1b6b6b90ff734db95bece2886b408ab112ed9b8e67222d5568",
          "completed_at": "2026-07-15T16:46:29Z"
        },
        {
          "step_id": "goals",
          "action": "substrate.goals",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "cdfd4de44a28140e686159f34f7b47975954c67e1d1efcef666e985acb136ed8",
          "completed_at": "2026-07-15T16:46:29Z"
        },
        {
          "step_id": "staleness",
          "action": "staleness.audit",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "1e81cb0ffd0a4d04626920a203b38d2d23a264cd43e807a85d375d69cae8a658",
          "completed_at": "2026-07-15T16:46:29Z"
        },
        {
          "step_id": "reflections",
          "action": "reflection.list",
          "input_hash": "0172e841ab4c13b3a4061f073f9d68a716ec87a8a5d52fde41823385e0582573",
          "output_hash": "c1b6b635c0bab21120657277f14ef6f839909875f307a3745fa48aee2bd6e449",
          "completed_at": "2026-07-15T16:46:29Z"
        },
        {
          "step_id": "bundle",
          "action": "reporting.bundle",
          "input_hash": "aed8ebb688dc3c085dd978d7c4120572173c3cb87e75919e4a937dcca6ef9457",
          "output_hash": "f61aa7bfac7c2e96e3bf2d3386a95e45d2db52d040f05aff9ea963197eacc3f6",
          "completed_at": "2026-07-15T16:46:29Z"
        },
        {
          "step_id": "delegated",
          "action": "reporting.delegate",
          "input_hash": "5bf4dfad88c9958da759cb1561ca5fdd8f3ac9050e938bfde85af5c8d804adc9",
          "output_hash": "e6085059f197def80ae95add1f328418107bea5436c9bd002530043646a3a95c",
          "completed_at": "2026-07-15T16:46:29Z"
        }
      ],
      "steps": [
        {
          "id": "state",
          "action": "state.consistency",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-15T16:46:28Z",
          "output": {
            "status": "ok",
            "repo_root": "D:\\Projects\\prd-plugin",
            "summary": {
              "errors": 0,
              "warnings": 0,
              "infos": 0
            },
            "findings": []
          },
          "output_hash": "5a1c6e5246defb1b6b6b90ff734db95bece2886b408ab112ed9b8e67222d5568",
          "completed_at": "2026-07-15T16:46:29Z"
        },
        {
          "id": "goals",
          "action": "substrate.goals",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-15T16:46:29Z",
          "output": {
            "status": "disabled",
            "created": 0,
            "observed": 0,
            "results": []
          },
          "output_hash": "cdfd4de44a28140e686159f34f7b47975954c67e1d1efcef666e985acb136ed8",
          "completed_at": "2026-07-15T16:46:29Z"
        },
        {
          "id": "staleness",
          "action": "staleness.audit",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-15T16:46:29Z",
          "output": {
            "status": "ok",
            "repo_root": "D:\\Projects\\prd-plugin",
            "counts": {
              "stale": 0
            },
            "stale": []
          },
          "output_hash": "1e81cb0ffd0a4d04626920a203b38d2d23a264cd43e807a85d375d69cae8a658",
          "completed_at": "2026-07-15T16:46:29Z"
        },
        {
          "id": "reflections",
          "action": "reflection.list",
          "status": "completed",
          "resolved_input_hash": "0172e841ab4c13b3a4061f073f9d68a716ec87a8a5d52fde41823385e0582573",
          "started_at": "2026-07-15T16:46:29Z",
          "output": {
            "enabled": false,
            "on_stop": true,
            "max_questions_per_stop": 5,
            "categories": [
              {
                "id": "behaviour_quality",
                "name": "Behaviour quality",
                "enabled": true,
                "question_count": 3
              },
              {
                "id": "harness_friction",
                "name": "Harness friction",
                "enabled": true,
                "question_count": 2
              }
            ],
            "questions": [
              {
                "id": "RFQ-001",
                "text": "Based on the work you just carried out, would you classify your behaviour as good? Answer yes or no and cite observable evidence.",
                "enabled": true,
                "category_id": "behaviour_quality",
                "category_name": "Behaviour quality",
                "effective_enabled": false
              },
              {
                "id": "RFQ-002",
                "text": "If you answered no, what could you do differently to correct your behaviour?",
                "enabled": true,
                "category_id": "behaviour_quality",
                "category_name": "Behaviour quality",
                "effective_enabled": false
              },
              {
                "id": "RFQ-003",
                "text": "Would another attempt using the identified good behaviours materially improve the outcome? Answer yes or no and state the next corrective action if yes.",
                "enabled": true,
                "category_id": "behaviour_quality",
                "category_name": "Behaviour quality",
                "effective_enabled": false
              },
              {
                "id": "RFQ-004",
                "text": "What harness friction points made this work more difficult?",
                "enabled": true,
                "category_id": "harness_friction",
                "category_name": "Harness friction",
                "effective_enabled": false
              },
              {
                "id": "RFQ-005",
                "text": "What up to three changes would most improve friction in the harness?",
                "enabled": true,
                "category_id": "harness_friction",
                "category_name": "Harness friction",
                "effective_enabled": false
              }
            ]
          },
          "output_hash": "c1b6b635c0bab21120657277f14ef6f839909875f307a3745fa48aee2bd6e449",
          "completed_at": "2026-07-15T16:46:29Z"
        },
        {
          "id": "bundle",
          "action": "reporting.bundle",
          "status": "completed",
          "resolved_input_hash": "aed8ebb688dc3c085dd978d7c4120572173c3cb87e75919e4a937dcca6ef9457",
          "started_at": "2026-07-15T16:46:29Z",
          "output": {
            "contract_version": 1,
            "task": "session_summary",
            "repo": "prd-plugin",
            "policy": {
              "enabled": false,
              "executor": "ai-collab",
              "contract_version": 1,
              "profile": "fast-capable",
              "tasks": [
                "report_summary",
                "session_summary",
                "wiki_synthesis",
                "triage_draft"
              ],
              "fallback": "main",
              "require_source_refs": true,
              "max_input_tokens": 12000,
              "max_output_tokens": 1500,
              "timeout_seconds": 30
            },
            "facts": {
              "requests_by_status": {
                "deferred": 1,
                "implemented": 80,
                "proposed": 1,
                "rejected": 1
              },
              "active_requests": [
                {
                  "id": "REQ-072",
                  "status": "proposed",
                  "severity": "low",
                  "summary": "opencode run-until-done: session.idle is a non-blocking notification, so the stop guard can't force continuation on opencode (currently degrades to a printed reminder, 0.5.95). Investigate whether opencode exposes any vetoable/continuation mechanism (a different event, a permission hook, or a 'continue' API) to enforce run-until-done, or accept the reminder as the permanent ceiling. Low priority — user rarely uses opencode."
                }
              ],
              "active_tracking": [],
              "open_health": [],
              "evidence_count": 105,
              "decision_count": 10
            },
            "findings": [],
            "source_refs": [
              ".prd_plugin/config.json",
              ".prd_plugin/state/decisions.json",
              ".prd_plugin/state/evidence.json",
              ".prd_plugin/state/health.json",
              ".prd_plugin/state/requests.json",
              ".prd_plugin/state/tracking.json",
              "REQ-072"
            ],
            "constraints": {
              "max_input_tokens": 12000,
              "max_output_tokens": 1500,
              "timeout_seconds": 30,
              "require_source_refs": true,
              "no_project_state_writes": true,
              "no_secrets_or_local_session_content": true
            }
          },
          "output_hash": "f61aa7bfac7c2e96e3bf2d3386a95e45d2db52d040f05aff9ea963197eacc3f6",
          "completed_at": "2026-07-15T16:46:29Z"
        },
        {
          "id": "delegated",
          "action": "reporting.delegate",
          "status": "completed",
          "resolved_input_hash": "5bf4dfad88c9958da759cb1561ca5fdd8f3ac9050e938bfde85af5c8d804adc9",
          "started_at": "2026-07-15T16:46:29Z",
          "output": {
            "status": "fallback",
            "action": "main",
            "reason": "disabled"
          },
          "output_hash": "e6085059f197def80ae95add1f328418107bea5436c9bd002530043646a3a95c",
          "completed_at": "2026-07-15T16:46:29Z"
        }
      ],
      "completed_at": "2026-07-15T16:46:29Z"
    },
    {
      "id": "WFR-119",
      "schema_version": "1.0",
      "workflow_id": "session.start",
      "workflow_version": 1,
      "definition_hash": "d0f98da02571e6dd27fec4aed92d3c82af9db75f8b90b997bf665635c7b7f6ca",
      "plan_hash": "b5072615ca3b7e9a3bd85d50d1f069d99ef2a9816b32c03a370745ed7a205536",
      "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
      "inputs": {},
      "idempotency_key": "hook:SessionStart:019f66ac-8f69-7aa0-9a70-44023057f6bf",
      "status": "completed",
      "attempt": 1,
      "created_at": "2026-07-15T16:46:54Z",
      "updated_at": "2026-07-15T16:46:55Z",
      "receipts": [
        {
          "step_id": "config",
          "action": "config.audit",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "3782ec2317c0c8ee7598634310a2804d8aae4735f557498f9d3b8fae7c45e1e5",
          "completed_at": "2026-07-15T16:46:54Z"
        },
        {
          "step_id": "services",
          "action": "services.audit",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "13dcc58bd528f3efa3e6e0fa0853a6eedc376f1f3685fbd4869cbb2b60382ee3",
          "completed_at": "2026-07-15T16:46:54Z"
        },
        {
          "step_id": "state",
          "action": "state.consistency",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "5a1c6e5246defb1b6b6b90ff734db95bece2886b408ab112ed9b8e67222d5568",
          "completed_at": "2026-07-15T16:46:55Z"
        },
        {
          "step_id": "status",
          "action": "state.query",
          "input_hash": "a15231a2142a2a9a85355a8b9cbbccffe01a9c9c2c2fd8c2bc2987cdc481564a",
          "output_hash": "8ba9f7d3cc6705af37de9e3324d1258e21ccacb5ab0b2d7b389ca08885e11187",
          "completed_at": "2026-07-15T16:46:55Z"
        },
        {
          "step_id": "substrate",
          "action": "substrate.preflight",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "a6df426290b4549a59eecaa0519ead9bcc50b7fcb25bd2185ff6047960f19ccb",
          "completed_at": "2026-07-15T16:46:55Z"
        },
        {
          "step_id": "notices",
          "action": "substrate.notices",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "38b904a1cf83df048360fb2480571b749fd98d57e11f1afdffb5a74a78166fea",
          "completed_at": "2026-07-15T16:46:55Z"
        },
        {
          "step_id": "goals",
          "action": "substrate.goals",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "cdfd4de44a28140e686159f34f7b47975954c67e1d1efcef666e985acb136ed8",
          "completed_at": "2026-07-15T16:46:55Z"
        }
      ],
      "steps": [
        {
          "id": "config",
          "action": "config.audit",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-15T16:46:54Z",
          "output": {
            "status": "ok",
            "summary": {
              "settings": 195,
              "mutable": 186,
              "read_only_or_managed": 9,
              "unclassified": 0,
              "unknown": 0,
              "invalid": 0,
              "missing_using_defaults": 0
            },
            "unclassified_keys": [],
            "unknown_keys": [],
            "invalid_values": [],
            "missing_using_defaults": []
          },
          "output_hash": "3782ec2317c0c8ee7598634310a2804d8aae4735f557498f9d3b8fae7c45e1e5",
          "completed_at": "2026-07-15T16:46:54Z"
        },
        {
          "id": "services",
          "action": "services.audit",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-15T16:46:54Z",
          "output": {
            "status": "ok",
            "summary": {
              "critical": 0,
              "high": 0,
              "medium": 0,
              "low": 0
            },
            "findings": []
          },
          "output_hash": "13dcc58bd528f3efa3e6e0fa0853a6eedc376f1f3685fbd4869cbb2b60382ee3",
          "completed_at": "2026-07-15T16:46:54Z"
        },
        {
          "id": "state",
          "action": "state.consistency",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-15T16:46:54Z",
          "output": {
            "status": "ok",
            "repo_root": "D:\\Projects\\prd-plugin",
            "summary": {
              "errors": 0,
              "warnings": 0,
              "infos": 0
            },
            "findings": []
          },
          "output_hash": "5a1c6e5246defb1b6b6b90ff734db95bece2886b408ab112ed9b8e67222d5568",
          "completed_at": "2026-07-15T16:46:55Z"
        },
        {
          "id": "status",
          "action": "state.query",
          "status": "completed",
          "resolved_input_hash": "a15231a2142a2a9a85355a8b9cbbccffe01a9c9c2c2fd8c2bc2987cdc481564a",
          "started_at": "2026-07-15T16:46:55Z",
          "output": {
            "repo_root": "D:\\Projects\\prd-plugin",
            "autonomy_level": "autonomous",
            "requests_by_status": {
              "deferred": 1,
              "implemented": 80,
              "proposed": 1,
              "rejected": 1
            },
            "active_tracking": [],
            "tracking_branches": [],
            "tracking_branch_counts": {},
            "tracking_branch_errors": [],
            "open_health": [],
            "stale_count": 0,
            "skill_usage": {
              "project-decision-policy": 1,
              "project-request-intake": 1,
              "project-test-driven-implementation": 1,
              "project-verification-before-completion": 1,
              "project-llm-wiki": 1
            },
            "wiki_backfill_pending": false,
            "version_update": null
          },
          "output_hash": "8ba9f7d3cc6705af37de9e3324d1258e21ccacb5ab0b2d7b389ca08885e11187",
          "completed_at": "2026-07-15T16:46:55Z"
        },
        {
          "id": "substrate",
          "action": "substrate.preflight",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-15T16:46:55Z",
          "output": {
            "status": "disabled",
            "services": {
              "status": "ok",
              "summary": {
                "critical": 0,
                "high": 0,
                "medium": 0,
                "low": 0
              },
              "findings": []
            },
            "policy": {
              "configured": {
                "enabled": false,
                "mode": "off",
                "capabilities": [
                  "records",
                  "graph",
                  "events"
                ],
                "contract_version": 2,
                "require_source_refs": true,
                "endpoint": "http://127.0.0.1:47124",
                "manual_url": "http://127.0.0.1:47124/utcp.json",
                "knowledge_browse_url": "http://127.0.0.1:5276",
                "auth_env": "AI_COLLAB_API_KEY",
                "timeout_seconds": 5,
                "max_result_bytes": 1048576,
                "cache_ttl_seconds": 60,
                "fallback": "local",
                "automation": {
                  "discovery_on_session_start": true,
                  "knowledge_recall": true,
                  "memory_recall": true,
                  "context_enrichment": true,
                  "notices_on_session_start": false,
                  "goals_sync": false,
                  "telemetry_on_maintenance": false,
                  "reporting_dispatch": true,
                  "judgment_dispatch": true,
                  "verification_execution": true
                }
              },
              "active": false,
              "effective_mode": "off",
              "effective_capabilities": []
            }
          },
          "output_hash": "a6df426290b4549a59eecaa0519ead9bcc50b7fcb25bd2185ff6047960f19ccb",
          "completed_at": "2026-07-15T16:46:55Z"
        },
        {
          "id": "notices",
          "action": "substrate.notices",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-15T16:46:55Z",
          "output": {
            "status": "disabled"
          },
          "output_hash": "38b904a1cf83df048360fb2480571b749fd98d57e11f1afdffb5a74a78166fea",
          "completed_at": "2026-07-15T16:46:55Z"
        },
        {
          "id": "goals",
          "action": "substrate.goals",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-15T16:46:55Z",
          "output": {
            "status": "disabled",
            "created": 0,
            "observed": 0,
            "results": []
          },
          "output_hash": "cdfd4de44a28140e686159f34f7b47975954c67e1d1efcef666e985acb136ed8",
          "completed_at": "2026-07-15T16:46:55Z"
        }
      ],
      "completed_at": "2026-07-15T16:46:55Z"
    },
    {
      "id": "WFR-120",
      "schema_version": "1.0",
      "workflow_id": "session.stop",
      "workflow_version": 1,
      "definition_hash": "0cef7bb3e28321be8f85375c154955a69310ce297e47de3f3b8dd48f77a2f07d",
      "plan_hash": "a5e1d77ac734217487fc418e29c7163f4e81178e25d171e70cd4c999d527d3e8",
      "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
      "inputs": {},
      "idempotency_key": "hook:Stop:019f66ac-8f69-7aa0-9a70-44023057f6bf",
      "status": "completed",
      "attempt": 1,
      "created_at": "2026-07-15T16:46:58Z",
      "updated_at": "2026-07-15T16:46:59Z",
      "receipts": [
        {
          "step_id": "state",
          "action": "state.consistency",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "5a1c6e5246defb1b6b6b90ff734db95bece2886b408ab112ed9b8e67222d5568",
          "completed_at": "2026-07-15T16:46:59Z"
        },
        {
          "step_id": "goals",
          "action": "substrate.goals",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "cdfd4de44a28140e686159f34f7b47975954c67e1d1efcef666e985acb136ed8",
          "completed_at": "2026-07-15T16:46:59Z"
        },
        {
          "step_id": "staleness",
          "action": "staleness.audit",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "1e81cb0ffd0a4d04626920a203b38d2d23a264cd43e807a85d375d69cae8a658",
          "completed_at": "2026-07-15T16:46:59Z"
        },
        {
          "step_id": "reflections",
          "action": "reflection.list",
          "input_hash": "0172e841ab4c13b3a4061f073f9d68a716ec87a8a5d52fde41823385e0582573",
          "output_hash": "c1b6b635c0bab21120657277f14ef6f839909875f307a3745fa48aee2bd6e449",
          "completed_at": "2026-07-15T16:46:59Z"
        },
        {
          "step_id": "bundle",
          "action": "reporting.bundle",
          "input_hash": "aed8ebb688dc3c085dd978d7c4120572173c3cb87e75919e4a937dcca6ef9457",
          "output_hash": "f61aa7bfac7c2e96e3bf2d3386a95e45d2db52d040f05aff9ea963197eacc3f6",
          "completed_at": "2026-07-15T16:46:59Z"
        },
        {
          "step_id": "delegated",
          "action": "reporting.delegate",
          "input_hash": "5bf4dfad88c9958da759cb1561ca5fdd8f3ac9050e938bfde85af5c8d804adc9",
          "output_hash": "e6085059f197def80ae95add1f328418107bea5436c9bd002530043646a3a95c",
          "completed_at": "2026-07-15T16:46:59Z"
        }
      ],
      "steps": [
        {
          "id": "state",
          "action": "state.consistency",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-15T16:46:58Z",
          "output": {
            "status": "ok",
            "repo_root": "D:\\Projects\\prd-plugin",
            "summary": {
              "errors": 0,
              "warnings": 0,
              "infos": 0
            },
            "findings": []
          },
          "output_hash": "5a1c6e5246defb1b6b6b90ff734db95bece2886b408ab112ed9b8e67222d5568",
          "completed_at": "2026-07-15T16:46:59Z"
        },
        {
          "id": "goals",
          "action": "substrate.goals",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-15T16:46:59Z",
          "output": {
            "status": "disabled",
            "created": 0,
            "observed": 0,
            "results": []
          },
          "output_hash": "cdfd4de44a28140e686159f34f7b47975954c67e1d1efcef666e985acb136ed8",
          "completed_at": "2026-07-15T16:46:59Z"
        },
        {
          "id": "staleness",
          "action": "staleness.audit",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-15T16:46:59Z",
          "output": {
            "status": "ok",
            "repo_root": "D:\\Projects\\prd-plugin",
            "counts": {
              "stale": 0
            },
            "stale": []
          },
          "output_hash": "1e81cb0ffd0a4d04626920a203b38d2d23a264cd43e807a85d375d69cae8a658",
          "completed_at": "2026-07-15T16:46:59Z"
        },
        {
          "id": "reflections",
          "action": "reflection.list",
          "status": "completed",
          "resolved_input_hash": "0172e841ab4c13b3a4061f073f9d68a716ec87a8a5d52fde41823385e0582573",
          "started_at": "2026-07-15T16:46:59Z",
          "output": {
            "enabled": false,
            "on_stop": true,
            "max_questions_per_stop": 5,
            "categories": [
              {
                "id": "behaviour_quality",
                "name": "Behaviour quality",
                "enabled": true,
                "question_count": 3
              },
              {
                "id": "harness_friction",
                "name": "Harness friction",
                "enabled": true,
                "question_count": 2
              }
            ],
            "questions": [
              {
                "id": "RFQ-001",
                "text": "Based on the work you just carried out, would you classify your behaviour as good? Answer yes or no and cite observable evidence.",
                "enabled": true,
                "category_id": "behaviour_quality",
                "category_name": "Behaviour quality",
                "effective_enabled": false
              },
              {
                "id": "RFQ-002",
                "text": "If you answered no, what could you do differently to correct your behaviour?",
                "enabled": true,
                "category_id": "behaviour_quality",
                "category_name": "Behaviour quality",
                "effective_enabled": false
              },
              {
                "id": "RFQ-003",
                "text": "Would another attempt using the identified good behaviours materially improve the outcome? Answer yes or no and state the next corrective action if yes.",
                "enabled": true,
                "category_id": "behaviour_quality",
                "category_name": "Behaviour quality",
                "effective_enabled": false
              },
              {
                "id": "RFQ-004",
                "text": "What harness friction points made this work more difficult?",
                "enabled": true,
                "category_id": "harness_friction",
                "category_name": "Harness friction",
                "effective_enabled": false
              },
              {
                "id": "RFQ-005",
                "text": "What up to three changes would most improve friction in the harness?",
                "enabled": true,
                "category_id": "harness_friction",
                "category_name": "Harness friction",
                "effective_enabled": false
              }
            ]
          },
          "output_hash": "c1b6b635c0bab21120657277f14ef6f839909875f307a3745fa48aee2bd6e449",
          "completed_at": "2026-07-15T16:46:59Z"
        },
        {
          "id": "bundle",
          "action": "reporting.bundle",
          "status": "completed",
          "resolved_input_hash": "aed8ebb688dc3c085dd978d7c4120572173c3cb87e75919e4a937dcca6ef9457",
          "started_at": "2026-07-15T16:46:59Z",
          "output": {
            "contract_version": 1,
            "task": "session_summary",
            "repo": "prd-plugin",
            "policy": {
              "enabled": false,
              "executor": "ai-collab",
              "contract_version": 1,
              "profile": "fast-capable",
              "tasks": [
                "report_summary",
                "session_summary",
                "wiki_synthesis",
                "triage_draft"
              ],
              "fallback": "main",
              "require_source_refs": true,
              "max_input_tokens": 12000,
              "max_output_tokens": 1500,
              "timeout_seconds": 30
            },
            "facts": {
              "requests_by_status": {
                "deferred": 1,
                "implemented": 80,
                "proposed": 1,
                "rejected": 1
              },
              "active_requests": [
                {
                  "id": "REQ-072",
                  "status": "proposed",
                  "severity": "low",
                  "summary": "opencode run-until-done: session.idle is a non-blocking notification, so the stop guard can't force continuation on opencode (currently degrades to a printed reminder, 0.5.95). Investigate whether opencode exposes any vetoable/continuation mechanism (a different event, a permission hook, or a 'continue' API) to enforce run-until-done, or accept the reminder as the permanent ceiling. Low priority — user rarely uses opencode."
                }
              ],
              "active_tracking": [],
              "open_health": [],
              "evidence_count": 105,
              "decision_count": 10
            },
            "findings": [],
            "source_refs": [
              ".prd_plugin/config.json",
              ".prd_plugin/state/decisions.json",
              ".prd_plugin/state/evidence.json",
              ".prd_plugin/state/health.json",
              ".prd_plugin/state/requests.json",
              ".prd_plugin/state/tracking.json",
              "REQ-072"
            ],
            "constraints": {
              "max_input_tokens": 12000,
              "max_output_tokens": 1500,
              "timeout_seconds": 30,
              "require_source_refs": true,
              "no_project_state_writes": true,
              "no_secrets_or_local_session_content": true
            }
          },
          "output_hash": "f61aa7bfac7c2e96e3bf2d3386a95e45d2db52d040f05aff9ea963197eacc3f6",
          "completed_at": "2026-07-15T16:46:59Z"
        },
        {
          "id": "delegated",
          "action": "reporting.delegate",
          "status": "completed",
          "resolved_input_hash": "5bf4dfad88c9958da759cb1561ca5fdd8f3ac9050e938bfde85af5c8d804adc9",
          "started_at": "2026-07-15T16:46:59Z",
          "output": {
            "status": "fallback",
            "action": "main",
            "reason": "disabled"
          },
          "output_hash": "e6085059f197def80ae95add1f328418107bea5436c9bd002530043646a3a95c",
          "completed_at": "2026-07-15T16:46:59Z"
        }
      ],
      "completed_at": "2026-07-15T16:46:59Z"
    },
    {
      "id": "WFR-121",
      "schema_version": "1.0",
      "workflow_id": "session.start",
      "workflow_version": 1,
      "definition_hash": "d0f98da02571e6dd27fec4aed92d3c82af9db75f8b90b997bf665635c7b7f6ca",
      "plan_hash": "b5072615ca3b7e9a3bd85d50d1f069d99ef2a9816b32c03a370745ed7a205536",
      "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
      "inputs": {},
      "idempotency_key": "hook:SessionStart:019f66b1-f33f-7e00-87de-20a04d5f7cac",
      "status": "completed",
      "attempt": 1,
      "created_at": "2026-07-15T16:52:48Z",
      "updated_at": "2026-07-15T16:52:49Z",
      "receipts": [
        {
          "step_id": "config",
          "action": "config.audit",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "3782ec2317c0c8ee7598634310a2804d8aae4735f557498f9d3b8fae7c45e1e5",
          "completed_at": "2026-07-15T16:52:48Z"
        },
        {
          "step_id": "services",
          "action": "services.audit",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "13dcc58bd528f3efa3e6e0fa0853a6eedc376f1f3685fbd4869cbb2b60382ee3",
          "completed_at": "2026-07-15T16:52:48Z"
        },
        {
          "step_id": "state",
          "action": "state.consistency",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "5a1c6e5246defb1b6b6b90ff734db95bece2886b408ab112ed9b8e67222d5568",
          "completed_at": "2026-07-15T16:52:48Z"
        },
        {
          "step_id": "status",
          "action": "state.query",
          "input_hash": "a15231a2142a2a9a85355a8b9cbbccffe01a9c9c2c2fd8c2bc2987cdc481564a",
          "output_hash": "8ba9f7d3cc6705af37de9e3324d1258e21ccacb5ab0b2d7b389ca08885e11187",
          "completed_at": "2026-07-15T16:52:49Z"
        },
        {
          "step_id": "substrate",
          "action": "substrate.preflight",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "a6df426290b4549a59eecaa0519ead9bcc50b7fcb25bd2185ff6047960f19ccb",
          "completed_at": "2026-07-15T16:52:49Z"
        },
        {
          "step_id": "notices",
          "action": "substrate.notices",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "38b904a1cf83df048360fb2480571b749fd98d57e11f1afdffb5a74a78166fea",
          "completed_at": "2026-07-15T16:52:49Z"
        },
        {
          "step_id": "goals",
          "action": "substrate.goals",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "cdfd4de44a28140e686159f34f7b47975954c67e1d1efcef666e985acb136ed8",
          "completed_at": "2026-07-15T16:52:49Z"
        }
      ],
      "steps": [
        {
          "id": "config",
          "action": "config.audit",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-15T16:52:48Z",
          "output": {
            "status": "ok",
            "summary": {
              "settings": 195,
              "mutable": 186,
              "read_only_or_managed": 9,
              "unclassified": 0,
              "unknown": 0,
              "invalid": 0,
              "missing_using_defaults": 0
            },
            "unclassified_keys": [],
            "unknown_keys": [],
            "invalid_values": [],
            "missing_using_defaults": []
          },
          "output_hash": "3782ec2317c0c8ee7598634310a2804d8aae4735f557498f9d3b8fae7c45e1e5",
          "completed_at": "2026-07-15T16:52:48Z"
        },
        {
          "id": "services",
          "action": "services.audit",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-15T16:52:48Z",
          "output": {
            "status": "ok",
            "summary": {
              "critical": 0,
              "high": 0,
              "medium": 0,
              "low": 0
            },
            "findings": []
          },
          "output_hash": "13dcc58bd528f3efa3e6e0fa0853a6eedc376f1f3685fbd4869cbb2b60382ee3",
          "completed_at": "2026-07-15T16:52:48Z"
        },
        {
          "id": "state",
          "action": "state.consistency",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-15T16:52:48Z",
          "output": {
            "status": "ok",
            "repo_root": "D:\\Projects\\prd-plugin",
            "summary": {
              "errors": 0,
              "warnings": 0,
              "infos": 0
            },
            "findings": []
          },
          "output_hash": "5a1c6e5246defb1b6b6b90ff734db95bece2886b408ab112ed9b8e67222d5568",
          "completed_at": "2026-07-15T16:52:48Z"
        },
        {
          "id": "status",
          "action": "state.query",
          "status": "completed",
          "resolved_input_hash": "a15231a2142a2a9a85355a8b9cbbccffe01a9c9c2c2fd8c2bc2987cdc481564a",
          "started_at": "2026-07-15T16:52:48Z",
          "output": {
            "repo_root": "D:\\Projects\\prd-plugin",
            "autonomy_level": "autonomous",
            "requests_by_status": {
              "deferred": 1,
              "implemented": 80,
              "proposed": 1,
              "rejected": 1
            },
            "active_tracking": [],
            "tracking_branches": [],
            "tracking_branch_counts": {},
            "tracking_branch_errors": [],
            "open_health": [],
            "stale_count": 0,
            "skill_usage": {
              "project-decision-policy": 1,
              "project-request-intake": 1,
              "project-test-driven-implementation": 1,
              "project-verification-before-completion": 1,
              "project-llm-wiki": 1
            },
            "wiki_backfill_pending": false,
            "version_update": null
          },
          "output_hash": "8ba9f7d3cc6705af37de9e3324d1258e21ccacb5ab0b2d7b389ca08885e11187",
          "completed_at": "2026-07-15T16:52:49Z"
        },
        {
          "id": "substrate",
          "action": "substrate.preflight",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-15T16:52:49Z",
          "output": {
            "status": "disabled",
            "services": {
              "status": "ok",
              "summary": {
                "critical": 0,
                "high": 0,
                "medium": 0,
                "low": 0
              },
              "findings": []
            },
            "policy": {
              "configured": {
                "enabled": false,
                "mode": "off",
                "capabilities": [
                  "records",
                  "graph",
                  "events"
                ],
                "contract_version": 2,
                "require_source_refs": true,
                "endpoint": "http://127.0.0.1:47124",
                "manual_url": "http://127.0.0.1:47124/utcp.json",
                "knowledge_browse_url": "http://127.0.0.1:5276",
                "auth_env": "AI_COLLAB_API_KEY",
                "timeout_seconds": 5,
                "max_result_bytes": 1048576,
                "cache_ttl_seconds": 60,
                "fallback": "local",
                "automation": {
                  "discovery_on_session_start": true,
                  "knowledge_recall": true,
                  "memory_recall": true,
                  "context_enrichment": true,
                  "notices_on_session_start": false,
                  "goals_sync": false,
                  "telemetry_on_maintenance": false,
                  "reporting_dispatch": true,
                  "judgment_dispatch": true,
                  "verification_execution": true
                }
              },
              "active": false,
              "effective_mode": "off",
              "effective_capabilities": []
            }
          },
          "output_hash": "a6df426290b4549a59eecaa0519ead9bcc50b7fcb25bd2185ff6047960f19ccb",
          "completed_at": "2026-07-15T16:52:49Z"
        },
        {
          "id": "notices",
          "action": "substrate.notices",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-15T16:52:49Z",
          "output": {
            "status": "disabled"
          },
          "output_hash": "38b904a1cf83df048360fb2480571b749fd98d57e11f1afdffb5a74a78166fea",
          "completed_at": "2026-07-15T16:52:49Z"
        },
        {
          "id": "goals",
          "action": "substrate.goals",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-15T16:52:49Z",
          "output": {
            "status": "disabled",
            "created": 0,
            "observed": 0,
            "results": []
          },
          "output_hash": "cdfd4de44a28140e686159f34f7b47975954c67e1d1efcef666e985acb136ed8",
          "completed_at": "2026-07-15T16:52:49Z"
        }
      ],
      "completed_at": "2026-07-15T16:52:49Z"
    },
    {
      "id": "WFR-122",
      "schema_version": "1.0",
      "workflow_id": "session.stop",
      "workflow_version": 1,
      "definition_hash": "0cef7bb3e28321be8f85375c154955a69310ce297e47de3f3b8dd48f77a2f07d",
      "plan_hash": "a5e1d77ac734217487fc418e29c7163f4e81178e25d171e70cd4c999d527d3e8",
      "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
      "inputs": {},
      "idempotency_key": "hook:Stop:019f66b1-f33f-7e00-87de-20a04d5f7cac",
      "status": "completed",
      "attempt": 1,
      "created_at": "2026-07-15T16:52:52Z",
      "updated_at": "2026-07-15T16:52:53Z",
      "receipts": [
        {
          "step_id": "state",
          "action": "state.consistency",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "5a1c6e5246defb1b6b6b90ff734db95bece2886b408ab112ed9b8e67222d5568",
          "completed_at": "2026-07-15T16:52:53Z"
        },
        {
          "step_id": "goals",
          "action": "substrate.goals",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "cdfd4de44a28140e686159f34f7b47975954c67e1d1efcef666e985acb136ed8",
          "completed_at": "2026-07-15T16:52:53Z"
        },
        {
          "step_id": "staleness",
          "action": "staleness.audit",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "1e81cb0ffd0a4d04626920a203b38d2d23a264cd43e807a85d375d69cae8a658",
          "completed_at": "2026-07-15T16:52:53Z"
        },
        {
          "step_id": "reflections",
          "action": "reflection.list",
          "input_hash": "0172e841ab4c13b3a4061f073f9d68a716ec87a8a5d52fde41823385e0582573",
          "output_hash": "c1b6b635c0bab21120657277f14ef6f839909875f307a3745fa48aee2bd6e449",
          "completed_at": "2026-07-15T16:52:53Z"
        },
        {
          "step_id": "bundle",
          "action": "reporting.bundle",
          "input_hash": "aed8ebb688dc3c085dd978d7c4120572173c3cb87e75919e4a937dcca6ef9457",
          "output_hash": "f61aa7bfac7c2e96e3bf2d3386a95e45d2db52d040f05aff9ea963197eacc3f6",
          "completed_at": "2026-07-15T16:52:53Z"
        },
        {
          "step_id": "delegated",
          "action": "reporting.delegate",
          "input_hash": "5bf4dfad88c9958da759cb1561ca5fdd8f3ac9050e938bfde85af5c8d804adc9",
          "output_hash": "e6085059f197def80ae95add1f328418107bea5436c9bd002530043646a3a95c",
          "completed_at": "2026-07-15T16:52:53Z"
        }
      ],
      "steps": [
        {
          "id": "state",
          "action": "state.consistency",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-15T16:52:52Z",
          "output": {
            "status": "ok",
            "repo_root": "D:\\Projects\\prd-plugin",
            "summary": {
              "errors": 0,
              "warnings": 0,
              "infos": 0
            },
            "findings": []
          },
          "output_hash": "5a1c6e5246defb1b6b6b90ff734db95bece2886b408ab112ed9b8e67222d5568",
          "completed_at": "2026-07-15T16:52:53Z"
        },
        {
          "id": "goals",
          "action": "substrate.goals",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-15T16:52:53Z",
          "output": {
            "status": "disabled",
            "created": 0,
            "observed": 0,
            "results": []
          },
          "output_hash": "cdfd4de44a28140e686159f34f7b47975954c67e1d1efcef666e985acb136ed8",
          "completed_at": "2026-07-15T16:52:53Z"
        },
        {
          "id": "staleness",
          "action": "staleness.audit",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-15T16:52:53Z",
          "output": {
            "status": "ok",
            "repo_root": "D:\\Projects\\prd-plugin",
            "counts": {
              "stale": 0
            },
            "stale": []
          },
          "output_hash": "1e81cb0ffd0a4d04626920a203b38d2d23a264cd43e807a85d375d69cae8a658",
          "completed_at": "2026-07-15T16:52:53Z"
        },
        {
          "id": "reflections",
          "action": "reflection.list",
          "status": "completed",
          "resolved_input_hash": "0172e841ab4c13b3a4061f073f9d68a716ec87a8a5d52fde41823385e0582573",
          "started_at": "2026-07-15T16:52:53Z",
          "output": {
            "enabled": false,
            "on_stop": true,
            "max_questions_per_stop": 5,
            "categories": [
              {
                "id": "behaviour_quality",
                "name": "Behaviour quality",
                "enabled": true,
                "question_count": 3
              },
              {
                "id": "harness_friction",
                "name": "Harness friction",
                "enabled": true,
                "question_count": 2
              }
            ],
            "questions": [
              {
                "id": "RFQ-001",
                "text": "Based on the work you just carried out, would you classify your behaviour as good? Answer yes or no and cite observable evidence.",
                "enabled": true,
                "category_id": "behaviour_quality",
                "category_name": "Behaviour quality",
                "effective_enabled": false
              },
              {
                "id": "RFQ-002",
                "text": "If you answered no, what could you do differently to correct your behaviour?",
                "enabled": true,
                "category_id": "behaviour_quality",
                "category_name": "Behaviour quality",
                "effective_enabled": false
              },
              {
                "id": "RFQ-003",
                "text": "Would another attempt using the identified good behaviours materially improve the outcome? Answer yes or no and state the next corrective action if yes.",
                "enabled": true,
                "category_id": "behaviour_quality",
                "category_name": "Behaviour quality",
                "effective_enabled": false
              },
              {
                "id": "RFQ-004",
                "text": "What harness friction points made this work more difficult?",
                "enabled": true,
                "category_id": "harness_friction",
                "category_name": "Harness friction",
                "effective_enabled": false
              },
              {
                "id": "RFQ-005",
                "text": "What up to three changes would most improve friction in the harness?",
                "enabled": true,
                "category_id": "harness_friction",
                "category_name": "Harness friction",
                "effective_enabled": false
              }
            ]
          },
          "output_hash": "c1b6b635c0bab21120657277f14ef6f839909875f307a3745fa48aee2bd6e449",
          "completed_at": "2026-07-15T16:52:53Z"
        },
        {
          "id": "bundle",
          "action": "reporting.bundle",
          "status": "completed",
          "resolved_input_hash": "aed8ebb688dc3c085dd978d7c4120572173c3cb87e75919e4a937dcca6ef9457",
          "started_at": "2026-07-15T16:52:53Z",
          "output": {
            "contract_version": 1,
            "task": "session_summary",
            "repo": "prd-plugin",
            "policy": {
              "enabled": false,
              "executor": "ai-collab",
              "contract_version": 1,
              "profile": "fast-capable",
              "tasks": [
                "report_summary",
                "session_summary",
                "wiki_synthesis",
                "triage_draft"
              ],
              "fallback": "main",
              "require_source_refs": true,
              "max_input_tokens": 12000,
              "max_output_tokens": 1500,
              "timeout_seconds": 30
            },
            "facts": {
              "requests_by_status": {
                "deferred": 1,
                "implemented": 80,
                "proposed": 1,
                "rejected": 1
              },
              "active_requests": [
                {
                  "id": "REQ-072",
                  "status": "proposed",
                  "severity": "low",
                  "summary": "opencode run-until-done: session.idle is a non-blocking notification, so the stop guard can't force continuation on opencode (currently degrades to a printed reminder, 0.5.95). Investigate whether opencode exposes any vetoable/continuation mechanism (a different event, a permission hook, or a 'continue' API) to enforce run-until-done, or accept the reminder as the permanent ceiling. Low priority — user rarely uses opencode."
                }
              ],
              "active_tracking": [],
              "open_health": [],
              "evidence_count": 105,
              "decision_count": 10
            },
            "findings": [],
            "source_refs": [
              ".prd_plugin/config.json",
              ".prd_plugin/state/decisions.json",
              ".prd_plugin/state/evidence.json",
              ".prd_plugin/state/health.json",
              ".prd_plugin/state/requests.json",
              ".prd_plugin/state/tracking.json",
              "REQ-072"
            ],
            "constraints": {
              "max_input_tokens": 12000,
              "max_output_tokens": 1500,
              "timeout_seconds": 30,
              "require_source_refs": true,
              "no_project_state_writes": true,
              "no_secrets_or_local_session_content": true
            }
          },
          "output_hash": "f61aa7bfac7c2e96e3bf2d3386a95e45d2db52d040f05aff9ea963197eacc3f6",
          "completed_at": "2026-07-15T16:52:53Z"
        },
        {
          "id": "delegated",
          "action": "reporting.delegate",
          "status": "completed",
          "resolved_input_hash": "5bf4dfad88c9958da759cb1561ca5fdd8f3ac9050e938bfde85af5c8d804adc9",
          "started_at": "2026-07-15T16:52:53Z",
          "output": {
            "status": "fallback",
            "action": "main",
            "reason": "disabled"
          },
          "output_hash": "e6085059f197def80ae95add1f328418107bea5436c9bd002530043646a3a95c",
          "completed_at": "2026-07-15T16:52:53Z"
        }
      ],
      "completed_at": "2026-07-15T16:52:53Z"
    },
    {
      "id": "WFR-123",
      "schema_version": "1.0",
      "workflow_id": "session.start",
      "workflow_version": 1,
      "definition_hash": "d0f98da02571e6dd27fec4aed92d3c82af9db75f8b90b997bf665635c7b7f6ca",
      "plan_hash": "b5072615ca3b7e9a3bd85d50d1f069d99ef2a9816b32c03a370745ed7a205536",
      "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
      "inputs": {},
      "idempotency_key": "hook:SessionStart:019f66b4-cb17-7513-884f-9db9b25dc959",
      "status": "completed",
      "attempt": 1,
      "created_at": "2026-07-15T16:55:54Z",
      "updated_at": "2026-07-15T16:55:56Z",
      "receipts": [
        {
          "step_id": "config",
          "action": "config.audit",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "3782ec2317c0c8ee7598634310a2804d8aae4735f557498f9d3b8fae7c45e1e5",
          "completed_at": "2026-07-15T16:55:54Z"
        },
        {
          "step_id": "services",
          "action": "services.audit",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "13dcc58bd528f3efa3e6e0fa0853a6eedc376f1f3685fbd4869cbb2b60382ee3",
          "completed_at": "2026-07-15T16:55:55Z"
        },
        {
          "step_id": "state",
          "action": "state.consistency",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "5a1c6e5246defb1b6b6b90ff734db95bece2886b408ab112ed9b8e67222d5568",
          "completed_at": "2026-07-15T16:55:55Z"
        },
        {
          "step_id": "status",
          "action": "state.query",
          "input_hash": "a15231a2142a2a9a85355a8b9cbbccffe01a9c9c2c2fd8c2bc2987cdc481564a",
          "output_hash": "8ba9f7d3cc6705af37de9e3324d1258e21ccacb5ab0b2d7b389ca08885e11187",
          "completed_at": "2026-07-15T16:55:55Z"
        },
        {
          "step_id": "substrate",
          "action": "substrate.preflight",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "a6df426290b4549a59eecaa0519ead9bcc50b7fcb25bd2185ff6047960f19ccb",
          "completed_at": "2026-07-15T16:55:55Z"
        },
        {
          "step_id": "notices",
          "action": "substrate.notices",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "38b904a1cf83df048360fb2480571b749fd98d57e11f1afdffb5a74a78166fea",
          "completed_at": "2026-07-15T16:55:55Z"
        },
        {
          "step_id": "goals",
          "action": "substrate.goals",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "cdfd4de44a28140e686159f34f7b47975954c67e1d1efcef666e985acb136ed8",
          "completed_at": "2026-07-15T16:55:56Z"
        }
      ],
      "steps": [
        {
          "id": "config",
          "action": "config.audit",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-15T16:55:54Z",
          "output": {
            "status": "ok",
            "summary": {
              "settings": 195,
              "mutable": 186,
              "read_only_or_managed": 9,
              "unclassified": 0,
              "unknown": 0,
              "invalid": 0,
              "missing_using_defaults": 0
            },
            "unclassified_keys": [],
            "unknown_keys": [],
            "invalid_values": [],
            "missing_using_defaults": []
          },
          "output_hash": "3782ec2317c0c8ee7598634310a2804d8aae4735f557498f9d3b8fae7c45e1e5",
          "completed_at": "2026-07-15T16:55:54Z"
        },
        {
          "id": "services",
          "action": "services.audit",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-15T16:55:54Z",
          "output": {
            "status": "ok",
            "summary": {
              "critical": 0,
              "high": 0,
              "medium": 0,
              "low": 0
            },
            "findings": []
          },
          "output_hash": "13dcc58bd528f3efa3e6e0fa0853a6eedc376f1f3685fbd4869cbb2b60382ee3",
          "completed_at": "2026-07-15T16:55:55Z"
        },
        {
          "id": "state",
          "action": "state.consistency",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-15T16:55:55Z",
          "output": {
            "status": "ok",
            "repo_root": "D:\\Projects\\prd-plugin",
            "summary": {
              "errors": 0,
              "warnings": 0,
              "infos": 0
            },
            "findings": []
          },
          "output_hash": "5a1c6e5246defb1b6b6b90ff734db95bece2886b408ab112ed9b8e67222d5568",
          "completed_at": "2026-07-15T16:55:55Z"
        },
        {
          "id": "status",
          "action": "state.query",
          "status": "completed",
          "resolved_input_hash": "a15231a2142a2a9a85355a8b9cbbccffe01a9c9c2c2fd8c2bc2987cdc481564a",
          "started_at": "2026-07-15T16:55:55Z",
          "output": {
            "repo_root": "D:\\Projects\\prd-plugin",
            "autonomy_level": "autonomous",
            "requests_by_status": {
              "deferred": 1,
              "implemented": 80,
              "proposed": 1,
              "rejected": 1
            },
            "active_tracking": [],
            "tracking_branches": [],
            "tracking_branch_counts": {},
            "tracking_branch_errors": [],
            "open_health": [],
            "stale_count": 0,
            "skill_usage": {
              "project-decision-policy": 1,
              "project-request-intake": 1,
              "project-test-driven-implementation": 1,
              "project-verification-before-completion": 1,
              "project-llm-wiki": 1
            },
            "wiki_backfill_pending": false,
            "version_update": null
          },
          "output_hash": "8ba9f7d3cc6705af37de9e3324d1258e21ccacb5ab0b2d7b389ca08885e11187",
          "completed_at": "2026-07-15T16:55:55Z"
        },
        {
          "id": "substrate",
          "action": "substrate.preflight",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-15T16:55:55Z",
          "output": {
            "status": "disabled",
            "services": {
              "status": "ok",
              "summary": {
                "critical": 0,
                "high": 0,
                "medium": 0,
                "low": 0
              },
              "findings": []
            },
            "policy": {
              "configured": {
                "enabled": false,
                "mode": "off",
                "capabilities": [
                  "records",
                  "graph",
                  "events"
                ],
                "contract_version": 2,
                "require_source_refs": true,
                "endpoint": "http://127.0.0.1:47124",
                "manual_url": "http://127.0.0.1:47124/utcp.json",
                "knowledge_browse_url": "http://127.0.0.1:5276",
                "auth_env": "AI_COLLAB_API_KEY",
                "timeout_seconds": 5,
                "max_result_bytes": 1048576,
                "cache_ttl_seconds": 60,
                "fallback": "local",
                "automation": {
                  "discovery_on_session_start": true,
                  "knowledge_recall": true,
                  "memory_recall": true,
                  "context_enrichment": true,
                  "notices_on_session_start": false,
                  "goals_sync": false,
                  "telemetry_on_maintenance": false,
                  "reporting_dispatch": true,
                  "judgment_dispatch": true,
                  "verification_execution": true
                }
              },
              "active": false,
              "effective_mode": "off",
              "effective_capabilities": []
            }
          },
          "output_hash": "a6df426290b4549a59eecaa0519ead9bcc50b7fcb25bd2185ff6047960f19ccb",
          "completed_at": "2026-07-15T16:55:55Z"
        },
        {
          "id": "notices",
          "action": "substrate.notices",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-15T16:55:55Z",
          "output": {
            "status": "disabled"
          },
          "output_hash": "38b904a1cf83df048360fb2480571b749fd98d57e11f1afdffb5a74a78166fea",
          "completed_at": "2026-07-15T16:55:55Z"
        },
        {
          "id": "goals",
          "action": "substrate.goals",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-15T16:55:55Z",
          "output": {
            "status": "disabled",
            "created": 0,
            "observed": 0,
            "results": []
          },
          "output_hash": "cdfd4de44a28140e686159f34f7b47975954c67e1d1efcef666e985acb136ed8",
          "completed_at": "2026-07-15T16:55:56Z"
        }
      ],
      "completed_at": "2026-07-15T16:55:56Z"
    },
    {
      "id": "WFR-124",
      "schema_version": "1.0",
      "workflow_id": "session.stop",
      "workflow_version": 1,
      "definition_hash": "0cef7bb3e28321be8f85375c154955a69310ce297e47de3f3b8dd48f77a2f07d",
      "plan_hash": "a5e1d77ac734217487fc418e29c7163f4e81178e25d171e70cd4c999d527d3e8",
      "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
      "inputs": {},
      "idempotency_key": "hook:Stop:019f66b4-cb17-7513-884f-9db9b25dc959",
      "status": "completed",
      "attempt": 1,
      "created_at": "2026-07-15T16:55:58Z",
      "updated_at": "2026-07-15T16:55:59Z",
      "receipts": [
        {
          "step_id": "state",
          "action": "state.consistency",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "5a1c6e5246defb1b6b6b90ff734db95bece2886b408ab112ed9b8e67222d5568",
          "completed_at": "2026-07-15T16:55:58Z"
        },
        {
          "step_id": "goals",
          "action": "substrate.goals",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "cdfd4de44a28140e686159f34f7b47975954c67e1d1efcef666e985acb136ed8",
          "completed_at": "2026-07-15T16:55:59Z"
        },
        {
          "step_id": "staleness",
          "action": "staleness.audit",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "1e81cb0ffd0a4d04626920a203b38d2d23a264cd43e807a85d375d69cae8a658",
          "completed_at": "2026-07-15T16:55:59Z"
        },
        {
          "step_id": "reflections",
          "action": "reflection.list",
          "input_hash": "0172e841ab4c13b3a4061f073f9d68a716ec87a8a5d52fde41823385e0582573",
          "output_hash": "c1b6b635c0bab21120657277f14ef6f839909875f307a3745fa48aee2bd6e449",
          "completed_at": "2026-07-15T16:55:59Z"
        },
        {
          "step_id": "bundle",
          "action": "reporting.bundle",
          "input_hash": "aed8ebb688dc3c085dd978d7c4120572173c3cb87e75919e4a937dcca6ef9457",
          "output_hash": "f61aa7bfac7c2e96e3bf2d3386a95e45d2db52d040f05aff9ea963197eacc3f6",
          "completed_at": "2026-07-15T16:55:59Z"
        },
        {
          "step_id": "delegated",
          "action": "reporting.delegate",
          "input_hash": "5bf4dfad88c9958da759cb1561ca5fdd8f3ac9050e938bfde85af5c8d804adc9",
          "output_hash": "e6085059f197def80ae95add1f328418107bea5436c9bd002530043646a3a95c",
          "completed_at": "2026-07-15T16:55:59Z"
        }
      ],
      "steps": [
        {
          "id": "state",
          "action": "state.consistency",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-15T16:55:58Z",
          "output": {
            "status": "ok",
            "repo_root": "D:\\Projects\\prd-plugin",
            "summary": {
              "errors": 0,
              "warnings": 0,
              "infos": 0
            },
            "findings": []
          },
          "output_hash": "5a1c6e5246defb1b6b6b90ff734db95bece2886b408ab112ed9b8e67222d5568",
          "completed_at": "2026-07-15T16:55:58Z"
        },
        {
          "id": "goals",
          "action": "substrate.goals",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-15T16:55:59Z",
          "output": {
            "status": "disabled",
            "created": 0,
            "observed": 0,
            "results": []
          },
          "output_hash": "cdfd4de44a28140e686159f34f7b47975954c67e1d1efcef666e985acb136ed8",
          "completed_at": "2026-07-15T16:55:59Z"
        },
        {
          "id": "staleness",
          "action": "staleness.audit",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-15T16:55:59Z",
          "output": {
            "status": "ok",
            "repo_root": "D:\\Projects\\prd-plugin",
            "counts": {
              "stale": 0
            },
            "stale": []
          },
          "output_hash": "1e81cb0ffd0a4d04626920a203b38d2d23a264cd43e807a85d375d69cae8a658",
          "completed_at": "2026-07-15T16:55:59Z"
        },
        {
          "id": "reflections",
          "action": "reflection.list",
          "status": "completed",
          "resolved_input_hash": "0172e841ab4c13b3a4061f073f9d68a716ec87a8a5d52fde41823385e0582573",
          "started_at": "2026-07-15T16:55:59Z",
          "output": {
            "enabled": false,
            "on_stop": true,
            "max_questions_per_stop": 5,
            "categories": [
              {
                "id": "behaviour_quality",
                "name": "Behaviour quality",
                "enabled": true,
                "question_count": 3
              },
              {
                "id": "harness_friction",
                "name": "Harness friction",
                "enabled": true,
                "question_count": 2
              }
            ],
            "questions": [
              {
                "id": "RFQ-001",
                "text": "Based on the work you just carried out, would you classify your behaviour as good? Answer yes or no and cite observable evidence.",
                "enabled": true,
                "category_id": "behaviour_quality",
                "category_name": "Behaviour quality",
                "effective_enabled": false
              },
              {
                "id": "RFQ-002",
                "text": "If you answered no, what could you do differently to correct your behaviour?",
                "enabled": true,
                "category_id": "behaviour_quality",
                "category_name": "Behaviour quality",
                "effective_enabled": false
              },
              {
                "id": "RFQ-003",
                "text": "Would another attempt using the identified good behaviours materially improve the outcome? Answer yes or no and state the next corrective action if yes.",
                "enabled": true,
                "category_id": "behaviour_quality",
                "category_name": "Behaviour quality",
                "effective_enabled": false
              },
              {
                "id": "RFQ-004",
                "text": "What harness friction points made this work more difficult?",
                "enabled": true,
                "category_id": "harness_friction",
                "category_name": "Harness friction",
                "effective_enabled": false
              },
              {
                "id": "RFQ-005",
                "text": "What up to three changes would most improve friction in the harness?",
                "enabled": true,
                "category_id": "harness_friction",
                "category_name": "Harness friction",
                "effective_enabled": false
              }
            ]
          },
          "output_hash": "c1b6b635c0bab21120657277f14ef6f839909875f307a3745fa48aee2bd6e449",
          "completed_at": "2026-07-15T16:55:59Z"
        },
        {
          "id": "bundle",
          "action": "reporting.bundle",
          "status": "completed",
          "resolved_input_hash": "aed8ebb688dc3c085dd978d7c4120572173c3cb87e75919e4a937dcca6ef9457",
          "started_at": "2026-07-15T16:55:59Z",
          "output": {
            "contract_version": 1,
            "task": "session_summary",
            "repo": "prd-plugin",
            "policy": {
              "enabled": false,
              "executor": "ai-collab",
              "contract_version": 1,
              "profile": "fast-capable",
              "tasks": [
                "report_summary",
                "session_summary",
                "wiki_synthesis",
                "triage_draft"
              ],
              "fallback": "main",
              "require_source_refs": true,
              "max_input_tokens": 12000,
              "max_output_tokens": 1500,
              "timeout_seconds": 30
            },
            "facts": {
              "requests_by_status": {
                "deferred": 1,
                "implemented": 80,
                "proposed": 1,
                "rejected": 1
              },
              "active_requests": [
                {
                  "id": "REQ-072",
                  "status": "proposed",
                  "severity": "low",
                  "summary": "opencode run-until-done: session.idle is a non-blocking notification, so the stop guard can't force continuation on opencode (currently degrades to a printed reminder, 0.5.95). Investigate whether opencode exposes any vetoable/continuation mechanism (a different event, a permission hook, or a 'continue' API) to enforce run-until-done, or accept the reminder as the permanent ceiling. Low priority — user rarely uses opencode."
                }
              ],
              "active_tracking": [],
              "open_health": [],
              "evidence_count": 105,
              "decision_count": 10
            },
            "findings": [],
            "source_refs": [
              ".prd_plugin/config.json",
              ".prd_plugin/state/decisions.json",
              ".prd_plugin/state/evidence.json",
              ".prd_plugin/state/health.json",
              ".prd_plugin/state/requests.json",
              ".prd_plugin/state/tracking.json",
              "REQ-072"
            ],
            "constraints": {
              "max_input_tokens": 12000,
              "max_output_tokens": 1500,
              "timeout_seconds": 30,
              "require_source_refs": true,
              "no_project_state_writes": true,
              "no_secrets_or_local_session_content": true
            }
          },
          "output_hash": "f61aa7bfac7c2e96e3bf2d3386a95e45d2db52d040f05aff9ea963197eacc3f6",
          "completed_at": "2026-07-15T16:55:59Z"
        },
        {
          "id": "delegated",
          "action": "reporting.delegate",
          "status": "completed",
          "resolved_input_hash": "5bf4dfad88c9958da759cb1561ca5fdd8f3ac9050e938bfde85af5c8d804adc9",
          "started_at": "2026-07-15T16:55:59Z",
          "output": {
            "status": "fallback",
            "action": "main",
            "reason": "disabled"
          },
          "output_hash": "e6085059f197def80ae95add1f328418107bea5436c9bd002530043646a3a95c",
          "completed_at": "2026-07-15T16:55:59Z"
        }
      ],
      "completed_at": "2026-07-15T16:55:59Z"
    },
    {
      "id": "WFR-125",
      "schema_version": "1.0",
      "workflow_id": "session.start",
      "workflow_version": 1,
      "definition_hash": "d0f98da02571e6dd27fec4aed92d3c82af9db75f8b90b997bf665635c7b7f6ca",
      "plan_hash": "b5072615ca3b7e9a3bd85d50d1f069d99ef2a9816b32c03a370745ed7a205536",
      "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
      "inputs": {},
      "idempotency_key": "hook:SessionStart:019f66b6-b2cd-7931-bcdb-805dd46a381c",
      "status": "completed",
      "attempt": 1,
      "created_at": "2026-07-15T16:58:04Z",
      "updated_at": "2026-07-15T16:58:05Z",
      "receipts": [
        {
          "step_id": "config",
          "action": "config.audit",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "3782ec2317c0c8ee7598634310a2804d8aae4735f557498f9d3b8fae7c45e1e5",
          "completed_at": "2026-07-15T16:58:04Z"
        },
        {
          "step_id": "services",
          "action": "services.audit",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "13dcc58bd528f3efa3e6e0fa0853a6eedc376f1f3685fbd4869cbb2b60382ee3",
          "completed_at": "2026-07-15T16:58:04Z"
        },
        {
          "step_id": "state",
          "action": "state.consistency",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "5a1c6e5246defb1b6b6b90ff734db95bece2886b408ab112ed9b8e67222d5568",
          "completed_at": "2026-07-15T16:58:05Z"
        },
        {
          "step_id": "status",
          "action": "state.query",
          "input_hash": "a15231a2142a2a9a85355a8b9cbbccffe01a9c9c2c2fd8c2bc2987cdc481564a",
          "output_hash": "8ba9f7d3cc6705af37de9e3324d1258e21ccacb5ab0b2d7b389ca08885e11187",
          "completed_at": "2026-07-15T16:58:05Z"
        },
        {
          "step_id": "substrate",
          "action": "substrate.preflight",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "a6df426290b4549a59eecaa0519ead9bcc50b7fcb25bd2185ff6047960f19ccb",
          "completed_at": "2026-07-15T16:58:05Z"
        },
        {
          "step_id": "notices",
          "action": "substrate.notices",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "38b904a1cf83df048360fb2480571b749fd98d57e11f1afdffb5a74a78166fea",
          "completed_at": "2026-07-15T16:58:05Z"
        },
        {
          "step_id": "goals",
          "action": "substrate.goals",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "cdfd4de44a28140e686159f34f7b47975954c67e1d1efcef666e985acb136ed8",
          "completed_at": "2026-07-15T16:58:05Z"
        }
      ],
      "steps": [
        {
          "id": "config",
          "action": "config.audit",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-15T16:58:04Z",
          "output": {
            "status": "ok",
            "summary": {
              "settings": 195,
              "mutable": 186,
              "read_only_or_managed": 9,
              "unclassified": 0,
              "unknown": 0,
              "invalid": 0,
              "missing_using_defaults": 0
            },
            "unclassified_keys": [],
            "unknown_keys": [],
            "invalid_values": [],
            "missing_using_defaults": []
          },
          "output_hash": "3782ec2317c0c8ee7598634310a2804d8aae4735f557498f9d3b8fae7c45e1e5",
          "completed_at": "2026-07-15T16:58:04Z"
        },
        {
          "id": "services",
          "action": "services.audit",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-15T16:58:04Z",
          "output": {
            "status": "ok",
            "summary": {
              "critical": 0,
              "high": 0,
              "medium": 0,
              "low": 0
            },
            "findings": []
          },
          "output_hash": "13dcc58bd528f3efa3e6e0fa0853a6eedc376f1f3685fbd4869cbb2b60382ee3",
          "completed_at": "2026-07-15T16:58:04Z"
        },
        {
          "id": "state",
          "action": "state.consistency",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-15T16:58:04Z",
          "output": {
            "status": "ok",
            "repo_root": "D:\\Projects\\prd-plugin",
            "summary": {
              "errors": 0,
              "warnings": 0,
              "infos": 0
            },
            "findings": []
          },
          "output_hash": "5a1c6e5246defb1b6b6b90ff734db95bece2886b408ab112ed9b8e67222d5568",
          "completed_at": "2026-07-15T16:58:05Z"
        },
        {
          "id": "status",
          "action": "state.query",
          "status": "completed",
          "resolved_input_hash": "a15231a2142a2a9a85355a8b9cbbccffe01a9c9c2c2fd8c2bc2987cdc481564a",
          "started_at": "2026-07-15T16:58:05Z",
          "output": {
            "repo_root": "D:\\Projects\\prd-plugin",
            "autonomy_level": "autonomous",
            "requests_by_status": {
              "deferred": 1,
              "implemented": 80,
              "proposed": 1,
              "rejected": 1
            },
            "active_tracking": [],
            "tracking_branches": [],
            "tracking_branch_counts": {},
            "tracking_branch_errors": [],
            "open_health": [],
            "stale_count": 0,
            "skill_usage": {
              "project-decision-policy": 1,
              "project-request-intake": 1,
              "project-test-driven-implementation": 1,
              "project-verification-before-completion": 1,
              "project-llm-wiki": 1
            },
            "wiki_backfill_pending": false,
            "version_update": null
          },
          "output_hash": "8ba9f7d3cc6705af37de9e3324d1258e21ccacb5ab0b2d7b389ca08885e11187",
          "completed_at": "2026-07-15T16:58:05Z"
        },
        {
          "id": "substrate",
          "action": "substrate.preflight",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-15T16:58:05Z",
          "output": {
            "status": "disabled",
            "services": {
              "status": "ok",
              "summary": {
                "critical": 0,
                "high": 0,
                "medium": 0,
                "low": 0
              },
              "findings": []
            },
            "policy": {
              "configured": {
                "enabled": false,
                "mode": "off",
                "capabilities": [
                  "records",
                  "graph",
                  "events"
                ],
                "contract_version": 2,
                "require_source_refs": true,
                "endpoint": "http://127.0.0.1:47124",
                "manual_url": "http://127.0.0.1:47124/utcp.json",
                "knowledge_browse_url": "http://127.0.0.1:5276",
                "auth_env": "AI_COLLAB_API_KEY",
                "timeout_seconds": 5,
                "max_result_bytes": 1048576,
                "cache_ttl_seconds": 60,
                "fallback": "local",
                "automation": {
                  "discovery_on_session_start": true,
                  "knowledge_recall": true,
                  "memory_recall": true,
                  "context_enrichment": true,
                  "notices_on_session_start": false,
                  "goals_sync": false,
                  "telemetry_on_maintenance": false,
                  "reporting_dispatch": true,
                  "judgment_dispatch": true,
                  "verification_execution": true
                }
              },
              "active": false,
              "effective_mode": "off",
              "effective_capabilities": []
            }
          },
          "output_hash": "a6df426290b4549a59eecaa0519ead9bcc50b7fcb25bd2185ff6047960f19ccb",
          "completed_at": "2026-07-15T16:58:05Z"
        },
        {
          "id": "notices",
          "action": "substrate.notices",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-15T16:58:05Z",
          "output": {
            "status": "disabled"
          },
          "output_hash": "38b904a1cf83df048360fb2480571b749fd98d57e11f1afdffb5a74a78166fea",
          "completed_at": "2026-07-15T16:58:05Z"
        },
        {
          "id": "goals",
          "action": "substrate.goals",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-15T16:58:05Z",
          "output": {
            "status": "disabled",
            "created": 0,
            "observed": 0,
            "results": []
          },
          "output_hash": "cdfd4de44a28140e686159f34f7b47975954c67e1d1efcef666e985acb136ed8",
          "completed_at": "2026-07-15T16:58:05Z"
        }
      ],
      "completed_at": "2026-07-15T16:58:05Z"
    },
    {
      "id": "WFR-126",
      "schema_version": "1.0",
      "workflow_id": "session.stop",
      "workflow_version": 1,
      "definition_hash": "0cef7bb3e28321be8f85375c154955a69310ce297e47de3f3b8dd48f77a2f07d",
      "plan_hash": "a5e1d77ac734217487fc418e29c7163f4e81178e25d171e70cd4c999d527d3e8",
      "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
      "inputs": {},
      "idempotency_key": "hook:Stop:019f66b6-b2cd-7931-bcdb-805dd46a381c",
      "status": "completed",
      "attempt": 1,
      "created_at": "2026-07-15T16:58:18Z",
      "updated_at": "2026-07-15T16:58:19Z",
      "receipts": [
        {
          "step_id": "state",
          "action": "state.consistency",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "5a1c6e5246defb1b6b6b90ff734db95bece2886b408ab112ed9b8e67222d5568",
          "completed_at": "2026-07-15T16:58:19Z"
        },
        {
          "step_id": "goals",
          "action": "substrate.goals",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "cdfd4de44a28140e686159f34f7b47975954c67e1d1efcef666e985acb136ed8",
          "completed_at": "2026-07-15T16:58:19Z"
        },
        {
          "step_id": "staleness",
          "action": "staleness.audit",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "1e81cb0ffd0a4d04626920a203b38d2d23a264cd43e807a85d375d69cae8a658",
          "completed_at": "2026-07-15T16:58:19Z"
        },
        {
          "step_id": "reflections",
          "action": "reflection.list",
          "input_hash": "0172e841ab4c13b3a4061f073f9d68a716ec87a8a5d52fde41823385e0582573",
          "output_hash": "c1b6b635c0bab21120657277f14ef6f839909875f307a3745fa48aee2bd6e449",
          "completed_at": "2026-07-15T16:58:19Z"
        },
        {
          "step_id": "bundle",
          "action": "reporting.bundle",
          "input_hash": "aed8ebb688dc3c085dd978d7c4120572173c3cb87e75919e4a937dcca6ef9457",
          "output_hash": "f61aa7bfac7c2e96e3bf2d3386a95e45d2db52d040f05aff9ea963197eacc3f6",
          "completed_at": "2026-07-15T16:58:19Z"
        },
        {
          "step_id": "delegated",
          "action": "reporting.delegate",
          "input_hash": "5bf4dfad88c9958da759cb1561ca5fdd8f3ac9050e938bfde85af5c8d804adc9",
          "output_hash": "e6085059f197def80ae95add1f328418107bea5436c9bd002530043646a3a95c",
          "completed_at": "2026-07-15T16:58:19Z"
        }
      ],
      "steps": [
        {
          "id": "state",
          "action": "state.consistency",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-15T16:58:18Z",
          "output": {
            "status": "ok",
            "repo_root": "D:\\Projects\\prd-plugin",
            "summary": {
              "errors": 0,
              "warnings": 0,
              "infos": 0
            },
            "findings": []
          },
          "output_hash": "5a1c6e5246defb1b6b6b90ff734db95bece2886b408ab112ed9b8e67222d5568",
          "completed_at": "2026-07-15T16:58:19Z"
        },
        {
          "id": "goals",
          "action": "substrate.goals",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-15T16:58:19Z",
          "output": {
            "status": "disabled",
            "created": 0,
            "observed": 0,
            "results": []
          },
          "output_hash": "cdfd4de44a28140e686159f34f7b47975954c67e1d1efcef666e985acb136ed8",
          "completed_at": "2026-07-15T16:58:19Z"
        },
        {
          "id": "staleness",
          "action": "staleness.audit",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-15T16:58:19Z",
          "output": {
            "status": "ok",
            "repo_root": "D:\\Projects\\prd-plugin",
            "counts": {
              "stale": 0
            },
            "stale": []
          },
          "output_hash": "1e81cb0ffd0a4d04626920a203b38d2d23a264cd43e807a85d375d69cae8a658",
          "completed_at": "2026-07-15T16:58:19Z"
        },
        {
          "id": "reflections",
          "action": "reflection.list",
          "status": "completed",
          "resolved_input_hash": "0172e841ab4c13b3a4061f073f9d68a716ec87a8a5d52fde41823385e0582573",
          "started_at": "2026-07-15T16:58:19Z",
          "output": {
            "enabled": false,
            "on_stop": true,
            "max_questions_per_stop": 5,
            "categories": [
              {
                "id": "behaviour_quality",
                "name": "Behaviour quality",
                "enabled": true,
                "question_count": 3
              },
              {
                "id": "harness_friction",
                "name": "Harness friction",
                "enabled": true,
                "question_count": 2
              }
            ],
            "questions": [
              {
                "id": "RFQ-001",
                "text": "Based on the work you just carried out, would you classify your behaviour as good? Answer yes or no and cite observable evidence.",
                "enabled": true,
                "category_id": "behaviour_quality",
                "category_name": "Behaviour quality",
                "effective_enabled": false
              },
              {
                "id": "RFQ-002",
                "text": "If you answered no, what could you do differently to correct your behaviour?",
                "enabled": true,
                "category_id": "behaviour_quality",
                "category_name": "Behaviour quality",
                "effective_enabled": false
              },
              {
                "id": "RFQ-003",
                "text": "Would another attempt using the identified good behaviours materially improve the outcome? Answer yes or no and state the next corrective action if yes.",
                "enabled": true,
                "category_id": "behaviour_quality",
                "category_name": "Behaviour quality",
                "effective_enabled": false
              },
              {
                "id": "RFQ-004",
                "text": "What harness friction points made this work more difficult?",
                "enabled": true,
                "category_id": "harness_friction",
                "category_name": "Harness friction",
                "effective_enabled": false
              },
              {
                "id": "RFQ-005",
                "text": "What up to three changes would most improve friction in the harness?",
                "enabled": true,
                "category_id": "harness_friction",
                "category_name": "Harness friction",
                "effective_enabled": false
              }
            ]
          },
          "output_hash": "c1b6b635c0bab21120657277f14ef6f839909875f307a3745fa48aee2bd6e449",
          "completed_at": "2026-07-15T16:58:19Z"
        },
        {
          "id": "bundle",
          "action": "reporting.bundle",
          "status": "completed",
          "resolved_input_hash": "aed8ebb688dc3c085dd978d7c4120572173c3cb87e75919e4a937dcca6ef9457",
          "started_at": "2026-07-15T16:58:19Z",
          "output": {
            "contract_version": 1,
            "task": "session_summary",
            "repo": "prd-plugin",
            "policy": {
              "enabled": false,
              "executor": "ai-collab",
              "contract_version": 1,
              "profile": "fast-capable",
              "tasks": [
                "report_summary",
                "session_summary",
                "wiki_synthesis",
                "triage_draft"
              ],
              "fallback": "main",
              "require_source_refs": true,
              "max_input_tokens": 12000,
              "max_output_tokens": 1500,
              "timeout_seconds": 30
            },
            "facts": {
              "requests_by_status": {
                "deferred": 1,
                "implemented": 80,
                "proposed": 1,
                "rejected": 1
              },
              "active_requests": [
                {
                  "id": "REQ-072",
                  "status": "proposed",
                  "severity": "low",
                  "summary": "opencode run-until-done: session.idle is a non-blocking notification, so the stop guard can't force continuation on opencode (currently degrades to a printed reminder, 0.5.95). Investigate whether opencode exposes any vetoable/continuation mechanism (a different event, a permission hook, or a 'continue' API) to enforce run-until-done, or accept the reminder as the permanent ceiling. Low priority — user rarely uses opencode."
                }
              ],
              "active_tracking": [],
              "open_health": [],
              "evidence_count": 105,
              "decision_count": 10
            },
            "findings": [],
            "source_refs": [
              ".prd_plugin/config.json",
              ".prd_plugin/state/decisions.json",
              ".prd_plugin/state/evidence.json",
              ".prd_plugin/state/health.json",
              ".prd_plugin/state/requests.json",
              ".prd_plugin/state/tracking.json",
              "REQ-072"
            ],
            "constraints": {
              "max_input_tokens": 12000,
              "max_output_tokens": 1500,
              "timeout_seconds": 30,
              "require_source_refs": true,
              "no_project_state_writes": true,
              "no_secrets_or_local_session_content": true
            }
          },
          "output_hash": "f61aa7bfac7c2e96e3bf2d3386a95e45d2db52d040f05aff9ea963197eacc3f6",
          "completed_at": "2026-07-15T16:58:19Z"
        },
        {
          "id": "delegated",
          "action": "reporting.delegate",
          "status": "completed",
          "resolved_input_hash": "5bf4dfad88c9958da759cb1561ca5fdd8f3ac9050e938bfde85af5c8d804adc9",
          "started_at": "2026-07-15T16:58:19Z",
          "output": {
            "status": "fallback",
            "action": "main",
            "reason": "disabled"
          },
          "output_hash": "e6085059f197def80ae95add1f328418107bea5436c9bd002530043646a3a95c",
          "completed_at": "2026-07-15T16:58:19Z"
        }
      ],
      "completed_at": "2026-07-15T16:58:19Z"
    },
    {
      "id": "WFR-127",
      "schema_version": "1.0",
      "workflow_id": "session.start",
      "workflow_version": 1,
      "definition_hash": "d0f98da02571e6dd27fec4aed92d3c82af9db75f8b90b997bf665635c7b7f6ca",
      "plan_hash": "b5072615ca3b7e9a3bd85d50d1f069d99ef2a9816b32c03a370745ed7a205536",
      "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
      "inputs": {},
      "idempotency_key": "hook:SessionStart:019f66b7-c19b-7340-b86d-ac405911d47c",
      "status": "completed",
      "attempt": 1,
      "created_at": "2026-07-15T16:59:08Z",
      "updated_at": "2026-07-15T16:59:10Z",
      "receipts": [
        {
          "step_id": "config",
          "action": "config.audit",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "3782ec2317c0c8ee7598634310a2804d8aae4735f557498f9d3b8fae7c45e1e5",
          "completed_at": "2026-07-15T16:59:08Z"
        },
        {
          "step_id": "services",
          "action": "services.audit",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "13dcc58bd528f3efa3e6e0fa0853a6eedc376f1f3685fbd4869cbb2b60382ee3",
          "completed_at": "2026-07-15T16:59:08Z"
        },
        {
          "step_id": "state",
          "action": "state.consistency",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "5a1c6e5246defb1b6b6b90ff734db95bece2886b408ab112ed9b8e67222d5568",
          "completed_at": "2026-07-15T16:59:09Z"
        },
        {
          "step_id": "status",
          "action": "state.query",
          "input_hash": "a15231a2142a2a9a85355a8b9cbbccffe01a9c9c2c2fd8c2bc2987cdc481564a",
          "output_hash": "8ba9f7d3cc6705af37de9e3324d1258e21ccacb5ab0b2d7b389ca08885e11187",
          "completed_at": "2026-07-15T16:59:09Z"
        },
        {
          "step_id": "substrate",
          "action": "substrate.preflight",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "a6df426290b4549a59eecaa0519ead9bcc50b7fcb25bd2185ff6047960f19ccb",
          "completed_at": "2026-07-15T16:59:09Z"
        },
        {
          "step_id": "notices",
          "action": "substrate.notices",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "38b904a1cf83df048360fb2480571b749fd98d57e11f1afdffb5a74a78166fea",
          "completed_at": "2026-07-15T16:59:10Z"
        },
        {
          "step_id": "goals",
          "action": "substrate.goals",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "cdfd4de44a28140e686159f34f7b47975954c67e1d1efcef666e985acb136ed8",
          "completed_at": "2026-07-15T16:59:10Z"
        }
      ],
      "steps": [
        {
          "id": "config",
          "action": "config.audit",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-15T16:59:08Z",
          "output": {
            "status": "ok",
            "summary": {
              "settings": 195,
              "mutable": 186,
              "read_only_or_managed": 9,
              "unclassified": 0,
              "unknown": 0,
              "invalid": 0,
              "missing_using_defaults": 0
            },
            "unclassified_keys": [],
            "unknown_keys": [],
            "invalid_values": [],
            "missing_using_defaults": []
          },
          "output_hash": "3782ec2317c0c8ee7598634310a2804d8aae4735f557498f9d3b8fae7c45e1e5",
          "completed_at": "2026-07-15T16:59:08Z"
        },
        {
          "id": "services",
          "action": "services.audit",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-15T16:59:08Z",
          "output": {
            "status": "ok",
            "summary": {
              "critical": 0,
              "high": 0,
              "medium": 0,
              "low": 0
            },
            "findings": []
          },
          "output_hash": "13dcc58bd528f3efa3e6e0fa0853a6eedc376f1f3685fbd4869cbb2b60382ee3",
          "completed_at": "2026-07-15T16:59:08Z"
        },
        {
          "id": "state",
          "action": "state.consistency",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-15T16:59:08Z",
          "output": {
            "status": "ok",
            "repo_root": "D:\\Projects\\prd-plugin",
            "summary": {
              "errors": 0,
              "warnings": 0,
              "infos": 0
            },
            "findings": []
          },
          "output_hash": "5a1c6e5246defb1b6b6b90ff734db95bece2886b408ab112ed9b8e67222d5568",
          "completed_at": "2026-07-15T16:59:09Z"
        },
        {
          "id": "status",
          "action": "state.query",
          "status": "completed",
          "resolved_input_hash": "a15231a2142a2a9a85355a8b9cbbccffe01a9c9c2c2fd8c2bc2987cdc481564a",
          "started_at": "2026-07-15T16:59:09Z",
          "output": {
            "repo_root": "D:\\Projects\\prd-plugin",
            "autonomy_level": "autonomous",
            "requests_by_status": {
              "deferred": 1,
              "implemented": 80,
              "proposed": 1,
              "rejected": 1
            },
            "active_tracking": [],
            "tracking_branches": [],
            "tracking_branch_counts": {},
            "tracking_branch_errors": [],
            "open_health": [],
            "stale_count": 0,
            "skill_usage": {
              "project-decision-policy": 1,
              "project-request-intake": 1,
              "project-test-driven-implementation": 1,
              "project-verification-before-completion": 1,
              "project-llm-wiki": 1
            },
            "wiki_backfill_pending": false,
            "version_update": null
          },
          "output_hash": "8ba9f7d3cc6705af37de9e3324d1258e21ccacb5ab0b2d7b389ca08885e11187",
          "completed_at": "2026-07-15T16:59:09Z"
        },
        {
          "id": "substrate",
          "action": "substrate.preflight",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-15T16:59:09Z",
          "output": {
            "status": "disabled",
            "services": {
              "status": "ok",
              "summary": {
                "critical": 0,
                "high": 0,
                "medium": 0,
                "low": 0
              },
              "findings": []
            },
            "policy": {
              "configured": {
                "enabled": false,
                "mode": "off",
                "capabilities": [
                  "records",
                  "graph",
                  "events"
                ],
                "contract_version": 2,
                "require_source_refs": true,
                "endpoint": "http://127.0.0.1:47124",
                "manual_url": "http://127.0.0.1:47124/utcp.json",
                "knowledge_browse_url": "http://127.0.0.1:5276",
                "auth_env": "AI_COLLAB_API_KEY",
                "timeout_seconds": 5,
                "max_result_bytes": 1048576,
                "cache_ttl_seconds": 60,
                "fallback": "local",
                "automation": {
                  "discovery_on_session_start": true,
                  "knowledge_recall": true,
                  "memory_recall": true,
                  "context_enrichment": true,
                  "notices_on_session_start": false,
                  "goals_sync": false,
                  "telemetry_on_maintenance": false,
                  "reporting_dispatch": true,
                  "judgment_dispatch": true,
                  "verification_execution": true
                }
              },
              "active": false,
              "effective_mode": "off",
              "effective_capabilities": []
            }
          },
          "output_hash": "a6df426290b4549a59eecaa0519ead9bcc50b7fcb25bd2185ff6047960f19ccb",
          "completed_at": "2026-07-15T16:59:09Z"
        },
        {
          "id": "notices",
          "action": "substrate.notices",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-15T16:59:09Z",
          "output": {
            "status": "disabled"
          },
          "output_hash": "38b904a1cf83df048360fb2480571b749fd98d57e11f1afdffb5a74a78166fea",
          "completed_at": "2026-07-15T16:59:10Z"
        },
        {
          "id": "goals",
          "action": "substrate.goals",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-15T16:59:10Z",
          "output": {
            "status": "disabled",
            "created": 0,
            "observed": 0,
            "results": []
          },
          "output_hash": "cdfd4de44a28140e686159f34f7b47975954c67e1d1efcef666e985acb136ed8",
          "completed_at": "2026-07-15T16:59:10Z"
        }
      ],
      "completed_at": "2026-07-15T16:59:10Z"
    },
    {
      "id": "WFR-128",
      "schema_version": "1.0",
      "workflow_id": "session.stop",
      "workflow_version": 1,
      "definition_hash": "0cef7bb3e28321be8f85375c154955a69310ce297e47de3f3b8dd48f77a2f07d",
      "plan_hash": "a5e1d77ac734217487fc418e29c7163f4e81178e25d171e70cd4c999d527d3e8",
      "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
      "inputs": {},
      "idempotency_key": "hook:Stop:019f66b7-c19b-7340-b86d-ac405911d47c",
      "status": "completed",
      "attempt": 1,
      "created_at": "2026-07-15T16:59:12Z",
      "updated_at": "2026-07-15T16:59:13Z",
      "receipts": [
        {
          "step_id": "state",
          "action": "state.consistency",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "5a1c6e5246defb1b6b6b90ff734db95bece2886b408ab112ed9b8e67222d5568",
          "completed_at": "2026-07-15T16:59:13Z"
        },
        {
          "step_id": "goals",
          "action": "substrate.goals",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "cdfd4de44a28140e686159f34f7b47975954c67e1d1efcef666e985acb136ed8",
          "completed_at": "2026-07-15T16:59:13Z"
        },
        {
          "step_id": "staleness",
          "action": "staleness.audit",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "1e81cb0ffd0a4d04626920a203b38d2d23a264cd43e807a85d375d69cae8a658",
          "completed_at": "2026-07-15T16:59:13Z"
        },
        {
          "step_id": "reflections",
          "action": "reflection.list",
          "input_hash": "0172e841ab4c13b3a4061f073f9d68a716ec87a8a5d52fde41823385e0582573",
          "output_hash": "c1b6b635c0bab21120657277f14ef6f839909875f307a3745fa48aee2bd6e449",
          "completed_at": "2026-07-15T16:59:13Z"
        },
        {
          "step_id": "bundle",
          "action": "reporting.bundle",
          "input_hash": "aed8ebb688dc3c085dd978d7c4120572173c3cb87e75919e4a937dcca6ef9457",
          "output_hash": "f61aa7bfac7c2e96e3bf2d3386a95e45d2db52d040f05aff9ea963197eacc3f6",
          "completed_at": "2026-07-15T16:59:13Z"
        },
        {
          "step_id": "delegated",
          "action": "reporting.delegate",
          "input_hash": "5bf4dfad88c9958da759cb1561ca5fdd8f3ac9050e938bfde85af5c8d804adc9",
          "output_hash": "e6085059f197def80ae95add1f328418107bea5436c9bd002530043646a3a95c",
          "completed_at": "2026-07-15T16:59:13Z"
        }
      ],
      "steps": [
        {
          "id": "state",
          "action": "state.consistency",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-15T16:59:12Z",
          "output": {
            "status": "ok",
            "repo_root": "D:\\Projects\\prd-plugin",
            "summary": {
              "errors": 0,
              "warnings": 0,
              "infos": 0
            },
            "findings": []
          },
          "output_hash": "5a1c6e5246defb1b6b6b90ff734db95bece2886b408ab112ed9b8e67222d5568",
          "completed_at": "2026-07-15T16:59:13Z"
        },
        {
          "id": "goals",
          "action": "substrate.goals",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-15T16:59:13Z",
          "output": {
            "status": "disabled",
            "created": 0,
            "observed": 0,
            "results": []
          },
          "output_hash": "cdfd4de44a28140e686159f34f7b47975954c67e1d1efcef666e985acb136ed8",
          "completed_at": "2026-07-15T16:59:13Z"
        },
        {
          "id": "staleness",
          "action": "staleness.audit",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-15T16:59:13Z",
          "output": {
            "status": "ok",
            "repo_root": "D:\\Projects\\prd-plugin",
            "counts": {
              "stale": 0
            },
            "stale": []
          },
          "output_hash": "1e81cb0ffd0a4d04626920a203b38d2d23a264cd43e807a85d375d69cae8a658",
          "completed_at": "2026-07-15T16:59:13Z"
        },
        {
          "id": "reflections",
          "action": "reflection.list",
          "status": "completed",
          "resolved_input_hash": "0172e841ab4c13b3a4061f073f9d68a716ec87a8a5d52fde41823385e0582573",
          "started_at": "2026-07-15T16:59:13Z",
          "output": {
            "enabled": false,
            "on_stop": true,
            "max_questions_per_stop": 5,
            "categories": [
              {
                "id": "behaviour_quality",
                "name": "Behaviour quality",
                "enabled": true,
                "question_count": 3
              },
              {
                "id": "harness_friction",
                "name": "Harness friction",
                "enabled": true,
                "question_count": 2
              }
            ],
            "questions": [
              {
                "id": "RFQ-001",
                "text": "Based on the work you just carried out, would you classify your behaviour as good? Answer yes or no and cite observable evidence.",
                "enabled": true,
                "category_id": "behaviour_quality",
                "category_name": "Behaviour quality",
                "effective_enabled": false
              },
              {
                "id": "RFQ-002",
                "text": "If you answered no, what could you do differently to correct your behaviour?",
                "enabled": true,
                "category_id": "behaviour_quality",
                "category_name": "Behaviour quality",
                "effective_enabled": false
              },
              {
                "id": "RFQ-003",
                "text": "Would another attempt using the identified good behaviours materially improve the outcome? Answer yes or no and state the next corrective action if yes.",
                "enabled": true,
                "category_id": "behaviour_quality",
                "category_name": "Behaviour quality",
                "effective_enabled": false
              },
              {
                "id": "RFQ-004",
                "text": "What harness friction points made this work more difficult?",
                "enabled": true,
                "category_id": "harness_friction",
                "category_name": "Harness friction",
                "effective_enabled": false
              },
              {
                "id": "RFQ-005",
                "text": "What up to three changes would most improve friction in the harness?",
                "enabled": true,
                "category_id": "harness_friction",
                "category_name": "Harness friction",
                "effective_enabled": false
              }
            ]
          },
          "output_hash": "c1b6b635c0bab21120657277f14ef6f839909875f307a3745fa48aee2bd6e449",
          "completed_at": "2026-07-15T16:59:13Z"
        },
        {
          "id": "bundle",
          "action": "reporting.bundle",
          "status": "completed",
          "resolved_input_hash": "aed8ebb688dc3c085dd978d7c4120572173c3cb87e75919e4a937dcca6ef9457",
          "started_at": "2026-07-15T16:59:13Z",
          "output": {
            "contract_version": 1,
            "task": "session_summary",
            "repo": "prd-plugin",
            "policy": {
              "enabled": false,
              "executor": "ai-collab",
              "contract_version": 1,
              "profile": "fast-capable",
              "tasks": [
                "report_summary",
                "session_summary",
                "wiki_synthesis",
                "triage_draft"
              ],
              "fallback": "main",
              "require_source_refs": true,
              "max_input_tokens": 12000,
              "max_output_tokens": 1500,
              "timeout_seconds": 30
            },
            "facts": {
              "requests_by_status": {
                "deferred": 1,
                "implemented": 80,
                "proposed": 1,
                "rejected": 1
              },
              "active_requests": [
                {
                  "id": "REQ-072",
                  "status": "proposed",
                  "severity": "low",
                  "summary": "opencode run-until-done: session.idle is a non-blocking notification, so the stop guard can't force continuation on opencode (currently degrades to a printed reminder, 0.5.95). Investigate whether opencode exposes any vetoable/continuation mechanism (a different event, a permission hook, or a 'continue' API) to enforce run-until-done, or accept the reminder as the permanent ceiling. Low priority — user rarely uses opencode."
                }
              ],
              "active_tracking": [],
              "open_health": [],
              "evidence_count": 105,
              "decision_count": 10
            },
            "findings": [],
            "source_refs": [
              ".prd_plugin/config.json",
              ".prd_plugin/state/decisions.json",
              ".prd_plugin/state/evidence.json",
              ".prd_plugin/state/health.json",
              ".prd_plugin/state/requests.json",
              ".prd_plugin/state/tracking.json",
              "REQ-072"
            ],
            "constraints": {
              "max_input_tokens": 12000,
              "max_output_tokens": 1500,
              "timeout_seconds": 30,
              "require_source_refs": true,
              "no_project_state_writes": true,
              "no_secrets_or_local_session_content": true
            }
          },
          "output_hash": "f61aa7bfac7c2e96e3bf2d3386a95e45d2db52d040f05aff9ea963197eacc3f6",
          "completed_at": "2026-07-15T16:59:13Z"
        },
        {
          "id": "delegated",
          "action": "reporting.delegate",
          "status": "completed",
          "resolved_input_hash": "5bf4dfad88c9958da759cb1561ca5fdd8f3ac9050e938bfde85af5c8d804adc9",
          "started_at": "2026-07-15T16:59:13Z",
          "output": {
            "status": "fallback",
            "action": "main",
            "reason": "disabled"
          },
          "output_hash": "e6085059f197def80ae95add1f328418107bea5436c9bd002530043646a3a95c",
          "completed_at": "2026-07-15T16:59:13Z"
        }
      ],
      "completed_at": "2026-07-15T16:59:13Z"
    },
    {
      "id": "WFR-129",
      "schema_version": "1.0",
      "workflow_id": "session.start",
      "workflow_version": 1,
      "definition_hash": "d0f98da02571e6dd27fec4aed92d3c82af9db75f8b90b997bf665635c7b7f6ca",
      "plan_hash": "b5072615ca3b7e9a3bd85d50d1f069d99ef2a9816b32c03a370745ed7a205536",
      "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
      "inputs": {},
      "idempotency_key": "hook:SessionStart:019f66b8-eb55-73a1-b977-2fd77f4e3b31",
      "status": "completed",
      "attempt": 1,
      "created_at": "2026-07-15T17:00:24Z",
      "updated_at": "2026-07-15T17:00:26Z",
      "receipts": [
        {
          "step_id": "config",
          "action": "config.audit",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "3782ec2317c0c8ee7598634310a2804d8aae4735f557498f9d3b8fae7c45e1e5",
          "completed_at": "2026-07-15T17:00:24Z"
        },
        {
          "step_id": "services",
          "action": "services.audit",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "13dcc58bd528f3efa3e6e0fa0853a6eedc376f1f3685fbd4869cbb2b60382ee3",
          "completed_at": "2026-07-15T17:00:24Z"
        },
        {
          "step_id": "state",
          "action": "state.consistency",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "5a1c6e5246defb1b6b6b90ff734db95bece2886b408ab112ed9b8e67222d5568",
          "completed_at": "2026-07-15T17:00:25Z"
        },
        {
          "step_id": "status",
          "action": "state.query",
          "input_hash": "a15231a2142a2a9a85355a8b9cbbccffe01a9c9c2c2fd8c2bc2987cdc481564a",
          "output_hash": "8ba9f7d3cc6705af37de9e3324d1258e21ccacb5ab0b2d7b389ca08885e11187",
          "completed_at": "2026-07-15T17:00:25Z"
        },
        {
          "step_id": "substrate",
          "action": "substrate.preflight",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "a6df426290b4549a59eecaa0519ead9bcc50b7fcb25bd2185ff6047960f19ccb",
          "completed_at": "2026-07-15T17:00:25Z"
        },
        {
          "step_id": "notices",
          "action": "substrate.notices",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "38b904a1cf83df048360fb2480571b749fd98d57e11f1afdffb5a74a78166fea",
          "completed_at": "2026-07-15T17:00:26Z"
        },
        {
          "step_id": "goals",
          "action": "substrate.goals",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "cdfd4de44a28140e686159f34f7b47975954c67e1d1efcef666e985acb136ed8",
          "completed_at": "2026-07-15T17:00:26Z"
        }
      ],
      "steps": [
        {
          "id": "config",
          "action": "config.audit",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-15T17:00:24Z",
          "output": {
            "status": "ok",
            "summary": {
              "settings": 195,
              "mutable": 186,
              "read_only_or_managed": 9,
              "unclassified": 0,
              "unknown": 0,
              "invalid": 0,
              "missing_using_defaults": 0
            },
            "unclassified_keys": [],
            "unknown_keys": [],
            "invalid_values": [],
            "missing_using_defaults": []
          },
          "output_hash": "3782ec2317c0c8ee7598634310a2804d8aae4735f557498f9d3b8fae7c45e1e5",
          "completed_at": "2026-07-15T17:00:24Z"
        },
        {
          "id": "services",
          "action": "services.audit",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-15T17:00:24Z",
          "output": {
            "status": "ok",
            "summary": {
              "critical": 0,
              "high": 0,
              "medium": 0,
              "low": 0
            },
            "findings": []
          },
          "output_hash": "13dcc58bd528f3efa3e6e0fa0853a6eedc376f1f3685fbd4869cbb2b60382ee3",
          "completed_at": "2026-07-15T17:00:24Z"
        },
        {
          "id": "state",
          "action": "state.consistency",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-15T17:00:25Z",
          "output": {
            "status": "ok",
            "repo_root": "D:\\Projects\\prd-plugin",
            "summary": {
              "errors": 0,
              "warnings": 0,
              "infos": 0
            },
            "findings": []
          },
          "output_hash": "5a1c6e5246defb1b6b6b90ff734db95bece2886b408ab112ed9b8e67222d5568",
          "completed_at": "2026-07-15T17:00:25Z"
        },
        {
          "id": "status",
          "action": "state.query",
          "status": "completed",
          "resolved_input_hash": "a15231a2142a2a9a85355a8b9cbbccffe01a9c9c2c2fd8c2bc2987cdc481564a",
          "started_at": "2026-07-15T17:00:25Z",
          "output": {
            "repo_root": "D:\\Projects\\prd-plugin",
            "autonomy_level": "autonomous",
            "requests_by_status": {
              "deferred": 1,
              "implemented": 80,
              "proposed": 1,
              "rejected": 1
            },
            "active_tracking": [],
            "tracking_branches": [],
            "tracking_branch_counts": {},
            "tracking_branch_errors": [],
            "open_health": [],
            "stale_count": 0,
            "skill_usage": {
              "project-decision-policy": 1,
              "project-request-intake": 1,
              "project-test-driven-implementation": 1,
              "project-verification-before-completion": 1,
              "project-llm-wiki": 1
            },
            "wiki_backfill_pending": false,
            "version_update": null
          },
          "output_hash": "8ba9f7d3cc6705af37de9e3324d1258e21ccacb5ab0b2d7b389ca08885e11187",
          "completed_at": "2026-07-15T17:00:25Z"
        },
        {
          "id": "substrate",
          "action": "substrate.preflight",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-15T17:00:25Z",
          "output": {
            "status": "disabled",
            "services": {
              "status": "ok",
              "summary": {
                "critical": 0,
                "high": 0,
                "medium": 0,
                "low": 0
              },
              "findings": []
            },
            "policy": {
              "configured": {
                "enabled": false,
                "mode": "off",
                "capabilities": [
                  "records",
                  "graph",
                  "events"
                ],
                "contract_version": 2,
                "require_source_refs": true,
                "endpoint": "http://127.0.0.1:47124",
                "manual_url": "http://127.0.0.1:47124/utcp.json",
                "knowledge_browse_url": "http://127.0.0.1:5276",
                "auth_env": "AI_COLLAB_API_KEY",
                "timeout_seconds": 5,
                "max_result_bytes": 1048576,
                "cache_ttl_seconds": 60,
                "fallback": "local",
                "automation": {
                  "discovery_on_session_start": true,
                  "knowledge_recall": true,
                  "memory_recall": true,
                  "context_enrichment": true,
                  "notices_on_session_start": false,
                  "goals_sync": false,
                  "telemetry_on_maintenance": false,
                  "reporting_dispatch": true,
                  "judgment_dispatch": true,
                  "verification_execution": true
                }
              },
              "active": false,
              "effective_mode": "off",
              "effective_capabilities": []
            }
          },
          "output_hash": "a6df426290b4549a59eecaa0519ead9bcc50b7fcb25bd2185ff6047960f19ccb",
          "completed_at": "2026-07-15T17:00:25Z"
        },
        {
          "id": "notices",
          "action": "substrate.notices",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-15T17:00:26Z",
          "output": {
            "status": "disabled"
          },
          "output_hash": "38b904a1cf83df048360fb2480571b749fd98d57e11f1afdffb5a74a78166fea",
          "completed_at": "2026-07-15T17:00:26Z"
        },
        {
          "id": "goals",
          "action": "substrate.goals",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-15T17:00:26Z",
          "output": {
            "status": "disabled",
            "created": 0,
            "observed": 0,
            "results": []
          },
          "output_hash": "cdfd4de44a28140e686159f34f7b47975954c67e1d1efcef666e985acb136ed8",
          "completed_at": "2026-07-15T17:00:26Z"
        }
      ],
      "completed_at": "2026-07-15T17:00:26Z"
    },
    {
      "id": "WFR-130",
      "schema_version": "1.0",
      "workflow_id": "session.stop",
      "workflow_version": 1,
      "definition_hash": "0cef7bb3e28321be8f85375c154955a69310ce297e47de3f3b8dd48f77a2f07d",
      "plan_hash": "a5e1d77ac734217487fc418e29c7163f4e81178e25d171e70cd4c999d527d3e8",
      "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
      "inputs": {},
      "idempotency_key": "hook:Stop:019f66b8-eb55-73a1-b977-2fd77f4e3b31",
      "status": "completed",
      "attempt": 1,
      "created_at": "2026-07-15T17:00:28Z",
      "updated_at": "2026-07-15T17:00:29Z",
      "receipts": [
        {
          "step_id": "state",
          "action": "state.consistency",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "5a1c6e5246defb1b6b6b90ff734db95bece2886b408ab112ed9b8e67222d5568",
          "completed_at": "2026-07-15T17:00:29Z"
        },
        {
          "step_id": "goals",
          "action": "substrate.goals",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "cdfd4de44a28140e686159f34f7b47975954c67e1d1efcef666e985acb136ed8",
          "completed_at": "2026-07-15T17:00:29Z"
        },
        {
          "step_id": "staleness",
          "action": "staleness.audit",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "1e81cb0ffd0a4d04626920a203b38d2d23a264cd43e807a85d375d69cae8a658",
          "completed_at": "2026-07-15T17:00:29Z"
        },
        {
          "step_id": "reflections",
          "action": "reflection.list",
          "input_hash": "0172e841ab4c13b3a4061f073f9d68a716ec87a8a5d52fde41823385e0582573",
          "output_hash": "c1b6b635c0bab21120657277f14ef6f839909875f307a3745fa48aee2bd6e449",
          "completed_at": "2026-07-15T17:00:29Z"
        },
        {
          "step_id": "bundle",
          "action": "reporting.bundle",
          "input_hash": "aed8ebb688dc3c085dd978d7c4120572173c3cb87e75919e4a937dcca6ef9457",
          "output_hash": "f61aa7bfac7c2e96e3bf2d3386a95e45d2db52d040f05aff9ea963197eacc3f6",
          "completed_at": "2026-07-15T17:00:29Z"
        },
        {
          "step_id": "delegated",
          "action": "reporting.delegate",
          "input_hash": "5bf4dfad88c9958da759cb1561ca5fdd8f3ac9050e938bfde85af5c8d804adc9",
          "output_hash": "e6085059f197def80ae95add1f328418107bea5436c9bd002530043646a3a95c",
          "completed_at": "2026-07-15T17:00:29Z"
        }
      ],
      "steps": [
        {
          "id": "state",
          "action": "state.consistency",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-15T17:00:28Z",
          "output": {
            "status": "ok",
            "repo_root": "D:\\Projects\\prd-plugin",
            "summary": {
              "errors": 0,
              "warnings": 0,
              "infos": 0
            },
            "findings": []
          },
          "output_hash": "5a1c6e5246defb1b6b6b90ff734db95bece2886b408ab112ed9b8e67222d5568",
          "completed_at": "2026-07-15T17:00:29Z"
        },
        {
          "id": "goals",
          "action": "substrate.goals",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-15T17:00:29Z",
          "output": {
            "status": "disabled",
            "created": 0,
            "observed": 0,
            "results": []
          },
          "output_hash": "cdfd4de44a28140e686159f34f7b47975954c67e1d1efcef666e985acb136ed8",
          "completed_at": "2026-07-15T17:00:29Z"
        },
        {
          "id": "staleness",
          "action": "staleness.audit",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-15T17:00:29Z",
          "output": {
            "status": "ok",
            "repo_root": "D:\\Projects\\prd-plugin",
            "counts": {
              "stale": 0
            },
            "stale": []
          },
          "output_hash": "1e81cb0ffd0a4d04626920a203b38d2d23a264cd43e807a85d375d69cae8a658",
          "completed_at": "2026-07-15T17:00:29Z"
        },
        {
          "id": "reflections",
          "action": "reflection.list",
          "status": "completed",
          "resolved_input_hash": "0172e841ab4c13b3a4061f073f9d68a716ec87a8a5d52fde41823385e0582573",
          "started_at": "2026-07-15T17:00:29Z",
          "output": {
            "enabled": false,
            "on_stop": true,
            "max_questions_per_stop": 5,
            "categories": [
              {
                "id": "behaviour_quality",
                "name": "Behaviour quality",
                "enabled": true,
                "question_count": 3
              },
              {
                "id": "harness_friction",
                "name": "Harness friction",
                "enabled": true,
                "question_count": 2
              }
            ],
            "questions": [
              {
                "id": "RFQ-001",
                "text": "Based on the work you just carried out, would you classify your behaviour as good? Answer yes or no and cite observable evidence.",
                "enabled": true,
                "category_id": "behaviour_quality",
                "category_name": "Behaviour quality",
                "effective_enabled": false
              },
              {
                "id": "RFQ-002",
                "text": "If you answered no, what could you do differently to correct your behaviour?",
                "enabled": true,
                "category_id": "behaviour_quality",
                "category_name": "Behaviour quality",
                "effective_enabled": false
              },
              {
                "id": "RFQ-003",
                "text": "Would another attempt using the identified good behaviours materially improve the outcome? Answer yes or no and state the next corrective action if yes.",
                "enabled": true,
                "category_id": "behaviour_quality",
                "category_name": "Behaviour quality",
                "effective_enabled": false
              },
              {
                "id": "RFQ-004",
                "text": "What harness friction points made this work more difficult?",
                "enabled": true,
                "category_id": "harness_friction",
                "category_name": "Harness friction",
                "effective_enabled": false
              },
              {
                "id": "RFQ-005",
                "text": "What up to three changes would most improve friction in the harness?",
                "enabled": true,
                "category_id": "harness_friction",
                "category_name": "Harness friction",
                "effective_enabled": false
              }
            ]
          },
          "output_hash": "c1b6b635c0bab21120657277f14ef6f839909875f307a3745fa48aee2bd6e449",
          "completed_at": "2026-07-15T17:00:29Z"
        },
        {
          "id": "bundle",
          "action": "reporting.bundle",
          "status": "completed",
          "resolved_input_hash": "aed8ebb688dc3c085dd978d7c4120572173c3cb87e75919e4a937dcca6ef9457",
          "started_at": "2026-07-15T17:00:29Z",
          "output": {
            "contract_version": 1,
            "task": "session_summary",
            "repo": "prd-plugin",
            "policy": {
              "enabled": false,
              "executor": "ai-collab",
              "contract_version": 1,
              "profile": "fast-capable",
              "tasks": [
                "report_summary",
                "session_summary",
                "wiki_synthesis",
                "triage_draft"
              ],
              "fallback": "main",
              "require_source_refs": true,
              "max_input_tokens": 12000,
              "max_output_tokens": 1500,
              "timeout_seconds": 30
            },
            "facts": {
              "requests_by_status": {
                "deferred": 1,
                "implemented": 80,
                "proposed": 1,
                "rejected": 1
              },
              "active_requests": [
                {
                  "id": "REQ-072",
                  "status": "proposed",
                  "severity": "low",
                  "summary": "opencode run-until-done: session.idle is a non-blocking notification, so the stop guard can't force continuation on opencode (currently degrades to a printed reminder, 0.5.95). Investigate whether opencode exposes any vetoable/continuation mechanism (a different event, a permission hook, or a 'continue' API) to enforce run-until-done, or accept the reminder as the permanent ceiling. Low priority — user rarely uses opencode."
                }
              ],
              "active_tracking": [],
              "open_health": [],
              "evidence_count": 105,
              "decision_count": 10
            },
            "findings": [],
            "source_refs": [
              ".prd_plugin/config.json",
              ".prd_plugin/state/decisions.json",
              ".prd_plugin/state/evidence.json",
              ".prd_plugin/state/health.json",
              ".prd_plugin/state/requests.json",
              ".prd_plugin/state/tracking.json",
              "REQ-072"
            ],
            "constraints": {
              "max_input_tokens": 12000,
              "max_output_tokens": 1500,
              "timeout_seconds": 30,
              "require_source_refs": true,
              "no_project_state_writes": true,
              "no_secrets_or_local_session_content": true
            }
          },
          "output_hash": "f61aa7bfac7c2e96e3bf2d3386a95e45d2db52d040f05aff9ea963197eacc3f6",
          "completed_at": "2026-07-15T17:00:29Z"
        },
        {
          "id": "delegated",
          "action": "reporting.delegate",
          "status": "completed",
          "resolved_input_hash": "5bf4dfad88c9958da759cb1561ca5fdd8f3ac9050e938bfde85af5c8d804adc9",
          "started_at": "2026-07-15T17:00:29Z",
          "output": {
            "status": "fallback",
            "action": "main",
            "reason": "disabled"
          },
          "output_hash": "e6085059f197def80ae95add1f328418107bea5436c9bd002530043646a3a95c",
          "completed_at": "2026-07-15T17:00:29Z"
        }
      ],
      "completed_at": "2026-07-15T17:00:29Z"
    },
    {
      "id": "WFR-131",
      "schema_version": "1.0",
      "workflow_id": "session.start",
      "workflow_version": 1,
      "definition_hash": "d0f98da02571e6dd27fec4aed92d3c82af9db75f8b90b997bf665635c7b7f6ca",
      "plan_hash": "b5072615ca3b7e9a3bd85d50d1f069d99ef2a9816b32c03a370745ed7a205536",
      "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
      "inputs": {},
      "idempotency_key": "hook:SessionStart:019f66ba-947b-7650-a165-ff784037064b",
      "status": "completed",
      "attempt": 1,
      "created_at": "2026-07-15T17:02:13Z",
      "updated_at": "2026-07-15T17:02:14Z",
      "receipts": [
        {
          "step_id": "config",
          "action": "config.audit",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "3782ec2317c0c8ee7598634310a2804d8aae4735f557498f9d3b8fae7c45e1e5",
          "completed_at": "2026-07-15T17:02:13Z"
        },
        {
          "step_id": "services",
          "action": "services.audit",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "13dcc58bd528f3efa3e6e0fa0853a6eedc376f1f3685fbd4869cbb2b60382ee3",
          "completed_at": "2026-07-15T17:02:13Z"
        },
        {
          "step_id": "state",
          "action": "state.consistency",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "5a1c6e5246defb1b6b6b90ff734db95bece2886b408ab112ed9b8e67222d5568",
          "completed_at": "2026-07-15T17:02:14Z"
        },
        {
          "step_id": "status",
          "action": "state.query",
          "input_hash": "a15231a2142a2a9a85355a8b9cbbccffe01a9c9c2c2fd8c2bc2987cdc481564a",
          "output_hash": "8ba9f7d3cc6705af37de9e3324d1258e21ccacb5ab0b2d7b389ca08885e11187",
          "completed_at": "2026-07-15T17:02:14Z"
        },
        {
          "step_id": "substrate",
          "action": "substrate.preflight",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "a6df426290b4549a59eecaa0519ead9bcc50b7fcb25bd2185ff6047960f19ccb",
          "completed_at": "2026-07-15T17:02:14Z"
        },
        {
          "step_id": "notices",
          "action": "substrate.notices",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "38b904a1cf83df048360fb2480571b749fd98d57e11f1afdffb5a74a78166fea",
          "completed_at": "2026-07-15T17:02:14Z"
        },
        {
          "step_id": "goals",
          "action": "substrate.goals",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "cdfd4de44a28140e686159f34f7b47975954c67e1d1efcef666e985acb136ed8",
          "completed_at": "2026-07-15T17:02:14Z"
        }
      ],
      "steps": [
        {
          "id": "config",
          "action": "config.audit",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-15T17:02:13Z",
          "output": {
            "status": "ok",
            "summary": {
              "settings": 195,
              "mutable": 186,
              "read_only_or_managed": 9,
              "unclassified": 0,
              "unknown": 0,
              "invalid": 0,
              "missing_using_defaults": 0
            },
            "unclassified_keys": [],
            "unknown_keys": [],
            "invalid_values": [],
            "missing_using_defaults": []
          },
          "output_hash": "3782ec2317c0c8ee7598634310a2804d8aae4735f557498f9d3b8fae7c45e1e5",
          "completed_at": "2026-07-15T17:02:13Z"
        },
        {
          "id": "services",
          "action": "services.audit",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-15T17:02:13Z",
          "output": {
            "status": "ok",
            "summary": {
              "critical": 0,
              "high": 0,
              "medium": 0,
              "low": 0
            },
            "findings": []
          },
          "output_hash": "13dcc58bd528f3efa3e6e0fa0853a6eedc376f1f3685fbd4869cbb2b60382ee3",
          "completed_at": "2026-07-15T17:02:13Z"
        },
        {
          "id": "state",
          "action": "state.consistency",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-15T17:02:13Z",
          "output": {
            "status": "ok",
            "repo_root": "D:\\Projects\\prd-plugin",
            "summary": {
              "errors": 0,
              "warnings": 0,
              "infos": 0
            },
            "findings": []
          },
          "output_hash": "5a1c6e5246defb1b6b6b90ff734db95bece2886b408ab112ed9b8e67222d5568",
          "completed_at": "2026-07-15T17:02:14Z"
        },
        {
          "id": "status",
          "action": "state.query",
          "status": "completed",
          "resolved_input_hash": "a15231a2142a2a9a85355a8b9cbbccffe01a9c9c2c2fd8c2bc2987cdc481564a",
          "started_at": "2026-07-15T17:02:14Z",
          "output": {
            "repo_root": "D:\\Projects\\prd-plugin",
            "autonomy_level": "autonomous",
            "requests_by_status": {
              "deferred": 1,
              "implemented": 80,
              "proposed": 1,
              "rejected": 1
            },
            "active_tracking": [],
            "tracking_branches": [],
            "tracking_branch_counts": {},
            "tracking_branch_errors": [],
            "open_health": [],
            "stale_count": 0,
            "skill_usage": {
              "project-decision-policy": 1,
              "project-request-intake": 1,
              "project-test-driven-implementation": 1,
              "project-verification-before-completion": 1,
              "project-llm-wiki": 1
            },
            "wiki_backfill_pending": false,
            "version_update": null
          },
          "output_hash": "8ba9f7d3cc6705af37de9e3324d1258e21ccacb5ab0b2d7b389ca08885e11187",
          "completed_at": "2026-07-15T17:02:14Z"
        },
        {
          "id": "substrate",
          "action": "substrate.preflight",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-15T17:02:14Z",
          "output": {
            "status": "disabled",
            "services": {
              "status": "ok",
              "summary": {
                "critical": 0,
                "high": 0,
                "medium": 0,
                "low": 0
              },
              "findings": []
            },
            "policy": {
              "configured": {
                "enabled": false,
                "mode": "off",
                "capabilities": [
                  "records",
                  "graph",
                  "events"
                ],
                "contract_version": 2,
                "require_source_refs": true,
                "endpoint": "http://127.0.0.1:47124",
                "manual_url": "http://127.0.0.1:47124/utcp.json",
                "knowledge_browse_url": "http://127.0.0.1:5276",
                "auth_env": "AI_COLLAB_API_KEY",
                "timeout_seconds": 5,
                "max_result_bytes": 1048576,
                "cache_ttl_seconds": 60,
                "fallback": "local",
                "automation": {
                  "discovery_on_session_start": true,
                  "knowledge_recall": true,
                  "memory_recall": true,
                  "context_enrichment": true,
                  "notices_on_session_start": false,
                  "goals_sync": false,
                  "telemetry_on_maintenance": false,
                  "reporting_dispatch": true,
                  "judgment_dispatch": true,
                  "verification_execution": true
                }
              },
              "active": false,
              "effective_mode": "off",
              "effective_capabilities": []
            }
          },
          "output_hash": "a6df426290b4549a59eecaa0519ead9bcc50b7fcb25bd2185ff6047960f19ccb",
          "completed_at": "2026-07-15T17:02:14Z"
        },
        {
          "id": "notices",
          "action": "substrate.notices",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-15T17:02:14Z",
          "output": {
            "status": "disabled"
          },
          "output_hash": "38b904a1cf83df048360fb2480571b749fd98d57e11f1afdffb5a74a78166fea",
          "completed_at": "2026-07-15T17:02:14Z"
        },
        {
          "id": "goals",
          "action": "substrate.goals",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-15T17:02:14Z",
          "output": {
            "status": "disabled",
            "created": 0,
            "observed": 0,
            "results": []
          },
          "output_hash": "cdfd4de44a28140e686159f34f7b47975954c67e1d1efcef666e985acb136ed8",
          "completed_at": "2026-07-15T17:02:14Z"
        }
      ],
      "completed_at": "2026-07-15T17:02:14Z"
    },
    {
      "id": "WFR-132",
      "schema_version": "1.0",
      "workflow_id": "session.stop",
      "workflow_version": 1,
      "definition_hash": "0cef7bb3e28321be8f85375c154955a69310ce297e47de3f3b8dd48f77a2f07d",
      "plan_hash": "a5e1d77ac734217487fc418e29c7163f4e81178e25d171e70cd4c999d527d3e8",
      "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
      "inputs": {},
      "idempotency_key": "hook:Stop:019f66ba-947b-7650-a165-ff784037064b",
      "status": "completed",
      "attempt": 1,
      "created_at": "2026-07-15T17:02:17Z",
      "updated_at": "2026-07-15T17:02:18Z",
      "receipts": [
        {
          "step_id": "state",
          "action": "state.consistency",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "5a1c6e5246defb1b6b6b90ff734db95bece2886b408ab112ed9b8e67222d5568",
          "completed_at": "2026-07-15T17:02:18Z"
        },
        {
          "step_id": "goals",
          "action": "substrate.goals",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "cdfd4de44a28140e686159f34f7b47975954c67e1d1efcef666e985acb136ed8",
          "completed_at": "2026-07-15T17:02:18Z"
        },
        {
          "step_id": "staleness",
          "action": "staleness.audit",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "1e81cb0ffd0a4d04626920a203b38d2d23a264cd43e807a85d375d69cae8a658",
          "completed_at": "2026-07-15T17:02:18Z"
        },
        {
          "step_id": "reflections",
          "action": "reflection.list",
          "input_hash": "0172e841ab4c13b3a4061f073f9d68a716ec87a8a5d52fde41823385e0582573",
          "output_hash": "c1b6b635c0bab21120657277f14ef6f839909875f307a3745fa48aee2bd6e449",
          "completed_at": "2026-07-15T17:02:18Z"
        },
        {
          "step_id": "bundle",
          "action": "reporting.bundle",
          "input_hash": "aed8ebb688dc3c085dd978d7c4120572173c3cb87e75919e4a937dcca6ef9457",
          "output_hash": "f61aa7bfac7c2e96e3bf2d3386a95e45d2db52d040f05aff9ea963197eacc3f6",
          "completed_at": "2026-07-15T17:02:18Z"
        },
        {
          "step_id": "delegated",
          "action": "reporting.delegate",
          "input_hash": "5bf4dfad88c9958da759cb1561ca5fdd8f3ac9050e938bfde85af5c8d804adc9",
          "output_hash": "e6085059f197def80ae95add1f328418107bea5436c9bd002530043646a3a95c",
          "completed_at": "2026-07-15T17:02:18Z"
        }
      ],
      "steps": [
        {
          "id": "state",
          "action": "state.consistency",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-15T17:02:17Z",
          "output": {
            "status": "ok",
            "repo_root": "D:\\Projects\\prd-plugin",
            "summary": {
              "errors": 0,
              "warnings": 0,
              "infos": 0
            },
            "findings": []
          },
          "output_hash": "5a1c6e5246defb1b6b6b90ff734db95bece2886b408ab112ed9b8e67222d5568",
          "completed_at": "2026-07-15T17:02:18Z"
        },
        {
          "id": "goals",
          "action": "substrate.goals",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-15T17:02:18Z",
          "output": {
            "status": "disabled",
            "created": 0,
            "observed": 0,
            "results": []
          },
          "output_hash": "cdfd4de44a28140e686159f34f7b47975954c67e1d1efcef666e985acb136ed8",
          "completed_at": "2026-07-15T17:02:18Z"
        },
        {
          "id": "staleness",
          "action": "staleness.audit",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-15T17:02:18Z",
          "output": {
            "status": "ok",
            "repo_root": "D:\\Projects\\prd-plugin",
            "counts": {
              "stale": 0
            },
            "stale": []
          },
          "output_hash": "1e81cb0ffd0a4d04626920a203b38d2d23a264cd43e807a85d375d69cae8a658",
          "completed_at": "2026-07-15T17:02:18Z"
        },
        {
          "id": "reflections",
          "action": "reflection.list",
          "status": "completed",
          "resolved_input_hash": "0172e841ab4c13b3a4061f073f9d68a716ec87a8a5d52fde41823385e0582573",
          "started_at": "2026-07-15T17:02:18Z",
          "output": {
            "enabled": false,
            "on_stop": true,
            "max_questions_per_stop": 5,
            "categories": [
              {
                "id": "behaviour_quality",
                "name": "Behaviour quality",
                "enabled": true,
                "question_count": 3
              },
              {
                "id": "harness_friction",
                "name": "Harness friction",
                "enabled": true,
                "question_count": 2
              }
            ],
            "questions": [
              {
                "id": "RFQ-001",
                "text": "Based on the work you just carried out, would you classify your behaviour as good? Answer yes or no and cite observable evidence.",
                "enabled": true,
                "category_id": "behaviour_quality",
                "category_name": "Behaviour quality",
                "effective_enabled": false
              },
              {
                "id": "RFQ-002",
                "text": "If you answered no, what could you do differently to correct your behaviour?",
                "enabled": true,
                "category_id": "behaviour_quality",
                "category_name": "Behaviour quality",
                "effective_enabled": false
              },
              {
                "id": "RFQ-003",
                "text": "Would another attempt using the identified good behaviours materially improve the outcome? Answer yes or no and state the next corrective action if yes.",
                "enabled": true,
                "category_id": "behaviour_quality",
                "category_name": "Behaviour quality",
                "effective_enabled": false
              },
              {
                "id": "RFQ-004",
                "text": "What harness friction points made this work more difficult?",
                "enabled": true,
                "category_id": "harness_friction",
                "category_name": "Harness friction",
                "effective_enabled": false
              },
              {
                "id": "RFQ-005",
                "text": "What up to three changes would most improve friction in the harness?",
                "enabled": true,
                "category_id": "harness_friction",
                "category_name": "Harness friction",
                "effective_enabled": false
              }
            ]
          },
          "output_hash": "c1b6b635c0bab21120657277f14ef6f839909875f307a3745fa48aee2bd6e449",
          "completed_at": "2026-07-15T17:02:18Z"
        },
        {
          "id": "bundle",
          "action": "reporting.bundle",
          "status": "completed",
          "resolved_input_hash": "aed8ebb688dc3c085dd978d7c4120572173c3cb87e75919e4a937dcca6ef9457",
          "started_at": "2026-07-15T17:02:18Z",
          "output": {
            "contract_version": 1,
            "task": "session_summary",
            "repo": "prd-plugin",
            "policy": {
              "enabled": false,
              "executor": "ai-collab",
              "contract_version": 1,
              "profile": "fast-capable",
              "tasks": [
                "report_summary",
                "session_summary",
                "wiki_synthesis",
                "triage_draft"
              ],
              "fallback": "main",
              "require_source_refs": true,
              "max_input_tokens": 12000,
              "max_output_tokens": 1500,
              "timeout_seconds": 30
            },
            "facts": {
              "requests_by_status": {
                "deferred": 1,
                "implemented": 80,
                "proposed": 1,
                "rejected": 1
              },
              "active_requests": [
                {
                  "id": "REQ-072",
                  "status": "proposed",
                  "severity": "low",
                  "summary": "opencode run-until-done: session.idle is a non-blocking notification, so the stop guard can't force continuation on opencode (currently degrades to a printed reminder, 0.5.95). Investigate whether opencode exposes any vetoable/continuation mechanism (a different event, a permission hook, or a 'continue' API) to enforce run-until-done, or accept the reminder as the permanent ceiling. Low priority — user rarely uses opencode."
                }
              ],
              "active_tracking": [],
              "open_health": [],
              "evidence_count": 105,
              "decision_count": 10
            },
            "findings": [],
            "source_refs": [
              ".prd_plugin/config.json",
              ".prd_plugin/state/decisions.json",
              ".prd_plugin/state/evidence.json",
              ".prd_plugin/state/health.json",
              ".prd_plugin/state/requests.json",
              ".prd_plugin/state/tracking.json",
              "REQ-072"
            ],
            "constraints": {
              "max_input_tokens": 12000,
              "max_output_tokens": 1500,
              "timeout_seconds": 30,
              "require_source_refs": true,
              "no_project_state_writes": true,
              "no_secrets_or_local_session_content": true
            }
          },
          "output_hash": "f61aa7bfac7c2e96e3bf2d3386a95e45d2db52d040f05aff9ea963197eacc3f6",
          "completed_at": "2026-07-15T17:02:18Z"
        },
        {
          "id": "delegated",
          "action": "reporting.delegate",
          "status": "completed",
          "resolved_input_hash": "5bf4dfad88c9958da759cb1561ca5fdd8f3ac9050e938bfde85af5c8d804adc9",
          "started_at": "2026-07-15T17:02:18Z",
          "output": {
            "status": "fallback",
            "action": "main",
            "reason": "disabled"
          },
          "output_hash": "e6085059f197def80ae95add1f328418107bea5436c9bd002530043646a3a95c",
          "completed_at": "2026-07-15T17:02:18Z"
        }
      ],
      "completed_at": "2026-07-15T17:02:18Z"
    },
    {
      "id": "WFR-133",
      "schema_version": "1.0",
      "workflow_id": "session.start",
      "workflow_version": 1,
      "definition_hash": "d0f98da02571e6dd27fec4aed92d3c82af9db75f8b90b997bf665635c7b7f6ca",
      "plan_hash": "b5072615ca3b7e9a3bd85d50d1f069d99ef2a9816b32c03a370745ed7a205536",
      "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
      "inputs": {},
      "idempotency_key": "hook:SessionStart:019f66c6-f51d-7dc3-920d-051033b525e2",
      "status": "completed",
      "attempt": 1,
      "created_at": "2026-07-15T17:15:45Z",
      "updated_at": "2026-07-15T17:15:46Z",
      "receipts": [
        {
          "step_id": "config",
          "action": "config.audit",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "3782ec2317c0c8ee7598634310a2804d8aae4735f557498f9d3b8fae7c45e1e5",
          "completed_at": "2026-07-15T17:15:45Z"
        },
        {
          "step_id": "services",
          "action": "services.audit",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "13dcc58bd528f3efa3e6e0fa0853a6eedc376f1f3685fbd4869cbb2b60382ee3",
          "completed_at": "2026-07-15T17:15:45Z"
        },
        {
          "step_id": "state",
          "action": "state.consistency",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "5a1c6e5246defb1b6b6b90ff734db95bece2886b408ab112ed9b8e67222d5568",
          "completed_at": "2026-07-15T17:15:45Z"
        },
        {
          "step_id": "status",
          "action": "state.query",
          "input_hash": "a15231a2142a2a9a85355a8b9cbbccffe01a9c9c2c2fd8c2bc2987cdc481564a",
          "output_hash": "8ba9f7d3cc6705af37de9e3324d1258e21ccacb5ab0b2d7b389ca08885e11187",
          "completed_at": "2026-07-15T17:15:46Z"
        },
        {
          "step_id": "substrate",
          "action": "substrate.preflight",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "a6df426290b4549a59eecaa0519ead9bcc50b7fcb25bd2185ff6047960f19ccb",
          "completed_at": "2026-07-15T17:15:46Z"
        },
        {
          "step_id": "notices",
          "action": "substrate.notices",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "38b904a1cf83df048360fb2480571b749fd98d57e11f1afdffb5a74a78166fea",
          "completed_at": "2026-07-15T17:15:46Z"
        },
        {
          "step_id": "goals",
          "action": "substrate.goals",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "cdfd4de44a28140e686159f34f7b47975954c67e1d1efcef666e985acb136ed8",
          "completed_at": "2026-07-15T17:15:46Z"
        }
      ],
      "steps": [
        {
          "id": "config",
          "action": "config.audit",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-15T17:15:45Z",
          "output": {
            "status": "ok",
            "summary": {
              "settings": 195,
              "mutable": 186,
              "read_only_or_managed": 9,
              "unclassified": 0,
              "unknown": 0,
              "invalid": 0,
              "missing_using_defaults": 0
            },
            "unclassified_keys": [],
            "unknown_keys": [],
            "invalid_values": [],
            "missing_using_defaults": []
          },
          "output_hash": "3782ec2317c0c8ee7598634310a2804d8aae4735f557498f9d3b8fae7c45e1e5",
          "completed_at": "2026-07-15T17:15:45Z"
        },
        {
          "id": "services",
          "action": "services.audit",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-15T17:15:45Z",
          "output": {
            "status": "ok",
            "summary": {
              "critical": 0,
              "high": 0,
              "medium": 0,
              "low": 0
            },
            "findings": []
          },
          "output_hash": "13dcc58bd528f3efa3e6e0fa0853a6eedc376f1f3685fbd4869cbb2b60382ee3",
          "completed_at": "2026-07-15T17:15:45Z"
        },
        {
          "id": "state",
          "action": "state.consistency",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-15T17:15:45Z",
          "output": {
            "status": "ok",
            "repo_root": "D:\\Projects\\prd-plugin",
            "summary": {
              "errors": 0,
              "warnings": 0,
              "infos": 0
            },
            "findings": []
          },
          "output_hash": "5a1c6e5246defb1b6b6b90ff734db95bece2886b408ab112ed9b8e67222d5568",
          "completed_at": "2026-07-15T17:15:45Z"
        },
        {
          "id": "status",
          "action": "state.query",
          "status": "completed",
          "resolved_input_hash": "a15231a2142a2a9a85355a8b9cbbccffe01a9c9c2c2fd8c2bc2987cdc481564a",
          "started_at": "2026-07-15T17:15:45Z",
          "output": {
            "repo_root": "D:\\Projects\\prd-plugin",
            "autonomy_level": "autonomous",
            "requests_by_status": {
              "deferred": 1,
              "implemented": 80,
              "proposed": 1,
              "rejected": 1
            },
            "active_tracking": [],
            "tracking_branches": [],
            "tracking_branch_counts": {},
            "tracking_branch_errors": [],
            "open_health": [],
            "stale_count": 0,
            "skill_usage": {
              "project-decision-policy": 1,
              "project-request-intake": 1,
              "project-test-driven-implementation": 1,
              "project-verification-before-completion": 1,
              "project-llm-wiki": 1
            },
            "wiki_backfill_pending": false,
            "version_update": null
          },
          "output_hash": "8ba9f7d3cc6705af37de9e3324d1258e21ccacb5ab0b2d7b389ca08885e11187",
          "completed_at": "2026-07-15T17:15:46Z"
        },
        {
          "id": "substrate",
          "action": "substrate.preflight",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-15T17:15:46Z",
          "output": {
            "status": "disabled",
            "services": {
              "status": "ok",
              "summary": {
                "critical": 0,
                "high": 0,
                "medium": 0,
                "low": 0
              },
              "findings": []
            },
            "policy": {
              "configured": {
                "enabled": false,
                "mode": "off",
                "capabilities": [
                  "records",
                  "graph",
                  "events"
                ],
                "contract_version": 2,
                "require_source_refs": true,
                "endpoint": "http://127.0.0.1:47124",
                "manual_url": "http://127.0.0.1:47124/utcp.json",
                "knowledge_browse_url": "http://127.0.0.1:5276",
                "auth_env": "AI_COLLAB_API_KEY",
                "timeout_seconds": 5,
                "max_result_bytes": 1048576,
                "cache_ttl_seconds": 60,
                "fallback": "local",
                "automation": {
                  "discovery_on_session_start": true,
                  "knowledge_recall": true,
                  "memory_recall": true,
                  "context_enrichment": true,
                  "notices_on_session_start": false,
                  "goals_sync": false,
                  "telemetry_on_maintenance": false,
                  "reporting_dispatch": true,
                  "judgment_dispatch": true,
                  "verification_execution": true
                }
              },
              "active": false,
              "effective_mode": "off",
              "effective_capabilities": []
            }
          },
          "output_hash": "a6df426290b4549a59eecaa0519ead9bcc50b7fcb25bd2185ff6047960f19ccb",
          "completed_at": "2026-07-15T17:15:46Z"
        },
        {
          "id": "notices",
          "action": "substrate.notices",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-15T17:15:46Z",
          "output": {
            "status": "disabled"
          },
          "output_hash": "38b904a1cf83df048360fb2480571b749fd98d57e11f1afdffb5a74a78166fea",
          "completed_at": "2026-07-15T17:15:46Z"
        },
        {
          "id": "goals",
          "action": "substrate.goals",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-15T17:15:46Z",
          "output": {
            "status": "disabled",
            "created": 0,
            "observed": 0,
            "results": []
          },
          "output_hash": "cdfd4de44a28140e686159f34f7b47975954c67e1d1efcef666e985acb136ed8",
          "completed_at": "2026-07-15T17:15:46Z"
        }
      ],
      "completed_at": "2026-07-15T17:15:46Z"
    },
    {
      "id": "WFR-134",
      "schema_version": "1.0",
      "workflow_id": "session.stop",
      "workflow_version": 1,
      "definition_hash": "0cef7bb3e28321be8f85375c154955a69310ce297e47de3f3b8dd48f77a2f07d",
      "plan_hash": "a5e1d77ac734217487fc418e29c7163f4e81178e25d171e70cd4c999d527d3e8",
      "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
      "inputs": {},
      "idempotency_key": "hook:Stop:019f66c6-f51d-7dc3-920d-051033b525e2",
      "status": "completed",
      "attempt": 1,
      "created_at": "2026-07-15T17:15:50Z",
      "updated_at": "2026-07-15T17:15:51Z",
      "receipts": [
        {
          "step_id": "state",
          "action": "state.consistency",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "5a1c6e5246defb1b6b6b90ff734db95bece2886b408ab112ed9b8e67222d5568",
          "completed_at": "2026-07-15T17:15:51Z"
        },
        {
          "step_id": "goals",
          "action": "substrate.goals",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "cdfd4de44a28140e686159f34f7b47975954c67e1d1efcef666e985acb136ed8",
          "completed_at": "2026-07-15T17:15:51Z"
        },
        {
          "step_id": "staleness",
          "action": "staleness.audit",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "1e81cb0ffd0a4d04626920a203b38d2d23a264cd43e807a85d375d69cae8a658",
          "completed_at": "2026-07-15T17:15:51Z"
        },
        {
          "step_id": "reflections",
          "action": "reflection.list",
          "input_hash": "0172e841ab4c13b3a4061f073f9d68a716ec87a8a5d52fde41823385e0582573",
          "output_hash": "c1b6b635c0bab21120657277f14ef6f839909875f307a3745fa48aee2bd6e449",
          "completed_at": "2026-07-15T17:15:51Z"
        },
        {
          "step_id": "bundle",
          "action": "reporting.bundle",
          "input_hash": "aed8ebb688dc3c085dd978d7c4120572173c3cb87e75919e4a937dcca6ef9457",
          "output_hash": "f61aa7bfac7c2e96e3bf2d3386a95e45d2db52d040f05aff9ea963197eacc3f6",
          "completed_at": "2026-07-15T17:15:51Z"
        },
        {
          "step_id": "delegated",
          "action": "reporting.delegate",
          "input_hash": "5bf4dfad88c9958da759cb1561ca5fdd8f3ac9050e938bfde85af5c8d804adc9",
          "output_hash": "e6085059f197def80ae95add1f328418107bea5436c9bd002530043646a3a95c",
          "completed_at": "2026-07-15T17:15:51Z"
        }
      ],
      "steps": [
        {
          "id": "state",
          "action": "state.consistency",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-15T17:15:50Z",
          "output": {
            "status": "ok",
            "repo_root": "D:\\Projects\\prd-plugin",
            "summary": {
              "errors": 0,
              "warnings": 0,
              "infos": 0
            },
            "findings": []
          },
          "output_hash": "5a1c6e5246defb1b6b6b90ff734db95bece2886b408ab112ed9b8e67222d5568",
          "completed_at": "2026-07-15T17:15:51Z"
        },
        {
          "id": "goals",
          "action": "substrate.goals",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-15T17:15:51Z",
          "output": {
            "status": "disabled",
            "created": 0,
            "observed": 0,
            "results": []
          },
          "output_hash": "cdfd4de44a28140e686159f34f7b47975954c67e1d1efcef666e985acb136ed8",
          "completed_at": "2026-07-15T17:15:51Z"
        },
        {
          "id": "staleness",
          "action": "staleness.audit",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-15T17:15:51Z",
          "output": {
            "status": "ok",
            "repo_root": "D:\\Projects\\prd-plugin",
            "counts": {
              "stale": 0
            },
            "stale": []
          },
          "output_hash": "1e81cb0ffd0a4d04626920a203b38d2d23a264cd43e807a85d375d69cae8a658",
          "completed_at": "2026-07-15T17:15:51Z"
        },
        {
          "id": "reflections",
          "action": "reflection.list",
          "status": "completed",
          "resolved_input_hash": "0172e841ab4c13b3a4061f073f9d68a716ec87a8a5d52fde41823385e0582573",
          "started_at": "2026-07-15T17:15:51Z",
          "output": {
            "enabled": false,
            "on_stop": true,
            "max_questions_per_stop": 5,
            "categories": [
              {
                "id": "behaviour_quality",
                "name": "Behaviour quality",
                "enabled": true,
                "question_count": 3
              },
              {
                "id": "harness_friction",
                "name": "Harness friction",
                "enabled": true,
                "question_count": 2
              }
            ],
            "questions": [
              {
                "id": "RFQ-001",
                "text": "Based on the work you just carried out, would you classify your behaviour as good? Answer yes or no and cite observable evidence.",
                "enabled": true,
                "category_id": "behaviour_quality",
                "category_name": "Behaviour quality",
                "effective_enabled": false
              },
              {
                "id": "RFQ-002",
                "text": "If you answered no, what could you do differently to correct your behaviour?",
                "enabled": true,
                "category_id": "behaviour_quality",
                "category_name": "Behaviour quality",
                "effective_enabled": false
              },
              {
                "id": "RFQ-003",
                "text": "Would another attempt using the identified good behaviours materially improve the outcome? Answer yes or no and state the next corrective action if yes.",
                "enabled": true,
                "category_id": "behaviour_quality",
                "category_name": "Behaviour quality",
                "effective_enabled": false
              },
              {
                "id": "RFQ-004",
                "text": "What harness friction points made this work more difficult?",
                "enabled": true,
                "category_id": "harness_friction",
                "category_name": "Harness friction",
                "effective_enabled": false
              },
              {
                "id": "RFQ-005",
                "text": "What up to three changes would most improve friction in the harness?",
                "enabled": true,
                "category_id": "harness_friction",
                "category_name": "Harness friction",
                "effective_enabled": false
              }
            ]
          },
          "output_hash": "c1b6b635c0bab21120657277f14ef6f839909875f307a3745fa48aee2bd6e449",
          "completed_at": "2026-07-15T17:15:51Z"
        },
        {
          "id": "bundle",
          "action": "reporting.bundle",
          "status": "completed",
          "resolved_input_hash": "aed8ebb688dc3c085dd978d7c4120572173c3cb87e75919e4a937dcca6ef9457",
          "started_at": "2026-07-15T17:15:51Z",
          "output": {
            "contract_version": 1,
            "task": "session_summary",
            "repo": "prd-plugin",
            "policy": {
              "enabled": false,
              "executor": "ai-collab",
              "contract_version": 1,
              "profile": "fast-capable",
              "tasks": [
                "report_summary",
                "session_summary",
                "wiki_synthesis",
                "triage_draft"
              ],
              "fallback": "main",
              "require_source_refs": true,
              "max_input_tokens": 12000,
              "max_output_tokens": 1500,
              "timeout_seconds": 30
            },
            "facts": {
              "requests_by_status": {
                "deferred": 1,
                "implemented": 80,
                "proposed": 1,
                "rejected": 1
              },
              "active_requests": [
                {
                  "id": "REQ-072",
                  "status": "proposed",
                  "severity": "low",
                  "summary": "opencode run-until-done: session.idle is a non-blocking notification, so the stop guard can't force continuation on opencode (currently degrades to a printed reminder, 0.5.95). Investigate whether opencode exposes any vetoable/continuation mechanism (a different event, a permission hook, or a 'continue' API) to enforce run-until-done, or accept the reminder as the permanent ceiling. Low priority — user rarely uses opencode."
                }
              ],
              "active_tracking": [],
              "open_health": [],
              "evidence_count": 105,
              "decision_count": 10
            },
            "findings": [],
            "source_refs": [
              ".prd_plugin/config.json",
              ".prd_plugin/state/decisions.json",
              ".prd_plugin/state/evidence.json",
              ".prd_plugin/state/health.json",
              ".prd_plugin/state/requests.json",
              ".prd_plugin/state/tracking.json",
              "REQ-072"
            ],
            "constraints": {
              "max_input_tokens": 12000,
              "max_output_tokens": 1500,
              "timeout_seconds": 30,
              "require_source_refs": true,
              "no_project_state_writes": true,
              "no_secrets_or_local_session_content": true
            }
          },
          "output_hash": "f61aa7bfac7c2e96e3bf2d3386a95e45d2db52d040f05aff9ea963197eacc3f6",
          "completed_at": "2026-07-15T17:15:51Z"
        },
        {
          "id": "delegated",
          "action": "reporting.delegate",
          "status": "completed",
          "resolved_input_hash": "5bf4dfad88c9958da759cb1561ca5fdd8f3ac9050e938bfde85af5c8d804adc9",
          "started_at": "2026-07-15T17:15:51Z",
          "output": {
            "status": "fallback",
            "action": "main",
            "reason": "disabled"
          },
          "output_hash": "e6085059f197def80ae95add1f328418107bea5436c9bd002530043646a3a95c",
          "completed_at": "2026-07-15T17:15:51Z"
        }
      ],
      "completed_at": "2026-07-15T17:15:51Z"
    },
    {
      "id": "WFR-135",
      "schema_version": "1.0",
      "workflow_id": "session.start",
      "workflow_version": 1,
      "definition_hash": "d0f98da02571e6dd27fec4aed92d3c82af9db75f8b90b997bf665635c7b7f6ca",
      "plan_hash": "b5072615ca3b7e9a3bd85d50d1f069d99ef2a9816b32c03a370745ed7a205536",
      "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
      "inputs": {},
      "idempotency_key": "hook:SessionStart:019f66c9-b8c2-70a0-93c1-cdcc1fe9e73b",
      "status": "completed",
      "attempt": 1,
      "created_at": "2026-07-15T17:18:45Z",
      "updated_at": "2026-07-15T17:18:47Z",
      "receipts": [
        {
          "step_id": "config",
          "action": "config.audit",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "3782ec2317c0c8ee7598634310a2804d8aae4735f557498f9d3b8fae7c45e1e5",
          "completed_at": "2026-07-15T17:18:45Z"
        },
        {
          "step_id": "services",
          "action": "services.audit",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "13dcc58bd528f3efa3e6e0fa0853a6eedc376f1f3685fbd4869cbb2b60382ee3",
          "completed_at": "2026-07-15T17:18:45Z"
        },
        {
          "step_id": "state",
          "action": "state.consistency",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "5a1c6e5246defb1b6b6b90ff734db95bece2886b408ab112ed9b8e67222d5568",
          "completed_at": "2026-07-15T17:18:46Z"
        },
        {
          "step_id": "status",
          "action": "state.query",
          "input_hash": "a15231a2142a2a9a85355a8b9cbbccffe01a9c9c2c2fd8c2bc2987cdc481564a",
          "output_hash": "8ba9f7d3cc6705af37de9e3324d1258e21ccacb5ab0b2d7b389ca08885e11187",
          "completed_at": "2026-07-15T17:18:46Z"
        },
        {
          "step_id": "substrate",
          "action": "substrate.preflight",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "a6df426290b4549a59eecaa0519ead9bcc50b7fcb25bd2185ff6047960f19ccb",
          "completed_at": "2026-07-15T17:18:46Z"
        },
        {
          "step_id": "notices",
          "action": "substrate.notices",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "38b904a1cf83df048360fb2480571b749fd98d57e11f1afdffb5a74a78166fea",
          "completed_at": "2026-07-15T17:18:46Z"
        },
        {
          "step_id": "goals",
          "action": "substrate.goals",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "cdfd4de44a28140e686159f34f7b47975954c67e1d1efcef666e985acb136ed8",
          "completed_at": "2026-07-15T17:18:46Z"
        }
      ],
      "steps": [
        {
          "id": "config",
          "action": "config.audit",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-15T17:18:45Z",
          "output": {
            "status": "ok",
            "summary": {
              "settings": 195,
              "mutable": 186,
              "read_only_or_managed": 9,
              "unclassified": 0,
              "unknown": 0,
              "invalid": 0,
              "missing_using_defaults": 0
            },
            "unclassified_keys": [],
            "unknown_keys": [],
            "invalid_values": [],
            "missing_using_defaults": []
          },
          "output_hash": "3782ec2317c0c8ee7598634310a2804d8aae4735f557498f9d3b8fae7c45e1e5",
          "completed_at": "2026-07-15T17:18:45Z"
        },
        {
          "id": "services",
          "action": "services.audit",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-15T17:18:45Z",
          "output": {
            "status": "ok",
            "summary": {
              "critical": 0,
              "high": 0,
              "medium": 0,
              "low": 0
            },
            "findings": []
          },
          "output_hash": "13dcc58bd528f3efa3e6e0fa0853a6eedc376f1f3685fbd4869cbb2b60382ee3",
          "completed_at": "2026-07-15T17:18:45Z"
        },
        {
          "id": "state",
          "action": "state.consistency",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-15T17:18:45Z",
          "output": {
            "status": "ok",
            "repo_root": "D:\\Projects\\prd-plugin",
            "summary": {
              "errors": 0,
              "warnings": 0,
              "infos": 0
            },
            "findings": []
          },
          "output_hash": "5a1c6e5246defb1b6b6b90ff734db95bece2886b408ab112ed9b8e67222d5568",
          "completed_at": "2026-07-15T17:18:46Z"
        },
        {
          "id": "status",
          "action": "state.query",
          "status": "completed",
          "resolved_input_hash": "a15231a2142a2a9a85355a8b9cbbccffe01a9c9c2c2fd8c2bc2987cdc481564a",
          "started_at": "2026-07-15T17:18:46Z",
          "output": {
            "repo_root": "D:\\Projects\\prd-plugin",
            "autonomy_level": "autonomous",
            "requests_by_status": {
              "deferred": 1,
              "implemented": 80,
              "proposed": 1,
              "rejected": 1
            },
            "active_tracking": [],
            "tracking_branches": [],
            "tracking_branch_counts": {},
            "tracking_branch_errors": [],
            "open_health": [],
            "stale_count": 0,
            "skill_usage": {
              "project-decision-policy": 1,
              "project-request-intake": 1,
              "project-test-driven-implementation": 1,
              "project-verification-before-completion": 1,
              "project-llm-wiki": 1
            },
            "wiki_backfill_pending": false,
            "version_update": null
          },
          "output_hash": "8ba9f7d3cc6705af37de9e3324d1258e21ccacb5ab0b2d7b389ca08885e11187",
          "completed_at": "2026-07-15T17:18:46Z"
        },
        {
          "id": "substrate",
          "action": "substrate.preflight",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-15T17:18:46Z",
          "output": {
            "status": "disabled",
            "services": {
              "status": "ok",
              "summary": {
                "critical": 0,
                "high": 0,
                "medium": 0,
                "low": 0
              },
              "findings": []
            },
            "policy": {
              "configured": {
                "enabled": false,
                "mode": "off",
                "capabilities": [
                  "records",
                  "graph",
                  "events"
                ],
                "contract_version": 2,
                "require_source_refs": true,
                "endpoint": "http://127.0.0.1:47124",
                "manual_url": "http://127.0.0.1:47124/utcp.json",
                "knowledge_browse_url": "http://127.0.0.1:5276",
                "auth_env": "AI_COLLAB_API_KEY",
                "timeout_seconds": 5,
                "max_result_bytes": 1048576,
                "cache_ttl_seconds": 60,
                "fallback": "local",
                "automation": {
                  "discovery_on_session_start": true,
                  "knowledge_recall": true,
                  "memory_recall": true,
                  "context_enrichment": true,
                  "notices_on_session_start": false,
                  "goals_sync": false,
                  "telemetry_on_maintenance": false,
                  "reporting_dispatch": true,
                  "judgment_dispatch": true,
                  "verification_execution": true
                }
              },
              "active": false,
              "effective_mode": "off",
              "effective_capabilities": []
            }
          },
          "output_hash": "a6df426290b4549a59eecaa0519ead9bcc50b7fcb25bd2185ff6047960f19ccb",
          "completed_at": "2026-07-15T17:18:46Z"
        },
        {
          "id": "notices",
          "action": "substrate.notices",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-15T17:18:46Z",
          "output": {
            "status": "disabled"
          },
          "output_hash": "38b904a1cf83df048360fb2480571b749fd98d57e11f1afdffb5a74a78166fea",
          "completed_at": "2026-07-15T17:18:46Z"
        },
        {
          "id": "goals",
          "action": "substrate.goals",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-15T17:18:46Z",
          "output": {
            "status": "disabled",
            "created": 0,
            "observed": 0,
            "results": []
          },
          "output_hash": "cdfd4de44a28140e686159f34f7b47975954c67e1d1efcef666e985acb136ed8",
          "completed_at": "2026-07-15T17:18:46Z"
        }
      ],
      "completed_at": "2026-07-15T17:18:47Z"
    },
    {
      "id": "WFR-136",
      "schema_version": "1.0",
      "workflow_id": "session.stop",
      "workflow_version": 1,
      "definition_hash": "0cef7bb3e28321be8f85375c154955a69310ce297e47de3f3b8dd48f77a2f07d",
      "plan_hash": "a5e1d77ac734217487fc418e29c7163f4e81178e25d171e70cd4c999d527d3e8",
      "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
      "inputs": {},
      "idempotency_key": "hook:Stop:019f66c9-b8c2-70a0-93c1-cdcc1fe9e73b",
      "status": "completed",
      "attempt": 1,
      "created_at": "2026-07-15T17:18:51Z",
      "updated_at": "2026-07-15T17:18:52Z",
      "receipts": [
        {
          "step_id": "state",
          "action": "state.consistency",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "5a1c6e5246defb1b6b6b90ff734db95bece2886b408ab112ed9b8e67222d5568",
          "completed_at": "2026-07-15T17:18:52Z"
        },
        {
          "step_id": "goals",
          "action": "substrate.goals",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "cdfd4de44a28140e686159f34f7b47975954c67e1d1efcef666e985acb136ed8",
          "completed_at": "2026-07-15T17:18:52Z"
        },
        {
          "step_id": "staleness",
          "action": "staleness.audit",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "1e81cb0ffd0a4d04626920a203b38d2d23a264cd43e807a85d375d69cae8a658",
          "completed_at": "2026-07-15T17:18:52Z"
        },
        {
          "step_id": "reflections",
          "action": "reflection.list",
          "input_hash": "0172e841ab4c13b3a4061f073f9d68a716ec87a8a5d52fde41823385e0582573",
          "output_hash": "c1b6b635c0bab21120657277f14ef6f839909875f307a3745fa48aee2bd6e449",
          "completed_at": "2026-07-15T17:18:52Z"
        },
        {
          "step_id": "bundle",
          "action": "reporting.bundle",
          "input_hash": "aed8ebb688dc3c085dd978d7c4120572173c3cb87e75919e4a937dcca6ef9457",
          "output_hash": "f61aa7bfac7c2e96e3bf2d3386a95e45d2db52d040f05aff9ea963197eacc3f6",
          "completed_at": "2026-07-15T17:18:52Z"
        },
        {
          "step_id": "delegated",
          "action": "reporting.delegate",
          "input_hash": "5bf4dfad88c9958da759cb1561ca5fdd8f3ac9050e938bfde85af5c8d804adc9",
          "output_hash": "e6085059f197def80ae95add1f328418107bea5436c9bd002530043646a3a95c",
          "completed_at": "2026-07-15T17:18:52Z"
        }
      ],
      "steps": [
        {
          "id": "state",
          "action": "state.consistency",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-15T17:18:51Z",
          "output": {
            "status": "ok",
            "repo_root": "D:\\Projects\\prd-plugin",
            "summary": {
              "errors": 0,
              "warnings": 0,
              "infos": 0
            },
            "findings": []
          },
          "output_hash": "5a1c6e5246defb1b6b6b90ff734db95bece2886b408ab112ed9b8e67222d5568",
          "completed_at": "2026-07-15T17:18:52Z"
        },
        {
          "id": "goals",
          "action": "substrate.goals",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-15T17:18:52Z",
          "output": {
            "status": "disabled",
            "created": 0,
            "observed": 0,
            "results": []
          },
          "output_hash": "cdfd4de44a28140e686159f34f7b47975954c67e1d1efcef666e985acb136ed8",
          "completed_at": "2026-07-15T17:18:52Z"
        },
        {
          "id": "staleness",
          "action": "staleness.audit",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-15T17:18:52Z",
          "output": {
            "status": "ok",
            "repo_root": "D:\\Projects\\prd-plugin",
            "counts": {
              "stale": 0
            },
            "stale": []
          },
          "output_hash": "1e81cb0ffd0a4d04626920a203b38d2d23a264cd43e807a85d375d69cae8a658",
          "completed_at": "2026-07-15T17:18:52Z"
        },
        {
          "id": "reflections",
          "action": "reflection.list",
          "status": "completed",
          "resolved_input_hash": "0172e841ab4c13b3a4061f073f9d68a716ec87a8a5d52fde41823385e0582573",
          "started_at": "2026-07-15T17:18:52Z",
          "output": {
            "enabled": false,
            "on_stop": true,
            "max_questions_per_stop": 5,
            "categories": [
              {
                "id": "behaviour_quality",
                "name": "Behaviour quality",
                "enabled": true,
                "question_count": 3
              },
              {
                "id": "harness_friction",
                "name": "Harness friction",
                "enabled": true,
                "question_count": 2
              }
            ],
            "questions": [
              {
                "id": "RFQ-001",
                "text": "Based on the work you just carried out, would you classify your behaviour as good? Answer yes or no and cite observable evidence.",
                "enabled": true,
                "category_id": "behaviour_quality",
                "category_name": "Behaviour quality",
                "effective_enabled": false
              },
              {
                "id": "RFQ-002",
                "text": "If you answered no, what could you do differently to correct your behaviour?",
                "enabled": true,
                "category_id": "behaviour_quality",
                "category_name": "Behaviour quality",
                "effective_enabled": false
              },
              {
                "id": "RFQ-003",
                "text": "Would another attempt using the identified good behaviours materially improve the outcome? Answer yes or no and state the next corrective action if yes.",
                "enabled": true,
                "category_id": "behaviour_quality",
                "category_name": "Behaviour quality",
                "effective_enabled": false
              },
              {
                "id": "RFQ-004",
                "text": "What harness friction points made this work more difficult?",
                "enabled": true,
                "category_id": "harness_friction",
                "category_name": "Harness friction",
                "effective_enabled": false
              },
              {
                "id": "RFQ-005",
                "text": "What up to three changes would most improve friction in the harness?",
                "enabled": true,
                "category_id": "harness_friction",
                "category_name": "Harness friction",
                "effective_enabled": false
              }
            ]
          },
          "output_hash": "c1b6b635c0bab21120657277f14ef6f839909875f307a3745fa48aee2bd6e449",
          "completed_at": "2026-07-15T17:18:52Z"
        },
        {
          "id": "bundle",
          "action": "reporting.bundle",
          "status": "completed",
          "resolved_input_hash": "aed8ebb688dc3c085dd978d7c4120572173c3cb87e75919e4a937dcca6ef9457",
          "started_at": "2026-07-15T17:18:52Z",
          "output": {
            "contract_version": 1,
            "task": "session_summary",
            "repo": "prd-plugin",
            "policy": {
              "enabled": false,
              "executor": "ai-collab",
              "contract_version": 1,
              "profile": "fast-capable",
              "tasks": [
                "report_summary",
                "session_summary",
                "wiki_synthesis",
                "triage_draft"
              ],
              "fallback": "main",
              "require_source_refs": true,
              "max_input_tokens": 12000,
              "max_output_tokens": 1500,
              "timeout_seconds": 30
            },
            "facts": {
              "requests_by_status": {
                "deferred": 1,
                "implemented": 80,
                "proposed": 1,
                "rejected": 1
              },
              "active_requests": [
                {
                  "id": "REQ-072",
                  "status": "proposed",
                  "severity": "low",
                  "summary": "opencode run-until-done: session.idle is a non-blocking notification, so the stop guard can't force continuation on opencode (currently degrades to a printed reminder, 0.5.95). Investigate whether opencode exposes any vetoable/continuation mechanism (a different event, a permission hook, or a 'continue' API) to enforce run-until-done, or accept the reminder as the permanent ceiling. Low priority — user rarely uses opencode."
                }
              ],
              "active_tracking": [],
              "open_health": [],
              "evidence_count": 105,
              "decision_count": 10
            },
            "findings": [],
            "source_refs": [
              ".prd_plugin/config.json",
              ".prd_plugin/state/decisions.json",
              ".prd_plugin/state/evidence.json",
              ".prd_plugin/state/health.json",
              ".prd_plugin/state/requests.json",
              ".prd_plugin/state/tracking.json",
              "REQ-072"
            ],
            "constraints": {
              "max_input_tokens": 12000,
              "max_output_tokens": 1500,
              "timeout_seconds": 30,
              "require_source_refs": true,
              "no_project_state_writes": true,
              "no_secrets_or_local_session_content": true
            }
          },
          "output_hash": "f61aa7bfac7c2e96e3bf2d3386a95e45d2db52d040f05aff9ea963197eacc3f6",
          "completed_at": "2026-07-15T17:18:52Z"
        },
        {
          "id": "delegated",
          "action": "reporting.delegate",
          "status": "completed",
          "resolved_input_hash": "5bf4dfad88c9958da759cb1561ca5fdd8f3ac9050e938bfde85af5c8d804adc9",
          "started_at": "2026-07-15T17:18:52Z",
          "output": {
            "status": "fallback",
            "action": "main",
            "reason": "disabled"
          },
          "output_hash": "e6085059f197def80ae95add1f328418107bea5436c9bd002530043646a3a95c",
          "completed_at": "2026-07-15T17:18:52Z"
        }
      ],
      "completed_at": "2026-07-15T17:18:52Z"
    },
    {
      "id": "WFR-137",
      "schema_version": "1.0",
      "workflow_id": "session.start",
      "workflow_version": 1,
      "definition_hash": "d0f98da02571e6dd27fec4aed92d3c82af9db75f8b90b997bf665635c7b7f6ca",
      "plan_hash": "b5072615ca3b7e9a3bd85d50d1f069d99ef2a9816b32c03a370745ed7a205536",
      "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
      "inputs": {},
      "idempotency_key": "hook:SessionStart:019f66cd-afdd-7c12-a90c-af4da1f5afcb",
      "status": "completed",
      "attempt": 1,
      "created_at": "2026-07-15T17:23:08Z",
      "updated_at": "2026-07-15T17:23:09Z",
      "receipts": [
        {
          "step_id": "config",
          "action": "config.audit",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "3782ec2317c0c8ee7598634310a2804d8aae4735f557498f9d3b8fae7c45e1e5",
          "completed_at": "2026-07-15T17:23:08Z"
        },
        {
          "step_id": "services",
          "action": "services.audit",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "13dcc58bd528f3efa3e6e0fa0853a6eedc376f1f3685fbd4869cbb2b60382ee3",
          "completed_at": "2026-07-15T17:23:08Z"
        },
        {
          "step_id": "state",
          "action": "state.consistency",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "5a1c6e5246defb1b6b6b90ff734db95bece2886b408ab112ed9b8e67222d5568",
          "completed_at": "2026-07-15T17:23:09Z"
        },
        {
          "step_id": "status",
          "action": "state.query",
          "input_hash": "a15231a2142a2a9a85355a8b9cbbccffe01a9c9c2c2fd8c2bc2987cdc481564a",
          "output_hash": "8ba9f7d3cc6705af37de9e3324d1258e21ccacb5ab0b2d7b389ca08885e11187",
          "completed_at": "2026-07-15T17:23:09Z"
        },
        {
          "step_id": "substrate",
          "action": "substrate.preflight",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "a6df426290b4549a59eecaa0519ead9bcc50b7fcb25bd2185ff6047960f19ccb",
          "completed_at": "2026-07-15T17:23:09Z"
        },
        {
          "step_id": "notices",
          "action": "substrate.notices",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "38b904a1cf83df048360fb2480571b749fd98d57e11f1afdffb5a74a78166fea",
          "completed_at": "2026-07-15T17:23:09Z"
        },
        {
          "step_id": "goals",
          "action": "substrate.goals",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "cdfd4de44a28140e686159f34f7b47975954c67e1d1efcef666e985acb136ed8",
          "completed_at": "2026-07-15T17:23:09Z"
        }
      ],
      "steps": [
        {
          "id": "config",
          "action": "config.audit",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-15T17:23:08Z",
          "output": {
            "status": "ok",
            "summary": {
              "settings": 195,
              "mutable": 186,
              "read_only_or_managed": 9,
              "unclassified": 0,
              "unknown": 0,
              "invalid": 0,
              "missing_using_defaults": 0
            },
            "unclassified_keys": [],
            "unknown_keys": [],
            "invalid_values": [],
            "missing_using_defaults": []
          },
          "output_hash": "3782ec2317c0c8ee7598634310a2804d8aae4735f557498f9d3b8fae7c45e1e5",
          "completed_at": "2026-07-15T17:23:08Z"
        },
        {
          "id": "services",
          "action": "services.audit",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-15T17:23:08Z",
          "output": {
            "status": "ok",
            "summary": {
              "critical": 0,
              "high": 0,
              "medium": 0,
              "low": 0
            },
            "findings": []
          },
          "output_hash": "13dcc58bd528f3efa3e6e0fa0853a6eedc376f1f3685fbd4869cbb2b60382ee3",
          "completed_at": "2026-07-15T17:23:08Z"
        },
        {
          "id": "state",
          "action": "state.consistency",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-15T17:23:08Z",
          "output": {
            "status": "ok",
            "repo_root": "D:\\Projects\\prd-plugin",
            "summary": {
              "errors": 0,
              "warnings": 0,
              "infos": 0
            },
            "findings": []
          },
          "output_hash": "5a1c6e5246defb1b6b6b90ff734db95bece2886b408ab112ed9b8e67222d5568",
          "completed_at": "2026-07-15T17:23:09Z"
        },
        {
          "id": "status",
          "action": "state.query",
          "status": "completed",
          "resolved_input_hash": "a15231a2142a2a9a85355a8b9cbbccffe01a9c9c2c2fd8c2bc2987cdc481564a",
          "started_at": "2026-07-15T17:23:09Z",
          "output": {
            "repo_root": "D:\\Projects\\prd-plugin",
            "autonomy_level": "autonomous",
            "requests_by_status": {
              "deferred": 1,
              "implemented": 80,
              "proposed": 1,
              "rejected": 1
            },
            "active_tracking": [],
            "tracking_branches": [],
            "tracking_branch_counts": {},
            "tracking_branch_errors": [],
            "open_health": [],
            "stale_count": 0,
            "skill_usage": {
              "project-decision-policy": 1,
              "project-request-intake": 1,
              "project-test-driven-implementation": 1,
              "project-verification-before-completion": 1,
              "project-llm-wiki": 1
            },
            "wiki_backfill_pending": false,
            "version_update": null
          },
          "output_hash": "8ba9f7d3cc6705af37de9e3324d1258e21ccacb5ab0b2d7b389ca08885e11187",
          "completed_at": "2026-07-15T17:23:09Z"
        },
        {
          "id": "substrate",
          "action": "substrate.preflight",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-15T17:23:09Z",
          "output": {
            "status": "disabled",
            "services": {
              "status": "ok",
              "summary": {
                "critical": 0,
                "high": 0,
                "medium": 0,
                "low": 0
              },
              "findings": []
            },
            "policy": {
              "configured": {
                "enabled": false,
                "mode": "off",
                "capabilities": [
                  "records",
                  "graph",
                  "events"
                ],
                "contract_version": 2,
                "require_source_refs": true,
                "endpoint": "http://127.0.0.1:47124",
                "manual_url": "http://127.0.0.1:47124/utcp.json",
                "knowledge_browse_url": "http://127.0.0.1:5276",
                "auth_env": "AI_COLLAB_API_KEY",
                "timeout_seconds": 5,
                "max_result_bytes": 1048576,
                "cache_ttl_seconds": 60,
                "fallback": "local",
                "automation": {
                  "discovery_on_session_start": true,
                  "knowledge_recall": true,
                  "memory_recall": true,
                  "context_enrichment": true,
                  "notices_on_session_start": false,
                  "goals_sync": false,
                  "telemetry_on_maintenance": false,
                  "reporting_dispatch": true,
                  "judgment_dispatch": true,
                  "verification_execution": true
                }
              },
              "active": false,
              "effective_mode": "off",
              "effective_capabilities": []
            }
          },
          "output_hash": "a6df426290b4549a59eecaa0519ead9bcc50b7fcb25bd2185ff6047960f19ccb",
          "completed_at": "2026-07-15T17:23:09Z"
        },
        {
          "id": "notices",
          "action": "substrate.notices",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-15T17:23:09Z",
          "output": {
            "status": "disabled"
          },
          "output_hash": "38b904a1cf83df048360fb2480571b749fd98d57e11f1afdffb5a74a78166fea",
          "completed_at": "2026-07-15T17:23:09Z"
        },
        {
          "id": "goals",
          "action": "substrate.goals",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-15T17:23:09Z",
          "output": {
            "status": "disabled",
            "created": 0,
            "observed": 0,
            "results": []
          },
          "output_hash": "cdfd4de44a28140e686159f34f7b47975954c67e1d1efcef666e985acb136ed8",
          "completed_at": "2026-07-15T17:23:09Z"
        }
      ],
      "completed_at": "2026-07-15T17:23:09Z"
    },
    {
      "id": "WFR-138",
      "schema_version": "1.0",
      "workflow_id": "session.stop",
      "workflow_version": 1,
      "definition_hash": "0cef7bb3e28321be8f85375c154955a69310ce297e47de3f3b8dd48f77a2f07d",
      "plan_hash": "a5e1d77ac734217487fc418e29c7163f4e81178e25d171e70cd4c999d527d3e8",
      "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
      "inputs": {},
      "idempotency_key": "hook:Stop:019f66cd-afdd-7c12-a90c-af4da1f5afcb",
      "status": "completed",
      "attempt": 1,
      "created_at": "2026-07-15T17:23:14Z",
      "updated_at": "2026-07-15T17:23:15Z",
      "receipts": [
        {
          "step_id": "state",
          "action": "state.consistency",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "5a1c6e5246defb1b6b6b90ff734db95bece2886b408ab112ed9b8e67222d5568",
          "completed_at": "2026-07-15T17:23:15Z"
        },
        {
          "step_id": "goals",
          "action": "substrate.goals",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "cdfd4de44a28140e686159f34f7b47975954c67e1d1efcef666e985acb136ed8",
          "completed_at": "2026-07-15T17:23:15Z"
        },
        {
          "step_id": "staleness",
          "action": "staleness.audit",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "1e81cb0ffd0a4d04626920a203b38d2d23a264cd43e807a85d375d69cae8a658",
          "completed_at": "2026-07-15T17:23:15Z"
        },
        {
          "step_id": "reflections",
          "action": "reflection.list",
          "input_hash": "0172e841ab4c13b3a4061f073f9d68a716ec87a8a5d52fde41823385e0582573",
          "output_hash": "c1b6b635c0bab21120657277f14ef6f839909875f307a3745fa48aee2bd6e449",
          "completed_at": "2026-07-15T17:23:15Z"
        },
        {
          "step_id": "bundle",
          "action": "reporting.bundle",
          "input_hash": "aed8ebb688dc3c085dd978d7c4120572173c3cb87e75919e4a937dcca6ef9457",
          "output_hash": "f61aa7bfac7c2e96e3bf2d3386a95e45d2db52d040f05aff9ea963197eacc3f6",
          "completed_at": "2026-07-15T17:23:15Z"
        },
        {
          "step_id": "delegated",
          "action": "reporting.delegate",
          "input_hash": "5bf4dfad88c9958da759cb1561ca5fdd8f3ac9050e938bfde85af5c8d804adc9",
          "output_hash": "e6085059f197def80ae95add1f328418107bea5436c9bd002530043646a3a95c",
          "completed_at": "2026-07-15T17:23:15Z"
        }
      ],
      "steps": [
        {
          "id": "state",
          "action": "state.consistency",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-15T17:23:14Z",
          "output": {
            "status": "ok",
            "repo_root": "D:\\Projects\\prd-plugin",
            "summary": {
              "errors": 0,
              "warnings": 0,
              "infos": 0
            },
            "findings": []
          },
          "output_hash": "5a1c6e5246defb1b6b6b90ff734db95bece2886b408ab112ed9b8e67222d5568",
          "completed_at": "2026-07-15T17:23:15Z"
        },
        {
          "id": "goals",
          "action": "substrate.goals",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-15T17:23:15Z",
          "output": {
            "status": "disabled",
            "created": 0,
            "observed": 0,
            "results": []
          },
          "output_hash": "cdfd4de44a28140e686159f34f7b47975954c67e1d1efcef666e985acb136ed8",
          "completed_at": "2026-07-15T17:23:15Z"
        },
        {
          "id": "staleness",
          "action": "staleness.audit",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-15T17:23:15Z",
          "output": {
            "status": "ok",
            "repo_root": "D:\\Projects\\prd-plugin",
            "counts": {
              "stale": 0
            },
            "stale": []
          },
          "output_hash": "1e81cb0ffd0a4d04626920a203b38d2d23a264cd43e807a85d375d69cae8a658",
          "completed_at": "2026-07-15T17:23:15Z"
        },
        {
          "id": "reflections",
          "action": "reflection.list",
          "status": "completed",
          "resolved_input_hash": "0172e841ab4c13b3a4061f073f9d68a716ec87a8a5d52fde41823385e0582573",
          "started_at": "2026-07-15T17:23:15Z",
          "output": {
            "enabled": false,
            "on_stop": true,
            "max_questions_per_stop": 5,
            "categories": [
              {
                "id": "behaviour_quality",
                "name": "Behaviour quality",
                "enabled": true,
                "question_count": 3
              },
              {
                "id": "harness_friction",
                "name": "Harness friction",
                "enabled": true,
                "question_count": 2
              }
            ],
            "questions": [
              {
                "id": "RFQ-001",
                "text": "Based on the work you just carried out, would you classify your behaviour as good? Answer yes or no and cite observable evidence.",
                "enabled": true,
                "category_id": "behaviour_quality",
                "category_name": "Behaviour quality",
                "effective_enabled": false
              },
              {
                "id": "RFQ-002",
                "text": "If you answered no, what could you do differently to correct your behaviour?",
                "enabled": true,
                "category_id": "behaviour_quality",
                "category_name": "Behaviour quality",
                "effective_enabled": false
              },
              {
                "id": "RFQ-003",
                "text": "Would another attempt using the identified good behaviours materially improve the outcome? Answer yes or no and state the next corrective action if yes.",
                "enabled": true,
                "category_id": "behaviour_quality",
                "category_name": "Behaviour quality",
                "effective_enabled": false
              },
              {
                "id": "RFQ-004",
                "text": "What harness friction points made this work more difficult?",
                "enabled": true,
                "category_id": "harness_friction",
                "category_name": "Harness friction",
                "effective_enabled": false
              },
              {
                "id": "RFQ-005",
                "text": "What up to three changes would most improve friction in the harness?",
                "enabled": true,
                "category_id": "harness_friction",
                "category_name": "Harness friction",
                "effective_enabled": false
              }
            ]
          },
          "output_hash": "c1b6b635c0bab21120657277f14ef6f839909875f307a3745fa48aee2bd6e449",
          "completed_at": "2026-07-15T17:23:15Z"
        },
        {
          "id": "bundle",
          "action": "reporting.bundle",
          "status": "completed",
          "resolved_input_hash": "aed8ebb688dc3c085dd978d7c4120572173c3cb87e75919e4a937dcca6ef9457",
          "started_at": "2026-07-15T17:23:15Z",
          "output": {
            "contract_version": 1,
            "task": "session_summary",
            "repo": "prd-plugin",
            "policy": {
              "enabled": false,
              "executor": "ai-collab",
              "contract_version": 1,
              "profile": "fast-capable",
              "tasks": [
                "report_summary",
                "session_summary",
                "wiki_synthesis",
                "triage_draft"
              ],
              "fallback": "main",
              "require_source_refs": true,
              "max_input_tokens": 12000,
              "max_output_tokens": 1500,
              "timeout_seconds": 30
            },
            "facts": {
              "requests_by_status": {
                "deferred": 1,
                "implemented": 80,
                "proposed": 1,
                "rejected": 1
              },
              "active_requests": [
                {
                  "id": "REQ-072",
                  "status": "proposed",
                  "severity": "low",
                  "summary": "opencode run-until-done: session.idle is a non-blocking notification, so the stop guard can't force continuation on opencode (currently degrades to a printed reminder, 0.5.95). Investigate whether opencode exposes any vetoable/continuation mechanism (a different event, a permission hook, or a 'continue' API) to enforce run-until-done, or accept the reminder as the permanent ceiling. Low priority — user rarely uses opencode."
                }
              ],
              "active_tracking": [],
              "open_health": [],
              "evidence_count": 105,
              "decision_count": 10
            },
            "findings": [],
            "source_refs": [
              ".prd_plugin/config.json",
              ".prd_plugin/state/decisions.json",
              ".prd_plugin/state/evidence.json",
              ".prd_plugin/state/health.json",
              ".prd_plugin/state/requests.json",
              ".prd_plugin/state/tracking.json",
              "REQ-072"
            ],
            "constraints": {
              "max_input_tokens": 12000,
              "max_output_tokens": 1500,
              "timeout_seconds": 30,
              "require_source_refs": true,
              "no_project_state_writes": true,
              "no_secrets_or_local_session_content": true
            }
          },
          "output_hash": "f61aa7bfac7c2e96e3bf2d3386a95e45d2db52d040f05aff9ea963197eacc3f6",
          "completed_at": "2026-07-15T17:23:15Z"
        },
        {
          "id": "delegated",
          "action": "reporting.delegate",
          "status": "completed",
          "resolved_input_hash": "5bf4dfad88c9958da759cb1561ca5fdd8f3ac9050e938bfde85af5c8d804adc9",
          "started_at": "2026-07-15T17:23:15Z",
          "output": {
            "status": "fallback",
            "action": "main",
            "reason": "disabled"
          },
          "output_hash": "e6085059f197def80ae95add1f328418107bea5436c9bd002530043646a3a95c",
          "completed_at": "2026-07-15T17:23:15Z"
        }
      ],
      "completed_at": "2026-07-15T17:23:15Z"
    },
    {
      "id": "WFR-139",
      "schema_version": "1.0",
      "workflow_id": "session.start",
      "workflow_version": 1,
      "definition_hash": "d0f98da02571e6dd27fec4aed92d3c82af9db75f8b90b997bf665635c7b7f6ca",
      "plan_hash": "b5072615ca3b7e9a3bd85d50d1f069d99ef2a9816b32c03a370745ed7a205536",
      "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
      "inputs": {},
      "idempotency_key": "hook:SessionStart:019f66cf-e7e1-7222-9530-85ac8077e7e3",
      "status": "completed",
      "attempt": 1,
      "created_at": "2026-07-15T17:25:31Z",
      "updated_at": "2026-07-15T17:25:32Z",
      "receipts": [
        {
          "step_id": "config",
          "action": "config.audit",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "3782ec2317c0c8ee7598634310a2804d8aae4735f557498f9d3b8fae7c45e1e5",
          "completed_at": "2026-07-15T17:25:31Z"
        },
        {
          "step_id": "services",
          "action": "services.audit",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "13dcc58bd528f3efa3e6e0fa0853a6eedc376f1f3685fbd4869cbb2b60382ee3",
          "completed_at": "2026-07-15T17:25:31Z"
        },
        {
          "step_id": "state",
          "action": "state.consistency",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "5a1c6e5246defb1b6b6b90ff734db95bece2886b408ab112ed9b8e67222d5568",
          "completed_at": "2026-07-15T17:25:31Z"
        },
        {
          "step_id": "status",
          "action": "state.query",
          "input_hash": "a15231a2142a2a9a85355a8b9cbbccffe01a9c9c2c2fd8c2bc2987cdc481564a",
          "output_hash": "8ba9f7d3cc6705af37de9e3324d1258e21ccacb5ab0b2d7b389ca08885e11187",
          "completed_at": "2026-07-15T17:25:32Z"
        },
        {
          "step_id": "substrate",
          "action": "substrate.preflight",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "a6df426290b4549a59eecaa0519ead9bcc50b7fcb25bd2185ff6047960f19ccb",
          "completed_at": "2026-07-15T17:25:32Z"
        },
        {
          "step_id": "notices",
          "action": "substrate.notices",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "38b904a1cf83df048360fb2480571b749fd98d57e11f1afdffb5a74a78166fea",
          "completed_at": "2026-07-15T17:25:32Z"
        },
        {
          "step_id": "goals",
          "action": "substrate.goals",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "cdfd4de44a28140e686159f34f7b47975954c67e1d1efcef666e985acb136ed8",
          "completed_at": "2026-07-15T17:25:32Z"
        }
      ],
      "steps": [
        {
          "id": "config",
          "action": "config.audit",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-15T17:25:31Z",
          "output": {
            "status": "ok",
            "summary": {
              "settings": 195,
              "mutable": 186,
              "read_only_or_managed": 9,
              "unclassified": 0,
              "unknown": 0,
              "invalid": 0,
              "missing_using_defaults": 0
            },
            "unclassified_keys": [],
            "unknown_keys": [],
            "invalid_values": [],
            "missing_using_defaults": []
          },
          "output_hash": "3782ec2317c0c8ee7598634310a2804d8aae4735f557498f9d3b8fae7c45e1e5",
          "completed_at": "2026-07-15T17:25:31Z"
        },
        {
          "id": "services",
          "action": "services.audit",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-15T17:25:31Z",
          "output": {
            "status": "ok",
            "summary": {
              "critical": 0,
              "high": 0,
              "medium": 0,
              "low": 0
            },
            "findings": []
          },
          "output_hash": "13dcc58bd528f3efa3e6e0fa0853a6eedc376f1f3685fbd4869cbb2b60382ee3",
          "completed_at": "2026-07-15T17:25:31Z"
        },
        {
          "id": "state",
          "action": "state.consistency",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-15T17:25:31Z",
          "output": {
            "status": "ok",
            "repo_root": "D:\\Projects\\prd-plugin",
            "summary": {
              "errors": 0,
              "warnings": 0,
              "infos": 0
            },
            "findings": []
          },
          "output_hash": "5a1c6e5246defb1b6b6b90ff734db95bece2886b408ab112ed9b8e67222d5568",
          "completed_at": "2026-07-15T17:25:31Z"
        },
        {
          "id": "status",
          "action": "state.query",
          "status": "completed",
          "resolved_input_hash": "a15231a2142a2a9a85355a8b9cbbccffe01a9c9c2c2fd8c2bc2987cdc481564a",
          "started_at": "2026-07-15T17:25:32Z",
          "output": {
            "repo_root": "D:\\Projects\\prd-plugin",
            "autonomy_level": "autonomous",
            "requests_by_status": {
              "deferred": 1,
              "implemented": 80,
              "proposed": 1,
              "rejected": 1
            },
            "active_tracking": [],
            "tracking_branches": [],
            "tracking_branch_counts": {},
            "tracking_branch_errors": [],
            "open_health": [],
            "stale_count": 0,
            "skill_usage": {
              "project-decision-policy": 1,
              "project-request-intake": 1,
              "project-test-driven-implementation": 1,
              "project-verification-before-completion": 1,
              "project-llm-wiki": 1
            },
            "wiki_backfill_pending": false,
            "version_update": null
          },
          "output_hash": "8ba9f7d3cc6705af37de9e3324d1258e21ccacb5ab0b2d7b389ca08885e11187",
          "completed_at": "2026-07-15T17:25:32Z"
        },
        {
          "id": "substrate",
          "action": "substrate.preflight",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-15T17:25:32Z",
          "output": {
            "status": "disabled",
            "services": {
              "status": "ok",
              "summary": {
                "critical": 0,
                "high": 0,
                "medium": 0,
                "low": 0
              },
              "findings": []
            },
            "policy": {
              "configured": {
                "enabled": false,
                "mode": "off",
                "capabilities": [
                  "records",
                  "graph",
                  "events"
                ],
                "contract_version": 2,
                "require_source_refs": true,
                "endpoint": "http://127.0.0.1:47124",
                "manual_url": "http://127.0.0.1:47124/utcp.json",
                "knowledge_browse_url": "http://127.0.0.1:5276",
                "auth_env": "AI_COLLAB_API_KEY",
                "timeout_seconds": 5,
                "max_result_bytes": 1048576,
                "cache_ttl_seconds": 60,
                "fallback": "local",
                "automation": {
                  "discovery_on_session_start": true,
                  "knowledge_recall": true,
                  "memory_recall": true,
                  "context_enrichment": true,
                  "notices_on_session_start": false,
                  "goals_sync": false,
                  "telemetry_on_maintenance": false,
                  "reporting_dispatch": true,
                  "judgment_dispatch": true,
                  "verification_execution": true
                }
              },
              "active": false,
              "effective_mode": "off",
              "effective_capabilities": []
            }
          },
          "output_hash": "a6df426290b4549a59eecaa0519ead9bcc50b7fcb25bd2185ff6047960f19ccb",
          "completed_at": "2026-07-15T17:25:32Z"
        },
        {
          "id": "notices",
          "action": "substrate.notices",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-15T17:25:32Z",
          "output": {
            "status": "disabled"
          },
          "output_hash": "38b904a1cf83df048360fb2480571b749fd98d57e11f1afdffb5a74a78166fea",
          "completed_at": "2026-07-15T17:25:32Z"
        },
        {
          "id": "goals",
          "action": "substrate.goals",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-15T17:25:32Z",
          "output": {
            "status": "disabled",
            "created": 0,
            "observed": 0,
            "results": []
          },
          "output_hash": "cdfd4de44a28140e686159f34f7b47975954c67e1d1efcef666e985acb136ed8",
          "completed_at": "2026-07-15T17:25:32Z"
        }
      ],
      "completed_at": "2026-07-15T17:25:32Z"
    },
    {
      "id": "WFR-140",
      "schema_version": "1.0",
      "workflow_id": "session.stop",
      "workflow_version": 1,
      "definition_hash": "0cef7bb3e28321be8f85375c154955a69310ce297e47de3f3b8dd48f77a2f07d",
      "plan_hash": "a5e1d77ac734217487fc418e29c7163f4e81178e25d171e70cd4c999d527d3e8",
      "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
      "inputs": {},
      "idempotency_key": "hook:Stop:019f66cf-e7e1-7222-9530-85ac8077e7e3",
      "status": "completed",
      "attempt": 1,
      "created_at": "2026-07-15T17:25:36Z",
      "updated_at": "2026-07-15T17:25:37Z",
      "receipts": [
        {
          "step_id": "state",
          "action": "state.consistency",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "5a1c6e5246defb1b6b6b90ff734db95bece2886b408ab112ed9b8e67222d5568",
          "completed_at": "2026-07-15T17:25:37Z"
        },
        {
          "step_id": "goals",
          "action": "substrate.goals",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "cdfd4de44a28140e686159f34f7b47975954c67e1d1efcef666e985acb136ed8",
          "completed_at": "2026-07-15T17:25:37Z"
        },
        {
          "step_id": "staleness",
          "action": "staleness.audit",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "1e81cb0ffd0a4d04626920a203b38d2d23a264cd43e807a85d375d69cae8a658",
          "completed_at": "2026-07-15T17:25:37Z"
        },
        {
          "step_id": "reflections",
          "action": "reflection.list",
          "input_hash": "0172e841ab4c13b3a4061f073f9d68a716ec87a8a5d52fde41823385e0582573",
          "output_hash": "c1b6b635c0bab21120657277f14ef6f839909875f307a3745fa48aee2bd6e449",
          "completed_at": "2026-07-15T17:25:37Z"
        },
        {
          "step_id": "bundle",
          "action": "reporting.bundle",
          "input_hash": "aed8ebb688dc3c085dd978d7c4120572173c3cb87e75919e4a937dcca6ef9457",
          "output_hash": "f61aa7bfac7c2e96e3bf2d3386a95e45d2db52d040f05aff9ea963197eacc3f6",
          "completed_at": "2026-07-15T17:25:37Z"
        },
        {
          "step_id": "delegated",
          "action": "reporting.delegate",
          "input_hash": "5bf4dfad88c9958da759cb1561ca5fdd8f3ac9050e938bfde85af5c8d804adc9",
          "output_hash": "e6085059f197def80ae95add1f328418107bea5436c9bd002530043646a3a95c",
          "completed_at": "2026-07-15T17:25:37Z"
        }
      ],
      "steps": [
        {
          "id": "state",
          "action": "state.consistency",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-15T17:25:36Z",
          "output": {
            "status": "ok",
            "repo_root": "D:\\Projects\\prd-plugin",
            "summary": {
              "errors": 0,
              "warnings": 0,
              "infos": 0
            },
            "findings": []
          },
          "output_hash": "5a1c6e5246defb1b6b6b90ff734db95bece2886b408ab112ed9b8e67222d5568",
          "completed_at": "2026-07-15T17:25:37Z"
        },
        {
          "id": "goals",
          "action": "substrate.goals",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-15T17:25:37Z",
          "output": {
            "status": "disabled",
            "created": 0,
            "observed": 0,
            "results": []
          },
          "output_hash": "cdfd4de44a28140e686159f34f7b47975954c67e1d1efcef666e985acb136ed8",
          "completed_at": "2026-07-15T17:25:37Z"
        },
        {
          "id": "staleness",
          "action": "staleness.audit",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-15T17:25:37Z",
          "output": {
            "status": "ok",
            "repo_root": "D:\\Projects\\prd-plugin",
            "counts": {
              "stale": 0
            },
            "stale": []
          },
          "output_hash": "1e81cb0ffd0a4d04626920a203b38d2d23a264cd43e807a85d375d69cae8a658",
          "completed_at": "2026-07-15T17:25:37Z"
        },
        {
          "id": "reflections",
          "action": "reflection.list",
          "status": "completed",
          "resolved_input_hash": "0172e841ab4c13b3a4061f073f9d68a716ec87a8a5d52fde41823385e0582573",
          "started_at": "2026-07-15T17:25:37Z",
          "output": {
            "enabled": false,
            "on_stop": true,
            "max_questions_per_stop": 5,
            "categories": [
              {
                "id": "behaviour_quality",
                "name": "Behaviour quality",
                "enabled": true,
                "question_count": 3
              },
              {
                "id": "harness_friction",
                "name": "Harness friction",
                "enabled": true,
                "question_count": 2
              }
            ],
            "questions": [
              {
                "id": "RFQ-001",
                "text": "Based on the work you just carried out, would you classify your behaviour as good? Answer yes or no and cite observable evidence.",
                "enabled": true,
                "category_id": "behaviour_quality",
                "category_name": "Behaviour quality",
                "effective_enabled": false
              },
              {
                "id": "RFQ-002",
                "text": "If you answered no, what could you do differently to correct your behaviour?",
                "enabled": true,
                "category_id": "behaviour_quality",
                "category_name": "Behaviour quality",
                "effective_enabled": false
              },
              {
                "id": "RFQ-003",
                "text": "Would another attempt using the identified good behaviours materially improve the outcome? Answer yes or no and state the next corrective action if yes.",
                "enabled": true,
                "category_id": "behaviour_quality",
                "category_name": "Behaviour quality",
                "effective_enabled": false
              },
              {
                "id": "RFQ-004",
                "text": "What harness friction points made this work more difficult?",
                "enabled": true,
                "category_id": "harness_friction",
                "category_name": "Harness friction",
                "effective_enabled": false
              },
              {
                "id": "RFQ-005",
                "text": "What up to three changes would most improve friction in the harness?",
                "enabled": true,
                "category_id": "harness_friction",
                "category_name": "Harness friction",
                "effective_enabled": false
              }
            ]
          },
          "output_hash": "c1b6b635c0bab21120657277f14ef6f839909875f307a3745fa48aee2bd6e449",
          "completed_at": "2026-07-15T17:25:37Z"
        },
        {
          "id": "bundle",
          "action": "reporting.bundle",
          "status": "completed",
          "resolved_input_hash": "aed8ebb688dc3c085dd978d7c4120572173c3cb87e75919e4a937dcca6ef9457",
          "started_at": "2026-07-15T17:25:37Z",
          "output": {
            "contract_version": 1,
            "task": "session_summary",
            "repo": "prd-plugin",
            "policy": {
              "enabled": false,
              "executor": "ai-collab",
              "contract_version": 1,
              "profile": "fast-capable",
              "tasks": [
                "report_summary",
                "session_summary",
                "wiki_synthesis",
                "triage_draft"
              ],
              "fallback": "main",
              "require_source_refs": true,
              "max_input_tokens": 12000,
              "max_output_tokens": 1500,
              "timeout_seconds": 30
            },
            "facts": {
              "requests_by_status": {
                "deferred": 1,
                "implemented": 80,
                "proposed": 1,
                "rejected": 1
              },
              "active_requests": [
                {
                  "id": "REQ-072",
                  "status": "proposed",
                  "severity": "low",
                  "summary": "opencode run-until-done: session.idle is a non-blocking notification, so the stop guard can't force continuation on opencode (currently degrades to a printed reminder, 0.5.95). Investigate whether opencode exposes any vetoable/continuation mechanism (a different event, a permission hook, or a 'continue' API) to enforce run-until-done, or accept the reminder as the permanent ceiling. Low priority — user rarely uses opencode."
                }
              ],
              "active_tracking": [],
              "open_health": [],
              "evidence_count": 105,
              "decision_count": 10
            },
            "findings": [],
            "source_refs": [
              ".prd_plugin/config.json",
              ".prd_plugin/state/decisions.json",
              ".prd_plugin/state/evidence.json",
              ".prd_plugin/state/health.json",
              ".prd_plugin/state/requests.json",
              ".prd_plugin/state/tracking.json",
              "REQ-072"
            ],
            "constraints": {
              "max_input_tokens": 12000,
              "max_output_tokens": 1500,
              "timeout_seconds": 30,
              "require_source_refs": true,
              "no_project_state_writes": true,
              "no_secrets_or_local_session_content": true
            }
          },
          "output_hash": "f61aa7bfac7c2e96e3bf2d3386a95e45d2db52d040f05aff9ea963197eacc3f6",
          "completed_at": "2026-07-15T17:25:37Z"
        },
        {
          "id": "delegated",
          "action": "reporting.delegate",
          "status": "completed",
          "resolved_input_hash": "5bf4dfad88c9958da759cb1561ca5fdd8f3ac9050e938bfde85af5c8d804adc9",
          "started_at": "2026-07-15T17:25:37Z",
          "output": {
            "status": "fallback",
            "action": "main",
            "reason": "disabled"
          },
          "output_hash": "e6085059f197def80ae95add1f328418107bea5436c9bd002530043646a3a95c",
          "completed_at": "2026-07-15T17:25:37Z"
        }
      ],
      "completed_at": "2026-07-15T17:25:37Z"
    },
    {
      "id": "WFR-141",
      "schema_version": "1.0",
      "workflow_id": "session.start",
      "workflow_version": 1,
      "definition_hash": "d0f98da02571e6dd27fec4aed92d3c82af9db75f8b90b997bf665635c7b7f6ca",
      "plan_hash": "b5072615ca3b7e9a3bd85d50d1f069d99ef2a9816b32c03a370745ed7a205536",
      "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
      "inputs": {},
      "idempotency_key": "hook:SessionStart:019f66e0-23fd-7d80-99b6-41166d89c41e",
      "status": "completed",
      "attempt": 1,
      "created_at": "2026-07-15T17:43:16Z",
      "updated_at": "2026-07-15T17:43:17Z",
      "receipts": [
        {
          "step_id": "config",
          "action": "config.audit",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "3782ec2317c0c8ee7598634310a2804d8aae4735f557498f9d3b8fae7c45e1e5",
          "completed_at": "2026-07-15T17:43:16Z"
        },
        {
          "step_id": "services",
          "action": "services.audit",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "13dcc58bd528f3efa3e6e0fa0853a6eedc376f1f3685fbd4869cbb2b60382ee3",
          "completed_at": "2026-07-15T17:43:16Z"
        },
        {
          "step_id": "state",
          "action": "state.consistency",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "5a1c6e5246defb1b6b6b90ff734db95bece2886b408ab112ed9b8e67222d5568",
          "completed_at": "2026-07-15T17:43:17Z"
        },
        {
          "step_id": "status",
          "action": "state.query",
          "input_hash": "a15231a2142a2a9a85355a8b9cbbccffe01a9c9c2c2fd8c2bc2987cdc481564a",
          "output_hash": "8ba9f7d3cc6705af37de9e3324d1258e21ccacb5ab0b2d7b389ca08885e11187",
          "completed_at": "2026-07-15T17:43:17Z"
        },
        {
          "step_id": "substrate",
          "action": "substrate.preflight",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "a6df426290b4549a59eecaa0519ead9bcc50b7fcb25bd2185ff6047960f19ccb",
          "completed_at": "2026-07-15T17:43:17Z"
        },
        {
          "step_id": "notices",
          "action": "substrate.notices",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "38b904a1cf83df048360fb2480571b749fd98d57e11f1afdffb5a74a78166fea",
          "completed_at": "2026-07-15T17:43:17Z"
        },
        {
          "step_id": "goals",
          "action": "substrate.goals",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "cdfd4de44a28140e686159f34f7b47975954c67e1d1efcef666e985acb136ed8",
          "completed_at": "2026-07-15T17:43:17Z"
        }
      ],
      "steps": [
        {
          "id": "config",
          "action": "config.audit",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-15T17:43:16Z",
          "output": {
            "status": "ok",
            "summary": {
              "settings": 195,
              "mutable": 186,
              "read_only_or_managed": 9,
              "unclassified": 0,
              "unknown": 0,
              "invalid": 0,
              "missing_using_defaults": 0
            },
            "unclassified_keys": [],
            "unknown_keys": [],
            "invalid_values": [],
            "missing_using_defaults": []
          },
          "output_hash": "3782ec2317c0c8ee7598634310a2804d8aae4735f557498f9d3b8fae7c45e1e5",
          "completed_at": "2026-07-15T17:43:16Z"
        },
        {
          "id": "services",
          "action": "services.audit",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-15T17:43:16Z",
          "output": {
            "status": "ok",
            "summary": {
              "critical": 0,
              "high": 0,
              "medium": 0,
              "low": 0
            },
            "findings": []
          },
          "output_hash": "13dcc58bd528f3efa3e6e0fa0853a6eedc376f1f3685fbd4869cbb2b60382ee3",
          "completed_at": "2026-07-15T17:43:16Z"
        },
        {
          "id": "state",
          "action": "state.consistency",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-15T17:43:16Z",
          "output": {
            "status": "ok",
            "repo_root": "D:\\Projects\\prd-plugin",
            "summary": {
              "errors": 0,
              "warnings": 0,
              "infos": 0
            },
            "findings": []
          },
          "output_hash": "5a1c6e5246defb1b6b6b90ff734db95bece2886b408ab112ed9b8e67222d5568",
          "completed_at": "2026-07-15T17:43:17Z"
        },
        {
          "id": "status",
          "action": "state.query",
          "status": "completed",
          "resolved_input_hash": "a15231a2142a2a9a85355a8b9cbbccffe01a9c9c2c2fd8c2bc2987cdc481564a",
          "started_at": "2026-07-15T17:43:17Z",
          "output": {
            "repo_root": "D:\\Projects\\prd-plugin",
            "autonomy_level": "autonomous",
            "requests_by_status": {
              "deferred": 1,
              "implemented": 80,
              "proposed": 1,
              "rejected": 1
            },
            "active_tracking": [],
            "tracking_branches": [],
            "tracking_branch_counts": {},
            "tracking_branch_errors": [],
            "open_health": [],
            "stale_count": 0,
            "skill_usage": {
              "project-decision-policy": 1,
              "project-request-intake": 1,
              "project-test-driven-implementation": 1,
              "project-verification-before-completion": 1,
              "project-llm-wiki": 1
            },
            "wiki_backfill_pending": false,
            "version_update": null
          },
          "output_hash": "8ba9f7d3cc6705af37de9e3324d1258e21ccacb5ab0b2d7b389ca08885e11187",
          "completed_at": "2026-07-15T17:43:17Z"
        },
        {
          "id": "substrate",
          "action": "substrate.preflight",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-15T17:43:17Z",
          "output": {
            "status": "disabled",
            "services": {
              "status": "ok",
              "summary": {
                "critical": 0,
                "high": 0,
                "medium": 0,
                "low": 0
              },
              "findings": []
            },
            "policy": {
              "configured": {
                "enabled": false,
                "mode": "off",
                "capabilities": [
                  "records",
                  "graph",
                  "events"
                ],
                "contract_version": 2,
                "require_source_refs": true,
                "endpoint": "http://127.0.0.1:47124",
                "manual_url": "http://127.0.0.1:47124/utcp.json",
                "knowledge_browse_url": "http://127.0.0.1:5276",
                "auth_env": "AI_COLLAB_API_KEY",
                "timeout_seconds": 5,
                "max_result_bytes": 1048576,
                "cache_ttl_seconds": 60,
                "fallback": "local",
                "automation": {
                  "discovery_on_session_start": true,
                  "knowledge_recall": true,
                  "memory_recall": true,
                  "context_enrichment": true,
                  "notices_on_session_start": false,
                  "goals_sync": false,
                  "telemetry_on_maintenance": false,
                  "reporting_dispatch": true,
                  "judgment_dispatch": true,
                  "verification_execution": true
                }
              },
              "active": false,
              "effective_mode": "off",
              "effective_capabilities": []
            }
          },
          "output_hash": "a6df426290b4549a59eecaa0519ead9bcc50b7fcb25bd2185ff6047960f19ccb",
          "completed_at": "2026-07-15T17:43:17Z"
        },
        {
          "id": "notices",
          "action": "substrate.notices",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-15T17:43:17Z",
          "output": {
            "status": "disabled"
          },
          "output_hash": "38b904a1cf83df048360fb2480571b749fd98d57e11f1afdffb5a74a78166fea",
          "completed_at": "2026-07-15T17:43:17Z"
        },
        {
          "id": "goals",
          "action": "substrate.goals",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-15T17:43:17Z",
          "output": {
            "status": "disabled",
            "created": 0,
            "observed": 0,
            "results": []
          },
          "output_hash": "cdfd4de44a28140e686159f34f7b47975954c67e1d1efcef666e985acb136ed8",
          "completed_at": "2026-07-15T17:43:17Z"
        }
      ],
      "completed_at": "2026-07-15T17:43:17Z"
    },
    {
      "id": "WFR-142",
      "schema_version": "1.0",
      "workflow_id": "session.stop",
      "workflow_version": 1,
      "definition_hash": "0cef7bb3e28321be8f85375c154955a69310ce297e47de3f3b8dd48f77a2f07d",
      "plan_hash": "a5e1d77ac734217487fc418e29c7163f4e81178e25d171e70cd4c999d527d3e8",
      "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
      "inputs": {},
      "idempotency_key": "hook:Stop:019f66e0-23fd-7d80-99b6-41166d89c41e",
      "status": "completed",
      "attempt": 1,
      "created_at": "2026-07-15T17:43:47Z",
      "updated_at": "2026-07-15T17:43:48Z",
      "receipts": [
        {
          "step_id": "state",
          "action": "state.consistency",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "5a1c6e5246defb1b6b6b90ff734db95bece2886b408ab112ed9b8e67222d5568",
          "completed_at": "2026-07-15T17:43:48Z"
        },
        {
          "step_id": "goals",
          "action": "substrate.goals",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "cdfd4de44a28140e686159f34f7b47975954c67e1d1efcef666e985acb136ed8",
          "completed_at": "2026-07-15T17:43:48Z"
        },
        {
          "step_id": "staleness",
          "action": "staleness.audit",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "1e81cb0ffd0a4d04626920a203b38d2d23a264cd43e807a85d375d69cae8a658",
          "completed_at": "2026-07-15T17:43:48Z"
        },
        {
          "step_id": "reflections",
          "action": "reflection.list",
          "input_hash": "0172e841ab4c13b3a4061f073f9d68a716ec87a8a5d52fde41823385e0582573",
          "output_hash": "c1b6b635c0bab21120657277f14ef6f839909875f307a3745fa48aee2bd6e449",
          "completed_at": "2026-07-15T17:43:48Z"
        },
        {
          "step_id": "bundle",
          "action": "reporting.bundle",
          "input_hash": "aed8ebb688dc3c085dd978d7c4120572173c3cb87e75919e4a937dcca6ef9457",
          "output_hash": "f61aa7bfac7c2e96e3bf2d3386a95e45d2db52d040f05aff9ea963197eacc3f6",
          "completed_at": "2026-07-15T17:43:48Z"
        },
        {
          "step_id": "delegated",
          "action": "reporting.delegate",
          "input_hash": "5bf4dfad88c9958da759cb1561ca5fdd8f3ac9050e938bfde85af5c8d804adc9",
          "output_hash": "e6085059f197def80ae95add1f328418107bea5436c9bd002530043646a3a95c",
          "completed_at": "2026-07-15T17:43:48Z"
        }
      ],
      "steps": [
        {
          "id": "state",
          "action": "state.consistency",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-15T17:43:47Z",
          "output": {
            "status": "ok",
            "repo_root": "D:\\Projects\\prd-plugin",
            "summary": {
              "errors": 0,
              "warnings": 0,
              "infos": 0
            },
            "findings": []
          },
          "output_hash": "5a1c6e5246defb1b6b6b90ff734db95bece2886b408ab112ed9b8e67222d5568",
          "completed_at": "2026-07-15T17:43:48Z"
        },
        {
          "id": "goals",
          "action": "substrate.goals",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-15T17:43:48Z",
          "output": {
            "status": "disabled",
            "created": 0,
            "observed": 0,
            "results": []
          },
          "output_hash": "cdfd4de44a28140e686159f34f7b47975954c67e1d1efcef666e985acb136ed8",
          "completed_at": "2026-07-15T17:43:48Z"
        },
        {
          "id": "staleness",
          "action": "staleness.audit",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-15T17:43:48Z",
          "output": {
            "status": "ok",
            "repo_root": "D:\\Projects\\prd-plugin",
            "counts": {
              "stale": 0
            },
            "stale": []
          },
          "output_hash": "1e81cb0ffd0a4d04626920a203b38d2d23a264cd43e807a85d375d69cae8a658",
          "completed_at": "2026-07-15T17:43:48Z"
        },
        {
          "id": "reflections",
          "action": "reflection.list",
          "status": "completed",
          "resolved_input_hash": "0172e841ab4c13b3a4061f073f9d68a716ec87a8a5d52fde41823385e0582573",
          "started_at": "2026-07-15T17:43:48Z",
          "output": {
            "enabled": false,
            "on_stop": true,
            "max_questions_per_stop": 5,
            "categories": [
              {
                "id": "behaviour_quality",
                "name": "Behaviour quality",
                "enabled": true,
                "question_count": 3
              },
              {
                "id": "harness_friction",
                "name": "Harness friction",
                "enabled": true,
                "question_count": 2
              }
            ],
            "questions": [
              {
                "id": "RFQ-001",
                "text": "Based on the work you just carried out, would you classify your behaviour as good? Answer yes or no and cite observable evidence.",
                "enabled": true,
                "category_id": "behaviour_quality",
                "category_name": "Behaviour quality",
                "effective_enabled": false
              },
              {
                "id": "RFQ-002",
                "text": "If you answered no, what could you do differently to correct your behaviour?",
                "enabled": true,
                "category_id": "behaviour_quality",
                "category_name": "Behaviour quality",
                "effective_enabled": false
              },
              {
                "id": "RFQ-003",
                "text": "Would another attempt using the identified good behaviours materially improve the outcome? Answer yes or no and state the next corrective action if yes.",
                "enabled": true,
                "category_id": "behaviour_quality",
                "category_name": "Behaviour quality",
                "effective_enabled": false
              },
              {
                "id": "RFQ-004",
                "text": "What harness friction points made this work more difficult?",
                "enabled": true,
                "category_id": "harness_friction",
                "category_name": "Harness friction",
                "effective_enabled": false
              },
              {
                "id": "RFQ-005",
                "text": "What up to three changes would most improve friction in the harness?",
                "enabled": true,
                "category_id": "harness_friction",
                "category_name": "Harness friction",
                "effective_enabled": false
              }
            ]
          },
          "output_hash": "c1b6b635c0bab21120657277f14ef6f839909875f307a3745fa48aee2bd6e449",
          "completed_at": "2026-07-15T17:43:48Z"
        },
        {
          "id": "bundle",
          "action": "reporting.bundle",
          "status": "completed",
          "resolved_input_hash": "aed8ebb688dc3c085dd978d7c4120572173c3cb87e75919e4a937dcca6ef9457",
          "started_at": "2026-07-15T17:43:48Z",
          "output": {
            "contract_version": 1,
            "task": "session_summary",
            "repo": "prd-plugin",
            "policy": {
              "enabled": false,
              "executor": "ai-collab",
              "contract_version": 1,
              "profile": "fast-capable",
              "tasks": [
                "report_summary",
                "session_summary",
                "wiki_synthesis",
                "triage_draft"
              ],
              "fallback": "main",
              "require_source_refs": true,
              "max_input_tokens": 12000,
              "max_output_tokens": 1500,
              "timeout_seconds": 30
            },
            "facts": {
              "requests_by_status": {
                "deferred": 1,
                "implemented": 80,
                "proposed": 1,
                "rejected": 1
              },
              "active_requests": [
                {
                  "id": "REQ-072",
                  "status": "proposed",
                  "severity": "low",
                  "summary": "opencode run-until-done: session.idle is a non-blocking notification, so the stop guard can't force continuation on opencode (currently degrades to a printed reminder, 0.5.95). Investigate whether opencode exposes any vetoable/continuation mechanism (a different event, a permission hook, or a 'continue' API) to enforce run-until-done, or accept the reminder as the permanent ceiling. Low priority — user rarely uses opencode."
                }
              ],
              "active_tracking": [],
              "open_health": [],
              "evidence_count": 105,
              "decision_count": 10
            },
            "findings": [],
            "source_refs": [
              ".prd_plugin/config.json",
              ".prd_plugin/state/decisions.json",
              ".prd_plugin/state/evidence.json",
              ".prd_plugin/state/health.json",
              ".prd_plugin/state/requests.json",
              ".prd_plugin/state/tracking.json",
              "REQ-072"
            ],
            "constraints": {
              "max_input_tokens": 12000,
              "max_output_tokens": 1500,
              "timeout_seconds": 30,
              "require_source_refs": true,
              "no_project_state_writes": true,
              "no_secrets_or_local_session_content": true
            }
          },
          "output_hash": "f61aa7bfac7c2e96e3bf2d3386a95e45d2db52d040f05aff9ea963197eacc3f6",
          "completed_at": "2026-07-15T17:43:48Z"
        },
        {
          "id": "delegated",
          "action": "reporting.delegate",
          "status": "completed",
          "resolved_input_hash": "5bf4dfad88c9958da759cb1561ca5fdd8f3ac9050e938bfde85af5c8d804adc9",
          "started_at": "2026-07-15T17:43:48Z",
          "output": {
            "status": "fallback",
            "action": "main",
            "reason": "disabled"
          },
          "output_hash": "e6085059f197def80ae95add1f328418107bea5436c9bd002530043646a3a95c",
          "completed_at": "2026-07-15T17:43:48Z"
        }
      ],
      "completed_at": "2026-07-15T17:43:48Z"
    },
    {
      "id": "WFR-143",
      "schema_version": "1.0",
      "workflow_id": "session.start",
      "workflow_version": 1,
      "definition_hash": "d0f98da02571e6dd27fec4aed92d3c82af9db75f8b90b997bf665635c7b7f6ca",
      "plan_hash": "b5072615ca3b7e9a3bd85d50d1f069d99ef2a9816b32c03a370745ed7a205536",
      "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
      "inputs": {},
      "idempotency_key": "hook:SessionStart:019f66e1-892e-7932-9805-41ebbb7c616c",
      "status": "completed",
      "attempt": 1,
      "created_at": "2026-07-15T17:44:47Z",
      "updated_at": "2026-07-15T17:44:49Z",
      "receipts": [
        {
          "step_id": "config",
          "action": "config.audit",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "3782ec2317c0c8ee7598634310a2804d8aae4735f557498f9d3b8fae7c45e1e5",
          "completed_at": "2026-07-15T17:44:47Z"
        },
        {
          "step_id": "services",
          "action": "services.audit",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "13dcc58bd528f3efa3e6e0fa0853a6eedc376f1f3685fbd4869cbb2b60382ee3",
          "completed_at": "2026-07-15T17:44:47Z"
        },
        {
          "step_id": "state",
          "action": "state.consistency",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "5a1c6e5246defb1b6b6b90ff734db95bece2886b408ab112ed9b8e67222d5568",
          "completed_at": "2026-07-15T17:44:48Z"
        },
        {
          "step_id": "status",
          "action": "state.query",
          "input_hash": "a15231a2142a2a9a85355a8b9cbbccffe01a9c9c2c2fd8c2bc2987cdc481564a",
          "output_hash": "8ba9f7d3cc6705af37de9e3324d1258e21ccacb5ab0b2d7b389ca08885e11187",
          "completed_at": "2026-07-15T17:44:48Z"
        },
        {
          "step_id": "substrate",
          "action": "substrate.preflight",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "a6df426290b4549a59eecaa0519ead9bcc50b7fcb25bd2185ff6047960f19ccb",
          "completed_at": "2026-07-15T17:44:49Z"
        },
        {
          "step_id": "notices",
          "action": "substrate.notices",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "38b904a1cf83df048360fb2480571b749fd98d57e11f1afdffb5a74a78166fea",
          "completed_at": "2026-07-15T17:44:49Z"
        },
        {
          "step_id": "goals",
          "action": "substrate.goals",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "cdfd4de44a28140e686159f34f7b47975954c67e1d1efcef666e985acb136ed8",
          "completed_at": "2026-07-15T17:44:49Z"
        }
      ],
      "steps": [
        {
          "id": "config",
          "action": "config.audit",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-15T17:44:47Z",
          "output": {
            "status": "ok",
            "summary": {
              "settings": 195,
              "mutable": 186,
              "read_only_or_managed": 9,
              "unclassified": 0,
              "unknown": 0,
              "invalid": 0,
              "missing_using_defaults": 0
            },
            "unclassified_keys": [],
            "unknown_keys": [],
            "invalid_values": [],
            "missing_using_defaults": []
          },
          "output_hash": "3782ec2317c0c8ee7598634310a2804d8aae4735f557498f9d3b8fae7c45e1e5",
          "completed_at": "2026-07-15T17:44:47Z"
        },
        {
          "id": "services",
          "action": "services.audit",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-15T17:44:47Z",
          "output": {
            "status": "ok",
            "summary": {
              "critical": 0,
              "high": 0,
              "medium": 0,
              "low": 0
            },
            "findings": []
          },
          "output_hash": "13dcc58bd528f3efa3e6e0fa0853a6eedc376f1f3685fbd4869cbb2b60382ee3",
          "completed_at": "2026-07-15T17:44:47Z"
        },
        {
          "id": "state",
          "action": "state.consistency",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-15T17:44:47Z",
          "output": {
            "status": "ok",
            "repo_root": "D:\\Projects\\prd-plugin",
            "summary": {
              "errors": 0,
              "warnings": 0,
              "infos": 0
            },
            "findings": []
          },
          "output_hash": "5a1c6e5246defb1b6b6b90ff734db95bece2886b408ab112ed9b8e67222d5568",
          "completed_at": "2026-07-15T17:44:48Z"
        },
        {
          "id": "status",
          "action": "state.query",
          "status": "completed",
          "resolved_input_hash": "a15231a2142a2a9a85355a8b9cbbccffe01a9c9c2c2fd8c2bc2987cdc481564a",
          "started_at": "2026-07-15T17:44:48Z",
          "output": {
            "repo_root": "D:\\Projects\\prd-plugin",
            "autonomy_level": "autonomous",
            "requests_by_status": {
              "deferred": 1,
              "implemented": 80,
              "proposed": 1,
              "rejected": 1
            },
            "active_tracking": [],
            "tracking_branches": [],
            "tracking_branch_counts": {},
            "tracking_branch_errors": [],
            "open_health": [],
            "stale_count": 0,
            "skill_usage": {
              "project-decision-policy": 1,
              "project-request-intake": 1,
              "project-test-driven-implementation": 1,
              "project-verification-before-completion": 1,
              "project-llm-wiki": 1
            },
            "wiki_backfill_pending": false,
            "version_update": null
          },
          "output_hash": "8ba9f7d3cc6705af37de9e3324d1258e21ccacb5ab0b2d7b389ca08885e11187",
          "completed_at": "2026-07-15T17:44:48Z"
        },
        {
          "id": "substrate",
          "action": "substrate.preflight",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-15T17:44:48Z",
          "output": {
            "status": "disabled",
            "services": {
              "status": "ok",
              "summary": {
                "critical": 0,
                "high": 0,
                "medium": 0,
                "low": 0
              },
              "findings": []
            },
            "policy": {
              "configured": {
                "enabled": false,
                "mode": "off",
                "capabilities": [
                  "records",
                  "graph",
                  "events"
                ],
                "contract_version": 2,
                "require_source_refs": true,
                "endpoint": "http://127.0.0.1:47124",
                "manual_url": "http://127.0.0.1:47124/utcp.json",
                "knowledge_browse_url": "http://127.0.0.1:5276",
                "auth_env": "AI_COLLAB_API_KEY",
                "timeout_seconds": 5,
                "max_result_bytes": 1048576,
                "cache_ttl_seconds": 60,
                "fallback": "local",
                "automation": {
                  "discovery_on_session_start": true,
                  "knowledge_recall": true,
                  "memory_recall": true,
                  "context_enrichment": true,
                  "notices_on_session_start": false,
                  "goals_sync": false,
                  "telemetry_on_maintenance": false,
                  "reporting_dispatch": true,
                  "judgment_dispatch": true,
                  "verification_execution": true
                }
              },
              "active": false,
              "effective_mode": "off",
              "effective_capabilities": []
            }
          },
          "output_hash": "a6df426290b4549a59eecaa0519ead9bcc50b7fcb25bd2185ff6047960f19ccb",
          "completed_at": "2026-07-15T17:44:49Z"
        },
        {
          "id": "notices",
          "action": "substrate.notices",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-15T17:44:49Z",
          "output": {
            "status": "disabled"
          },
          "output_hash": "38b904a1cf83df048360fb2480571b749fd98d57e11f1afdffb5a74a78166fea",
          "completed_at": "2026-07-15T17:44:49Z"
        },
        {
          "id": "goals",
          "action": "substrate.goals",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-15T17:44:49Z",
          "output": {
            "status": "disabled",
            "created": 0,
            "observed": 0,
            "results": []
          },
          "output_hash": "cdfd4de44a28140e686159f34f7b47975954c67e1d1efcef666e985acb136ed8",
          "completed_at": "2026-07-15T17:44:49Z"
        }
      ],
      "completed_at": "2026-07-15T17:44:49Z"
    },
    {
      "id": "WFR-144",
      "schema_version": "1.0",
      "workflow_id": "session.stop",
      "workflow_version": 1,
      "definition_hash": "0cef7bb3e28321be8f85375c154955a69310ce297e47de3f3b8dd48f77a2f07d",
      "plan_hash": "a5e1d77ac734217487fc418e29c7163f4e81178e25d171e70cd4c999d527d3e8",
      "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
      "inputs": {},
      "idempotency_key": "hook:Stop:019f66e1-892e-7932-9805-41ebbb7c616c",
      "status": "completed",
      "attempt": 1,
      "created_at": "2026-07-15T17:44:52Z",
      "updated_at": "2026-07-15T17:44:53Z",
      "receipts": [
        {
          "step_id": "state",
          "action": "state.consistency",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "5a1c6e5246defb1b6b6b90ff734db95bece2886b408ab112ed9b8e67222d5568",
          "completed_at": "2026-07-15T17:44:53Z"
        },
        {
          "step_id": "goals",
          "action": "substrate.goals",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "cdfd4de44a28140e686159f34f7b47975954c67e1d1efcef666e985acb136ed8",
          "completed_at": "2026-07-15T17:44:53Z"
        },
        {
          "step_id": "staleness",
          "action": "staleness.audit",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "1e81cb0ffd0a4d04626920a203b38d2d23a264cd43e807a85d375d69cae8a658",
          "completed_at": "2026-07-15T17:44:53Z"
        },
        {
          "step_id": "reflections",
          "action": "reflection.list",
          "input_hash": "0172e841ab4c13b3a4061f073f9d68a716ec87a8a5d52fde41823385e0582573",
          "output_hash": "c1b6b635c0bab21120657277f14ef6f839909875f307a3745fa48aee2bd6e449",
          "completed_at": "2026-07-15T17:44:53Z"
        },
        {
          "step_id": "bundle",
          "action": "reporting.bundle",
          "input_hash": "aed8ebb688dc3c085dd978d7c4120572173c3cb87e75919e4a937dcca6ef9457",
          "output_hash": "f61aa7bfac7c2e96e3bf2d3386a95e45d2db52d040f05aff9ea963197eacc3f6",
          "completed_at": "2026-07-15T17:44:53Z"
        },
        {
          "step_id": "delegated",
          "action": "reporting.delegate",
          "input_hash": "5bf4dfad88c9958da759cb1561ca5fdd8f3ac9050e938bfde85af5c8d804adc9",
          "output_hash": "e6085059f197def80ae95add1f328418107bea5436c9bd002530043646a3a95c",
          "completed_at": "2026-07-15T17:44:53Z"
        }
      ],
      "steps": [
        {
          "id": "state",
          "action": "state.consistency",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-15T17:44:52Z",
          "output": {
            "status": "ok",
            "repo_root": "D:\\Projects\\prd-plugin",
            "summary": {
              "errors": 0,
              "warnings": 0,
              "infos": 0
            },
            "findings": []
          },
          "output_hash": "5a1c6e5246defb1b6b6b90ff734db95bece2886b408ab112ed9b8e67222d5568",
          "completed_at": "2026-07-15T17:44:53Z"
        },
        {
          "id": "goals",
          "action": "substrate.goals",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-15T17:44:53Z",
          "output": {
            "status": "disabled",
            "created": 0,
            "observed": 0,
            "results": []
          },
          "output_hash": "cdfd4de44a28140e686159f34f7b47975954c67e1d1efcef666e985acb136ed8",
          "completed_at": "2026-07-15T17:44:53Z"
        },
        {
          "id": "staleness",
          "action": "staleness.audit",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-15T17:44:53Z",
          "output": {
            "status": "ok",
            "repo_root": "D:\\Projects\\prd-plugin",
            "counts": {
              "stale": 0
            },
            "stale": []
          },
          "output_hash": "1e81cb0ffd0a4d04626920a203b38d2d23a264cd43e807a85d375d69cae8a658",
          "completed_at": "2026-07-15T17:44:53Z"
        },
        {
          "id": "reflections",
          "action": "reflection.list",
          "status": "completed",
          "resolved_input_hash": "0172e841ab4c13b3a4061f073f9d68a716ec87a8a5d52fde41823385e0582573",
          "started_at": "2026-07-15T17:44:53Z",
          "output": {
            "enabled": false,
            "on_stop": true,
            "max_questions_per_stop": 5,
            "categories": [
              {
                "id": "behaviour_quality",
                "name": "Behaviour quality",
                "enabled": true,
                "question_count": 3
              },
              {
                "id": "harness_friction",
                "name": "Harness friction",
                "enabled": true,
                "question_count": 2
              }
            ],
            "questions": [
              {
                "id": "RFQ-001",
                "text": "Based on the work you just carried out, would you classify your behaviour as good? Answer yes or no and cite observable evidence.",
                "enabled": true,
                "category_id": "behaviour_quality",
                "category_name": "Behaviour quality",
                "effective_enabled": false
              },
              {
                "id": "RFQ-002",
                "text": "If you answered no, what could you do differently to correct your behaviour?",
                "enabled": true,
                "category_id": "behaviour_quality",
                "category_name": "Behaviour quality",
                "effective_enabled": false
              },
              {
                "id": "RFQ-003",
                "text": "Would another attempt using the identified good behaviours materially improve the outcome? Answer yes or no and state the next corrective action if yes.",
                "enabled": true,
                "category_id": "behaviour_quality",
                "category_name": "Behaviour quality",
                "effective_enabled": false
              },
              {
                "id": "RFQ-004",
                "text": "What harness friction points made this work more difficult?",
                "enabled": true,
                "category_id": "harness_friction",
                "category_name": "Harness friction",
                "effective_enabled": false
              },
              {
                "id": "RFQ-005",
                "text": "What up to three changes would most improve friction in the harness?",
                "enabled": true,
                "category_id": "harness_friction",
                "category_name": "Harness friction",
                "effective_enabled": false
              }
            ]
          },
          "output_hash": "c1b6b635c0bab21120657277f14ef6f839909875f307a3745fa48aee2bd6e449",
          "completed_at": "2026-07-15T17:44:53Z"
        },
        {
          "id": "bundle",
          "action": "reporting.bundle",
          "status": "completed",
          "resolved_input_hash": "aed8ebb688dc3c085dd978d7c4120572173c3cb87e75919e4a937dcca6ef9457",
          "started_at": "2026-07-15T17:44:53Z",
          "output": {
            "contract_version": 1,
            "task": "session_summary",
            "repo": "prd-plugin",
            "policy": {
              "enabled": false,
              "executor": "ai-collab",
              "contract_version": 1,
              "profile": "fast-capable",
              "tasks": [
                "report_summary",
                "session_summary",
                "wiki_synthesis",
                "triage_draft"
              ],
              "fallback": "main",
              "require_source_refs": true,
              "max_input_tokens": 12000,
              "max_output_tokens": 1500,
              "timeout_seconds": 30
            },
            "facts": {
              "requests_by_status": {
                "deferred": 1,
                "implemented": 80,
                "proposed": 1,
                "rejected": 1
              },
              "active_requests": [
                {
                  "id": "REQ-072",
                  "status": "proposed",
                  "severity": "low",
                  "summary": "opencode run-until-done: session.idle is a non-blocking notification, so the stop guard can't force continuation on opencode (currently degrades to a printed reminder, 0.5.95). Investigate whether opencode exposes any vetoable/continuation mechanism (a different event, a permission hook, or a 'continue' API) to enforce run-until-done, or accept the reminder as the permanent ceiling. Low priority — user rarely uses opencode."
                }
              ],
              "active_tracking": [],
              "open_health": [],
              "evidence_count": 105,
              "decision_count": 10
            },
            "findings": [],
            "source_refs": [
              ".prd_plugin/config.json",
              ".prd_plugin/state/decisions.json",
              ".prd_plugin/state/evidence.json",
              ".prd_plugin/state/health.json",
              ".prd_plugin/state/requests.json",
              ".prd_plugin/state/tracking.json",
              "REQ-072"
            ],
            "constraints": {
              "max_input_tokens": 12000,
              "max_output_tokens": 1500,
              "timeout_seconds": 30,
              "require_source_refs": true,
              "no_project_state_writes": true,
              "no_secrets_or_local_session_content": true
            }
          },
          "output_hash": "f61aa7bfac7c2e96e3bf2d3386a95e45d2db52d040f05aff9ea963197eacc3f6",
          "completed_at": "2026-07-15T17:44:53Z"
        },
        {
          "id": "delegated",
          "action": "reporting.delegate",
          "status": "completed",
          "resolved_input_hash": "5bf4dfad88c9958da759cb1561ca5fdd8f3ac9050e938bfde85af5c8d804adc9",
          "started_at": "2026-07-15T17:44:53Z",
          "output": {
            "status": "fallback",
            "action": "main",
            "reason": "disabled"
          },
          "output_hash": "e6085059f197def80ae95add1f328418107bea5436c9bd002530043646a3a95c",
          "completed_at": "2026-07-15T17:44:53Z"
        }
      ],
      "completed_at": "2026-07-15T17:44:53Z"
    },
    {
      "id": "WFR-145",
      "schema_version": "1.0",
      "workflow_id": "session.start",
      "workflow_version": 1,
      "definition_hash": "d0f98da02571e6dd27fec4aed92d3c82af9db75f8b90b997bf665635c7b7f6ca",
      "plan_hash": "b5072615ca3b7e9a3bd85d50d1f069d99ef2a9816b32c03a370745ed7a205536",
      "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
      "inputs": {},
      "idempotency_key": "hook:SessionStart:019f66e2-248b-7992-bcce-74090fa6600f",
      "status": "completed",
      "attempt": 1,
      "created_at": "2026-07-15T17:45:26Z",
      "updated_at": "2026-07-15T17:45:27Z",
      "receipts": [
        {
          "step_id": "config",
          "action": "config.audit",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "3782ec2317c0c8ee7598634310a2804d8aae4735f557498f9d3b8fae7c45e1e5",
          "completed_at": "2026-07-15T17:45:26Z"
        },
        {
          "step_id": "services",
          "action": "services.audit",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "13dcc58bd528f3efa3e6e0fa0853a6eedc376f1f3685fbd4869cbb2b60382ee3",
          "completed_at": "2026-07-15T17:45:26Z"
        },
        {
          "step_id": "state",
          "action": "state.consistency",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "5a1c6e5246defb1b6b6b90ff734db95bece2886b408ab112ed9b8e67222d5568",
          "completed_at": "2026-07-15T17:45:27Z"
        },
        {
          "step_id": "status",
          "action": "state.query",
          "input_hash": "a15231a2142a2a9a85355a8b9cbbccffe01a9c9c2c2fd8c2bc2987cdc481564a",
          "output_hash": "8ba9f7d3cc6705af37de9e3324d1258e21ccacb5ab0b2d7b389ca08885e11187",
          "completed_at": "2026-07-15T17:45:27Z"
        },
        {
          "step_id": "substrate",
          "action": "substrate.preflight",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "a6df426290b4549a59eecaa0519ead9bcc50b7fcb25bd2185ff6047960f19ccb",
          "completed_at": "2026-07-15T17:45:27Z"
        },
        {
          "step_id": "notices",
          "action": "substrate.notices",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "38b904a1cf83df048360fb2480571b749fd98d57e11f1afdffb5a74a78166fea",
          "completed_at": "2026-07-15T17:45:27Z"
        },
        {
          "step_id": "goals",
          "action": "substrate.goals",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "cdfd4de44a28140e686159f34f7b47975954c67e1d1efcef666e985acb136ed8",
          "completed_at": "2026-07-15T17:45:27Z"
        }
      ],
      "steps": [
        {
          "id": "config",
          "action": "config.audit",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-15T17:45:26Z",
          "output": {
            "status": "ok",
            "summary": {
              "settings": 195,
              "mutable": 186,
              "read_only_or_managed": 9,
              "unclassified": 0,
              "unknown": 0,
              "invalid": 0,
              "missing_using_defaults": 0
            },
            "unclassified_keys": [],
            "unknown_keys": [],
            "invalid_values": [],
            "missing_using_defaults": []
          },
          "output_hash": "3782ec2317c0c8ee7598634310a2804d8aae4735f557498f9d3b8fae7c45e1e5",
          "completed_at": "2026-07-15T17:45:26Z"
        },
        {
          "id": "services",
          "action": "services.audit",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-15T17:45:26Z",
          "output": {
            "status": "ok",
            "summary": {
              "critical": 0,
              "high": 0,
              "medium": 0,
              "low": 0
            },
            "findings": []
          },
          "output_hash": "13dcc58bd528f3efa3e6e0fa0853a6eedc376f1f3685fbd4869cbb2b60382ee3",
          "completed_at": "2026-07-15T17:45:26Z"
        },
        {
          "id": "state",
          "action": "state.consistency",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-15T17:45:26Z",
          "output": {
            "status": "ok",
            "repo_root": "D:\\Projects\\prd-plugin",
            "summary": {
              "errors": 0,
              "warnings": 0,
              "infos": 0
            },
            "findings": []
          },
          "output_hash": "5a1c6e5246defb1b6b6b90ff734db95bece2886b408ab112ed9b8e67222d5568",
          "completed_at": "2026-07-15T17:45:27Z"
        },
        {
          "id": "status",
          "action": "state.query",
          "status": "completed",
          "resolved_input_hash": "a15231a2142a2a9a85355a8b9cbbccffe01a9c9c2c2fd8c2bc2987cdc481564a",
          "started_at": "2026-07-15T17:45:27Z",
          "output": {
            "repo_root": "D:\\Projects\\prd-plugin",
            "autonomy_level": "autonomous",
            "requests_by_status": {
              "deferred": 1,
              "implemented": 80,
              "proposed": 1,
              "rejected": 1
            },
            "active_tracking": [],
            "tracking_branches": [],
            "tracking_branch_counts": {},
            "tracking_branch_errors": [],
            "open_health": [],
            "stale_count": 0,
            "skill_usage": {
              "project-decision-policy": 1,
              "project-request-intake": 1,
              "project-test-driven-implementation": 1,
              "project-verification-before-completion": 1,
              "project-llm-wiki": 1
            },
            "wiki_backfill_pending": false,
            "version_update": null
          },
          "output_hash": "8ba9f7d3cc6705af37de9e3324d1258e21ccacb5ab0b2d7b389ca08885e11187",
          "completed_at": "2026-07-15T17:45:27Z"
        },
        {
          "id": "substrate",
          "action": "substrate.preflight",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-15T17:45:27Z",
          "output": {
            "status": "disabled",
            "services": {
              "status": "ok",
              "summary": {
                "critical": 0,
                "high": 0,
                "medium": 0,
                "low": 0
              },
              "findings": []
            },
            "policy": {
              "configured": {
                "enabled": false,
                "mode": "off",
                "capabilities": [
                  "records",
                  "graph",
                  "events"
                ],
                "contract_version": 2,
                "require_source_refs": true,
                "endpoint": "http://127.0.0.1:47124",
                "manual_url": "http://127.0.0.1:47124/utcp.json",
                "knowledge_browse_url": "http://127.0.0.1:5276",
                "auth_env": "AI_COLLAB_API_KEY",
                "timeout_seconds": 5,
                "max_result_bytes": 1048576,
                "cache_ttl_seconds": 60,
                "fallback": "local",
                "automation": {
                  "discovery_on_session_start": true,
                  "knowledge_recall": true,
                  "memory_recall": true,
                  "context_enrichment": true,
                  "notices_on_session_start": false,
                  "goals_sync": false,
                  "telemetry_on_maintenance": false,
                  "reporting_dispatch": true,
                  "judgment_dispatch": true,
                  "verification_execution": true
                }
              },
              "active": false,
              "effective_mode": "off",
              "effective_capabilities": []
            }
          },
          "output_hash": "a6df426290b4549a59eecaa0519ead9bcc50b7fcb25bd2185ff6047960f19ccb",
          "completed_at": "2026-07-15T17:45:27Z"
        },
        {
          "id": "notices",
          "action": "substrate.notices",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-15T17:45:27Z",
          "output": {
            "status": "disabled"
          },
          "output_hash": "38b904a1cf83df048360fb2480571b749fd98d57e11f1afdffb5a74a78166fea",
          "completed_at": "2026-07-15T17:45:27Z"
        },
        {
          "id": "goals",
          "action": "substrate.goals",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-15T17:45:27Z",
          "output": {
            "status": "disabled",
            "created": 0,
            "observed": 0,
            "results": []
          },
          "output_hash": "cdfd4de44a28140e686159f34f7b47975954c67e1d1efcef666e985acb136ed8",
          "completed_at": "2026-07-15T17:45:27Z"
        }
      ],
      "completed_at": "2026-07-15T17:45:27Z"
    },
    {
      "id": "WFR-146",
      "schema_version": "1.0",
      "workflow_id": "session.stop",
      "workflow_version": 1,
      "definition_hash": "0cef7bb3e28321be8f85375c154955a69310ce297e47de3f3b8dd48f77a2f07d",
      "plan_hash": "a5e1d77ac734217487fc418e29c7163f4e81178e25d171e70cd4c999d527d3e8",
      "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
      "inputs": {},
      "idempotency_key": "hook:Stop:019f66e2-248b-7992-bcce-74090fa6600f",
      "status": "completed",
      "attempt": 1,
      "created_at": "2026-07-15T17:45:30Z",
      "updated_at": "2026-07-15T17:45:31Z",
      "receipts": [
        {
          "step_id": "state",
          "action": "state.consistency",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "5a1c6e5246defb1b6b6b90ff734db95bece2886b408ab112ed9b8e67222d5568",
          "completed_at": "2026-07-15T17:45:31Z"
        },
        {
          "step_id": "goals",
          "action": "substrate.goals",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "cdfd4de44a28140e686159f34f7b47975954c67e1d1efcef666e985acb136ed8",
          "completed_at": "2026-07-15T17:45:31Z"
        },
        {
          "step_id": "staleness",
          "action": "staleness.audit",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "1e81cb0ffd0a4d04626920a203b38d2d23a264cd43e807a85d375d69cae8a658",
          "completed_at": "2026-07-15T17:45:31Z"
        },
        {
          "step_id": "reflections",
          "action": "reflection.list",
          "input_hash": "0172e841ab4c13b3a4061f073f9d68a716ec87a8a5d52fde41823385e0582573",
          "output_hash": "c1b6b635c0bab21120657277f14ef6f839909875f307a3745fa48aee2bd6e449",
          "completed_at": "2026-07-15T17:45:31Z"
        },
        {
          "step_id": "bundle",
          "action": "reporting.bundle",
          "input_hash": "aed8ebb688dc3c085dd978d7c4120572173c3cb87e75919e4a937dcca6ef9457",
          "output_hash": "f61aa7bfac7c2e96e3bf2d3386a95e45d2db52d040f05aff9ea963197eacc3f6",
          "completed_at": "2026-07-15T17:45:31Z"
        },
        {
          "step_id": "delegated",
          "action": "reporting.delegate",
          "input_hash": "5bf4dfad88c9958da759cb1561ca5fdd8f3ac9050e938bfde85af5c8d804adc9",
          "output_hash": "e6085059f197def80ae95add1f328418107bea5436c9bd002530043646a3a95c",
          "completed_at": "2026-07-15T17:45:31Z"
        }
      ],
      "steps": [
        {
          "id": "state",
          "action": "state.consistency",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-15T17:45:30Z",
          "output": {
            "status": "ok",
            "repo_root": "D:\\Projects\\prd-plugin",
            "summary": {
              "errors": 0,
              "warnings": 0,
              "infos": 0
            },
            "findings": []
          },
          "output_hash": "5a1c6e5246defb1b6b6b90ff734db95bece2886b408ab112ed9b8e67222d5568",
          "completed_at": "2026-07-15T17:45:31Z"
        },
        {
          "id": "goals",
          "action": "substrate.goals",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-15T17:45:31Z",
          "output": {
            "status": "disabled",
            "created": 0,
            "observed": 0,
            "results": []
          },
          "output_hash": "cdfd4de44a28140e686159f34f7b47975954c67e1d1efcef666e985acb136ed8",
          "completed_at": "2026-07-15T17:45:31Z"
        },
        {
          "id": "staleness",
          "action": "staleness.audit",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-15T17:45:31Z",
          "output": {
            "status": "ok",
            "repo_root": "D:\\Projects\\prd-plugin",
            "counts": {
              "stale": 0
            },
            "stale": []
          },
          "output_hash": "1e81cb0ffd0a4d04626920a203b38d2d23a264cd43e807a85d375d69cae8a658",
          "completed_at": "2026-07-15T17:45:31Z"
        },
        {
          "id": "reflections",
          "action": "reflection.list",
          "status": "completed",
          "resolved_input_hash": "0172e841ab4c13b3a4061f073f9d68a716ec87a8a5d52fde41823385e0582573",
          "started_at": "2026-07-15T17:45:31Z",
          "output": {
            "enabled": false,
            "on_stop": true,
            "max_questions_per_stop": 5,
            "categories": [
              {
                "id": "behaviour_quality",
                "name": "Behaviour quality",
                "enabled": true,
                "question_count": 3
              },
              {
                "id": "harness_friction",
                "name": "Harness friction",
                "enabled": true,
                "question_count": 2
              }
            ],
            "questions": [
              {
                "id": "RFQ-001",
                "text": "Based on the work you just carried out, would you classify your behaviour as good? Answer yes or no and cite observable evidence.",
                "enabled": true,
                "category_id": "behaviour_quality",
                "category_name": "Behaviour quality",
                "effective_enabled": false
              },
              {
                "id": "RFQ-002",
                "text": "If you answered no, what could you do differently to correct your behaviour?",
                "enabled": true,
                "category_id": "behaviour_quality",
                "category_name": "Behaviour quality",
                "effective_enabled": false
              },
              {
                "id": "RFQ-003",
                "text": "Would another attempt using the identified good behaviours materially improve the outcome? Answer yes or no and state the next corrective action if yes.",
                "enabled": true,
                "category_id": "behaviour_quality",
                "category_name": "Behaviour quality",
                "effective_enabled": false
              },
              {
                "id": "RFQ-004",
                "text": "What harness friction points made this work more difficult?",
                "enabled": true,
                "category_id": "harness_friction",
                "category_name": "Harness friction",
                "effective_enabled": false
              },
              {
                "id": "RFQ-005",
                "text": "What up to three changes would most improve friction in the harness?",
                "enabled": true,
                "category_id": "harness_friction",
                "category_name": "Harness friction",
                "effective_enabled": false
              }
            ]
          },
          "output_hash": "c1b6b635c0bab21120657277f14ef6f839909875f307a3745fa48aee2bd6e449",
          "completed_at": "2026-07-15T17:45:31Z"
        },
        {
          "id": "bundle",
          "action": "reporting.bundle",
          "status": "completed",
          "resolved_input_hash": "aed8ebb688dc3c085dd978d7c4120572173c3cb87e75919e4a937dcca6ef9457",
          "started_at": "2026-07-15T17:45:31Z",
          "output": {
            "contract_version": 1,
            "task": "session_summary",
            "repo": "prd-plugin",
            "policy": {
              "enabled": false,
              "executor": "ai-collab",
              "contract_version": 1,
              "profile": "fast-capable",
              "tasks": [
                "report_summary",
                "session_summary",
                "wiki_synthesis",
                "triage_draft"
              ],
              "fallback": "main",
              "require_source_refs": true,
              "max_input_tokens": 12000,
              "max_output_tokens": 1500,
              "timeout_seconds": 30
            },
            "facts": {
              "requests_by_status": {
                "deferred": 1,
                "implemented": 80,
                "proposed": 1,
                "rejected": 1
              },
              "active_requests": [
                {
                  "id": "REQ-072",
                  "status": "proposed",
                  "severity": "low",
                  "summary": "opencode run-until-done: session.idle is a non-blocking notification, so the stop guard can't force continuation on opencode (currently degrades to a printed reminder, 0.5.95). Investigate whether opencode exposes any vetoable/continuation mechanism (a different event, a permission hook, or a 'continue' API) to enforce run-until-done, or accept the reminder as the permanent ceiling. Low priority — user rarely uses opencode."
                }
              ],
              "active_tracking": [],
              "open_health": [],
              "evidence_count": 105,
              "decision_count": 10
            },
            "findings": [],
            "source_refs": [
              ".prd_plugin/config.json",
              ".prd_plugin/state/decisions.json",
              ".prd_plugin/state/evidence.json",
              ".prd_plugin/state/health.json",
              ".prd_plugin/state/requests.json",
              ".prd_plugin/state/tracking.json",
              "REQ-072"
            ],
            "constraints": {
              "max_input_tokens": 12000,
              "max_output_tokens": 1500,
              "timeout_seconds": 30,
              "require_source_refs": true,
              "no_project_state_writes": true,
              "no_secrets_or_local_session_content": true
            }
          },
          "output_hash": "f61aa7bfac7c2e96e3bf2d3386a95e45d2db52d040f05aff9ea963197eacc3f6",
          "completed_at": "2026-07-15T17:45:31Z"
        },
        {
          "id": "delegated",
          "action": "reporting.delegate",
          "status": "completed",
          "resolved_input_hash": "5bf4dfad88c9958da759cb1561ca5fdd8f3ac9050e938bfde85af5c8d804adc9",
          "started_at": "2026-07-15T17:45:31Z",
          "output": {
            "status": "fallback",
            "action": "main",
            "reason": "disabled"
          },
          "output_hash": "e6085059f197def80ae95add1f328418107bea5436c9bd002530043646a3a95c",
          "completed_at": "2026-07-15T17:45:31Z"
        }
      ],
      "completed_at": "2026-07-15T17:45:31Z"
    },
    {
      "id": "WFR-147",
      "schema_version": "1.0",
      "workflow_id": "session.start",
      "workflow_version": 1,
      "definition_hash": "d0f98da02571e6dd27fec4aed92d3c82af9db75f8b90b997bf665635c7b7f6ca",
      "plan_hash": "b5072615ca3b7e9a3bd85d50d1f069d99ef2a9816b32c03a370745ed7a205536",
      "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
      "inputs": {},
      "idempotency_key": "hook:SessionStart:019f66e9-3389-7500-ae7c-c4d02841fbfd",
      "status": "completed",
      "attempt": 1,
      "created_at": "2026-07-15T17:53:09Z",
      "updated_at": "2026-07-15T17:53:10Z",
      "receipts": [
        {
          "step_id": "config",
          "action": "config.audit",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "3782ec2317c0c8ee7598634310a2804d8aae4735f557498f9d3b8fae7c45e1e5",
          "completed_at": "2026-07-15T17:53:09Z"
        },
        {
          "step_id": "services",
          "action": "services.audit",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "13dcc58bd528f3efa3e6e0fa0853a6eedc376f1f3685fbd4869cbb2b60382ee3",
          "completed_at": "2026-07-15T17:53:09Z"
        },
        {
          "step_id": "state",
          "action": "state.consistency",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "5a1c6e5246defb1b6b6b90ff734db95bece2886b408ab112ed9b8e67222d5568",
          "completed_at": "2026-07-15T17:53:09Z"
        },
        {
          "step_id": "status",
          "action": "state.query",
          "input_hash": "a15231a2142a2a9a85355a8b9cbbccffe01a9c9c2c2fd8c2bc2987cdc481564a",
          "output_hash": "8ba9f7d3cc6705af37de9e3324d1258e21ccacb5ab0b2d7b389ca08885e11187",
          "completed_at": "2026-07-15T17:53:10Z"
        },
        {
          "step_id": "substrate",
          "action": "substrate.preflight",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "a6df426290b4549a59eecaa0519ead9bcc50b7fcb25bd2185ff6047960f19ccb",
          "completed_at": "2026-07-15T17:53:10Z"
        },
        {
          "step_id": "notices",
          "action": "substrate.notices",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "38b904a1cf83df048360fb2480571b749fd98d57e11f1afdffb5a74a78166fea",
          "completed_at": "2026-07-15T17:53:10Z"
        },
        {
          "step_id": "goals",
          "action": "substrate.goals",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "cdfd4de44a28140e686159f34f7b47975954c67e1d1efcef666e985acb136ed8",
          "completed_at": "2026-07-15T17:53:10Z"
        }
      ],
      "steps": [
        {
          "id": "config",
          "action": "config.audit",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-15T17:53:09Z",
          "output": {
            "status": "ok",
            "summary": {
              "settings": 195,
              "mutable": 186,
              "read_only_or_managed": 9,
              "unclassified": 0,
              "unknown": 0,
              "invalid": 0,
              "missing_using_defaults": 0
            },
            "unclassified_keys": [],
            "unknown_keys": [],
            "invalid_values": [],
            "missing_using_defaults": []
          },
          "output_hash": "3782ec2317c0c8ee7598634310a2804d8aae4735f557498f9d3b8fae7c45e1e5",
          "completed_at": "2026-07-15T17:53:09Z"
        },
        {
          "id": "services",
          "action": "services.audit",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-15T17:53:09Z",
          "output": {
            "status": "ok",
            "summary": {
              "critical": 0,
              "high": 0,
              "medium": 0,
              "low": 0
            },
            "findings": []
          },
          "output_hash": "13dcc58bd528f3efa3e6e0fa0853a6eedc376f1f3685fbd4869cbb2b60382ee3",
          "completed_at": "2026-07-15T17:53:09Z"
        },
        {
          "id": "state",
          "action": "state.consistency",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-15T17:53:09Z",
          "output": {
            "status": "ok",
            "repo_root": "D:\\Projects\\prd-plugin",
            "summary": {
              "errors": 0,
              "warnings": 0,
              "infos": 0
            },
            "findings": []
          },
          "output_hash": "5a1c6e5246defb1b6b6b90ff734db95bece2886b408ab112ed9b8e67222d5568",
          "completed_at": "2026-07-15T17:53:09Z"
        },
        {
          "id": "status",
          "action": "state.query",
          "status": "completed",
          "resolved_input_hash": "a15231a2142a2a9a85355a8b9cbbccffe01a9c9c2c2fd8c2bc2987cdc481564a",
          "started_at": "2026-07-15T17:53:10Z",
          "output": {
            "repo_root": "D:\\Projects\\prd-plugin",
            "autonomy_level": "autonomous",
            "requests_by_status": {
              "deferred": 1,
              "implemented": 80,
              "proposed": 1,
              "rejected": 1
            },
            "active_tracking": [],
            "tracking_branches": [],
            "tracking_branch_counts": {},
            "tracking_branch_errors": [],
            "open_health": [],
            "stale_count": 0,
            "skill_usage": {
              "project-decision-policy": 1,
              "project-request-intake": 1,
              "project-test-driven-implementation": 1,
              "project-verification-before-completion": 1,
              "project-llm-wiki": 1
            },
            "wiki_backfill_pending": false,
            "version_update": null
          },
          "output_hash": "8ba9f7d3cc6705af37de9e3324d1258e21ccacb5ab0b2d7b389ca08885e11187",
          "completed_at": "2026-07-15T17:53:10Z"
        },
        {
          "id": "substrate",
          "action": "substrate.preflight",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-15T17:53:10Z",
          "output": {
            "status": "disabled",
            "services": {
              "status": "ok",
              "summary": {
                "critical": 0,
                "high": 0,
                "medium": 0,
                "low": 0
              },
              "findings": []
            },
            "policy": {
              "configured": {
                "enabled": false,
                "mode": "off",
                "capabilities": [
                  "records",
                  "graph",
                  "events"
                ],
                "contract_version": 2,
                "require_source_refs": true,
                "endpoint": "http://127.0.0.1:47124",
                "manual_url": "http://127.0.0.1:47124/utcp.json",
                "knowledge_browse_url": "http://127.0.0.1:5276",
                "auth_env": "AI_COLLAB_API_KEY",
                "timeout_seconds": 5,
                "max_result_bytes": 1048576,
                "cache_ttl_seconds": 60,
                "fallback": "local",
                "automation": {
                  "discovery_on_session_start": true,
                  "knowledge_recall": true,
                  "memory_recall": true,
                  "context_enrichment": true,
                  "notices_on_session_start": false,
                  "goals_sync": false,
                  "telemetry_on_maintenance": false,
                  "reporting_dispatch": true,
                  "judgment_dispatch": true,
                  "verification_execution": true
                }
              },
              "active": false,
              "effective_mode": "off",
              "effective_capabilities": []
            }
          },
          "output_hash": "a6df426290b4549a59eecaa0519ead9bcc50b7fcb25bd2185ff6047960f19ccb",
          "completed_at": "2026-07-15T17:53:10Z"
        },
        {
          "id": "notices",
          "action": "substrate.notices",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-15T17:53:10Z",
          "output": {
            "status": "disabled"
          },
          "output_hash": "38b904a1cf83df048360fb2480571b749fd98d57e11f1afdffb5a74a78166fea",
          "completed_at": "2026-07-15T17:53:10Z"
        },
        {
          "id": "goals",
          "action": "substrate.goals",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-15T17:53:10Z",
          "output": {
            "status": "disabled",
            "created": 0,
            "observed": 0,
            "results": []
          },
          "output_hash": "cdfd4de44a28140e686159f34f7b47975954c67e1d1efcef666e985acb136ed8",
          "completed_at": "2026-07-15T17:53:10Z"
        }
      ],
      "completed_at": "2026-07-15T17:53:10Z"
    },
    {
      "id": "WFR-148",
      "schema_version": "1.0",
      "workflow_id": "session.stop",
      "workflow_version": 1,
      "definition_hash": "0cef7bb3e28321be8f85375c154955a69310ce297e47de3f3b8dd48f77a2f07d",
      "plan_hash": "a5e1d77ac734217487fc418e29c7163f4e81178e25d171e70cd4c999d527d3e8",
      "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
      "inputs": {},
      "idempotency_key": "hook:Stop:019f66e9-3389-7500-ae7c-c4d02841fbfd",
      "status": "completed",
      "attempt": 1,
      "created_at": "2026-07-15T17:53:13Z",
      "updated_at": "2026-07-15T17:53:15Z",
      "receipts": [
        {
          "step_id": "state",
          "action": "state.consistency",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "5a1c6e5246defb1b6b6b90ff734db95bece2886b408ab112ed9b8e67222d5568",
          "completed_at": "2026-07-15T17:53:14Z"
        },
        {
          "step_id": "goals",
          "action": "substrate.goals",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "cdfd4de44a28140e686159f34f7b47975954c67e1d1efcef666e985acb136ed8",
          "completed_at": "2026-07-15T17:53:14Z"
        },
        {
          "step_id": "staleness",
          "action": "staleness.audit",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "1e81cb0ffd0a4d04626920a203b38d2d23a264cd43e807a85d375d69cae8a658",
          "completed_at": "2026-07-15T17:53:14Z"
        },
        {
          "step_id": "reflections",
          "action": "reflection.list",
          "input_hash": "0172e841ab4c13b3a4061f073f9d68a716ec87a8a5d52fde41823385e0582573",
          "output_hash": "c1b6b635c0bab21120657277f14ef6f839909875f307a3745fa48aee2bd6e449",
          "completed_at": "2026-07-15T17:53:14Z"
        },
        {
          "step_id": "bundle",
          "action": "reporting.bundle",
          "input_hash": "aed8ebb688dc3c085dd978d7c4120572173c3cb87e75919e4a937dcca6ef9457",
          "output_hash": "f61aa7bfac7c2e96e3bf2d3386a95e45d2db52d040f05aff9ea963197eacc3f6",
          "completed_at": "2026-07-15T17:53:14Z"
        },
        {
          "step_id": "delegated",
          "action": "reporting.delegate",
          "input_hash": "5bf4dfad88c9958da759cb1561ca5fdd8f3ac9050e938bfde85af5c8d804adc9",
          "output_hash": "e6085059f197def80ae95add1f328418107bea5436c9bd002530043646a3a95c",
          "completed_at": "2026-07-15T17:53:14Z"
        }
      ],
      "steps": [
        {
          "id": "state",
          "action": "state.consistency",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-15T17:53:13Z",
          "output": {
            "status": "ok",
            "repo_root": "D:\\Projects\\prd-plugin",
            "summary": {
              "errors": 0,
              "warnings": 0,
              "infos": 0
            },
            "findings": []
          },
          "output_hash": "5a1c6e5246defb1b6b6b90ff734db95bece2886b408ab112ed9b8e67222d5568",
          "completed_at": "2026-07-15T17:53:14Z"
        },
        {
          "id": "goals",
          "action": "substrate.goals",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-15T17:53:14Z",
          "output": {
            "status": "disabled",
            "created": 0,
            "observed": 0,
            "results": []
          },
          "output_hash": "cdfd4de44a28140e686159f34f7b47975954c67e1d1efcef666e985acb136ed8",
          "completed_at": "2026-07-15T17:53:14Z"
        },
        {
          "id": "staleness",
          "action": "staleness.audit",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-15T17:53:14Z",
          "output": {
            "status": "ok",
            "repo_root": "D:\\Projects\\prd-plugin",
            "counts": {
              "stale": 0
            },
            "stale": []
          },
          "output_hash": "1e81cb0ffd0a4d04626920a203b38d2d23a264cd43e807a85d375d69cae8a658",
          "completed_at": "2026-07-15T17:53:14Z"
        },
        {
          "id": "reflections",
          "action": "reflection.list",
          "status": "completed",
          "resolved_input_hash": "0172e841ab4c13b3a4061f073f9d68a716ec87a8a5d52fde41823385e0582573",
          "started_at": "2026-07-15T17:53:14Z",
          "output": {
            "enabled": false,
            "on_stop": true,
            "max_questions_per_stop": 5,
            "categories": [
              {
                "id": "behaviour_quality",
                "name": "Behaviour quality",
                "enabled": true,
                "question_count": 3
              },
              {
                "id": "harness_friction",
                "name": "Harness friction",
                "enabled": true,
                "question_count": 2
              }
            ],
            "questions": [
              {
                "id": "RFQ-001",
                "text": "Based on the work you just carried out, would you classify your behaviour as good? Answer yes or no and cite observable evidence.",
                "enabled": true,
                "category_id": "behaviour_quality",
                "category_name": "Behaviour quality",
                "effective_enabled": false
              },
              {
                "id": "RFQ-002",
                "text": "If you answered no, what could you do differently to correct your behaviour?",
                "enabled": true,
                "category_id": "behaviour_quality",
                "category_name": "Behaviour quality",
                "effective_enabled": false
              },
              {
                "id": "RFQ-003",
                "text": "Would another attempt using the identified good behaviours materially improve the outcome? Answer yes or no and state the next corrective action if yes.",
                "enabled": true,
                "category_id": "behaviour_quality",
                "category_name": "Behaviour quality",
                "effective_enabled": false
              },
              {
                "id": "RFQ-004",
                "text": "What harness friction points made this work more difficult?",
                "enabled": true,
                "category_id": "harness_friction",
                "category_name": "Harness friction",
                "effective_enabled": false
              },
              {
                "id": "RFQ-005",
                "text": "What up to three changes would most improve friction in the harness?",
                "enabled": true,
                "category_id": "harness_friction",
                "category_name": "Harness friction",
                "effective_enabled": false
              }
            ]
          },
          "output_hash": "c1b6b635c0bab21120657277f14ef6f839909875f307a3745fa48aee2bd6e449",
          "completed_at": "2026-07-15T17:53:14Z"
        },
        {
          "id": "bundle",
          "action": "reporting.bundle",
          "status": "completed",
          "resolved_input_hash": "aed8ebb688dc3c085dd978d7c4120572173c3cb87e75919e4a937dcca6ef9457",
          "started_at": "2026-07-15T17:53:14Z",
          "output": {
            "contract_version": 1,
            "task": "session_summary",
            "repo": "prd-plugin",
            "policy": {
              "enabled": false,
              "executor": "ai-collab",
              "contract_version": 1,
              "profile": "fast-capable",
              "tasks": [
                "report_summary",
                "session_summary",
                "wiki_synthesis",
                "triage_draft"
              ],
              "fallback": "main",
              "require_source_refs": true,
              "max_input_tokens": 12000,
              "max_output_tokens": 1500,
              "timeout_seconds": 30
            },
            "facts": {
              "requests_by_status": {
                "deferred": 1,
                "implemented": 80,
                "proposed": 1,
                "rejected": 1
              },
              "active_requests": [
                {
                  "id": "REQ-072",
                  "status": "proposed",
                  "severity": "low",
                  "summary": "opencode run-until-done: session.idle is a non-blocking notification, so the stop guard can't force continuation on opencode (currently degrades to a printed reminder, 0.5.95). Investigate whether opencode exposes any vetoable/continuation mechanism (a different event, a permission hook, or a 'continue' API) to enforce run-until-done, or accept the reminder as the permanent ceiling. Low priority — user rarely uses opencode."
                }
              ],
              "active_tracking": [],
              "open_health": [],
              "evidence_count": 105,
              "decision_count": 10
            },
            "findings": [],
            "source_refs": [
              ".prd_plugin/config.json",
              ".prd_plugin/state/decisions.json",
              ".prd_plugin/state/evidence.json",
              ".prd_plugin/state/health.json",
              ".prd_plugin/state/requests.json",
              ".prd_plugin/state/tracking.json",
              "REQ-072"
            ],
            "constraints": {
              "max_input_tokens": 12000,
              "max_output_tokens": 1500,
              "timeout_seconds": 30,
              "require_source_refs": true,
              "no_project_state_writes": true,
              "no_secrets_or_local_session_content": true
            }
          },
          "output_hash": "f61aa7bfac7c2e96e3bf2d3386a95e45d2db52d040f05aff9ea963197eacc3f6",
          "completed_at": "2026-07-15T17:53:14Z"
        },
        {
          "id": "delegated",
          "action": "reporting.delegate",
          "status": "completed",
          "resolved_input_hash": "5bf4dfad88c9958da759cb1561ca5fdd8f3ac9050e938bfde85af5c8d804adc9",
          "started_at": "2026-07-15T17:53:14Z",
          "output": {
            "status": "fallback",
            "action": "main",
            "reason": "disabled"
          },
          "output_hash": "e6085059f197def80ae95add1f328418107bea5436c9bd002530043646a3a95c",
          "completed_at": "2026-07-15T17:53:14Z"
        }
      ],
      "completed_at": "2026-07-15T17:53:15Z"
    },
    {
      "id": "WFR-149",
      "schema_version": "1.0",
      "workflow_id": "session.start",
      "workflow_version": 1,
      "definition_hash": "d0f98da02571e6dd27fec4aed92d3c82af9db75f8b90b997bf665635c7b7f6ca",
      "plan_hash": "b5072615ca3b7e9a3bd85d50d1f069d99ef2a9816b32c03a370745ed7a205536",
      "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
      "inputs": {},
      "idempotency_key": "hook:SessionStart:019f66ea-4047-74d3-9ef0-c8aae61a7488",
      "status": "completed",
      "attempt": 1,
      "created_at": "2026-07-15T17:54:17Z",
      "updated_at": "2026-07-15T17:54:19Z",
      "receipts": [
        {
          "step_id": "config",
          "action": "config.audit",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "3782ec2317c0c8ee7598634310a2804d8aae4735f557498f9d3b8fae7c45e1e5",
          "completed_at": "2026-07-15T17:54:17Z"
        },
        {
          "step_id": "services",
          "action": "services.audit",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "13dcc58bd528f3efa3e6e0fa0853a6eedc376f1f3685fbd4869cbb2b60382ee3",
          "completed_at": "2026-07-15T17:54:17Z"
        },
        {
          "step_id": "state",
          "action": "state.consistency",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "5a1c6e5246defb1b6b6b90ff734db95bece2886b408ab112ed9b8e67222d5568",
          "completed_at": "2026-07-15T17:54:18Z"
        },
        {
          "step_id": "status",
          "action": "state.query",
          "input_hash": "a15231a2142a2a9a85355a8b9cbbccffe01a9c9c2c2fd8c2bc2987cdc481564a",
          "output_hash": "8ba9f7d3cc6705af37de9e3324d1258e21ccacb5ab0b2d7b389ca08885e11187",
          "completed_at": "2026-07-15T17:54:18Z"
        },
        {
          "step_id": "substrate",
          "action": "substrate.preflight",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "a6df426290b4549a59eecaa0519ead9bcc50b7fcb25bd2185ff6047960f19ccb",
          "completed_at": "2026-07-15T17:54:18Z"
        },
        {
          "step_id": "notices",
          "action": "substrate.notices",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "38b904a1cf83df048360fb2480571b749fd98d57e11f1afdffb5a74a78166fea",
          "completed_at": "2026-07-15T17:54:19Z"
        },
        {
          "step_id": "goals",
          "action": "substrate.goals",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "cdfd4de44a28140e686159f34f7b47975954c67e1d1efcef666e985acb136ed8",
          "completed_at": "2026-07-15T17:54:19Z"
        }
      ],
      "steps": [
        {
          "id": "config",
          "action": "config.audit",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-15T17:54:17Z",
          "output": {
            "status": "ok",
            "summary": {
              "settings": 195,
              "mutable": 186,
              "read_only_or_managed": 9,
              "unclassified": 0,
              "unknown": 0,
              "invalid": 0,
              "missing_using_defaults": 0
            },
            "unclassified_keys": [],
            "unknown_keys": [],
            "invalid_values": [],
            "missing_using_defaults": []
          },
          "output_hash": "3782ec2317c0c8ee7598634310a2804d8aae4735f557498f9d3b8fae7c45e1e5",
          "completed_at": "2026-07-15T17:54:17Z"
        },
        {
          "id": "services",
          "action": "services.audit",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-15T17:54:17Z",
          "output": {
            "status": "ok",
            "summary": {
              "critical": 0,
              "high": 0,
              "medium": 0,
              "low": 0
            },
            "findings": []
          },
          "output_hash": "13dcc58bd528f3efa3e6e0fa0853a6eedc376f1f3685fbd4869cbb2b60382ee3",
          "completed_at": "2026-07-15T17:54:17Z"
        },
        {
          "id": "state",
          "action": "state.consistency",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-15T17:54:18Z",
          "output": {
            "status": "ok",
            "repo_root": "D:\\Projects\\prd-plugin",
            "summary": {
              "errors": 0,
              "warnings": 0,
              "infos": 0
            },
            "findings": []
          },
          "output_hash": "5a1c6e5246defb1b6b6b90ff734db95bece2886b408ab112ed9b8e67222d5568",
          "completed_at": "2026-07-15T17:54:18Z"
        },
        {
          "id": "status",
          "action": "state.query",
          "status": "completed",
          "resolved_input_hash": "a15231a2142a2a9a85355a8b9cbbccffe01a9c9c2c2fd8c2bc2987cdc481564a",
          "started_at": "2026-07-15T17:54:18Z",
          "output": {
            "repo_root": "D:\\Projects\\prd-plugin",
            "autonomy_level": "autonomous",
            "requests_by_status": {
              "deferred": 1,
              "implemented": 80,
              "proposed": 1,
              "rejected": 1
            },
            "active_tracking": [],
            "tracking_branches": [],
            "tracking_branch_counts": {},
            "tracking_branch_errors": [],
            "open_health": [],
            "stale_count": 0,
            "skill_usage": {
              "project-decision-policy": 1,
              "project-request-intake": 1,
              "project-test-driven-implementation": 1,
              "project-verification-before-completion": 1,
              "project-llm-wiki": 1
            },
            "wiki_backfill_pending": false,
            "version_update": null
          },
          "output_hash": "8ba9f7d3cc6705af37de9e3324d1258e21ccacb5ab0b2d7b389ca08885e11187",
          "completed_at": "2026-07-15T17:54:18Z"
        },
        {
          "id": "substrate",
          "action": "substrate.preflight",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-15T17:54:18Z",
          "output": {
            "status": "disabled",
            "services": {
              "status": "ok",
              "summary": {
                "critical": 0,
                "high": 0,
                "medium": 0,
                "low": 0
              },
              "findings": []
            },
            "policy": {
              "configured": {
                "enabled": false,
                "mode": "off",
                "capabilities": [
                  "records",
                  "graph",
                  "events"
                ],
                "contract_version": 2,
                "require_source_refs": true,
                "endpoint": "http://127.0.0.1:47124",
                "manual_url": "http://127.0.0.1:47124/utcp.json",
                "knowledge_browse_url": "http://127.0.0.1:5276",
                "auth_env": "AI_COLLAB_API_KEY",
                "timeout_seconds": 5,
                "max_result_bytes": 1048576,
                "cache_ttl_seconds": 60,
                "fallback": "local",
                "automation": {
                  "discovery_on_session_start": true,
                  "knowledge_recall": true,
                  "memory_recall": true,
                  "context_enrichment": true,
                  "notices_on_session_start": false,
                  "goals_sync": false,
                  "telemetry_on_maintenance": false,
                  "reporting_dispatch": true,
                  "judgment_dispatch": true,
                  "verification_execution": true
                }
              },
              "active": false,
              "effective_mode": "off",
              "effective_capabilities": []
            }
          },
          "output_hash": "a6df426290b4549a59eecaa0519ead9bcc50b7fcb25bd2185ff6047960f19ccb",
          "completed_at": "2026-07-15T17:54:18Z"
        },
        {
          "id": "notices",
          "action": "substrate.notices",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-15T17:54:18Z",
          "output": {
            "status": "disabled"
          },
          "output_hash": "38b904a1cf83df048360fb2480571b749fd98d57e11f1afdffb5a74a78166fea",
          "completed_at": "2026-07-15T17:54:19Z"
        },
        {
          "id": "goals",
          "action": "substrate.goals",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-15T17:54:19Z",
          "output": {
            "status": "disabled",
            "created": 0,
            "observed": 0,
            "results": []
          },
          "output_hash": "cdfd4de44a28140e686159f34f7b47975954c67e1d1efcef666e985acb136ed8",
          "completed_at": "2026-07-15T17:54:19Z"
        }
      ],
      "completed_at": "2026-07-15T17:54:19Z"
    },
    {
      "id": "WFR-150",
      "schema_version": "1.0",
      "workflow_id": "session.stop",
      "workflow_version": 1,
      "definition_hash": "0cef7bb3e28321be8f85375c154955a69310ce297e47de3f3b8dd48f77a2f07d",
      "plan_hash": "a5e1d77ac734217487fc418e29c7163f4e81178e25d171e70cd4c999d527d3e8",
      "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
      "inputs": {},
      "idempotency_key": "hook:Stop:019f66ea-4047-74d3-9ef0-c8aae61a7488",
      "status": "completed",
      "attempt": 1,
      "created_at": "2026-07-15T17:54:21Z",
      "updated_at": "2026-07-15T17:54:22Z",
      "receipts": [
        {
          "step_id": "state",
          "action": "state.consistency",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "5a1c6e5246defb1b6b6b90ff734db95bece2886b408ab112ed9b8e67222d5568",
          "completed_at": "2026-07-15T17:54:22Z"
        },
        {
          "step_id": "goals",
          "action": "substrate.goals",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "cdfd4de44a28140e686159f34f7b47975954c67e1d1efcef666e985acb136ed8",
          "completed_at": "2026-07-15T17:54:22Z"
        },
        {
          "step_id": "staleness",
          "action": "staleness.audit",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "1e81cb0ffd0a4d04626920a203b38d2d23a264cd43e807a85d375d69cae8a658",
          "completed_at": "2026-07-15T17:54:22Z"
        },
        {
          "step_id": "reflections",
          "action": "reflection.list",
          "input_hash": "0172e841ab4c13b3a4061f073f9d68a716ec87a8a5d52fde41823385e0582573",
          "output_hash": "c1b6b635c0bab21120657277f14ef6f839909875f307a3745fa48aee2bd6e449",
          "completed_at": "2026-07-15T17:54:22Z"
        },
        {
          "step_id": "bundle",
          "action": "reporting.bundle",
          "input_hash": "aed8ebb688dc3c085dd978d7c4120572173c3cb87e75919e4a937dcca6ef9457",
          "output_hash": "f61aa7bfac7c2e96e3bf2d3386a95e45d2db52d040f05aff9ea963197eacc3f6",
          "completed_at": "2026-07-15T17:54:22Z"
        },
        {
          "step_id": "delegated",
          "action": "reporting.delegate",
          "input_hash": "5bf4dfad88c9958da759cb1561ca5fdd8f3ac9050e938bfde85af5c8d804adc9",
          "output_hash": "e6085059f197def80ae95add1f328418107bea5436c9bd002530043646a3a95c",
          "completed_at": "2026-07-15T17:54:22Z"
        }
      ],
      "steps": [
        {
          "id": "state",
          "action": "state.consistency",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-15T17:54:21Z",
          "output": {
            "status": "ok",
            "repo_root": "D:\\Projects\\prd-plugin",
            "summary": {
              "errors": 0,
              "warnings": 0,
              "infos": 0
            },
            "findings": []
          },
          "output_hash": "5a1c6e5246defb1b6b6b90ff734db95bece2886b408ab112ed9b8e67222d5568",
          "completed_at": "2026-07-15T17:54:22Z"
        },
        {
          "id": "goals",
          "action": "substrate.goals",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-15T17:54:22Z",
          "output": {
            "status": "disabled",
            "created": 0,
            "observed": 0,
            "results": []
          },
          "output_hash": "cdfd4de44a28140e686159f34f7b47975954c67e1d1efcef666e985acb136ed8",
          "completed_at": "2026-07-15T17:54:22Z"
        },
        {
          "id": "staleness",
          "action": "staleness.audit",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-15T17:54:22Z",
          "output": {
            "status": "ok",
            "repo_root": "D:\\Projects\\prd-plugin",
            "counts": {
              "stale": 0
            },
            "stale": []
          },
          "output_hash": "1e81cb0ffd0a4d04626920a203b38d2d23a264cd43e807a85d375d69cae8a658",
          "completed_at": "2026-07-15T17:54:22Z"
        },
        {
          "id": "reflections",
          "action": "reflection.list",
          "status": "completed",
          "resolved_input_hash": "0172e841ab4c13b3a4061f073f9d68a716ec87a8a5d52fde41823385e0582573",
          "started_at": "2026-07-15T17:54:22Z",
          "output": {
            "enabled": false,
            "on_stop": true,
            "max_questions_per_stop": 5,
            "categories": [
              {
                "id": "behaviour_quality",
                "name": "Behaviour quality",
                "enabled": true,
                "question_count": 3
              },
              {
                "id": "harness_friction",
                "name": "Harness friction",
                "enabled": true,
                "question_count": 2
              }
            ],
            "questions": [
              {
                "id": "RFQ-001",
                "text": "Based on the work you just carried out, would you classify your behaviour as good? Answer yes or no and cite observable evidence.",
                "enabled": true,
                "category_id": "behaviour_quality",
                "category_name": "Behaviour quality",
                "effective_enabled": false
              },
              {
                "id": "RFQ-002",
                "text": "If you answered no, what could you do differently to correct your behaviour?",
                "enabled": true,
                "category_id": "behaviour_quality",
                "category_name": "Behaviour quality",
                "effective_enabled": false
              },
              {
                "id": "RFQ-003",
                "text": "Would another attempt using the identified good behaviours materially improve the outcome? Answer yes or no and state the next corrective action if yes.",
                "enabled": true,
                "category_id": "behaviour_quality",
                "category_name": "Behaviour quality",
                "effective_enabled": false
              },
              {
                "id": "RFQ-004",
                "text": "What harness friction points made this work more difficult?",
                "enabled": true,
                "category_id": "harness_friction",
                "category_name": "Harness friction",
                "effective_enabled": false
              },
              {
                "id": "RFQ-005",
                "text": "What up to three changes would most improve friction in the harness?",
                "enabled": true,
                "category_id": "harness_friction",
                "category_name": "Harness friction",
                "effective_enabled": false
              }
            ]
          },
          "output_hash": "c1b6b635c0bab21120657277f14ef6f839909875f307a3745fa48aee2bd6e449",
          "completed_at": "2026-07-15T17:54:22Z"
        },
        {
          "id": "bundle",
          "action": "reporting.bundle",
          "status": "completed",
          "resolved_input_hash": "aed8ebb688dc3c085dd978d7c4120572173c3cb87e75919e4a937dcca6ef9457",
          "started_at": "2026-07-15T17:54:22Z",
          "output": {
            "contract_version": 1,
            "task": "session_summary",
            "repo": "prd-plugin",
            "policy": {
              "enabled": false,
              "executor": "ai-collab",
              "contract_version": 1,
              "profile": "fast-capable",
              "tasks": [
                "report_summary",
                "session_summary",
                "wiki_synthesis",
                "triage_draft"
              ],
              "fallback": "main",
              "require_source_refs": true,
              "max_input_tokens": 12000,
              "max_output_tokens": 1500,
              "timeout_seconds": 30
            },
            "facts": {
              "requests_by_status": {
                "deferred": 1,
                "implemented": 80,
                "proposed": 1,
                "rejected": 1
              },
              "active_requests": [
                {
                  "id": "REQ-072",
                  "status": "proposed",
                  "severity": "low",
                  "summary": "opencode run-until-done: session.idle is a non-blocking notification, so the stop guard can't force continuation on opencode (currently degrades to a printed reminder, 0.5.95). Investigate whether opencode exposes any vetoable/continuation mechanism (a different event, a permission hook, or a 'continue' API) to enforce run-until-done, or accept the reminder as the permanent ceiling. Low priority — user rarely uses opencode."
                }
              ],
              "active_tracking": [],
              "open_health": [],
              "evidence_count": 105,
              "decision_count": 10
            },
            "findings": [],
            "source_refs": [
              ".prd_plugin/config.json",
              ".prd_plugin/state/decisions.json",
              ".prd_plugin/state/evidence.json",
              ".prd_plugin/state/health.json",
              ".prd_plugin/state/requests.json",
              ".prd_plugin/state/tracking.json",
              "REQ-072"
            ],
            "constraints": {
              "max_input_tokens": 12000,
              "max_output_tokens": 1500,
              "timeout_seconds": 30,
              "require_source_refs": true,
              "no_project_state_writes": true,
              "no_secrets_or_local_session_content": true
            }
          },
          "output_hash": "f61aa7bfac7c2e96e3bf2d3386a95e45d2db52d040f05aff9ea963197eacc3f6",
          "completed_at": "2026-07-15T17:54:22Z"
        },
        {
          "id": "delegated",
          "action": "reporting.delegate",
          "status": "completed",
          "resolved_input_hash": "5bf4dfad88c9958da759cb1561ca5fdd8f3ac9050e938bfde85af5c8d804adc9",
          "started_at": "2026-07-15T17:54:22Z",
          "output": {
            "status": "fallback",
            "action": "main",
            "reason": "disabled"
          },
          "output_hash": "e6085059f197def80ae95add1f328418107bea5436c9bd002530043646a3a95c",
          "completed_at": "2026-07-15T17:54:22Z"
        }
      ],
      "completed_at": "2026-07-15T17:54:22Z"
    },
    {
      "id": "WFR-151",
      "schema_version": "1.0",
      "workflow_id": "session.start",
      "workflow_version": 1,
      "definition_hash": "d0f98da02571e6dd27fec4aed92d3c82af9db75f8b90b997bf665635c7b7f6ca",
      "plan_hash": "b5072615ca3b7e9a3bd85d50d1f069d99ef2a9816b32c03a370745ed7a205536",
      "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
      "inputs": {},
      "idempotency_key": "hook:SessionStart:019f66ea-a2cf-7d63-8850-4cc10601af82",
      "status": "completed",
      "attempt": 1,
      "created_at": "2026-07-15T17:54:43Z",
      "updated_at": "2026-07-15T17:54:44Z",
      "receipts": [
        {
          "step_id": "config",
          "action": "config.audit",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "3782ec2317c0c8ee7598634310a2804d8aae4735f557498f9d3b8fae7c45e1e5",
          "completed_at": "2026-07-15T17:54:43Z"
        },
        {
          "step_id": "services",
          "action": "services.audit",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "13dcc58bd528f3efa3e6e0fa0853a6eedc376f1f3685fbd4869cbb2b60382ee3",
          "completed_at": "2026-07-15T17:54:43Z"
        },
        {
          "step_id": "state",
          "action": "state.consistency",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "5a1c6e5246defb1b6b6b90ff734db95bece2886b408ab112ed9b8e67222d5568",
          "completed_at": "2026-07-15T17:54:43Z"
        },
        {
          "step_id": "status",
          "action": "state.query",
          "input_hash": "a15231a2142a2a9a85355a8b9cbbccffe01a9c9c2c2fd8c2bc2987cdc481564a",
          "output_hash": "8ba9f7d3cc6705af37de9e3324d1258e21ccacb5ab0b2d7b389ca08885e11187",
          "completed_at": "2026-07-15T17:54:44Z"
        },
        {
          "step_id": "substrate",
          "action": "substrate.preflight",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "a6df426290b4549a59eecaa0519ead9bcc50b7fcb25bd2185ff6047960f19ccb",
          "completed_at": "2026-07-15T17:54:44Z"
        },
        {
          "step_id": "notices",
          "action": "substrate.notices",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "38b904a1cf83df048360fb2480571b749fd98d57e11f1afdffb5a74a78166fea",
          "completed_at": "2026-07-15T17:54:44Z"
        },
        {
          "step_id": "goals",
          "action": "substrate.goals",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "cdfd4de44a28140e686159f34f7b47975954c67e1d1efcef666e985acb136ed8",
          "completed_at": "2026-07-15T17:54:44Z"
        }
      ],
      "steps": [
        {
          "id": "config",
          "action": "config.audit",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-15T17:54:43Z",
          "output": {
            "status": "ok",
            "summary": {
              "settings": 195,
              "mutable": 186,
              "read_only_or_managed": 9,
              "unclassified": 0,
              "unknown": 0,
              "invalid": 0,
              "missing_using_defaults": 0
            },
            "unclassified_keys": [],
            "unknown_keys": [],
            "invalid_values": [],
            "missing_using_defaults": []
          },
          "output_hash": "3782ec2317c0c8ee7598634310a2804d8aae4735f557498f9d3b8fae7c45e1e5",
          "completed_at": "2026-07-15T17:54:43Z"
        },
        {
          "id": "services",
          "action": "services.audit",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-15T17:54:43Z",
          "output": {
            "status": "ok",
            "summary": {
              "critical": 0,
              "high": 0,
              "medium": 0,
              "low": 0
            },
            "findings": []
          },
          "output_hash": "13dcc58bd528f3efa3e6e0fa0853a6eedc376f1f3685fbd4869cbb2b60382ee3",
          "completed_at": "2026-07-15T17:54:43Z"
        },
        {
          "id": "state",
          "action": "state.consistency",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-15T17:54:43Z",
          "output": {
            "status": "ok",
            "repo_root": "D:\\Projects\\prd-plugin",
            "summary": {
              "errors": 0,
              "warnings": 0,
              "infos": 0
            },
            "findings": []
          },
          "output_hash": "5a1c6e5246defb1b6b6b90ff734db95bece2886b408ab112ed9b8e67222d5568",
          "completed_at": "2026-07-15T17:54:43Z"
        },
        {
          "id": "status",
          "action": "state.query",
          "status": "completed",
          "resolved_input_hash": "a15231a2142a2a9a85355a8b9cbbccffe01a9c9c2c2fd8c2bc2987cdc481564a",
          "started_at": "2026-07-15T17:54:44Z",
          "output": {
            "repo_root": "D:\\Projects\\prd-plugin",
            "autonomy_level": "autonomous",
            "requests_by_status": {
              "deferred": 1,
              "implemented": 80,
              "proposed": 1,
              "rejected": 1
            },
            "active_tracking": [],
            "tracking_branches": [],
            "tracking_branch_counts": {},
            "tracking_branch_errors": [],
            "open_health": [],
            "stale_count": 0,
            "skill_usage": {
              "project-decision-policy": 1,
              "project-request-intake": 1,
              "project-test-driven-implementation": 1,
              "project-verification-before-completion": 1,
              "project-llm-wiki": 1
            },
            "wiki_backfill_pending": false,
            "version_update": null
          },
          "output_hash": "8ba9f7d3cc6705af37de9e3324d1258e21ccacb5ab0b2d7b389ca08885e11187",
          "completed_at": "2026-07-15T17:54:44Z"
        },
        {
          "id": "substrate",
          "action": "substrate.preflight",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-15T17:54:44Z",
          "output": {
            "status": "disabled",
            "services": {
              "status": "ok",
              "summary": {
                "critical": 0,
                "high": 0,
                "medium": 0,
                "low": 0
              },
              "findings": []
            },
            "policy": {
              "configured": {
                "enabled": false,
                "mode": "off",
                "capabilities": [
                  "records",
                  "graph",
                  "events"
                ],
                "contract_version": 2,
                "require_source_refs": true,
                "endpoint": "http://127.0.0.1:47124",
                "manual_url": "http://127.0.0.1:47124/utcp.json",
                "knowledge_browse_url": "http://127.0.0.1:5276",
                "auth_env": "AI_COLLAB_API_KEY",
                "timeout_seconds": 5,
                "max_result_bytes": 1048576,
                "cache_ttl_seconds": 60,
                "fallback": "local",
                "automation": {
                  "discovery_on_session_start": true,
                  "knowledge_recall": true,
                  "memory_recall": true,
                  "context_enrichment": true,
                  "notices_on_session_start": false,
                  "goals_sync": false,
                  "telemetry_on_maintenance": false,
                  "reporting_dispatch": true,
                  "judgment_dispatch": true,
                  "verification_execution": true
                }
              },
              "active": false,
              "effective_mode": "off",
              "effective_capabilities": []
            }
          },
          "output_hash": "a6df426290b4549a59eecaa0519ead9bcc50b7fcb25bd2185ff6047960f19ccb",
          "completed_at": "2026-07-15T17:54:44Z"
        },
        {
          "id": "notices",
          "action": "substrate.notices",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-15T17:54:44Z",
          "output": {
            "status": "disabled"
          },
          "output_hash": "38b904a1cf83df048360fb2480571b749fd98d57e11f1afdffb5a74a78166fea",
          "completed_at": "2026-07-15T17:54:44Z"
        },
        {
          "id": "goals",
          "action": "substrate.goals",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-15T17:54:44Z",
          "output": {
            "status": "disabled",
            "created": 0,
            "observed": 0,
            "results": []
          },
          "output_hash": "cdfd4de44a28140e686159f34f7b47975954c67e1d1efcef666e985acb136ed8",
          "completed_at": "2026-07-15T17:54:44Z"
        }
      ],
      "completed_at": "2026-07-15T17:54:44Z"
    },
    {
      "id": "WFR-152",
      "schema_version": "1.0",
      "workflow_id": "session.stop",
      "workflow_version": 1,
      "definition_hash": "0cef7bb3e28321be8f85375c154955a69310ce297e47de3f3b8dd48f77a2f07d",
      "plan_hash": "a5e1d77ac734217487fc418e29c7163f4e81178e25d171e70cd4c999d527d3e8",
      "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
      "inputs": {},
      "idempotency_key": "hook:Stop:019f66ea-a2cf-7d63-8850-4cc10601af82",
      "status": "completed",
      "attempt": 1,
      "created_at": "2026-07-15T17:54:48Z",
      "updated_at": "2026-07-15T17:54:49Z",
      "receipts": [
        {
          "step_id": "state",
          "action": "state.consistency",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "5a1c6e5246defb1b6b6b90ff734db95bece2886b408ab112ed9b8e67222d5568",
          "completed_at": "2026-07-15T17:54:49Z"
        },
        {
          "step_id": "goals",
          "action": "substrate.goals",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "cdfd4de44a28140e686159f34f7b47975954c67e1d1efcef666e985acb136ed8",
          "completed_at": "2026-07-15T17:54:49Z"
        },
        {
          "step_id": "staleness",
          "action": "staleness.audit",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "1e81cb0ffd0a4d04626920a203b38d2d23a264cd43e807a85d375d69cae8a658",
          "completed_at": "2026-07-15T17:54:49Z"
        },
        {
          "step_id": "reflections",
          "action": "reflection.list",
          "input_hash": "0172e841ab4c13b3a4061f073f9d68a716ec87a8a5d52fde41823385e0582573",
          "output_hash": "c1b6b635c0bab21120657277f14ef6f839909875f307a3745fa48aee2bd6e449",
          "completed_at": "2026-07-15T17:54:49Z"
        },
        {
          "step_id": "bundle",
          "action": "reporting.bundle",
          "input_hash": "aed8ebb688dc3c085dd978d7c4120572173c3cb87e75919e4a937dcca6ef9457",
          "output_hash": "f61aa7bfac7c2e96e3bf2d3386a95e45d2db52d040f05aff9ea963197eacc3f6",
          "completed_at": "2026-07-15T17:54:49Z"
        },
        {
          "step_id": "delegated",
          "action": "reporting.delegate",
          "input_hash": "5bf4dfad88c9958da759cb1561ca5fdd8f3ac9050e938bfde85af5c8d804adc9",
          "output_hash": "e6085059f197def80ae95add1f328418107bea5436c9bd002530043646a3a95c",
          "completed_at": "2026-07-15T17:54:49Z"
        }
      ],
      "steps": [
        {
          "id": "state",
          "action": "state.consistency",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-15T17:54:48Z",
          "output": {
            "status": "ok",
            "repo_root": "D:\\Projects\\prd-plugin",
            "summary": {
              "errors": 0,
              "warnings": 0,
              "infos": 0
            },
            "findings": []
          },
          "output_hash": "5a1c6e5246defb1b6b6b90ff734db95bece2886b408ab112ed9b8e67222d5568",
          "completed_at": "2026-07-15T17:54:49Z"
        },
        {
          "id": "goals",
          "action": "substrate.goals",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-15T17:54:49Z",
          "output": {
            "status": "disabled",
            "created": 0,
            "observed": 0,
            "results": []
          },
          "output_hash": "cdfd4de44a28140e686159f34f7b47975954c67e1d1efcef666e985acb136ed8",
          "completed_at": "2026-07-15T17:54:49Z"
        },
        {
          "id": "staleness",
          "action": "staleness.audit",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-15T17:54:49Z",
          "output": {
            "status": "ok",
            "repo_root": "D:\\Projects\\prd-plugin",
            "counts": {
              "stale": 0
            },
            "stale": []
          },
          "output_hash": "1e81cb0ffd0a4d04626920a203b38d2d23a264cd43e807a85d375d69cae8a658",
          "completed_at": "2026-07-15T17:54:49Z"
        },
        {
          "id": "reflections",
          "action": "reflection.list",
          "status": "completed",
          "resolved_input_hash": "0172e841ab4c13b3a4061f073f9d68a716ec87a8a5d52fde41823385e0582573",
          "started_at": "2026-07-15T17:54:49Z",
          "output": {
            "enabled": false,
            "on_stop": true,
            "max_questions_per_stop": 5,
            "categories": [
              {
                "id": "behaviour_quality",
                "name": "Behaviour quality",
                "enabled": true,
                "question_count": 3
              },
              {
                "id": "harness_friction",
                "name": "Harness friction",
                "enabled": true,
                "question_count": 2
              }
            ],
            "questions": [
              {
                "id": "RFQ-001",
                "text": "Based on the work you just carried out, would you classify your behaviour as good? Answer yes or no and cite observable evidence.",
                "enabled": true,
                "category_id": "behaviour_quality",
                "category_name": "Behaviour quality",
                "effective_enabled": false
              },
              {
                "id": "RFQ-002",
                "text": "If you answered no, what could you do differently to correct your behaviour?",
                "enabled": true,
                "category_id": "behaviour_quality",
                "category_name": "Behaviour quality",
                "effective_enabled": false
              },
              {
                "id": "RFQ-003",
                "text": "Would another attempt using the identified good behaviours materially improve the outcome? Answer yes or no and state the next corrective action if yes.",
                "enabled": true,
                "category_id": "behaviour_quality",
                "category_name": "Behaviour quality",
                "effective_enabled": false
              },
              {
                "id": "RFQ-004",
                "text": "What harness friction points made this work more difficult?",
                "enabled": true,
                "category_id": "harness_friction",
                "category_name": "Harness friction",
                "effective_enabled": false
              },
              {
                "id": "RFQ-005",
                "text": "What up to three changes would most improve friction in the harness?",
                "enabled": true,
                "category_id": "harness_friction",
                "category_name": "Harness friction",
                "effective_enabled": false
              }
            ]
          },
          "output_hash": "c1b6b635c0bab21120657277f14ef6f839909875f307a3745fa48aee2bd6e449",
          "completed_at": "2026-07-15T17:54:49Z"
        },
        {
          "id": "bundle",
          "action": "reporting.bundle",
          "status": "completed",
          "resolved_input_hash": "aed8ebb688dc3c085dd978d7c4120572173c3cb87e75919e4a937dcca6ef9457",
          "started_at": "2026-07-15T17:54:49Z",
          "output": {
            "contract_version": 1,
            "task": "session_summary",
            "repo": "prd-plugin",
            "policy": {
              "enabled": false,
              "executor": "ai-collab",
              "contract_version": 1,
              "profile": "fast-capable",
              "tasks": [
                "report_summary",
                "session_summary",
                "wiki_synthesis",
                "triage_draft"
              ],
              "fallback": "main",
              "require_source_refs": true,
              "max_input_tokens": 12000,
              "max_output_tokens": 1500,
              "timeout_seconds": 30
            },
            "facts": {
              "requests_by_status": {
                "deferred": 1,
                "implemented": 80,
                "proposed": 1,
                "rejected": 1
              },
              "active_requests": [
                {
                  "id": "REQ-072",
                  "status": "proposed",
                  "severity": "low",
                  "summary": "opencode run-until-done: session.idle is a non-blocking notification, so the stop guard can't force continuation on opencode (currently degrades to a printed reminder, 0.5.95). Investigate whether opencode exposes any vetoable/continuation mechanism (a different event, a permission hook, or a 'continue' API) to enforce run-until-done, or accept the reminder as the permanent ceiling. Low priority — user rarely uses opencode."
                }
              ],
              "active_tracking": [],
              "open_health": [],
              "evidence_count": 105,
              "decision_count": 10
            },
            "findings": [],
            "source_refs": [
              ".prd_plugin/config.json",
              ".prd_plugin/state/decisions.json",
              ".prd_plugin/state/evidence.json",
              ".prd_plugin/state/health.json",
              ".prd_plugin/state/requests.json",
              ".prd_plugin/state/tracking.json",
              "REQ-072"
            ],
            "constraints": {
              "max_input_tokens": 12000,
              "max_output_tokens": 1500,
              "timeout_seconds": 30,
              "require_source_refs": true,
              "no_project_state_writes": true,
              "no_secrets_or_local_session_content": true
            }
          },
          "output_hash": "f61aa7bfac7c2e96e3bf2d3386a95e45d2db52d040f05aff9ea963197eacc3f6",
          "completed_at": "2026-07-15T17:54:49Z"
        },
        {
          "id": "delegated",
          "action": "reporting.delegate",
          "status": "completed",
          "resolved_input_hash": "5bf4dfad88c9958da759cb1561ca5fdd8f3ac9050e938bfde85af5c8d804adc9",
          "started_at": "2026-07-15T17:54:49Z",
          "output": {
            "status": "fallback",
            "action": "main",
            "reason": "disabled"
          },
          "output_hash": "e6085059f197def80ae95add1f328418107bea5436c9bd002530043646a3a95c",
          "completed_at": "2026-07-15T17:54:49Z"
        }
      ],
      "completed_at": "2026-07-15T17:54:49Z"
    },
    {
      "id": "WFR-153",
      "schema_version": "1.0",
      "workflow_id": "session.start",
      "workflow_version": 1,
      "definition_hash": "d0f98da02571e6dd27fec4aed92d3c82af9db75f8b90b997bf665635c7b7f6ca",
      "plan_hash": "b5072615ca3b7e9a3bd85d50d1f069d99ef2a9816b32c03a370745ed7a205536",
      "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
      "inputs": {},
      "idempotency_key": "hook:SessionStart:019f66ef-a136-71c2-a853-5c79ca7136ba",
      "status": "completed",
      "attempt": 1,
      "created_at": "2026-07-15T18:00:10Z",
      "updated_at": "2026-07-15T18:00:11Z",
      "receipts": [
        {
          "step_id": "config",
          "action": "config.audit",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "3782ec2317c0c8ee7598634310a2804d8aae4735f557498f9d3b8fae7c45e1e5",
          "completed_at": "2026-07-15T18:00:10Z"
        },
        {
          "step_id": "services",
          "action": "services.audit",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "13dcc58bd528f3efa3e6e0fa0853a6eedc376f1f3685fbd4869cbb2b60382ee3",
          "completed_at": "2026-07-15T18:00:10Z"
        },
        {
          "step_id": "state",
          "action": "state.consistency",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "5a1c6e5246defb1b6b6b90ff734db95bece2886b408ab112ed9b8e67222d5568",
          "completed_at": "2026-07-15T18:00:11Z"
        },
        {
          "step_id": "status",
          "action": "state.query",
          "input_hash": "a15231a2142a2a9a85355a8b9cbbccffe01a9c9c2c2fd8c2bc2987cdc481564a",
          "output_hash": "8ba9f7d3cc6705af37de9e3324d1258e21ccacb5ab0b2d7b389ca08885e11187",
          "completed_at": "2026-07-15T18:00:11Z"
        },
        {
          "step_id": "substrate",
          "action": "substrate.preflight",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "a6df426290b4549a59eecaa0519ead9bcc50b7fcb25bd2185ff6047960f19ccb",
          "completed_at": "2026-07-15T18:00:11Z"
        },
        {
          "step_id": "notices",
          "action": "substrate.notices",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "38b904a1cf83df048360fb2480571b749fd98d57e11f1afdffb5a74a78166fea",
          "completed_at": "2026-07-15T18:00:11Z"
        },
        {
          "step_id": "goals",
          "action": "substrate.goals",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "cdfd4de44a28140e686159f34f7b47975954c67e1d1efcef666e985acb136ed8",
          "completed_at": "2026-07-15T18:00:11Z"
        }
      ],
      "steps": [
        {
          "id": "config",
          "action": "config.audit",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-15T18:00:10Z",
          "output": {
            "status": "ok",
            "summary": {
              "settings": 195,
              "mutable": 186,
              "read_only_or_managed": 9,
              "unclassified": 0,
              "unknown": 0,
              "invalid": 0,
              "missing_using_defaults": 0
            },
            "unclassified_keys": [],
            "unknown_keys": [],
            "invalid_values": [],
            "missing_using_defaults": []
          },
          "output_hash": "3782ec2317c0c8ee7598634310a2804d8aae4735f557498f9d3b8fae7c45e1e5",
          "completed_at": "2026-07-15T18:00:10Z"
        },
        {
          "id": "services",
          "action": "services.audit",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-15T18:00:10Z",
          "output": {
            "status": "ok",
            "summary": {
              "critical": 0,
              "high": 0,
              "medium": 0,
              "low": 0
            },
            "findings": []
          },
          "output_hash": "13dcc58bd528f3efa3e6e0fa0853a6eedc376f1f3685fbd4869cbb2b60382ee3",
          "completed_at": "2026-07-15T18:00:10Z"
        },
        {
          "id": "state",
          "action": "state.consistency",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-15T18:00:10Z",
          "output": {
            "status": "ok",
            "repo_root": "D:\\Projects\\prd-plugin",
            "summary": {
              "errors": 0,
              "warnings": 0,
              "infos": 0
            },
            "findings": []
          },
          "output_hash": "5a1c6e5246defb1b6b6b90ff734db95bece2886b408ab112ed9b8e67222d5568",
          "completed_at": "2026-07-15T18:00:11Z"
        },
        {
          "id": "status",
          "action": "state.query",
          "status": "completed",
          "resolved_input_hash": "a15231a2142a2a9a85355a8b9cbbccffe01a9c9c2c2fd8c2bc2987cdc481564a",
          "started_at": "2026-07-15T18:00:11Z",
          "output": {
            "repo_root": "D:\\Projects\\prd-plugin",
            "autonomy_level": "autonomous",
            "requests_by_status": {
              "deferred": 1,
              "implemented": 80,
              "proposed": 1,
              "rejected": 1
            },
            "active_tracking": [],
            "tracking_branches": [],
            "tracking_branch_counts": {},
            "tracking_branch_errors": [],
            "open_health": [],
            "stale_count": 0,
            "skill_usage": {
              "project-decision-policy": 1,
              "project-request-intake": 1,
              "project-test-driven-implementation": 1,
              "project-verification-before-completion": 1,
              "project-llm-wiki": 1
            },
            "wiki_backfill_pending": false,
            "version_update": null
          },
          "output_hash": "8ba9f7d3cc6705af37de9e3324d1258e21ccacb5ab0b2d7b389ca08885e11187",
          "completed_at": "2026-07-15T18:00:11Z"
        },
        {
          "id": "substrate",
          "action": "substrate.preflight",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-15T18:00:11Z",
          "output": {
            "status": "disabled",
            "services": {
              "status": "ok",
              "summary": {
                "critical": 0,
                "high": 0,
                "medium": 0,
                "low": 0
              },
              "findings": []
            },
            "policy": {
              "configured": {
                "enabled": false,
                "mode": "off",
                "capabilities": [
                  "records",
                  "graph",
                  "events"
                ],
                "contract_version": 2,
                "require_source_refs": true,
                "endpoint": "http://127.0.0.1:47124",
                "manual_url": "http://127.0.0.1:47124/utcp.json",
                "knowledge_browse_url": "http://127.0.0.1:5276",
                "auth_env": "AI_COLLAB_API_KEY",
                "timeout_seconds": 5,
                "max_result_bytes": 1048576,
                "cache_ttl_seconds": 60,
                "fallback": "local",
                "automation": {
                  "discovery_on_session_start": true,
                  "knowledge_recall": true,
                  "memory_recall": true,
                  "context_enrichment": true,
                  "notices_on_session_start": false,
                  "goals_sync": false,
                  "telemetry_on_maintenance": false,
                  "reporting_dispatch": true,
                  "judgment_dispatch": true,
                  "verification_execution": true
                }
              },
              "active": false,
              "effective_mode": "off",
              "effective_capabilities": []
            }
          },
          "output_hash": "a6df426290b4549a59eecaa0519ead9bcc50b7fcb25bd2185ff6047960f19ccb",
          "completed_at": "2026-07-15T18:00:11Z"
        },
        {
          "id": "notices",
          "action": "substrate.notices",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-15T18:00:11Z",
          "output": {
            "status": "disabled"
          },
          "output_hash": "38b904a1cf83df048360fb2480571b749fd98d57e11f1afdffb5a74a78166fea",
          "completed_at": "2026-07-15T18:00:11Z"
        },
        {
          "id": "goals",
          "action": "substrate.goals",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-15T18:00:11Z",
          "output": {
            "status": "disabled",
            "created": 0,
            "observed": 0,
            "results": []
          },
          "output_hash": "cdfd4de44a28140e686159f34f7b47975954c67e1d1efcef666e985acb136ed8",
          "completed_at": "2026-07-15T18:00:11Z"
        }
      ],
      "completed_at": "2026-07-15T18:00:11Z"
    },
    {
      "id": "WFR-154",
      "schema_version": "1.0",
      "workflow_id": "session.stop",
      "workflow_version": 1,
      "definition_hash": "0cef7bb3e28321be8f85375c154955a69310ce297e47de3f3b8dd48f77a2f07d",
      "plan_hash": "a5e1d77ac734217487fc418e29c7163f4e81178e25d171e70cd4c999d527d3e8",
      "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
      "inputs": {},
      "idempotency_key": "hook:Stop:019f66ef-a136-71c2-a853-5c79ca7136ba",
      "status": "completed",
      "attempt": 1,
      "created_at": "2026-07-15T18:00:15Z",
      "updated_at": "2026-07-15T18:00:16Z",
      "receipts": [
        {
          "step_id": "state",
          "action": "state.consistency",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "5a1c6e5246defb1b6b6b90ff734db95bece2886b408ab112ed9b8e67222d5568",
          "completed_at": "2026-07-15T18:00:16Z"
        },
        {
          "step_id": "goals",
          "action": "substrate.goals",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "cdfd4de44a28140e686159f34f7b47975954c67e1d1efcef666e985acb136ed8",
          "completed_at": "2026-07-15T18:00:16Z"
        },
        {
          "step_id": "staleness",
          "action": "staleness.audit",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "1e81cb0ffd0a4d04626920a203b38d2d23a264cd43e807a85d375d69cae8a658",
          "completed_at": "2026-07-15T18:00:16Z"
        },
        {
          "step_id": "reflections",
          "action": "reflection.list",
          "input_hash": "0172e841ab4c13b3a4061f073f9d68a716ec87a8a5d52fde41823385e0582573",
          "output_hash": "c1b6b635c0bab21120657277f14ef6f839909875f307a3745fa48aee2bd6e449",
          "completed_at": "2026-07-15T18:00:16Z"
        },
        {
          "step_id": "bundle",
          "action": "reporting.bundle",
          "input_hash": "aed8ebb688dc3c085dd978d7c4120572173c3cb87e75919e4a937dcca6ef9457",
          "output_hash": "f61aa7bfac7c2e96e3bf2d3386a95e45d2db52d040f05aff9ea963197eacc3f6",
          "completed_at": "2026-07-15T18:00:16Z"
        },
        {
          "step_id": "delegated",
          "action": "reporting.delegate",
          "input_hash": "5bf4dfad88c9958da759cb1561ca5fdd8f3ac9050e938bfde85af5c8d804adc9",
          "output_hash": "e6085059f197def80ae95add1f328418107bea5436c9bd002530043646a3a95c",
          "completed_at": "2026-07-15T18:00:16Z"
        }
      ],
      "steps": [
        {
          "id": "state",
          "action": "state.consistency",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-15T18:00:15Z",
          "output": {
            "status": "ok",
            "repo_root": "D:\\Projects\\prd-plugin",
            "summary": {
              "errors": 0,
              "warnings": 0,
              "infos": 0
            },
            "findings": []
          },
          "output_hash": "5a1c6e5246defb1b6b6b90ff734db95bece2886b408ab112ed9b8e67222d5568",
          "completed_at": "2026-07-15T18:00:16Z"
        },
        {
          "id": "goals",
          "action": "substrate.goals",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-15T18:00:16Z",
          "output": {
            "status": "disabled",
            "created": 0,
            "observed": 0,
            "results": []
          },
          "output_hash": "cdfd4de44a28140e686159f34f7b47975954c67e1d1efcef666e985acb136ed8",
          "completed_at": "2026-07-15T18:00:16Z"
        },
        {
          "id": "staleness",
          "action": "staleness.audit",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-15T18:00:16Z",
          "output": {
            "status": "ok",
            "repo_root": "D:\\Projects\\prd-plugin",
            "counts": {
              "stale": 0
            },
            "stale": []
          },
          "output_hash": "1e81cb0ffd0a4d04626920a203b38d2d23a264cd43e807a85d375d69cae8a658",
          "completed_at": "2026-07-15T18:00:16Z"
        },
        {
          "id": "reflections",
          "action": "reflection.list",
          "status": "completed",
          "resolved_input_hash": "0172e841ab4c13b3a4061f073f9d68a716ec87a8a5d52fde41823385e0582573",
          "started_at": "2026-07-15T18:00:16Z",
          "output": {
            "enabled": false,
            "on_stop": true,
            "max_questions_per_stop": 5,
            "categories": [
              {
                "id": "behaviour_quality",
                "name": "Behaviour quality",
                "enabled": true,
                "question_count": 3
              },
              {
                "id": "harness_friction",
                "name": "Harness friction",
                "enabled": true,
                "question_count": 2
              }
            ],
            "questions": [
              {
                "id": "RFQ-001",
                "text": "Based on the work you just carried out, would you classify your behaviour as good? Answer yes or no and cite observable evidence.",
                "enabled": true,
                "category_id": "behaviour_quality",
                "category_name": "Behaviour quality",
                "effective_enabled": false
              },
              {
                "id": "RFQ-002",
                "text": "If you answered no, what could you do differently to correct your behaviour?",
                "enabled": true,
                "category_id": "behaviour_quality",
                "category_name": "Behaviour quality",
                "effective_enabled": false
              },
              {
                "id": "RFQ-003",
                "text": "Would another attempt using the identified good behaviours materially improve the outcome? Answer yes or no and state the next corrective action if yes.",
                "enabled": true,
                "category_id": "behaviour_quality",
                "category_name": "Behaviour quality",
                "effective_enabled": false
              },
              {
                "id": "RFQ-004",
                "text": "What harness friction points made this work more difficult?",
                "enabled": true,
                "category_id": "harness_friction",
                "category_name": "Harness friction",
                "effective_enabled": false
              },
              {
                "id": "RFQ-005",
                "text": "What up to three changes would most improve friction in the harness?",
                "enabled": true,
                "category_id": "harness_friction",
                "category_name": "Harness friction",
                "effective_enabled": false
              }
            ]
          },
          "output_hash": "c1b6b635c0bab21120657277f14ef6f839909875f307a3745fa48aee2bd6e449",
          "completed_at": "2026-07-15T18:00:16Z"
        },
        {
          "id": "bundle",
          "action": "reporting.bundle",
          "status": "completed",
          "resolved_input_hash": "aed8ebb688dc3c085dd978d7c4120572173c3cb87e75919e4a937dcca6ef9457",
          "started_at": "2026-07-15T18:00:16Z",
          "output": {
            "contract_version": 1,
            "task": "session_summary",
            "repo": "prd-plugin",
            "policy": {
              "enabled": false,
              "executor": "ai-collab",
              "contract_version": 1,
              "profile": "fast-capable",
              "tasks": [
                "report_summary",
                "session_summary",
                "wiki_synthesis",
                "triage_draft"
              ],
              "fallback": "main",
              "require_source_refs": true,
              "max_input_tokens": 12000,
              "max_output_tokens": 1500,
              "timeout_seconds": 30
            },
            "facts": {
              "requests_by_status": {
                "deferred": 1,
                "implemented": 80,
                "proposed": 1,
                "rejected": 1
              },
              "active_requests": [
                {
                  "id": "REQ-072",
                  "status": "proposed",
                  "severity": "low",
                  "summary": "opencode run-until-done: session.idle is a non-blocking notification, so the stop guard can't force continuation on opencode (currently degrades to a printed reminder, 0.5.95). Investigate whether opencode exposes any vetoable/continuation mechanism (a different event, a permission hook, or a 'continue' API) to enforce run-until-done, or accept the reminder as the permanent ceiling. Low priority — user rarely uses opencode."
                }
              ],
              "active_tracking": [],
              "open_health": [],
              "evidence_count": 105,
              "decision_count": 10
            },
            "findings": [],
            "source_refs": [
              ".prd_plugin/config.json",
              ".prd_plugin/state/decisions.json",
              ".prd_plugin/state/evidence.json",
              ".prd_plugin/state/health.json",
              ".prd_plugin/state/requests.json",
              ".prd_plugin/state/tracking.json",
              "REQ-072"
            ],
            "constraints": {
              "max_input_tokens": 12000,
              "max_output_tokens": 1500,
              "timeout_seconds": 30,
              "require_source_refs": true,
              "no_project_state_writes": true,
              "no_secrets_or_local_session_content": true
            }
          },
          "output_hash": "f61aa7bfac7c2e96e3bf2d3386a95e45d2db52d040f05aff9ea963197eacc3f6",
          "completed_at": "2026-07-15T18:00:16Z"
        },
        {
          "id": "delegated",
          "action": "reporting.delegate",
          "status": "completed",
          "resolved_input_hash": "5bf4dfad88c9958da759cb1561ca5fdd8f3ac9050e938bfde85af5c8d804adc9",
          "started_at": "2026-07-15T18:00:16Z",
          "output": {
            "status": "fallback",
            "action": "main",
            "reason": "disabled"
          },
          "output_hash": "e6085059f197def80ae95add1f328418107bea5436c9bd002530043646a3a95c",
          "completed_at": "2026-07-15T18:00:16Z"
        }
      ],
      "completed_at": "2026-07-15T18:00:16Z"
    },
    {
      "id": "WFR-155",
      "schema_version": "1.0",
      "workflow_id": "session.start",
      "workflow_version": 1,
      "definition_hash": "d0f98da02571e6dd27fec4aed92d3c82af9db75f8b90b997bf665635c7b7f6ca",
      "plan_hash": "b5072615ca3b7e9a3bd85d50d1f069d99ef2a9816b32c03a370745ed7a205536",
      "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
      "inputs": {},
      "idempotency_key": "hook:SessionStart:019f66f0-1883-7ae2-8ab2-127ad43446ec",
      "status": "completed",
      "attempt": 1,
      "created_at": "2026-07-15T18:00:41Z",
      "updated_at": "2026-07-15T18:00:43Z",
      "receipts": [
        {
          "step_id": "config",
          "action": "config.audit",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "3782ec2317c0c8ee7598634310a2804d8aae4735f557498f9d3b8fae7c45e1e5",
          "completed_at": "2026-07-15T18:00:42Z"
        },
        {
          "step_id": "services",
          "action": "services.audit",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "13dcc58bd528f3efa3e6e0fa0853a6eedc376f1f3685fbd4869cbb2b60382ee3",
          "completed_at": "2026-07-15T18:00:42Z"
        },
        {
          "step_id": "state",
          "action": "state.consistency",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "5a1c6e5246defb1b6b6b90ff734db95bece2886b408ab112ed9b8e67222d5568",
          "completed_at": "2026-07-15T18:00:42Z"
        },
        {
          "step_id": "status",
          "action": "state.query",
          "input_hash": "a15231a2142a2a9a85355a8b9cbbccffe01a9c9c2c2fd8c2bc2987cdc481564a",
          "output_hash": "8ba9f7d3cc6705af37de9e3324d1258e21ccacb5ab0b2d7b389ca08885e11187",
          "completed_at": "2026-07-15T18:00:42Z"
        },
        {
          "step_id": "substrate",
          "action": "substrate.preflight",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "a6df426290b4549a59eecaa0519ead9bcc50b7fcb25bd2185ff6047960f19ccb",
          "completed_at": "2026-07-15T18:00:42Z"
        },
        {
          "step_id": "notices",
          "action": "substrate.notices",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "38b904a1cf83df048360fb2480571b749fd98d57e11f1afdffb5a74a78166fea",
          "completed_at": "2026-07-15T18:00:43Z"
        },
        {
          "step_id": "goals",
          "action": "substrate.goals",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "cdfd4de44a28140e686159f34f7b47975954c67e1d1efcef666e985acb136ed8",
          "completed_at": "2026-07-15T18:00:43Z"
        }
      ],
      "steps": [
        {
          "id": "config",
          "action": "config.audit",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-15T18:00:42Z",
          "output": {
            "status": "ok",
            "summary": {
              "settings": 195,
              "mutable": 186,
              "read_only_or_managed": 9,
              "unclassified": 0,
              "unknown": 0,
              "invalid": 0,
              "missing_using_defaults": 0
            },
            "unclassified_keys": [],
            "unknown_keys": [],
            "invalid_values": [],
            "missing_using_defaults": []
          },
          "output_hash": "3782ec2317c0c8ee7598634310a2804d8aae4735f557498f9d3b8fae7c45e1e5",
          "completed_at": "2026-07-15T18:00:42Z"
        },
        {
          "id": "services",
          "action": "services.audit",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-15T18:00:42Z",
          "output": {
            "status": "ok",
            "summary": {
              "critical": 0,
              "high": 0,
              "medium": 0,
              "low": 0
            },
            "findings": []
          },
          "output_hash": "13dcc58bd528f3efa3e6e0fa0853a6eedc376f1f3685fbd4869cbb2b60382ee3",
          "completed_at": "2026-07-15T18:00:42Z"
        },
        {
          "id": "state",
          "action": "state.consistency",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-15T18:00:42Z",
          "output": {
            "status": "ok",
            "repo_root": "D:\\Projects\\prd-plugin",
            "summary": {
              "errors": 0,
              "warnings": 0,
              "infos": 0
            },
            "findings": []
          },
          "output_hash": "5a1c6e5246defb1b6b6b90ff734db95bece2886b408ab112ed9b8e67222d5568",
          "completed_at": "2026-07-15T18:00:42Z"
        },
        {
          "id": "status",
          "action": "state.query",
          "status": "completed",
          "resolved_input_hash": "a15231a2142a2a9a85355a8b9cbbccffe01a9c9c2c2fd8c2bc2987cdc481564a",
          "started_at": "2026-07-15T18:00:42Z",
          "output": {
            "repo_root": "D:\\Projects\\prd-plugin",
            "autonomy_level": "autonomous",
            "requests_by_status": {
              "deferred": 1,
              "implemented": 80,
              "proposed": 1,
              "rejected": 1
            },
            "active_tracking": [],
            "tracking_branches": [],
            "tracking_branch_counts": {},
            "tracking_branch_errors": [],
            "open_health": [],
            "stale_count": 0,
            "skill_usage": {
              "project-decision-policy": 1,
              "project-request-intake": 1,
              "project-test-driven-implementation": 1,
              "project-verification-before-completion": 1,
              "project-llm-wiki": 1
            },
            "wiki_backfill_pending": false,
            "version_update": null
          },
          "output_hash": "8ba9f7d3cc6705af37de9e3324d1258e21ccacb5ab0b2d7b389ca08885e11187",
          "completed_at": "2026-07-15T18:00:42Z"
        },
        {
          "id": "substrate",
          "action": "substrate.preflight",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-15T18:00:42Z",
          "output": {
            "status": "disabled",
            "services": {
              "status": "ok",
              "summary": {
                "critical": 0,
                "high": 0,
                "medium": 0,
                "low": 0
              },
              "findings": []
            },
            "policy": {
              "configured": {
                "enabled": false,
                "mode": "off",
                "capabilities": [
                  "records",
                  "graph",
                  "events"
                ],
                "contract_version": 2,
                "require_source_refs": true,
                "endpoint": "http://127.0.0.1:47124",
                "manual_url": "http://127.0.0.1:47124/utcp.json",
                "knowledge_browse_url": "http://127.0.0.1:5276",
                "auth_env": "AI_COLLAB_API_KEY",
                "timeout_seconds": 5,
                "max_result_bytes": 1048576,
                "cache_ttl_seconds": 60,
                "fallback": "local",
                "automation": {
                  "discovery_on_session_start": true,
                  "knowledge_recall": true,
                  "memory_recall": true,
                  "context_enrichment": true,
                  "notices_on_session_start": false,
                  "goals_sync": false,
                  "telemetry_on_maintenance": false,
                  "reporting_dispatch": true,
                  "judgment_dispatch": true,
                  "verification_execution": true
                }
              },
              "active": false,
              "effective_mode": "off",
              "effective_capabilities": []
            }
          },
          "output_hash": "a6df426290b4549a59eecaa0519ead9bcc50b7fcb25bd2185ff6047960f19ccb",
          "completed_at": "2026-07-15T18:00:42Z"
        },
        {
          "id": "notices",
          "action": "substrate.notices",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-15T18:00:43Z",
          "output": {
            "status": "disabled"
          },
          "output_hash": "38b904a1cf83df048360fb2480571b749fd98d57e11f1afdffb5a74a78166fea",
          "completed_at": "2026-07-15T18:00:43Z"
        },
        {
          "id": "goals",
          "action": "substrate.goals",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-15T18:00:43Z",
          "output": {
            "status": "disabled",
            "created": 0,
            "observed": 0,
            "results": []
          },
          "output_hash": "cdfd4de44a28140e686159f34f7b47975954c67e1d1efcef666e985acb136ed8",
          "completed_at": "2026-07-15T18:00:43Z"
        }
      ],
      "completed_at": "2026-07-15T18:00:43Z"
    },
    {
      "id": "WFR-156",
      "schema_version": "1.0",
      "workflow_id": "session.stop",
      "workflow_version": 1,
      "definition_hash": "0cef7bb3e28321be8f85375c154955a69310ce297e47de3f3b8dd48f77a2f07d",
      "plan_hash": "a5e1d77ac734217487fc418e29c7163f4e81178e25d171e70cd4c999d527d3e8",
      "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
      "inputs": {},
      "idempotency_key": "hook:Stop:019f66f0-1883-7ae2-8ab2-127ad43446ec",
      "status": "completed",
      "attempt": 1,
      "created_at": "2026-07-15T18:00:59Z",
      "updated_at": "2026-07-15T18:01:00Z",
      "receipts": [
        {
          "step_id": "state",
          "action": "state.consistency",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "5a1c6e5246defb1b6b6b90ff734db95bece2886b408ab112ed9b8e67222d5568",
          "completed_at": "2026-07-15T18:00:59Z"
        },
        {
          "step_id": "goals",
          "action": "substrate.goals",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "cdfd4de44a28140e686159f34f7b47975954c67e1d1efcef666e985acb136ed8",
          "completed_at": "2026-07-15T18:00:59Z"
        },
        {
          "step_id": "staleness",
          "action": "staleness.audit",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "1e81cb0ffd0a4d04626920a203b38d2d23a264cd43e807a85d375d69cae8a658",
          "completed_at": "2026-07-15T18:01:00Z"
        },
        {
          "step_id": "reflections",
          "action": "reflection.list",
          "input_hash": "0172e841ab4c13b3a4061f073f9d68a716ec87a8a5d52fde41823385e0582573",
          "output_hash": "c1b6b635c0bab21120657277f14ef6f839909875f307a3745fa48aee2bd6e449",
          "completed_at": "2026-07-15T18:01:00Z"
        },
        {
          "step_id": "bundle",
          "action": "reporting.bundle",
          "input_hash": "aed8ebb688dc3c085dd978d7c4120572173c3cb87e75919e4a937dcca6ef9457",
          "output_hash": "f61aa7bfac7c2e96e3bf2d3386a95e45d2db52d040f05aff9ea963197eacc3f6",
          "completed_at": "2026-07-15T18:01:00Z"
        },
        {
          "step_id": "delegated",
          "action": "reporting.delegate",
          "input_hash": "5bf4dfad88c9958da759cb1561ca5fdd8f3ac9050e938bfde85af5c8d804adc9",
          "output_hash": "e6085059f197def80ae95add1f328418107bea5436c9bd002530043646a3a95c",
          "completed_at": "2026-07-15T18:01:00Z"
        }
      ],
      "steps": [
        {
          "id": "state",
          "action": "state.consistency",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-15T18:00:59Z",
          "output": {
            "status": "ok",
            "repo_root": "D:\\Projects\\prd-plugin",
            "summary": {
              "errors": 0,
              "warnings": 0,
              "infos": 0
            },
            "findings": []
          },
          "output_hash": "5a1c6e5246defb1b6b6b90ff734db95bece2886b408ab112ed9b8e67222d5568",
          "completed_at": "2026-07-15T18:00:59Z"
        },
        {
          "id": "goals",
          "action": "substrate.goals",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-15T18:00:59Z",
          "output": {
            "status": "disabled",
            "created": 0,
            "observed": 0,
            "results": []
          },
          "output_hash": "cdfd4de44a28140e686159f34f7b47975954c67e1d1efcef666e985acb136ed8",
          "completed_at": "2026-07-15T18:00:59Z"
        },
        {
          "id": "staleness",
          "action": "staleness.audit",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-15T18:01:00Z",
          "output": {
            "status": "ok",
            "repo_root": "D:\\Projects\\prd-plugin",
            "counts": {
              "stale": 0
            },
            "stale": []
          },
          "output_hash": "1e81cb0ffd0a4d04626920a203b38d2d23a264cd43e807a85d375d69cae8a658",
          "completed_at": "2026-07-15T18:01:00Z"
        },
        {
          "id": "reflections",
          "action": "reflection.list",
          "status": "completed",
          "resolved_input_hash": "0172e841ab4c13b3a4061f073f9d68a716ec87a8a5d52fde41823385e0582573",
          "started_at": "2026-07-15T18:01:00Z",
          "output": {
            "enabled": false,
            "on_stop": true,
            "max_questions_per_stop": 5,
            "categories": [
              {
                "id": "behaviour_quality",
                "name": "Behaviour quality",
                "enabled": true,
                "question_count": 3
              },
              {
                "id": "harness_friction",
                "name": "Harness friction",
                "enabled": true,
                "question_count": 2
              }
            ],
            "questions": [
              {
                "id": "RFQ-001",
                "text": "Based on the work you just carried out, would you classify your behaviour as good? Answer yes or no and cite observable evidence.",
                "enabled": true,
                "category_id": "behaviour_quality",
                "category_name": "Behaviour quality",
                "effective_enabled": false
              },
              {
                "id": "RFQ-002",
                "text": "If you answered no, what could you do differently to correct your behaviour?",
                "enabled": true,
                "category_id": "behaviour_quality",
                "category_name": "Behaviour quality",
                "effective_enabled": false
              },
              {
                "id": "RFQ-003",
                "text": "Would another attempt using the identified good behaviours materially improve the outcome? Answer yes or no and state the next corrective action if yes.",
                "enabled": true,
                "category_id": "behaviour_quality",
                "category_name": "Behaviour quality",
                "effective_enabled": false
              },
              {
                "id": "RFQ-004",
                "text": "What harness friction points made this work more difficult?",
                "enabled": true,
                "category_id": "harness_friction",
                "category_name": "Harness friction",
                "effective_enabled": false
              },
              {
                "id": "RFQ-005",
                "text": "What up to three changes would most improve friction in the harness?",
                "enabled": true,
                "category_id": "harness_friction",
                "category_name": "Harness friction",
                "effective_enabled": false
              }
            ]
          },
          "output_hash": "c1b6b635c0bab21120657277f14ef6f839909875f307a3745fa48aee2bd6e449",
          "completed_at": "2026-07-15T18:01:00Z"
        },
        {
          "id": "bundle",
          "action": "reporting.bundle",
          "status": "completed",
          "resolved_input_hash": "aed8ebb688dc3c085dd978d7c4120572173c3cb87e75919e4a937dcca6ef9457",
          "started_at": "2026-07-15T18:01:00Z",
          "output": {
            "contract_version": 1,
            "task": "session_summary",
            "repo": "prd-plugin",
            "policy": {
              "enabled": false,
              "executor": "ai-collab",
              "contract_version": 1,
              "profile": "fast-capable",
              "tasks": [
                "report_summary",
                "session_summary",
                "wiki_synthesis",
                "triage_draft"
              ],
              "fallback": "main",
              "require_source_refs": true,
              "max_input_tokens": 12000,
              "max_output_tokens": 1500,
              "timeout_seconds": 30
            },
            "facts": {
              "requests_by_status": {
                "deferred": 1,
                "implemented": 80,
                "proposed": 1,
                "rejected": 1
              },
              "active_requests": [
                {
                  "id": "REQ-072",
                  "status": "proposed",
                  "severity": "low",
                  "summary": "opencode run-until-done: session.idle is a non-blocking notification, so the stop guard can't force continuation on opencode (currently degrades to a printed reminder, 0.5.95). Investigate whether opencode exposes any vetoable/continuation mechanism (a different event, a permission hook, or a 'continue' API) to enforce run-until-done, or accept the reminder as the permanent ceiling. Low priority — user rarely uses opencode."
                }
              ],
              "active_tracking": [],
              "open_health": [],
              "evidence_count": 105,
              "decision_count": 10
            },
            "findings": [],
            "source_refs": [
              ".prd_plugin/config.json",
              ".prd_plugin/state/decisions.json",
              ".prd_plugin/state/evidence.json",
              ".prd_plugin/state/health.json",
              ".prd_plugin/state/requests.json",
              ".prd_plugin/state/tracking.json",
              "REQ-072"
            ],
            "constraints": {
              "max_input_tokens": 12000,
              "max_output_tokens": 1500,
              "timeout_seconds": 30,
              "require_source_refs": true,
              "no_project_state_writes": true,
              "no_secrets_or_local_session_content": true
            }
          },
          "output_hash": "f61aa7bfac7c2e96e3bf2d3386a95e45d2db52d040f05aff9ea963197eacc3f6",
          "completed_at": "2026-07-15T18:01:00Z"
        },
        {
          "id": "delegated",
          "action": "reporting.delegate",
          "status": "completed",
          "resolved_input_hash": "5bf4dfad88c9958da759cb1561ca5fdd8f3ac9050e938bfde85af5c8d804adc9",
          "started_at": "2026-07-15T18:01:00Z",
          "output": {
            "status": "fallback",
            "action": "main",
            "reason": "disabled"
          },
          "output_hash": "e6085059f197def80ae95add1f328418107bea5436c9bd002530043646a3a95c",
          "completed_at": "2026-07-15T18:01:00Z"
        }
      ],
      "completed_at": "2026-07-15T18:01:00Z"
    },
    {
      "id": "WFR-157",
      "schema_version": "1.0",
      "workflow_id": "session.start",
      "workflow_version": 1,
      "definition_hash": "d0f98da02571e6dd27fec4aed92d3c82af9db75f8b90b997bf665635c7b7f6ca",
      "plan_hash": "b5072615ca3b7e9a3bd85d50d1f069d99ef2a9816b32c03a370745ed7a205536",
      "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
      "inputs": {},
      "idempotency_key": "hook:SessionStart:019f66f2-5593-7603-90b8-09dd9373004c",
      "status": "completed",
      "attempt": 1,
      "created_at": "2026-07-15T18:03:11Z",
      "updated_at": "2026-07-15T18:03:12Z",
      "receipts": [
        {
          "step_id": "config",
          "action": "config.audit",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "3782ec2317c0c8ee7598634310a2804d8aae4735f557498f9d3b8fae7c45e1e5",
          "completed_at": "2026-07-15T18:03:11Z"
        },
        {
          "step_id": "services",
          "action": "services.audit",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "13dcc58bd528f3efa3e6e0fa0853a6eedc376f1f3685fbd4869cbb2b60382ee3",
          "completed_at": "2026-07-15T18:03:11Z"
        },
        {
          "step_id": "state",
          "action": "state.consistency",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "5a1c6e5246defb1b6b6b90ff734db95bece2886b408ab112ed9b8e67222d5568",
          "completed_at": "2026-07-15T18:03:11Z"
        },
        {
          "step_id": "status",
          "action": "state.query",
          "input_hash": "a15231a2142a2a9a85355a8b9cbbccffe01a9c9c2c2fd8c2bc2987cdc481564a",
          "output_hash": "8ba9f7d3cc6705af37de9e3324d1258e21ccacb5ab0b2d7b389ca08885e11187",
          "completed_at": "2026-07-15T18:03:12Z"
        },
        {
          "step_id": "substrate",
          "action": "substrate.preflight",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "a6df426290b4549a59eecaa0519ead9bcc50b7fcb25bd2185ff6047960f19ccb",
          "completed_at": "2026-07-15T18:03:12Z"
        },
        {
          "step_id": "notices",
          "action": "substrate.notices",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "38b904a1cf83df048360fb2480571b749fd98d57e11f1afdffb5a74a78166fea",
          "completed_at": "2026-07-15T18:03:12Z"
        },
        {
          "step_id": "goals",
          "action": "substrate.goals",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "cdfd4de44a28140e686159f34f7b47975954c67e1d1efcef666e985acb136ed8",
          "completed_at": "2026-07-15T18:03:12Z"
        }
      ],
      "steps": [
        {
          "id": "config",
          "action": "config.audit",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-15T18:03:11Z",
          "output": {
            "status": "ok",
            "summary": {
              "settings": 195,
              "mutable": 186,
              "read_only_or_managed": 9,
              "unclassified": 0,
              "unknown": 0,
              "invalid": 0,
              "missing_using_defaults": 0
            },
            "unclassified_keys": [],
            "unknown_keys": [],
            "invalid_values": [],
            "missing_using_defaults": []
          },
          "output_hash": "3782ec2317c0c8ee7598634310a2804d8aae4735f557498f9d3b8fae7c45e1e5",
          "completed_at": "2026-07-15T18:03:11Z"
        },
        {
          "id": "services",
          "action": "services.audit",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-15T18:03:11Z",
          "output": {
            "status": "ok",
            "summary": {
              "critical": 0,
              "high": 0,
              "medium": 0,
              "low": 0
            },
            "findings": []
          },
          "output_hash": "13dcc58bd528f3efa3e6e0fa0853a6eedc376f1f3685fbd4869cbb2b60382ee3",
          "completed_at": "2026-07-15T18:03:11Z"
        },
        {
          "id": "state",
          "action": "state.consistency",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-15T18:03:11Z",
          "output": {
            "status": "ok",
            "repo_root": "D:\\Projects\\prd-plugin",
            "summary": {
              "errors": 0,
              "warnings": 0,
              "infos": 0
            },
            "findings": []
          },
          "output_hash": "5a1c6e5246defb1b6b6b90ff734db95bece2886b408ab112ed9b8e67222d5568",
          "completed_at": "2026-07-15T18:03:11Z"
        },
        {
          "id": "status",
          "action": "state.query",
          "status": "completed",
          "resolved_input_hash": "a15231a2142a2a9a85355a8b9cbbccffe01a9c9c2c2fd8c2bc2987cdc481564a",
          "started_at": "2026-07-15T18:03:11Z",
          "output": {
            "repo_root": "D:\\Projects\\prd-plugin",
            "autonomy_level": "autonomous",
            "requests_by_status": {
              "deferred": 1,
              "implemented": 80,
              "proposed": 1,
              "rejected": 1
            },
            "active_tracking": [],
            "tracking_branches": [],
            "tracking_branch_counts": {},
            "tracking_branch_errors": [],
            "open_health": [],
            "stale_count": 0,
            "skill_usage": {
              "project-decision-policy": 1,
              "project-request-intake": 1,
              "project-test-driven-implementation": 1,
              "project-verification-before-completion": 1,
              "project-llm-wiki": 1
            },
            "wiki_backfill_pending": false,
            "version_update": null
          },
          "output_hash": "8ba9f7d3cc6705af37de9e3324d1258e21ccacb5ab0b2d7b389ca08885e11187",
          "completed_at": "2026-07-15T18:03:12Z"
        },
        {
          "id": "substrate",
          "action": "substrate.preflight",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-15T18:03:12Z",
          "output": {
            "status": "disabled",
            "services": {
              "status": "ok",
              "summary": {
                "critical": 0,
                "high": 0,
                "medium": 0,
                "low": 0
              },
              "findings": []
            },
            "policy": {
              "configured": {
                "enabled": false,
                "mode": "off",
                "capabilities": [
                  "records",
                  "graph",
                  "events"
                ],
                "contract_version": 2,
                "require_source_refs": true,
                "endpoint": "http://127.0.0.1:47124",
                "manual_url": "http://127.0.0.1:47124/utcp.json",
                "knowledge_browse_url": "http://127.0.0.1:5276",
                "auth_env": "AI_COLLAB_API_KEY",
                "timeout_seconds": 5,
                "max_result_bytes": 1048576,
                "cache_ttl_seconds": 60,
                "fallback": "local",
                "automation": {
                  "discovery_on_session_start": true,
                  "knowledge_recall": true,
                  "memory_recall": true,
                  "context_enrichment": true,
                  "notices_on_session_start": false,
                  "goals_sync": false,
                  "telemetry_on_maintenance": false,
                  "reporting_dispatch": true,
                  "judgment_dispatch": true,
                  "verification_execution": true
                }
              },
              "active": false,
              "effective_mode": "off",
              "effective_capabilities": []
            }
          },
          "output_hash": "a6df426290b4549a59eecaa0519ead9bcc50b7fcb25bd2185ff6047960f19ccb",
          "completed_at": "2026-07-15T18:03:12Z"
        },
        {
          "id": "notices",
          "action": "substrate.notices",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-15T18:03:12Z",
          "output": {
            "status": "disabled"
          },
          "output_hash": "38b904a1cf83df048360fb2480571b749fd98d57e11f1afdffb5a74a78166fea",
          "completed_at": "2026-07-15T18:03:12Z"
        },
        {
          "id": "goals",
          "action": "substrate.goals",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-15T18:03:12Z",
          "output": {
            "status": "disabled",
            "created": 0,
            "observed": 0,
            "results": []
          },
          "output_hash": "cdfd4de44a28140e686159f34f7b47975954c67e1d1efcef666e985acb136ed8",
          "completed_at": "2026-07-15T18:03:12Z"
        }
      ],
      "completed_at": "2026-07-15T18:03:12Z"
    },
    {
      "id": "WFR-158",
      "schema_version": "1.0",
      "workflow_id": "session.stop",
      "workflow_version": 1,
      "definition_hash": "0cef7bb3e28321be8f85375c154955a69310ce297e47de3f3b8dd48f77a2f07d",
      "plan_hash": "a5e1d77ac734217487fc418e29c7163f4e81178e25d171e70cd4c999d527d3e8",
      "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
      "inputs": {},
      "idempotency_key": "hook:Stop:019f66f2-5593-7603-90b8-09dd9373004c",
      "status": "completed",
      "attempt": 1,
      "created_at": "2026-07-15T18:03:15Z",
      "updated_at": "2026-07-15T18:03:16Z",
      "receipts": [
        {
          "step_id": "state",
          "action": "state.consistency",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "5a1c6e5246defb1b6b6b90ff734db95bece2886b408ab112ed9b8e67222d5568",
          "completed_at": "2026-07-15T18:03:16Z"
        },
        {
          "step_id": "goals",
          "action": "substrate.goals",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "cdfd4de44a28140e686159f34f7b47975954c67e1d1efcef666e985acb136ed8",
          "completed_at": "2026-07-15T18:03:16Z"
        },
        {
          "step_id": "staleness",
          "action": "staleness.audit",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "1e81cb0ffd0a4d04626920a203b38d2d23a264cd43e807a85d375d69cae8a658",
          "completed_at": "2026-07-15T18:03:16Z"
        },
        {
          "step_id": "reflections",
          "action": "reflection.list",
          "input_hash": "0172e841ab4c13b3a4061f073f9d68a716ec87a8a5d52fde41823385e0582573",
          "output_hash": "c1b6b635c0bab21120657277f14ef6f839909875f307a3745fa48aee2bd6e449",
          "completed_at": "2026-07-15T18:03:16Z"
        },
        {
          "step_id": "bundle",
          "action": "reporting.bundle",
          "input_hash": "aed8ebb688dc3c085dd978d7c4120572173c3cb87e75919e4a937dcca6ef9457",
          "output_hash": "f61aa7bfac7c2e96e3bf2d3386a95e45d2db52d040f05aff9ea963197eacc3f6",
          "completed_at": "2026-07-15T18:03:16Z"
        },
        {
          "step_id": "delegated",
          "action": "reporting.delegate",
          "input_hash": "5bf4dfad88c9958da759cb1561ca5fdd8f3ac9050e938bfde85af5c8d804adc9",
          "output_hash": "e6085059f197def80ae95add1f328418107bea5436c9bd002530043646a3a95c",
          "completed_at": "2026-07-15T18:03:16Z"
        }
      ],
      "steps": [
        {
          "id": "state",
          "action": "state.consistency",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-15T18:03:15Z",
          "output": {
            "status": "ok",
            "repo_root": "D:\\Projects\\prd-plugin",
            "summary": {
              "errors": 0,
              "warnings": 0,
              "infos": 0
            },
            "findings": []
          },
          "output_hash": "5a1c6e5246defb1b6b6b90ff734db95bece2886b408ab112ed9b8e67222d5568",
          "completed_at": "2026-07-15T18:03:16Z"
        },
        {
          "id": "goals",
          "action": "substrate.goals",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-15T18:03:16Z",
          "output": {
            "status": "disabled",
            "created": 0,
            "observed": 0,
            "results": []
          },
          "output_hash": "cdfd4de44a28140e686159f34f7b47975954c67e1d1efcef666e985acb136ed8",
          "completed_at": "2026-07-15T18:03:16Z"
        },
        {
          "id": "staleness",
          "action": "staleness.audit",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-15T18:03:16Z",
          "output": {
            "status": "ok",
            "repo_root": "D:\\Projects\\prd-plugin",
            "counts": {
              "stale": 0
            },
            "stale": []
          },
          "output_hash": "1e81cb0ffd0a4d04626920a203b38d2d23a264cd43e807a85d375d69cae8a658",
          "completed_at": "2026-07-15T18:03:16Z"
        },
        {
          "id": "reflections",
          "action": "reflection.list",
          "status": "completed",
          "resolved_input_hash": "0172e841ab4c13b3a4061f073f9d68a716ec87a8a5d52fde41823385e0582573",
          "started_at": "2026-07-15T18:03:16Z",
          "output": {
            "enabled": false,
            "on_stop": true,
            "max_questions_per_stop": 5,
            "categories": [
              {
                "id": "behaviour_quality",
                "name": "Behaviour quality",
                "enabled": true,
                "question_count": 3
              },
              {
                "id": "harness_friction",
                "name": "Harness friction",
                "enabled": true,
                "question_count": 2
              }
            ],
            "questions": [
              {
                "id": "RFQ-001",
                "text": "Based on the work you just carried out, would you classify your behaviour as good? Answer yes or no and cite observable evidence.",
                "enabled": true,
                "category_id": "behaviour_quality",
                "category_name": "Behaviour quality",
                "effective_enabled": false
              },
              {
                "id": "RFQ-002",
                "text": "If you answered no, what could you do differently to correct your behaviour?",
                "enabled": true,
                "category_id": "behaviour_quality",
                "category_name": "Behaviour quality",
                "effective_enabled": false
              },
              {
                "id": "RFQ-003",
                "text": "Would another attempt using the identified good behaviours materially improve the outcome? Answer yes or no and state the next corrective action if yes.",
                "enabled": true,
                "category_id": "behaviour_quality",
                "category_name": "Behaviour quality",
                "effective_enabled": false
              },
              {
                "id": "RFQ-004",
                "text": "What harness friction points made this work more difficult?",
                "enabled": true,
                "category_id": "harness_friction",
                "category_name": "Harness friction",
                "effective_enabled": false
              },
              {
                "id": "RFQ-005",
                "text": "What up to three changes would most improve friction in the harness?",
                "enabled": true,
                "category_id": "harness_friction",
                "category_name": "Harness friction",
                "effective_enabled": false
              }
            ]
          },
          "output_hash": "c1b6b635c0bab21120657277f14ef6f839909875f307a3745fa48aee2bd6e449",
          "completed_at": "2026-07-15T18:03:16Z"
        },
        {
          "id": "bundle",
          "action": "reporting.bundle",
          "status": "completed",
          "resolved_input_hash": "aed8ebb688dc3c085dd978d7c4120572173c3cb87e75919e4a937dcca6ef9457",
          "started_at": "2026-07-15T18:03:16Z",
          "output": {
            "contract_version": 1,
            "task": "session_summary",
            "repo": "prd-plugin",
            "policy": {
              "enabled": false,
              "executor": "ai-collab",
              "contract_version": 1,
              "profile": "fast-capable",
              "tasks": [
                "report_summary",
                "session_summary",
                "wiki_synthesis",
                "triage_draft"
              ],
              "fallback": "main",
              "require_source_refs": true,
              "max_input_tokens": 12000,
              "max_output_tokens": 1500,
              "timeout_seconds": 30
            },
            "facts": {
              "requests_by_status": {
                "deferred": 1,
                "implemented": 80,
                "proposed": 1,
                "rejected": 1
              },
              "active_requests": [
                {
                  "id": "REQ-072",
                  "status": "proposed",
                  "severity": "low",
                  "summary": "opencode run-until-done: session.idle is a non-blocking notification, so the stop guard can't force continuation on opencode (currently degrades to a printed reminder, 0.5.95). Investigate whether opencode exposes any vetoable/continuation mechanism (a different event, a permission hook, or a 'continue' API) to enforce run-until-done, or accept the reminder as the permanent ceiling. Low priority — user rarely uses opencode."
                }
              ],
              "active_tracking": [],
              "open_health": [],
              "evidence_count": 105,
              "decision_count": 10
            },
            "findings": [],
            "source_refs": [
              ".prd_plugin/config.json",
              ".prd_plugin/state/decisions.json",
              ".prd_plugin/state/evidence.json",
              ".prd_plugin/state/health.json",
              ".prd_plugin/state/requests.json",
              ".prd_plugin/state/tracking.json",
              "REQ-072"
            ],
            "constraints": {
              "max_input_tokens": 12000,
              "max_output_tokens": 1500,
              "timeout_seconds": 30,
              "require_source_refs": true,
              "no_project_state_writes": true,
              "no_secrets_or_local_session_content": true
            }
          },
          "output_hash": "f61aa7bfac7c2e96e3bf2d3386a95e45d2db52d040f05aff9ea963197eacc3f6",
          "completed_at": "2026-07-15T18:03:16Z"
        },
        {
          "id": "delegated",
          "action": "reporting.delegate",
          "status": "completed",
          "resolved_input_hash": "5bf4dfad88c9958da759cb1561ca5fdd8f3ac9050e938bfde85af5c8d804adc9",
          "started_at": "2026-07-15T18:03:16Z",
          "output": {
            "status": "fallback",
            "action": "main",
            "reason": "disabled"
          },
          "output_hash": "e6085059f197def80ae95add1f328418107bea5436c9bd002530043646a3a95c",
          "completed_at": "2026-07-15T18:03:16Z"
        }
      ],
      "completed_at": "2026-07-15T18:03:16Z"
    },
    {
      "id": "WFR-159",
      "schema_version": "1.0",
      "workflow_id": "session.start",
      "workflow_version": 1,
      "definition_hash": "d0f98da02571e6dd27fec4aed92d3c82af9db75f8b90b997bf665635c7b7f6ca",
      "plan_hash": "b5072615ca3b7e9a3bd85d50d1f069d99ef2a9816b32c03a370745ed7a205536",
      "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
      "inputs": {},
      "idempotency_key": "hook:SessionStart:019f66f2-f5b5-7751-a7b8-c0d664ef7eda",
      "status": "completed",
      "attempt": 1,
      "created_at": "2026-07-15T18:03:48Z",
      "updated_at": "2026-07-15T18:03:49Z",
      "receipts": [
        {
          "step_id": "config",
          "action": "config.audit",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "3782ec2317c0c8ee7598634310a2804d8aae4735f557498f9d3b8fae7c45e1e5",
          "completed_at": "2026-07-15T18:03:48Z"
        },
        {
          "step_id": "services",
          "action": "services.audit",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "13dcc58bd528f3efa3e6e0fa0853a6eedc376f1f3685fbd4869cbb2b60382ee3",
          "completed_at": "2026-07-15T18:03:48Z"
        },
        {
          "step_id": "state",
          "action": "state.consistency",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "5a1c6e5246defb1b6b6b90ff734db95bece2886b408ab112ed9b8e67222d5568",
          "completed_at": "2026-07-15T18:03:49Z"
        },
        {
          "step_id": "status",
          "action": "state.query",
          "input_hash": "a15231a2142a2a9a85355a8b9cbbccffe01a9c9c2c2fd8c2bc2987cdc481564a",
          "output_hash": "8ba9f7d3cc6705af37de9e3324d1258e21ccacb5ab0b2d7b389ca08885e11187",
          "completed_at": "2026-07-15T18:03:49Z"
        },
        {
          "step_id": "substrate",
          "action": "substrate.preflight",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "a6df426290b4549a59eecaa0519ead9bcc50b7fcb25bd2185ff6047960f19ccb",
          "completed_at": "2026-07-15T18:03:49Z"
        },
        {
          "step_id": "notices",
          "action": "substrate.notices",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "38b904a1cf83df048360fb2480571b749fd98d57e11f1afdffb5a74a78166fea",
          "completed_at": "2026-07-15T18:03:49Z"
        },
        {
          "step_id": "goals",
          "action": "substrate.goals",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "cdfd4de44a28140e686159f34f7b47975954c67e1d1efcef666e985acb136ed8",
          "completed_at": "2026-07-15T18:03:49Z"
        }
      ],
      "steps": [
        {
          "id": "config",
          "action": "config.audit",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-15T18:03:48Z",
          "output": {
            "status": "ok",
            "summary": {
              "settings": 195,
              "mutable": 186,
              "read_only_or_managed": 9,
              "unclassified": 0,
              "unknown": 0,
              "invalid": 0,
              "missing_using_defaults": 0
            },
            "unclassified_keys": [],
            "unknown_keys": [],
            "invalid_values": [],
            "missing_using_defaults": []
          },
          "output_hash": "3782ec2317c0c8ee7598634310a2804d8aae4735f557498f9d3b8fae7c45e1e5",
          "completed_at": "2026-07-15T18:03:48Z"
        },
        {
          "id": "services",
          "action": "services.audit",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-15T18:03:48Z",
          "output": {
            "status": "ok",
            "summary": {
              "critical": 0,
              "high": 0,
              "medium": 0,
              "low": 0
            },
            "findings": []
          },
          "output_hash": "13dcc58bd528f3efa3e6e0fa0853a6eedc376f1f3685fbd4869cbb2b60382ee3",
          "completed_at": "2026-07-15T18:03:48Z"
        },
        {
          "id": "state",
          "action": "state.consistency",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-15T18:03:48Z",
          "output": {
            "status": "ok",
            "repo_root": "D:\\Projects\\prd-plugin",
            "summary": {
              "errors": 0,
              "warnings": 0,
              "infos": 0
            },
            "findings": []
          },
          "output_hash": "5a1c6e5246defb1b6b6b90ff734db95bece2886b408ab112ed9b8e67222d5568",
          "completed_at": "2026-07-15T18:03:49Z"
        },
        {
          "id": "status",
          "action": "state.query",
          "status": "completed",
          "resolved_input_hash": "a15231a2142a2a9a85355a8b9cbbccffe01a9c9c2c2fd8c2bc2987cdc481564a",
          "started_at": "2026-07-15T18:03:49Z",
          "output": {
            "repo_root": "D:\\Projects\\prd-plugin",
            "autonomy_level": "autonomous",
            "requests_by_status": {
              "deferred": 1,
              "implemented": 80,
              "proposed": 1,
              "rejected": 1
            },
            "active_tracking": [],
            "tracking_branches": [],
            "tracking_branch_counts": {},
            "tracking_branch_errors": [],
            "open_health": [],
            "stale_count": 0,
            "skill_usage": {
              "project-decision-policy": 1,
              "project-request-intake": 1,
              "project-test-driven-implementation": 1,
              "project-verification-before-completion": 1,
              "project-llm-wiki": 1
            },
            "wiki_backfill_pending": false,
            "version_update": null
          },
          "output_hash": "8ba9f7d3cc6705af37de9e3324d1258e21ccacb5ab0b2d7b389ca08885e11187",
          "completed_at": "2026-07-15T18:03:49Z"
        },
        {
          "id": "substrate",
          "action": "substrate.preflight",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-15T18:03:49Z",
          "output": {
            "status": "disabled",
            "services": {
              "status": "ok",
              "summary": {
                "critical": 0,
                "high": 0,
                "medium": 0,
                "low": 0
              },
              "findings": []
            },
            "policy": {
              "configured": {
                "enabled": false,
                "mode": "off",
                "capabilities": [
                  "records",
                  "graph",
                  "events"
                ],
                "contract_version": 2,
                "require_source_refs": true,
                "endpoint": "http://127.0.0.1:47124",
                "manual_url": "http://127.0.0.1:47124/utcp.json",
                "knowledge_browse_url": "http://127.0.0.1:5276",
                "auth_env": "AI_COLLAB_API_KEY",
                "timeout_seconds": 5,
                "max_result_bytes": 1048576,
                "cache_ttl_seconds": 60,
                "fallback": "local",
                "automation": {
                  "discovery_on_session_start": true,
                  "knowledge_recall": true,
                  "memory_recall": true,
                  "context_enrichment": true,
                  "notices_on_session_start": false,
                  "goals_sync": false,
                  "telemetry_on_maintenance": false,
                  "reporting_dispatch": true,
                  "judgment_dispatch": true,
                  "verification_execution": true
                }
              },
              "active": false,
              "effective_mode": "off",
              "effective_capabilities": []
            }
          },
          "output_hash": "a6df426290b4549a59eecaa0519ead9bcc50b7fcb25bd2185ff6047960f19ccb",
          "completed_at": "2026-07-15T18:03:49Z"
        },
        {
          "id": "notices",
          "action": "substrate.notices",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-15T18:03:49Z",
          "output": {
            "status": "disabled"
          },
          "output_hash": "38b904a1cf83df048360fb2480571b749fd98d57e11f1afdffb5a74a78166fea",
          "completed_at": "2026-07-15T18:03:49Z"
        },
        {
          "id": "goals",
          "action": "substrate.goals",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-15T18:03:49Z",
          "output": {
            "status": "disabled",
            "created": 0,
            "observed": 0,
            "results": []
          },
          "output_hash": "cdfd4de44a28140e686159f34f7b47975954c67e1d1efcef666e985acb136ed8",
          "completed_at": "2026-07-15T18:03:49Z"
        }
      ],
      "completed_at": "2026-07-15T18:03:49Z"
    },
    {
      "id": "WFR-160",
      "schema_version": "1.0",
      "workflow_id": "session.stop",
      "workflow_version": 1,
      "definition_hash": "0cef7bb3e28321be8f85375c154955a69310ce297e47de3f3b8dd48f77a2f07d",
      "plan_hash": "a5e1d77ac734217487fc418e29c7163f4e81178e25d171e70cd4c999d527d3e8",
      "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
      "inputs": {},
      "idempotency_key": "hook:Stop:019f66f2-f5b5-7751-a7b8-c0d664ef7eda",
      "status": "completed",
      "attempt": 1,
      "created_at": "2026-07-15T18:03:53Z",
      "updated_at": "2026-07-15T18:03:54Z",
      "receipts": [
        {
          "step_id": "state",
          "action": "state.consistency",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "5a1c6e5246defb1b6b6b90ff734db95bece2886b408ab112ed9b8e67222d5568",
          "completed_at": "2026-07-15T18:03:53Z"
        },
        {
          "step_id": "goals",
          "action": "substrate.goals",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "cdfd4de44a28140e686159f34f7b47975954c67e1d1efcef666e985acb136ed8",
          "completed_at": "2026-07-15T18:03:53Z"
        },
        {
          "step_id": "staleness",
          "action": "staleness.audit",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "1e81cb0ffd0a4d04626920a203b38d2d23a264cd43e807a85d375d69cae8a658",
          "completed_at": "2026-07-15T18:03:53Z"
        },
        {
          "step_id": "reflections",
          "action": "reflection.list",
          "input_hash": "0172e841ab4c13b3a4061f073f9d68a716ec87a8a5d52fde41823385e0582573",
          "output_hash": "c1b6b635c0bab21120657277f14ef6f839909875f307a3745fa48aee2bd6e449",
          "completed_at": "2026-07-15T18:03:53Z"
        },
        {
          "step_id": "bundle",
          "action": "reporting.bundle",
          "input_hash": "aed8ebb688dc3c085dd978d7c4120572173c3cb87e75919e4a937dcca6ef9457",
          "output_hash": "f61aa7bfac7c2e96e3bf2d3386a95e45d2db52d040f05aff9ea963197eacc3f6",
          "completed_at": "2026-07-15T18:03:54Z"
        },
        {
          "step_id": "delegated",
          "action": "reporting.delegate",
          "input_hash": "5bf4dfad88c9958da759cb1561ca5fdd8f3ac9050e938bfde85af5c8d804adc9",
          "output_hash": "e6085059f197def80ae95add1f328418107bea5436c9bd002530043646a3a95c",
          "completed_at": "2026-07-15T18:03:54Z"
        }
      ],
      "steps": [
        {
          "id": "state",
          "action": "state.consistency",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-15T18:03:53Z",
          "output": {
            "status": "ok",
            "repo_root": "D:\\Projects\\prd-plugin",
            "summary": {
              "errors": 0,
              "warnings": 0,
              "infos": 0
            },
            "findings": []
          },
          "output_hash": "5a1c6e5246defb1b6b6b90ff734db95bece2886b408ab112ed9b8e67222d5568",
          "completed_at": "2026-07-15T18:03:53Z"
        },
        {
          "id": "goals",
          "action": "substrate.goals",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-15T18:03:53Z",
          "output": {
            "status": "disabled",
            "created": 0,
            "observed": 0,
            "results": []
          },
          "output_hash": "cdfd4de44a28140e686159f34f7b47975954c67e1d1efcef666e985acb136ed8",
          "completed_at": "2026-07-15T18:03:53Z"
        },
        {
          "id": "staleness",
          "action": "staleness.audit",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-15T18:03:53Z",
          "output": {
            "status": "ok",
            "repo_root": "D:\\Projects\\prd-plugin",
            "counts": {
              "stale": 0
            },
            "stale": []
          },
          "output_hash": "1e81cb0ffd0a4d04626920a203b38d2d23a264cd43e807a85d375d69cae8a658",
          "completed_at": "2026-07-15T18:03:53Z"
        },
        {
          "id": "reflections",
          "action": "reflection.list",
          "status": "completed",
          "resolved_input_hash": "0172e841ab4c13b3a4061f073f9d68a716ec87a8a5d52fde41823385e0582573",
          "started_at": "2026-07-15T18:03:53Z",
          "output": {
            "enabled": false,
            "on_stop": true,
            "max_questions_per_stop": 5,
            "categories": [
              {
                "id": "behaviour_quality",
                "name": "Behaviour quality",
                "enabled": true,
                "question_count": 3
              },
              {
                "id": "harness_friction",
                "name": "Harness friction",
                "enabled": true,
                "question_count": 2
              }
            ],
            "questions": [
              {
                "id": "RFQ-001",
                "text": "Based on the work you just carried out, would you classify your behaviour as good? Answer yes or no and cite observable evidence.",
                "enabled": true,
                "category_id": "behaviour_quality",
                "category_name": "Behaviour quality",
                "effective_enabled": false
              },
              {
                "id": "RFQ-002",
                "text": "If you answered no, what could you do differently to correct your behaviour?",
                "enabled": true,
                "category_id": "behaviour_quality",
                "category_name": "Behaviour quality",
                "effective_enabled": false
              },
              {
                "id": "RFQ-003",
                "text": "Would another attempt using the identified good behaviours materially improve the outcome? Answer yes or no and state the next corrective action if yes.",
                "enabled": true,
                "category_id": "behaviour_quality",
                "category_name": "Behaviour quality",
                "effective_enabled": false
              },
              {
                "id": "RFQ-004",
                "text": "What harness friction points made this work more difficult?",
                "enabled": true,
                "category_id": "harness_friction",
                "category_name": "Harness friction",
                "effective_enabled": false
              },
              {
                "id": "RFQ-005",
                "text": "What up to three changes would most improve friction in the harness?",
                "enabled": true,
                "category_id": "harness_friction",
                "category_name": "Harness friction",
                "effective_enabled": false
              }
            ]
          },
          "output_hash": "c1b6b635c0bab21120657277f14ef6f839909875f307a3745fa48aee2bd6e449",
          "completed_at": "2026-07-15T18:03:53Z"
        },
        {
          "id": "bundle",
          "action": "reporting.bundle",
          "status": "completed",
          "resolved_input_hash": "aed8ebb688dc3c085dd978d7c4120572173c3cb87e75919e4a937dcca6ef9457",
          "started_at": "2026-07-15T18:03:54Z",
          "output": {
            "contract_version": 1,
            "task": "session_summary",
            "repo": "prd-plugin",
            "policy": {
              "enabled": false,
              "executor": "ai-collab",
              "contract_version": 1,
              "profile": "fast-capable",
              "tasks": [
                "report_summary",
                "session_summary",
                "wiki_synthesis",
                "triage_draft"
              ],
              "fallback": "main",
              "require_source_refs": true,
              "max_input_tokens": 12000,
              "max_output_tokens": 1500,
              "timeout_seconds": 30
            },
            "facts": {
              "requests_by_status": {
                "deferred": 1,
                "implemented": 80,
                "proposed": 1,
                "rejected": 1
              },
              "active_requests": [
                {
                  "id": "REQ-072",
                  "status": "proposed",
                  "severity": "low",
                  "summary": "opencode run-until-done: session.idle is a non-blocking notification, so the stop guard can't force continuation on opencode (currently degrades to a printed reminder, 0.5.95). Investigate whether opencode exposes any vetoable/continuation mechanism (a different event, a permission hook, or a 'continue' API) to enforce run-until-done, or accept the reminder as the permanent ceiling. Low priority — user rarely uses opencode."
                }
              ],
              "active_tracking": [],
              "open_health": [],
              "evidence_count": 105,
              "decision_count": 10
            },
            "findings": [],
            "source_refs": [
              ".prd_plugin/config.json",
              ".prd_plugin/state/decisions.json",
              ".prd_plugin/state/evidence.json",
              ".prd_plugin/state/health.json",
              ".prd_plugin/state/requests.json",
              ".prd_plugin/state/tracking.json",
              "REQ-072"
            ],
            "constraints": {
              "max_input_tokens": 12000,
              "max_output_tokens": 1500,
              "timeout_seconds": 30,
              "require_source_refs": true,
              "no_project_state_writes": true,
              "no_secrets_or_local_session_content": true
            }
          },
          "output_hash": "f61aa7bfac7c2e96e3bf2d3386a95e45d2db52d040f05aff9ea963197eacc3f6",
          "completed_at": "2026-07-15T18:03:54Z"
        },
        {
          "id": "delegated",
          "action": "reporting.delegate",
          "status": "completed",
          "resolved_input_hash": "5bf4dfad88c9958da759cb1561ca5fdd8f3ac9050e938bfde85af5c8d804adc9",
          "started_at": "2026-07-15T18:03:54Z",
          "output": {
            "status": "fallback",
            "action": "main",
            "reason": "disabled"
          },
          "output_hash": "e6085059f197def80ae95add1f328418107bea5436c9bd002530043646a3a95c",
          "completed_at": "2026-07-15T18:03:54Z"
        }
      ],
      "completed_at": "2026-07-15T18:03:54Z"
    },
    {
      "id": "WFR-161",
      "schema_version": "1.0",
      "workflow_id": "session.start",
      "workflow_version": 1,
      "definition_hash": "d0f98da02571e6dd27fec4aed92d3c82af9db75f8b90b997bf665635c7b7f6ca",
      "plan_hash": "b5072615ca3b7e9a3bd85d50d1f069d99ef2a9816b32c03a370745ed7a205536",
      "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
      "inputs": {},
      "idempotency_key": "hook:SessionStart:019f66f5-ce97-76d1-b9ac-94c258dcfd2b",
      "status": "completed",
      "attempt": 1,
      "created_at": "2026-07-15T18:06:54Z",
      "updated_at": "2026-07-15T18:06:56Z",
      "receipts": [
        {
          "step_id": "config",
          "action": "config.audit",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "3782ec2317c0c8ee7598634310a2804d8aae4735f557498f9d3b8fae7c45e1e5",
          "completed_at": "2026-07-15T18:06:55Z"
        },
        {
          "step_id": "services",
          "action": "services.audit",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "13dcc58bd528f3efa3e6e0fa0853a6eedc376f1f3685fbd4869cbb2b60382ee3",
          "completed_at": "2026-07-15T18:06:55Z"
        },
        {
          "step_id": "state",
          "action": "state.consistency",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "5a1c6e5246defb1b6b6b90ff734db95bece2886b408ab112ed9b8e67222d5568",
          "completed_at": "2026-07-15T18:06:55Z"
        },
        {
          "step_id": "status",
          "action": "state.query",
          "input_hash": "a15231a2142a2a9a85355a8b9cbbccffe01a9c9c2c2fd8c2bc2987cdc481564a",
          "output_hash": "8ba9f7d3cc6705af37de9e3324d1258e21ccacb5ab0b2d7b389ca08885e11187",
          "completed_at": "2026-07-15T18:06:56Z"
        },
        {
          "step_id": "substrate",
          "action": "substrate.preflight",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "a6df426290b4549a59eecaa0519ead9bcc50b7fcb25bd2185ff6047960f19ccb",
          "completed_at": "2026-07-15T18:06:56Z"
        },
        {
          "step_id": "notices",
          "action": "substrate.notices",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "38b904a1cf83df048360fb2480571b749fd98d57e11f1afdffb5a74a78166fea",
          "completed_at": "2026-07-15T18:06:56Z"
        },
        {
          "step_id": "goals",
          "action": "substrate.goals",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "cdfd4de44a28140e686159f34f7b47975954c67e1d1efcef666e985acb136ed8",
          "completed_at": "2026-07-15T18:06:56Z"
        }
      ],
      "steps": [
        {
          "id": "config",
          "action": "config.audit",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-15T18:06:55Z",
          "output": {
            "status": "ok",
            "summary": {
              "settings": 195,
              "mutable": 186,
              "read_only_or_managed": 9,
              "unclassified": 0,
              "unknown": 0,
              "invalid": 0,
              "missing_using_defaults": 0
            },
            "unclassified_keys": [],
            "unknown_keys": [],
            "invalid_values": [],
            "missing_using_defaults": []
          },
          "output_hash": "3782ec2317c0c8ee7598634310a2804d8aae4735f557498f9d3b8fae7c45e1e5",
          "completed_at": "2026-07-15T18:06:55Z"
        },
        {
          "id": "services",
          "action": "services.audit",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-15T18:06:55Z",
          "output": {
            "status": "ok",
            "summary": {
              "critical": 0,
              "high": 0,
              "medium": 0,
              "low": 0
            },
            "findings": []
          },
          "output_hash": "13dcc58bd528f3efa3e6e0fa0853a6eedc376f1f3685fbd4869cbb2b60382ee3",
          "completed_at": "2026-07-15T18:06:55Z"
        },
        {
          "id": "state",
          "action": "state.consistency",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-15T18:06:55Z",
          "output": {
            "status": "ok",
            "repo_root": "D:\\Projects\\prd-plugin",
            "summary": {
              "errors": 0,
              "warnings": 0,
              "infos": 0
            },
            "findings": []
          },
          "output_hash": "5a1c6e5246defb1b6b6b90ff734db95bece2886b408ab112ed9b8e67222d5568",
          "completed_at": "2026-07-15T18:06:55Z"
        },
        {
          "id": "status",
          "action": "state.query",
          "status": "completed",
          "resolved_input_hash": "a15231a2142a2a9a85355a8b9cbbccffe01a9c9c2c2fd8c2bc2987cdc481564a",
          "started_at": "2026-07-15T18:06:55Z",
          "output": {
            "repo_root": "D:\\Projects\\prd-plugin",
            "autonomy_level": "autonomous",
            "requests_by_status": {
              "deferred": 1,
              "implemented": 80,
              "proposed": 1,
              "rejected": 1
            },
            "active_tracking": [],
            "tracking_branches": [],
            "tracking_branch_counts": {},
            "tracking_branch_errors": [],
            "open_health": [],
            "stale_count": 0,
            "skill_usage": {
              "project-decision-policy": 1,
              "project-request-intake": 1,
              "project-test-driven-implementation": 1,
              "project-verification-before-completion": 1,
              "project-llm-wiki": 1
            },
            "wiki_backfill_pending": false,
            "version_update": null
          },
          "output_hash": "8ba9f7d3cc6705af37de9e3324d1258e21ccacb5ab0b2d7b389ca08885e11187",
          "completed_at": "2026-07-15T18:06:56Z"
        },
        {
          "id": "substrate",
          "action": "substrate.preflight",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-15T18:06:56Z",
          "output": {
            "status": "disabled",
            "services": {
              "status": "ok",
              "summary": {
                "critical": 0,
                "high": 0,
                "medium": 0,
                "low": 0
              },
              "findings": []
            },
            "policy": {
              "configured": {
                "enabled": false,
                "mode": "off",
                "capabilities": [
                  "records",
                  "graph",
                  "events"
                ],
                "contract_version": 2,
                "require_source_refs": true,
                "endpoint": "http://127.0.0.1:47124",
                "manual_url": "http://127.0.0.1:47124/utcp.json",
                "knowledge_browse_url": "http://127.0.0.1:5276",
                "auth_env": "AI_COLLAB_API_KEY",
                "timeout_seconds": 5,
                "max_result_bytes": 1048576,
                "cache_ttl_seconds": 60,
                "fallback": "local",
                "automation": {
                  "discovery_on_session_start": true,
                  "knowledge_recall": true,
                  "memory_recall": true,
                  "context_enrichment": true,
                  "notices_on_session_start": false,
                  "goals_sync": false,
                  "telemetry_on_maintenance": false,
                  "reporting_dispatch": true,
                  "judgment_dispatch": true,
                  "verification_execution": true
                }
              },
              "active": false,
              "effective_mode": "off",
              "effective_capabilities": []
            }
          },
          "output_hash": "a6df426290b4549a59eecaa0519ead9bcc50b7fcb25bd2185ff6047960f19ccb",
          "completed_at": "2026-07-15T18:06:56Z"
        },
        {
          "id": "notices",
          "action": "substrate.notices",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-15T18:06:56Z",
          "output": {
            "status": "disabled"
          },
          "output_hash": "38b904a1cf83df048360fb2480571b749fd98d57e11f1afdffb5a74a78166fea",
          "completed_at": "2026-07-15T18:06:56Z"
        },
        {
          "id": "goals",
          "action": "substrate.goals",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-15T18:06:56Z",
          "output": {
            "status": "disabled",
            "created": 0,
            "observed": 0,
            "results": []
          },
          "output_hash": "cdfd4de44a28140e686159f34f7b47975954c67e1d1efcef666e985acb136ed8",
          "completed_at": "2026-07-15T18:06:56Z"
        }
      ],
      "completed_at": "2026-07-15T18:06:56Z"
    },
    {
      "id": "WFR-162",
      "schema_version": "1.0",
      "workflow_id": "session.stop",
      "workflow_version": 1,
      "definition_hash": "0cef7bb3e28321be8f85375c154955a69310ce297e47de3f3b8dd48f77a2f07d",
      "plan_hash": "a5e1d77ac734217487fc418e29c7163f4e81178e25d171e70cd4c999d527d3e8",
      "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
      "inputs": {},
      "idempotency_key": "hook:Stop:019f66f5-ce97-76d1-b9ac-94c258dcfd2b",
      "status": "completed",
      "attempt": 1,
      "created_at": "2026-07-15T18:07:04Z",
      "updated_at": "2026-07-15T18:07:05Z",
      "receipts": [
        {
          "step_id": "state",
          "action": "state.consistency",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "5a1c6e5246defb1b6b6b90ff734db95bece2886b408ab112ed9b8e67222d5568",
          "completed_at": "2026-07-15T18:07:04Z"
        },
        {
          "step_id": "goals",
          "action": "substrate.goals",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "cdfd4de44a28140e686159f34f7b47975954c67e1d1efcef666e985acb136ed8",
          "completed_at": "2026-07-15T18:07:05Z"
        },
        {
          "step_id": "staleness",
          "action": "staleness.audit",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "1e81cb0ffd0a4d04626920a203b38d2d23a264cd43e807a85d375d69cae8a658",
          "completed_at": "2026-07-15T18:07:05Z"
        },
        {
          "step_id": "reflections",
          "action": "reflection.list",
          "input_hash": "0172e841ab4c13b3a4061f073f9d68a716ec87a8a5d52fde41823385e0582573",
          "output_hash": "c1b6b635c0bab21120657277f14ef6f839909875f307a3745fa48aee2bd6e449",
          "completed_at": "2026-07-15T18:07:05Z"
        },
        {
          "step_id": "bundle",
          "action": "reporting.bundle",
          "input_hash": "aed8ebb688dc3c085dd978d7c4120572173c3cb87e75919e4a937dcca6ef9457",
          "output_hash": "f61aa7bfac7c2e96e3bf2d3386a95e45d2db52d040f05aff9ea963197eacc3f6",
          "completed_at": "2026-07-15T18:07:05Z"
        },
        {
          "step_id": "delegated",
          "action": "reporting.delegate",
          "input_hash": "5bf4dfad88c9958da759cb1561ca5fdd8f3ac9050e938bfde85af5c8d804adc9",
          "output_hash": "e6085059f197def80ae95add1f328418107bea5436c9bd002530043646a3a95c",
          "completed_at": "2026-07-15T18:07:05Z"
        }
      ],
      "steps": [
        {
          "id": "state",
          "action": "state.consistency",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-15T18:07:04Z",
          "output": {
            "status": "ok",
            "repo_root": "D:\\Projects\\prd-plugin",
            "summary": {
              "errors": 0,
              "warnings": 0,
              "infos": 0
            },
            "findings": []
          },
          "output_hash": "5a1c6e5246defb1b6b6b90ff734db95bece2886b408ab112ed9b8e67222d5568",
          "completed_at": "2026-07-15T18:07:04Z"
        },
        {
          "id": "goals",
          "action": "substrate.goals",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-15T18:07:04Z",
          "output": {
            "status": "disabled",
            "created": 0,
            "observed": 0,
            "results": []
          },
          "output_hash": "cdfd4de44a28140e686159f34f7b47975954c67e1d1efcef666e985acb136ed8",
          "completed_at": "2026-07-15T18:07:05Z"
        },
        {
          "id": "staleness",
          "action": "staleness.audit",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-15T18:07:05Z",
          "output": {
            "status": "ok",
            "repo_root": "D:\\Projects\\prd-plugin",
            "counts": {
              "stale": 0
            },
            "stale": []
          },
          "output_hash": "1e81cb0ffd0a4d04626920a203b38d2d23a264cd43e807a85d375d69cae8a658",
          "completed_at": "2026-07-15T18:07:05Z"
        },
        {
          "id": "reflections",
          "action": "reflection.list",
          "status": "completed",
          "resolved_input_hash": "0172e841ab4c13b3a4061f073f9d68a716ec87a8a5d52fde41823385e0582573",
          "started_at": "2026-07-15T18:07:05Z",
          "output": {
            "enabled": false,
            "on_stop": true,
            "max_questions_per_stop": 5,
            "categories": [
              {
                "id": "behaviour_quality",
                "name": "Behaviour quality",
                "enabled": true,
                "question_count": 3
              },
              {
                "id": "harness_friction",
                "name": "Harness friction",
                "enabled": true,
                "question_count": 2
              }
            ],
            "questions": [
              {
                "id": "RFQ-001",
                "text": "Based on the work you just carried out, would you classify your behaviour as good? Answer yes or no and cite observable evidence.",
                "enabled": true,
                "category_id": "behaviour_quality",
                "category_name": "Behaviour quality",
                "effective_enabled": false
              },
              {
                "id": "RFQ-002",
                "text": "If you answered no, what could you do differently to correct your behaviour?",
                "enabled": true,
                "category_id": "behaviour_quality",
                "category_name": "Behaviour quality",
                "effective_enabled": false
              },
              {
                "id": "RFQ-003",
                "text": "Would another attempt using the identified good behaviours materially improve the outcome? Answer yes or no and state the next corrective action if yes.",
                "enabled": true,
                "category_id": "behaviour_quality",
                "category_name": "Behaviour quality",
                "effective_enabled": false
              },
              {
                "id": "RFQ-004",
                "text": "What harness friction points made this work more difficult?",
                "enabled": true,
                "category_id": "harness_friction",
                "category_name": "Harness friction",
                "effective_enabled": false
              },
              {
                "id": "RFQ-005",
                "text": "What up to three changes would most improve friction in the harness?",
                "enabled": true,
                "category_id": "harness_friction",
                "category_name": "Harness friction",
                "effective_enabled": false
              }
            ]
          },
          "output_hash": "c1b6b635c0bab21120657277f14ef6f839909875f307a3745fa48aee2bd6e449",
          "completed_at": "2026-07-15T18:07:05Z"
        },
        {
          "id": "bundle",
          "action": "reporting.bundle",
          "status": "completed",
          "resolved_input_hash": "aed8ebb688dc3c085dd978d7c4120572173c3cb87e75919e4a937dcca6ef9457",
          "started_at": "2026-07-15T18:07:05Z",
          "output": {
            "contract_version": 1,
            "task": "session_summary",
            "repo": "prd-plugin",
            "policy": {
              "enabled": false,
              "executor": "ai-collab",
              "contract_version": 1,
              "profile": "fast-capable",
              "tasks": [
                "report_summary",
                "session_summary",
                "wiki_synthesis",
                "triage_draft"
              ],
              "fallback": "main",
              "require_source_refs": true,
              "max_input_tokens": 12000,
              "max_output_tokens": 1500,
              "timeout_seconds": 30
            },
            "facts": {
              "requests_by_status": {
                "deferred": 1,
                "implemented": 80,
                "proposed": 1,
                "rejected": 1
              },
              "active_requests": [
                {
                  "id": "REQ-072",
                  "status": "proposed",
                  "severity": "low",
                  "summary": "opencode run-until-done: session.idle is a non-blocking notification, so the stop guard can't force continuation on opencode (currently degrades to a printed reminder, 0.5.95). Investigate whether opencode exposes any vetoable/continuation mechanism (a different event, a permission hook, or a 'continue' API) to enforce run-until-done, or accept the reminder as the permanent ceiling. Low priority — user rarely uses opencode."
                }
              ],
              "active_tracking": [],
              "open_health": [],
              "evidence_count": 105,
              "decision_count": 10
            },
            "findings": [],
            "source_refs": [
              ".prd_plugin/config.json",
              ".prd_plugin/state/decisions.json",
              ".prd_plugin/state/evidence.json",
              ".prd_plugin/state/health.json",
              ".prd_plugin/state/requests.json",
              ".prd_plugin/state/tracking.json",
              "REQ-072"
            ],
            "constraints": {
              "max_input_tokens": 12000,
              "max_output_tokens": 1500,
              "timeout_seconds": 30,
              "require_source_refs": true,
              "no_project_state_writes": true,
              "no_secrets_or_local_session_content": true
            }
          },
          "output_hash": "f61aa7bfac7c2e96e3bf2d3386a95e45d2db52d040f05aff9ea963197eacc3f6",
          "completed_at": "2026-07-15T18:07:05Z"
        },
        {
          "id": "delegated",
          "action": "reporting.delegate",
          "status": "completed",
          "resolved_input_hash": "5bf4dfad88c9958da759cb1561ca5fdd8f3ac9050e938bfde85af5c8d804adc9",
          "started_at": "2026-07-15T18:07:05Z",
          "output": {
            "status": "fallback",
            "action": "main",
            "reason": "disabled"
          },
          "output_hash": "e6085059f197def80ae95add1f328418107bea5436c9bd002530043646a3a95c",
          "completed_at": "2026-07-15T18:07:05Z"
        }
      ],
      "completed_at": "2026-07-15T18:07:05Z"
    },
    {
      "id": "WFR-163",
      "schema_version": "1.0",
      "workflow_id": "session.start",
      "workflow_version": 1,
      "definition_hash": "d0f98da02571e6dd27fec4aed92d3c82af9db75f8b90b997bf665635c7b7f6ca",
      "plan_hash": "b5072615ca3b7e9a3bd85d50d1f069d99ef2a9816b32c03a370745ed7a205536",
      "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
      "inputs": {},
      "idempotency_key": "hook:SessionStart:019f66f6-d919-7d03-a399-ffcdff3d5837",
      "status": "completed",
      "attempt": 1,
      "created_at": "2026-07-15T18:08:03Z",
      "updated_at": "2026-07-15T18:08:05Z",
      "receipts": [
        {
          "step_id": "config",
          "action": "config.audit",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "3782ec2317c0c8ee7598634310a2804d8aae4735f557498f9d3b8fae7c45e1e5",
          "completed_at": "2026-07-15T18:08:03Z"
        },
        {
          "step_id": "services",
          "action": "services.audit",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "13dcc58bd528f3efa3e6e0fa0853a6eedc376f1f3685fbd4869cbb2b60382ee3",
          "completed_at": "2026-07-15T18:08:03Z"
        },
        {
          "step_id": "state",
          "action": "state.consistency",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "5a1c6e5246defb1b6b6b90ff734db95bece2886b408ab112ed9b8e67222d5568",
          "completed_at": "2026-07-15T18:08:04Z"
        },
        {
          "step_id": "status",
          "action": "state.query",
          "input_hash": "a15231a2142a2a9a85355a8b9cbbccffe01a9c9c2c2fd8c2bc2987cdc481564a",
          "output_hash": "8ba9f7d3cc6705af37de9e3324d1258e21ccacb5ab0b2d7b389ca08885e11187",
          "completed_at": "2026-07-15T18:08:04Z"
        },
        {
          "step_id": "substrate",
          "action": "substrate.preflight",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "a6df426290b4549a59eecaa0519ead9bcc50b7fcb25bd2185ff6047960f19ccb",
          "completed_at": "2026-07-15T18:08:04Z"
        },
        {
          "step_id": "notices",
          "action": "substrate.notices",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "38b904a1cf83df048360fb2480571b749fd98d57e11f1afdffb5a74a78166fea",
          "completed_at": "2026-07-15T18:08:04Z"
        },
        {
          "step_id": "goals",
          "action": "substrate.goals",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "cdfd4de44a28140e686159f34f7b47975954c67e1d1efcef666e985acb136ed8",
          "completed_at": "2026-07-15T18:08:05Z"
        }
      ],
      "steps": [
        {
          "id": "config",
          "action": "config.audit",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-15T18:08:03Z",
          "output": {
            "status": "ok",
            "summary": {
              "settings": 195,
              "mutable": 186,
              "read_only_or_managed": 9,
              "unclassified": 0,
              "unknown": 0,
              "invalid": 0,
              "missing_using_defaults": 0
            },
            "unclassified_keys": [],
            "unknown_keys": [],
            "invalid_values": [],
            "missing_using_defaults": []
          },
          "output_hash": "3782ec2317c0c8ee7598634310a2804d8aae4735f557498f9d3b8fae7c45e1e5",
          "completed_at": "2026-07-15T18:08:03Z"
        },
        {
          "id": "services",
          "action": "services.audit",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-15T18:08:03Z",
          "output": {
            "status": "ok",
            "summary": {
              "critical": 0,
              "high": 0,
              "medium": 0,
              "low": 0
            },
            "findings": []
          },
          "output_hash": "13dcc58bd528f3efa3e6e0fa0853a6eedc376f1f3685fbd4869cbb2b60382ee3",
          "completed_at": "2026-07-15T18:08:03Z"
        },
        {
          "id": "state",
          "action": "state.consistency",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-15T18:08:03Z",
          "output": {
            "status": "ok",
            "repo_root": "D:\\Projects\\prd-plugin",
            "summary": {
              "errors": 0,
              "warnings": 0,
              "infos": 0
            },
            "findings": []
          },
          "output_hash": "5a1c6e5246defb1b6b6b90ff734db95bece2886b408ab112ed9b8e67222d5568",
          "completed_at": "2026-07-15T18:08:04Z"
        },
        {
          "id": "status",
          "action": "state.query",
          "status": "completed",
          "resolved_input_hash": "a15231a2142a2a9a85355a8b9cbbccffe01a9c9c2c2fd8c2bc2987cdc481564a",
          "started_at": "2026-07-15T18:08:04Z",
          "output": {
            "repo_root": "D:\\Projects\\prd-plugin",
            "autonomy_level": "autonomous",
            "requests_by_status": {
              "deferred": 1,
              "implemented": 80,
              "proposed": 1,
              "rejected": 1
            },
            "active_tracking": [],
            "tracking_branches": [],
            "tracking_branch_counts": {},
            "tracking_branch_errors": [],
            "open_health": [],
            "stale_count": 0,
            "skill_usage": {
              "project-decision-policy": 1,
              "project-request-intake": 1,
              "project-test-driven-implementation": 1,
              "project-verification-before-completion": 1,
              "project-llm-wiki": 1
            },
            "wiki_backfill_pending": false,
            "version_update": null
          },
          "output_hash": "8ba9f7d3cc6705af37de9e3324d1258e21ccacb5ab0b2d7b389ca08885e11187",
          "completed_at": "2026-07-15T18:08:04Z"
        },
        {
          "id": "substrate",
          "action": "substrate.preflight",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-15T18:08:04Z",
          "output": {
            "status": "disabled",
            "services": {
              "status": "ok",
              "summary": {
                "critical": 0,
                "high": 0,
                "medium": 0,
                "low": 0
              },
              "findings": []
            },
            "policy": {
              "configured": {
                "enabled": false,
                "mode": "off",
                "capabilities": [
                  "records",
                  "graph",
                  "events"
                ],
                "contract_version": 2,
                "require_source_refs": true,
                "endpoint": "http://127.0.0.1:47124",
                "manual_url": "http://127.0.0.1:47124/utcp.json",
                "knowledge_browse_url": "http://127.0.0.1:5276",
                "auth_env": "AI_COLLAB_API_KEY",
                "timeout_seconds": 5,
                "max_result_bytes": 1048576,
                "cache_ttl_seconds": 60,
                "fallback": "local",
                "automation": {
                  "discovery_on_session_start": true,
                  "knowledge_recall": true,
                  "memory_recall": true,
                  "context_enrichment": true,
                  "notices_on_session_start": false,
                  "goals_sync": false,
                  "telemetry_on_maintenance": false,
                  "reporting_dispatch": true,
                  "judgment_dispatch": true,
                  "verification_execution": true
                }
              },
              "active": false,
              "effective_mode": "off",
              "effective_capabilities": []
            }
          },
          "output_hash": "a6df426290b4549a59eecaa0519ead9bcc50b7fcb25bd2185ff6047960f19ccb",
          "completed_at": "2026-07-15T18:08:04Z"
        },
        {
          "id": "notices",
          "action": "substrate.notices",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-15T18:08:04Z",
          "output": {
            "status": "disabled"
          },
          "output_hash": "38b904a1cf83df048360fb2480571b749fd98d57e11f1afdffb5a74a78166fea",
          "completed_at": "2026-07-15T18:08:04Z"
        },
        {
          "id": "goals",
          "action": "substrate.goals",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-15T18:08:05Z",
          "output": {
            "status": "disabled",
            "created": 0,
            "observed": 0,
            "results": []
          },
          "output_hash": "cdfd4de44a28140e686159f34f7b47975954c67e1d1efcef666e985acb136ed8",
          "completed_at": "2026-07-15T18:08:05Z"
        }
      ],
      "completed_at": "2026-07-15T18:08:05Z"
    },
    {
      "id": "WFR-164",
      "schema_version": "1.0",
      "workflow_id": "session.stop",
      "workflow_version": 1,
      "definition_hash": "0cef7bb3e28321be8f85375c154955a69310ce297e47de3f3b8dd48f77a2f07d",
      "plan_hash": "a5e1d77ac734217487fc418e29c7163f4e81178e25d171e70cd4c999d527d3e8",
      "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
      "inputs": {},
      "idempotency_key": "hook:Stop:019f66f6-d919-7d03-a399-ffcdff3d5837",
      "status": "completed",
      "attempt": 1,
      "created_at": "2026-07-15T18:08:07Z",
      "updated_at": "2026-07-15T18:08:08Z",
      "receipts": [
        {
          "step_id": "state",
          "action": "state.consistency",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "5a1c6e5246defb1b6b6b90ff734db95bece2886b408ab112ed9b8e67222d5568",
          "completed_at": "2026-07-15T18:08:08Z"
        },
        {
          "step_id": "goals",
          "action": "substrate.goals",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "cdfd4de44a28140e686159f34f7b47975954c67e1d1efcef666e985acb136ed8",
          "completed_at": "2026-07-15T18:08:08Z"
        },
        {
          "step_id": "staleness",
          "action": "staleness.audit",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "1e81cb0ffd0a4d04626920a203b38d2d23a264cd43e807a85d375d69cae8a658",
          "completed_at": "2026-07-15T18:08:08Z"
        },
        {
          "step_id": "reflections",
          "action": "reflection.list",
          "input_hash": "0172e841ab4c13b3a4061f073f9d68a716ec87a8a5d52fde41823385e0582573",
          "output_hash": "c1b6b635c0bab21120657277f14ef6f839909875f307a3745fa48aee2bd6e449",
          "completed_at": "2026-07-15T18:08:08Z"
        },
        {
          "step_id": "bundle",
          "action": "reporting.bundle",
          "input_hash": "aed8ebb688dc3c085dd978d7c4120572173c3cb87e75919e4a937dcca6ef9457",
          "output_hash": "f61aa7bfac7c2e96e3bf2d3386a95e45d2db52d040f05aff9ea963197eacc3f6",
          "completed_at": "2026-07-15T18:08:08Z"
        },
        {
          "step_id": "delegated",
          "action": "reporting.delegate",
          "input_hash": "5bf4dfad88c9958da759cb1561ca5fdd8f3ac9050e938bfde85af5c8d804adc9",
          "output_hash": "e6085059f197def80ae95add1f328418107bea5436c9bd002530043646a3a95c",
          "completed_at": "2026-07-15T18:08:08Z"
        }
      ],
      "steps": [
        {
          "id": "state",
          "action": "state.consistency",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-15T18:08:07Z",
          "output": {
            "status": "ok",
            "repo_root": "D:\\Projects\\prd-plugin",
            "summary": {
              "errors": 0,
              "warnings": 0,
              "infos": 0
            },
            "findings": []
          },
          "output_hash": "5a1c6e5246defb1b6b6b90ff734db95bece2886b408ab112ed9b8e67222d5568",
          "completed_at": "2026-07-15T18:08:08Z"
        },
        {
          "id": "goals",
          "action": "substrate.goals",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-15T18:08:08Z",
          "output": {
            "status": "disabled",
            "created": 0,
            "observed": 0,
            "results": []
          },
          "output_hash": "cdfd4de44a28140e686159f34f7b47975954c67e1d1efcef666e985acb136ed8",
          "completed_at": "2026-07-15T18:08:08Z"
        },
        {
          "id": "staleness",
          "action": "staleness.audit",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-15T18:08:08Z",
          "output": {
            "status": "ok",
            "repo_root": "D:\\Projects\\prd-plugin",
            "counts": {
              "stale": 0
            },
            "stale": []
          },
          "output_hash": "1e81cb0ffd0a4d04626920a203b38d2d23a264cd43e807a85d375d69cae8a658",
          "completed_at": "2026-07-15T18:08:08Z"
        },
        {
          "id": "reflections",
          "action": "reflection.list",
          "status": "completed",
          "resolved_input_hash": "0172e841ab4c13b3a4061f073f9d68a716ec87a8a5d52fde41823385e0582573",
          "started_at": "2026-07-15T18:08:08Z",
          "output": {
            "enabled": false,
            "on_stop": true,
            "max_questions_per_stop": 5,
            "categories": [
              {
                "id": "behaviour_quality",
                "name": "Behaviour quality",
                "enabled": true,
                "question_count": 3
              },
              {
                "id": "harness_friction",
                "name": "Harness friction",
                "enabled": true,
                "question_count": 2
              }
            ],
            "questions": [
              {
                "id": "RFQ-001",
                "text": "Based on the work you just carried out, would you classify your behaviour as good? Answer yes or no and cite observable evidence.",
                "enabled": true,
                "category_id": "behaviour_quality",
                "category_name": "Behaviour quality",
                "effective_enabled": false
              },
              {
                "id": "RFQ-002",
                "text": "If you answered no, what could you do differently to correct your behaviour?",
                "enabled": true,
                "category_id": "behaviour_quality",
                "category_name": "Behaviour quality",
                "effective_enabled": false
              },
              {
                "id": "RFQ-003",
                "text": "Would another attempt using the identified good behaviours materially improve the outcome? Answer yes or no and state the next corrective action if yes.",
                "enabled": true,
                "category_id": "behaviour_quality",
                "category_name": "Behaviour quality",
                "effective_enabled": false
              },
              {
                "id": "RFQ-004",
                "text": "What harness friction points made this work more difficult?",
                "enabled": true,
                "category_id": "harness_friction",
                "category_name": "Harness friction",
                "effective_enabled": false
              },
              {
                "id": "RFQ-005",
                "text": "What up to three changes would most improve friction in the harness?",
                "enabled": true,
                "category_id": "harness_friction",
                "category_name": "Harness friction",
                "effective_enabled": false
              }
            ]
          },
          "output_hash": "c1b6b635c0bab21120657277f14ef6f839909875f307a3745fa48aee2bd6e449",
          "completed_at": "2026-07-15T18:08:08Z"
        },
        {
          "id": "bundle",
          "action": "reporting.bundle",
          "status": "completed",
          "resolved_input_hash": "aed8ebb688dc3c085dd978d7c4120572173c3cb87e75919e4a937dcca6ef9457",
          "started_at": "2026-07-15T18:08:08Z",
          "output": {
            "contract_version": 1,
            "task": "session_summary",
            "repo": "prd-plugin",
            "policy": {
              "enabled": false,
              "executor": "ai-collab",
              "contract_version": 1,
              "profile": "fast-capable",
              "tasks": [
                "report_summary",
                "session_summary",
                "wiki_synthesis",
                "triage_draft"
              ],
              "fallback": "main",
              "require_source_refs": true,
              "max_input_tokens": 12000,
              "max_output_tokens": 1500,
              "timeout_seconds": 30
            },
            "facts": {
              "requests_by_status": {
                "deferred": 1,
                "implemented": 80,
                "proposed": 1,
                "rejected": 1
              },
              "active_requests": [
                {
                  "id": "REQ-072",
                  "status": "proposed",
                  "severity": "low",
                  "summary": "opencode run-until-done: session.idle is a non-blocking notification, so the stop guard can't force continuation on opencode (currently degrades to a printed reminder, 0.5.95). Investigate whether opencode exposes any vetoable/continuation mechanism (a different event, a permission hook, or a 'continue' API) to enforce run-until-done, or accept the reminder as the permanent ceiling. Low priority — user rarely uses opencode."
                }
              ],
              "active_tracking": [],
              "open_health": [],
              "evidence_count": 105,
              "decision_count": 10
            },
            "findings": [],
            "source_refs": [
              ".prd_plugin/config.json",
              ".prd_plugin/state/decisions.json",
              ".prd_plugin/state/evidence.json",
              ".prd_plugin/state/health.json",
              ".prd_plugin/state/requests.json",
              ".prd_plugin/state/tracking.json",
              "REQ-072"
            ],
            "constraints": {
              "max_input_tokens": 12000,
              "max_output_tokens": 1500,
              "timeout_seconds": 30,
              "require_source_refs": true,
              "no_project_state_writes": true,
              "no_secrets_or_local_session_content": true
            }
          },
          "output_hash": "f61aa7bfac7c2e96e3bf2d3386a95e45d2db52d040f05aff9ea963197eacc3f6",
          "completed_at": "2026-07-15T18:08:08Z"
        },
        {
          "id": "delegated",
          "action": "reporting.delegate",
          "status": "completed",
          "resolved_input_hash": "5bf4dfad88c9958da759cb1561ca5fdd8f3ac9050e938bfde85af5c8d804adc9",
          "started_at": "2026-07-15T18:08:08Z",
          "output": {
            "status": "fallback",
            "action": "main",
            "reason": "disabled"
          },
          "output_hash": "e6085059f197def80ae95add1f328418107bea5436c9bd002530043646a3a95c",
          "completed_at": "2026-07-15T18:08:08Z"
        }
      ],
      "completed_at": "2026-07-15T18:08:08Z"
    },
    {
      "id": "WFR-165",
      "schema_version": "1.0",
      "workflow_id": "session.start",
      "workflow_version": 1,
      "definition_hash": "d0f98da02571e6dd27fec4aed92d3c82af9db75f8b90b997bf665635c7b7f6ca",
      "plan_hash": "b5072615ca3b7e9a3bd85d50d1f069d99ef2a9816b32c03a370745ed7a205536",
      "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
      "inputs": {},
      "idempotency_key": "hook:SessionStart:019f66f7-9a15-75c1-9baf-ba1d49b6e0df",
      "status": "completed",
      "attempt": 1,
      "created_at": "2026-07-15T18:08:57Z",
      "updated_at": "2026-07-15T18:08:58Z",
      "receipts": [
        {
          "step_id": "config",
          "action": "config.audit",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "3782ec2317c0c8ee7598634310a2804d8aae4735f557498f9d3b8fae7c45e1e5",
          "completed_at": "2026-07-15T18:08:57Z"
        },
        {
          "step_id": "services",
          "action": "services.audit",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "13dcc58bd528f3efa3e6e0fa0853a6eedc376f1f3685fbd4869cbb2b60382ee3",
          "completed_at": "2026-07-15T18:08:57Z"
        },
        {
          "step_id": "state",
          "action": "state.consistency",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "5a1c6e5246defb1b6b6b90ff734db95bece2886b408ab112ed9b8e67222d5568",
          "completed_at": "2026-07-15T18:08:58Z"
        },
        {
          "step_id": "status",
          "action": "state.query",
          "input_hash": "a15231a2142a2a9a85355a8b9cbbccffe01a9c9c2c2fd8c2bc2987cdc481564a",
          "output_hash": "8ba9f7d3cc6705af37de9e3324d1258e21ccacb5ab0b2d7b389ca08885e11187",
          "completed_at": "2026-07-15T18:08:58Z"
        },
        {
          "step_id": "substrate",
          "action": "substrate.preflight",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "a6df426290b4549a59eecaa0519ead9bcc50b7fcb25bd2185ff6047960f19ccb",
          "completed_at": "2026-07-15T18:08:58Z"
        },
        {
          "step_id": "notices",
          "action": "substrate.notices",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "38b904a1cf83df048360fb2480571b749fd98d57e11f1afdffb5a74a78166fea",
          "completed_at": "2026-07-15T18:08:58Z"
        },
        {
          "step_id": "goals",
          "action": "substrate.goals",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "cdfd4de44a28140e686159f34f7b47975954c67e1d1efcef666e985acb136ed8",
          "completed_at": "2026-07-15T18:08:58Z"
        }
      ],
      "steps": [
        {
          "id": "config",
          "action": "config.audit",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-15T18:08:57Z",
          "output": {
            "status": "ok",
            "summary": {
              "settings": 195,
              "mutable": 186,
              "read_only_or_managed": 9,
              "unclassified": 0,
              "unknown": 0,
              "invalid": 0,
              "missing_using_defaults": 0
            },
            "unclassified_keys": [],
            "unknown_keys": [],
            "invalid_values": [],
            "missing_using_defaults": []
          },
          "output_hash": "3782ec2317c0c8ee7598634310a2804d8aae4735f557498f9d3b8fae7c45e1e5",
          "completed_at": "2026-07-15T18:08:57Z"
        },
        {
          "id": "services",
          "action": "services.audit",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-15T18:08:57Z",
          "output": {
            "status": "ok",
            "summary": {
              "critical": 0,
              "high": 0,
              "medium": 0,
              "low": 0
            },
            "findings": []
          },
          "output_hash": "13dcc58bd528f3efa3e6e0fa0853a6eedc376f1f3685fbd4869cbb2b60382ee3",
          "completed_at": "2026-07-15T18:08:57Z"
        },
        {
          "id": "state",
          "action": "state.consistency",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-15T18:08:57Z",
          "output": {
            "status": "ok",
            "repo_root": "D:\\Projects\\prd-plugin",
            "summary": {
              "errors": 0,
              "warnings": 0,
              "infos": 0
            },
            "findings": []
          },
          "output_hash": "5a1c6e5246defb1b6b6b90ff734db95bece2886b408ab112ed9b8e67222d5568",
          "completed_at": "2026-07-15T18:08:58Z"
        },
        {
          "id": "status",
          "action": "state.query",
          "status": "completed",
          "resolved_input_hash": "a15231a2142a2a9a85355a8b9cbbccffe01a9c9c2c2fd8c2bc2987cdc481564a",
          "started_at": "2026-07-15T18:08:58Z",
          "output": {
            "repo_root": "D:\\Projects\\prd-plugin",
            "autonomy_level": "autonomous",
            "requests_by_status": {
              "deferred": 1,
              "implemented": 80,
              "proposed": 1,
              "rejected": 1
            },
            "active_tracking": [],
            "tracking_branches": [],
            "tracking_branch_counts": {},
            "tracking_branch_errors": [],
            "open_health": [],
            "stale_count": 0,
            "skill_usage": {
              "project-decision-policy": 1,
              "project-request-intake": 1,
              "project-test-driven-implementation": 1,
              "project-verification-before-completion": 1,
              "project-llm-wiki": 1
            },
            "wiki_backfill_pending": false,
            "version_update": null
          },
          "output_hash": "8ba9f7d3cc6705af37de9e3324d1258e21ccacb5ab0b2d7b389ca08885e11187",
          "completed_at": "2026-07-15T18:08:58Z"
        },
        {
          "id": "substrate",
          "action": "substrate.preflight",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-15T18:08:58Z",
          "output": {
            "status": "disabled",
            "services": {
              "status": "ok",
              "summary": {
                "critical": 0,
                "high": 0,
                "medium": 0,
                "low": 0
              },
              "findings": []
            },
            "policy": {
              "configured": {
                "enabled": false,
                "mode": "off",
                "capabilities": [
                  "records",
                  "graph",
                  "events"
                ],
                "contract_version": 2,
                "require_source_refs": true,
                "endpoint": "http://127.0.0.1:47124",
                "manual_url": "http://127.0.0.1:47124/utcp.json",
                "knowledge_browse_url": "http://127.0.0.1:5276",
                "auth_env": "AI_COLLAB_API_KEY",
                "timeout_seconds": 5,
                "max_result_bytes": 1048576,
                "cache_ttl_seconds": 60,
                "fallback": "local",
                "automation": {
                  "discovery_on_session_start": true,
                  "knowledge_recall": true,
                  "memory_recall": true,
                  "context_enrichment": true,
                  "notices_on_session_start": false,
                  "goals_sync": false,
                  "telemetry_on_maintenance": false,
                  "reporting_dispatch": true,
                  "judgment_dispatch": true,
                  "verification_execution": true
                }
              },
              "active": false,
              "effective_mode": "off",
              "effective_capabilities": []
            }
          },
          "output_hash": "a6df426290b4549a59eecaa0519ead9bcc50b7fcb25bd2185ff6047960f19ccb",
          "completed_at": "2026-07-15T18:08:58Z"
        },
        {
          "id": "notices",
          "action": "substrate.notices",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-15T18:08:58Z",
          "output": {
            "status": "disabled"
          },
          "output_hash": "38b904a1cf83df048360fb2480571b749fd98d57e11f1afdffb5a74a78166fea",
          "completed_at": "2026-07-15T18:08:58Z"
        },
        {
          "id": "goals",
          "action": "substrate.goals",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-15T18:08:58Z",
          "output": {
            "status": "disabled",
            "created": 0,
            "observed": 0,
            "results": []
          },
          "output_hash": "cdfd4de44a28140e686159f34f7b47975954c67e1d1efcef666e985acb136ed8",
          "completed_at": "2026-07-15T18:08:58Z"
        }
      ],
      "completed_at": "2026-07-15T18:08:58Z"
    },
    {
      "id": "WFR-166",
      "schema_version": "1.0",
      "workflow_id": "session.stop",
      "workflow_version": 1,
      "definition_hash": "0cef7bb3e28321be8f85375c154955a69310ce297e47de3f3b8dd48f77a2f07d",
      "plan_hash": "a5e1d77ac734217487fc418e29c7163f4e81178e25d171e70cd4c999d527d3e8",
      "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
      "inputs": {},
      "idempotency_key": "hook:Stop:019f66f7-9a15-75c1-9baf-ba1d49b6e0df",
      "status": "completed",
      "attempt": 1,
      "created_at": "2026-07-15T18:09:01Z",
      "updated_at": "2026-07-15T18:09:02Z",
      "receipts": [
        {
          "step_id": "state",
          "action": "state.consistency",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "5a1c6e5246defb1b6b6b90ff734db95bece2886b408ab112ed9b8e67222d5568",
          "completed_at": "2026-07-15T18:09:01Z"
        },
        {
          "step_id": "goals",
          "action": "substrate.goals",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "cdfd4de44a28140e686159f34f7b47975954c67e1d1efcef666e985acb136ed8",
          "completed_at": "2026-07-15T18:09:01Z"
        },
        {
          "step_id": "staleness",
          "action": "staleness.audit",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "1e81cb0ffd0a4d04626920a203b38d2d23a264cd43e807a85d375d69cae8a658",
          "completed_at": "2026-07-15T18:09:02Z"
        },
        {
          "step_id": "reflections",
          "action": "reflection.list",
          "input_hash": "0172e841ab4c13b3a4061f073f9d68a716ec87a8a5d52fde41823385e0582573",
          "output_hash": "c1b6b635c0bab21120657277f14ef6f839909875f307a3745fa48aee2bd6e449",
          "completed_at": "2026-07-15T18:09:02Z"
        },
        {
          "step_id": "bundle",
          "action": "reporting.bundle",
          "input_hash": "aed8ebb688dc3c085dd978d7c4120572173c3cb87e75919e4a937dcca6ef9457",
          "output_hash": "f61aa7bfac7c2e96e3bf2d3386a95e45d2db52d040f05aff9ea963197eacc3f6",
          "completed_at": "2026-07-15T18:09:02Z"
        },
        {
          "step_id": "delegated",
          "action": "reporting.delegate",
          "input_hash": "5bf4dfad88c9958da759cb1561ca5fdd8f3ac9050e938bfde85af5c8d804adc9",
          "output_hash": "e6085059f197def80ae95add1f328418107bea5436c9bd002530043646a3a95c",
          "completed_at": "2026-07-15T18:09:02Z"
        }
      ],
      "steps": [
        {
          "id": "state",
          "action": "state.consistency",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-15T18:09:01Z",
          "output": {
            "status": "ok",
            "repo_root": "D:\\Projects\\prd-plugin",
            "summary": {
              "errors": 0,
              "warnings": 0,
              "infos": 0
            },
            "findings": []
          },
          "output_hash": "5a1c6e5246defb1b6b6b90ff734db95bece2886b408ab112ed9b8e67222d5568",
          "completed_at": "2026-07-15T18:09:01Z"
        },
        {
          "id": "goals",
          "action": "substrate.goals",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-15T18:09:01Z",
          "output": {
            "status": "disabled",
            "created": 0,
            "observed": 0,
            "results": []
          },
          "output_hash": "cdfd4de44a28140e686159f34f7b47975954c67e1d1efcef666e985acb136ed8",
          "completed_at": "2026-07-15T18:09:01Z"
        },
        {
          "id": "staleness",
          "action": "staleness.audit",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-15T18:09:02Z",
          "output": {
            "status": "ok",
            "repo_root": "D:\\Projects\\prd-plugin",
            "counts": {
              "stale": 0
            },
            "stale": []
          },
          "output_hash": "1e81cb0ffd0a4d04626920a203b38d2d23a264cd43e807a85d375d69cae8a658",
          "completed_at": "2026-07-15T18:09:02Z"
        },
        {
          "id": "reflections",
          "action": "reflection.list",
          "status": "completed",
          "resolved_input_hash": "0172e841ab4c13b3a4061f073f9d68a716ec87a8a5d52fde41823385e0582573",
          "started_at": "2026-07-15T18:09:02Z",
          "output": {
            "enabled": false,
            "on_stop": true,
            "max_questions_per_stop": 5,
            "categories": [
              {
                "id": "behaviour_quality",
                "name": "Behaviour quality",
                "enabled": true,
                "question_count": 3
              },
              {
                "id": "harness_friction",
                "name": "Harness friction",
                "enabled": true,
                "question_count": 2
              }
            ],
            "questions": [
              {
                "id": "RFQ-001",
                "text": "Based on the work you just carried out, would you classify your behaviour as good? Answer yes or no and cite observable evidence.",
                "enabled": true,
                "category_id": "behaviour_quality",
                "category_name": "Behaviour quality",
                "effective_enabled": false
              },
              {
                "id": "RFQ-002",
                "text": "If you answered no, what could you do differently to correct your behaviour?",
                "enabled": true,
                "category_id": "behaviour_quality",
                "category_name": "Behaviour quality",
                "effective_enabled": false
              },
              {
                "id": "RFQ-003",
                "text": "Would another attempt using the identified good behaviours materially improve the outcome? Answer yes or no and state the next corrective action if yes.",
                "enabled": true,
                "category_id": "behaviour_quality",
                "category_name": "Behaviour quality",
                "effective_enabled": false
              },
              {
                "id": "RFQ-004",
                "text": "What harness friction points made this work more difficult?",
                "enabled": true,
                "category_id": "harness_friction",
                "category_name": "Harness friction",
                "effective_enabled": false
              },
              {
                "id": "RFQ-005",
                "text": "What up to three changes would most improve friction in the harness?",
                "enabled": true,
                "category_id": "harness_friction",
                "category_name": "Harness friction",
                "effective_enabled": false
              }
            ]
          },
          "output_hash": "c1b6b635c0bab21120657277f14ef6f839909875f307a3745fa48aee2bd6e449",
          "completed_at": "2026-07-15T18:09:02Z"
        },
        {
          "id": "bundle",
          "action": "reporting.bundle",
          "status": "completed",
          "resolved_input_hash": "aed8ebb688dc3c085dd978d7c4120572173c3cb87e75919e4a937dcca6ef9457",
          "started_at": "2026-07-15T18:09:02Z",
          "output": {
            "contract_version": 1,
            "task": "session_summary",
            "repo": "prd-plugin",
            "policy": {
              "enabled": false,
              "executor": "ai-collab",
              "contract_version": 1,
              "profile": "fast-capable",
              "tasks": [
                "report_summary",
                "session_summary",
                "wiki_synthesis",
                "triage_draft"
              ],
              "fallback": "main",
              "require_source_refs": true,
              "max_input_tokens": 12000,
              "max_output_tokens": 1500,
              "timeout_seconds": 30
            },
            "facts": {
              "requests_by_status": {
                "deferred": 1,
                "implemented": 80,
                "proposed": 1,
                "rejected": 1
              },
              "active_requests": [
                {
                  "id": "REQ-072",
                  "status": "proposed",
                  "severity": "low",
                  "summary": "opencode run-until-done: session.idle is a non-blocking notification, so the stop guard can't force continuation on opencode (currently degrades to a printed reminder, 0.5.95). Investigate whether opencode exposes any vetoable/continuation mechanism (a different event, a permission hook, or a 'continue' API) to enforce run-until-done, or accept the reminder as the permanent ceiling. Low priority — user rarely uses opencode."
                }
              ],
              "active_tracking": [],
              "open_health": [],
              "evidence_count": 105,
              "decision_count": 10
            },
            "findings": [],
            "source_refs": [
              ".prd_plugin/config.json",
              ".prd_plugin/state/decisions.json",
              ".prd_plugin/state/evidence.json",
              ".prd_plugin/state/health.json",
              ".prd_plugin/state/requests.json",
              ".prd_plugin/state/tracking.json",
              "REQ-072"
            ],
            "constraints": {
              "max_input_tokens": 12000,
              "max_output_tokens": 1500,
              "timeout_seconds": 30,
              "require_source_refs": true,
              "no_project_state_writes": true,
              "no_secrets_or_local_session_content": true
            }
          },
          "output_hash": "f61aa7bfac7c2e96e3bf2d3386a95e45d2db52d040f05aff9ea963197eacc3f6",
          "completed_at": "2026-07-15T18:09:02Z"
        },
        {
          "id": "delegated",
          "action": "reporting.delegate",
          "status": "completed",
          "resolved_input_hash": "5bf4dfad88c9958da759cb1561ca5fdd8f3ac9050e938bfde85af5c8d804adc9",
          "started_at": "2026-07-15T18:09:02Z",
          "output": {
            "status": "fallback",
            "action": "main",
            "reason": "disabled"
          },
          "output_hash": "e6085059f197def80ae95add1f328418107bea5436c9bd002530043646a3a95c",
          "completed_at": "2026-07-15T18:09:02Z"
        }
      ],
      "completed_at": "2026-07-15T18:09:02Z"
    },
    {
      "id": "WFR-167",
      "schema_version": "1.0",
      "workflow_id": "session.start",
      "workflow_version": 1,
      "definition_hash": "d0f98da02571e6dd27fec4aed92d3c82af9db75f8b90b997bf665635c7b7f6ca",
      "plan_hash": "b5072615ca3b7e9a3bd85d50d1f069d99ef2a9816b32c03a370745ed7a205536",
      "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
      "inputs": {},
      "idempotency_key": "hook:SessionStart:019f66f8-54c9-70a3-9076-4db8f7043714",
      "status": "completed",
      "attempt": 1,
      "created_at": "2026-07-15T18:09:40Z",
      "updated_at": "2026-07-15T18:09:41Z",
      "receipts": [
        {
          "step_id": "config",
          "action": "config.audit",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "3782ec2317c0c8ee7598634310a2804d8aae4735f557498f9d3b8fae7c45e1e5",
          "completed_at": "2026-07-15T18:09:40Z"
        },
        {
          "step_id": "services",
          "action": "services.audit",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "13dcc58bd528f3efa3e6e0fa0853a6eedc376f1f3685fbd4869cbb2b60382ee3",
          "completed_at": "2026-07-15T18:09:40Z"
        },
        {
          "step_id": "state",
          "action": "state.consistency",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "5a1c6e5246defb1b6b6b90ff734db95bece2886b408ab112ed9b8e67222d5568",
          "completed_at": "2026-07-15T18:09:40Z"
        },
        {
          "step_id": "status",
          "action": "state.query",
          "input_hash": "a15231a2142a2a9a85355a8b9cbbccffe01a9c9c2c2fd8c2bc2987cdc481564a",
          "output_hash": "8ba9f7d3cc6705af37de9e3324d1258e21ccacb5ab0b2d7b389ca08885e11187",
          "completed_at": "2026-07-15T18:09:41Z"
        },
        {
          "step_id": "substrate",
          "action": "substrate.preflight",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "a6df426290b4549a59eecaa0519ead9bcc50b7fcb25bd2185ff6047960f19ccb",
          "completed_at": "2026-07-15T18:09:41Z"
        },
        {
          "step_id": "notices",
          "action": "substrate.notices",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "38b904a1cf83df048360fb2480571b749fd98d57e11f1afdffb5a74a78166fea",
          "completed_at": "2026-07-15T18:09:41Z"
        },
        {
          "step_id": "goals",
          "action": "substrate.goals",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "cdfd4de44a28140e686159f34f7b47975954c67e1d1efcef666e985acb136ed8",
          "completed_at": "2026-07-15T18:09:41Z"
        }
      ],
      "steps": [
        {
          "id": "config",
          "action": "config.audit",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-15T18:09:40Z",
          "output": {
            "status": "ok",
            "summary": {
              "settings": 195,
              "mutable": 186,
              "read_only_or_managed": 9,
              "unclassified": 0,
              "unknown": 0,
              "invalid": 0,
              "missing_using_defaults": 0
            },
            "unclassified_keys": [],
            "unknown_keys": [],
            "invalid_values": [],
            "missing_using_defaults": []
          },
          "output_hash": "3782ec2317c0c8ee7598634310a2804d8aae4735f557498f9d3b8fae7c45e1e5",
          "completed_at": "2026-07-15T18:09:40Z"
        },
        {
          "id": "services",
          "action": "services.audit",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-15T18:09:40Z",
          "output": {
            "status": "ok",
            "summary": {
              "critical": 0,
              "high": 0,
              "medium": 0,
              "low": 0
            },
            "findings": []
          },
          "output_hash": "13dcc58bd528f3efa3e6e0fa0853a6eedc376f1f3685fbd4869cbb2b60382ee3",
          "completed_at": "2026-07-15T18:09:40Z"
        },
        {
          "id": "state",
          "action": "state.consistency",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-15T18:09:40Z",
          "output": {
            "status": "ok",
            "repo_root": "D:\\Projects\\prd-plugin",
            "summary": {
              "errors": 0,
              "warnings": 0,
              "infos": 0
            },
            "findings": []
          },
          "output_hash": "5a1c6e5246defb1b6b6b90ff734db95bece2886b408ab112ed9b8e67222d5568",
          "completed_at": "2026-07-15T18:09:40Z"
        },
        {
          "id": "status",
          "action": "state.query",
          "status": "completed",
          "resolved_input_hash": "a15231a2142a2a9a85355a8b9cbbccffe01a9c9c2c2fd8c2bc2987cdc481564a",
          "started_at": "2026-07-15T18:09:41Z",
          "output": {
            "repo_root": "D:\\Projects\\prd-plugin",
            "autonomy_level": "autonomous",
            "requests_by_status": {
              "deferred": 1,
              "implemented": 80,
              "proposed": 1,
              "rejected": 1
            },
            "active_tracking": [],
            "tracking_branches": [],
            "tracking_branch_counts": {},
            "tracking_branch_errors": [],
            "open_health": [],
            "stale_count": 0,
            "skill_usage": {
              "project-decision-policy": 1,
              "project-request-intake": 1,
              "project-test-driven-implementation": 1,
              "project-verification-before-completion": 1,
              "project-llm-wiki": 1
            },
            "wiki_backfill_pending": false,
            "version_update": null
          },
          "output_hash": "8ba9f7d3cc6705af37de9e3324d1258e21ccacb5ab0b2d7b389ca08885e11187",
          "completed_at": "2026-07-15T18:09:41Z"
        },
        {
          "id": "substrate",
          "action": "substrate.preflight",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-15T18:09:41Z",
          "output": {
            "status": "disabled",
            "services": {
              "status": "ok",
              "summary": {
                "critical": 0,
                "high": 0,
                "medium": 0,
                "low": 0
              },
              "findings": []
            },
            "policy": {
              "configured": {
                "enabled": false,
                "mode": "off",
                "capabilities": [
                  "records",
                  "graph",
                  "events"
                ],
                "contract_version": 2,
                "require_source_refs": true,
                "endpoint": "http://127.0.0.1:47124",
                "manual_url": "http://127.0.0.1:47124/utcp.json",
                "knowledge_browse_url": "http://127.0.0.1:5276",
                "auth_env": "AI_COLLAB_API_KEY",
                "timeout_seconds": 5,
                "max_result_bytes": 1048576,
                "cache_ttl_seconds": 60,
                "fallback": "local",
                "automation": {
                  "discovery_on_session_start": true,
                  "knowledge_recall": true,
                  "memory_recall": true,
                  "context_enrichment": true,
                  "notices_on_session_start": false,
                  "goals_sync": false,
                  "telemetry_on_maintenance": false,
                  "reporting_dispatch": true,
                  "judgment_dispatch": true,
                  "verification_execution": true
                }
              },
              "active": false,
              "effective_mode": "off",
              "effective_capabilities": []
            }
          },
          "output_hash": "a6df426290b4549a59eecaa0519ead9bcc50b7fcb25bd2185ff6047960f19ccb",
          "completed_at": "2026-07-15T18:09:41Z"
        },
        {
          "id": "notices",
          "action": "substrate.notices",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-15T18:09:41Z",
          "output": {
            "status": "disabled"
          },
          "output_hash": "38b904a1cf83df048360fb2480571b749fd98d57e11f1afdffb5a74a78166fea",
          "completed_at": "2026-07-15T18:09:41Z"
        },
        {
          "id": "goals",
          "action": "substrate.goals",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-15T18:09:41Z",
          "output": {
            "status": "disabled",
            "created": 0,
            "observed": 0,
            "results": []
          },
          "output_hash": "cdfd4de44a28140e686159f34f7b47975954c67e1d1efcef666e985acb136ed8",
          "completed_at": "2026-07-15T18:09:41Z"
        }
      ],
      "completed_at": "2026-07-15T18:09:41Z"
    },
    {
      "id": "WFR-168",
      "schema_version": "1.0",
      "workflow_id": "session.stop",
      "workflow_version": 1,
      "definition_hash": "0cef7bb3e28321be8f85375c154955a69310ce297e47de3f3b8dd48f77a2f07d",
      "plan_hash": "a5e1d77ac734217487fc418e29c7163f4e81178e25d171e70cd4c999d527d3e8",
      "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
      "inputs": {},
      "idempotency_key": "hook:Stop:019f66f8-54c9-70a3-9076-4db8f7043714",
      "status": "completed",
      "attempt": 1,
      "created_at": "2026-07-15T18:09:43Z",
      "updated_at": "2026-07-15T18:09:44Z",
      "receipts": [
        {
          "step_id": "state",
          "action": "state.consistency",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "5a1c6e5246defb1b6b6b90ff734db95bece2886b408ab112ed9b8e67222d5568",
          "completed_at": "2026-07-15T18:09:44Z"
        },
        {
          "step_id": "goals",
          "action": "substrate.goals",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "cdfd4de44a28140e686159f34f7b47975954c67e1d1efcef666e985acb136ed8",
          "completed_at": "2026-07-15T18:09:44Z"
        },
        {
          "step_id": "staleness",
          "action": "staleness.audit",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "1e81cb0ffd0a4d04626920a203b38d2d23a264cd43e807a85d375d69cae8a658",
          "completed_at": "2026-07-15T18:09:44Z"
        },
        {
          "step_id": "reflections",
          "action": "reflection.list",
          "input_hash": "0172e841ab4c13b3a4061f073f9d68a716ec87a8a5d52fde41823385e0582573",
          "output_hash": "c1b6b635c0bab21120657277f14ef6f839909875f307a3745fa48aee2bd6e449",
          "completed_at": "2026-07-15T18:09:44Z"
        },
        {
          "step_id": "bundle",
          "action": "reporting.bundle",
          "input_hash": "aed8ebb688dc3c085dd978d7c4120572173c3cb87e75919e4a937dcca6ef9457",
          "output_hash": "f61aa7bfac7c2e96e3bf2d3386a95e45d2db52d040f05aff9ea963197eacc3f6",
          "completed_at": "2026-07-15T18:09:44Z"
        },
        {
          "step_id": "delegated",
          "action": "reporting.delegate",
          "input_hash": "5bf4dfad88c9958da759cb1561ca5fdd8f3ac9050e938bfde85af5c8d804adc9",
          "output_hash": "e6085059f197def80ae95add1f328418107bea5436c9bd002530043646a3a95c",
          "completed_at": "2026-07-15T18:09:44Z"
        }
      ],
      "steps": [
        {
          "id": "state",
          "action": "state.consistency",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-15T18:09:43Z",
          "output": {
            "status": "ok",
            "repo_root": "D:\\Projects\\prd-plugin",
            "summary": {
              "errors": 0,
              "warnings": 0,
              "infos": 0
            },
            "findings": []
          },
          "output_hash": "5a1c6e5246defb1b6b6b90ff734db95bece2886b408ab112ed9b8e67222d5568",
          "completed_at": "2026-07-15T18:09:44Z"
        },
        {
          "id": "goals",
          "action": "substrate.goals",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-15T18:09:44Z",
          "output": {
            "status": "disabled",
            "created": 0,
            "observed": 0,
            "results": []
          },
          "output_hash": "cdfd4de44a28140e686159f34f7b47975954c67e1d1efcef666e985acb136ed8",
          "completed_at": "2026-07-15T18:09:44Z"
        },
        {
          "id": "staleness",
          "action": "staleness.audit",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-15T18:09:44Z",
          "output": {
            "status": "ok",
            "repo_root": "D:\\Projects\\prd-plugin",
            "counts": {
              "stale": 0
            },
            "stale": []
          },
          "output_hash": "1e81cb0ffd0a4d04626920a203b38d2d23a264cd43e807a85d375d69cae8a658",
          "completed_at": "2026-07-15T18:09:44Z"
        },
        {
          "id": "reflections",
          "action": "reflection.list",
          "status": "completed",
          "resolved_input_hash": "0172e841ab4c13b3a4061f073f9d68a716ec87a8a5d52fde41823385e0582573",
          "started_at": "2026-07-15T18:09:44Z",
          "output": {
            "enabled": false,
            "on_stop": true,
            "max_questions_per_stop": 5,
            "categories": [
              {
                "id": "behaviour_quality",
                "name": "Behaviour quality",
                "enabled": true,
                "question_count": 3
              },
              {
                "id": "harness_friction",
                "name": "Harness friction",
                "enabled": true,
                "question_count": 2
              }
            ],
            "questions": [
              {
                "id": "RFQ-001",
                "text": "Based on the work you just carried out, would you classify your behaviour as good? Answer yes or no and cite observable evidence.",
                "enabled": true,
                "category_id": "behaviour_quality",
                "category_name": "Behaviour quality",
                "effective_enabled": false
              },
              {
                "id": "RFQ-002",
                "text": "If you answered no, what could you do differently to correct your behaviour?",
                "enabled": true,
                "category_id": "behaviour_quality",
                "category_name": "Behaviour quality",
                "effective_enabled": false
              },
              {
                "id": "RFQ-003",
                "text": "Would another attempt using the identified good behaviours materially improve the outcome? Answer yes or no and state the next corrective action if yes.",
                "enabled": true,
                "category_id": "behaviour_quality",
                "category_name": "Behaviour quality",
                "effective_enabled": false
              },
              {
                "id": "RFQ-004",
                "text": "What harness friction points made this work more difficult?",
                "enabled": true,
                "category_id": "harness_friction",
                "category_name": "Harness friction",
                "effective_enabled": false
              },
              {
                "id": "RFQ-005",
                "text": "What up to three changes would most improve friction in the harness?",
                "enabled": true,
                "category_id": "harness_friction",
                "category_name": "Harness friction",
                "effective_enabled": false
              }
            ]
          },
          "output_hash": "c1b6b635c0bab21120657277f14ef6f839909875f307a3745fa48aee2bd6e449",
          "completed_at": "2026-07-15T18:09:44Z"
        },
        {
          "id": "bundle",
          "action": "reporting.bundle",
          "status": "completed",
          "resolved_input_hash": "aed8ebb688dc3c085dd978d7c4120572173c3cb87e75919e4a937dcca6ef9457",
          "started_at": "2026-07-15T18:09:44Z",
          "output": {
            "contract_version": 1,
            "task": "session_summary",
            "repo": "prd-plugin",
            "policy": {
              "enabled": false,
              "executor": "ai-collab",
              "contract_version": 1,
              "profile": "fast-capable",
              "tasks": [
                "report_summary",
                "session_summary",
                "wiki_synthesis",
                "triage_draft"
              ],
              "fallback": "main",
              "require_source_refs": true,
              "max_input_tokens": 12000,
              "max_output_tokens": 1500,
              "timeout_seconds": 30
            },
            "facts": {
              "requests_by_status": {
                "deferred": 1,
                "implemented": 80,
                "proposed": 1,
                "rejected": 1
              },
              "active_requests": [
                {
                  "id": "REQ-072",
                  "status": "proposed",
                  "severity": "low",
                  "summary": "opencode run-until-done: session.idle is a non-blocking notification, so the stop guard can't force continuation on opencode (currently degrades to a printed reminder, 0.5.95). Investigate whether opencode exposes any vetoable/continuation mechanism (a different event, a permission hook, or a 'continue' API) to enforce run-until-done, or accept the reminder as the permanent ceiling. Low priority — user rarely uses opencode."
                }
              ],
              "active_tracking": [],
              "open_health": [],
              "evidence_count": 105,
              "decision_count": 10
            },
            "findings": [],
            "source_refs": [
              ".prd_plugin/config.json",
              ".prd_plugin/state/decisions.json",
              ".prd_plugin/state/evidence.json",
              ".prd_plugin/state/health.json",
              ".prd_plugin/state/requests.json",
              ".prd_plugin/state/tracking.json",
              "REQ-072"
            ],
            "constraints": {
              "max_input_tokens": 12000,
              "max_output_tokens": 1500,
              "timeout_seconds": 30,
              "require_source_refs": true,
              "no_project_state_writes": true,
              "no_secrets_or_local_session_content": true
            }
          },
          "output_hash": "f61aa7bfac7c2e96e3bf2d3386a95e45d2db52d040f05aff9ea963197eacc3f6",
          "completed_at": "2026-07-15T18:09:44Z"
        },
        {
          "id": "delegated",
          "action": "reporting.delegate",
          "status": "completed",
          "resolved_input_hash": "5bf4dfad88c9958da759cb1561ca5fdd8f3ac9050e938bfde85af5c8d804adc9",
          "started_at": "2026-07-15T18:09:44Z",
          "output": {
            "status": "fallback",
            "action": "main",
            "reason": "disabled"
          },
          "output_hash": "e6085059f197def80ae95add1f328418107bea5436c9bd002530043646a3a95c",
          "completed_at": "2026-07-15T18:09:44Z"
        }
      ],
      "completed_at": "2026-07-15T18:09:44Z"
    },
    {
      "id": "WFR-169",
      "schema_version": "1.0",
      "workflow_id": "session.start",
      "workflow_version": 1,
      "definition_hash": "d0f98da02571e6dd27fec4aed92d3c82af9db75f8b90b997bf665635c7b7f6ca",
      "plan_hash": "b5072615ca3b7e9a3bd85d50d1f069d99ef2a9816b32c03a370745ed7a205536",
      "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
      "inputs": {},
      "idempotency_key": "hook:SessionStart:019f66f8-da70-7252-966f-7e7e038d0b2b",
      "status": "completed",
      "attempt": 1,
      "created_at": "2026-07-15T18:10:15Z",
      "updated_at": "2026-07-15T18:10:16Z",
      "receipts": [
        {
          "step_id": "config",
          "action": "config.audit",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "3782ec2317c0c8ee7598634310a2804d8aae4735f557498f9d3b8fae7c45e1e5",
          "completed_at": "2026-07-15T18:10:15Z"
        },
        {
          "step_id": "services",
          "action": "services.audit",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "13dcc58bd528f3efa3e6e0fa0853a6eedc376f1f3685fbd4869cbb2b60382ee3",
          "completed_at": "2026-07-15T18:10:15Z"
        },
        {
          "step_id": "state",
          "action": "state.consistency",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "5a1c6e5246defb1b6b6b90ff734db95bece2886b408ab112ed9b8e67222d5568",
          "completed_at": "2026-07-15T18:10:16Z"
        },
        {
          "step_id": "status",
          "action": "state.query",
          "input_hash": "a15231a2142a2a9a85355a8b9cbbccffe01a9c9c2c2fd8c2bc2987cdc481564a",
          "output_hash": "8ba9f7d3cc6705af37de9e3324d1258e21ccacb5ab0b2d7b389ca08885e11187",
          "completed_at": "2026-07-15T18:10:16Z"
        },
        {
          "step_id": "substrate",
          "action": "substrate.preflight",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "a6df426290b4549a59eecaa0519ead9bcc50b7fcb25bd2185ff6047960f19ccb",
          "completed_at": "2026-07-15T18:10:16Z"
        },
        {
          "step_id": "notices",
          "action": "substrate.notices",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "38b904a1cf83df048360fb2480571b749fd98d57e11f1afdffb5a74a78166fea",
          "completed_at": "2026-07-15T18:10:16Z"
        },
        {
          "step_id": "goals",
          "action": "substrate.goals",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "cdfd4de44a28140e686159f34f7b47975954c67e1d1efcef666e985acb136ed8",
          "completed_at": "2026-07-15T18:10:16Z"
        }
      ],
      "steps": [
        {
          "id": "config",
          "action": "config.audit",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-15T18:10:15Z",
          "output": {
            "status": "ok",
            "summary": {
              "settings": 195,
              "mutable": 186,
              "read_only_or_managed": 9,
              "unclassified": 0,
              "unknown": 0,
              "invalid": 0,
              "missing_using_defaults": 0
            },
            "unclassified_keys": [],
            "unknown_keys": [],
            "invalid_values": [],
            "missing_using_defaults": []
          },
          "output_hash": "3782ec2317c0c8ee7598634310a2804d8aae4735f557498f9d3b8fae7c45e1e5",
          "completed_at": "2026-07-15T18:10:15Z"
        },
        {
          "id": "services",
          "action": "services.audit",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-15T18:10:15Z",
          "output": {
            "status": "ok",
            "summary": {
              "critical": 0,
              "high": 0,
              "medium": 0,
              "low": 0
            },
            "findings": []
          },
          "output_hash": "13dcc58bd528f3efa3e6e0fa0853a6eedc376f1f3685fbd4869cbb2b60382ee3",
          "completed_at": "2026-07-15T18:10:15Z"
        },
        {
          "id": "state",
          "action": "state.consistency",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-15T18:10:15Z",
          "output": {
            "status": "ok",
            "repo_root": "D:\\Projects\\prd-plugin",
            "summary": {
              "errors": 0,
              "warnings": 0,
              "infos": 0
            },
            "findings": []
          },
          "output_hash": "5a1c6e5246defb1b6b6b90ff734db95bece2886b408ab112ed9b8e67222d5568",
          "completed_at": "2026-07-15T18:10:16Z"
        },
        {
          "id": "status",
          "action": "state.query",
          "status": "completed",
          "resolved_input_hash": "a15231a2142a2a9a85355a8b9cbbccffe01a9c9c2c2fd8c2bc2987cdc481564a",
          "started_at": "2026-07-15T18:10:16Z",
          "output": {
            "repo_root": "D:\\Projects\\prd-plugin",
            "autonomy_level": "autonomous",
            "requests_by_status": {
              "deferred": 1,
              "implemented": 80,
              "proposed": 1,
              "rejected": 1
            },
            "active_tracking": [],
            "tracking_branches": [],
            "tracking_branch_counts": {},
            "tracking_branch_errors": [],
            "open_health": [],
            "stale_count": 0,
            "skill_usage": {
              "project-decision-policy": 1,
              "project-request-intake": 1,
              "project-test-driven-implementation": 1,
              "project-verification-before-completion": 1,
              "project-llm-wiki": 1
            },
            "wiki_backfill_pending": false,
            "version_update": null
          },
          "output_hash": "8ba9f7d3cc6705af37de9e3324d1258e21ccacb5ab0b2d7b389ca08885e11187",
          "completed_at": "2026-07-15T18:10:16Z"
        },
        {
          "id": "substrate",
          "action": "substrate.preflight",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-15T18:10:16Z",
          "output": {
            "status": "disabled",
            "services": {
              "status": "ok",
              "summary": {
                "critical": 0,
                "high": 0,
                "medium": 0,
                "low": 0
              },
              "findings": []
            },
            "policy": {
              "configured": {
                "enabled": false,
                "mode": "off",
                "capabilities": [
                  "records",
                  "graph",
                  "events"
                ],
                "contract_version": 2,
                "require_source_refs": true,
                "endpoint": "http://127.0.0.1:47124",
                "manual_url": "http://127.0.0.1:47124/utcp.json",
                "knowledge_browse_url": "http://127.0.0.1:5276",
                "auth_env": "AI_COLLAB_API_KEY",
                "timeout_seconds": 5,
                "max_result_bytes": 1048576,
                "cache_ttl_seconds": 60,
                "fallback": "local",
                "automation": {
                  "discovery_on_session_start": true,
                  "knowledge_recall": true,
                  "memory_recall": true,
                  "context_enrichment": true,
                  "notices_on_session_start": false,
                  "goals_sync": false,
                  "telemetry_on_maintenance": false,
                  "reporting_dispatch": true,
                  "judgment_dispatch": true,
                  "verification_execution": true
                }
              },
              "active": false,
              "effective_mode": "off",
              "effective_capabilities": []
            }
          },
          "output_hash": "a6df426290b4549a59eecaa0519ead9bcc50b7fcb25bd2185ff6047960f19ccb",
          "completed_at": "2026-07-15T18:10:16Z"
        },
        {
          "id": "notices",
          "action": "substrate.notices",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-15T18:10:16Z",
          "output": {
            "status": "disabled"
          },
          "output_hash": "38b904a1cf83df048360fb2480571b749fd98d57e11f1afdffb5a74a78166fea",
          "completed_at": "2026-07-15T18:10:16Z"
        },
        {
          "id": "goals",
          "action": "substrate.goals",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-15T18:10:16Z",
          "output": {
            "status": "disabled",
            "created": 0,
            "observed": 0,
            "results": []
          },
          "output_hash": "cdfd4de44a28140e686159f34f7b47975954c67e1d1efcef666e985acb136ed8",
          "completed_at": "2026-07-15T18:10:16Z"
        }
      ],
      "completed_at": "2026-07-15T18:10:16Z"
    },
    {
      "id": "WFR-170",
      "schema_version": "1.0",
      "workflow_id": "session.stop",
      "workflow_version": 1,
      "definition_hash": "0cef7bb3e28321be8f85375c154955a69310ce297e47de3f3b8dd48f77a2f07d",
      "plan_hash": "a5e1d77ac734217487fc418e29c7163f4e81178e25d171e70cd4c999d527d3e8",
      "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
      "inputs": {},
      "idempotency_key": "hook:Stop:019f66f8-da70-7252-966f-7e7e038d0b2b",
      "status": "completed",
      "attempt": 1,
      "created_at": "2026-07-15T18:10:20Z",
      "updated_at": "2026-07-15T18:10:22Z",
      "receipts": [
        {
          "step_id": "state",
          "action": "state.consistency",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "5a1c6e5246defb1b6b6b90ff734db95bece2886b408ab112ed9b8e67222d5568",
          "completed_at": "2026-07-15T18:10:21Z"
        },
        {
          "step_id": "goals",
          "action": "substrate.goals",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "cdfd4de44a28140e686159f34f7b47975954c67e1d1efcef666e985acb136ed8",
          "completed_at": "2026-07-15T18:10:21Z"
        },
        {
          "step_id": "staleness",
          "action": "staleness.audit",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "1e81cb0ffd0a4d04626920a203b38d2d23a264cd43e807a85d375d69cae8a658",
          "completed_at": "2026-07-15T18:10:21Z"
        },
        {
          "step_id": "reflections",
          "action": "reflection.list",
          "input_hash": "0172e841ab4c13b3a4061f073f9d68a716ec87a8a5d52fde41823385e0582573",
          "output_hash": "c1b6b635c0bab21120657277f14ef6f839909875f307a3745fa48aee2bd6e449",
          "completed_at": "2026-07-15T18:10:21Z"
        },
        {
          "step_id": "bundle",
          "action": "reporting.bundle",
          "input_hash": "aed8ebb688dc3c085dd978d7c4120572173c3cb87e75919e4a937dcca6ef9457",
          "output_hash": "f61aa7bfac7c2e96e3bf2d3386a95e45d2db52d040f05aff9ea963197eacc3f6",
          "completed_at": "2026-07-15T18:10:22Z"
        },
        {
          "step_id": "delegated",
          "action": "reporting.delegate",
          "input_hash": "5bf4dfad88c9958da759cb1561ca5fdd8f3ac9050e938bfde85af5c8d804adc9",
          "output_hash": "e6085059f197def80ae95add1f328418107bea5436c9bd002530043646a3a95c",
          "completed_at": "2026-07-15T18:10:22Z"
        }
      ],
      "steps": [
        {
          "id": "state",
          "action": "state.consistency",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-15T18:10:21Z",
          "output": {
            "status": "ok",
            "repo_root": "D:\\Projects\\prd-plugin",
            "summary": {
              "errors": 0,
              "warnings": 0,
              "infos": 0
            },
            "findings": []
          },
          "output_hash": "5a1c6e5246defb1b6b6b90ff734db95bece2886b408ab112ed9b8e67222d5568",
          "completed_at": "2026-07-15T18:10:21Z"
        },
        {
          "id": "goals",
          "action": "substrate.goals",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-15T18:10:21Z",
          "output": {
            "status": "disabled",
            "created": 0,
            "observed": 0,
            "results": []
          },
          "output_hash": "cdfd4de44a28140e686159f34f7b47975954c67e1d1efcef666e985acb136ed8",
          "completed_at": "2026-07-15T18:10:21Z"
        },
        {
          "id": "staleness",
          "action": "staleness.audit",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-15T18:10:21Z",
          "output": {
            "status": "ok",
            "repo_root": "D:\\Projects\\prd-plugin",
            "counts": {
              "stale": 0
            },
            "stale": []
          },
          "output_hash": "1e81cb0ffd0a4d04626920a203b38d2d23a264cd43e807a85d375d69cae8a658",
          "completed_at": "2026-07-15T18:10:21Z"
        },
        {
          "id": "reflections",
          "action": "reflection.list",
          "status": "completed",
          "resolved_input_hash": "0172e841ab4c13b3a4061f073f9d68a716ec87a8a5d52fde41823385e0582573",
          "started_at": "2026-07-15T18:10:21Z",
          "output": {
            "enabled": false,
            "on_stop": true,
            "max_questions_per_stop": 5,
            "categories": [
              {
                "id": "behaviour_quality",
                "name": "Behaviour quality",
                "enabled": true,
                "question_count": 3
              },
              {
                "id": "harness_friction",
                "name": "Harness friction",
                "enabled": true,
                "question_count": 2
              }
            ],
            "questions": [
              {
                "id": "RFQ-001",
                "text": "Based on the work you just carried out, would you classify your behaviour as good? Answer yes or no and cite observable evidence.",
                "enabled": true,
                "category_id": "behaviour_quality",
                "category_name": "Behaviour quality",
                "effective_enabled": false
              },
              {
                "id": "RFQ-002",
                "text": "If you answered no, what could you do differently to correct your behaviour?",
                "enabled": true,
                "category_id": "behaviour_quality",
                "category_name": "Behaviour quality",
                "effective_enabled": false
              },
              {
                "id": "RFQ-003",
                "text": "Would another attempt using the identified good behaviours materially improve the outcome? Answer yes or no and state the next corrective action if yes.",
                "enabled": true,
                "category_id": "behaviour_quality",
                "category_name": "Behaviour quality",
                "effective_enabled": false
              },
              {
                "id": "RFQ-004",
                "text": "What harness friction points made this work more difficult?",
                "enabled": true,
                "category_id": "harness_friction",
                "category_name": "Harness friction",
                "effective_enabled": false
              },
              {
                "id": "RFQ-005",
                "text": "What up to three changes would most improve friction in the harness?",
                "enabled": true,
                "category_id": "harness_friction",
                "category_name": "Harness friction",
                "effective_enabled": false
              }
            ]
          },
          "output_hash": "c1b6b635c0bab21120657277f14ef6f839909875f307a3745fa48aee2bd6e449",
          "completed_at": "2026-07-15T18:10:21Z"
        },
        {
          "id": "bundle",
          "action": "reporting.bundle",
          "status": "completed",
          "resolved_input_hash": "aed8ebb688dc3c085dd978d7c4120572173c3cb87e75919e4a937dcca6ef9457",
          "started_at": "2026-07-15T18:10:22Z",
          "output": {
            "contract_version": 1,
            "task": "session_summary",
            "repo": "prd-plugin",
            "policy": {
              "enabled": false,
              "executor": "ai-collab",
              "contract_version": 1,
              "profile": "fast-capable",
              "tasks": [
                "report_summary",
                "session_summary",
                "wiki_synthesis",
                "triage_draft"
              ],
              "fallback": "main",
              "require_source_refs": true,
              "max_input_tokens": 12000,
              "max_output_tokens": 1500,
              "timeout_seconds": 30
            },
            "facts": {
              "requests_by_status": {
                "deferred": 1,
                "implemented": 80,
                "proposed": 1,
                "rejected": 1
              },
              "active_requests": [
                {
                  "id": "REQ-072",
                  "status": "proposed",
                  "severity": "low",
                  "summary": "opencode run-until-done: session.idle is a non-blocking notification, so the stop guard can't force continuation on opencode (currently degrades to a printed reminder, 0.5.95). Investigate whether opencode exposes any vetoable/continuation mechanism (a different event, a permission hook, or a 'continue' API) to enforce run-until-done, or accept the reminder as the permanent ceiling. Low priority — user rarely uses opencode."
                }
              ],
              "active_tracking": [],
              "open_health": [],
              "evidence_count": 105,
              "decision_count": 10
            },
            "findings": [],
            "source_refs": [
              ".prd_plugin/config.json",
              ".prd_plugin/state/decisions.json",
              ".prd_plugin/state/evidence.json",
              ".prd_plugin/state/health.json",
              ".prd_plugin/state/requests.json",
              ".prd_plugin/state/tracking.json",
              "REQ-072"
            ],
            "constraints": {
              "max_input_tokens": 12000,
              "max_output_tokens": 1500,
              "timeout_seconds": 30,
              "require_source_refs": true,
              "no_project_state_writes": true,
              "no_secrets_or_local_session_content": true
            }
          },
          "output_hash": "f61aa7bfac7c2e96e3bf2d3386a95e45d2db52d040f05aff9ea963197eacc3f6",
          "completed_at": "2026-07-15T18:10:22Z"
        },
        {
          "id": "delegated",
          "action": "reporting.delegate",
          "status": "completed",
          "resolved_input_hash": "5bf4dfad88c9958da759cb1561ca5fdd8f3ac9050e938bfde85af5c8d804adc9",
          "started_at": "2026-07-15T18:10:22Z",
          "output": {
            "status": "fallback",
            "action": "main",
            "reason": "disabled"
          },
          "output_hash": "e6085059f197def80ae95add1f328418107bea5436c9bd002530043646a3a95c",
          "completed_at": "2026-07-15T18:10:22Z"
        }
      ],
      "completed_at": "2026-07-15T18:10:22Z"
    },
    {
      "id": "WFR-171",
      "schema_version": "1.0",
      "workflow_id": "session.start",
      "workflow_version": 1,
      "definition_hash": "d0f98da02571e6dd27fec4aed92d3c82af9db75f8b90b997bf665635c7b7f6ca",
      "plan_hash": "b5072615ca3b7e9a3bd85d50d1f069d99ef2a9816b32c03a370745ed7a205536",
      "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
      "inputs": {},
      "idempotency_key": "hook:SessionStart:019f66f9-bdf0-7e90-b603-189e38e22a89",
      "status": "completed",
      "attempt": 1,
      "created_at": "2026-07-15T18:11:13Z",
      "updated_at": "2026-07-15T18:11:15Z",
      "receipts": [
        {
          "step_id": "config",
          "action": "config.audit",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "3782ec2317c0c8ee7598634310a2804d8aae4735f557498f9d3b8fae7c45e1e5",
          "completed_at": "2026-07-15T18:11:13Z"
        },
        {
          "step_id": "services",
          "action": "services.audit",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "13dcc58bd528f3efa3e6e0fa0853a6eedc376f1f3685fbd4869cbb2b60382ee3",
          "completed_at": "2026-07-15T18:11:14Z"
        },
        {
          "step_id": "state",
          "action": "state.consistency",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "5a1c6e5246defb1b6b6b90ff734db95bece2886b408ab112ed9b8e67222d5568",
          "completed_at": "2026-07-15T18:11:14Z"
        },
        {
          "step_id": "status",
          "action": "state.query",
          "input_hash": "a15231a2142a2a9a85355a8b9cbbccffe01a9c9c2c2fd8c2bc2987cdc481564a",
          "output_hash": "8ba9f7d3cc6705af37de9e3324d1258e21ccacb5ab0b2d7b389ca08885e11187",
          "completed_at": "2026-07-15T18:11:14Z"
        },
        {
          "step_id": "substrate",
          "action": "substrate.preflight",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "a6df426290b4549a59eecaa0519ead9bcc50b7fcb25bd2185ff6047960f19ccb",
          "completed_at": "2026-07-15T18:11:15Z"
        },
        {
          "step_id": "notices",
          "action": "substrate.notices",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "38b904a1cf83df048360fb2480571b749fd98d57e11f1afdffb5a74a78166fea",
          "completed_at": "2026-07-15T18:11:15Z"
        },
        {
          "step_id": "goals",
          "action": "substrate.goals",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "cdfd4de44a28140e686159f34f7b47975954c67e1d1efcef666e985acb136ed8",
          "completed_at": "2026-07-15T18:11:15Z"
        }
      ],
      "steps": [
        {
          "id": "config",
          "action": "config.audit",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-15T18:11:13Z",
          "output": {
            "status": "ok",
            "summary": {
              "settings": 195,
              "mutable": 186,
              "read_only_or_managed": 9,
              "unclassified": 0,
              "unknown": 0,
              "invalid": 0,
              "missing_using_defaults": 0
            },
            "unclassified_keys": [],
            "unknown_keys": [],
            "invalid_values": [],
            "missing_using_defaults": []
          },
          "output_hash": "3782ec2317c0c8ee7598634310a2804d8aae4735f557498f9d3b8fae7c45e1e5",
          "completed_at": "2026-07-15T18:11:13Z"
        },
        {
          "id": "services",
          "action": "services.audit",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-15T18:11:14Z",
          "output": {
            "status": "ok",
            "summary": {
              "critical": 0,
              "high": 0,
              "medium": 0,
              "low": 0
            },
            "findings": []
          },
          "output_hash": "13dcc58bd528f3efa3e6e0fa0853a6eedc376f1f3685fbd4869cbb2b60382ee3",
          "completed_at": "2026-07-15T18:11:14Z"
        },
        {
          "id": "state",
          "action": "state.consistency",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-15T18:11:14Z",
          "output": {
            "status": "ok",
            "repo_root": "D:\\Projects\\prd-plugin",
            "summary": {
              "errors": 0,
              "warnings": 0,
              "infos": 0
            },
            "findings": []
          },
          "output_hash": "5a1c6e5246defb1b6b6b90ff734db95bece2886b408ab112ed9b8e67222d5568",
          "completed_at": "2026-07-15T18:11:14Z"
        },
        {
          "id": "status",
          "action": "state.query",
          "status": "completed",
          "resolved_input_hash": "a15231a2142a2a9a85355a8b9cbbccffe01a9c9c2c2fd8c2bc2987cdc481564a",
          "started_at": "2026-07-15T18:11:14Z",
          "output": {
            "repo_root": "D:\\Projects\\prd-plugin",
            "autonomy_level": "autonomous",
            "requests_by_status": {
              "deferred": 1,
              "implemented": 80,
              "proposed": 1,
              "rejected": 1
            },
            "active_tracking": [],
            "tracking_branches": [],
            "tracking_branch_counts": {},
            "tracking_branch_errors": [],
            "open_health": [],
            "stale_count": 0,
            "skill_usage": {
              "project-decision-policy": 1,
              "project-request-intake": 1,
              "project-test-driven-implementation": 1,
              "project-verification-before-completion": 1,
              "project-llm-wiki": 1
            },
            "wiki_backfill_pending": false,
            "version_update": null
          },
          "output_hash": "8ba9f7d3cc6705af37de9e3324d1258e21ccacb5ab0b2d7b389ca08885e11187",
          "completed_at": "2026-07-15T18:11:14Z"
        },
        {
          "id": "substrate",
          "action": "substrate.preflight",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-15T18:11:15Z",
          "output": {
            "status": "disabled",
            "services": {
              "status": "ok",
              "summary": {
                "critical": 0,
                "high": 0,
                "medium": 0,
                "low": 0
              },
              "findings": []
            },
            "policy": {
              "configured": {
                "enabled": false,
                "mode": "off",
                "capabilities": [
                  "records",
                  "graph",
                  "events"
                ],
                "contract_version": 2,
                "require_source_refs": true,
                "endpoint": "http://127.0.0.1:47124",
                "manual_url": "http://127.0.0.1:47124/utcp.json",
                "knowledge_browse_url": "http://127.0.0.1:5276",
                "auth_env": "AI_COLLAB_API_KEY",
                "timeout_seconds": 5,
                "max_result_bytes": 1048576,
                "cache_ttl_seconds": 60,
                "fallback": "local",
                "automation": {
                  "discovery_on_session_start": true,
                  "knowledge_recall": true,
                  "memory_recall": true,
                  "context_enrichment": true,
                  "notices_on_session_start": false,
                  "goals_sync": false,
                  "telemetry_on_maintenance": false,
                  "reporting_dispatch": true,
                  "judgment_dispatch": true,
                  "verification_execution": true
                }
              },
              "active": false,
              "effective_mode": "off",
              "effective_capabilities": []
            }
          },
          "output_hash": "a6df426290b4549a59eecaa0519ead9bcc50b7fcb25bd2185ff6047960f19ccb",
          "completed_at": "2026-07-15T18:11:15Z"
        },
        {
          "id": "notices",
          "action": "substrate.notices",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-15T18:11:15Z",
          "output": {
            "status": "disabled"
          },
          "output_hash": "38b904a1cf83df048360fb2480571b749fd98d57e11f1afdffb5a74a78166fea",
          "completed_at": "2026-07-15T18:11:15Z"
        },
        {
          "id": "goals",
          "action": "substrate.goals",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-15T18:11:15Z",
          "output": {
            "status": "disabled",
            "created": 0,
            "observed": 0,
            "results": []
          },
          "output_hash": "cdfd4de44a28140e686159f34f7b47975954c67e1d1efcef666e985acb136ed8",
          "completed_at": "2026-07-15T18:11:15Z"
        }
      ],
      "completed_at": "2026-07-15T18:11:15Z"
    },
    {
      "id": "WFR-172",
      "schema_version": "1.0",
      "workflow_id": "session.stop",
      "workflow_version": 1,
      "definition_hash": "0cef7bb3e28321be8f85375c154955a69310ce297e47de3f3b8dd48f77a2f07d",
      "plan_hash": "a5e1d77ac734217487fc418e29c7163f4e81178e25d171e70cd4c999d527d3e8",
      "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
      "inputs": {},
      "idempotency_key": "hook:Stop:019f66f9-bdf0-7e90-b603-189e38e22a89",
      "status": "completed",
      "attempt": 1,
      "created_at": "2026-07-15T18:11:19Z",
      "updated_at": "2026-07-15T18:11:20Z",
      "receipts": [
        {
          "step_id": "state",
          "action": "state.consistency",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "5a1c6e5246defb1b6b6b90ff734db95bece2886b408ab112ed9b8e67222d5568",
          "completed_at": "2026-07-15T18:11:20Z"
        },
        {
          "step_id": "goals",
          "action": "substrate.goals",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "cdfd4de44a28140e686159f34f7b47975954c67e1d1efcef666e985acb136ed8",
          "completed_at": "2026-07-15T18:11:20Z"
        },
        {
          "step_id": "staleness",
          "action": "staleness.audit",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "1e81cb0ffd0a4d04626920a203b38d2d23a264cd43e807a85d375d69cae8a658",
          "completed_at": "2026-07-15T18:11:20Z"
        },
        {
          "step_id": "reflections",
          "action": "reflection.list",
          "input_hash": "0172e841ab4c13b3a4061f073f9d68a716ec87a8a5d52fde41823385e0582573",
          "output_hash": "c1b6b635c0bab21120657277f14ef6f839909875f307a3745fa48aee2bd6e449",
          "completed_at": "2026-07-15T18:11:20Z"
        },
        {
          "step_id": "bundle",
          "action": "reporting.bundle",
          "input_hash": "aed8ebb688dc3c085dd978d7c4120572173c3cb87e75919e4a937dcca6ef9457",
          "output_hash": "f61aa7bfac7c2e96e3bf2d3386a95e45d2db52d040f05aff9ea963197eacc3f6",
          "completed_at": "2026-07-15T18:11:20Z"
        },
        {
          "step_id": "delegated",
          "action": "reporting.delegate",
          "input_hash": "5bf4dfad88c9958da759cb1561ca5fdd8f3ac9050e938bfde85af5c8d804adc9",
          "output_hash": "e6085059f197def80ae95add1f328418107bea5436c9bd002530043646a3a95c",
          "completed_at": "2026-07-15T18:11:20Z"
        }
      ],
      "steps": [
        {
          "id": "state",
          "action": "state.consistency",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-15T18:11:19Z",
          "output": {
            "status": "ok",
            "repo_root": "D:\\Projects\\prd-plugin",
            "summary": {
              "errors": 0,
              "warnings": 0,
              "infos": 0
            },
            "findings": []
          },
          "output_hash": "5a1c6e5246defb1b6b6b90ff734db95bece2886b408ab112ed9b8e67222d5568",
          "completed_at": "2026-07-15T18:11:20Z"
        },
        {
          "id": "goals",
          "action": "substrate.goals",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-15T18:11:20Z",
          "output": {
            "status": "disabled",
            "created": 0,
            "observed": 0,
            "results": []
          },
          "output_hash": "cdfd4de44a28140e686159f34f7b47975954c67e1d1efcef666e985acb136ed8",
          "completed_at": "2026-07-15T18:11:20Z"
        },
        {
          "id": "staleness",
          "action": "staleness.audit",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-15T18:11:20Z",
          "output": {
            "status": "ok",
            "repo_root": "D:\\Projects\\prd-plugin",
            "counts": {
              "stale": 0
            },
            "stale": []
          },
          "output_hash": "1e81cb0ffd0a4d04626920a203b38d2d23a264cd43e807a85d375d69cae8a658",
          "completed_at": "2026-07-15T18:11:20Z"
        },
        {
          "id": "reflections",
          "action": "reflection.list",
          "status": "completed",
          "resolved_input_hash": "0172e841ab4c13b3a4061f073f9d68a716ec87a8a5d52fde41823385e0582573",
          "started_at": "2026-07-15T18:11:20Z",
          "output": {
            "enabled": false,
            "on_stop": true,
            "max_questions_per_stop": 5,
            "categories": [
              {
                "id": "behaviour_quality",
                "name": "Behaviour quality",
                "enabled": true,
                "question_count": 3
              },
              {
                "id": "harness_friction",
                "name": "Harness friction",
                "enabled": true,
                "question_count": 2
              }
            ],
            "questions": [
              {
                "id": "RFQ-001",
                "text": "Based on the work you just carried out, would you classify your behaviour as good? Answer yes or no and cite observable evidence.",
                "enabled": true,
                "category_id": "behaviour_quality",
                "category_name": "Behaviour quality",
                "effective_enabled": false
              },
              {
                "id": "RFQ-002",
                "text": "If you answered no, what could you do differently to correct your behaviour?",
                "enabled": true,
                "category_id": "behaviour_quality",
                "category_name": "Behaviour quality",
                "effective_enabled": false
              },
              {
                "id": "RFQ-003",
                "text": "Would another attempt using the identified good behaviours materially improve the outcome? Answer yes or no and state the next corrective action if yes.",
                "enabled": true,
                "category_id": "behaviour_quality",
                "category_name": "Behaviour quality",
                "effective_enabled": false
              },
              {
                "id": "RFQ-004",
                "text": "What harness friction points made this work more difficult?",
                "enabled": true,
                "category_id": "harness_friction",
                "category_name": "Harness friction",
                "effective_enabled": false
              },
              {
                "id": "RFQ-005",
                "text": "What up to three changes would most improve friction in the harness?",
                "enabled": true,
                "category_id": "harness_friction",
                "category_name": "Harness friction",
                "effective_enabled": false
              }
            ]
          },
          "output_hash": "c1b6b635c0bab21120657277f14ef6f839909875f307a3745fa48aee2bd6e449",
          "completed_at": "2026-07-15T18:11:20Z"
        },
        {
          "id": "bundle",
          "action": "reporting.bundle",
          "status": "completed",
          "resolved_input_hash": "aed8ebb688dc3c085dd978d7c4120572173c3cb87e75919e4a937dcca6ef9457",
          "started_at": "2026-07-15T18:11:20Z",
          "output": {
            "contract_version": 1,
            "task": "session_summary",
            "repo": "prd-plugin",
            "policy": {
              "enabled": false,
              "executor": "ai-collab",
              "contract_version": 1,
              "profile": "fast-capable",
              "tasks": [
                "report_summary",
                "session_summary",
                "wiki_synthesis",
                "triage_draft"
              ],
              "fallback": "main",
              "require_source_refs": true,
              "max_input_tokens": 12000,
              "max_output_tokens": 1500,
              "timeout_seconds": 30
            },
            "facts": {
              "requests_by_status": {
                "deferred": 1,
                "implemented": 80,
                "proposed": 1,
                "rejected": 1
              },
              "active_requests": [
                {
                  "id": "REQ-072",
                  "status": "proposed",
                  "severity": "low",
                  "summary": "opencode run-until-done: session.idle is a non-blocking notification, so the stop guard can't force continuation on opencode (currently degrades to a printed reminder, 0.5.95). Investigate whether opencode exposes any vetoable/continuation mechanism (a different event, a permission hook, or a 'continue' API) to enforce run-until-done, or accept the reminder as the permanent ceiling. Low priority — user rarely uses opencode."
                }
              ],
              "active_tracking": [],
              "open_health": [],
              "evidence_count": 105,
              "decision_count": 10
            },
            "findings": [],
            "source_refs": [
              ".prd_plugin/config.json",
              ".prd_plugin/state/decisions.json",
              ".prd_plugin/state/evidence.json",
              ".prd_plugin/state/health.json",
              ".prd_plugin/state/requests.json",
              ".prd_plugin/state/tracking.json",
              "REQ-072"
            ],
            "constraints": {
              "max_input_tokens": 12000,
              "max_output_tokens": 1500,
              "timeout_seconds": 30,
              "require_source_refs": true,
              "no_project_state_writes": true,
              "no_secrets_or_local_session_content": true
            }
          },
          "output_hash": "f61aa7bfac7c2e96e3bf2d3386a95e45d2db52d040f05aff9ea963197eacc3f6",
          "completed_at": "2026-07-15T18:11:20Z"
        },
        {
          "id": "delegated",
          "action": "reporting.delegate",
          "status": "completed",
          "resolved_input_hash": "5bf4dfad88c9958da759cb1561ca5fdd8f3ac9050e938bfde85af5c8d804adc9",
          "started_at": "2026-07-15T18:11:20Z",
          "output": {
            "status": "fallback",
            "action": "main",
            "reason": "disabled"
          },
          "output_hash": "e6085059f197def80ae95add1f328418107bea5436c9bd002530043646a3a95c",
          "completed_at": "2026-07-15T18:11:20Z"
        }
      ],
      "completed_at": "2026-07-15T18:11:20Z"
    },
    {
      "id": "WFR-173",
      "schema_version": "1.0",
      "workflow_id": "session.start",
      "workflow_version": 1,
      "definition_hash": "d0f98da02571e6dd27fec4aed92d3c82af9db75f8b90b997bf665635c7b7f6ca",
      "plan_hash": "b5072615ca3b7e9a3bd85d50d1f069d99ef2a9816b32c03a370745ed7a205536",
      "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
      "inputs": {},
      "idempotency_key": "hook:SessionStart:019f66fa-9262-75a1-aec1-7da4c6255b39",
      "status": "completed",
      "attempt": 1,
      "created_at": "2026-07-15T18:12:07Z",
      "updated_at": "2026-07-15T18:12:09Z",
      "receipts": [
        {
          "step_id": "config",
          "action": "config.audit",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "3782ec2317c0c8ee7598634310a2804d8aae4735f557498f9d3b8fae7c45e1e5",
          "completed_at": "2026-07-15T18:12:07Z"
        },
        {
          "step_id": "services",
          "action": "services.audit",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "13dcc58bd528f3efa3e6e0fa0853a6eedc376f1f3685fbd4869cbb2b60382ee3",
          "completed_at": "2026-07-15T18:12:07Z"
        },
        {
          "step_id": "state",
          "action": "state.consistency",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "5a1c6e5246defb1b6b6b90ff734db95bece2886b408ab112ed9b8e67222d5568",
          "completed_at": "2026-07-15T18:12:08Z"
        },
        {
          "step_id": "status",
          "action": "state.query",
          "input_hash": "a15231a2142a2a9a85355a8b9cbbccffe01a9c9c2c2fd8c2bc2987cdc481564a",
          "output_hash": "8ba9f7d3cc6705af37de9e3324d1258e21ccacb5ab0b2d7b389ca08885e11187",
          "completed_at": "2026-07-15T18:12:08Z"
        },
        {
          "step_id": "substrate",
          "action": "substrate.preflight",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "a6df426290b4549a59eecaa0519ead9bcc50b7fcb25bd2185ff6047960f19ccb",
          "completed_at": "2026-07-15T18:12:09Z"
        },
        {
          "step_id": "notices",
          "action": "substrate.notices",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "38b904a1cf83df048360fb2480571b749fd98d57e11f1afdffb5a74a78166fea",
          "completed_at": "2026-07-15T18:12:09Z"
        },
        {
          "step_id": "goals",
          "action": "substrate.goals",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "cdfd4de44a28140e686159f34f7b47975954c67e1d1efcef666e985acb136ed8",
          "completed_at": "2026-07-15T18:12:09Z"
        }
      ],
      "steps": [
        {
          "id": "config",
          "action": "config.audit",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-15T18:12:07Z",
          "output": {
            "status": "ok",
            "summary": {
              "settings": 195,
              "mutable": 186,
              "read_only_or_managed": 9,
              "unclassified": 0,
              "unknown": 0,
              "invalid": 0,
              "missing_using_defaults": 0
            },
            "unclassified_keys": [],
            "unknown_keys": [],
            "invalid_values": [],
            "missing_using_defaults": []
          },
          "output_hash": "3782ec2317c0c8ee7598634310a2804d8aae4735f557498f9d3b8fae7c45e1e5",
          "completed_at": "2026-07-15T18:12:07Z"
        },
        {
          "id": "services",
          "action": "services.audit",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-15T18:12:07Z",
          "output": {
            "status": "ok",
            "summary": {
              "critical": 0,
              "high": 0,
              "medium": 0,
              "low": 0
            },
            "findings": []
          },
          "output_hash": "13dcc58bd528f3efa3e6e0fa0853a6eedc376f1f3685fbd4869cbb2b60382ee3",
          "completed_at": "2026-07-15T18:12:07Z"
        },
        {
          "id": "state",
          "action": "state.consistency",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-15T18:12:07Z",
          "output": {
            "status": "ok",
            "repo_root": "D:\\Projects\\prd-plugin",
            "summary": {
              "errors": 0,
              "warnings": 0,
              "infos": 0
            },
            "findings": []
          },
          "output_hash": "5a1c6e5246defb1b6b6b90ff734db95bece2886b408ab112ed9b8e67222d5568",
          "completed_at": "2026-07-15T18:12:08Z"
        },
        {
          "id": "status",
          "action": "state.query",
          "status": "completed",
          "resolved_input_hash": "a15231a2142a2a9a85355a8b9cbbccffe01a9c9c2c2fd8c2bc2987cdc481564a",
          "started_at": "2026-07-15T18:12:08Z",
          "output": {
            "repo_root": "D:\\Projects\\prd-plugin",
            "autonomy_level": "autonomous",
            "requests_by_status": {
              "deferred": 1,
              "implemented": 80,
              "proposed": 1,
              "rejected": 1
            },
            "active_tracking": [],
            "tracking_branches": [],
            "tracking_branch_counts": {},
            "tracking_branch_errors": [],
            "open_health": [],
            "stale_count": 0,
            "skill_usage": {
              "project-decision-policy": 1,
              "project-request-intake": 1,
              "project-test-driven-implementation": 1,
              "project-verification-before-completion": 1,
              "project-llm-wiki": 1
            },
            "wiki_backfill_pending": false,
            "version_update": null
          },
          "output_hash": "8ba9f7d3cc6705af37de9e3324d1258e21ccacb5ab0b2d7b389ca08885e11187",
          "completed_at": "2026-07-15T18:12:08Z"
        },
        {
          "id": "substrate",
          "action": "substrate.preflight",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-15T18:12:08Z",
          "output": {
            "status": "disabled",
            "services": {
              "status": "ok",
              "summary": {
                "critical": 0,
                "high": 0,
                "medium": 0,
                "low": 0
              },
              "findings": []
            },
            "policy": {
              "configured": {
                "enabled": false,
                "mode": "off",
                "capabilities": [
                  "records",
                  "graph",
                  "events"
                ],
                "contract_version": 2,
                "require_source_refs": true,
                "endpoint": "http://127.0.0.1:47124",
                "manual_url": "http://127.0.0.1:47124/utcp.json",
                "knowledge_browse_url": "http://127.0.0.1:5276",
                "auth_env": "AI_COLLAB_API_KEY",
                "timeout_seconds": 5,
                "max_result_bytes": 1048576,
                "cache_ttl_seconds": 60,
                "fallback": "local",
                "automation": {
                  "discovery_on_session_start": true,
                  "knowledge_recall": true,
                  "memory_recall": true,
                  "context_enrichment": true,
                  "notices_on_session_start": false,
                  "goals_sync": false,
                  "telemetry_on_maintenance": false,
                  "reporting_dispatch": true,
                  "judgment_dispatch": true,
                  "verification_execution": true
                }
              },
              "active": false,
              "effective_mode": "off",
              "effective_capabilities": []
            }
          },
          "output_hash": "a6df426290b4549a59eecaa0519ead9bcc50b7fcb25bd2185ff6047960f19ccb",
          "completed_at": "2026-07-15T18:12:09Z"
        },
        {
          "id": "notices",
          "action": "substrate.notices",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-15T18:12:09Z",
          "output": {
            "status": "disabled"
          },
          "output_hash": "38b904a1cf83df048360fb2480571b749fd98d57e11f1afdffb5a74a78166fea",
          "completed_at": "2026-07-15T18:12:09Z"
        },
        {
          "id": "goals",
          "action": "substrate.goals",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-15T18:12:09Z",
          "output": {
            "status": "disabled",
            "created": 0,
            "observed": 0,
            "results": []
          },
          "output_hash": "cdfd4de44a28140e686159f34f7b47975954c67e1d1efcef666e985acb136ed8",
          "completed_at": "2026-07-15T18:12:09Z"
        }
      ],
      "completed_at": "2026-07-15T18:12:09Z"
    },
    {
      "id": "WFR-174",
      "schema_version": "1.0",
      "workflow_id": "session.stop",
      "workflow_version": 1,
      "definition_hash": "0cef7bb3e28321be8f85375c154955a69310ce297e47de3f3b8dd48f77a2f07d",
      "plan_hash": "a5e1d77ac734217487fc418e29c7163f4e81178e25d171e70cd4c999d527d3e8",
      "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
      "inputs": {},
      "idempotency_key": "hook:Stop:019f66fa-9262-75a1-aec1-7da4c6255b39",
      "status": "completed",
      "attempt": 1,
      "created_at": "2026-07-15T18:12:12Z",
      "updated_at": "2026-07-15T18:12:13Z",
      "receipts": [
        {
          "step_id": "state",
          "action": "state.consistency",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "5a1c6e5246defb1b6b6b90ff734db95bece2886b408ab112ed9b8e67222d5568",
          "completed_at": "2026-07-15T18:12:12Z"
        },
        {
          "step_id": "goals",
          "action": "substrate.goals",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "cdfd4de44a28140e686159f34f7b47975954c67e1d1efcef666e985acb136ed8",
          "completed_at": "2026-07-15T18:12:12Z"
        },
        {
          "step_id": "staleness",
          "action": "staleness.audit",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "1e81cb0ffd0a4d04626920a203b38d2d23a264cd43e807a85d375d69cae8a658",
          "completed_at": "2026-07-15T18:12:12Z"
        },
        {
          "step_id": "reflections",
          "action": "reflection.list",
          "input_hash": "0172e841ab4c13b3a4061f073f9d68a716ec87a8a5d52fde41823385e0582573",
          "output_hash": "c1b6b635c0bab21120657277f14ef6f839909875f307a3745fa48aee2bd6e449",
          "completed_at": "2026-07-15T18:12:13Z"
        },
        {
          "step_id": "bundle",
          "action": "reporting.bundle",
          "input_hash": "aed8ebb688dc3c085dd978d7c4120572173c3cb87e75919e4a937dcca6ef9457",
          "output_hash": "f61aa7bfac7c2e96e3bf2d3386a95e45d2db52d040f05aff9ea963197eacc3f6",
          "completed_at": "2026-07-15T18:12:13Z"
        },
        {
          "step_id": "delegated",
          "action": "reporting.delegate",
          "input_hash": "5bf4dfad88c9958da759cb1561ca5fdd8f3ac9050e938bfde85af5c8d804adc9",
          "output_hash": "e6085059f197def80ae95add1f328418107bea5436c9bd002530043646a3a95c",
          "completed_at": "2026-07-15T18:12:13Z"
        }
      ],
      "steps": [
        {
          "id": "state",
          "action": "state.consistency",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-15T18:12:12Z",
          "output": {
            "status": "ok",
            "repo_root": "D:\\Projects\\prd-plugin",
            "summary": {
              "errors": 0,
              "warnings": 0,
              "infos": 0
            },
            "findings": []
          },
          "output_hash": "5a1c6e5246defb1b6b6b90ff734db95bece2886b408ab112ed9b8e67222d5568",
          "completed_at": "2026-07-15T18:12:12Z"
        },
        {
          "id": "goals",
          "action": "substrate.goals",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-15T18:12:12Z",
          "output": {
            "status": "disabled",
            "created": 0,
            "observed": 0,
            "results": []
          },
          "output_hash": "cdfd4de44a28140e686159f34f7b47975954c67e1d1efcef666e985acb136ed8",
          "completed_at": "2026-07-15T18:12:12Z"
        },
        {
          "id": "staleness",
          "action": "staleness.audit",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-15T18:12:12Z",
          "output": {
            "status": "ok",
            "repo_root": "D:\\Projects\\prd-plugin",
            "counts": {
              "stale": 0
            },
            "stale": []
          },
          "output_hash": "1e81cb0ffd0a4d04626920a203b38d2d23a264cd43e807a85d375d69cae8a658",
          "completed_at": "2026-07-15T18:12:12Z"
        },
        {
          "id": "reflections",
          "action": "reflection.list",
          "status": "completed",
          "resolved_input_hash": "0172e841ab4c13b3a4061f073f9d68a716ec87a8a5d52fde41823385e0582573",
          "started_at": "2026-07-15T18:12:13Z",
          "output": {
            "enabled": false,
            "on_stop": true,
            "max_questions_per_stop": 5,
            "categories": [
              {
                "id": "behaviour_quality",
                "name": "Behaviour quality",
                "enabled": true,
                "question_count": 3
              },
              {
                "id": "harness_friction",
                "name": "Harness friction",
                "enabled": true,
                "question_count": 2
              }
            ],
            "questions": [
              {
                "id": "RFQ-001",
                "text": "Based on the work you just carried out, would you classify your behaviour as good? Answer yes or no and cite observable evidence.",
                "enabled": true,
                "category_id": "behaviour_quality",
                "category_name": "Behaviour quality",
                "effective_enabled": false
              },
              {
                "id": "RFQ-002",
                "text": "If you answered no, what could you do differently to correct your behaviour?",
                "enabled": true,
                "category_id": "behaviour_quality",
                "category_name": "Behaviour quality",
                "effective_enabled": false
              },
              {
                "id": "RFQ-003",
                "text": "Would another attempt using the identified good behaviours materially improve the outcome? Answer yes or no and state the next corrective action if yes.",
                "enabled": true,
                "category_id": "behaviour_quality",
                "category_name": "Behaviour quality",
                "effective_enabled": false
              },
              {
                "id": "RFQ-004",
                "text": "What harness friction points made this work more difficult?",
                "enabled": true,
                "category_id": "harness_friction",
                "category_name": "Harness friction",
                "effective_enabled": false
              },
              {
                "id": "RFQ-005",
                "text": "What up to three changes would most improve friction in the harness?",
                "enabled": true,
                "category_id": "harness_friction",
                "category_name": "Harness friction",
                "effective_enabled": false
              }
            ]
          },
          "output_hash": "c1b6b635c0bab21120657277f14ef6f839909875f307a3745fa48aee2bd6e449",
          "completed_at": "2026-07-15T18:12:13Z"
        },
        {
          "id": "bundle",
          "action": "reporting.bundle",
          "status": "completed",
          "resolved_input_hash": "aed8ebb688dc3c085dd978d7c4120572173c3cb87e75919e4a937dcca6ef9457",
          "started_at": "2026-07-15T18:12:13Z",
          "output": {
            "contract_version": 1,
            "task": "session_summary",
            "repo": "prd-plugin",
            "policy": {
              "enabled": false,
              "executor": "ai-collab",
              "contract_version": 1,
              "profile": "fast-capable",
              "tasks": [
                "report_summary",
                "session_summary",
                "wiki_synthesis",
                "triage_draft"
              ],
              "fallback": "main",
              "require_source_refs": true,
              "max_input_tokens": 12000,
              "max_output_tokens": 1500,
              "timeout_seconds": 30
            },
            "facts": {
              "requests_by_status": {
                "deferred": 1,
                "implemented": 80,
                "proposed": 1,
                "rejected": 1
              },
              "active_requests": [
                {
                  "id": "REQ-072",
                  "status": "proposed",
                  "severity": "low",
                  "summary": "opencode run-until-done: session.idle is a non-blocking notification, so the stop guard can't force continuation on opencode (currently degrades to a printed reminder, 0.5.95). Investigate whether opencode exposes any vetoable/continuation mechanism (a different event, a permission hook, or a 'continue' API) to enforce run-until-done, or accept the reminder as the permanent ceiling. Low priority — user rarely uses opencode."
                }
              ],
              "active_tracking": [],
              "open_health": [],
              "evidence_count": 105,
              "decision_count": 10
            },
            "findings": [],
            "source_refs": [
              ".prd_plugin/config.json",
              ".prd_plugin/state/decisions.json",
              ".prd_plugin/state/evidence.json",
              ".prd_plugin/state/health.json",
              ".prd_plugin/state/requests.json",
              ".prd_plugin/state/tracking.json",
              "REQ-072"
            ],
            "constraints": {
              "max_input_tokens": 12000,
              "max_output_tokens": 1500,
              "timeout_seconds": 30,
              "require_source_refs": true,
              "no_project_state_writes": true,
              "no_secrets_or_local_session_content": true
            }
          },
          "output_hash": "f61aa7bfac7c2e96e3bf2d3386a95e45d2db52d040f05aff9ea963197eacc3f6",
          "completed_at": "2026-07-15T18:12:13Z"
        },
        {
          "id": "delegated",
          "action": "reporting.delegate",
          "status": "completed",
          "resolved_input_hash": "5bf4dfad88c9958da759cb1561ca5fdd8f3ac9050e938bfde85af5c8d804adc9",
          "started_at": "2026-07-15T18:12:13Z",
          "output": {
            "status": "fallback",
            "action": "main",
            "reason": "disabled"
          },
          "output_hash": "e6085059f197def80ae95add1f328418107bea5436c9bd002530043646a3a95c",
          "completed_at": "2026-07-15T18:12:13Z"
        }
      ],
      "completed_at": "2026-07-15T18:12:13Z"
    },
    {
      "id": "WFR-175",
      "schema_version": "1.0",
      "workflow_id": "session.start",
      "workflow_version": 1,
      "definition_hash": "d0f98da02571e6dd27fec4aed92d3c82af9db75f8b90b997bf665635c7b7f6ca",
      "plan_hash": "b5072615ca3b7e9a3bd85d50d1f069d99ef2a9816b32c03a370745ed7a205536",
      "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
      "inputs": {},
      "idempotency_key": "hook:SessionStart:019f6700-4eea-70c3-b042-aac7a1b25778",
      "status": "completed",
      "attempt": 1,
      "created_at": "2026-07-15T18:18:23Z",
      "updated_at": "2026-07-15T18:18:25Z",
      "receipts": [
        {
          "step_id": "config",
          "action": "config.audit",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "3782ec2317c0c8ee7598634310a2804d8aae4735f557498f9d3b8fae7c45e1e5",
          "completed_at": "2026-07-15T18:18:23Z"
        },
        {
          "step_id": "services",
          "action": "services.audit",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "13dcc58bd528f3efa3e6e0fa0853a6eedc376f1f3685fbd4869cbb2b60382ee3",
          "completed_at": "2026-07-15T18:18:23Z"
        },
        {
          "step_id": "state",
          "action": "state.consistency",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "5a1c6e5246defb1b6b6b90ff734db95bece2886b408ab112ed9b8e67222d5568",
          "completed_at": "2026-07-15T18:18:24Z"
        },
        {
          "step_id": "status",
          "action": "state.query",
          "input_hash": "a15231a2142a2a9a85355a8b9cbbccffe01a9c9c2c2fd8c2bc2987cdc481564a",
          "output_hash": "8ba9f7d3cc6705af37de9e3324d1258e21ccacb5ab0b2d7b389ca08885e11187",
          "completed_at": "2026-07-15T18:18:24Z"
        },
        {
          "step_id": "substrate",
          "action": "substrate.preflight",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "a6df426290b4549a59eecaa0519ead9bcc50b7fcb25bd2185ff6047960f19ccb",
          "completed_at": "2026-07-15T18:18:24Z"
        },
        {
          "step_id": "notices",
          "action": "substrate.notices",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "38b904a1cf83df048360fb2480571b749fd98d57e11f1afdffb5a74a78166fea",
          "completed_at": "2026-07-15T18:18:24Z"
        },
        {
          "step_id": "goals",
          "action": "substrate.goals",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "cdfd4de44a28140e686159f34f7b47975954c67e1d1efcef666e985acb136ed8",
          "completed_at": "2026-07-15T18:18:24Z"
        }
      ],
      "steps": [
        {
          "id": "config",
          "action": "config.audit",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-15T18:18:23Z",
          "output": {
            "status": "ok",
            "summary": {
              "settings": 195,
              "mutable": 186,
              "read_only_or_managed": 9,
              "unclassified": 0,
              "unknown": 0,
              "invalid": 0,
              "missing_using_defaults": 0
            },
            "unclassified_keys": [],
            "unknown_keys": [],
            "invalid_values": [],
            "missing_using_defaults": []
          },
          "output_hash": "3782ec2317c0c8ee7598634310a2804d8aae4735f557498f9d3b8fae7c45e1e5",
          "completed_at": "2026-07-15T18:18:23Z"
        },
        {
          "id": "services",
          "action": "services.audit",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-15T18:18:23Z",
          "output": {
            "status": "ok",
            "summary": {
              "critical": 0,
              "high": 0,
              "medium": 0,
              "low": 0
            },
            "findings": []
          },
          "output_hash": "13dcc58bd528f3efa3e6e0fa0853a6eedc376f1f3685fbd4869cbb2b60382ee3",
          "completed_at": "2026-07-15T18:18:23Z"
        },
        {
          "id": "state",
          "action": "state.consistency",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-15T18:18:23Z",
          "output": {
            "status": "ok",
            "repo_root": "D:\\Projects\\prd-plugin",
            "summary": {
              "errors": 0,
              "warnings": 0,
              "infos": 0
            },
            "findings": []
          },
          "output_hash": "5a1c6e5246defb1b6b6b90ff734db95bece2886b408ab112ed9b8e67222d5568",
          "completed_at": "2026-07-15T18:18:24Z"
        },
        {
          "id": "status",
          "action": "state.query",
          "status": "completed",
          "resolved_input_hash": "a15231a2142a2a9a85355a8b9cbbccffe01a9c9c2c2fd8c2bc2987cdc481564a",
          "started_at": "2026-07-15T18:18:24Z",
          "output": {
            "repo_root": "D:\\Projects\\prd-plugin",
            "autonomy_level": "autonomous",
            "requests_by_status": {
              "deferred": 1,
              "implemented": 80,
              "proposed": 1,
              "rejected": 1
            },
            "active_tracking": [],
            "tracking_branches": [],
            "tracking_branch_counts": {},
            "tracking_branch_errors": [],
            "open_health": [],
            "stale_count": 0,
            "skill_usage": {
              "project-decision-policy": 1,
              "project-request-intake": 1,
              "project-test-driven-implementation": 1,
              "project-verification-before-completion": 1,
              "project-llm-wiki": 1
            },
            "wiki_backfill_pending": false,
            "version_update": null
          },
          "output_hash": "8ba9f7d3cc6705af37de9e3324d1258e21ccacb5ab0b2d7b389ca08885e11187",
          "completed_at": "2026-07-15T18:18:24Z"
        },
        {
          "id": "substrate",
          "action": "substrate.preflight",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-15T18:18:24Z",
          "output": {
            "status": "disabled",
            "services": {
              "status": "ok",
              "summary": {
                "critical": 0,
                "high": 0,
                "medium": 0,
                "low": 0
              },
              "findings": []
            },
            "policy": {
              "configured": {
                "enabled": false,
                "mode": "off",
                "capabilities": [
                  "records",
                  "graph",
                  "events"
                ],
                "contract_version": 2,
                "require_source_refs": true,
                "endpoint": "http://127.0.0.1:47124",
                "manual_url": "http://127.0.0.1:47124/utcp.json",
                "knowledge_browse_url": "http://127.0.0.1:5276",
                "auth_env": "AI_COLLAB_API_KEY",
                "timeout_seconds": 5,
                "max_result_bytes": 1048576,
                "cache_ttl_seconds": 60,
                "fallback": "local",
                "automation": {
                  "discovery_on_session_start": true,
                  "knowledge_recall": true,
                  "memory_recall": true,
                  "context_enrichment": true,
                  "notices_on_session_start": false,
                  "goals_sync": false,
                  "telemetry_on_maintenance": false,
                  "reporting_dispatch": true,
                  "judgment_dispatch": true,
                  "verification_execution": true
                }
              },
              "active": false,
              "effective_mode": "off",
              "effective_capabilities": []
            }
          },
          "output_hash": "a6df426290b4549a59eecaa0519ead9bcc50b7fcb25bd2185ff6047960f19ccb",
          "completed_at": "2026-07-15T18:18:24Z"
        },
        {
          "id": "notices",
          "action": "substrate.notices",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-15T18:18:24Z",
          "output": {
            "status": "disabled"
          },
          "output_hash": "38b904a1cf83df048360fb2480571b749fd98d57e11f1afdffb5a74a78166fea",
          "completed_at": "2026-07-15T18:18:24Z"
        },
        {
          "id": "goals",
          "action": "substrate.goals",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-15T18:18:24Z",
          "output": {
            "status": "disabled",
            "created": 0,
            "observed": 0,
            "results": []
          },
          "output_hash": "cdfd4de44a28140e686159f34f7b47975954c67e1d1efcef666e985acb136ed8",
          "completed_at": "2026-07-15T18:18:24Z"
        }
      ],
      "completed_at": "2026-07-15T18:18:25Z"
    },
    {
      "id": "WFR-176",
      "schema_version": "1.0",
      "workflow_id": "session.stop",
      "workflow_version": 1,
      "definition_hash": "0cef7bb3e28321be8f85375c154955a69310ce297e47de3f3b8dd48f77a2f07d",
      "plan_hash": "a5e1d77ac734217487fc418e29c7163f4e81178e25d171e70cd4c999d527d3e8",
      "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
      "inputs": {},
      "idempotency_key": "hook:Stop:019f6700-4eea-70c3-b042-aac7a1b25778",
      "status": "completed",
      "attempt": 1,
      "created_at": "2026-07-15T18:18:27Z",
      "updated_at": "2026-07-15T18:18:29Z",
      "receipts": [
        {
          "step_id": "state",
          "action": "state.consistency",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "5a1c6e5246defb1b6b6b90ff734db95bece2886b408ab112ed9b8e67222d5568",
          "completed_at": "2026-07-15T18:18:28Z"
        },
        {
          "step_id": "goals",
          "action": "substrate.goals",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "cdfd4de44a28140e686159f34f7b47975954c67e1d1efcef666e985acb136ed8",
          "completed_at": "2026-07-15T18:18:28Z"
        },
        {
          "step_id": "staleness",
          "action": "staleness.audit",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "1e81cb0ffd0a4d04626920a203b38d2d23a264cd43e807a85d375d69cae8a658",
          "completed_at": "2026-07-15T18:18:28Z"
        },
        {
          "step_id": "reflections",
          "action": "reflection.list",
          "input_hash": "0172e841ab4c13b3a4061f073f9d68a716ec87a8a5d52fde41823385e0582573",
          "output_hash": "c1b6b635c0bab21120657277f14ef6f839909875f307a3745fa48aee2bd6e449",
          "completed_at": "2026-07-15T18:18:28Z"
        },
        {
          "step_id": "bundle",
          "action": "reporting.bundle",
          "input_hash": "aed8ebb688dc3c085dd978d7c4120572173c3cb87e75919e4a937dcca6ef9457",
          "output_hash": "f61aa7bfac7c2e96e3bf2d3386a95e45d2db52d040f05aff9ea963197eacc3f6",
          "completed_at": "2026-07-15T18:18:28Z"
        },
        {
          "step_id": "delegated",
          "action": "reporting.delegate",
          "input_hash": "5bf4dfad88c9958da759cb1561ca5fdd8f3ac9050e938bfde85af5c8d804adc9",
          "output_hash": "e6085059f197def80ae95add1f328418107bea5436c9bd002530043646a3a95c",
          "completed_at": "2026-07-15T18:18:29Z"
        }
      ],
      "steps": [
        {
          "id": "state",
          "action": "state.consistency",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-15T18:18:27Z",
          "output": {
            "status": "ok",
            "repo_root": "D:\\Projects\\prd-plugin",
            "summary": {
              "errors": 0,
              "warnings": 0,
              "infos": 0
            },
            "findings": []
          },
          "output_hash": "5a1c6e5246defb1b6b6b90ff734db95bece2886b408ab112ed9b8e67222d5568",
          "completed_at": "2026-07-15T18:18:28Z"
        },
        {
          "id": "goals",
          "action": "substrate.goals",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-15T18:18:28Z",
          "output": {
            "status": "disabled",
            "created": 0,
            "observed": 0,
            "results": []
          },
          "output_hash": "cdfd4de44a28140e686159f34f7b47975954c67e1d1efcef666e985acb136ed8",
          "completed_at": "2026-07-15T18:18:28Z"
        },
        {
          "id": "staleness",
          "action": "staleness.audit",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-15T18:18:28Z",
          "output": {
            "status": "ok",
            "repo_root": "D:\\Projects\\prd-plugin",
            "counts": {
              "stale": 0
            },
            "stale": []
          },
          "output_hash": "1e81cb0ffd0a4d04626920a203b38d2d23a264cd43e807a85d375d69cae8a658",
          "completed_at": "2026-07-15T18:18:28Z"
        },
        {
          "id": "reflections",
          "action": "reflection.list",
          "status": "completed",
          "resolved_input_hash": "0172e841ab4c13b3a4061f073f9d68a716ec87a8a5d52fde41823385e0582573",
          "started_at": "2026-07-15T18:18:28Z",
          "output": {
            "enabled": false,
            "on_stop": true,
            "max_questions_per_stop": 5,
            "categories": [
              {
                "id": "behaviour_quality",
                "name": "Behaviour quality",
                "enabled": true,
                "question_count": 3
              },
              {
                "id": "harness_friction",
                "name": "Harness friction",
                "enabled": true,
                "question_count": 2
              }
            ],
            "questions": [
              {
                "id": "RFQ-001",
                "text": "Based on the work you just carried out, would you classify your behaviour as good? Answer yes or no and cite observable evidence.",
                "enabled": true,
                "category_id": "behaviour_quality",
                "category_name": "Behaviour quality",
                "effective_enabled": false
              },
              {
                "id": "RFQ-002",
                "text": "If you answered no, what could you do differently to correct your behaviour?",
                "enabled": true,
                "category_id": "behaviour_quality",
                "category_name": "Behaviour quality",
                "effective_enabled": false
              },
              {
                "id": "RFQ-003",
                "text": "Would another attempt using the identified good behaviours materially improve the outcome? Answer yes or no and state the next corrective action if yes.",
                "enabled": true,
                "category_id": "behaviour_quality",
                "category_name": "Behaviour quality",
                "effective_enabled": false
              },
              {
                "id": "RFQ-004",
                "text": "What harness friction points made this work more difficult?",
                "enabled": true,
                "category_id": "harness_friction",
                "category_name": "Harness friction",
                "effective_enabled": false
              },
              {
                "id": "RFQ-005",
                "text": "What up to three changes would most improve friction in the harness?",
                "enabled": true,
                "category_id": "harness_friction",
                "category_name": "Harness friction",
                "effective_enabled": false
              }
            ]
          },
          "output_hash": "c1b6b635c0bab21120657277f14ef6f839909875f307a3745fa48aee2bd6e449",
          "completed_at": "2026-07-15T18:18:28Z"
        },
        {
          "id": "bundle",
          "action": "reporting.bundle",
          "status": "completed",
          "resolved_input_hash": "aed8ebb688dc3c085dd978d7c4120572173c3cb87e75919e4a937dcca6ef9457",
          "started_at": "2026-07-15T18:18:28Z",
          "output": {
            "contract_version": 1,
            "task": "session_summary",
            "repo": "prd-plugin",
            "policy": {
              "enabled": false,
              "executor": "ai-collab",
              "contract_version": 1,
              "profile": "fast-capable",
              "tasks": [
                "report_summary",
                "session_summary",
                "wiki_synthesis",
                "triage_draft"
              ],
              "fallback": "main",
              "require_source_refs": true,
              "max_input_tokens": 12000,
              "max_output_tokens": 1500,
              "timeout_seconds": 30
            },
            "facts": {
              "requests_by_status": {
                "deferred": 1,
                "implemented": 80,
                "proposed": 1,
                "rejected": 1
              },
              "active_requests": [
                {
                  "id": "REQ-072",
                  "status": "proposed",
                  "severity": "low",
                  "summary": "opencode run-until-done: session.idle is a non-blocking notification, so the stop guard can't force continuation on opencode (currently degrades to a printed reminder, 0.5.95). Investigate whether opencode exposes any vetoable/continuation mechanism (a different event, a permission hook, or a 'continue' API) to enforce run-until-done, or accept the reminder as the permanent ceiling. Low priority — user rarely uses opencode."
                }
              ],
              "active_tracking": [],
              "open_health": [],
              "evidence_count": 105,
              "decision_count": 10
            },
            "findings": [],
            "source_refs": [
              ".prd_plugin/config.json",
              ".prd_plugin/state/decisions.json",
              ".prd_plugin/state/evidence.json",
              ".prd_plugin/state/health.json",
              ".prd_plugin/state/requests.json",
              ".prd_plugin/state/tracking.json",
              "REQ-072"
            ],
            "constraints": {
              "max_input_tokens": 12000,
              "max_output_tokens": 1500,
              "timeout_seconds": 30,
              "require_source_refs": true,
              "no_project_state_writes": true,
              "no_secrets_or_local_session_content": true
            }
          },
          "output_hash": "f61aa7bfac7c2e96e3bf2d3386a95e45d2db52d040f05aff9ea963197eacc3f6",
          "completed_at": "2026-07-15T18:18:28Z"
        },
        {
          "id": "delegated",
          "action": "reporting.delegate",
          "status": "completed",
          "resolved_input_hash": "5bf4dfad88c9958da759cb1561ca5fdd8f3ac9050e938bfde85af5c8d804adc9",
          "started_at": "2026-07-15T18:18:28Z",
          "output": {
            "status": "fallback",
            "action": "main",
            "reason": "disabled"
          },
          "output_hash": "e6085059f197def80ae95add1f328418107bea5436c9bd002530043646a3a95c",
          "completed_at": "2026-07-15T18:18:29Z"
        }
      ],
      "completed_at": "2026-07-15T18:18:29Z"
    },
    {
      "id": "WFR-177",
      "schema_version": "1.0",
      "workflow_id": "session.start",
      "workflow_version": 1,
      "definition_hash": "d0f98da02571e6dd27fec4aed92d3c82af9db75f8b90b997bf665635c7b7f6ca",
      "plan_hash": "b5072615ca3b7e9a3bd85d50d1f069d99ef2a9816b32c03a370745ed7a205536",
      "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
      "inputs": {},
      "idempotency_key": "hook:SessionStart:019f670a-8c72-70d3-ac0b-eeff0cb16e2b",
      "status": "completed",
      "attempt": 1,
      "created_at": "2026-07-15T18:29:37Z",
      "updated_at": "2026-07-15T18:29:41Z",
      "receipts": [
        {
          "step_id": "config",
          "action": "config.audit",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "3782ec2317c0c8ee7598634310a2804d8aae4735f557498f9d3b8fae7c45e1e5",
          "completed_at": "2026-07-15T18:29:37Z"
        },
        {
          "step_id": "services",
          "action": "services.audit",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "13dcc58bd528f3efa3e6e0fa0853a6eedc376f1f3685fbd4869cbb2b60382ee3",
          "completed_at": "2026-07-15T18:29:37Z"
        },
        {
          "step_id": "state",
          "action": "state.consistency",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "5a1c6e5246defb1b6b6b90ff734db95bece2886b408ab112ed9b8e67222d5568",
          "completed_at": "2026-07-15T18:29:40Z"
        },
        {
          "step_id": "status",
          "action": "state.query",
          "input_hash": "a15231a2142a2a9a85355a8b9cbbccffe01a9c9c2c2fd8c2bc2987cdc481564a",
          "output_hash": "8ba9f7d3cc6705af37de9e3324d1258e21ccacb5ab0b2d7b389ca08885e11187",
          "completed_at": "2026-07-15T18:29:40Z"
        },
        {
          "step_id": "substrate",
          "action": "substrate.preflight",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "a6df426290b4549a59eecaa0519ead9bcc50b7fcb25bd2185ff6047960f19ccb",
          "completed_at": "2026-07-15T18:29:40Z"
        },
        {
          "step_id": "notices",
          "action": "substrate.notices",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "38b904a1cf83df048360fb2480571b749fd98d57e11f1afdffb5a74a78166fea",
          "completed_at": "2026-07-15T18:29:41Z"
        },
        {
          "step_id": "goals",
          "action": "substrate.goals",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "cdfd4de44a28140e686159f34f7b47975954c67e1d1efcef666e985acb136ed8",
          "completed_at": "2026-07-15T18:29:41Z"
        }
      ],
      "steps": [
        {
          "id": "config",
          "action": "config.audit",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-15T18:29:37Z",
          "output": {
            "status": "ok",
            "summary": {
              "settings": 195,
              "mutable": 186,
              "read_only_or_managed": 9,
              "unclassified": 0,
              "unknown": 0,
              "invalid": 0,
              "missing_using_defaults": 0
            },
            "unclassified_keys": [],
            "unknown_keys": [],
            "invalid_values": [],
            "missing_using_defaults": []
          },
          "output_hash": "3782ec2317c0c8ee7598634310a2804d8aae4735f557498f9d3b8fae7c45e1e5",
          "completed_at": "2026-07-15T18:29:37Z"
        },
        {
          "id": "services",
          "action": "services.audit",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-15T18:29:37Z",
          "output": {
            "status": "ok",
            "summary": {
              "critical": 0,
              "high": 0,
              "medium": 0,
              "low": 0
            },
            "findings": []
          },
          "output_hash": "13dcc58bd528f3efa3e6e0fa0853a6eedc376f1f3685fbd4869cbb2b60382ee3",
          "completed_at": "2026-07-15T18:29:37Z"
        },
        {
          "id": "state",
          "action": "state.consistency",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-15T18:29:37Z",
          "output": {
            "status": "ok",
            "repo_root": "D:\\Projects\\prd-plugin",
            "summary": {
              "errors": 0,
              "warnings": 0,
              "infos": 0
            },
            "findings": []
          },
          "output_hash": "5a1c6e5246defb1b6b6b90ff734db95bece2886b408ab112ed9b8e67222d5568",
          "completed_at": "2026-07-15T18:29:40Z"
        },
        {
          "id": "status",
          "action": "state.query",
          "status": "completed",
          "resolved_input_hash": "a15231a2142a2a9a85355a8b9cbbccffe01a9c9c2c2fd8c2bc2987cdc481564a",
          "started_at": "2026-07-15T18:29:40Z",
          "output": {
            "repo_root": "D:\\Projects\\prd-plugin",
            "autonomy_level": "autonomous",
            "requests_by_status": {
              "deferred": 1,
              "implemented": 80,
              "proposed": 1,
              "rejected": 1
            },
            "active_tracking": [],
            "tracking_branches": [],
            "tracking_branch_counts": {},
            "tracking_branch_errors": [],
            "open_health": [],
            "stale_count": 0,
            "skill_usage": {
              "project-decision-policy": 1,
              "project-request-intake": 1,
              "project-test-driven-implementation": 1,
              "project-verification-before-completion": 1,
              "project-llm-wiki": 1
            },
            "wiki_backfill_pending": false,
            "version_update": null
          },
          "output_hash": "8ba9f7d3cc6705af37de9e3324d1258e21ccacb5ab0b2d7b389ca08885e11187",
          "completed_at": "2026-07-15T18:29:40Z"
        },
        {
          "id": "substrate",
          "action": "substrate.preflight",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-15T18:29:40Z",
          "output": {
            "status": "disabled",
            "services": {
              "status": "ok",
              "summary": {
                "critical": 0,
                "high": 0,
                "medium": 0,
                "low": 0
              },
              "findings": []
            },
            "policy": {
              "configured": {
                "enabled": false,
                "mode": "off",
                "capabilities": [
                  "records",
                  "graph",
                  "events"
                ],
                "contract_version": 2,
                "require_source_refs": true,
                "endpoint": "http://127.0.0.1:47124",
                "manual_url": "http://127.0.0.1:47124/utcp.json",
                "knowledge_browse_url": "http://127.0.0.1:5276",
                "auth_env": "AI_COLLAB_API_KEY",
                "timeout_seconds": 5,
                "max_result_bytes": 1048576,
                "cache_ttl_seconds": 60,
                "fallback": "local",
                "automation": {
                  "discovery_on_session_start": true,
                  "knowledge_recall": true,
                  "memory_recall": true,
                  "context_enrichment": true,
                  "notices_on_session_start": false,
                  "goals_sync": false,
                  "telemetry_on_maintenance": false,
                  "reporting_dispatch": true,
                  "judgment_dispatch": true,
                  "verification_execution": true
                }
              },
              "active": false,
              "effective_mode": "off",
              "effective_capabilities": []
            }
          },
          "output_hash": "a6df426290b4549a59eecaa0519ead9bcc50b7fcb25bd2185ff6047960f19ccb",
          "completed_at": "2026-07-15T18:29:40Z"
        },
        {
          "id": "notices",
          "action": "substrate.notices",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-15T18:29:41Z",
          "output": {
            "status": "disabled"
          },
          "output_hash": "38b904a1cf83df048360fb2480571b749fd98d57e11f1afdffb5a74a78166fea",
          "completed_at": "2026-07-15T18:29:41Z"
        },
        {
          "id": "goals",
          "action": "substrate.goals",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-15T18:29:41Z",
          "output": {
            "status": "disabled",
            "created": 0,
            "observed": 0,
            "results": []
          },
          "output_hash": "cdfd4de44a28140e686159f34f7b47975954c67e1d1efcef666e985acb136ed8",
          "completed_at": "2026-07-15T18:29:41Z"
        }
      ],
      "completed_at": "2026-07-15T18:29:41Z"
    },
    {
      "id": "WFR-178",
      "schema_version": "1.0",
      "workflow_id": "session.stop",
      "workflow_version": 1,
      "definition_hash": "0cef7bb3e28321be8f85375c154955a69310ce297e47de3f3b8dd48f77a2f07d",
      "plan_hash": "a5e1d77ac734217487fc418e29c7163f4e81178e25d171e70cd4c999d527d3e8",
      "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
      "inputs": {},
      "idempotency_key": "hook:Stop:019f670a-8c72-70d3-ac0b-eeff0cb16e2b",
      "status": "completed",
      "attempt": 1,
      "created_at": "2026-07-15T18:29:46Z",
      "updated_at": "2026-07-15T18:29:47Z",
      "receipts": [
        {
          "step_id": "state",
          "action": "state.consistency",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "5a1c6e5246defb1b6b6b90ff734db95bece2886b408ab112ed9b8e67222d5568",
          "completed_at": "2026-07-15T18:29:46Z"
        },
        {
          "step_id": "goals",
          "action": "substrate.goals",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "cdfd4de44a28140e686159f34f7b47975954c67e1d1efcef666e985acb136ed8",
          "completed_at": "2026-07-15T18:29:47Z"
        },
        {
          "step_id": "staleness",
          "action": "staleness.audit",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "1e81cb0ffd0a4d04626920a203b38d2d23a264cd43e807a85d375d69cae8a658",
          "completed_at": "2026-07-15T18:29:47Z"
        },
        {
          "step_id": "reflections",
          "action": "reflection.list",
          "input_hash": "0172e841ab4c13b3a4061f073f9d68a716ec87a8a5d52fde41823385e0582573",
          "output_hash": "c1b6b635c0bab21120657277f14ef6f839909875f307a3745fa48aee2bd6e449",
          "completed_at": "2026-07-15T18:29:47Z"
        },
        {
          "step_id": "bundle",
          "action": "reporting.bundle",
          "input_hash": "aed8ebb688dc3c085dd978d7c4120572173c3cb87e75919e4a937dcca6ef9457",
          "output_hash": "f61aa7bfac7c2e96e3bf2d3386a95e45d2db52d040f05aff9ea963197eacc3f6",
          "completed_at": "2026-07-15T18:29:47Z"
        },
        {
          "step_id": "delegated",
          "action": "reporting.delegate",
          "input_hash": "5bf4dfad88c9958da759cb1561ca5fdd8f3ac9050e938bfde85af5c8d804adc9",
          "output_hash": "e6085059f197def80ae95add1f328418107bea5436c9bd002530043646a3a95c",
          "completed_at": "2026-07-15T18:29:47Z"
        }
      ],
      "steps": [
        {
          "id": "state",
          "action": "state.consistency",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-15T18:29:46Z",
          "output": {
            "status": "ok",
            "repo_root": "D:\\Projects\\prd-plugin",
            "summary": {
              "errors": 0,
              "warnings": 0,
              "infos": 0
            },
            "findings": []
          },
          "output_hash": "5a1c6e5246defb1b6b6b90ff734db95bece2886b408ab112ed9b8e67222d5568",
          "completed_at": "2026-07-15T18:29:46Z"
        },
        {
          "id": "goals",
          "action": "substrate.goals",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-15T18:29:46Z",
          "output": {
            "status": "disabled",
            "created": 0,
            "observed": 0,
            "results": []
          },
          "output_hash": "cdfd4de44a28140e686159f34f7b47975954c67e1d1efcef666e985acb136ed8",
          "completed_at": "2026-07-15T18:29:47Z"
        },
        {
          "id": "staleness",
          "action": "staleness.audit",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-15T18:29:47Z",
          "output": {
            "status": "ok",
            "repo_root": "D:\\Projects\\prd-plugin",
            "counts": {
              "stale": 0
            },
            "stale": []
          },
          "output_hash": "1e81cb0ffd0a4d04626920a203b38d2d23a264cd43e807a85d375d69cae8a658",
          "completed_at": "2026-07-15T18:29:47Z"
        },
        {
          "id": "reflections",
          "action": "reflection.list",
          "status": "completed",
          "resolved_input_hash": "0172e841ab4c13b3a4061f073f9d68a716ec87a8a5d52fde41823385e0582573",
          "started_at": "2026-07-15T18:29:47Z",
          "output": {
            "enabled": false,
            "on_stop": true,
            "max_questions_per_stop": 5,
            "categories": [
              {
                "id": "behaviour_quality",
                "name": "Behaviour quality",
                "enabled": true,
                "question_count": 3
              },
              {
                "id": "harness_friction",
                "name": "Harness friction",
                "enabled": true,
                "question_count": 2
              }
            ],
            "questions": [
              {
                "id": "RFQ-001",
                "text": "Based on the work you just carried out, would you classify your behaviour as good? Answer yes or no and cite observable evidence.",
                "enabled": true,
                "category_id": "behaviour_quality",
                "category_name": "Behaviour quality",
                "effective_enabled": false
              },
              {
                "id": "RFQ-002",
                "text": "If you answered no, what could you do differently to correct your behaviour?",
                "enabled": true,
                "category_id": "behaviour_quality",
                "category_name": "Behaviour quality",
                "effective_enabled": false
              },
              {
                "id": "RFQ-003",
                "text": "Would another attempt using the identified good behaviours materially improve the outcome? Answer yes or no and state the next corrective action if yes.",
                "enabled": true,
                "category_id": "behaviour_quality",
                "category_name": "Behaviour quality",
                "effective_enabled": false
              },
              {
                "id": "RFQ-004",
                "text": "What harness friction points made this work more difficult?",
                "enabled": true,
                "category_id": "harness_friction",
                "category_name": "Harness friction",
                "effective_enabled": false
              },
              {
                "id": "RFQ-005",
                "text": "What up to three changes would most improve friction in the harness?",
                "enabled": true,
                "category_id": "harness_friction",
                "category_name": "Harness friction",
                "effective_enabled": false
              }
            ]
          },
          "output_hash": "c1b6b635c0bab21120657277f14ef6f839909875f307a3745fa48aee2bd6e449",
          "completed_at": "2026-07-15T18:29:47Z"
        },
        {
          "id": "bundle",
          "action": "reporting.bundle",
          "status": "completed",
          "resolved_input_hash": "aed8ebb688dc3c085dd978d7c4120572173c3cb87e75919e4a937dcca6ef9457",
          "started_at": "2026-07-15T18:29:47Z",
          "output": {
            "contract_version": 1,
            "task": "session_summary",
            "repo": "prd-plugin",
            "policy": {
              "enabled": false,
              "executor": "ai-collab",
              "contract_version": 1,
              "profile": "fast-capable",
              "tasks": [
                "report_summary",
                "session_summary",
                "wiki_synthesis",
                "triage_draft"
              ],
              "fallback": "main",
              "require_source_refs": true,
              "max_input_tokens": 12000,
              "max_output_tokens": 1500,
              "timeout_seconds": 30
            },
            "facts": {
              "requests_by_status": {
                "deferred": 1,
                "implemented": 80,
                "proposed": 1,
                "rejected": 1
              },
              "active_requests": [
                {
                  "id": "REQ-072",
                  "status": "proposed",
                  "severity": "low",
                  "summary": "opencode run-until-done: session.idle is a non-blocking notification, so the stop guard can't force continuation on opencode (currently degrades to a printed reminder, 0.5.95). Investigate whether opencode exposes any vetoable/continuation mechanism (a different event, a permission hook, or a 'continue' API) to enforce run-until-done, or accept the reminder as the permanent ceiling. Low priority — user rarely uses opencode."
                }
              ],
              "active_tracking": [],
              "open_health": [],
              "evidence_count": 105,
              "decision_count": 10
            },
            "findings": [],
            "source_refs": [
              ".prd_plugin/config.json",
              ".prd_plugin/state/decisions.json",
              ".prd_plugin/state/evidence.json",
              ".prd_plugin/state/health.json",
              ".prd_plugin/state/requests.json",
              ".prd_plugin/state/tracking.json",
              "REQ-072"
            ],
            "constraints": {
              "max_input_tokens": 12000,
              "max_output_tokens": 1500,
              "timeout_seconds": 30,
              "require_source_refs": true,
              "no_project_state_writes": true,
              "no_secrets_or_local_session_content": true
            }
          },
          "output_hash": "f61aa7bfac7c2e96e3bf2d3386a95e45d2db52d040f05aff9ea963197eacc3f6",
          "completed_at": "2026-07-15T18:29:47Z"
        },
        {
          "id": "delegated",
          "action": "reporting.delegate",
          "status": "completed",
          "resolved_input_hash": "5bf4dfad88c9958da759cb1561ca5fdd8f3ac9050e938bfde85af5c8d804adc9",
          "started_at": "2026-07-15T18:29:47Z",
          "output": {
            "status": "fallback",
            "action": "main",
            "reason": "disabled"
          },
          "output_hash": "e6085059f197def80ae95add1f328418107bea5436c9bd002530043646a3a95c",
          "completed_at": "2026-07-15T18:29:47Z"
        }
      ],
      "completed_at": "2026-07-15T18:29:47Z"
    },
    {
      "id": "WFR-179",
      "schema_version": "1.0",
      "workflow_id": "session.start",
      "workflow_version": 1,
      "definition_hash": "d0f98da02571e6dd27fec4aed92d3c82af9db75f8b90b997bf665635c7b7f6ca",
      "plan_hash": "b5072615ca3b7e9a3bd85d50d1f069d99ef2a9816b32c03a370745ed7a205536",
      "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
      "inputs": {},
      "idempotency_key": "hook:SessionStart:019f670c-6e53-7a31-8e1f-c4ba1708cb7f",
      "status": "completed",
      "attempt": 1,
      "created_at": "2026-07-15T18:31:38Z",
      "updated_at": "2026-07-15T18:31:39Z",
      "receipts": [
        {
          "step_id": "config",
          "action": "config.audit",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "3782ec2317c0c8ee7598634310a2804d8aae4735f557498f9d3b8fae7c45e1e5",
          "completed_at": "2026-07-15T18:31:38Z"
        },
        {
          "step_id": "services",
          "action": "services.audit",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "13dcc58bd528f3efa3e6e0fa0853a6eedc376f1f3685fbd4869cbb2b60382ee3",
          "completed_at": "2026-07-15T18:31:38Z"
        },
        {
          "step_id": "state",
          "action": "state.consistency",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "5a1c6e5246defb1b6b6b90ff734db95bece2886b408ab112ed9b8e67222d5568",
          "completed_at": "2026-07-15T18:31:38Z"
        },
        {
          "step_id": "status",
          "action": "state.query",
          "input_hash": "a15231a2142a2a9a85355a8b9cbbccffe01a9c9c2c2fd8c2bc2987cdc481564a",
          "output_hash": "8ba9f7d3cc6705af37de9e3324d1258e21ccacb5ab0b2d7b389ca08885e11187",
          "completed_at": "2026-07-15T18:31:39Z"
        },
        {
          "step_id": "substrate",
          "action": "substrate.preflight",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "a6df426290b4549a59eecaa0519ead9bcc50b7fcb25bd2185ff6047960f19ccb",
          "completed_at": "2026-07-15T18:31:39Z"
        },
        {
          "step_id": "notices",
          "action": "substrate.notices",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "38b904a1cf83df048360fb2480571b749fd98d57e11f1afdffb5a74a78166fea",
          "completed_at": "2026-07-15T18:31:39Z"
        },
        {
          "step_id": "goals",
          "action": "substrate.goals",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "cdfd4de44a28140e686159f34f7b47975954c67e1d1efcef666e985acb136ed8",
          "completed_at": "2026-07-15T18:31:39Z"
        }
      ],
      "steps": [
        {
          "id": "config",
          "action": "config.audit",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-15T18:31:38Z",
          "output": {
            "status": "ok",
            "summary": {
              "settings": 195,
              "mutable": 186,
              "read_only_or_managed": 9,
              "unclassified": 0,
              "unknown": 0,
              "invalid": 0,
              "missing_using_defaults": 0
            },
            "unclassified_keys": [],
            "unknown_keys": [],
            "invalid_values": [],
            "missing_using_defaults": []
          },
          "output_hash": "3782ec2317c0c8ee7598634310a2804d8aae4735f557498f9d3b8fae7c45e1e5",
          "completed_at": "2026-07-15T18:31:38Z"
        },
        {
          "id": "services",
          "action": "services.audit",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-15T18:31:38Z",
          "output": {
            "status": "ok",
            "summary": {
              "critical": 0,
              "high": 0,
              "medium": 0,
              "low": 0
            },
            "findings": []
          },
          "output_hash": "13dcc58bd528f3efa3e6e0fa0853a6eedc376f1f3685fbd4869cbb2b60382ee3",
          "completed_at": "2026-07-15T18:31:38Z"
        },
        {
          "id": "state",
          "action": "state.consistency",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-15T18:31:38Z",
          "output": {
            "status": "ok",
            "repo_root": "D:\\Projects\\prd-plugin",
            "summary": {
              "errors": 0,
              "warnings": 0,
              "infos": 0
            },
            "findings": []
          },
          "output_hash": "5a1c6e5246defb1b6b6b90ff734db95bece2886b408ab112ed9b8e67222d5568",
          "completed_at": "2026-07-15T18:31:38Z"
        },
        {
          "id": "status",
          "action": "state.query",
          "status": "completed",
          "resolved_input_hash": "a15231a2142a2a9a85355a8b9cbbccffe01a9c9c2c2fd8c2bc2987cdc481564a",
          "started_at": "2026-07-15T18:31:38Z",
          "output": {
            "repo_root": "D:\\Projects\\prd-plugin",
            "autonomy_level": "autonomous",
            "requests_by_status": {
              "deferred": 1,
              "implemented": 80,
              "proposed": 1,
              "rejected": 1
            },
            "active_tracking": [],
            "tracking_branches": [],
            "tracking_branch_counts": {},
            "tracking_branch_errors": [],
            "open_health": [],
            "stale_count": 0,
            "skill_usage": {
              "project-decision-policy": 1,
              "project-request-intake": 1,
              "project-test-driven-implementation": 1,
              "project-verification-before-completion": 1,
              "project-llm-wiki": 1
            },
            "wiki_backfill_pending": false,
            "version_update": null
          },
          "output_hash": "8ba9f7d3cc6705af37de9e3324d1258e21ccacb5ab0b2d7b389ca08885e11187",
          "completed_at": "2026-07-15T18:31:39Z"
        },
        {
          "id": "substrate",
          "action": "substrate.preflight",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-15T18:31:39Z",
          "output": {
            "status": "disabled",
            "services": {
              "status": "ok",
              "summary": {
                "critical": 0,
                "high": 0,
                "medium": 0,
                "low": 0
              },
              "findings": []
            },
            "policy": {
              "configured": {
                "enabled": false,
                "mode": "off",
                "capabilities": [
                  "records",
                  "graph",
                  "events"
                ],
                "contract_version": 2,
                "require_source_refs": true,
                "endpoint": "http://127.0.0.1:47124",
                "manual_url": "http://127.0.0.1:47124/utcp.json",
                "knowledge_browse_url": "http://127.0.0.1:5276",
                "auth_env": "AI_COLLAB_API_KEY",
                "timeout_seconds": 5,
                "max_result_bytes": 1048576,
                "cache_ttl_seconds": 60,
                "fallback": "local",
                "automation": {
                  "discovery_on_session_start": true,
                  "knowledge_recall": true,
                  "memory_recall": true,
                  "context_enrichment": true,
                  "notices_on_session_start": false,
                  "goals_sync": false,
                  "telemetry_on_maintenance": false,
                  "reporting_dispatch": true,
                  "judgment_dispatch": true,
                  "verification_execution": true
                }
              },
              "active": false,
              "effective_mode": "off",
              "effective_capabilities": []
            }
          },
          "output_hash": "a6df426290b4549a59eecaa0519ead9bcc50b7fcb25bd2185ff6047960f19ccb",
          "completed_at": "2026-07-15T18:31:39Z"
        },
        {
          "id": "notices",
          "action": "substrate.notices",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-15T18:31:39Z",
          "output": {
            "status": "disabled"
          },
          "output_hash": "38b904a1cf83df048360fb2480571b749fd98d57e11f1afdffb5a74a78166fea",
          "completed_at": "2026-07-15T18:31:39Z"
        },
        {
          "id": "goals",
          "action": "substrate.goals",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-15T18:31:39Z",
          "output": {
            "status": "disabled",
            "created": 0,
            "observed": 0,
            "results": []
          },
          "output_hash": "cdfd4de44a28140e686159f34f7b47975954c67e1d1efcef666e985acb136ed8",
          "completed_at": "2026-07-15T18:31:39Z"
        }
      ],
      "completed_at": "2026-07-15T18:31:39Z"
    },
    {
      "id": "WFR-180",
      "schema_version": "1.0",
      "workflow_id": "session.stop",
      "workflow_version": 1,
      "definition_hash": "0cef7bb3e28321be8f85375c154955a69310ce297e47de3f3b8dd48f77a2f07d",
      "plan_hash": "a5e1d77ac734217487fc418e29c7163f4e81178e25d171e70cd4c999d527d3e8",
      "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
      "inputs": {},
      "idempotency_key": "hook:Stop:019f670c-6e53-7a31-8e1f-c4ba1708cb7f",
      "status": "completed",
      "attempt": 1,
      "created_at": "2026-07-15T18:31:56Z",
      "updated_at": "2026-07-15T18:31:57Z",
      "receipts": [
        {
          "step_id": "state",
          "action": "state.consistency",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "5a1c6e5246defb1b6b6b90ff734db95bece2886b408ab112ed9b8e67222d5568",
          "completed_at": "2026-07-15T18:31:56Z"
        },
        {
          "step_id": "goals",
          "action": "substrate.goals",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "cdfd4de44a28140e686159f34f7b47975954c67e1d1efcef666e985acb136ed8",
          "completed_at": "2026-07-15T18:31:56Z"
        },
        {
          "step_id": "staleness",
          "action": "staleness.audit",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "1e81cb0ffd0a4d04626920a203b38d2d23a264cd43e807a85d375d69cae8a658",
          "completed_at": "2026-07-15T18:31:57Z"
        },
        {
          "step_id": "reflections",
          "action": "reflection.list",
          "input_hash": "0172e841ab4c13b3a4061f073f9d68a716ec87a8a5d52fde41823385e0582573",
          "output_hash": "c1b6b635c0bab21120657277f14ef6f839909875f307a3745fa48aee2bd6e449",
          "completed_at": "2026-07-15T18:31:57Z"
        },
        {
          "step_id": "bundle",
          "action": "reporting.bundle",
          "input_hash": "aed8ebb688dc3c085dd978d7c4120572173c3cb87e75919e4a937dcca6ef9457",
          "output_hash": "f61aa7bfac7c2e96e3bf2d3386a95e45d2db52d040f05aff9ea963197eacc3f6",
          "completed_at": "2026-07-15T18:31:57Z"
        },
        {
          "step_id": "delegated",
          "action": "reporting.delegate",
          "input_hash": "5bf4dfad88c9958da759cb1561ca5fdd8f3ac9050e938bfde85af5c8d804adc9",
          "output_hash": "e6085059f197def80ae95add1f328418107bea5436c9bd002530043646a3a95c",
          "completed_at": "2026-07-15T18:31:57Z"
        }
      ],
      "steps": [
        {
          "id": "state",
          "action": "state.consistency",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-15T18:31:56Z",
          "output": {
            "status": "ok",
            "repo_root": "D:\\Projects\\prd-plugin",
            "summary": {
              "errors": 0,
              "warnings": 0,
              "infos": 0
            },
            "findings": []
          },
          "output_hash": "5a1c6e5246defb1b6b6b90ff734db95bece2886b408ab112ed9b8e67222d5568",
          "completed_at": "2026-07-15T18:31:56Z"
        },
        {
          "id": "goals",
          "action": "substrate.goals",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-15T18:31:56Z",
          "output": {
            "status": "disabled",
            "created": 0,
            "observed": 0,
            "results": []
          },
          "output_hash": "cdfd4de44a28140e686159f34f7b47975954c67e1d1efcef666e985acb136ed8",
          "completed_at": "2026-07-15T18:31:56Z"
        },
        {
          "id": "staleness",
          "action": "staleness.audit",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-15T18:31:57Z",
          "output": {
            "status": "ok",
            "repo_root": "D:\\Projects\\prd-plugin",
            "counts": {
              "stale": 0
            },
            "stale": []
          },
          "output_hash": "1e81cb0ffd0a4d04626920a203b38d2d23a264cd43e807a85d375d69cae8a658",
          "completed_at": "2026-07-15T18:31:57Z"
        },
        {
          "id": "reflections",
          "action": "reflection.list",
          "status": "completed",
          "resolved_input_hash": "0172e841ab4c13b3a4061f073f9d68a716ec87a8a5d52fde41823385e0582573",
          "started_at": "2026-07-15T18:31:57Z",
          "output": {
            "enabled": false,
            "on_stop": true,
            "max_questions_per_stop": 5,
            "categories": [
              {
                "id": "behaviour_quality",
                "name": "Behaviour quality",
                "enabled": true,
                "question_count": 3
              },
              {
                "id": "harness_friction",
                "name": "Harness friction",
                "enabled": true,
                "question_count": 2
              }
            ],
            "questions": [
              {
                "id": "RFQ-001",
                "text": "Based on the work you just carried out, would you classify your behaviour as good? Answer yes or no and cite observable evidence.",
                "enabled": true,
                "category_id": "behaviour_quality",
                "category_name": "Behaviour quality",
                "effective_enabled": false
              },
              {
                "id": "RFQ-002",
                "text": "If you answered no, what could you do differently to correct your behaviour?",
                "enabled": true,
                "category_id": "behaviour_quality",
                "category_name": "Behaviour quality",
                "effective_enabled": false
              },
              {
                "id": "RFQ-003",
                "text": "Would another attempt using the identified good behaviours materially improve the outcome? Answer yes or no and state the next corrective action if yes.",
                "enabled": true,
                "category_id": "behaviour_quality",
                "category_name": "Behaviour quality",
                "effective_enabled": false
              },
              {
                "id": "RFQ-004",
                "text": "What harness friction points made this work more difficult?",
                "enabled": true,
                "category_id": "harness_friction",
                "category_name": "Harness friction",
                "effective_enabled": false
              },
              {
                "id": "RFQ-005",
                "text": "What up to three changes would most improve friction in the harness?",
                "enabled": true,
                "category_id": "harness_friction",
                "category_name": "Harness friction",
                "effective_enabled": false
              }
            ]
          },
          "output_hash": "c1b6b635c0bab21120657277f14ef6f839909875f307a3745fa48aee2bd6e449",
          "completed_at": "2026-07-15T18:31:57Z"
        },
        {
          "id": "bundle",
          "action": "reporting.bundle",
          "status": "completed",
          "resolved_input_hash": "aed8ebb688dc3c085dd978d7c4120572173c3cb87e75919e4a937dcca6ef9457",
          "started_at": "2026-07-15T18:31:57Z",
          "output": {
            "contract_version": 1,
            "task": "session_summary",
            "repo": "prd-plugin",
            "policy": {
              "enabled": false,
              "executor": "ai-collab",
              "contract_version": 1,
              "profile": "fast-capable",
              "tasks": [
                "report_summary",
                "session_summary",
                "wiki_synthesis",
                "triage_draft"
              ],
              "fallback": "main",
              "require_source_refs": true,
              "max_input_tokens": 12000,
              "max_output_tokens": 1500,
              "timeout_seconds": 30
            },
            "facts": {
              "requests_by_status": {
                "deferred": 1,
                "implemented": 80,
                "proposed": 1,
                "rejected": 1
              },
              "active_requests": [
                {
                  "id": "REQ-072",
                  "status": "proposed",
                  "severity": "low",
                  "summary": "opencode run-until-done: session.idle is a non-blocking notification, so the stop guard can't force continuation on opencode (currently degrades to a printed reminder, 0.5.95). Investigate whether opencode exposes any vetoable/continuation mechanism (a different event, a permission hook, or a 'continue' API) to enforce run-until-done, or accept the reminder as the permanent ceiling. Low priority — user rarely uses opencode."
                }
              ],
              "active_tracking": [],
              "open_health": [],
              "evidence_count": 105,
              "decision_count": 10
            },
            "findings": [],
            "source_refs": [
              ".prd_plugin/config.json",
              ".prd_plugin/state/decisions.json",
              ".prd_plugin/state/evidence.json",
              ".prd_plugin/state/health.json",
              ".prd_plugin/state/requests.json",
              ".prd_plugin/state/tracking.json",
              "REQ-072"
            ],
            "constraints": {
              "max_input_tokens": 12000,
              "max_output_tokens": 1500,
              "timeout_seconds": 30,
              "require_source_refs": true,
              "no_project_state_writes": true,
              "no_secrets_or_local_session_content": true
            }
          },
          "output_hash": "f61aa7bfac7c2e96e3bf2d3386a95e45d2db52d040f05aff9ea963197eacc3f6",
          "completed_at": "2026-07-15T18:31:57Z"
        },
        {
          "id": "delegated",
          "action": "reporting.delegate",
          "status": "completed",
          "resolved_input_hash": "5bf4dfad88c9958da759cb1561ca5fdd8f3ac9050e938bfde85af5c8d804adc9",
          "started_at": "2026-07-15T18:31:57Z",
          "output": {
            "status": "fallback",
            "action": "main",
            "reason": "disabled"
          },
          "output_hash": "e6085059f197def80ae95add1f328418107bea5436c9bd002530043646a3a95c",
          "completed_at": "2026-07-15T18:31:57Z"
        }
      ],
      "completed_at": "2026-07-15T18:31:57Z"
    },
    {
      "id": "WFR-181",
      "schema_version": "1.0",
      "workflow_id": "session.start",
      "workflow_version": 1,
      "definition_hash": "d0f98da02571e6dd27fec4aed92d3c82af9db75f8b90b997bf665635c7b7f6ca",
      "plan_hash": "b5072615ca3b7e9a3bd85d50d1f069d99ef2a9816b32c03a370745ed7a205536",
      "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
      "inputs": {},
      "idempotency_key": "hook:SessionStart:019f670e-4f3e-7bb1-bc8c-598bbab112af",
      "status": "completed",
      "attempt": 1,
      "created_at": "2026-07-15T18:33:46Z",
      "updated_at": "2026-07-15T18:33:47Z",
      "receipts": [
        {
          "step_id": "config",
          "action": "config.audit",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "3782ec2317c0c8ee7598634310a2804d8aae4735f557498f9d3b8fae7c45e1e5",
          "completed_at": "2026-07-15T18:33:46Z"
        },
        {
          "step_id": "services",
          "action": "services.audit",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "13dcc58bd528f3efa3e6e0fa0853a6eedc376f1f3685fbd4869cbb2b60382ee3",
          "completed_at": "2026-07-15T18:33:46Z"
        },
        {
          "step_id": "state",
          "action": "state.consistency",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "5a1c6e5246defb1b6b6b90ff734db95bece2886b408ab112ed9b8e67222d5568",
          "completed_at": "2026-07-15T18:33:47Z"
        },
        {
          "step_id": "status",
          "action": "state.query",
          "input_hash": "a15231a2142a2a9a85355a8b9cbbccffe01a9c9c2c2fd8c2bc2987cdc481564a",
          "output_hash": "8ba9f7d3cc6705af37de9e3324d1258e21ccacb5ab0b2d7b389ca08885e11187",
          "completed_at": "2026-07-15T18:33:47Z"
        },
        {
          "step_id": "substrate",
          "action": "substrate.preflight",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "a6df426290b4549a59eecaa0519ead9bcc50b7fcb25bd2185ff6047960f19ccb",
          "completed_at": "2026-07-15T18:33:47Z"
        },
        {
          "step_id": "notices",
          "action": "substrate.notices",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "38b904a1cf83df048360fb2480571b749fd98d57e11f1afdffb5a74a78166fea",
          "completed_at": "2026-07-15T18:33:47Z"
        },
        {
          "step_id": "goals",
          "action": "substrate.goals",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "cdfd4de44a28140e686159f34f7b47975954c67e1d1efcef666e985acb136ed8",
          "completed_at": "2026-07-15T18:33:47Z"
        }
      ],
      "steps": [
        {
          "id": "config",
          "action": "config.audit",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-15T18:33:46Z",
          "output": {
            "status": "ok",
            "summary": {
              "settings": 195,
              "mutable": 186,
              "read_only_or_managed": 9,
              "unclassified": 0,
              "unknown": 0,
              "invalid": 0,
              "missing_using_defaults": 0
            },
            "unclassified_keys": [],
            "unknown_keys": [],
            "invalid_values": [],
            "missing_using_defaults": []
          },
          "output_hash": "3782ec2317c0c8ee7598634310a2804d8aae4735f557498f9d3b8fae7c45e1e5",
          "completed_at": "2026-07-15T18:33:46Z"
        },
        {
          "id": "services",
          "action": "services.audit",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-15T18:33:46Z",
          "output": {
            "status": "ok",
            "summary": {
              "critical": 0,
              "high": 0,
              "medium": 0,
              "low": 0
            },
            "findings": []
          },
          "output_hash": "13dcc58bd528f3efa3e6e0fa0853a6eedc376f1f3685fbd4869cbb2b60382ee3",
          "completed_at": "2026-07-15T18:33:46Z"
        },
        {
          "id": "state",
          "action": "state.consistency",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-15T18:33:46Z",
          "output": {
            "status": "ok",
            "repo_root": "D:\\Projects\\prd-plugin",
            "summary": {
              "errors": 0,
              "warnings": 0,
              "infos": 0
            },
            "findings": []
          },
          "output_hash": "5a1c6e5246defb1b6b6b90ff734db95bece2886b408ab112ed9b8e67222d5568",
          "completed_at": "2026-07-15T18:33:47Z"
        },
        {
          "id": "status",
          "action": "state.query",
          "status": "completed",
          "resolved_input_hash": "a15231a2142a2a9a85355a8b9cbbccffe01a9c9c2c2fd8c2bc2987cdc481564a",
          "started_at": "2026-07-15T18:33:47Z",
          "output": {
            "repo_root": "D:\\Projects\\prd-plugin",
            "autonomy_level": "autonomous",
            "requests_by_status": {
              "deferred": 1,
              "implemented": 80,
              "proposed": 1,
              "rejected": 1
            },
            "active_tracking": [],
            "tracking_branches": [],
            "tracking_branch_counts": {},
            "tracking_branch_errors": [],
            "open_health": [],
            "stale_count": 0,
            "skill_usage": {
              "project-decision-policy": 1,
              "project-request-intake": 1,
              "project-test-driven-implementation": 1,
              "project-verification-before-completion": 1,
              "project-llm-wiki": 1
            },
            "wiki_backfill_pending": false,
            "version_update": null
          },
          "output_hash": "8ba9f7d3cc6705af37de9e3324d1258e21ccacb5ab0b2d7b389ca08885e11187",
          "completed_at": "2026-07-15T18:33:47Z"
        },
        {
          "id": "substrate",
          "action": "substrate.preflight",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-15T18:33:47Z",
          "output": {
            "status": "disabled",
            "services": {
              "status": "ok",
              "summary": {
                "critical": 0,
                "high": 0,
                "medium": 0,
                "low": 0
              },
              "findings": []
            },
            "policy": {
              "configured": {
                "enabled": false,
                "mode": "off",
                "capabilities": [
                  "records",
                  "graph",
                  "events"
                ],
                "contract_version": 2,
                "require_source_refs": true,
                "endpoint": "http://127.0.0.1:47124",
                "manual_url": "http://127.0.0.1:47124/utcp.json",
                "knowledge_browse_url": "http://127.0.0.1:5276",
                "auth_env": "AI_COLLAB_API_KEY",
                "timeout_seconds": 5,
                "max_result_bytes": 1048576,
                "cache_ttl_seconds": 60,
                "fallback": "local",
                "automation": {
                  "discovery_on_session_start": true,
                  "knowledge_recall": true,
                  "memory_recall": true,
                  "context_enrichment": true,
                  "notices_on_session_start": false,
                  "goals_sync": false,
                  "telemetry_on_maintenance": false,
                  "reporting_dispatch": true,
                  "judgment_dispatch": true,
                  "verification_execution": true
                }
              },
              "active": false,
              "effective_mode": "off",
              "effective_capabilities": []
            }
          },
          "output_hash": "a6df426290b4549a59eecaa0519ead9bcc50b7fcb25bd2185ff6047960f19ccb",
          "completed_at": "2026-07-15T18:33:47Z"
        },
        {
          "id": "notices",
          "action": "substrate.notices",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-15T18:33:47Z",
          "output": {
            "status": "disabled"
          },
          "output_hash": "38b904a1cf83df048360fb2480571b749fd98d57e11f1afdffb5a74a78166fea",
          "completed_at": "2026-07-15T18:33:47Z"
        },
        {
          "id": "goals",
          "action": "substrate.goals",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-15T18:33:47Z",
          "output": {
            "status": "disabled",
            "created": 0,
            "observed": 0,
            "results": []
          },
          "output_hash": "cdfd4de44a28140e686159f34f7b47975954c67e1d1efcef666e985acb136ed8",
          "completed_at": "2026-07-15T18:33:47Z"
        }
      ],
      "completed_at": "2026-07-15T18:33:47Z"
    },
    {
      "id": "WFR-182",
      "schema_version": "1.0",
      "workflow_id": "session.stop",
      "workflow_version": 1,
      "definition_hash": "0cef7bb3e28321be8f85375c154955a69310ce297e47de3f3b8dd48f77a2f07d",
      "plan_hash": "a5e1d77ac734217487fc418e29c7163f4e81178e25d171e70cd4c999d527d3e8",
      "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
      "inputs": {},
      "idempotency_key": "hook:Stop:019f670e-4f3e-7bb1-bc8c-598bbab112af",
      "status": "completed",
      "attempt": 1,
      "created_at": "2026-07-15T18:33:50Z",
      "updated_at": "2026-07-15T18:33:51Z",
      "receipts": [
        {
          "step_id": "state",
          "action": "state.consistency",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "5a1c6e5246defb1b6b6b90ff734db95bece2886b408ab112ed9b8e67222d5568",
          "completed_at": "2026-07-15T18:33:51Z"
        },
        {
          "step_id": "goals",
          "action": "substrate.goals",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "cdfd4de44a28140e686159f34f7b47975954c67e1d1efcef666e985acb136ed8",
          "completed_at": "2026-07-15T18:33:51Z"
        },
        {
          "step_id": "staleness",
          "action": "staleness.audit",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "1e81cb0ffd0a4d04626920a203b38d2d23a264cd43e807a85d375d69cae8a658",
          "completed_at": "2026-07-15T18:33:51Z"
        },
        {
          "step_id": "reflections",
          "action": "reflection.list",
          "input_hash": "0172e841ab4c13b3a4061f073f9d68a716ec87a8a5d52fde41823385e0582573",
          "output_hash": "c1b6b635c0bab21120657277f14ef6f839909875f307a3745fa48aee2bd6e449",
          "completed_at": "2026-07-15T18:33:51Z"
        },
        {
          "step_id": "bundle",
          "action": "reporting.bundle",
          "input_hash": "aed8ebb688dc3c085dd978d7c4120572173c3cb87e75919e4a937dcca6ef9457",
          "output_hash": "f61aa7bfac7c2e96e3bf2d3386a95e45d2db52d040f05aff9ea963197eacc3f6",
          "completed_at": "2026-07-15T18:33:51Z"
        },
        {
          "step_id": "delegated",
          "action": "reporting.delegate",
          "input_hash": "5bf4dfad88c9958da759cb1561ca5fdd8f3ac9050e938bfde85af5c8d804adc9",
          "output_hash": "e6085059f197def80ae95add1f328418107bea5436c9bd002530043646a3a95c",
          "completed_at": "2026-07-15T18:33:51Z"
        }
      ],
      "steps": [
        {
          "id": "state",
          "action": "state.consistency",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-15T18:33:50Z",
          "output": {
            "status": "ok",
            "repo_root": "D:\\Projects\\prd-plugin",
            "summary": {
              "errors": 0,
              "warnings": 0,
              "infos": 0
            },
            "findings": []
          },
          "output_hash": "5a1c6e5246defb1b6b6b90ff734db95bece2886b408ab112ed9b8e67222d5568",
          "completed_at": "2026-07-15T18:33:51Z"
        },
        {
          "id": "goals",
          "action": "substrate.goals",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-15T18:33:51Z",
          "output": {
            "status": "disabled",
            "created": 0,
            "observed": 0,
            "results": []
          },
          "output_hash": "cdfd4de44a28140e686159f34f7b47975954c67e1d1efcef666e985acb136ed8",
          "completed_at": "2026-07-15T18:33:51Z"
        },
        {
          "id": "staleness",
          "action": "staleness.audit",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-15T18:33:51Z",
          "output": {
            "status": "ok",
            "repo_root": "D:\\Projects\\prd-plugin",
            "counts": {
              "stale": 0
            },
            "stale": []
          },
          "output_hash": "1e81cb0ffd0a4d04626920a203b38d2d23a264cd43e807a85d375d69cae8a658",
          "completed_at": "2026-07-15T18:33:51Z"
        },
        {
          "id": "reflections",
          "action": "reflection.list",
          "status": "completed",
          "resolved_input_hash": "0172e841ab4c13b3a4061f073f9d68a716ec87a8a5d52fde41823385e0582573",
          "started_at": "2026-07-15T18:33:51Z",
          "output": {
            "enabled": false,
            "on_stop": true,
            "max_questions_per_stop": 5,
            "categories": [
              {
                "id": "behaviour_quality",
                "name": "Behaviour quality",
                "enabled": true,
                "question_count": 3
              },
              {
                "id": "harness_friction",
                "name": "Harness friction",
                "enabled": true,
                "question_count": 2
              }
            ],
            "questions": [
              {
                "id": "RFQ-001",
                "text": "Based on the work you just carried out, would you classify your behaviour as good? Answer yes or no and cite observable evidence.",
                "enabled": true,
                "category_id": "behaviour_quality",
                "category_name": "Behaviour quality",
                "effective_enabled": false
              },
              {
                "id": "RFQ-002",
                "text": "If you answered no, what could you do differently to correct your behaviour?",
                "enabled": true,
                "category_id": "behaviour_quality",
                "category_name": "Behaviour quality",
                "effective_enabled": false
              },
              {
                "id": "RFQ-003",
                "text": "Would another attempt using the identified good behaviours materially improve the outcome? Answer yes or no and state the next corrective action if yes.",
                "enabled": true,
                "category_id": "behaviour_quality",
                "category_name": "Behaviour quality",
                "effective_enabled": false
              },
              {
                "id": "RFQ-004",
                "text": "What harness friction points made this work more difficult?",
                "enabled": true,
                "category_id": "harness_friction",
                "category_name": "Harness friction",
                "effective_enabled": false
              },
              {
                "id": "RFQ-005",
                "text": "What up to three changes would most improve friction in the harness?",
                "enabled": true,
                "category_id": "harness_friction",
                "category_name": "Harness friction",
                "effective_enabled": false
              }
            ]
          },
          "output_hash": "c1b6b635c0bab21120657277f14ef6f839909875f307a3745fa48aee2bd6e449",
          "completed_at": "2026-07-15T18:33:51Z"
        },
        {
          "id": "bundle",
          "action": "reporting.bundle",
          "status": "completed",
          "resolved_input_hash": "aed8ebb688dc3c085dd978d7c4120572173c3cb87e75919e4a937dcca6ef9457",
          "started_at": "2026-07-15T18:33:51Z",
          "output": {
            "contract_version": 1,
            "task": "session_summary",
            "repo": "prd-plugin",
            "policy": {
              "enabled": false,
              "executor": "ai-collab",
              "contract_version": 1,
              "profile": "fast-capable",
              "tasks": [
                "report_summary",
                "session_summary",
                "wiki_synthesis",
                "triage_draft"
              ],
              "fallback": "main",
              "require_source_refs": true,
              "max_input_tokens": 12000,
              "max_output_tokens": 1500,
              "timeout_seconds": 30
            },
            "facts": {
              "requests_by_status": {
                "deferred": 1,
                "implemented": 80,
                "proposed": 1,
                "rejected": 1
              },
              "active_requests": [
                {
                  "id": "REQ-072",
                  "status": "proposed",
                  "severity": "low",
                  "summary": "opencode run-until-done: session.idle is a non-blocking notification, so the stop guard can't force continuation on opencode (currently degrades to a printed reminder, 0.5.95). Investigate whether opencode exposes any vetoable/continuation mechanism (a different event, a permission hook, or a 'continue' API) to enforce run-until-done, or accept the reminder as the permanent ceiling. Low priority — user rarely uses opencode."
                }
              ],
              "active_tracking": [],
              "open_health": [],
              "evidence_count": 105,
              "decision_count": 10
            },
            "findings": [],
            "source_refs": [
              ".prd_plugin/config.json",
              ".prd_plugin/state/decisions.json",
              ".prd_plugin/state/evidence.json",
              ".prd_plugin/state/health.json",
              ".prd_plugin/state/requests.json",
              ".prd_plugin/state/tracking.json",
              "REQ-072"
            ],
            "constraints": {
              "max_input_tokens": 12000,
              "max_output_tokens": 1500,
              "timeout_seconds": 30,
              "require_source_refs": true,
              "no_project_state_writes": true,
              "no_secrets_or_local_session_content": true
            }
          },
          "output_hash": "f61aa7bfac7c2e96e3bf2d3386a95e45d2db52d040f05aff9ea963197eacc3f6",
          "completed_at": "2026-07-15T18:33:51Z"
        },
        {
          "id": "delegated",
          "action": "reporting.delegate",
          "status": "completed",
          "resolved_input_hash": "5bf4dfad88c9958da759cb1561ca5fdd8f3ac9050e938bfde85af5c8d804adc9",
          "started_at": "2026-07-15T18:33:51Z",
          "output": {
            "status": "fallback",
            "action": "main",
            "reason": "disabled"
          },
          "output_hash": "e6085059f197def80ae95add1f328418107bea5436c9bd002530043646a3a95c",
          "completed_at": "2026-07-15T18:33:51Z"
        }
      ],
      "completed_at": "2026-07-15T18:33:51Z"
    },
    {
      "id": "WFR-183",
      "schema_version": "1.0",
      "workflow_id": "session.start",
      "workflow_version": 1,
      "definition_hash": "d0f98da02571e6dd27fec4aed92d3c82af9db75f8b90b997bf665635c7b7f6ca",
      "plan_hash": "b5072615ca3b7e9a3bd85d50d1f069d99ef2a9816b32c03a370745ed7a205536",
      "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
      "inputs": {},
      "idempotency_key": "hook:SessionStart:019f6725-e278-7d10-a3f4-e3bf05c3a8b5",
      "status": "completed",
      "attempt": 1,
      "created_at": "2026-07-15T18:59:26Z",
      "updated_at": "2026-07-15T18:59:27Z",
      "receipts": [
        {
          "step_id": "config",
          "action": "config.audit",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "3782ec2317c0c8ee7598634310a2804d8aae4735f557498f9d3b8fae7c45e1e5",
          "completed_at": "2026-07-15T18:59:26Z"
        },
        {
          "step_id": "services",
          "action": "services.audit",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "13dcc58bd528f3efa3e6e0fa0853a6eedc376f1f3685fbd4869cbb2b60382ee3",
          "completed_at": "2026-07-15T18:59:26Z"
        },
        {
          "step_id": "state",
          "action": "state.consistency",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "5a1c6e5246defb1b6b6b90ff734db95bece2886b408ab112ed9b8e67222d5568",
          "completed_at": "2026-07-15T18:59:27Z"
        },
        {
          "step_id": "status",
          "action": "state.query",
          "input_hash": "a15231a2142a2a9a85355a8b9cbbccffe01a9c9c2c2fd8c2bc2987cdc481564a",
          "output_hash": "8ba9f7d3cc6705af37de9e3324d1258e21ccacb5ab0b2d7b389ca08885e11187",
          "completed_at": "2026-07-15T18:59:27Z"
        },
        {
          "step_id": "substrate",
          "action": "substrate.preflight",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "a6df426290b4549a59eecaa0519ead9bcc50b7fcb25bd2185ff6047960f19ccb",
          "completed_at": "2026-07-15T18:59:27Z"
        },
        {
          "step_id": "notices",
          "action": "substrate.notices",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "38b904a1cf83df048360fb2480571b749fd98d57e11f1afdffb5a74a78166fea",
          "completed_at": "2026-07-15T18:59:27Z"
        },
        {
          "step_id": "goals",
          "action": "substrate.goals",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "cdfd4de44a28140e686159f34f7b47975954c67e1d1efcef666e985acb136ed8",
          "completed_at": "2026-07-15T18:59:27Z"
        }
      ],
      "steps": [
        {
          "id": "config",
          "action": "config.audit",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-15T18:59:26Z",
          "output": {
            "status": "ok",
            "summary": {
              "settings": 195,
              "mutable": 186,
              "read_only_or_managed": 9,
              "unclassified": 0,
              "unknown": 0,
              "invalid": 0,
              "missing_using_defaults": 0
            },
            "unclassified_keys": [],
            "unknown_keys": [],
            "invalid_values": [],
            "missing_using_defaults": []
          },
          "output_hash": "3782ec2317c0c8ee7598634310a2804d8aae4735f557498f9d3b8fae7c45e1e5",
          "completed_at": "2026-07-15T18:59:26Z"
        },
        {
          "id": "services",
          "action": "services.audit",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-15T18:59:26Z",
          "output": {
            "status": "ok",
            "summary": {
              "critical": 0,
              "high": 0,
              "medium": 0,
              "low": 0
            },
            "findings": []
          },
          "output_hash": "13dcc58bd528f3efa3e6e0fa0853a6eedc376f1f3685fbd4869cbb2b60382ee3",
          "completed_at": "2026-07-15T18:59:26Z"
        },
        {
          "id": "state",
          "action": "state.consistency",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-15T18:59:26Z",
          "output": {
            "status": "ok",
            "repo_root": "D:\\Projects\\prd-plugin",
            "summary": {
              "errors": 0,
              "warnings": 0,
              "infos": 0
            },
            "findings": []
          },
          "output_hash": "5a1c6e5246defb1b6b6b90ff734db95bece2886b408ab112ed9b8e67222d5568",
          "completed_at": "2026-07-15T18:59:27Z"
        },
        {
          "id": "status",
          "action": "state.query",
          "status": "completed",
          "resolved_input_hash": "a15231a2142a2a9a85355a8b9cbbccffe01a9c9c2c2fd8c2bc2987cdc481564a",
          "started_at": "2026-07-15T18:59:27Z",
          "output": {
            "repo_root": "D:\\Projects\\prd-plugin",
            "autonomy_level": "autonomous",
            "requests_by_status": {
              "deferred": 1,
              "implemented": 80,
              "proposed": 1,
              "rejected": 1
            },
            "active_tracking": [],
            "tracking_branches": [],
            "tracking_branch_counts": {},
            "tracking_branch_errors": [],
            "open_health": [],
            "stale_count": 0,
            "skill_usage": {
              "project-decision-policy": 1,
              "project-request-intake": 1,
              "project-test-driven-implementation": 1,
              "project-verification-before-completion": 1,
              "project-llm-wiki": 1
            },
            "wiki_backfill_pending": false,
            "version_update": null
          },
          "output_hash": "8ba9f7d3cc6705af37de9e3324d1258e21ccacb5ab0b2d7b389ca08885e11187",
          "completed_at": "2026-07-15T18:59:27Z"
        },
        {
          "id": "substrate",
          "action": "substrate.preflight",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-15T18:59:27Z",
          "output": {
            "status": "disabled",
            "services": {
              "status": "ok",
              "summary": {
                "critical": 0,
                "high": 0,
                "medium": 0,
                "low": 0
              },
              "findings": []
            },
            "policy": {
              "configured": {
                "enabled": false,
                "mode": "off",
                "capabilities": [
                  "records",
                  "graph",
                  "events"
                ],
                "contract_version": 2,
                "require_source_refs": true,
                "endpoint": "http://127.0.0.1:47124",
                "manual_url": "http://127.0.0.1:47124/utcp.json",
                "knowledge_browse_url": "http://127.0.0.1:5276",
                "auth_env": "AI_COLLAB_API_KEY",
                "timeout_seconds": 5,
                "max_result_bytes": 1048576,
                "cache_ttl_seconds": 60,
                "fallback": "local",
                "automation": {
                  "discovery_on_session_start": true,
                  "knowledge_recall": true,
                  "memory_recall": true,
                  "context_enrichment": true,
                  "notices_on_session_start": false,
                  "goals_sync": false,
                  "telemetry_on_maintenance": false,
                  "reporting_dispatch": true,
                  "judgment_dispatch": true,
                  "verification_execution": true
                }
              },
              "active": false,
              "effective_mode": "off",
              "effective_capabilities": []
            }
          },
          "output_hash": "a6df426290b4549a59eecaa0519ead9bcc50b7fcb25bd2185ff6047960f19ccb",
          "completed_at": "2026-07-15T18:59:27Z"
        },
        {
          "id": "notices",
          "action": "substrate.notices",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-15T18:59:27Z",
          "output": {
            "status": "disabled"
          },
          "output_hash": "38b904a1cf83df048360fb2480571b749fd98d57e11f1afdffb5a74a78166fea",
          "completed_at": "2026-07-15T18:59:27Z"
        },
        {
          "id": "goals",
          "action": "substrate.goals",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-15T18:59:27Z",
          "output": {
            "status": "disabled",
            "created": 0,
            "observed": 0,
            "results": []
          },
          "output_hash": "cdfd4de44a28140e686159f34f7b47975954c67e1d1efcef666e985acb136ed8",
          "completed_at": "2026-07-15T18:59:27Z"
        }
      ],
      "completed_at": "2026-07-15T18:59:27Z"
    },
    {
      "id": "WFR-184",
      "schema_version": "1.0",
      "workflow_id": "session.stop",
      "workflow_version": 1,
      "definition_hash": "0cef7bb3e28321be8f85375c154955a69310ce297e47de3f3b8dd48f77a2f07d",
      "plan_hash": "a5e1d77ac734217487fc418e29c7163f4e81178e25d171e70cd4c999d527d3e8",
      "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
      "inputs": {},
      "idempotency_key": "hook:Stop:019f6725-e278-7d10-a3f4-e3bf05c3a8b5",
      "status": "completed",
      "attempt": 1,
      "created_at": "2026-07-15T18:59:33Z",
      "updated_at": "2026-07-15T18:59:34Z",
      "receipts": [
        {
          "step_id": "state",
          "action": "state.consistency",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "5a1c6e5246defb1b6b6b90ff734db95bece2886b408ab112ed9b8e67222d5568",
          "completed_at": "2026-07-15T18:59:34Z"
        },
        {
          "step_id": "goals",
          "action": "substrate.goals",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "cdfd4de44a28140e686159f34f7b47975954c67e1d1efcef666e985acb136ed8",
          "completed_at": "2026-07-15T18:59:34Z"
        },
        {
          "step_id": "staleness",
          "action": "staleness.audit",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "1e81cb0ffd0a4d04626920a203b38d2d23a264cd43e807a85d375d69cae8a658",
          "completed_at": "2026-07-15T18:59:34Z"
        },
        {
          "step_id": "reflections",
          "action": "reflection.list",
          "input_hash": "0172e841ab4c13b3a4061f073f9d68a716ec87a8a5d52fde41823385e0582573",
          "output_hash": "c1b6b635c0bab21120657277f14ef6f839909875f307a3745fa48aee2bd6e449",
          "completed_at": "2026-07-15T18:59:34Z"
        },
        {
          "step_id": "bundle",
          "action": "reporting.bundle",
          "input_hash": "aed8ebb688dc3c085dd978d7c4120572173c3cb87e75919e4a937dcca6ef9457",
          "output_hash": "f61aa7bfac7c2e96e3bf2d3386a95e45d2db52d040f05aff9ea963197eacc3f6",
          "completed_at": "2026-07-15T18:59:34Z"
        },
        {
          "step_id": "delegated",
          "action": "reporting.delegate",
          "input_hash": "5bf4dfad88c9958da759cb1561ca5fdd8f3ac9050e938bfde85af5c8d804adc9",
          "output_hash": "e6085059f197def80ae95add1f328418107bea5436c9bd002530043646a3a95c",
          "completed_at": "2026-07-15T18:59:34Z"
        }
      ],
      "steps": [
        {
          "id": "state",
          "action": "state.consistency",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-15T18:59:33Z",
          "output": {
            "status": "ok",
            "repo_root": "D:\\Projects\\prd-plugin",
            "summary": {
              "errors": 0,
              "warnings": 0,
              "infos": 0
            },
            "findings": []
          },
          "output_hash": "5a1c6e5246defb1b6b6b90ff734db95bece2886b408ab112ed9b8e67222d5568",
          "completed_at": "2026-07-15T18:59:34Z"
        },
        {
          "id": "goals",
          "action": "substrate.goals",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-15T18:59:34Z",
          "output": {
            "status": "disabled",
            "created": 0,
            "observed": 0,
            "results": []
          },
          "output_hash": "cdfd4de44a28140e686159f34f7b47975954c67e1d1efcef666e985acb136ed8",
          "completed_at": "2026-07-15T18:59:34Z"
        },
        {
          "id": "staleness",
          "action": "staleness.audit",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-15T18:59:34Z",
          "output": {
            "status": "ok",
            "repo_root": "D:\\Projects\\prd-plugin",
            "counts": {
              "stale": 0
            },
            "stale": []
          },
          "output_hash": "1e81cb0ffd0a4d04626920a203b38d2d23a264cd43e807a85d375d69cae8a658",
          "completed_at": "2026-07-15T18:59:34Z"
        },
        {
          "id": "reflections",
          "action": "reflection.list",
          "status": "completed",
          "resolved_input_hash": "0172e841ab4c13b3a4061f073f9d68a716ec87a8a5d52fde41823385e0582573",
          "started_at": "2026-07-15T18:59:34Z",
          "output": {
            "enabled": false,
            "on_stop": true,
            "max_questions_per_stop": 5,
            "categories": [
              {
                "id": "behaviour_quality",
                "name": "Behaviour quality",
                "enabled": true,
                "question_count": 3
              },
              {
                "id": "harness_friction",
                "name": "Harness friction",
                "enabled": true,
                "question_count": 2
              }
            ],
            "questions": [
              {
                "id": "RFQ-001",
                "text": "Based on the work you just carried out, would you classify your behaviour as good? Answer yes or no and cite observable evidence.",
                "enabled": true,
                "category_id": "behaviour_quality",
                "category_name": "Behaviour quality",
                "effective_enabled": false
              },
              {
                "id": "RFQ-002",
                "text": "If you answered no, what could you do differently to correct your behaviour?",
                "enabled": true,
                "category_id": "behaviour_quality",
                "category_name": "Behaviour quality",
                "effective_enabled": false
              },
              {
                "id": "RFQ-003",
                "text": "Would another attempt using the identified good behaviours materially improve the outcome? Answer yes or no and state the next corrective action if yes.",
                "enabled": true,
                "category_id": "behaviour_quality",
                "category_name": "Behaviour quality",
                "effective_enabled": false
              },
              {
                "id": "RFQ-004",
                "text": "What harness friction points made this work more difficult?",
                "enabled": true,
                "category_id": "harness_friction",
                "category_name": "Harness friction",
                "effective_enabled": false
              },
              {
                "id": "RFQ-005",
                "text": "What up to three changes would most improve friction in the harness?",
                "enabled": true,
                "category_id": "harness_friction",
                "category_name": "Harness friction",
                "effective_enabled": false
              }
            ]
          },
          "output_hash": "c1b6b635c0bab21120657277f14ef6f839909875f307a3745fa48aee2bd6e449",
          "completed_at": "2026-07-15T18:59:34Z"
        },
        {
          "id": "bundle",
          "action": "reporting.bundle",
          "status": "completed",
          "resolved_input_hash": "aed8ebb688dc3c085dd978d7c4120572173c3cb87e75919e4a937dcca6ef9457",
          "started_at": "2026-07-15T18:59:34Z",
          "output": {
            "contract_version": 1,
            "task": "session_summary",
            "repo": "prd-plugin",
            "policy": {
              "enabled": false,
              "executor": "ai-collab",
              "contract_version": 1,
              "profile": "fast-capable",
              "tasks": [
                "report_summary",
                "session_summary",
                "wiki_synthesis",
                "triage_draft"
              ],
              "fallback": "main",
              "require_source_refs": true,
              "max_input_tokens": 12000,
              "max_output_tokens": 1500,
              "timeout_seconds": 30
            },
            "facts": {
              "requests_by_status": {
                "deferred": 1,
                "implemented": 80,
                "proposed": 1,
                "rejected": 1
              },
              "active_requests": [
                {
                  "id": "REQ-072",
                  "status": "proposed",
                  "severity": "low",
                  "summary": "opencode run-until-done: session.idle is a non-blocking notification, so the stop guard can't force continuation on opencode (currently degrades to a printed reminder, 0.5.95). Investigate whether opencode exposes any vetoable/continuation mechanism (a different event, a permission hook, or a 'continue' API) to enforce run-until-done, or accept the reminder as the permanent ceiling. Low priority — user rarely uses opencode."
                }
              ],
              "active_tracking": [],
              "open_health": [],
              "evidence_count": 105,
              "decision_count": 10
            },
            "findings": [],
            "source_refs": [
              ".prd_plugin/config.json",
              ".prd_plugin/state/decisions.json",
              ".prd_plugin/state/evidence.json",
              ".prd_plugin/state/health.json",
              ".prd_plugin/state/requests.json",
              ".prd_plugin/state/tracking.json",
              "REQ-072"
            ],
            "constraints": {
              "max_input_tokens": 12000,
              "max_output_tokens": 1500,
              "timeout_seconds": 30,
              "require_source_refs": true,
              "no_project_state_writes": true,
              "no_secrets_or_local_session_content": true
            }
          },
          "output_hash": "f61aa7bfac7c2e96e3bf2d3386a95e45d2db52d040f05aff9ea963197eacc3f6",
          "completed_at": "2026-07-15T18:59:34Z"
        },
        {
          "id": "delegated",
          "action": "reporting.delegate",
          "status": "completed",
          "resolved_input_hash": "5bf4dfad88c9958da759cb1561ca5fdd8f3ac9050e938bfde85af5c8d804adc9",
          "started_at": "2026-07-15T18:59:34Z",
          "output": {
            "status": "fallback",
            "action": "main",
            "reason": "disabled"
          },
          "output_hash": "e6085059f197def80ae95add1f328418107bea5436c9bd002530043646a3a95c",
          "completed_at": "2026-07-15T18:59:34Z"
        }
      ],
      "completed_at": "2026-07-15T18:59:34Z"
    },
    {
      "id": "WFR-185",
      "schema_version": "1.0",
      "workflow_id": "session.start",
      "workflow_version": 1,
      "definition_hash": "d0f98da02571e6dd27fec4aed92d3c82af9db75f8b90b997bf665635c7b7f6ca",
      "plan_hash": "b5072615ca3b7e9a3bd85d50d1f069d99ef2a9816b32c03a370745ed7a205536",
      "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
      "inputs": {},
      "idempotency_key": "hook:SessionStart:019f672e-85bf-7660-b982-56be4f50c584",
      "status": "completed",
      "attempt": 1,
      "created_at": "2026-07-15T19:08:53Z",
      "updated_at": "2026-07-15T19:08:54Z",
      "receipts": [
        {
          "step_id": "config",
          "action": "config.audit",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "3782ec2317c0c8ee7598634310a2804d8aae4735f557498f9d3b8fae7c45e1e5",
          "completed_at": "2026-07-15T19:08:53Z"
        },
        {
          "step_id": "services",
          "action": "services.audit",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "13dcc58bd528f3efa3e6e0fa0853a6eedc376f1f3685fbd4869cbb2b60382ee3",
          "completed_at": "2026-07-15T19:08:53Z"
        },
        {
          "step_id": "state",
          "action": "state.consistency",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "5a1c6e5246defb1b6b6b90ff734db95bece2886b408ab112ed9b8e67222d5568",
          "completed_at": "2026-07-15T19:08:54Z"
        },
        {
          "step_id": "status",
          "action": "state.query",
          "input_hash": "a15231a2142a2a9a85355a8b9cbbccffe01a9c9c2c2fd8c2bc2987cdc481564a",
          "output_hash": "8ba9f7d3cc6705af37de9e3324d1258e21ccacb5ab0b2d7b389ca08885e11187",
          "completed_at": "2026-07-15T19:08:54Z"
        },
        {
          "step_id": "substrate",
          "action": "substrate.preflight",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "a6df426290b4549a59eecaa0519ead9bcc50b7fcb25bd2185ff6047960f19ccb",
          "completed_at": "2026-07-15T19:08:54Z"
        },
        {
          "step_id": "notices",
          "action": "substrate.notices",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "38b904a1cf83df048360fb2480571b749fd98d57e11f1afdffb5a74a78166fea",
          "completed_at": "2026-07-15T19:08:54Z"
        },
        {
          "step_id": "goals",
          "action": "substrate.goals",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "cdfd4de44a28140e686159f34f7b47975954c67e1d1efcef666e985acb136ed8",
          "completed_at": "2026-07-15T19:08:54Z"
        }
      ],
      "steps": [
        {
          "id": "config",
          "action": "config.audit",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-15T19:08:53Z",
          "output": {
            "status": "ok",
            "summary": {
              "settings": 195,
              "mutable": 186,
              "read_only_or_managed": 9,
              "unclassified": 0,
              "unknown": 0,
              "invalid": 0,
              "missing_using_defaults": 0
            },
            "unclassified_keys": [],
            "unknown_keys": [],
            "invalid_values": [],
            "missing_using_defaults": []
          },
          "output_hash": "3782ec2317c0c8ee7598634310a2804d8aae4735f557498f9d3b8fae7c45e1e5",
          "completed_at": "2026-07-15T19:08:53Z"
        },
        {
          "id": "services",
          "action": "services.audit",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-15T19:08:53Z",
          "output": {
            "status": "ok",
            "summary": {
              "critical": 0,
              "high": 0,
              "medium": 0,
              "low": 0
            },
            "findings": []
          },
          "output_hash": "13dcc58bd528f3efa3e6e0fa0853a6eedc376f1f3685fbd4869cbb2b60382ee3",
          "completed_at": "2026-07-15T19:08:53Z"
        },
        {
          "id": "state",
          "action": "state.consistency",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-15T19:08:53Z",
          "output": {
            "status": "ok",
            "repo_root": "D:\\Projects\\prd-plugin",
            "summary": {
              "errors": 0,
              "warnings": 0,
              "infos": 0
            },
            "findings": []
          },
          "output_hash": "5a1c6e5246defb1b6b6b90ff734db95bece2886b408ab112ed9b8e67222d5568",
          "completed_at": "2026-07-15T19:08:54Z"
        },
        {
          "id": "status",
          "action": "state.query",
          "status": "completed",
          "resolved_input_hash": "a15231a2142a2a9a85355a8b9cbbccffe01a9c9c2c2fd8c2bc2987cdc481564a",
          "started_at": "2026-07-15T19:08:54Z",
          "output": {
            "repo_root": "D:\\Projects\\prd-plugin",
            "autonomy_level": "autonomous",
            "requests_by_status": {
              "deferred": 1,
              "implemented": 80,
              "proposed": 1,
              "rejected": 1
            },
            "active_tracking": [],
            "tracking_branches": [],
            "tracking_branch_counts": {},
            "tracking_branch_errors": [],
            "open_health": [],
            "stale_count": 0,
            "skill_usage": {
              "project-decision-policy": 1,
              "project-request-intake": 1,
              "project-test-driven-implementation": 1,
              "project-verification-before-completion": 1,
              "project-llm-wiki": 1
            },
            "wiki_backfill_pending": false,
            "version_update": null
          },
          "output_hash": "8ba9f7d3cc6705af37de9e3324d1258e21ccacb5ab0b2d7b389ca08885e11187",
          "completed_at": "2026-07-15T19:08:54Z"
        },
        {
          "id": "substrate",
          "action": "substrate.preflight",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-15T19:08:54Z",
          "output": {
            "status": "disabled",
            "services": {
              "status": "ok",
              "summary": {
                "critical": 0,
                "high": 0,
                "medium": 0,
                "low": 0
              },
              "findings": []
            },
            "policy": {
              "configured": {
                "enabled": false,
                "mode": "off",
                "capabilities": [
                  "records",
                  "graph",
                  "events"
                ],
                "contract_version": 2,
                "require_source_refs": true,
                "endpoint": "http://127.0.0.1:47124",
                "manual_url": "http://127.0.0.1:47124/utcp.json",
                "knowledge_browse_url": "http://127.0.0.1:5276",
                "auth_env": "AI_COLLAB_API_KEY",
                "timeout_seconds": 5,
                "max_result_bytes": 1048576,
                "cache_ttl_seconds": 60,
                "fallback": "local",
                "automation": {
                  "discovery_on_session_start": true,
                  "knowledge_recall": true,
                  "memory_recall": true,
                  "context_enrichment": true,
                  "notices_on_session_start": false,
                  "goals_sync": false,
                  "telemetry_on_maintenance": false,
                  "reporting_dispatch": true,
                  "judgment_dispatch": true,
                  "verification_execution": true
                }
              },
              "active": false,
              "effective_mode": "off",
              "effective_capabilities": []
            }
          },
          "output_hash": "a6df426290b4549a59eecaa0519ead9bcc50b7fcb25bd2185ff6047960f19ccb",
          "completed_at": "2026-07-15T19:08:54Z"
        },
        {
          "id": "notices",
          "action": "substrate.notices",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-15T19:08:54Z",
          "output": {
            "status": "disabled"
          },
          "output_hash": "38b904a1cf83df048360fb2480571b749fd98d57e11f1afdffb5a74a78166fea",
          "completed_at": "2026-07-15T19:08:54Z"
        },
        {
          "id": "goals",
          "action": "substrate.goals",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-15T19:08:54Z",
          "output": {
            "status": "disabled",
            "created": 0,
            "observed": 0,
            "results": []
          },
          "output_hash": "cdfd4de44a28140e686159f34f7b47975954c67e1d1efcef666e985acb136ed8",
          "completed_at": "2026-07-15T19:08:54Z"
        }
      ],
      "completed_at": "2026-07-15T19:08:54Z"
    },
    {
      "id": "WFR-186",
      "schema_version": "1.0",
      "workflow_id": "session.stop",
      "workflow_version": 1,
      "definition_hash": "0cef7bb3e28321be8f85375c154955a69310ce297e47de3f3b8dd48f77a2f07d",
      "plan_hash": "a5e1d77ac734217487fc418e29c7163f4e81178e25d171e70cd4c999d527d3e8",
      "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
      "inputs": {},
      "idempotency_key": "hook:Stop:019f672e-85bf-7660-b982-56be4f50c584",
      "status": "completed",
      "attempt": 1,
      "created_at": "2026-07-15T19:08:59Z",
      "updated_at": "2026-07-15T19:09:01Z",
      "receipts": [
        {
          "step_id": "state",
          "action": "state.consistency",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "5a1c6e5246defb1b6b6b90ff734db95bece2886b408ab112ed9b8e67222d5568",
          "completed_at": "2026-07-15T19:09:00Z"
        },
        {
          "step_id": "goals",
          "action": "substrate.goals",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "cdfd4de44a28140e686159f34f7b47975954c67e1d1efcef666e985acb136ed8",
          "completed_at": "2026-07-15T19:09:00Z"
        },
        {
          "step_id": "staleness",
          "action": "staleness.audit",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "1e81cb0ffd0a4d04626920a203b38d2d23a264cd43e807a85d375d69cae8a658",
          "completed_at": "2026-07-15T19:09:00Z"
        },
        {
          "step_id": "reflections",
          "action": "reflection.list",
          "input_hash": "0172e841ab4c13b3a4061f073f9d68a716ec87a8a5d52fde41823385e0582573",
          "output_hash": "c1b6b635c0bab21120657277f14ef6f839909875f307a3745fa48aee2bd6e449",
          "completed_at": "2026-07-15T19:09:00Z"
        },
        {
          "step_id": "bundle",
          "action": "reporting.bundle",
          "input_hash": "aed8ebb688dc3c085dd978d7c4120572173c3cb87e75919e4a937dcca6ef9457",
          "output_hash": "f61aa7bfac7c2e96e3bf2d3386a95e45d2db52d040f05aff9ea963197eacc3f6",
          "completed_at": "2026-07-15T19:09:00Z"
        },
        {
          "step_id": "delegated",
          "action": "reporting.delegate",
          "input_hash": "5bf4dfad88c9958da759cb1561ca5fdd8f3ac9050e938bfde85af5c8d804adc9",
          "output_hash": "e6085059f197def80ae95add1f328418107bea5436c9bd002530043646a3a95c",
          "completed_at": "2026-07-15T19:09:00Z"
        }
      ],
      "steps": [
        {
          "id": "state",
          "action": "state.consistency",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-15T19:08:59Z",
          "output": {
            "status": "ok",
            "repo_root": "D:\\Projects\\prd-plugin",
            "summary": {
              "errors": 0,
              "warnings": 0,
              "infos": 0
            },
            "findings": []
          },
          "output_hash": "5a1c6e5246defb1b6b6b90ff734db95bece2886b408ab112ed9b8e67222d5568",
          "completed_at": "2026-07-15T19:09:00Z"
        },
        {
          "id": "goals",
          "action": "substrate.goals",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-15T19:09:00Z",
          "output": {
            "status": "disabled",
            "created": 0,
            "observed": 0,
            "results": []
          },
          "output_hash": "cdfd4de44a28140e686159f34f7b47975954c67e1d1efcef666e985acb136ed8",
          "completed_at": "2026-07-15T19:09:00Z"
        },
        {
          "id": "staleness",
          "action": "staleness.audit",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-15T19:09:00Z",
          "output": {
            "status": "ok",
            "repo_root": "D:\\Projects\\prd-plugin",
            "counts": {
              "stale": 0
            },
            "stale": []
          },
          "output_hash": "1e81cb0ffd0a4d04626920a203b38d2d23a264cd43e807a85d375d69cae8a658",
          "completed_at": "2026-07-15T19:09:00Z"
        },
        {
          "id": "reflections",
          "action": "reflection.list",
          "status": "completed",
          "resolved_input_hash": "0172e841ab4c13b3a4061f073f9d68a716ec87a8a5d52fde41823385e0582573",
          "started_at": "2026-07-15T19:09:00Z",
          "output": {
            "enabled": false,
            "on_stop": true,
            "max_questions_per_stop": 5,
            "categories": [
              {
                "id": "behaviour_quality",
                "name": "Behaviour quality",
                "enabled": true,
                "question_count": 3
              },
              {
                "id": "harness_friction",
                "name": "Harness friction",
                "enabled": true,
                "question_count": 2
              }
            ],
            "questions": [
              {
                "id": "RFQ-001",
                "text": "Based on the work you just carried out, would you classify your behaviour as good? Answer yes or no and cite observable evidence.",
                "enabled": true,
                "category_id": "behaviour_quality",
                "category_name": "Behaviour quality",
                "effective_enabled": false
              },
              {
                "id": "RFQ-002",
                "text": "If you answered no, what could you do differently to correct your behaviour?",
                "enabled": true,
                "category_id": "behaviour_quality",
                "category_name": "Behaviour quality",
                "effective_enabled": false
              },
              {
                "id": "RFQ-003",
                "text": "Would another attempt using the identified good behaviours materially improve the outcome? Answer yes or no and state the next corrective action if yes.",
                "enabled": true,
                "category_id": "behaviour_quality",
                "category_name": "Behaviour quality",
                "effective_enabled": false
              },
              {
                "id": "RFQ-004",
                "text": "What harness friction points made this work more difficult?",
                "enabled": true,
                "category_id": "harness_friction",
                "category_name": "Harness friction",
                "effective_enabled": false
              },
              {
                "id": "RFQ-005",
                "text": "What up to three changes would most improve friction in the harness?",
                "enabled": true,
                "category_id": "harness_friction",
                "category_name": "Harness friction",
                "effective_enabled": false
              }
            ]
          },
          "output_hash": "c1b6b635c0bab21120657277f14ef6f839909875f307a3745fa48aee2bd6e449",
          "completed_at": "2026-07-15T19:09:00Z"
        },
        {
          "id": "bundle",
          "action": "reporting.bundle",
          "status": "completed",
          "resolved_input_hash": "aed8ebb688dc3c085dd978d7c4120572173c3cb87e75919e4a937dcca6ef9457",
          "started_at": "2026-07-15T19:09:00Z",
          "output": {
            "contract_version": 1,
            "task": "session_summary",
            "repo": "prd-plugin",
            "policy": {
              "enabled": false,
              "executor": "ai-collab",
              "contract_version": 1,
              "profile": "fast-capable",
              "tasks": [
                "report_summary",
                "session_summary",
                "wiki_synthesis",
                "triage_draft"
              ],
              "fallback": "main",
              "require_source_refs": true,
              "max_input_tokens": 12000,
              "max_output_tokens": 1500,
              "timeout_seconds": 30
            },
            "facts": {
              "requests_by_status": {
                "deferred": 1,
                "implemented": 80,
                "proposed": 1,
                "rejected": 1
              },
              "active_requests": [
                {
                  "id": "REQ-072",
                  "status": "proposed",
                  "severity": "low",
                  "summary": "opencode run-until-done: session.idle is a non-blocking notification, so the stop guard can't force continuation on opencode (currently degrades to a printed reminder, 0.5.95). Investigate whether opencode exposes any vetoable/continuation mechanism (a different event, a permission hook, or a 'continue' API) to enforce run-until-done, or accept the reminder as the permanent ceiling. Low priority — user rarely uses opencode."
                }
              ],
              "active_tracking": [],
              "open_health": [],
              "evidence_count": 105,
              "decision_count": 10
            },
            "findings": [],
            "source_refs": [
              ".prd_plugin/config.json",
              ".prd_plugin/state/decisions.json",
              ".prd_plugin/state/evidence.json",
              ".prd_plugin/state/health.json",
              ".prd_plugin/state/requests.json",
              ".prd_plugin/state/tracking.json",
              "REQ-072"
            ],
            "constraints": {
              "max_input_tokens": 12000,
              "max_output_tokens": 1500,
              "timeout_seconds": 30,
              "require_source_refs": true,
              "no_project_state_writes": true,
              "no_secrets_or_local_session_content": true
            }
          },
          "output_hash": "f61aa7bfac7c2e96e3bf2d3386a95e45d2db52d040f05aff9ea963197eacc3f6",
          "completed_at": "2026-07-15T19:09:00Z"
        },
        {
          "id": "delegated",
          "action": "reporting.delegate",
          "status": "completed",
          "resolved_input_hash": "5bf4dfad88c9958da759cb1561ca5fdd8f3ac9050e938bfde85af5c8d804adc9",
          "started_at": "2026-07-15T19:09:00Z",
          "output": {
            "status": "fallback",
            "action": "main",
            "reason": "disabled"
          },
          "output_hash": "e6085059f197def80ae95add1f328418107bea5436c9bd002530043646a3a95c",
          "completed_at": "2026-07-15T19:09:00Z"
        }
      ],
      "completed_at": "2026-07-15T19:09:01Z"
    },
    {
      "id": "WFR-187",
      "schema_version": "1.0",
      "workflow_id": "session.start",
      "workflow_version": 1,
      "definition_hash": "d0f98da02571e6dd27fec4aed92d3c82af9db75f8b90b997bf665635c7b7f6ca",
      "plan_hash": "b5072615ca3b7e9a3bd85d50d1f069d99ef2a9816b32c03a370745ed7a205536",
      "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
      "inputs": {},
      "idempotency_key": "hook:SessionStart:019f672f-64bc-78a2-abc6-0f627b429196",
      "status": "completed",
      "attempt": 1,
      "created_at": "2026-07-15T19:09:49Z",
      "updated_at": "2026-07-15T19:09:51Z",
      "receipts": [
        {
          "step_id": "config",
          "action": "config.audit",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "3782ec2317c0c8ee7598634310a2804d8aae4735f557498f9d3b8fae7c45e1e5",
          "completed_at": "2026-07-15T19:09:50Z"
        },
        {
          "step_id": "services",
          "action": "services.audit",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "13dcc58bd528f3efa3e6e0fa0853a6eedc376f1f3685fbd4869cbb2b60382ee3",
          "completed_at": "2026-07-15T19:09:50Z"
        },
        {
          "step_id": "state",
          "action": "state.consistency",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "5a1c6e5246defb1b6b6b90ff734db95bece2886b408ab112ed9b8e67222d5568",
          "completed_at": "2026-07-15T19:09:50Z"
        },
        {
          "step_id": "status",
          "action": "state.query",
          "input_hash": "a15231a2142a2a9a85355a8b9cbbccffe01a9c9c2c2fd8c2bc2987cdc481564a",
          "output_hash": "8ba9f7d3cc6705af37de9e3324d1258e21ccacb5ab0b2d7b389ca08885e11187",
          "completed_at": "2026-07-15T19:09:51Z"
        },
        {
          "step_id": "substrate",
          "action": "substrate.preflight",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "a6df426290b4549a59eecaa0519ead9bcc50b7fcb25bd2185ff6047960f19ccb",
          "completed_at": "2026-07-15T19:09:51Z"
        },
        {
          "step_id": "notices",
          "action": "substrate.notices",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "38b904a1cf83df048360fb2480571b749fd98d57e11f1afdffb5a74a78166fea",
          "completed_at": "2026-07-15T19:09:51Z"
        },
        {
          "step_id": "goals",
          "action": "substrate.goals",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "cdfd4de44a28140e686159f34f7b47975954c67e1d1efcef666e985acb136ed8",
          "completed_at": "2026-07-15T19:09:51Z"
        }
      ],
      "steps": [
        {
          "id": "config",
          "action": "config.audit",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-15T19:09:50Z",
          "output": {
            "status": "ok",
            "summary": {
              "settings": 195,
              "mutable": 186,
              "read_only_or_managed": 9,
              "unclassified": 0,
              "unknown": 0,
              "invalid": 0,
              "missing_using_defaults": 0
            },
            "unclassified_keys": [],
            "unknown_keys": [],
            "invalid_values": [],
            "missing_using_defaults": []
          },
          "output_hash": "3782ec2317c0c8ee7598634310a2804d8aae4735f557498f9d3b8fae7c45e1e5",
          "completed_at": "2026-07-15T19:09:50Z"
        },
        {
          "id": "services",
          "action": "services.audit",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-15T19:09:50Z",
          "output": {
            "status": "ok",
            "summary": {
              "critical": 0,
              "high": 0,
              "medium": 0,
              "low": 0
            },
            "findings": []
          },
          "output_hash": "13dcc58bd528f3efa3e6e0fa0853a6eedc376f1f3685fbd4869cbb2b60382ee3",
          "completed_at": "2026-07-15T19:09:50Z"
        },
        {
          "id": "state",
          "action": "state.consistency",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-15T19:09:50Z",
          "output": {
            "status": "ok",
            "repo_root": "D:\\Projects\\prd-plugin",
            "summary": {
              "errors": 0,
              "warnings": 0,
              "infos": 0
            },
            "findings": []
          },
          "output_hash": "5a1c6e5246defb1b6b6b90ff734db95bece2886b408ab112ed9b8e67222d5568",
          "completed_at": "2026-07-15T19:09:50Z"
        },
        {
          "id": "status",
          "action": "state.query",
          "status": "completed",
          "resolved_input_hash": "a15231a2142a2a9a85355a8b9cbbccffe01a9c9c2c2fd8c2bc2987cdc481564a",
          "started_at": "2026-07-15T19:09:50Z",
          "output": {
            "repo_root": "D:\\Projects\\prd-plugin",
            "autonomy_level": "autonomous",
            "requests_by_status": {
              "deferred": 1,
              "implemented": 80,
              "proposed": 1,
              "rejected": 1
            },
            "active_tracking": [],
            "tracking_branches": [],
            "tracking_branch_counts": {},
            "tracking_branch_errors": [],
            "open_health": [],
            "stale_count": 0,
            "skill_usage": {
              "project-decision-policy": 1,
              "project-request-intake": 1,
              "project-test-driven-implementation": 1,
              "project-verification-before-completion": 1,
              "project-llm-wiki": 1
            },
            "wiki_backfill_pending": false,
            "version_update": null
          },
          "output_hash": "8ba9f7d3cc6705af37de9e3324d1258e21ccacb5ab0b2d7b389ca08885e11187",
          "completed_at": "2026-07-15T19:09:51Z"
        },
        {
          "id": "substrate",
          "action": "substrate.preflight",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-15T19:09:51Z",
          "output": {
            "status": "disabled",
            "services": {
              "status": "ok",
              "summary": {
                "critical": 0,
                "high": 0,
                "medium": 0,
                "low": 0
              },
              "findings": []
            },
            "policy": {
              "configured": {
                "enabled": false,
                "mode": "off",
                "capabilities": [
                  "records",
                  "graph",
                  "events"
                ],
                "contract_version": 2,
                "require_source_refs": true,
                "endpoint": "http://127.0.0.1:47124",
                "manual_url": "http://127.0.0.1:47124/utcp.json",
                "knowledge_browse_url": "http://127.0.0.1:5276",
                "auth_env": "AI_COLLAB_API_KEY",
                "timeout_seconds": 5,
                "max_result_bytes": 1048576,
                "cache_ttl_seconds": 60,
                "fallback": "local",
                "automation": {
                  "discovery_on_session_start": true,
                  "knowledge_recall": true,
                  "memory_recall": true,
                  "context_enrichment": true,
                  "notices_on_session_start": false,
                  "goals_sync": false,
                  "telemetry_on_maintenance": false,
                  "reporting_dispatch": true,
                  "judgment_dispatch": true,
                  "verification_execution": true
                }
              },
              "active": false,
              "effective_mode": "off",
              "effective_capabilities": []
            }
          },
          "output_hash": "a6df426290b4549a59eecaa0519ead9bcc50b7fcb25bd2185ff6047960f19ccb",
          "completed_at": "2026-07-15T19:09:51Z"
        },
        {
          "id": "notices",
          "action": "substrate.notices",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-15T19:09:51Z",
          "output": {
            "status": "disabled"
          },
          "output_hash": "38b904a1cf83df048360fb2480571b749fd98d57e11f1afdffb5a74a78166fea",
          "completed_at": "2026-07-15T19:09:51Z"
        },
        {
          "id": "goals",
          "action": "substrate.goals",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-15T19:09:51Z",
          "output": {
            "status": "disabled",
            "created": 0,
            "observed": 0,
            "results": []
          },
          "output_hash": "cdfd4de44a28140e686159f34f7b47975954c67e1d1efcef666e985acb136ed8",
          "completed_at": "2026-07-15T19:09:51Z"
        }
      ],
      "completed_at": "2026-07-15T19:09:51Z"
    },
    {
      "id": "WFR-188",
      "schema_version": "1.0",
      "workflow_id": "session.stop",
      "workflow_version": 1,
      "definition_hash": "0cef7bb3e28321be8f85375c154955a69310ce297e47de3f3b8dd48f77a2f07d",
      "plan_hash": "a5e1d77ac734217487fc418e29c7163f4e81178e25d171e70cd4c999d527d3e8",
      "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
      "inputs": {},
      "idempotency_key": "hook:Stop:019f672f-64bc-78a2-abc6-0f627b429196",
      "status": "completed",
      "attempt": 1,
      "created_at": "2026-07-15T19:09:54Z",
      "updated_at": "2026-07-15T19:09:55Z",
      "receipts": [
        {
          "step_id": "state",
          "action": "state.consistency",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "5a1c6e5246defb1b6b6b90ff734db95bece2886b408ab112ed9b8e67222d5568",
          "completed_at": "2026-07-15T19:09:54Z"
        },
        {
          "step_id": "goals",
          "action": "substrate.goals",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "cdfd4de44a28140e686159f34f7b47975954c67e1d1efcef666e985acb136ed8",
          "completed_at": "2026-07-15T19:09:54Z"
        },
        {
          "step_id": "staleness",
          "action": "staleness.audit",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "1e81cb0ffd0a4d04626920a203b38d2d23a264cd43e807a85d375d69cae8a658",
          "completed_at": "2026-07-15T19:09:54Z"
        },
        {
          "step_id": "reflections",
          "action": "reflection.list",
          "input_hash": "0172e841ab4c13b3a4061f073f9d68a716ec87a8a5d52fde41823385e0582573",
          "output_hash": "c1b6b635c0bab21120657277f14ef6f839909875f307a3745fa48aee2bd6e449",
          "completed_at": "2026-07-15T19:09:55Z"
        },
        {
          "step_id": "bundle",
          "action": "reporting.bundle",
          "input_hash": "aed8ebb688dc3c085dd978d7c4120572173c3cb87e75919e4a937dcca6ef9457",
          "output_hash": "f61aa7bfac7c2e96e3bf2d3386a95e45d2db52d040f05aff9ea963197eacc3f6",
          "completed_at": "2026-07-15T19:09:55Z"
        },
        {
          "step_id": "delegated",
          "action": "reporting.delegate",
          "input_hash": "5bf4dfad88c9958da759cb1561ca5fdd8f3ac9050e938bfde85af5c8d804adc9",
          "output_hash": "e6085059f197def80ae95add1f328418107bea5436c9bd002530043646a3a95c",
          "completed_at": "2026-07-15T19:09:55Z"
        }
      ],
      "steps": [
        {
          "id": "state",
          "action": "state.consistency",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-15T19:09:54Z",
          "output": {
            "status": "ok",
            "repo_root": "D:\\Projects\\prd-plugin",
            "summary": {
              "errors": 0,
              "warnings": 0,
              "infos": 0
            },
            "findings": []
          },
          "output_hash": "5a1c6e5246defb1b6b6b90ff734db95bece2886b408ab112ed9b8e67222d5568",
          "completed_at": "2026-07-15T19:09:54Z"
        },
        {
          "id": "goals",
          "action": "substrate.goals",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-15T19:09:54Z",
          "output": {
            "status": "disabled",
            "created": 0,
            "observed": 0,
            "results": []
          },
          "output_hash": "cdfd4de44a28140e686159f34f7b47975954c67e1d1efcef666e985acb136ed8",
          "completed_at": "2026-07-15T19:09:54Z"
        },
        {
          "id": "staleness",
          "action": "staleness.audit",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-15T19:09:54Z",
          "output": {
            "status": "ok",
            "repo_root": "D:\\Projects\\prd-plugin",
            "counts": {
              "stale": 0
            },
            "stale": []
          },
          "output_hash": "1e81cb0ffd0a4d04626920a203b38d2d23a264cd43e807a85d375d69cae8a658",
          "completed_at": "2026-07-15T19:09:54Z"
        },
        {
          "id": "reflections",
          "action": "reflection.list",
          "status": "completed",
          "resolved_input_hash": "0172e841ab4c13b3a4061f073f9d68a716ec87a8a5d52fde41823385e0582573",
          "started_at": "2026-07-15T19:09:55Z",
          "output": {
            "enabled": false,
            "on_stop": true,
            "max_questions_per_stop": 5,
            "categories": [
              {
                "id": "behaviour_quality",
                "name": "Behaviour quality",
                "enabled": true,
                "question_count": 3
              },
              {
                "id": "harness_friction",
                "name": "Harness friction",
                "enabled": true,
                "question_count": 2
              }
            ],
            "questions": [
              {
                "id": "RFQ-001",
                "text": "Based on the work you just carried out, would you classify your behaviour as good? Answer yes or no and cite observable evidence.",
                "enabled": true,
                "category_id": "behaviour_quality",
                "category_name": "Behaviour quality",
                "effective_enabled": false
              },
              {
                "id": "RFQ-002",
                "text": "If you answered no, what could you do differently to correct your behaviour?",
                "enabled": true,
                "category_id": "behaviour_quality",
                "category_name": "Behaviour quality",
                "effective_enabled": false
              },
              {
                "id": "RFQ-003",
                "text": "Would another attempt using the identified good behaviours materially improve the outcome? Answer yes or no and state the next corrective action if yes.",
                "enabled": true,
                "category_id": "behaviour_quality",
                "category_name": "Behaviour quality",
                "effective_enabled": false
              },
              {
                "id": "RFQ-004",
                "text": "What harness friction points made this work more difficult?",
                "enabled": true,
                "category_id": "harness_friction",
                "category_name": "Harness friction",
                "effective_enabled": false
              },
              {
                "id": "RFQ-005",
                "text": "What up to three changes would most improve friction in the harness?",
                "enabled": true,
                "category_id": "harness_friction",
                "category_name": "Harness friction",
                "effective_enabled": false
              }
            ]
          },
          "output_hash": "c1b6b635c0bab21120657277f14ef6f839909875f307a3745fa48aee2bd6e449",
          "completed_at": "2026-07-15T19:09:55Z"
        },
        {
          "id": "bundle",
          "action": "reporting.bundle",
          "status": "completed",
          "resolved_input_hash": "aed8ebb688dc3c085dd978d7c4120572173c3cb87e75919e4a937dcca6ef9457",
          "started_at": "2026-07-15T19:09:55Z",
          "output": {
            "contract_version": 1,
            "task": "session_summary",
            "repo": "prd-plugin",
            "policy": {
              "enabled": false,
              "executor": "ai-collab",
              "contract_version": 1,
              "profile": "fast-capable",
              "tasks": [
                "report_summary",
                "session_summary",
                "wiki_synthesis",
                "triage_draft"
              ],
              "fallback": "main",
              "require_source_refs": true,
              "max_input_tokens": 12000,
              "max_output_tokens": 1500,
              "timeout_seconds": 30
            },
            "facts": {
              "requests_by_status": {
                "deferred": 1,
                "implemented": 80,
                "proposed": 1,
                "rejected": 1
              },
              "active_requests": [
                {
                  "id": "REQ-072",
                  "status": "proposed",
                  "severity": "low",
                  "summary": "opencode run-until-done: session.idle is a non-blocking notification, so the stop guard can't force continuation on opencode (currently degrades to a printed reminder, 0.5.95). Investigate whether opencode exposes any vetoable/continuation mechanism (a different event, a permission hook, or a 'continue' API) to enforce run-until-done, or accept the reminder as the permanent ceiling. Low priority — user rarely uses opencode."
                }
              ],
              "active_tracking": [],
              "open_health": [],
              "evidence_count": 105,
              "decision_count": 10
            },
            "findings": [],
            "source_refs": [
              ".prd_plugin/config.json",
              ".prd_plugin/state/decisions.json",
              ".prd_plugin/state/evidence.json",
              ".prd_plugin/state/health.json",
              ".prd_plugin/state/requests.json",
              ".prd_plugin/state/tracking.json",
              "REQ-072"
            ],
            "constraints": {
              "max_input_tokens": 12000,
              "max_output_tokens": 1500,
              "timeout_seconds": 30,
              "require_source_refs": true,
              "no_project_state_writes": true,
              "no_secrets_or_local_session_content": true
            }
          },
          "output_hash": "f61aa7bfac7c2e96e3bf2d3386a95e45d2db52d040f05aff9ea963197eacc3f6",
          "completed_at": "2026-07-15T19:09:55Z"
        },
        {
          "id": "delegated",
          "action": "reporting.delegate",
          "status": "completed",
          "resolved_input_hash": "5bf4dfad88c9958da759cb1561ca5fdd8f3ac9050e938bfde85af5c8d804adc9",
          "started_at": "2026-07-15T19:09:55Z",
          "output": {
            "status": "fallback",
            "action": "main",
            "reason": "disabled"
          },
          "output_hash": "e6085059f197def80ae95add1f328418107bea5436c9bd002530043646a3a95c",
          "completed_at": "2026-07-15T19:09:55Z"
        }
      ],
      "completed_at": "2026-07-15T19:09:55Z"
    },
    {
      "id": "WFR-189",
      "schema_version": "1.0",
      "workflow_id": "session.start",
      "workflow_version": 1,
      "definition_hash": "d0f98da02571e6dd27fec4aed92d3c82af9db75f8b90b997bf665635c7b7f6ca",
      "plan_hash": "b5072615ca3b7e9a3bd85d50d1f069d99ef2a9816b32c03a370745ed7a205536",
      "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
      "inputs": {},
      "idempotency_key": "hook:SessionStart:019f672f-d863-7c21-a3ef-e49fe59fd91a",
      "status": "completed",
      "attempt": 1,
      "created_at": "2026-07-15T19:10:48Z",
      "updated_at": "2026-07-15T19:10:49Z",
      "receipts": [
        {
          "step_id": "config",
          "action": "config.audit",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "3782ec2317c0c8ee7598634310a2804d8aae4735f557498f9d3b8fae7c45e1e5",
          "completed_at": "2026-07-15T19:10:48Z"
        },
        {
          "step_id": "services",
          "action": "services.audit",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "13dcc58bd528f3efa3e6e0fa0853a6eedc376f1f3685fbd4869cbb2b60382ee3",
          "completed_at": "2026-07-15T19:10:48Z"
        },
        {
          "step_id": "state",
          "action": "state.consistency",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "5a1c6e5246defb1b6b6b90ff734db95bece2886b408ab112ed9b8e67222d5568",
          "completed_at": "2026-07-15T19:10:49Z"
        },
        {
          "step_id": "status",
          "action": "state.query",
          "input_hash": "a15231a2142a2a9a85355a8b9cbbccffe01a9c9c2c2fd8c2bc2987cdc481564a",
          "output_hash": "8ba9f7d3cc6705af37de9e3324d1258e21ccacb5ab0b2d7b389ca08885e11187",
          "completed_at": "2026-07-15T19:10:49Z"
        },
        {
          "step_id": "substrate",
          "action": "substrate.preflight",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "a6df426290b4549a59eecaa0519ead9bcc50b7fcb25bd2185ff6047960f19ccb",
          "completed_at": "2026-07-15T19:10:49Z"
        },
        {
          "step_id": "notices",
          "action": "substrate.notices",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "38b904a1cf83df048360fb2480571b749fd98d57e11f1afdffb5a74a78166fea",
          "completed_at": "2026-07-15T19:10:49Z"
        },
        {
          "step_id": "goals",
          "action": "substrate.goals",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "cdfd4de44a28140e686159f34f7b47975954c67e1d1efcef666e985acb136ed8",
          "completed_at": "2026-07-15T19:10:49Z"
        }
      ],
      "steps": [
        {
          "id": "config",
          "action": "config.audit",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-15T19:10:48Z",
          "output": {
            "status": "ok",
            "summary": {
              "settings": 195,
              "mutable": 186,
              "read_only_or_managed": 9,
              "unclassified": 0,
              "unknown": 0,
              "invalid": 0,
              "missing_using_defaults": 0
            },
            "unclassified_keys": [],
            "unknown_keys": [],
            "invalid_values": [],
            "missing_using_defaults": []
          },
          "output_hash": "3782ec2317c0c8ee7598634310a2804d8aae4735f557498f9d3b8fae7c45e1e5",
          "completed_at": "2026-07-15T19:10:48Z"
        },
        {
          "id": "services",
          "action": "services.audit",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-15T19:10:48Z",
          "output": {
            "status": "ok",
            "summary": {
              "critical": 0,
              "high": 0,
              "medium": 0,
              "low": 0
            },
            "findings": []
          },
          "output_hash": "13dcc58bd528f3efa3e6e0fa0853a6eedc376f1f3685fbd4869cbb2b60382ee3",
          "completed_at": "2026-07-15T19:10:48Z"
        },
        {
          "id": "state",
          "action": "state.consistency",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-15T19:10:48Z",
          "output": {
            "status": "ok",
            "repo_root": "D:\\Projects\\prd-plugin",
            "summary": {
              "errors": 0,
              "warnings": 0,
              "infos": 0
            },
            "findings": []
          },
          "output_hash": "5a1c6e5246defb1b6b6b90ff734db95bece2886b408ab112ed9b8e67222d5568",
          "completed_at": "2026-07-15T19:10:49Z"
        },
        {
          "id": "status",
          "action": "state.query",
          "status": "completed",
          "resolved_input_hash": "a15231a2142a2a9a85355a8b9cbbccffe01a9c9c2c2fd8c2bc2987cdc481564a",
          "started_at": "2026-07-15T19:10:49Z",
          "output": {
            "repo_root": "D:\\Projects\\prd-plugin",
            "autonomy_level": "autonomous",
            "requests_by_status": {
              "deferred": 1,
              "implemented": 80,
              "proposed": 1,
              "rejected": 1
            },
            "active_tracking": [],
            "tracking_branches": [],
            "tracking_branch_counts": {},
            "tracking_branch_errors": [],
            "open_health": [],
            "stale_count": 0,
            "skill_usage": {
              "project-decision-policy": 1,
              "project-request-intake": 1,
              "project-test-driven-implementation": 1,
              "project-verification-before-completion": 1,
              "project-llm-wiki": 1
            },
            "wiki_backfill_pending": false,
            "version_update": null
          },
          "output_hash": "8ba9f7d3cc6705af37de9e3324d1258e21ccacb5ab0b2d7b389ca08885e11187",
          "completed_at": "2026-07-15T19:10:49Z"
        },
        {
          "id": "substrate",
          "action": "substrate.preflight",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-15T19:10:49Z",
          "output": {
            "status": "disabled",
            "services": {
              "status": "ok",
              "summary": {
                "critical": 0,
                "high": 0,
                "medium": 0,
                "low": 0
              },
              "findings": []
            },
            "policy": {
              "configured": {
                "enabled": false,
                "mode": "off",
                "capabilities": [
                  "records",
                  "graph",
                  "events"
                ],
                "contract_version": 2,
                "require_source_refs": true,
                "endpoint": "http://127.0.0.1:47124",
                "manual_url": "http://127.0.0.1:47124/utcp.json",
                "knowledge_browse_url": "http://127.0.0.1:5276",
                "auth_env": "AI_COLLAB_API_KEY",
                "timeout_seconds": 5,
                "max_result_bytes": 1048576,
                "cache_ttl_seconds": 60,
                "fallback": "local",
                "automation": {
                  "discovery_on_session_start": true,
                  "knowledge_recall": true,
                  "memory_recall": true,
                  "context_enrichment": true,
                  "notices_on_session_start": false,
                  "goals_sync": false,
                  "telemetry_on_maintenance": false,
                  "reporting_dispatch": true,
                  "judgment_dispatch": true,
                  "verification_execution": true
                }
              },
              "active": false,
              "effective_mode": "off",
              "effective_capabilities": []
            }
          },
          "output_hash": "a6df426290b4549a59eecaa0519ead9bcc50b7fcb25bd2185ff6047960f19ccb",
          "completed_at": "2026-07-15T19:10:49Z"
        },
        {
          "id": "notices",
          "action": "substrate.notices",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-15T19:10:49Z",
          "output": {
            "status": "disabled"
          },
          "output_hash": "38b904a1cf83df048360fb2480571b749fd98d57e11f1afdffb5a74a78166fea",
          "completed_at": "2026-07-15T19:10:49Z"
        },
        {
          "id": "goals",
          "action": "substrate.goals",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-15T19:10:49Z",
          "output": {
            "status": "disabled",
            "created": 0,
            "observed": 0,
            "results": []
          },
          "output_hash": "cdfd4de44a28140e686159f34f7b47975954c67e1d1efcef666e985acb136ed8",
          "completed_at": "2026-07-15T19:10:49Z"
        }
      ],
      "completed_at": "2026-07-15T19:10:49Z"
    },
    {
      "id": "WFR-190",
      "schema_version": "1.0",
      "workflow_id": "session.stop",
      "workflow_version": 1,
      "definition_hash": "0cef7bb3e28321be8f85375c154955a69310ce297e47de3f3b8dd48f77a2f07d",
      "plan_hash": "a5e1d77ac734217487fc418e29c7163f4e81178e25d171e70cd4c999d527d3e8",
      "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
      "inputs": {},
      "idempotency_key": "hook:Stop:019f672f-d863-7c21-a3ef-e49fe59fd91a",
      "status": "completed",
      "attempt": 1,
      "created_at": "2026-07-15T19:10:52Z",
      "updated_at": "2026-07-15T19:10:53Z",
      "receipts": [
        {
          "step_id": "state",
          "action": "state.consistency",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "5a1c6e5246defb1b6b6b90ff734db95bece2886b408ab112ed9b8e67222d5568",
          "completed_at": "2026-07-15T19:10:52Z"
        },
        {
          "step_id": "goals",
          "action": "substrate.goals",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "cdfd4de44a28140e686159f34f7b47975954c67e1d1efcef666e985acb136ed8",
          "completed_at": "2026-07-15T19:10:52Z"
        },
        {
          "step_id": "staleness",
          "action": "staleness.audit",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "1e81cb0ffd0a4d04626920a203b38d2d23a264cd43e807a85d375d69cae8a658",
          "completed_at": "2026-07-15T19:10:52Z"
        },
        {
          "step_id": "reflections",
          "action": "reflection.list",
          "input_hash": "0172e841ab4c13b3a4061f073f9d68a716ec87a8a5d52fde41823385e0582573",
          "output_hash": "c1b6b635c0bab21120657277f14ef6f839909875f307a3745fa48aee2bd6e449",
          "completed_at": "2026-07-15T19:10:53Z"
        },
        {
          "step_id": "bundle",
          "action": "reporting.bundle",
          "input_hash": "aed8ebb688dc3c085dd978d7c4120572173c3cb87e75919e4a937dcca6ef9457",
          "output_hash": "f61aa7bfac7c2e96e3bf2d3386a95e45d2db52d040f05aff9ea963197eacc3f6",
          "completed_at": "2026-07-15T19:10:53Z"
        },
        {
          "step_id": "delegated",
          "action": "reporting.delegate",
          "input_hash": "5bf4dfad88c9958da759cb1561ca5fdd8f3ac9050e938bfde85af5c8d804adc9",
          "output_hash": "e6085059f197def80ae95add1f328418107bea5436c9bd002530043646a3a95c",
          "completed_at": "2026-07-15T19:10:53Z"
        }
      ],
      "steps": [
        {
          "id": "state",
          "action": "state.consistency",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-15T19:10:52Z",
          "output": {
            "status": "ok",
            "repo_root": "D:\\Projects\\prd-plugin",
            "summary": {
              "errors": 0,
              "warnings": 0,
              "infos": 0
            },
            "findings": []
          },
          "output_hash": "5a1c6e5246defb1b6b6b90ff734db95bece2886b408ab112ed9b8e67222d5568",
          "completed_at": "2026-07-15T19:10:52Z"
        },
        {
          "id": "goals",
          "action": "substrate.goals",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-15T19:10:52Z",
          "output": {
            "status": "disabled",
            "created": 0,
            "observed": 0,
            "results": []
          },
          "output_hash": "cdfd4de44a28140e686159f34f7b47975954c67e1d1efcef666e985acb136ed8",
          "completed_at": "2026-07-15T19:10:52Z"
        },
        {
          "id": "staleness",
          "action": "staleness.audit",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-15T19:10:52Z",
          "output": {
            "status": "ok",
            "repo_root": "D:\\Projects\\prd-plugin",
            "counts": {
              "stale": 0
            },
            "stale": []
          },
          "output_hash": "1e81cb0ffd0a4d04626920a203b38d2d23a264cd43e807a85d375d69cae8a658",
          "completed_at": "2026-07-15T19:10:52Z"
        },
        {
          "id": "reflections",
          "action": "reflection.list",
          "status": "completed",
          "resolved_input_hash": "0172e841ab4c13b3a4061f073f9d68a716ec87a8a5d52fde41823385e0582573",
          "started_at": "2026-07-15T19:10:53Z",
          "output": {
            "enabled": false,
            "on_stop": true,
            "max_questions_per_stop": 5,
            "categories": [
              {
                "id": "behaviour_quality",
                "name": "Behaviour quality",
                "enabled": true,
                "question_count": 3
              },
              {
                "id": "harness_friction",
                "name": "Harness friction",
                "enabled": true,
                "question_count": 2
              }
            ],
            "questions": [
              {
                "id": "RFQ-001",
                "text": "Based on the work you just carried out, would you classify your behaviour as good? Answer yes or no and cite observable evidence.",
                "enabled": true,
                "category_id": "behaviour_quality",
                "category_name": "Behaviour quality",
                "effective_enabled": false
              },
              {
                "id": "RFQ-002",
                "text": "If you answered no, what could you do differently to correct your behaviour?",
                "enabled": true,
                "category_id": "behaviour_quality",
                "category_name": "Behaviour quality",
                "effective_enabled": false
              },
              {
                "id": "RFQ-003",
                "text": "Would another attempt using the identified good behaviours materially improve the outcome? Answer yes or no and state the next corrective action if yes.",
                "enabled": true,
                "category_id": "behaviour_quality",
                "category_name": "Behaviour quality",
                "effective_enabled": false
              },
              {
                "id": "RFQ-004",
                "text": "What harness friction points made this work more difficult?",
                "enabled": true,
                "category_id": "harness_friction",
                "category_name": "Harness friction",
                "effective_enabled": false
              },
              {
                "id": "RFQ-005",
                "text": "What up to three changes would most improve friction in the harness?",
                "enabled": true,
                "category_id": "harness_friction",
                "category_name": "Harness friction",
                "effective_enabled": false
              }
            ]
          },
          "output_hash": "c1b6b635c0bab21120657277f14ef6f839909875f307a3745fa48aee2bd6e449",
          "completed_at": "2026-07-15T19:10:53Z"
        },
        {
          "id": "bundle",
          "action": "reporting.bundle",
          "status": "completed",
          "resolved_input_hash": "aed8ebb688dc3c085dd978d7c4120572173c3cb87e75919e4a937dcca6ef9457",
          "started_at": "2026-07-15T19:10:53Z",
          "output": {
            "contract_version": 1,
            "task": "session_summary",
            "repo": "prd-plugin",
            "policy": {
              "enabled": false,
              "executor": "ai-collab",
              "contract_version": 1,
              "profile": "fast-capable",
              "tasks": [
                "report_summary",
                "session_summary",
                "wiki_synthesis",
                "triage_draft"
              ],
              "fallback": "main",
              "require_source_refs": true,
              "max_input_tokens": 12000,
              "max_output_tokens": 1500,
              "timeout_seconds": 30
            },
            "facts": {
              "requests_by_status": {
                "deferred": 1,
                "implemented": 80,
                "proposed": 1,
                "rejected": 1
              },
              "active_requests": [
                {
                  "id": "REQ-072",
                  "status": "proposed",
                  "severity": "low",
                  "summary": "opencode run-until-done: session.idle is a non-blocking notification, so the stop guard can't force continuation on opencode (currently degrades to a printed reminder, 0.5.95). Investigate whether opencode exposes any vetoable/continuation mechanism (a different event, a permission hook, or a 'continue' API) to enforce run-until-done, or accept the reminder as the permanent ceiling. Low priority — user rarely uses opencode."
                }
              ],
              "active_tracking": [],
              "open_health": [],
              "evidence_count": 105,
              "decision_count": 10
            },
            "findings": [],
            "source_refs": [
              ".prd_plugin/config.json",
              ".prd_plugin/state/decisions.json",
              ".prd_plugin/state/evidence.json",
              ".prd_plugin/state/health.json",
              ".prd_plugin/state/requests.json",
              ".prd_plugin/state/tracking.json",
              "REQ-072"
            ],
            "constraints": {
              "max_input_tokens": 12000,
              "max_output_tokens": 1500,
              "timeout_seconds": 30,
              "require_source_refs": true,
              "no_project_state_writes": true,
              "no_secrets_or_local_session_content": true
            }
          },
          "output_hash": "f61aa7bfac7c2e96e3bf2d3386a95e45d2db52d040f05aff9ea963197eacc3f6",
          "completed_at": "2026-07-15T19:10:53Z"
        },
        {
          "id": "delegated",
          "action": "reporting.delegate",
          "status": "completed",
          "resolved_input_hash": "5bf4dfad88c9958da759cb1561ca5fdd8f3ac9050e938bfde85af5c8d804adc9",
          "started_at": "2026-07-15T19:10:53Z",
          "output": {
            "status": "fallback",
            "action": "main",
            "reason": "disabled"
          },
          "output_hash": "e6085059f197def80ae95add1f328418107bea5436c9bd002530043646a3a95c",
          "completed_at": "2026-07-15T19:10:53Z"
        }
      ],
      "completed_at": "2026-07-15T19:10:53Z"
    },
    {
      "id": "WFR-191",
      "schema_version": "1.0",
      "workflow_id": "session.start",
      "workflow_version": 1,
      "definition_hash": "d0f98da02571e6dd27fec4aed92d3c82af9db75f8b90b997bf665635c7b7f6ca",
      "plan_hash": "b5072615ca3b7e9a3bd85d50d1f069d99ef2a9816b32c03a370745ed7a205536",
      "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
      "inputs": {},
      "idempotency_key": "hook:SessionStart:019f674b-b203-7fd1-919c-86e2d6615baf",
      "status": "completed",
      "attempt": 1,
      "created_at": "2026-07-15T19:40:46Z",
      "updated_at": "2026-07-15T19:40:51Z",
      "receipts": [
        {
          "step_id": "config",
          "action": "config.audit",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "3782ec2317c0c8ee7598634310a2804d8aae4735f557498f9d3b8fae7c45e1e5",
          "completed_at": "2026-07-15T19:40:47Z"
        },
        {
          "step_id": "services",
          "action": "services.audit",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "13dcc58bd528f3efa3e6e0fa0853a6eedc376f1f3685fbd4869cbb2b60382ee3",
          "completed_at": "2026-07-15T19:40:47Z"
        },
        {
          "step_id": "state",
          "action": "state.consistency",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "5a1c6e5246defb1b6b6b90ff734db95bece2886b408ab112ed9b8e67222d5568",
          "completed_at": "2026-07-15T19:40:49Z"
        },
        {
          "step_id": "status",
          "action": "state.query",
          "input_hash": "a15231a2142a2a9a85355a8b9cbbccffe01a9c9c2c2fd8c2bc2987cdc481564a",
          "output_hash": "8ba9f7d3cc6705af37de9e3324d1258e21ccacb5ab0b2d7b389ca08885e11187",
          "completed_at": "2026-07-15T19:40:50Z"
        },
        {
          "step_id": "substrate",
          "action": "substrate.preflight",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "a6df426290b4549a59eecaa0519ead9bcc50b7fcb25bd2185ff6047960f19ccb",
          "completed_at": "2026-07-15T19:40:50Z"
        },
        {
          "step_id": "notices",
          "action": "substrate.notices",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "38b904a1cf83df048360fb2480571b749fd98d57e11f1afdffb5a74a78166fea",
          "completed_at": "2026-07-15T19:40:50Z"
        },
        {
          "step_id": "goals",
          "action": "substrate.goals",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "cdfd4de44a28140e686159f34f7b47975954c67e1d1efcef666e985acb136ed8",
          "completed_at": "2026-07-15T19:40:51Z"
        }
      ],
      "steps": [
        {
          "id": "config",
          "action": "config.audit",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-15T19:40:47Z",
          "output": {
            "status": "ok",
            "summary": {
              "settings": 195,
              "mutable": 186,
              "read_only_or_managed": 9,
              "unclassified": 0,
              "unknown": 0,
              "invalid": 0,
              "missing_using_defaults": 0
            },
            "unclassified_keys": [],
            "unknown_keys": [],
            "invalid_values": [],
            "missing_using_defaults": []
          },
          "output_hash": "3782ec2317c0c8ee7598634310a2804d8aae4735f557498f9d3b8fae7c45e1e5",
          "completed_at": "2026-07-15T19:40:47Z"
        },
        {
          "id": "services",
          "action": "services.audit",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-15T19:40:47Z",
          "output": {
            "status": "ok",
            "summary": {
              "critical": 0,
              "high": 0,
              "medium": 0,
              "low": 0
            },
            "findings": []
          },
          "output_hash": "13dcc58bd528f3efa3e6e0fa0853a6eedc376f1f3685fbd4869cbb2b60382ee3",
          "completed_at": "2026-07-15T19:40:47Z"
        },
        {
          "id": "state",
          "action": "state.consistency",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-15T19:40:47Z",
          "output": {
            "status": "ok",
            "repo_root": "D:\\Projects\\prd-plugin",
            "summary": {
              "errors": 0,
              "warnings": 0,
              "infos": 0
            },
            "findings": []
          },
          "output_hash": "5a1c6e5246defb1b6b6b90ff734db95bece2886b408ab112ed9b8e67222d5568",
          "completed_at": "2026-07-15T19:40:49Z"
        },
        {
          "id": "status",
          "action": "state.query",
          "status": "completed",
          "resolved_input_hash": "a15231a2142a2a9a85355a8b9cbbccffe01a9c9c2c2fd8c2bc2987cdc481564a",
          "started_at": "2026-07-15T19:40:49Z",
          "output": {
            "repo_root": "D:\\Projects\\prd-plugin",
            "autonomy_level": "autonomous",
            "requests_by_status": {
              "deferred": 1,
              "implemented": 80,
              "proposed": 1,
              "rejected": 1
            },
            "active_tracking": [],
            "tracking_branches": [],
            "tracking_branch_counts": {},
            "tracking_branch_errors": [],
            "open_health": [],
            "stale_count": 0,
            "skill_usage": {
              "project-decision-policy": 1,
              "project-request-intake": 1,
              "project-test-driven-implementation": 1,
              "project-verification-before-completion": 1,
              "project-llm-wiki": 1
            },
            "wiki_backfill_pending": false,
            "version_update": null
          },
          "output_hash": "8ba9f7d3cc6705af37de9e3324d1258e21ccacb5ab0b2d7b389ca08885e11187",
          "completed_at": "2026-07-15T19:40:50Z"
        },
        {
          "id": "substrate",
          "action": "substrate.preflight",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-15T19:40:50Z",
          "output": {
            "status": "disabled",
            "services": {
              "status": "ok",
              "summary": {
                "critical": 0,
                "high": 0,
                "medium": 0,
                "low": 0
              },
              "findings": []
            },
            "policy": {
              "configured": {
                "enabled": false,
                "mode": "off",
                "capabilities": [
                  "records",
                  "graph",
                  "events"
                ],
                "contract_version": 2,
                "require_source_refs": true,
                "endpoint": "http://127.0.0.1:47124",
                "manual_url": "http://127.0.0.1:47124/utcp.json",
                "knowledge_browse_url": "http://127.0.0.1:5276",
                "auth_env": "AI_COLLAB_API_KEY",
                "timeout_seconds": 5,
                "max_result_bytes": 1048576,
                "cache_ttl_seconds": 60,
                "fallback": "local",
                "automation": {
                  "discovery_on_session_start": true,
                  "knowledge_recall": true,
                  "memory_recall": true,
                  "context_enrichment": true,
                  "notices_on_session_start": false,
                  "goals_sync": false,
                  "telemetry_on_maintenance": false,
                  "reporting_dispatch": true,
                  "judgment_dispatch": true,
                  "verification_execution": true
                }
              },
              "active": false,
              "effective_mode": "off",
              "effective_capabilities": []
            }
          },
          "output_hash": "a6df426290b4549a59eecaa0519ead9bcc50b7fcb25bd2185ff6047960f19ccb",
          "completed_at": "2026-07-15T19:40:50Z"
        },
        {
          "id": "notices",
          "action": "substrate.notices",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-15T19:40:50Z",
          "output": {
            "status": "disabled"
          },
          "output_hash": "38b904a1cf83df048360fb2480571b749fd98d57e11f1afdffb5a74a78166fea",
          "completed_at": "2026-07-15T19:40:50Z"
        },
        {
          "id": "goals",
          "action": "substrate.goals",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-15T19:40:50Z",
          "output": {
            "status": "disabled",
            "created": 0,
            "observed": 0,
            "results": []
          },
          "output_hash": "cdfd4de44a28140e686159f34f7b47975954c67e1d1efcef666e985acb136ed8",
          "completed_at": "2026-07-15T19:40:51Z"
        }
      ],
      "completed_at": "2026-07-15T19:40:51Z"
    },
    {
      "id": "WFR-192",
      "schema_version": "1.0",
      "workflow_id": "session.stop",
      "workflow_version": 1,
      "definition_hash": "0cef7bb3e28321be8f85375c154955a69310ce297e47de3f3b8dd48f77a2f07d",
      "plan_hash": "a5e1d77ac734217487fc418e29c7163f4e81178e25d171e70cd4c999d527d3e8",
      "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
      "inputs": {},
      "idempotency_key": "hook:Stop:019f674b-b203-7fd1-919c-86e2d6615baf",
      "status": "completed",
      "attempt": 1,
      "created_at": "2026-07-15T19:41:02Z",
      "updated_at": "2026-07-15T19:41:05Z",
      "receipts": [
        {
          "step_id": "state",
          "action": "state.consistency",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "5a1c6e5246defb1b6b6b90ff734db95bece2886b408ab112ed9b8e67222d5568",
          "completed_at": "2026-07-15T19:41:04Z"
        },
        {
          "step_id": "goals",
          "action": "substrate.goals",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "cdfd4de44a28140e686159f34f7b47975954c67e1d1efcef666e985acb136ed8",
          "completed_at": "2026-07-15T19:41:04Z"
        },
        {
          "step_id": "staleness",
          "action": "staleness.audit",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "1e81cb0ffd0a4d04626920a203b38d2d23a264cd43e807a85d375d69cae8a658",
          "completed_at": "2026-07-15T19:41:04Z"
        },
        {
          "step_id": "reflections",
          "action": "reflection.list",
          "input_hash": "0172e841ab4c13b3a4061f073f9d68a716ec87a8a5d52fde41823385e0582573",
          "output_hash": "c1b6b635c0bab21120657277f14ef6f839909875f307a3745fa48aee2bd6e449",
          "completed_at": "2026-07-15T19:41:04Z"
        },
        {
          "step_id": "bundle",
          "action": "reporting.bundle",
          "input_hash": "aed8ebb688dc3c085dd978d7c4120572173c3cb87e75919e4a937dcca6ef9457",
          "output_hash": "f61aa7bfac7c2e96e3bf2d3386a95e45d2db52d040f05aff9ea963197eacc3f6",
          "completed_at": "2026-07-15T19:41:04Z"
        },
        {
          "step_id": "delegated",
          "action": "reporting.delegate",
          "input_hash": "5bf4dfad88c9958da759cb1561ca5fdd8f3ac9050e938bfde85af5c8d804adc9",
          "output_hash": "e6085059f197def80ae95add1f328418107bea5436c9bd002530043646a3a95c",
          "completed_at": "2026-07-15T19:41:05Z"
        }
      ],
      "steps": [
        {
          "id": "state",
          "action": "state.consistency",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-15T19:41:02Z",
          "output": {
            "status": "ok",
            "repo_root": "D:\\Projects\\prd-plugin",
            "summary": {
              "errors": 0,
              "warnings": 0,
              "infos": 0
            },
            "findings": []
          },
          "output_hash": "5a1c6e5246defb1b6b6b90ff734db95bece2886b408ab112ed9b8e67222d5568",
          "completed_at": "2026-07-15T19:41:04Z"
        },
        {
          "id": "goals",
          "action": "substrate.goals",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-15T19:41:04Z",
          "output": {
            "status": "disabled",
            "created": 0,
            "observed": 0,
            "results": []
          },
          "output_hash": "cdfd4de44a28140e686159f34f7b47975954c67e1d1efcef666e985acb136ed8",
          "completed_at": "2026-07-15T19:41:04Z"
        },
        {
          "id": "staleness",
          "action": "staleness.audit",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-15T19:41:04Z",
          "output": {
            "status": "ok",
            "repo_root": "D:\\Projects\\prd-plugin",
            "counts": {
              "stale": 0
            },
            "stale": []
          },
          "output_hash": "1e81cb0ffd0a4d04626920a203b38d2d23a264cd43e807a85d375d69cae8a658",
          "completed_at": "2026-07-15T19:41:04Z"
        },
        {
          "id": "reflections",
          "action": "reflection.list",
          "status": "completed",
          "resolved_input_hash": "0172e841ab4c13b3a4061f073f9d68a716ec87a8a5d52fde41823385e0582573",
          "started_at": "2026-07-15T19:41:04Z",
          "output": {
            "enabled": false,
            "on_stop": true,
            "max_questions_per_stop": 5,
            "categories": [
              {
                "id": "behaviour_quality",
                "name": "Behaviour quality",
                "enabled": true,
                "question_count": 3
              },
              {
                "id": "harness_friction",
                "name": "Harness friction",
                "enabled": true,
                "question_count": 2
              }
            ],
            "questions": [
              {
                "id": "RFQ-001",
                "text": "Based on the work you just carried out, would you classify your behaviour as good? Answer yes or no and cite observable evidence.",
                "enabled": true,
                "category_id": "behaviour_quality",
                "category_name": "Behaviour quality",
                "effective_enabled": false
              },
              {
                "id": "RFQ-002",
                "text": "If you answered no, what could you do differently to correct your behaviour?",
                "enabled": true,
                "category_id": "behaviour_quality",
                "category_name": "Behaviour quality",
                "effective_enabled": false
              },
              {
                "id": "RFQ-003",
                "text": "Would another attempt using the identified good behaviours materially improve the outcome? Answer yes or no and state the next corrective action if yes.",
                "enabled": true,
                "category_id": "behaviour_quality",
                "category_name": "Behaviour quality",
                "effective_enabled": false
              },
              {
                "id": "RFQ-004",
                "text": "What harness friction points made this work more difficult?",
                "enabled": true,
                "category_id": "harness_friction",
                "category_name": "Harness friction",
                "effective_enabled": false
              },
              {
                "id": "RFQ-005",
                "text": "What up to three changes would most improve friction in the harness?",
                "enabled": true,
                "category_id": "harness_friction",
                "category_name": "Harness friction",
                "effective_enabled": false
              }
            ]
          },
          "output_hash": "c1b6b635c0bab21120657277f14ef6f839909875f307a3745fa48aee2bd6e449",
          "completed_at": "2026-07-15T19:41:04Z"
        },
        {
          "id": "bundle",
          "action": "reporting.bundle",
          "status": "completed",
          "resolved_input_hash": "aed8ebb688dc3c085dd978d7c4120572173c3cb87e75919e4a937dcca6ef9457",
          "started_at": "2026-07-15T19:41:04Z",
          "output": {
            "contract_version": 1,
            "task": "session_summary",
            "repo": "prd-plugin",
            "policy": {
              "enabled": false,
              "executor": "ai-collab",
              "contract_version": 1,
              "profile": "fast-capable",
              "tasks": [
                "report_summary",
                "session_summary",
                "wiki_synthesis",
                "triage_draft"
              ],
              "fallback": "main",
              "require_source_refs": true,
              "max_input_tokens": 12000,
              "max_output_tokens": 1500,
              "timeout_seconds": 30
            },
            "facts": {
              "requests_by_status": {
                "deferred": 1,
                "implemented": 80,
                "proposed": 1,
                "rejected": 1
              },
              "active_requests": [
                {
                  "id": "REQ-072",
                  "status": "proposed",
                  "severity": "low",
                  "summary": "opencode run-until-done: session.idle is a non-blocking notification, so the stop guard can't force continuation on opencode (currently degrades to a printed reminder, 0.5.95). Investigate whether opencode exposes any vetoable/continuation mechanism (a different event, a permission hook, or a 'continue' API) to enforce run-until-done, or accept the reminder as the permanent ceiling. Low priority — user rarely uses opencode."
                }
              ],
              "active_tracking": [],
              "open_health": [],
              "evidence_count": 105,
              "decision_count": 10
            },
            "findings": [],
            "source_refs": [
              ".prd_plugin/config.json",
              ".prd_plugin/state/decisions.json",
              ".prd_plugin/state/evidence.json",
              ".prd_plugin/state/health.json",
              ".prd_plugin/state/requests.json",
              ".prd_plugin/state/tracking.json",
              "REQ-072"
            ],
            "constraints": {
              "max_input_tokens": 12000,
              "max_output_tokens": 1500,
              "timeout_seconds": 30,
              "require_source_refs": true,
              "no_project_state_writes": true,
              "no_secrets_or_local_session_content": true
            }
          },
          "output_hash": "f61aa7bfac7c2e96e3bf2d3386a95e45d2db52d040f05aff9ea963197eacc3f6",
          "completed_at": "2026-07-15T19:41:04Z"
        },
        {
          "id": "delegated",
          "action": "reporting.delegate",
          "status": "completed",
          "resolved_input_hash": "5bf4dfad88c9958da759cb1561ca5fdd8f3ac9050e938bfde85af5c8d804adc9",
          "started_at": "2026-07-15T19:41:04Z",
          "output": {
            "status": "fallback",
            "action": "main",
            "reason": "disabled"
          },
          "output_hash": "e6085059f197def80ae95add1f328418107bea5436c9bd002530043646a3a95c",
          "completed_at": "2026-07-15T19:41:05Z"
        }
      ],
      "completed_at": "2026-07-15T19:41:05Z"
    },
    {
      "id": "WFR-193",
      "schema_version": "1.0",
      "workflow_id": "session.start",
      "workflow_version": 1,
      "definition_hash": "d0f98da02571e6dd27fec4aed92d3c82af9db75f8b90b997bf665635c7b7f6ca",
      "plan_hash": "b5072615ca3b7e9a3bd85d50d1f069d99ef2a9816b32c03a370745ed7a205536",
      "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
      "inputs": {},
      "idempotency_key": "hook:SessionStart:019f674c-f4a4-7e23-b45e-f0c727785f6a",
      "status": "completed",
      "attempt": 1,
      "created_at": "2026-07-15T19:42:09Z",
      "updated_at": "2026-07-15T19:42:12Z",
      "receipts": [
        {
          "step_id": "config",
          "action": "config.audit",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "3782ec2317c0c8ee7598634310a2804d8aae4735f557498f9d3b8fae7c45e1e5",
          "completed_at": "2026-07-15T19:42:09Z"
        },
        {
          "step_id": "services",
          "action": "services.audit",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "13dcc58bd528f3efa3e6e0fa0853a6eedc376f1f3685fbd4869cbb2b60382ee3",
          "completed_at": "2026-07-15T19:42:09Z"
        },
        {
          "step_id": "state",
          "action": "state.consistency",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "5a1c6e5246defb1b6b6b90ff734db95bece2886b408ab112ed9b8e67222d5568",
          "completed_at": "2026-07-15T19:42:11Z"
        },
        {
          "step_id": "status",
          "action": "state.query",
          "input_hash": "a15231a2142a2a9a85355a8b9cbbccffe01a9c9c2c2fd8c2bc2987cdc481564a",
          "output_hash": "8ba9f7d3cc6705af37de9e3324d1258e21ccacb5ab0b2d7b389ca08885e11187",
          "completed_at": "2026-07-15T19:42:11Z"
        },
        {
          "step_id": "substrate",
          "action": "substrate.preflight",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "a6df426290b4549a59eecaa0519ead9bcc50b7fcb25bd2185ff6047960f19ccb",
          "completed_at": "2026-07-15T19:42:12Z"
        },
        {
          "step_id": "notices",
          "action": "substrate.notices",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "38b904a1cf83df048360fb2480571b749fd98d57e11f1afdffb5a74a78166fea",
          "completed_at": "2026-07-15T19:42:12Z"
        },
        {
          "step_id": "goals",
          "action": "substrate.goals",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "cdfd4de44a28140e686159f34f7b47975954c67e1d1efcef666e985acb136ed8",
          "completed_at": "2026-07-15T19:42:12Z"
        }
      ],
      "steps": [
        {
          "id": "config",
          "action": "config.audit",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-15T19:42:09Z",
          "output": {
            "status": "ok",
            "summary": {
              "settings": 195,
              "mutable": 186,
              "read_only_or_managed": 9,
              "unclassified": 0,
              "unknown": 0,
              "invalid": 0,
              "missing_using_defaults": 0
            },
            "unclassified_keys": [],
            "unknown_keys": [],
            "invalid_values": [],
            "missing_using_defaults": []
          },
          "output_hash": "3782ec2317c0c8ee7598634310a2804d8aae4735f557498f9d3b8fae7c45e1e5",
          "completed_at": "2026-07-15T19:42:09Z"
        },
        {
          "id": "services",
          "action": "services.audit",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-15T19:42:09Z",
          "output": {
            "status": "ok",
            "summary": {
              "critical": 0,
              "high": 0,
              "medium": 0,
              "low": 0
            },
            "findings": []
          },
          "output_hash": "13dcc58bd528f3efa3e6e0fa0853a6eedc376f1f3685fbd4869cbb2b60382ee3",
          "completed_at": "2026-07-15T19:42:09Z"
        },
        {
          "id": "state",
          "action": "state.consistency",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-15T19:42:10Z",
          "output": {
            "status": "ok",
            "repo_root": "D:\\Projects\\prd-plugin",
            "summary": {
              "errors": 0,
              "warnings": 0,
              "infos": 0
            },
            "findings": []
          },
          "output_hash": "5a1c6e5246defb1b6b6b90ff734db95bece2886b408ab112ed9b8e67222d5568",
          "completed_at": "2026-07-15T19:42:11Z"
        },
        {
          "id": "status",
          "action": "state.query",
          "status": "completed",
          "resolved_input_hash": "a15231a2142a2a9a85355a8b9cbbccffe01a9c9c2c2fd8c2bc2987cdc481564a",
          "started_at": "2026-07-15T19:42:11Z",
          "output": {
            "repo_root": "D:\\Projects\\prd-plugin",
            "autonomy_level": "autonomous",
            "requests_by_status": {
              "deferred": 1,
              "implemented": 80,
              "proposed": 1,
              "rejected": 1
            },
            "active_tracking": [],
            "tracking_branches": [],
            "tracking_branch_counts": {},
            "tracking_branch_errors": [],
            "open_health": [],
            "stale_count": 0,
            "skill_usage": {
              "project-decision-policy": 1,
              "project-request-intake": 1,
              "project-test-driven-implementation": 1,
              "project-verification-before-completion": 1,
              "project-llm-wiki": 1
            },
            "wiki_backfill_pending": false,
            "version_update": null
          },
          "output_hash": "8ba9f7d3cc6705af37de9e3324d1258e21ccacb5ab0b2d7b389ca08885e11187",
          "completed_at": "2026-07-15T19:42:11Z"
        },
        {
          "id": "substrate",
          "action": "substrate.preflight",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-15T19:42:12Z",
          "output": {
            "status": "disabled",
            "services": {
              "status": "ok",
              "summary": {
                "critical": 0,
                "high": 0,
                "medium": 0,
                "low": 0
              },
              "findings": []
            },
            "policy": {
              "configured": {
                "enabled": false,
                "mode": "off",
                "capabilities": [
                  "records",
                  "graph",
                  "events"
                ],
                "contract_version": 2,
                "require_source_refs": true,
                "endpoint": "http://127.0.0.1:47124",
                "manual_url": "http://127.0.0.1:47124/utcp.json",
                "knowledge_browse_url": "http://127.0.0.1:5276",
                "auth_env": "AI_COLLAB_API_KEY",
                "timeout_seconds": 5,
                "max_result_bytes": 1048576,
                "cache_ttl_seconds": 60,
                "fallback": "local",
                "automation": {
                  "discovery_on_session_start": true,
                  "knowledge_recall": true,
                  "memory_recall": true,
                  "context_enrichment": true,
                  "notices_on_session_start": false,
                  "goals_sync": false,
                  "telemetry_on_maintenance": false,
                  "reporting_dispatch": true,
                  "judgment_dispatch": true,
                  "verification_execution": true
                }
              },
              "active": false,
              "effective_mode": "off",
              "effective_capabilities": []
            }
          },
          "output_hash": "a6df426290b4549a59eecaa0519ead9bcc50b7fcb25bd2185ff6047960f19ccb",
          "completed_at": "2026-07-15T19:42:12Z"
        },
        {
          "id": "notices",
          "action": "substrate.notices",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-15T19:42:12Z",
          "output": {
            "status": "disabled"
          },
          "output_hash": "38b904a1cf83df048360fb2480571b749fd98d57e11f1afdffb5a74a78166fea",
          "completed_at": "2026-07-15T19:42:12Z"
        },
        {
          "id": "goals",
          "action": "substrate.goals",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-15T19:42:12Z",
          "output": {
            "status": "disabled",
            "created": 0,
            "observed": 0,
            "results": []
          },
          "output_hash": "cdfd4de44a28140e686159f34f7b47975954c67e1d1efcef666e985acb136ed8",
          "completed_at": "2026-07-15T19:42:12Z"
        }
      ],
      "completed_at": "2026-07-15T19:42:12Z"
    },
    {
      "id": "WFR-194",
      "schema_version": "1.0",
      "workflow_id": "session.stop",
      "workflow_version": 1,
      "definition_hash": "0cef7bb3e28321be8f85375c154955a69310ce297e47de3f3b8dd48f77a2f07d",
      "plan_hash": "a5e1d77ac734217487fc418e29c7163f4e81178e25d171e70cd4c999d527d3e8",
      "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
      "inputs": {},
      "idempotency_key": "hook:Stop:019f674c-f4a4-7e23-b45e-f0c727785f6a",
      "status": "completed",
      "attempt": 1,
      "created_at": "2026-07-15T19:42:17Z",
      "updated_at": "2026-07-15T19:42:21Z",
      "receipts": [
        {
          "step_id": "state",
          "action": "state.consistency",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "5a1c6e5246defb1b6b6b90ff734db95bece2886b408ab112ed9b8e67222d5568",
          "completed_at": "2026-07-15T19:42:19Z"
        },
        {
          "step_id": "goals",
          "action": "substrate.goals",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "cdfd4de44a28140e686159f34f7b47975954c67e1d1efcef666e985acb136ed8",
          "completed_at": "2026-07-15T19:42:20Z"
        },
        {
          "step_id": "staleness",
          "action": "staleness.audit",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "1e81cb0ffd0a4d04626920a203b38d2d23a264cd43e807a85d375d69cae8a658",
          "completed_at": "2026-07-15T19:42:20Z"
        },
        {
          "step_id": "reflections",
          "action": "reflection.list",
          "input_hash": "0172e841ab4c13b3a4061f073f9d68a716ec87a8a5d52fde41823385e0582573",
          "output_hash": "c1b6b635c0bab21120657277f14ef6f839909875f307a3745fa48aee2bd6e449",
          "completed_at": "2026-07-15T19:42:20Z"
        },
        {
          "step_id": "bundle",
          "action": "reporting.bundle",
          "input_hash": "aed8ebb688dc3c085dd978d7c4120572173c3cb87e75919e4a937dcca6ef9457",
          "output_hash": "f61aa7bfac7c2e96e3bf2d3386a95e45d2db52d040f05aff9ea963197eacc3f6",
          "completed_at": "2026-07-15T19:42:20Z"
        },
        {
          "step_id": "delegated",
          "action": "reporting.delegate",
          "input_hash": "5bf4dfad88c9958da759cb1561ca5fdd8f3ac9050e938bfde85af5c8d804adc9",
          "output_hash": "e6085059f197def80ae95add1f328418107bea5436c9bd002530043646a3a95c",
          "completed_at": "2026-07-15T19:42:21Z"
        }
      ],
      "steps": [
        {
          "id": "state",
          "action": "state.consistency",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-15T19:42:18Z",
          "output": {
            "status": "ok",
            "repo_root": "D:\\Projects\\prd-plugin",
            "summary": {
              "errors": 0,
              "warnings": 0,
              "infos": 0
            },
            "findings": []
          },
          "output_hash": "5a1c6e5246defb1b6b6b90ff734db95bece2886b408ab112ed9b8e67222d5568",
          "completed_at": "2026-07-15T19:42:19Z"
        },
        {
          "id": "goals",
          "action": "substrate.goals",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-15T19:42:20Z",
          "output": {
            "status": "disabled",
            "created": 0,
            "observed": 0,
            "results": []
          },
          "output_hash": "cdfd4de44a28140e686159f34f7b47975954c67e1d1efcef666e985acb136ed8",
          "completed_at": "2026-07-15T19:42:20Z"
        },
        {
          "id": "staleness",
          "action": "staleness.audit",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-15T19:42:20Z",
          "output": {
            "status": "ok",
            "repo_root": "D:\\Projects\\prd-plugin",
            "counts": {
              "stale": 0
            },
            "stale": []
          },
          "output_hash": "1e81cb0ffd0a4d04626920a203b38d2d23a264cd43e807a85d375d69cae8a658",
          "completed_at": "2026-07-15T19:42:20Z"
        },
        {
          "id": "reflections",
          "action": "reflection.list",
          "status": "completed",
          "resolved_input_hash": "0172e841ab4c13b3a4061f073f9d68a716ec87a8a5d52fde41823385e0582573",
          "started_at": "2026-07-15T19:42:20Z",
          "output": {
            "enabled": false,
            "on_stop": true,
            "max_questions_per_stop": 5,
            "categories": [
              {
                "id": "behaviour_quality",
                "name": "Behaviour quality",
                "enabled": true,
                "question_count": 3
              },
              {
                "id": "harness_friction",
                "name": "Harness friction",
                "enabled": true,
                "question_count": 2
              }
            ],
            "questions": [
              {
                "id": "RFQ-001",
                "text": "Based on the work you just carried out, would you classify your behaviour as good? Answer yes or no and cite observable evidence.",
                "enabled": true,
                "category_id": "behaviour_quality",
                "category_name": "Behaviour quality",
                "effective_enabled": false
              },
              {
                "id": "RFQ-002",
                "text": "If you answered no, what could you do differently to correct your behaviour?",
                "enabled": true,
                "category_id": "behaviour_quality",
                "category_name": "Behaviour quality",
                "effective_enabled": false
              },
              {
                "id": "RFQ-003",
                "text": "Would another attempt using the identified good behaviours materially improve the outcome? Answer yes or no and state the next corrective action if yes.",
                "enabled": true,
                "category_id": "behaviour_quality",
                "category_name": "Behaviour quality",
                "effective_enabled": false
              },
              {
                "id": "RFQ-004",
                "text": "What harness friction points made this work more difficult?",
                "enabled": true,
                "category_id": "harness_friction",
                "category_name": "Harness friction",
                "effective_enabled": false
              },
              {
                "id": "RFQ-005",
                "text": "What up to three changes would most improve friction in the harness?",
                "enabled": true,
                "category_id": "harness_friction",
                "category_name": "Harness friction",
                "effective_enabled": false
              }
            ]
          },
          "output_hash": "c1b6b635c0bab21120657277f14ef6f839909875f307a3745fa48aee2bd6e449",
          "completed_at": "2026-07-15T19:42:20Z"
        },
        {
          "id": "bundle",
          "action": "reporting.bundle",
          "status": "completed",
          "resolved_input_hash": "aed8ebb688dc3c085dd978d7c4120572173c3cb87e75919e4a937dcca6ef9457",
          "started_at": "2026-07-15T19:42:20Z",
          "output": {
            "contract_version": 1,
            "task": "session_summary",
            "repo": "prd-plugin",
            "policy": {
              "enabled": false,
              "executor": "ai-collab",
              "contract_version": 1,
              "profile": "fast-capable",
              "tasks": [
                "report_summary",
                "session_summary",
                "wiki_synthesis",
                "triage_draft"
              ],
              "fallback": "main",
              "require_source_refs": true,
              "max_input_tokens": 12000,
              "max_output_tokens": 1500,
              "timeout_seconds": 30
            },
            "facts": {
              "requests_by_status": {
                "deferred": 1,
                "implemented": 80,
                "proposed": 1,
                "rejected": 1
              },
              "active_requests": [
                {
                  "id": "REQ-072",
                  "status": "proposed",
                  "severity": "low",
                  "summary": "opencode run-until-done: session.idle is a non-blocking notification, so the stop guard can't force continuation on opencode (currently degrades to a printed reminder, 0.5.95). Investigate whether opencode exposes any vetoable/continuation mechanism (a different event, a permission hook, or a 'continue' API) to enforce run-until-done, or accept the reminder as the permanent ceiling. Low priority — user rarely uses opencode."
                }
              ],
              "active_tracking": [],
              "open_health": [],
              "evidence_count": 105,
              "decision_count": 10
            },
            "findings": [],
            "source_refs": [
              ".prd_plugin/config.json",
              ".prd_plugin/state/decisions.json",
              ".prd_plugin/state/evidence.json",
              ".prd_plugin/state/health.json",
              ".prd_plugin/state/requests.json",
              ".prd_plugin/state/tracking.json",
              "REQ-072"
            ],
            "constraints": {
              "max_input_tokens": 12000,
              "max_output_tokens": 1500,
              "timeout_seconds": 30,
              "require_source_refs": true,
              "no_project_state_writes": true,
              "no_secrets_or_local_session_content": true
            }
          },
          "output_hash": "f61aa7bfac7c2e96e3bf2d3386a95e45d2db52d040f05aff9ea963197eacc3f6",
          "completed_at": "2026-07-15T19:42:20Z"
        },
        {
          "id": "delegated",
          "action": "reporting.delegate",
          "status": "completed",
          "resolved_input_hash": "5bf4dfad88c9958da759cb1561ca5fdd8f3ac9050e938bfde85af5c8d804adc9",
          "started_at": "2026-07-15T19:42:21Z",
          "output": {
            "status": "fallback",
            "action": "main",
            "reason": "disabled"
          },
          "output_hash": "e6085059f197def80ae95add1f328418107bea5436c9bd002530043646a3a95c",
          "completed_at": "2026-07-15T19:42:21Z"
        }
      ],
      "completed_at": "2026-07-15T19:42:21Z"
    },
    {
      "id": "WFR-195",
      "schema_version": "1.0",
      "workflow_id": "session.start",
      "workflow_version": 1,
      "definition_hash": "d0f98da02571e6dd27fec4aed92d3c82af9db75f8b90b997bf665635c7b7f6ca",
      "plan_hash": "b5072615ca3b7e9a3bd85d50d1f069d99ef2a9816b32c03a370745ed7a205536",
      "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
      "inputs": {},
      "idempotency_key": "hook:SessionStart:019f6758-5176-75c3-a633-4933db387c7d",
      "status": "completed",
      "attempt": 1,
      "created_at": "2026-07-15T19:54:35Z",
      "updated_at": "2026-07-15T19:54:40Z",
      "receipts": [
        {
          "step_id": "config",
          "action": "config.audit",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "3782ec2317c0c8ee7598634310a2804d8aae4735f557498f9d3b8fae7c45e1e5",
          "completed_at": "2026-07-15T19:54:35Z"
        },
        {
          "step_id": "services",
          "action": "services.audit",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "13dcc58bd528f3efa3e6e0fa0853a6eedc376f1f3685fbd4869cbb2b60382ee3",
          "completed_at": "2026-07-15T19:54:35Z"
        },
        {
          "step_id": "state",
          "action": "state.consistency",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "5a1c6e5246defb1b6b6b90ff734db95bece2886b408ab112ed9b8e67222d5568",
          "completed_at": "2026-07-15T19:54:37Z"
        },
        {
          "step_id": "status",
          "action": "state.query",
          "input_hash": "a15231a2142a2a9a85355a8b9cbbccffe01a9c9c2c2fd8c2bc2987cdc481564a",
          "output_hash": "8ba9f7d3cc6705af37de9e3324d1258e21ccacb5ab0b2d7b389ca08885e11187",
          "completed_at": "2026-07-15T19:54:38Z"
        },
        {
          "step_id": "substrate",
          "action": "substrate.preflight",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "a6df426290b4549a59eecaa0519ead9bcc50b7fcb25bd2185ff6047960f19ccb",
          "completed_at": "2026-07-15T19:54:38Z"
        },
        {
          "step_id": "notices",
          "action": "substrate.notices",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "38b904a1cf83df048360fb2480571b749fd98d57e11f1afdffb5a74a78166fea",
          "completed_at": "2026-07-15T19:54:39Z"
        },
        {
          "step_id": "goals",
          "action": "substrate.goals",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "cdfd4de44a28140e686159f34f7b47975954c67e1d1efcef666e985acb136ed8",
          "completed_at": "2026-07-15T19:54:39Z"
        }
      ],
      "steps": [
        {
          "id": "config",
          "action": "config.audit",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-15T19:54:35Z",
          "output": {
            "status": "ok",
            "summary": {
              "settings": 195,
              "mutable": 186,
              "read_only_or_managed": 9,
              "unclassified": 0,
              "unknown": 0,
              "invalid": 0,
              "missing_using_defaults": 0
            },
            "unclassified_keys": [],
            "unknown_keys": [],
            "invalid_values": [],
            "missing_using_defaults": []
          },
          "output_hash": "3782ec2317c0c8ee7598634310a2804d8aae4735f557498f9d3b8fae7c45e1e5",
          "completed_at": "2026-07-15T19:54:35Z"
        },
        {
          "id": "services",
          "action": "services.audit",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-15T19:54:35Z",
          "output": {
            "status": "ok",
            "summary": {
              "critical": 0,
              "high": 0,
              "medium": 0,
              "low": 0
            },
            "findings": []
          },
          "output_hash": "13dcc58bd528f3efa3e6e0fa0853a6eedc376f1f3685fbd4869cbb2b60382ee3",
          "completed_at": "2026-07-15T19:54:35Z"
        },
        {
          "id": "state",
          "action": "state.consistency",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-15T19:54:35Z",
          "output": {
            "status": "ok",
            "repo_root": "D:\\Projects\\prd-plugin",
            "summary": {
              "errors": 0,
              "warnings": 0,
              "infos": 0
            },
            "findings": []
          },
          "output_hash": "5a1c6e5246defb1b6b6b90ff734db95bece2886b408ab112ed9b8e67222d5568",
          "completed_at": "2026-07-15T19:54:37Z"
        },
        {
          "id": "status",
          "action": "state.query",
          "status": "completed",
          "resolved_input_hash": "a15231a2142a2a9a85355a8b9cbbccffe01a9c9c2c2fd8c2bc2987cdc481564a",
          "started_at": "2026-07-15T19:54:37Z",
          "output": {
            "repo_root": "D:\\Projects\\prd-plugin",
            "autonomy_level": "autonomous",
            "requests_by_status": {
              "deferred": 1,
              "implemented": 80,
              "proposed": 1,
              "rejected": 1
            },
            "active_tracking": [],
            "tracking_branches": [],
            "tracking_branch_counts": {},
            "tracking_branch_errors": [],
            "open_health": [],
            "stale_count": 0,
            "skill_usage": {
              "project-decision-policy": 1,
              "project-request-intake": 1,
              "project-test-driven-implementation": 1,
              "project-verification-before-completion": 1,
              "project-llm-wiki": 1
            },
            "wiki_backfill_pending": false,
            "version_update": null
          },
          "output_hash": "8ba9f7d3cc6705af37de9e3324d1258e21ccacb5ab0b2d7b389ca08885e11187",
          "completed_at": "2026-07-15T19:54:38Z"
        },
        {
          "id": "substrate",
          "action": "substrate.preflight",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-15T19:54:38Z",
          "output": {
            "status": "disabled",
            "services": {
              "status": "ok",
              "summary": {
                "critical": 0,
                "high": 0,
                "medium": 0,
                "low": 0
              },
              "findings": []
            },
            "policy": {
              "configured": {
                "enabled": false,
                "mode": "off",
                "capabilities": [
                  "records",
                  "graph",
                  "events"
                ],
                "contract_version": 2,
                "require_source_refs": true,
                "endpoint": "http://127.0.0.1:47124",
                "manual_url": "http://127.0.0.1:47124/utcp.json",
                "knowledge_browse_url": "http://127.0.0.1:5276",
                "auth_env": "AI_COLLAB_API_KEY",
                "timeout_seconds": 5,
                "max_result_bytes": 1048576,
                "cache_ttl_seconds": 60,
                "fallback": "local",
                "automation": {
                  "discovery_on_session_start": true,
                  "knowledge_recall": true,
                  "memory_recall": true,
                  "context_enrichment": true,
                  "notices_on_session_start": false,
                  "goals_sync": false,
                  "telemetry_on_maintenance": false,
                  "reporting_dispatch": true,
                  "judgment_dispatch": true,
                  "verification_execution": true
                }
              },
              "active": false,
              "effective_mode": "off",
              "effective_capabilities": []
            }
          },
          "output_hash": "a6df426290b4549a59eecaa0519ead9bcc50b7fcb25bd2185ff6047960f19ccb",
          "completed_at": "2026-07-15T19:54:38Z"
        },
        {
          "id": "notices",
          "action": "substrate.notices",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-15T19:54:39Z",
          "output": {
            "status": "disabled"
          },
          "output_hash": "38b904a1cf83df048360fb2480571b749fd98d57e11f1afdffb5a74a78166fea",
          "completed_at": "2026-07-15T19:54:39Z"
        },
        {
          "id": "goals",
          "action": "substrate.goals",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-15T19:54:39Z",
          "output": {
            "status": "disabled",
            "created": 0,
            "observed": 0,
            "results": []
          },
          "output_hash": "cdfd4de44a28140e686159f34f7b47975954c67e1d1efcef666e985acb136ed8",
          "completed_at": "2026-07-15T19:54:39Z"
        }
      ],
      "completed_at": "2026-07-15T19:54:40Z"
    },
    {
      "id": "WFR-196",
      "schema_version": "1.0",
      "workflow_id": "session.stop",
      "workflow_version": 1,
      "definition_hash": "0cef7bb3e28321be8f85375c154955a69310ce297e47de3f3b8dd48f77a2f07d",
      "plan_hash": "a5e1d77ac734217487fc418e29c7163f4e81178e25d171e70cd4c999d527d3e8",
      "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
      "inputs": {},
      "idempotency_key": "hook:Stop:019f6758-5176-75c3-a633-4933db387c7d",
      "status": "completed",
      "attempt": 1,
      "created_at": "2026-07-15T19:54:45Z",
      "updated_at": "2026-07-15T19:54:48Z",
      "receipts": [
        {
          "step_id": "state",
          "action": "state.consistency",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "5a1c6e5246defb1b6b6b90ff734db95bece2886b408ab112ed9b8e67222d5568",
          "completed_at": "2026-07-15T19:54:47Z"
        },
        {
          "step_id": "goals",
          "action": "substrate.goals",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "cdfd4de44a28140e686159f34f7b47975954c67e1d1efcef666e985acb136ed8",
          "completed_at": "2026-07-15T19:54:47Z"
        },
        {
          "step_id": "staleness",
          "action": "staleness.audit",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "1e81cb0ffd0a4d04626920a203b38d2d23a264cd43e807a85d375d69cae8a658",
          "completed_at": "2026-07-15T19:54:48Z"
        },
        {
          "step_id": "reflections",
          "action": "reflection.list",
          "input_hash": "0172e841ab4c13b3a4061f073f9d68a716ec87a8a5d52fde41823385e0582573",
          "output_hash": "c1b6b635c0bab21120657277f14ef6f839909875f307a3745fa48aee2bd6e449",
          "completed_at": "2026-07-15T19:54:48Z"
        },
        {
          "step_id": "bundle",
          "action": "reporting.bundle",
          "input_hash": "aed8ebb688dc3c085dd978d7c4120572173c3cb87e75919e4a937dcca6ef9457",
          "output_hash": "f61aa7bfac7c2e96e3bf2d3386a95e45d2db52d040f05aff9ea963197eacc3f6",
          "completed_at": "2026-07-15T19:54:48Z"
        },
        {
          "step_id": "delegated",
          "action": "reporting.delegate",
          "input_hash": "5bf4dfad88c9958da759cb1561ca5fdd8f3ac9050e938bfde85af5c8d804adc9",
          "output_hash": "e6085059f197def80ae95add1f328418107bea5436c9bd002530043646a3a95c",
          "completed_at": "2026-07-15T19:54:48Z"
        }
      ],
      "steps": [
        {
          "id": "state",
          "action": "state.consistency",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-15T19:54:45Z",
          "output": {
            "status": "ok",
            "repo_root": "D:\\Projects\\prd-plugin",
            "summary": {
              "errors": 0,
              "warnings": 0,
              "infos": 0
            },
            "findings": []
          },
          "output_hash": "5a1c6e5246defb1b6b6b90ff734db95bece2886b408ab112ed9b8e67222d5568",
          "completed_at": "2026-07-15T19:54:47Z"
        },
        {
          "id": "goals",
          "action": "substrate.goals",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-15T19:54:47Z",
          "output": {
            "status": "disabled",
            "created": 0,
            "observed": 0,
            "results": []
          },
          "output_hash": "cdfd4de44a28140e686159f34f7b47975954c67e1d1efcef666e985acb136ed8",
          "completed_at": "2026-07-15T19:54:47Z"
        },
        {
          "id": "staleness",
          "action": "staleness.audit",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-15T19:54:48Z",
          "output": {
            "status": "ok",
            "repo_root": "D:\\Projects\\prd-plugin",
            "counts": {
              "stale": 0
            },
            "stale": []
          },
          "output_hash": "1e81cb0ffd0a4d04626920a203b38d2d23a264cd43e807a85d375d69cae8a658",
          "completed_at": "2026-07-15T19:54:48Z"
        },
        {
          "id": "reflections",
          "action": "reflection.list",
          "status": "completed",
          "resolved_input_hash": "0172e841ab4c13b3a4061f073f9d68a716ec87a8a5d52fde41823385e0582573",
          "started_at": "2026-07-15T19:54:48Z",
          "output": {
            "enabled": false,
            "on_stop": true,
            "max_questions_per_stop": 5,
            "categories": [
              {
                "id": "behaviour_quality",
                "name": "Behaviour quality",
                "enabled": true,
                "question_count": 3
              },
              {
                "id": "harness_friction",
                "name": "Harness friction",
                "enabled": true,
                "question_count": 2
              }
            ],
            "questions": [
              {
                "id": "RFQ-001",
                "text": "Based on the work you just carried out, would you classify your behaviour as good? Answer yes or no and cite observable evidence.",
                "enabled": true,
                "category_id": "behaviour_quality",
                "category_name": "Behaviour quality",
                "effective_enabled": false
              },
              {
                "id": "RFQ-002",
                "text": "If you answered no, what could you do differently to correct your behaviour?",
                "enabled": true,
                "category_id": "behaviour_quality",
                "category_name": "Behaviour quality",
                "effective_enabled": false
              },
              {
                "id": "RFQ-003",
                "text": "Would another attempt using the identified good behaviours materially improve the outcome? Answer yes or no and state the next corrective action if yes.",
                "enabled": true,
                "category_id": "behaviour_quality",
                "category_name": "Behaviour quality",
                "effective_enabled": false
              },
              {
                "id": "RFQ-004",
                "text": "What harness friction points made this work more difficult?",
                "enabled": true,
                "category_id": "harness_friction",
                "category_name": "Harness friction",
                "effective_enabled": false
              },
              {
                "id": "RFQ-005",
                "text": "What up to three changes would most improve friction in the harness?",
                "enabled": true,
                "category_id": "harness_friction",
                "category_name": "Harness friction",
                "effective_enabled": false
              }
            ]
          },
          "output_hash": "c1b6b635c0bab21120657277f14ef6f839909875f307a3745fa48aee2bd6e449",
          "completed_at": "2026-07-15T19:54:48Z"
        },
        {
          "id": "bundle",
          "action": "reporting.bundle",
          "status": "completed",
          "resolved_input_hash": "aed8ebb688dc3c085dd978d7c4120572173c3cb87e75919e4a937dcca6ef9457",
          "started_at": "2026-07-15T19:54:48Z",
          "output": {
            "contract_version": 1,
            "task": "session_summary",
            "repo": "prd-plugin",
            "policy": {
              "enabled": false,
              "executor": "ai-collab",
              "contract_version": 1,
              "profile": "fast-capable",
              "tasks": [
                "report_summary",
                "session_summary",
                "wiki_synthesis",
                "triage_draft"
              ],
              "fallback": "main",
              "require_source_refs": true,
              "max_input_tokens": 12000,
              "max_output_tokens": 1500,
              "timeout_seconds": 30
            },
            "facts": {
              "requests_by_status": {
                "deferred": 1,
                "implemented": 80,
                "proposed": 1,
                "rejected": 1
              },
              "active_requests": [
                {
                  "id": "REQ-072",
                  "status": "proposed",
                  "severity": "low",
                  "summary": "opencode run-until-done: session.idle is a non-blocking notification, so the stop guard can't force continuation on opencode (currently degrades to a printed reminder, 0.5.95). Investigate whether opencode exposes any vetoable/continuation mechanism (a different event, a permission hook, or a 'continue' API) to enforce run-until-done, or accept the reminder as the permanent ceiling. Low priority — user rarely uses opencode."
                }
              ],
              "active_tracking": [],
              "open_health": [],
              "evidence_count": 105,
              "decision_count": 10
            },
            "findings": [],
            "source_refs": [
              ".prd_plugin/config.json",
              ".prd_plugin/state/decisions.json",
              ".prd_plugin/state/evidence.json",
              ".prd_plugin/state/health.json",
              ".prd_plugin/state/requests.json",
              ".prd_plugin/state/tracking.json",
              "REQ-072"
            ],
            "constraints": {
              "max_input_tokens": 12000,
              "max_output_tokens": 1500,
              "timeout_seconds": 30,
              "require_source_refs": true,
              "no_project_state_writes": true,
              "no_secrets_or_local_session_content": true
            }
          },
          "output_hash": "f61aa7bfac7c2e96e3bf2d3386a95e45d2db52d040f05aff9ea963197eacc3f6",
          "completed_at": "2026-07-15T19:54:48Z"
        },
        {
          "id": "delegated",
          "action": "reporting.delegate",
          "status": "completed",
          "resolved_input_hash": "5bf4dfad88c9958da759cb1561ca5fdd8f3ac9050e938bfde85af5c8d804adc9",
          "started_at": "2026-07-15T19:54:48Z",
          "output": {
            "status": "fallback",
            "action": "main",
            "reason": "disabled"
          },
          "output_hash": "e6085059f197def80ae95add1f328418107bea5436c9bd002530043646a3a95c",
          "completed_at": "2026-07-15T19:54:48Z"
        }
      ],
      "completed_at": "2026-07-15T19:54:48Z"
    },
    {
      "id": "WFR-197",
      "schema_version": "1.0",
      "workflow_id": "session.start",
      "workflow_version": 1,
      "definition_hash": "d0f98da02571e6dd27fec4aed92d3c82af9db75f8b90b997bf665635c7b7f6ca",
      "plan_hash": "b5072615ca3b7e9a3bd85d50d1f069d99ef2a9816b32c03a370745ed7a205536",
      "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
      "inputs": {},
      "idempotency_key": "hook:SessionStart:019f676a-17c6-7a91-9fde-d567bac3e08c",
      "status": "completed",
      "attempt": 1,
      "created_at": "2026-07-15T20:13:58Z",
      "updated_at": "2026-07-15T20:14:01Z",
      "receipts": [
        {
          "step_id": "config",
          "action": "config.audit",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "3782ec2317c0c8ee7598634310a2804d8aae4735f557498f9d3b8fae7c45e1e5",
          "completed_at": "2026-07-15T20:13:58Z"
        },
        {
          "step_id": "services",
          "action": "services.audit",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "13dcc58bd528f3efa3e6e0fa0853a6eedc376f1f3685fbd4869cbb2b60382ee3",
          "completed_at": "2026-07-15T20:13:58Z"
        },
        {
          "step_id": "state",
          "action": "state.consistency",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "5a1c6e5246defb1b6b6b90ff734db95bece2886b408ab112ed9b8e67222d5568",
          "completed_at": "2026-07-15T20:14:00Z"
        },
        {
          "step_id": "status",
          "action": "state.query",
          "input_hash": "a15231a2142a2a9a85355a8b9cbbccffe01a9c9c2c2fd8c2bc2987cdc481564a",
          "output_hash": "8ba9f7d3cc6705af37de9e3324d1258e21ccacb5ab0b2d7b389ca08885e11187",
          "completed_at": "2026-07-15T20:14:00Z"
        },
        {
          "step_id": "substrate",
          "action": "substrate.preflight",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "a6df426290b4549a59eecaa0519ead9bcc50b7fcb25bd2185ff6047960f19ccb",
          "completed_at": "2026-07-15T20:14:01Z"
        },
        {
          "step_id": "notices",
          "action": "substrate.notices",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "38b904a1cf83df048360fb2480571b749fd98d57e11f1afdffb5a74a78166fea",
          "completed_at": "2026-07-15T20:14:01Z"
        },
        {
          "step_id": "goals",
          "action": "substrate.goals",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "cdfd4de44a28140e686159f34f7b47975954c67e1d1efcef666e985acb136ed8",
          "completed_at": "2026-07-15T20:14:01Z"
        }
      ],
      "steps": [
        {
          "id": "config",
          "action": "config.audit",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-15T20:13:58Z",
          "output": {
            "status": "ok",
            "summary": {
              "settings": 195,
              "mutable": 186,
              "read_only_or_managed": 9,
              "unclassified": 0,
              "unknown": 0,
              "invalid": 0,
              "missing_using_defaults": 0
            },
            "unclassified_keys": [],
            "unknown_keys": [],
            "invalid_values": [],
            "missing_using_defaults": []
          },
          "output_hash": "3782ec2317c0c8ee7598634310a2804d8aae4735f557498f9d3b8fae7c45e1e5",
          "completed_at": "2026-07-15T20:13:58Z"
        },
        {
          "id": "services",
          "action": "services.audit",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-15T20:13:58Z",
          "output": {
            "status": "ok",
            "summary": {
              "critical": 0,
              "high": 0,
              "medium": 0,
              "low": 0
            },
            "findings": []
          },
          "output_hash": "13dcc58bd528f3efa3e6e0fa0853a6eedc376f1f3685fbd4869cbb2b60382ee3",
          "completed_at": "2026-07-15T20:13:58Z"
        },
        {
          "id": "state",
          "action": "state.consistency",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-15T20:13:58Z",
          "output": {
            "status": "ok",
            "repo_root": "D:\\Projects\\prd-plugin",
            "summary": {
              "errors": 0,
              "warnings": 0,
              "infos": 0
            },
            "findings": []
          },
          "output_hash": "5a1c6e5246defb1b6b6b90ff734db95bece2886b408ab112ed9b8e67222d5568",
          "completed_at": "2026-07-15T20:14:00Z"
        },
        {
          "id": "status",
          "action": "state.query",
          "status": "completed",
          "resolved_input_hash": "a15231a2142a2a9a85355a8b9cbbccffe01a9c9c2c2fd8c2bc2987cdc481564a",
          "started_at": "2026-07-15T20:14:00Z",
          "output": {
            "repo_root": "D:\\Projects\\prd-plugin",
            "autonomy_level": "autonomous",
            "requests_by_status": {
              "deferred": 1,
              "implemented": 80,
              "proposed": 1,
              "rejected": 1
            },
            "active_tracking": [],
            "tracking_branches": [],
            "tracking_branch_counts": {},
            "tracking_branch_errors": [],
            "open_health": [],
            "stale_count": 0,
            "skill_usage": {
              "project-decision-policy": 1,
              "project-request-intake": 1,
              "project-test-driven-implementation": 1,
              "project-verification-before-completion": 1,
              "project-llm-wiki": 1
            },
            "wiki_backfill_pending": false,
            "version_update": null
          },
          "output_hash": "8ba9f7d3cc6705af37de9e3324d1258e21ccacb5ab0b2d7b389ca08885e11187",
          "completed_at": "2026-07-15T20:14:00Z"
        },
        {
          "id": "substrate",
          "action": "substrate.preflight",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-15T20:14:01Z",
          "output": {
            "status": "disabled",
            "services": {
              "status": "ok",
              "summary": {
                "critical": 0,
                "high": 0,
                "medium": 0,
                "low": 0
              },
              "findings": []
            },
            "policy": {
              "configured": {
                "enabled": false,
                "mode": "off",
                "capabilities": [
                  "records",
                  "graph",
                  "events"
                ],
                "contract_version": 2,
                "require_source_refs": true,
                "endpoint": "http://127.0.0.1:47124",
                "manual_url": "http://127.0.0.1:47124/utcp.json",
                "knowledge_browse_url": "http://127.0.0.1:5276",
                "auth_env": "AI_COLLAB_API_KEY",
                "timeout_seconds": 5,
                "max_result_bytes": 1048576,
                "cache_ttl_seconds": 60,
                "fallback": "local",
                "automation": {
                  "discovery_on_session_start": true,
                  "knowledge_recall": true,
                  "memory_recall": true,
                  "context_enrichment": true,
                  "notices_on_session_start": false,
                  "goals_sync": false,
                  "telemetry_on_maintenance": false,
                  "reporting_dispatch": true,
                  "judgment_dispatch": true,
                  "verification_execution": true
                }
              },
              "active": false,
              "effective_mode": "off",
              "effective_capabilities": []
            }
          },
          "output_hash": "a6df426290b4549a59eecaa0519ead9bcc50b7fcb25bd2185ff6047960f19ccb",
          "completed_at": "2026-07-15T20:14:01Z"
        },
        {
          "id": "notices",
          "action": "substrate.notices",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-15T20:14:01Z",
          "output": {
            "status": "disabled"
          },
          "output_hash": "38b904a1cf83df048360fb2480571b749fd98d57e11f1afdffb5a74a78166fea",
          "completed_at": "2026-07-15T20:14:01Z"
        },
        {
          "id": "goals",
          "action": "substrate.goals",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-15T20:14:01Z",
          "output": {
            "status": "disabled",
            "created": 0,
            "observed": 0,
            "results": []
          },
          "output_hash": "cdfd4de44a28140e686159f34f7b47975954c67e1d1efcef666e985acb136ed8",
          "completed_at": "2026-07-15T20:14:01Z"
        }
      ],
      "completed_at": "2026-07-15T20:14:01Z"
    },
    {
      "id": "WFR-198",
      "schema_version": "1.0",
      "workflow_id": "session.stop",
      "workflow_version": 1,
      "definition_hash": "0cef7bb3e28321be8f85375c154955a69310ce297e47de3f3b8dd48f77a2f07d",
      "plan_hash": "a5e1d77ac734217487fc418e29c7163f4e81178e25d171e70cd4c999d527d3e8",
      "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
      "inputs": {},
      "idempotency_key": "hook:Stop:019f676a-17c6-7a91-9fde-d567bac3e08c",
      "status": "completed",
      "attempt": 1,
      "created_at": "2026-07-15T20:14:07Z",
      "updated_at": "2026-07-15T20:14:10Z",
      "receipts": [
        {
          "step_id": "state",
          "action": "state.consistency",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "5a1c6e5246defb1b6b6b90ff734db95bece2886b408ab112ed9b8e67222d5568",
          "completed_at": "2026-07-15T20:14:09Z"
        },
        {
          "step_id": "goals",
          "action": "substrate.goals",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "cdfd4de44a28140e686159f34f7b47975954c67e1d1efcef666e985acb136ed8",
          "completed_at": "2026-07-15T20:14:09Z"
        },
        {
          "step_id": "staleness",
          "action": "staleness.audit",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "1e81cb0ffd0a4d04626920a203b38d2d23a264cd43e807a85d375d69cae8a658",
          "completed_at": "2026-07-15T20:14:09Z"
        },
        {
          "step_id": "reflections",
          "action": "reflection.list",
          "input_hash": "0172e841ab4c13b3a4061f073f9d68a716ec87a8a5d52fde41823385e0582573",
          "output_hash": "c1b6b635c0bab21120657277f14ef6f839909875f307a3745fa48aee2bd6e449",
          "completed_at": "2026-07-15T20:14:09Z"
        },
        {
          "step_id": "bundle",
          "action": "reporting.bundle",
          "input_hash": "aed8ebb688dc3c085dd978d7c4120572173c3cb87e75919e4a937dcca6ef9457",
          "output_hash": "f61aa7bfac7c2e96e3bf2d3386a95e45d2db52d040f05aff9ea963197eacc3f6",
          "completed_at": "2026-07-15T20:14:09Z"
        },
        {
          "step_id": "delegated",
          "action": "reporting.delegate",
          "input_hash": "5bf4dfad88c9958da759cb1561ca5fdd8f3ac9050e938bfde85af5c8d804adc9",
          "output_hash": "e6085059f197def80ae95add1f328418107bea5436c9bd002530043646a3a95c",
          "completed_at": "2026-07-15T20:14:10Z"
        }
      ],
      "steps": [
        {
          "id": "state",
          "action": "state.consistency",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-15T20:14:07Z",
          "output": {
            "status": "ok",
            "repo_root": "D:\\Projects\\prd-plugin",
            "summary": {
              "errors": 0,
              "warnings": 0,
              "infos": 0
            },
            "findings": []
          },
          "output_hash": "5a1c6e5246defb1b6b6b90ff734db95bece2886b408ab112ed9b8e67222d5568",
          "completed_at": "2026-07-15T20:14:09Z"
        },
        {
          "id": "goals",
          "action": "substrate.goals",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-15T20:14:09Z",
          "output": {
            "status": "disabled",
            "created": 0,
            "observed": 0,
            "results": []
          },
          "output_hash": "cdfd4de44a28140e686159f34f7b47975954c67e1d1efcef666e985acb136ed8",
          "completed_at": "2026-07-15T20:14:09Z"
        },
        {
          "id": "staleness",
          "action": "staleness.audit",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-15T20:14:09Z",
          "output": {
            "status": "ok",
            "repo_root": "D:\\Projects\\prd-plugin",
            "counts": {
              "stale": 0
            },
            "stale": []
          },
          "output_hash": "1e81cb0ffd0a4d04626920a203b38d2d23a264cd43e807a85d375d69cae8a658",
          "completed_at": "2026-07-15T20:14:09Z"
        },
        {
          "id": "reflections",
          "action": "reflection.list",
          "status": "completed",
          "resolved_input_hash": "0172e841ab4c13b3a4061f073f9d68a716ec87a8a5d52fde41823385e0582573",
          "started_at": "2026-07-15T20:14:09Z",
          "output": {
            "enabled": false,
            "on_stop": true,
            "max_questions_per_stop": 5,
            "categories": [
              {
                "id": "behaviour_quality",
                "name": "Behaviour quality",
                "enabled": true,
                "question_count": 3
              },
              {
                "id": "harness_friction",
                "name": "Harness friction",
                "enabled": true,
                "question_count": 2
              }
            ],
            "questions": [
              {
                "id": "RFQ-001",
                "text": "Based on the work you just carried out, would you classify your behaviour as good? Answer yes or no and cite observable evidence.",
                "enabled": true,
                "category_id": "behaviour_quality",
                "category_name": "Behaviour quality",
                "effective_enabled": false
              },
              {
                "id": "RFQ-002",
                "text": "If you answered no, what could you do differently to correct your behaviour?",
                "enabled": true,
                "category_id": "behaviour_quality",
                "category_name": "Behaviour quality",
                "effective_enabled": false
              },
              {
                "id": "RFQ-003",
                "text": "Would another attempt using the identified good behaviours materially improve the outcome? Answer yes or no and state the next corrective action if yes.",
                "enabled": true,
                "category_id": "behaviour_quality",
                "category_name": "Behaviour quality",
                "effective_enabled": false
              },
              {
                "id": "RFQ-004",
                "text": "What harness friction points made this work more difficult?",
                "enabled": true,
                "category_id": "harness_friction",
                "category_name": "Harness friction",
                "effective_enabled": false
              },
              {
                "id": "RFQ-005",
                "text": "What up to three changes would most improve friction in the harness?",
                "enabled": true,
                "category_id": "harness_friction",
                "category_name": "Harness friction",
                "effective_enabled": false
              }
            ]
          },
          "output_hash": "c1b6b635c0bab21120657277f14ef6f839909875f307a3745fa48aee2bd6e449",
          "completed_at": "2026-07-15T20:14:09Z"
        },
        {
          "id": "bundle",
          "action": "reporting.bundle",
          "status": "completed",
          "resolved_input_hash": "aed8ebb688dc3c085dd978d7c4120572173c3cb87e75919e4a937dcca6ef9457",
          "started_at": "2026-07-15T20:14:09Z",
          "output": {
            "contract_version": 1,
            "task": "session_summary",
            "repo": "prd-plugin",
            "policy": {
              "enabled": false,
              "executor": "ai-collab",
              "contract_version": 1,
              "profile": "fast-capable",
              "tasks": [
                "report_summary",
                "session_summary",
                "wiki_synthesis",
                "triage_draft"
              ],
              "fallback": "main",
              "require_source_refs": true,
              "max_input_tokens": 12000,
              "max_output_tokens": 1500,
              "timeout_seconds": 30
            },
            "facts": {
              "requests_by_status": {
                "deferred": 1,
                "implemented": 80,
                "proposed": 1,
                "rejected": 1
              },
              "active_requests": [
                {
                  "id": "REQ-072",
                  "status": "proposed",
                  "severity": "low",
                  "summary": "opencode run-until-done: session.idle is a non-blocking notification, so the stop guard can't force continuation on opencode (currently degrades to a printed reminder, 0.5.95). Investigate whether opencode exposes any vetoable/continuation mechanism (a different event, a permission hook, or a 'continue' API) to enforce run-until-done, or accept the reminder as the permanent ceiling. Low priority — user rarely uses opencode."
                }
              ],
              "active_tracking": [],
              "open_health": [],
              "evidence_count": 105,
              "decision_count": 10
            },
            "findings": [],
            "source_refs": [
              ".prd_plugin/config.json",
              ".prd_plugin/state/decisions.json",
              ".prd_plugin/state/evidence.json",
              ".prd_plugin/state/health.json",
              ".prd_plugin/state/requests.json",
              ".prd_plugin/state/tracking.json",
              "REQ-072"
            ],
            "constraints": {
              "max_input_tokens": 12000,
              "max_output_tokens": 1500,
              "timeout_seconds": 30,
              "require_source_refs": true,
              "no_project_state_writes": true,
              "no_secrets_or_local_session_content": true
            }
          },
          "output_hash": "f61aa7bfac7c2e96e3bf2d3386a95e45d2db52d040f05aff9ea963197eacc3f6",
          "completed_at": "2026-07-15T20:14:09Z"
        },
        {
          "id": "delegated",
          "action": "reporting.delegate",
          "status": "completed",
          "resolved_input_hash": "5bf4dfad88c9958da759cb1561ca5fdd8f3ac9050e938bfde85af5c8d804adc9",
          "started_at": "2026-07-15T20:14:10Z",
          "output": {
            "status": "fallback",
            "action": "main",
            "reason": "disabled"
          },
          "output_hash": "e6085059f197def80ae95add1f328418107bea5436c9bd002530043646a3a95c",
          "completed_at": "2026-07-15T20:14:10Z"
        }
      ],
      "completed_at": "2026-07-15T20:14:10Z"
    },
    {
      "id": "WFR-199",
      "schema_version": "1.0",
      "workflow_id": "session.start",
      "workflow_version": 1,
      "definition_hash": "d0f98da02571e6dd27fec4aed92d3c82af9db75f8b90b997bf665635c7b7f6ca",
      "plan_hash": "b5072615ca3b7e9a3bd85d50d1f069d99ef2a9816b32c03a370745ed7a205536",
      "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
      "inputs": {},
      "idempotency_key": "hook:SessionStart:019f676b-ab09-7a92-8174-913ae92e9a3e",
      "status": "completed",
      "attempt": 1,
      "created_at": "2026-07-15T20:15:40Z",
      "updated_at": "2026-07-15T20:15:42Z",
      "receipts": [
        {
          "step_id": "config",
          "action": "config.audit",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "3782ec2317c0c8ee7598634310a2804d8aae4735f557498f9d3b8fae7c45e1e5",
          "completed_at": "2026-07-15T20:15:40Z"
        },
        {
          "step_id": "services",
          "action": "services.audit",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "13dcc58bd528f3efa3e6e0fa0853a6eedc376f1f3685fbd4869cbb2b60382ee3",
          "completed_at": "2026-07-15T20:15:40Z"
        },
        {
          "step_id": "state",
          "action": "state.consistency",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "5a1c6e5246defb1b6b6b90ff734db95bece2886b408ab112ed9b8e67222d5568",
          "completed_at": "2026-07-15T20:15:41Z"
        },
        {
          "step_id": "status",
          "action": "state.query",
          "input_hash": "a15231a2142a2a9a85355a8b9cbbccffe01a9c9c2c2fd8c2bc2987cdc481564a",
          "output_hash": "8ba9f7d3cc6705af37de9e3324d1258e21ccacb5ab0b2d7b389ca08885e11187",
          "completed_at": "2026-07-15T20:15:41Z"
        },
        {
          "step_id": "substrate",
          "action": "substrate.preflight",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "a6df426290b4549a59eecaa0519ead9bcc50b7fcb25bd2185ff6047960f19ccb",
          "completed_at": "2026-07-15T20:15:42Z"
        },
        {
          "step_id": "notices",
          "action": "substrate.notices",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "38b904a1cf83df048360fb2480571b749fd98d57e11f1afdffb5a74a78166fea",
          "completed_at": "2026-07-15T20:15:42Z"
        },
        {
          "step_id": "goals",
          "action": "substrate.goals",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "cdfd4de44a28140e686159f34f7b47975954c67e1d1efcef666e985acb136ed8",
          "completed_at": "2026-07-15T20:15:42Z"
        }
      ],
      "steps": [
        {
          "id": "config",
          "action": "config.audit",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-15T20:15:40Z",
          "output": {
            "status": "ok",
            "summary": {
              "settings": 195,
              "mutable": 186,
              "read_only_or_managed": 9,
              "unclassified": 0,
              "unknown": 0,
              "invalid": 0,
              "missing_using_defaults": 0
            },
            "unclassified_keys": [],
            "unknown_keys": [],
            "invalid_values": [],
            "missing_using_defaults": []
          },
          "output_hash": "3782ec2317c0c8ee7598634310a2804d8aae4735f557498f9d3b8fae7c45e1e5",
          "completed_at": "2026-07-15T20:15:40Z"
        },
        {
          "id": "services",
          "action": "services.audit",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-15T20:15:40Z",
          "output": {
            "status": "ok",
            "summary": {
              "critical": 0,
              "high": 0,
              "medium": 0,
              "low": 0
            },
            "findings": []
          },
          "output_hash": "13dcc58bd528f3efa3e6e0fa0853a6eedc376f1f3685fbd4869cbb2b60382ee3",
          "completed_at": "2026-07-15T20:15:40Z"
        },
        {
          "id": "state",
          "action": "state.consistency",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-15T20:15:40Z",
          "output": {
            "status": "ok",
            "repo_root": "D:\\Projects\\prd-plugin",
            "summary": {
              "errors": 0,
              "warnings": 0,
              "infos": 0
            },
            "findings": []
          },
          "output_hash": "5a1c6e5246defb1b6b6b90ff734db95bece2886b408ab112ed9b8e67222d5568",
          "completed_at": "2026-07-15T20:15:41Z"
        },
        {
          "id": "status",
          "action": "state.query",
          "status": "completed",
          "resolved_input_hash": "a15231a2142a2a9a85355a8b9cbbccffe01a9c9c2c2fd8c2bc2987cdc481564a",
          "started_at": "2026-07-15T20:15:41Z",
          "output": {
            "repo_root": "D:\\Projects\\prd-plugin",
            "autonomy_level": "autonomous",
            "requests_by_status": {
              "deferred": 1,
              "implemented": 80,
              "proposed": 1,
              "rejected": 1
            },
            "active_tracking": [],
            "tracking_branches": [],
            "tracking_branch_counts": {},
            "tracking_branch_errors": [],
            "open_health": [],
            "stale_count": 0,
            "skill_usage": {
              "project-decision-policy": 1,
              "project-request-intake": 1,
              "project-test-driven-implementation": 1,
              "project-verification-before-completion": 1,
              "project-llm-wiki": 1
            },
            "wiki_backfill_pending": false,
            "version_update": null
          },
          "output_hash": "8ba9f7d3cc6705af37de9e3324d1258e21ccacb5ab0b2d7b389ca08885e11187",
          "completed_at": "2026-07-15T20:15:41Z"
        },
        {
          "id": "substrate",
          "action": "substrate.preflight",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-15T20:15:42Z",
          "output": {
            "status": "disabled",
            "services": {
              "status": "ok",
              "summary": {
                "critical": 0,
                "high": 0,
                "medium": 0,
                "low": 0
              },
              "findings": []
            },
            "policy": {
              "configured": {
                "enabled": false,
                "mode": "off",
                "capabilities": [
                  "records",
                  "graph",
                  "events"
                ],
                "contract_version": 2,
                "require_source_refs": true,
                "endpoint": "http://127.0.0.1:47124",
                "manual_url": "http://127.0.0.1:47124/utcp.json",
                "knowledge_browse_url": "http://127.0.0.1:5276",
                "auth_env": "AI_COLLAB_API_KEY",
                "timeout_seconds": 5,
                "max_result_bytes": 1048576,
                "cache_ttl_seconds": 60,
                "fallback": "local",
                "automation": {
                  "discovery_on_session_start": true,
                  "knowledge_recall": true,
                  "memory_recall": true,
                  "context_enrichment": true,
                  "notices_on_session_start": false,
                  "goals_sync": false,
                  "telemetry_on_maintenance": false,
                  "reporting_dispatch": true,
                  "judgment_dispatch": true,
                  "verification_execution": true
                }
              },
              "active": false,
              "effective_mode": "off",
              "effective_capabilities": []
            }
          },
          "output_hash": "a6df426290b4549a59eecaa0519ead9bcc50b7fcb25bd2185ff6047960f19ccb",
          "completed_at": "2026-07-15T20:15:42Z"
        },
        {
          "id": "notices",
          "action": "substrate.notices",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-15T20:15:42Z",
          "output": {
            "status": "disabled"
          },
          "output_hash": "38b904a1cf83df048360fb2480571b749fd98d57e11f1afdffb5a74a78166fea",
          "completed_at": "2026-07-15T20:15:42Z"
        },
        {
          "id": "goals",
          "action": "substrate.goals",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-15T20:15:42Z",
          "output": {
            "status": "disabled",
            "created": 0,
            "observed": 0,
            "results": []
          },
          "output_hash": "cdfd4de44a28140e686159f34f7b47975954c67e1d1efcef666e985acb136ed8",
          "completed_at": "2026-07-15T20:15:42Z"
        }
      ],
      "completed_at": "2026-07-15T20:15:42Z"
    },
    {
      "id": "WFR-200",
      "schema_version": "1.0",
      "workflow_id": "session.stop",
      "workflow_version": 1,
      "definition_hash": "0cef7bb3e28321be8f85375c154955a69310ce297e47de3f3b8dd48f77a2f07d",
      "plan_hash": "a5e1d77ac734217487fc418e29c7163f4e81178e25d171e70cd4c999d527d3e8",
      "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
      "inputs": {},
      "idempotency_key": "hook:Stop:019f676b-ab09-7a92-8174-913ae92e9a3e",
      "status": "completed",
      "attempt": 1,
      "created_at": "2026-07-15T20:15:46Z",
      "updated_at": "2026-07-15T20:15:49Z",
      "receipts": [
        {
          "step_id": "state",
          "action": "state.consistency",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "5a1c6e5246defb1b6b6b90ff734db95bece2886b408ab112ed9b8e67222d5568",
          "completed_at": "2026-07-15T20:15:48Z"
        },
        {
          "step_id": "goals",
          "action": "substrate.goals",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "cdfd4de44a28140e686159f34f7b47975954c67e1d1efcef666e985acb136ed8",
          "completed_at": "2026-07-15T20:15:48Z"
        },
        {
          "step_id": "staleness",
          "action": "staleness.audit",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "1e81cb0ffd0a4d04626920a203b38d2d23a264cd43e807a85d375d69cae8a658",
          "completed_at": "2026-07-15T20:15:48Z"
        },
        {
          "step_id": "reflections",
          "action": "reflection.list",
          "input_hash": "0172e841ab4c13b3a4061f073f9d68a716ec87a8a5d52fde41823385e0582573",
          "output_hash": "c1b6b635c0bab21120657277f14ef6f839909875f307a3745fa48aee2bd6e449",
          "completed_at": "2026-07-15T20:15:48Z"
        },
        {
          "step_id": "bundle",
          "action": "reporting.bundle",
          "input_hash": "aed8ebb688dc3c085dd978d7c4120572173c3cb87e75919e4a937dcca6ef9457",
          "output_hash": "f61aa7bfac7c2e96e3bf2d3386a95e45d2db52d040f05aff9ea963197eacc3f6",
          "completed_at": "2026-07-15T20:15:48Z"
        },
        {
          "step_id": "delegated",
          "action": "reporting.delegate",
          "input_hash": "5bf4dfad88c9958da759cb1561ca5fdd8f3ac9050e938bfde85af5c8d804adc9",
          "output_hash": "e6085059f197def80ae95add1f328418107bea5436c9bd002530043646a3a95c",
          "completed_at": "2026-07-15T20:15:48Z"
        }
      ],
      "steps": [
        {
          "id": "state",
          "action": "state.consistency",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-15T20:15:46Z",
          "output": {
            "status": "ok",
            "repo_root": "D:\\Projects\\prd-plugin",
            "summary": {
              "errors": 0,
              "warnings": 0,
              "infos": 0
            },
            "findings": []
          },
          "output_hash": "5a1c6e5246defb1b6b6b90ff734db95bece2886b408ab112ed9b8e67222d5568",
          "completed_at": "2026-07-15T20:15:48Z"
        },
        {
          "id": "goals",
          "action": "substrate.goals",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-15T20:15:48Z",
          "output": {
            "status": "disabled",
            "created": 0,
            "observed": 0,
            "results": []
          },
          "output_hash": "cdfd4de44a28140e686159f34f7b47975954c67e1d1efcef666e985acb136ed8",
          "completed_at": "2026-07-15T20:15:48Z"
        },
        {
          "id": "staleness",
          "action": "staleness.audit",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-15T20:15:48Z",
          "output": {
            "status": "ok",
            "repo_root": "D:\\Projects\\prd-plugin",
            "counts": {
              "stale": 0
            },
            "stale": []
          },
          "output_hash": "1e81cb0ffd0a4d04626920a203b38d2d23a264cd43e807a85d375d69cae8a658",
          "completed_at": "2026-07-15T20:15:48Z"
        },
        {
          "id": "reflections",
          "action": "reflection.list",
          "status": "completed",
          "resolved_input_hash": "0172e841ab4c13b3a4061f073f9d68a716ec87a8a5d52fde41823385e0582573",
          "started_at": "2026-07-15T20:15:48Z",
          "output": {
            "enabled": false,
            "on_stop": true,
            "max_questions_per_stop": 5,
            "categories": [
              {
                "id": "behaviour_quality",
                "name": "Behaviour quality",
                "enabled": true,
                "question_count": 3
              },
              {
                "id": "harness_friction",
                "name": "Harness friction",
                "enabled": true,
                "question_count": 2
              }
            ],
            "questions": [
              {
                "id": "RFQ-001",
                "text": "Based on the work you just carried out, would you classify your behaviour as good? Answer yes or no and cite observable evidence.",
                "enabled": true,
                "category_id": "behaviour_quality",
                "category_name": "Behaviour quality",
                "effective_enabled": false
              },
              {
                "id": "RFQ-002",
                "text": "If you answered no, what could you do differently to correct your behaviour?",
                "enabled": true,
                "category_id": "behaviour_quality",
                "category_name": "Behaviour quality",
                "effective_enabled": false
              },
              {
                "id": "RFQ-003",
                "text": "Would another attempt using the identified good behaviours materially improve the outcome? Answer yes or no and state the next corrective action if yes.",
                "enabled": true,
                "category_id": "behaviour_quality",
                "category_name": "Behaviour quality",
                "effective_enabled": false
              },
              {
                "id": "RFQ-004",
                "text": "What harness friction points made this work more difficult?",
                "enabled": true,
                "category_id": "harness_friction",
                "category_name": "Harness friction",
                "effective_enabled": false
              },
              {
                "id": "RFQ-005",
                "text": "What up to three changes would most improve friction in the harness?",
                "enabled": true,
                "category_id": "harness_friction",
                "category_name": "Harness friction",
                "effective_enabled": false
              }
            ]
          },
          "output_hash": "c1b6b635c0bab21120657277f14ef6f839909875f307a3745fa48aee2bd6e449",
          "completed_at": "2026-07-15T20:15:48Z"
        },
        {
          "id": "bundle",
          "action": "reporting.bundle",
          "status": "completed",
          "resolved_input_hash": "aed8ebb688dc3c085dd978d7c4120572173c3cb87e75919e4a937dcca6ef9457",
          "started_at": "2026-07-15T20:15:48Z",
          "output": {
            "contract_version": 1,
            "task": "session_summary",
            "repo": "prd-plugin",
            "policy": {
              "enabled": false,
              "executor": "ai-collab",
              "contract_version": 1,
              "profile": "fast-capable",
              "tasks": [
                "report_summary",
                "session_summary",
                "wiki_synthesis",
                "triage_draft"
              ],
              "fallback": "main",
              "require_source_refs": true,
              "max_input_tokens": 12000,
              "max_output_tokens": 1500,
              "timeout_seconds": 30
            },
            "facts": {
              "requests_by_status": {
                "deferred": 1,
                "implemented": 80,
                "proposed": 1,
                "rejected": 1
              },
              "active_requests": [
                {
                  "id": "REQ-072",
                  "status": "proposed",
                  "severity": "low",
                  "summary": "opencode run-until-done: session.idle is a non-blocking notification, so the stop guard can't force continuation on opencode (currently degrades to a printed reminder, 0.5.95). Investigate whether opencode exposes any vetoable/continuation mechanism (a different event, a permission hook, or a 'continue' API) to enforce run-until-done, or accept the reminder as the permanent ceiling. Low priority — user rarely uses opencode."
                }
              ],
              "active_tracking": [],
              "open_health": [],
              "evidence_count": 105,
              "decision_count": 10
            },
            "findings": [],
            "source_refs": [
              ".prd_plugin/config.json",
              ".prd_plugin/state/decisions.json",
              ".prd_plugin/state/evidence.json",
              ".prd_plugin/state/health.json",
              ".prd_plugin/state/requests.json",
              ".prd_plugin/state/tracking.json",
              "REQ-072"
            ],
            "constraints": {
              "max_input_tokens": 12000,
              "max_output_tokens": 1500,
              "timeout_seconds": 30,
              "require_source_refs": true,
              "no_project_state_writes": true,
              "no_secrets_or_local_session_content": true
            }
          },
          "output_hash": "f61aa7bfac7c2e96e3bf2d3386a95e45d2db52d040f05aff9ea963197eacc3f6",
          "completed_at": "2026-07-15T20:15:48Z"
        },
        {
          "id": "delegated",
          "action": "reporting.delegate",
          "status": "completed",
          "resolved_input_hash": "5bf4dfad88c9958da759cb1561ca5fdd8f3ac9050e938bfde85af5c8d804adc9",
          "started_at": "2026-07-15T20:15:48Z",
          "output": {
            "status": "fallback",
            "action": "main",
            "reason": "disabled"
          },
          "output_hash": "e6085059f197def80ae95add1f328418107bea5436c9bd002530043646a3a95c",
          "completed_at": "2026-07-15T20:15:48Z"
        }
      ],
      "completed_at": "2026-07-15T20:15:49Z"
    },
    {
      "id": "WFR-201",
      "schema_version": "1.0",
      "workflow_id": "session.start",
      "workflow_version": 1,
      "definition_hash": "d0f98da02571e6dd27fec4aed92d3c82af9db75f8b90b997bf665635c7b7f6ca",
      "plan_hash": "b5072615ca3b7e9a3bd85d50d1f069d99ef2a9816b32c03a370745ed7a205536",
      "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
      "inputs": {},
      "idempotency_key": "hook:SessionStart:019f67ac-c03c-7f72-bfae-51f7c3474a71",
      "status": "completed",
      "attempt": 1,
      "created_at": "2026-07-15T21:26:49Z",
      "updated_at": "2026-07-15T21:26:53Z",
      "receipts": [
        {
          "step_id": "config",
          "action": "config.audit",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "3782ec2317c0c8ee7598634310a2804d8aae4735f557498f9d3b8fae7c45e1e5",
          "completed_at": "2026-07-15T21:26:49Z"
        },
        {
          "step_id": "services",
          "action": "services.audit",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "13dcc58bd528f3efa3e6e0fa0853a6eedc376f1f3685fbd4869cbb2b60382ee3",
          "completed_at": "2026-07-15T21:26:49Z"
        },
        {
          "step_id": "state",
          "action": "state.consistency",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "5a1c6e5246defb1b6b6b90ff734db95bece2886b408ab112ed9b8e67222d5568",
          "completed_at": "2026-07-15T21:26:52Z"
        },
        {
          "step_id": "status",
          "action": "state.query",
          "input_hash": "a15231a2142a2a9a85355a8b9cbbccffe01a9c9c2c2fd8c2bc2987cdc481564a",
          "output_hash": "8ba9f7d3cc6705af37de9e3324d1258e21ccacb5ab0b2d7b389ca08885e11187",
          "completed_at": "2026-07-15T21:26:52Z"
        },
        {
          "step_id": "substrate",
          "action": "substrate.preflight",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "a6df426290b4549a59eecaa0519ead9bcc50b7fcb25bd2185ff6047960f19ccb",
          "completed_at": "2026-07-15T21:26:53Z"
        },
        {
          "step_id": "notices",
          "action": "substrate.notices",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "38b904a1cf83df048360fb2480571b749fd98d57e11f1afdffb5a74a78166fea",
          "completed_at": "2026-07-15T21:26:53Z"
        },
        {
          "step_id": "goals",
          "action": "substrate.goals",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "cdfd4de44a28140e686159f34f7b47975954c67e1d1efcef666e985acb136ed8",
          "completed_at": "2026-07-15T21:26:53Z"
        }
      ],
      "steps": [
        {
          "id": "config",
          "action": "config.audit",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-15T21:26:49Z",
          "output": {
            "status": "ok",
            "summary": {
              "settings": 195,
              "mutable": 186,
              "read_only_or_managed": 9,
              "unclassified": 0,
              "unknown": 0,
              "invalid": 0,
              "missing_using_defaults": 0
            },
            "unclassified_keys": [],
            "unknown_keys": [],
            "invalid_values": [],
            "missing_using_defaults": []
          },
          "output_hash": "3782ec2317c0c8ee7598634310a2804d8aae4735f557498f9d3b8fae7c45e1e5",
          "completed_at": "2026-07-15T21:26:49Z"
        },
        {
          "id": "services",
          "action": "services.audit",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-15T21:26:49Z",
          "output": {
            "status": "ok",
            "summary": {
              "critical": 0,
              "high": 0,
              "medium": 0,
              "low": 0
            },
            "findings": []
          },
          "output_hash": "13dcc58bd528f3efa3e6e0fa0853a6eedc376f1f3685fbd4869cbb2b60382ee3",
          "completed_at": "2026-07-15T21:26:49Z"
        },
        {
          "id": "state",
          "action": "state.consistency",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-15T21:26:49Z",
          "output": {
            "status": "ok",
            "repo_root": "D:\\Projects\\prd-plugin",
            "summary": {
              "errors": 0,
              "warnings": 0,
              "infos": 0
            },
            "findings": []
          },
          "output_hash": "5a1c6e5246defb1b6b6b90ff734db95bece2886b408ab112ed9b8e67222d5568",
          "completed_at": "2026-07-15T21:26:52Z"
        },
        {
          "id": "status",
          "action": "state.query",
          "status": "completed",
          "resolved_input_hash": "a15231a2142a2a9a85355a8b9cbbccffe01a9c9c2c2fd8c2bc2987cdc481564a",
          "started_at": "2026-07-15T21:26:52Z",
          "output": {
            "repo_root": "D:\\Projects\\prd-plugin",
            "autonomy_level": "autonomous",
            "requests_by_status": {
              "deferred": 1,
              "implemented": 80,
              "proposed": 1,
              "rejected": 1
            },
            "active_tracking": [],
            "tracking_branches": [],
            "tracking_branch_counts": {},
            "tracking_branch_errors": [],
            "open_health": [],
            "stale_count": 0,
            "skill_usage": {
              "project-decision-policy": 1,
              "project-request-intake": 1,
              "project-test-driven-implementation": 1,
              "project-verification-before-completion": 1,
              "project-llm-wiki": 1
            },
            "wiki_backfill_pending": false,
            "version_update": null
          },
          "output_hash": "8ba9f7d3cc6705af37de9e3324d1258e21ccacb5ab0b2d7b389ca08885e11187",
          "completed_at": "2026-07-15T21:26:52Z"
        },
        {
          "id": "substrate",
          "action": "substrate.preflight",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-15T21:26:53Z",
          "output": {
            "status": "disabled",
            "services": {
              "status": "ok",
              "summary": {
                "critical": 0,
                "high": 0,
                "medium": 0,
                "low": 0
              },
              "findings": []
            },
            "policy": {
              "configured": {
                "enabled": false,
                "mode": "off",
                "capabilities": [
                  "records",
                  "graph",
                  "events"
                ],
                "contract_version": 2,
                "require_source_refs": true,
                "endpoint": "http://127.0.0.1:47124",
                "manual_url": "http://127.0.0.1:47124/utcp.json",
                "knowledge_browse_url": "http://127.0.0.1:5276",
                "auth_env": "AI_COLLAB_API_KEY",
                "timeout_seconds": 5,
                "max_result_bytes": 1048576,
                "cache_ttl_seconds": 60,
                "fallback": "local",
                "automation": {
                  "discovery_on_session_start": true,
                  "knowledge_recall": true,
                  "memory_recall": true,
                  "context_enrichment": true,
                  "notices_on_session_start": false,
                  "goals_sync": false,
                  "telemetry_on_maintenance": false,
                  "reporting_dispatch": true,
                  "judgment_dispatch": true,
                  "verification_execution": true
                }
              },
              "active": false,
              "effective_mode": "off",
              "effective_capabilities": []
            }
          },
          "output_hash": "a6df426290b4549a59eecaa0519ead9bcc50b7fcb25bd2185ff6047960f19ccb",
          "completed_at": "2026-07-15T21:26:53Z"
        },
        {
          "id": "notices",
          "action": "substrate.notices",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-15T21:26:53Z",
          "output": {
            "status": "disabled"
          },
          "output_hash": "38b904a1cf83df048360fb2480571b749fd98d57e11f1afdffb5a74a78166fea",
          "completed_at": "2026-07-15T21:26:53Z"
        },
        {
          "id": "goals",
          "action": "substrate.goals",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-15T21:26:53Z",
          "output": {
            "status": "disabled",
            "created": 0,
            "observed": 0,
            "results": []
          },
          "output_hash": "cdfd4de44a28140e686159f34f7b47975954c67e1d1efcef666e985acb136ed8",
          "completed_at": "2026-07-15T21:26:53Z"
        }
      ],
      "completed_at": "2026-07-15T21:26:53Z"
    },
    {
      "id": "WFR-202",
      "schema_version": "1.0",
      "workflow_id": "session.stop",
      "workflow_version": 1,
      "definition_hash": "0cef7bb3e28321be8f85375c154955a69310ce297e47de3f3b8dd48f77a2f07d",
      "plan_hash": "a5e1d77ac734217487fc418e29c7163f4e81178e25d171e70cd4c999d527d3e8",
      "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
      "inputs": {},
      "idempotency_key": "hook:Stop:019f67ac-c03c-7f72-bfae-51f7c3474a71",
      "status": "completed",
      "attempt": 1,
      "created_at": "2026-07-15T21:29:08Z",
      "updated_at": "2026-07-15T21:29:10Z",
      "receipts": [
        {
          "step_id": "state",
          "action": "state.consistency",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "5a1c6e5246defb1b6b6b90ff734db95bece2886b408ab112ed9b8e67222d5568",
          "completed_at": "2026-07-15T21:29:09Z"
        },
        {
          "step_id": "goals",
          "action": "substrate.goals",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "cdfd4de44a28140e686159f34f7b47975954c67e1d1efcef666e985acb136ed8",
          "completed_at": "2026-07-15T21:29:09Z"
        },
        {
          "step_id": "staleness",
          "action": "staleness.audit",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "1e81cb0ffd0a4d04626920a203b38d2d23a264cd43e807a85d375d69cae8a658",
          "completed_at": "2026-07-15T21:29:09Z"
        },
        {
          "step_id": "reflections",
          "action": "reflection.list",
          "input_hash": "0172e841ab4c13b3a4061f073f9d68a716ec87a8a5d52fde41823385e0582573",
          "output_hash": "c1b6b635c0bab21120657277f14ef6f839909875f307a3745fa48aee2bd6e449",
          "completed_at": "2026-07-15T21:29:09Z"
        },
        {
          "step_id": "bundle",
          "action": "reporting.bundle",
          "input_hash": "aed8ebb688dc3c085dd978d7c4120572173c3cb87e75919e4a937dcca6ef9457",
          "output_hash": "f61aa7bfac7c2e96e3bf2d3386a95e45d2db52d040f05aff9ea963197eacc3f6",
          "completed_at": "2026-07-15T21:29:10Z"
        },
        {
          "step_id": "delegated",
          "action": "reporting.delegate",
          "input_hash": "5bf4dfad88c9958da759cb1561ca5fdd8f3ac9050e938bfde85af5c8d804adc9",
          "output_hash": "e6085059f197def80ae95add1f328418107bea5436c9bd002530043646a3a95c",
          "completed_at": "2026-07-15T21:29:10Z"
        }
      ],
      "steps": [
        {
          "id": "state",
          "action": "state.consistency",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-15T21:29:09Z",
          "output": {
            "status": "ok",
            "repo_root": "D:\\Projects\\prd-plugin",
            "summary": {
              "errors": 0,
              "warnings": 0,
              "infos": 0
            },
            "findings": []
          },
          "output_hash": "5a1c6e5246defb1b6b6b90ff734db95bece2886b408ab112ed9b8e67222d5568",
          "completed_at": "2026-07-15T21:29:09Z"
        },
        {
          "id": "goals",
          "action": "substrate.goals",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-15T21:29:09Z",
          "output": {
            "status": "disabled",
            "created": 0,
            "observed": 0,
            "results": []
          },
          "output_hash": "cdfd4de44a28140e686159f34f7b47975954c67e1d1efcef666e985acb136ed8",
          "completed_at": "2026-07-15T21:29:09Z"
        },
        {
          "id": "staleness",
          "action": "staleness.audit",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-15T21:29:09Z",
          "output": {
            "status": "ok",
            "repo_root": "D:\\Projects\\prd-plugin",
            "counts": {
              "stale": 0
            },
            "stale": []
          },
          "output_hash": "1e81cb0ffd0a4d04626920a203b38d2d23a264cd43e807a85d375d69cae8a658",
          "completed_at": "2026-07-15T21:29:09Z"
        },
        {
          "id": "reflections",
          "action": "reflection.list",
          "status": "completed",
          "resolved_input_hash": "0172e841ab4c13b3a4061f073f9d68a716ec87a8a5d52fde41823385e0582573",
          "started_at": "2026-07-15T21:29:09Z",
          "output": {
            "enabled": false,
            "on_stop": true,
            "max_questions_per_stop": 5,
            "categories": [
              {
                "id": "behaviour_quality",
                "name": "Behaviour quality",
                "enabled": true,
                "question_count": 3
              },
              {
                "id": "harness_friction",
                "name": "Harness friction",
                "enabled": true,
                "question_count": 2
              }
            ],
            "questions": [
              {
                "id": "RFQ-001",
                "text": "Based on the work you just carried out, would you classify your behaviour as good? Answer yes or no and cite observable evidence.",
                "enabled": true,
                "category_id": "behaviour_quality",
                "category_name": "Behaviour quality",
                "effective_enabled": false
              },
              {
                "id": "RFQ-002",
                "text": "If you answered no, what could you do differently to correct your behaviour?",
                "enabled": true,
                "category_id": "behaviour_quality",
                "category_name": "Behaviour quality",
                "effective_enabled": false
              },
              {
                "id": "RFQ-003",
                "text": "Would another attempt using the identified good behaviours materially improve the outcome? Answer yes or no and state the next corrective action if yes.",
                "enabled": true,
                "category_id": "behaviour_quality",
                "category_name": "Behaviour quality",
                "effective_enabled": false
              },
              {
                "id": "RFQ-004",
                "text": "What harness friction points made this work more difficult?",
                "enabled": true,
                "category_id": "harness_friction",
                "category_name": "Harness friction",
                "effective_enabled": false
              },
              {
                "id": "RFQ-005",
                "text": "What up to three changes would most improve friction in the harness?",
                "enabled": true,
                "category_id": "harness_friction",
                "category_name": "Harness friction",
                "effective_enabled": false
              }
            ]
          },
          "output_hash": "c1b6b635c0bab21120657277f14ef6f839909875f307a3745fa48aee2bd6e449",
          "completed_at": "2026-07-15T21:29:09Z"
        },
        {
          "id": "bundle",
          "action": "reporting.bundle",
          "status": "completed",
          "resolved_input_hash": "aed8ebb688dc3c085dd978d7c4120572173c3cb87e75919e4a937dcca6ef9457",
          "started_at": "2026-07-15T21:29:10Z",
          "output": {
            "contract_version": 1,
            "task": "session_summary",
            "repo": "prd-plugin",
            "policy": {
              "enabled": false,
              "executor": "ai-collab",
              "contract_version": 1,
              "profile": "fast-capable",
              "tasks": [
                "report_summary",
                "session_summary",
                "wiki_synthesis",
                "triage_draft"
              ],
              "fallback": "main",
              "require_source_refs": true,
              "max_input_tokens": 12000,
              "max_output_tokens": 1500,
              "timeout_seconds": 30
            },
            "facts": {
              "requests_by_status": {
                "deferred": 1,
                "implemented": 80,
                "proposed": 1,
                "rejected": 1
              },
              "active_requests": [
                {
                  "id": "REQ-072",
                  "status": "proposed",
                  "severity": "low",
                  "summary": "opencode run-until-done: session.idle is a non-blocking notification, so the stop guard can't force continuation on opencode (currently degrades to a printed reminder, 0.5.95). Investigate whether opencode exposes any vetoable/continuation mechanism (a different event, a permission hook, or a 'continue' API) to enforce run-until-done, or accept the reminder as the permanent ceiling. Low priority — user rarely uses opencode."
                }
              ],
              "active_tracking": [],
              "open_health": [],
              "evidence_count": 105,
              "decision_count": 10
            },
            "findings": [],
            "source_refs": [
              ".prd_plugin/config.json",
              ".prd_plugin/state/decisions.json",
              ".prd_plugin/state/evidence.json",
              ".prd_plugin/state/health.json",
              ".prd_plugin/state/requests.json",
              ".prd_plugin/state/tracking.json",
              "REQ-072"
            ],
            "constraints": {
              "max_input_tokens": 12000,
              "max_output_tokens": 1500,
              "timeout_seconds": 30,
              "require_source_refs": true,
              "no_project_state_writes": true,
              "no_secrets_or_local_session_content": true
            }
          },
          "output_hash": "f61aa7bfac7c2e96e3bf2d3386a95e45d2db52d040f05aff9ea963197eacc3f6",
          "completed_at": "2026-07-15T21:29:10Z"
        },
        {
          "id": "delegated",
          "action": "reporting.delegate",
          "status": "completed",
          "resolved_input_hash": "5bf4dfad88c9958da759cb1561ca5fdd8f3ac9050e938bfde85af5c8d804adc9",
          "started_at": "2026-07-15T21:29:10Z",
          "output": {
            "status": "fallback",
            "action": "main",
            "reason": "disabled"
          },
          "output_hash": "e6085059f197def80ae95add1f328418107bea5436c9bd002530043646a3a95c",
          "completed_at": "2026-07-15T21:29:10Z"
        }
      ],
      "completed_at": "2026-07-15T21:29:10Z"
    },
    {
      "id": "WFR-203",
      "schema_version": "1.0",
      "workflow_id": "session.start",
      "workflow_version": 1,
      "definition_hash": "d0f98da02571e6dd27fec4aed92d3c82af9db75f8b90b997bf665635c7b7f6ca",
      "plan_hash": "b5072615ca3b7e9a3bd85d50d1f069d99ef2a9816b32c03a370745ed7a205536",
      "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
      "inputs": {},
      "idempotency_key": "hook:SessionStart:019f67af-a643-7873-a887-224f9837d40d",
      "status": "completed",
      "attempt": 1,
      "created_at": "2026-07-15T21:29:55Z",
      "updated_at": "2026-07-15T21:29:56Z",
      "receipts": [
        {
          "step_id": "config",
          "action": "config.audit",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "3782ec2317c0c8ee7598634310a2804d8aae4735f557498f9d3b8fae7c45e1e5",
          "completed_at": "2026-07-15T21:29:55Z"
        },
        {
          "step_id": "services",
          "action": "services.audit",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "13dcc58bd528f3efa3e6e0fa0853a6eedc376f1f3685fbd4869cbb2b60382ee3",
          "completed_at": "2026-07-15T21:29:55Z"
        },
        {
          "step_id": "state",
          "action": "state.consistency",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "5a1c6e5246defb1b6b6b90ff734db95bece2886b408ab112ed9b8e67222d5568",
          "completed_at": "2026-07-15T21:29:55Z"
        },
        {
          "step_id": "status",
          "action": "state.query",
          "input_hash": "a15231a2142a2a9a85355a8b9cbbccffe01a9c9c2c2fd8c2bc2987cdc481564a",
          "output_hash": "8ba9f7d3cc6705af37de9e3324d1258e21ccacb5ab0b2d7b389ca08885e11187",
          "completed_at": "2026-07-15T21:29:56Z"
        },
        {
          "step_id": "substrate",
          "action": "substrate.preflight",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "a6df426290b4549a59eecaa0519ead9bcc50b7fcb25bd2185ff6047960f19ccb",
          "completed_at": "2026-07-15T21:29:56Z"
        },
        {
          "step_id": "notices",
          "action": "substrate.notices",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "38b904a1cf83df048360fb2480571b749fd98d57e11f1afdffb5a74a78166fea",
          "completed_at": "2026-07-15T21:29:56Z"
        },
        {
          "step_id": "goals",
          "action": "substrate.goals",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "cdfd4de44a28140e686159f34f7b47975954c67e1d1efcef666e985acb136ed8",
          "completed_at": "2026-07-15T21:29:56Z"
        }
      ],
      "steps": [
        {
          "id": "config",
          "action": "config.audit",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-15T21:29:55Z",
          "output": {
            "status": "ok",
            "summary": {
              "settings": 195,
              "mutable": 186,
              "read_only_or_managed": 9,
              "unclassified": 0,
              "unknown": 0,
              "invalid": 0,
              "missing_using_defaults": 0
            },
            "unclassified_keys": [],
            "unknown_keys": [],
            "invalid_values": [],
            "missing_using_defaults": []
          },
          "output_hash": "3782ec2317c0c8ee7598634310a2804d8aae4735f557498f9d3b8fae7c45e1e5",
          "completed_at": "2026-07-15T21:29:55Z"
        },
        {
          "id": "services",
          "action": "services.audit",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-15T21:29:55Z",
          "output": {
            "status": "ok",
            "summary": {
              "critical": 0,
              "high": 0,
              "medium": 0,
              "low": 0
            },
            "findings": []
          },
          "output_hash": "13dcc58bd528f3efa3e6e0fa0853a6eedc376f1f3685fbd4869cbb2b60382ee3",
          "completed_at": "2026-07-15T21:29:55Z"
        },
        {
          "id": "state",
          "action": "state.consistency",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-15T21:29:55Z",
          "output": {
            "status": "ok",
            "repo_root": "D:\\Projects\\prd-plugin",
            "summary": {
              "errors": 0,
              "warnings": 0,
              "infos": 0
            },
            "findings": []
          },
          "output_hash": "5a1c6e5246defb1b6b6b90ff734db95bece2886b408ab112ed9b8e67222d5568",
          "completed_at": "2026-07-15T21:29:55Z"
        },
        {
          "id": "status",
          "action": "state.query",
          "status": "completed",
          "resolved_input_hash": "a15231a2142a2a9a85355a8b9cbbccffe01a9c9c2c2fd8c2bc2987cdc481564a",
          "started_at": "2026-07-15T21:29:56Z",
          "output": {
            "repo_root": "D:\\Projects\\prd-plugin",
            "autonomy_level": "autonomous",
            "requests_by_status": {
              "deferred": 1,
              "implemented": 80,
              "proposed": 1,
              "rejected": 1
            },
            "active_tracking": [],
            "tracking_branches": [],
            "tracking_branch_counts": {},
            "tracking_branch_errors": [],
            "open_health": [],
            "stale_count": 0,
            "skill_usage": {
              "project-decision-policy": 1,
              "project-request-intake": 1,
              "project-test-driven-implementation": 1,
              "project-verification-before-completion": 1,
              "project-llm-wiki": 1
            },
            "wiki_backfill_pending": false,
            "version_update": null
          },
          "output_hash": "8ba9f7d3cc6705af37de9e3324d1258e21ccacb5ab0b2d7b389ca08885e11187",
          "completed_at": "2026-07-15T21:29:56Z"
        },
        {
          "id": "substrate",
          "action": "substrate.preflight",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-15T21:29:56Z",
          "output": {
            "status": "disabled",
            "services": {
              "status": "ok",
              "summary": {
                "critical": 0,
                "high": 0,
                "medium": 0,
                "low": 0
              },
              "findings": []
            },
            "policy": {
              "configured": {
                "enabled": false,
                "mode": "off",
                "capabilities": [
                  "records",
                  "graph",
                  "events"
                ],
                "contract_version": 2,
                "require_source_refs": true,
                "endpoint": "http://127.0.0.1:47124",
                "manual_url": "http://127.0.0.1:47124/utcp.json",
                "knowledge_browse_url": "http://127.0.0.1:5276",
                "auth_env": "AI_COLLAB_API_KEY",
                "timeout_seconds": 5,
                "max_result_bytes": 1048576,
                "cache_ttl_seconds": 60,
                "fallback": "local",
                "automation": {
                  "discovery_on_session_start": true,
                  "knowledge_recall": true,
                  "memory_recall": true,
                  "context_enrichment": true,
                  "notices_on_session_start": false,
                  "goals_sync": false,
                  "telemetry_on_maintenance": false,
                  "reporting_dispatch": true,
                  "judgment_dispatch": true,
                  "verification_execution": true
                }
              },
              "active": false,
              "effective_mode": "off",
              "effective_capabilities": []
            }
          },
          "output_hash": "a6df426290b4549a59eecaa0519ead9bcc50b7fcb25bd2185ff6047960f19ccb",
          "completed_at": "2026-07-15T21:29:56Z"
        },
        {
          "id": "notices",
          "action": "substrate.notices",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-15T21:29:56Z",
          "output": {
            "status": "disabled"
          },
          "output_hash": "38b904a1cf83df048360fb2480571b749fd98d57e11f1afdffb5a74a78166fea",
          "completed_at": "2026-07-15T21:29:56Z"
        },
        {
          "id": "goals",
          "action": "substrate.goals",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-15T21:29:56Z",
          "output": {
            "status": "disabled",
            "created": 0,
            "observed": 0,
            "results": []
          },
          "output_hash": "cdfd4de44a28140e686159f34f7b47975954c67e1d1efcef666e985acb136ed8",
          "completed_at": "2026-07-15T21:29:56Z"
        }
      ],
      "completed_at": "2026-07-15T21:29:56Z"
    },
    {
      "id": "WFR-204",
      "schema_version": "1.0",
      "workflow_id": "session.stop",
      "workflow_version": 1,
      "definition_hash": "0cef7bb3e28321be8f85375c154955a69310ce297e47de3f3b8dd48f77a2f07d",
      "plan_hash": "a5e1d77ac734217487fc418e29c7163f4e81178e25d171e70cd4c999d527d3e8",
      "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
      "inputs": {},
      "idempotency_key": "hook:Stop:019f67af-a643-7873-a887-224f9837d40d",
      "status": "completed",
      "attempt": 1,
      "created_at": "2026-07-15T21:30:02Z",
      "updated_at": "2026-07-15T21:30:03Z",
      "receipts": [
        {
          "step_id": "state",
          "action": "state.consistency",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "5a1c6e5246defb1b6b6b90ff734db95bece2886b408ab112ed9b8e67222d5568",
          "completed_at": "2026-07-15T21:30:02Z"
        },
        {
          "step_id": "goals",
          "action": "substrate.goals",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "cdfd4de44a28140e686159f34f7b47975954c67e1d1efcef666e985acb136ed8",
          "completed_at": "2026-07-15T21:30:03Z"
        },
        {
          "step_id": "staleness",
          "action": "staleness.audit",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "1e81cb0ffd0a4d04626920a203b38d2d23a264cd43e807a85d375d69cae8a658",
          "completed_at": "2026-07-15T21:30:03Z"
        },
        {
          "step_id": "reflections",
          "action": "reflection.list",
          "input_hash": "0172e841ab4c13b3a4061f073f9d68a716ec87a8a5d52fde41823385e0582573",
          "output_hash": "c1b6b635c0bab21120657277f14ef6f839909875f307a3745fa48aee2bd6e449",
          "completed_at": "2026-07-15T21:30:03Z"
        },
        {
          "step_id": "bundle",
          "action": "reporting.bundle",
          "input_hash": "aed8ebb688dc3c085dd978d7c4120572173c3cb87e75919e4a937dcca6ef9457",
          "output_hash": "f61aa7bfac7c2e96e3bf2d3386a95e45d2db52d040f05aff9ea963197eacc3f6",
          "completed_at": "2026-07-15T21:30:03Z"
        },
        {
          "step_id": "delegated",
          "action": "reporting.delegate",
          "input_hash": "5bf4dfad88c9958da759cb1561ca5fdd8f3ac9050e938bfde85af5c8d804adc9",
          "output_hash": "e6085059f197def80ae95add1f328418107bea5436c9bd002530043646a3a95c",
          "completed_at": "2026-07-15T21:30:03Z"
        }
      ],
      "steps": [
        {
          "id": "state",
          "action": "state.consistency",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-15T21:30:02Z",
          "output": {
            "status": "ok",
            "repo_root": "D:\\Projects\\prd-plugin",
            "summary": {
              "errors": 0,
              "warnings": 0,
              "infos": 0
            },
            "findings": []
          },
          "output_hash": "5a1c6e5246defb1b6b6b90ff734db95bece2886b408ab112ed9b8e67222d5568",
          "completed_at": "2026-07-15T21:30:02Z"
        },
        {
          "id": "goals",
          "action": "substrate.goals",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-15T21:30:03Z",
          "output": {
            "status": "disabled",
            "created": 0,
            "observed": 0,
            "results": []
          },
          "output_hash": "cdfd4de44a28140e686159f34f7b47975954c67e1d1efcef666e985acb136ed8",
          "completed_at": "2026-07-15T21:30:03Z"
        },
        {
          "id": "staleness",
          "action": "staleness.audit",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-15T21:30:03Z",
          "output": {
            "status": "ok",
            "repo_root": "D:\\Projects\\prd-plugin",
            "counts": {
              "stale": 0
            },
            "stale": []
          },
          "output_hash": "1e81cb0ffd0a4d04626920a203b38d2d23a264cd43e807a85d375d69cae8a658",
          "completed_at": "2026-07-15T21:30:03Z"
        },
        {
          "id": "reflections",
          "action": "reflection.list",
          "status": "completed",
          "resolved_input_hash": "0172e841ab4c13b3a4061f073f9d68a716ec87a8a5d52fde41823385e0582573",
          "started_at": "2026-07-15T21:30:03Z",
          "output": {
            "enabled": false,
            "on_stop": true,
            "max_questions_per_stop": 5,
            "categories": [
              {
                "id": "behaviour_quality",
                "name": "Behaviour quality",
                "enabled": true,
                "question_count": 3
              },
              {
                "id": "harness_friction",
                "name": "Harness friction",
                "enabled": true,
                "question_count": 2
              }
            ],
            "questions": [
              {
                "id": "RFQ-001",
                "text": "Based on the work you just carried out, would you classify your behaviour as good? Answer yes or no and cite observable evidence.",
                "enabled": true,
                "category_id": "behaviour_quality",
                "category_name": "Behaviour quality",
                "effective_enabled": false
              },
              {
                "id": "RFQ-002",
                "text": "If you answered no, what could you do differently to correct your behaviour?",
                "enabled": true,
                "category_id": "behaviour_quality",
                "category_name": "Behaviour quality",
                "effective_enabled": false
              },
              {
                "id": "RFQ-003",
                "text": "Would another attempt using the identified good behaviours materially improve the outcome? Answer yes or no and state the next corrective action if yes.",
                "enabled": true,
                "category_id": "behaviour_quality",
                "category_name": "Behaviour quality",
                "effective_enabled": false
              },
              {
                "id": "RFQ-004",
                "text": "What harness friction points made this work more difficult?",
                "enabled": true,
                "category_id": "harness_friction",
                "category_name": "Harness friction",
                "effective_enabled": false
              },
              {
                "id": "RFQ-005",
                "text": "What up to three changes would most improve friction in the harness?",
                "enabled": true,
                "category_id": "harness_friction",
                "category_name": "Harness friction",
                "effective_enabled": false
              }
            ]
          },
          "output_hash": "c1b6b635c0bab21120657277f14ef6f839909875f307a3745fa48aee2bd6e449",
          "completed_at": "2026-07-15T21:30:03Z"
        },
        {
          "id": "bundle",
          "action": "reporting.bundle",
          "status": "completed",
          "resolved_input_hash": "aed8ebb688dc3c085dd978d7c4120572173c3cb87e75919e4a937dcca6ef9457",
          "started_at": "2026-07-15T21:30:03Z",
          "output": {
            "contract_version": 1,
            "task": "session_summary",
            "repo": "prd-plugin",
            "policy": {
              "enabled": false,
              "executor": "ai-collab",
              "contract_version": 1,
              "profile": "fast-capable",
              "tasks": [
                "report_summary",
                "session_summary",
                "wiki_synthesis",
                "triage_draft"
              ],
              "fallback": "main",
              "require_source_refs": true,
              "max_input_tokens": 12000,
              "max_output_tokens": 1500,
              "timeout_seconds": 30
            },
            "facts": {
              "requests_by_status": {
                "deferred": 1,
                "implemented": 80,
                "proposed": 1,
                "rejected": 1
              },
              "active_requests": [
                {
                  "id": "REQ-072",
                  "status": "proposed",
                  "severity": "low",
                  "summary": "opencode run-until-done: session.idle is a non-blocking notification, so the stop guard can't force continuation on opencode (currently degrades to a printed reminder, 0.5.95). Investigate whether opencode exposes any vetoable/continuation mechanism (a different event, a permission hook, or a 'continue' API) to enforce run-until-done, or accept the reminder as the permanent ceiling. Low priority — user rarely uses opencode."
                }
              ],
              "active_tracking": [],
              "open_health": [],
              "evidence_count": 105,
              "decision_count": 10
            },
            "findings": [],
            "source_refs": [
              ".prd_plugin/config.json",
              ".prd_plugin/state/decisions.json",
              ".prd_plugin/state/evidence.json",
              ".prd_plugin/state/health.json",
              ".prd_plugin/state/requests.json",
              ".prd_plugin/state/tracking.json",
              "REQ-072"
            ],
            "constraints": {
              "max_input_tokens": 12000,
              "max_output_tokens": 1500,
              "timeout_seconds": 30,
              "require_source_refs": true,
              "no_project_state_writes": true,
              "no_secrets_or_local_session_content": true
            }
          },
          "output_hash": "f61aa7bfac7c2e96e3bf2d3386a95e45d2db52d040f05aff9ea963197eacc3f6",
          "completed_at": "2026-07-15T21:30:03Z"
        },
        {
          "id": "delegated",
          "action": "reporting.delegate",
          "status": "completed",
          "resolved_input_hash": "5bf4dfad88c9958da759cb1561ca5fdd8f3ac9050e938bfde85af5c8d804adc9",
          "started_at": "2026-07-15T21:30:03Z",
          "output": {
            "status": "fallback",
            "action": "main",
            "reason": "disabled"
          },
          "output_hash": "e6085059f197def80ae95add1f328418107bea5436c9bd002530043646a3a95c",
          "completed_at": "2026-07-15T21:30:03Z"
        }
      ],
      "completed_at": "2026-07-15T21:30:03Z"
    },
    {
      "id": "WFR-205",
      "schema_version": "1.0",
      "workflow_id": "session.start",
      "workflow_version": 1,
      "definition_hash": "d0f98da02571e6dd27fec4aed92d3c82af9db75f8b90b997bf665635c7b7f6ca",
      "plan_hash": "b5072615ca3b7e9a3bd85d50d1f069d99ef2a9816b32c03a370745ed7a205536",
      "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
      "inputs": {},
      "idempotency_key": "hook:SessionStart:019f67b5-13d2-7351-889b-e8e37f7b4f80",
      "status": "completed",
      "attempt": 1,
      "created_at": "2026-07-15T21:35:50Z",
      "updated_at": "2026-07-15T21:35:52Z",
      "receipts": [
        {
          "step_id": "config",
          "action": "config.audit",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "3782ec2317c0c8ee7598634310a2804d8aae4735f557498f9d3b8fae7c45e1e5",
          "completed_at": "2026-07-15T21:35:51Z"
        },
        {
          "step_id": "services",
          "action": "services.audit",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "13dcc58bd528f3efa3e6e0fa0853a6eedc376f1f3685fbd4869cbb2b60382ee3",
          "completed_at": "2026-07-15T21:35:51Z"
        },
        {
          "step_id": "state",
          "action": "state.consistency",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "5a1c6e5246defb1b6b6b90ff734db95bece2886b408ab112ed9b8e67222d5568",
          "completed_at": "2026-07-15T21:35:51Z"
        },
        {
          "step_id": "status",
          "action": "state.query",
          "input_hash": "a15231a2142a2a9a85355a8b9cbbccffe01a9c9c2c2fd8c2bc2987cdc481564a",
          "output_hash": "8ba9f7d3cc6705af37de9e3324d1258e21ccacb5ab0b2d7b389ca08885e11187",
          "completed_at": "2026-07-15T21:35:52Z"
        },
        {
          "step_id": "substrate",
          "action": "substrate.preflight",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "a6df426290b4549a59eecaa0519ead9bcc50b7fcb25bd2185ff6047960f19ccb",
          "completed_at": "2026-07-15T21:35:52Z"
        },
        {
          "step_id": "notices",
          "action": "substrate.notices",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "38b904a1cf83df048360fb2480571b749fd98d57e11f1afdffb5a74a78166fea",
          "completed_at": "2026-07-15T21:35:52Z"
        },
        {
          "step_id": "goals",
          "action": "substrate.goals",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "cdfd4de44a28140e686159f34f7b47975954c67e1d1efcef666e985acb136ed8",
          "completed_at": "2026-07-15T21:35:52Z"
        }
      ],
      "steps": [
        {
          "id": "config",
          "action": "config.audit",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-15T21:35:51Z",
          "output": {
            "status": "ok",
            "summary": {
              "settings": 195,
              "mutable": 186,
              "read_only_or_managed": 9,
              "unclassified": 0,
              "unknown": 0,
              "invalid": 0,
              "missing_using_defaults": 0
            },
            "unclassified_keys": [],
            "unknown_keys": [],
            "invalid_values": [],
            "missing_using_defaults": []
          },
          "output_hash": "3782ec2317c0c8ee7598634310a2804d8aae4735f557498f9d3b8fae7c45e1e5",
          "completed_at": "2026-07-15T21:35:51Z"
        },
        {
          "id": "services",
          "action": "services.audit",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-15T21:35:51Z",
          "output": {
            "status": "ok",
            "summary": {
              "critical": 0,
              "high": 0,
              "medium": 0,
              "low": 0
            },
            "findings": []
          },
          "output_hash": "13dcc58bd528f3efa3e6e0fa0853a6eedc376f1f3685fbd4869cbb2b60382ee3",
          "completed_at": "2026-07-15T21:35:51Z"
        },
        {
          "id": "state",
          "action": "state.consistency",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-15T21:35:51Z",
          "output": {
            "status": "ok",
            "repo_root": "D:\\Projects\\prd-plugin",
            "summary": {
              "errors": 0,
              "warnings": 0,
              "infos": 0
            },
            "findings": []
          },
          "output_hash": "5a1c6e5246defb1b6b6b90ff734db95bece2886b408ab112ed9b8e67222d5568",
          "completed_at": "2026-07-15T21:35:51Z"
        },
        {
          "id": "status",
          "action": "state.query",
          "status": "completed",
          "resolved_input_hash": "a15231a2142a2a9a85355a8b9cbbccffe01a9c9c2c2fd8c2bc2987cdc481564a",
          "started_at": "2026-07-15T21:35:51Z",
          "output": {
            "repo_root": "D:\\Projects\\prd-plugin",
            "autonomy_level": "autonomous",
            "requests_by_status": {
              "deferred": 1,
              "implemented": 80,
              "proposed": 1,
              "rejected": 1
            },
            "active_tracking": [],
            "tracking_branches": [],
            "tracking_branch_counts": {},
            "tracking_branch_errors": [],
            "open_health": [],
            "stale_count": 0,
            "skill_usage": {
              "project-decision-policy": 1,
              "project-request-intake": 1,
              "project-test-driven-implementation": 1,
              "project-verification-before-completion": 1,
              "project-llm-wiki": 1
            },
            "wiki_backfill_pending": false,
            "version_update": null
          },
          "output_hash": "8ba9f7d3cc6705af37de9e3324d1258e21ccacb5ab0b2d7b389ca08885e11187",
          "completed_at": "2026-07-15T21:35:52Z"
        },
        {
          "id": "substrate",
          "action": "substrate.preflight",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-15T21:35:52Z",
          "output": {
            "status": "disabled",
            "services": {
              "status": "ok",
              "summary": {
                "critical": 0,
                "high": 0,
                "medium": 0,
                "low": 0
              },
              "findings": []
            },
            "policy": {
              "configured": {
                "enabled": false,
                "mode": "off",
                "capabilities": [
                  "records",
                  "graph",
                  "events"
                ],
                "contract_version": 2,
                "require_source_refs": true,
                "endpoint": "http://127.0.0.1:47124",
                "manual_url": "http://127.0.0.1:47124/utcp.json",
                "knowledge_browse_url": "http://127.0.0.1:5276",
                "auth_env": "AI_COLLAB_API_KEY",
                "timeout_seconds": 5,
                "max_result_bytes": 1048576,
                "cache_ttl_seconds": 60,
                "fallback": "local",
                "automation": {
                  "discovery_on_session_start": true,
                  "knowledge_recall": true,
                  "memory_recall": true,
                  "context_enrichment": true,
                  "notices_on_session_start": false,
                  "goals_sync": false,
                  "telemetry_on_maintenance": false,
                  "reporting_dispatch": true,
                  "judgment_dispatch": true,
                  "verification_execution": true
                }
              },
              "active": false,
              "effective_mode": "off",
              "effective_capabilities": []
            }
          },
          "output_hash": "a6df426290b4549a59eecaa0519ead9bcc50b7fcb25bd2185ff6047960f19ccb",
          "completed_at": "2026-07-15T21:35:52Z"
        },
        {
          "id": "notices",
          "action": "substrate.notices",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-15T21:35:52Z",
          "output": {
            "status": "disabled"
          },
          "output_hash": "38b904a1cf83df048360fb2480571b749fd98d57e11f1afdffb5a74a78166fea",
          "completed_at": "2026-07-15T21:35:52Z"
        },
        {
          "id": "goals",
          "action": "substrate.goals",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-15T21:35:52Z",
          "output": {
            "status": "disabled",
            "created": 0,
            "observed": 0,
            "results": []
          },
          "output_hash": "cdfd4de44a28140e686159f34f7b47975954c67e1d1efcef666e985acb136ed8",
          "completed_at": "2026-07-15T21:35:52Z"
        }
      ],
      "completed_at": "2026-07-15T21:35:52Z"
    },
    {
      "id": "WFR-206",
      "schema_version": "1.0",
      "workflow_id": "session.stop",
      "workflow_version": 1,
      "definition_hash": "0cef7bb3e28321be8f85375c154955a69310ce297e47de3f3b8dd48f77a2f07d",
      "plan_hash": "a5e1d77ac734217487fc418e29c7163f4e81178e25d171e70cd4c999d527d3e8",
      "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
      "inputs": {},
      "idempotency_key": "hook:Stop:019f67b5-13d2-7351-889b-e8e37f7b4f80",
      "status": "completed",
      "attempt": 1,
      "created_at": "2026-07-15T21:35:57Z",
      "updated_at": "2026-07-15T21:35:59Z",
      "receipts": [
        {
          "step_id": "state",
          "action": "state.consistency",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "5a1c6e5246defb1b6b6b90ff734db95bece2886b408ab112ed9b8e67222d5568",
          "completed_at": "2026-07-15T21:35:58Z"
        },
        {
          "step_id": "goals",
          "action": "substrate.goals",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "cdfd4de44a28140e686159f34f7b47975954c67e1d1efcef666e985acb136ed8",
          "completed_at": "2026-07-15T21:35:58Z"
        },
        {
          "step_id": "staleness",
          "action": "staleness.audit",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "1e81cb0ffd0a4d04626920a203b38d2d23a264cd43e807a85d375d69cae8a658",
          "completed_at": "2026-07-15T21:35:58Z"
        },
        {
          "step_id": "reflections",
          "action": "reflection.list",
          "input_hash": "0172e841ab4c13b3a4061f073f9d68a716ec87a8a5d52fde41823385e0582573",
          "output_hash": "c1b6b635c0bab21120657277f14ef6f839909875f307a3745fa48aee2bd6e449",
          "completed_at": "2026-07-15T21:35:58Z"
        },
        {
          "step_id": "bundle",
          "action": "reporting.bundle",
          "input_hash": "aed8ebb688dc3c085dd978d7c4120572173c3cb87e75919e4a937dcca6ef9457",
          "output_hash": "f61aa7bfac7c2e96e3bf2d3386a95e45d2db52d040f05aff9ea963197eacc3f6",
          "completed_at": "2026-07-15T21:35:59Z"
        },
        {
          "step_id": "delegated",
          "action": "reporting.delegate",
          "input_hash": "5bf4dfad88c9958da759cb1561ca5fdd8f3ac9050e938bfde85af5c8d804adc9",
          "output_hash": "e6085059f197def80ae95add1f328418107bea5436c9bd002530043646a3a95c",
          "completed_at": "2026-07-15T21:35:59Z"
        }
      ],
      "steps": [
        {
          "id": "state",
          "action": "state.consistency",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-15T21:35:57Z",
          "output": {
            "status": "ok",
            "repo_root": "D:\\Projects\\prd-plugin",
            "summary": {
              "errors": 0,
              "warnings": 0,
              "infos": 0
            },
            "findings": []
          },
          "output_hash": "5a1c6e5246defb1b6b6b90ff734db95bece2886b408ab112ed9b8e67222d5568",
          "completed_at": "2026-07-15T21:35:58Z"
        },
        {
          "id": "goals",
          "action": "substrate.goals",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-15T21:35:58Z",
          "output": {
            "status": "disabled",
            "created": 0,
            "observed": 0,
            "results": []
          },
          "output_hash": "cdfd4de44a28140e686159f34f7b47975954c67e1d1efcef666e985acb136ed8",
          "completed_at": "2026-07-15T21:35:58Z"
        },
        {
          "id": "staleness",
          "action": "staleness.audit",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-15T21:35:58Z",
          "output": {
            "status": "ok",
            "repo_root": "D:\\Projects\\prd-plugin",
            "counts": {
              "stale": 0
            },
            "stale": []
          },
          "output_hash": "1e81cb0ffd0a4d04626920a203b38d2d23a264cd43e807a85d375d69cae8a658",
          "completed_at": "2026-07-15T21:35:58Z"
        },
        {
          "id": "reflections",
          "action": "reflection.list",
          "status": "completed",
          "resolved_input_hash": "0172e841ab4c13b3a4061f073f9d68a716ec87a8a5d52fde41823385e0582573",
          "started_at": "2026-07-15T21:35:58Z",
          "output": {
            "enabled": false,
            "on_stop": true,
            "max_questions_per_stop": 5,
            "categories": [
              {
                "id": "behaviour_quality",
                "name": "Behaviour quality",
                "enabled": true,
                "question_count": 3
              },
              {
                "id": "harness_friction",
                "name": "Harness friction",
                "enabled": true,
                "question_count": 2
              }
            ],
            "questions": [
              {
                "id": "RFQ-001",
                "text": "Based on the work you just carried out, would you classify your behaviour as good? Answer yes or no and cite observable evidence.",
                "enabled": true,
                "category_id": "behaviour_quality",
                "category_name": "Behaviour quality",
                "effective_enabled": false
              },
              {
                "id": "RFQ-002",
                "text": "If you answered no, what could you do differently to correct your behaviour?",
                "enabled": true,
                "category_id": "behaviour_quality",
                "category_name": "Behaviour quality",
                "effective_enabled": false
              },
              {
                "id": "RFQ-003",
                "text": "Would another attempt using the identified good behaviours materially improve the outcome? Answer yes or no and state the next corrective action if yes.",
                "enabled": true,
                "category_id": "behaviour_quality",
                "category_name": "Behaviour quality",
                "effective_enabled": false
              },
              {
                "id": "RFQ-004",
                "text": "What harness friction points made this work more difficult?",
                "enabled": true,
                "category_id": "harness_friction",
                "category_name": "Harness friction",
                "effective_enabled": false
              },
              {
                "id": "RFQ-005",
                "text": "What up to three changes would most improve friction in the harness?",
                "enabled": true,
                "category_id": "harness_friction",
                "category_name": "Harness friction",
                "effective_enabled": false
              }
            ]
          },
          "output_hash": "c1b6b635c0bab21120657277f14ef6f839909875f307a3745fa48aee2bd6e449",
          "completed_at": "2026-07-15T21:35:58Z"
        },
        {
          "id": "bundle",
          "action": "reporting.bundle",
          "status": "completed",
          "resolved_input_hash": "aed8ebb688dc3c085dd978d7c4120572173c3cb87e75919e4a937dcca6ef9457",
          "started_at": "2026-07-15T21:35:59Z",
          "output": {
            "contract_version": 1,
            "task": "session_summary",
            "repo": "prd-plugin",
            "policy": {
              "enabled": false,
              "executor": "ai-collab",
              "contract_version": 1,
              "profile": "fast-capable",
              "tasks": [
                "report_summary",
                "session_summary",
                "wiki_synthesis",
                "triage_draft"
              ],
              "fallback": "main",
              "require_source_refs": true,
              "max_input_tokens": 12000,
              "max_output_tokens": 1500,
              "timeout_seconds": 30
            },
            "facts": {
              "requests_by_status": {
                "deferred": 1,
                "implemented": 80,
                "proposed": 1,
                "rejected": 1
              },
              "active_requests": [
                {
                  "id": "REQ-072",
                  "status": "proposed",
                  "severity": "low",
                  "summary": "opencode run-until-done: session.idle is a non-blocking notification, so the stop guard can't force continuation on opencode (currently degrades to a printed reminder, 0.5.95). Investigate whether opencode exposes any vetoable/continuation mechanism (a different event, a permission hook, or a 'continue' API) to enforce run-until-done, or accept the reminder as the permanent ceiling. Low priority — user rarely uses opencode."
                }
              ],
              "active_tracking": [],
              "open_health": [],
              "evidence_count": 105,
              "decision_count": 10
            },
            "findings": [],
            "source_refs": [
              ".prd_plugin/config.json",
              ".prd_plugin/state/decisions.json",
              ".prd_plugin/state/evidence.json",
              ".prd_plugin/state/health.json",
              ".prd_plugin/state/requests.json",
              ".prd_plugin/state/tracking.json",
              "REQ-072"
            ],
            "constraints": {
              "max_input_tokens": 12000,
              "max_output_tokens": 1500,
              "timeout_seconds": 30,
              "require_source_refs": true,
              "no_project_state_writes": true,
              "no_secrets_or_local_session_content": true
            }
          },
          "output_hash": "f61aa7bfac7c2e96e3bf2d3386a95e45d2db52d040f05aff9ea963197eacc3f6",
          "completed_at": "2026-07-15T21:35:59Z"
        },
        {
          "id": "delegated",
          "action": "reporting.delegate",
          "status": "completed",
          "resolved_input_hash": "5bf4dfad88c9958da759cb1561ca5fdd8f3ac9050e938bfde85af5c8d804adc9",
          "started_at": "2026-07-15T21:35:59Z",
          "output": {
            "status": "fallback",
            "action": "main",
            "reason": "disabled"
          },
          "output_hash": "e6085059f197def80ae95add1f328418107bea5436c9bd002530043646a3a95c",
          "completed_at": "2026-07-15T21:35:59Z"
        }
      ],
      "completed_at": "2026-07-15T21:35:59Z"
    },
    {
      "id": "WFR-207",
      "schema_version": "1.0",
      "workflow_id": "session.start",
      "workflow_version": 1,
      "definition_hash": "d0f98da02571e6dd27fec4aed92d3c82af9db75f8b90b997bf665635c7b7f6ca",
      "plan_hash": "b5072615ca3b7e9a3bd85d50d1f069d99ef2a9816b32c03a370745ed7a205536",
      "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
      "inputs": {},
      "idempotency_key": "hook:SessionStart:019f67b6-71bc-7ae1-b172-e8d2c7c0b826",
      "status": "completed",
      "attempt": 1,
      "created_at": "2026-07-15T21:37:21Z",
      "updated_at": "2026-07-15T21:37:23Z",
      "receipts": [
        {
          "step_id": "config",
          "action": "config.audit",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "3782ec2317c0c8ee7598634310a2804d8aae4735f557498f9d3b8fae7c45e1e5",
          "completed_at": "2026-07-15T21:37:22Z"
        },
        {
          "step_id": "services",
          "action": "services.audit",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "13dcc58bd528f3efa3e6e0fa0853a6eedc376f1f3685fbd4869cbb2b60382ee3",
          "completed_at": "2026-07-15T21:37:22Z"
        },
        {
          "step_id": "state",
          "action": "state.consistency",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "5a1c6e5246defb1b6b6b90ff734db95bece2886b408ab112ed9b8e67222d5568",
          "completed_at": "2026-07-15T21:37:22Z"
        },
        {
          "step_id": "status",
          "action": "state.query",
          "input_hash": "a15231a2142a2a9a85355a8b9cbbccffe01a9c9c2c2fd8c2bc2987cdc481564a",
          "output_hash": "8ba9f7d3cc6705af37de9e3324d1258e21ccacb5ab0b2d7b389ca08885e11187",
          "completed_at": "2026-07-15T21:37:23Z"
        },
        {
          "step_id": "substrate",
          "action": "substrate.preflight",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "a6df426290b4549a59eecaa0519ead9bcc50b7fcb25bd2185ff6047960f19ccb",
          "completed_at": "2026-07-15T21:37:23Z"
        },
        {
          "step_id": "notices",
          "action": "substrate.notices",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "38b904a1cf83df048360fb2480571b749fd98d57e11f1afdffb5a74a78166fea",
          "completed_at": "2026-07-15T21:37:23Z"
        },
        {
          "step_id": "goals",
          "action": "substrate.goals",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "cdfd4de44a28140e686159f34f7b47975954c67e1d1efcef666e985acb136ed8",
          "completed_at": "2026-07-15T21:37:23Z"
        }
      ],
      "steps": [
        {
          "id": "config",
          "action": "config.audit",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-15T21:37:22Z",
          "output": {
            "status": "ok",
            "summary": {
              "settings": 195,
              "mutable": 186,
              "read_only_or_managed": 9,
              "unclassified": 0,
              "unknown": 0,
              "invalid": 0,
              "missing_using_defaults": 0
            },
            "unclassified_keys": [],
            "unknown_keys": [],
            "invalid_values": [],
            "missing_using_defaults": []
          },
          "output_hash": "3782ec2317c0c8ee7598634310a2804d8aae4735f557498f9d3b8fae7c45e1e5",
          "completed_at": "2026-07-15T21:37:22Z"
        },
        {
          "id": "services",
          "action": "services.audit",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-15T21:37:22Z",
          "output": {
            "status": "ok",
            "summary": {
              "critical": 0,
              "high": 0,
              "medium": 0,
              "low": 0
            },
            "findings": []
          },
          "output_hash": "13dcc58bd528f3efa3e6e0fa0853a6eedc376f1f3685fbd4869cbb2b60382ee3",
          "completed_at": "2026-07-15T21:37:22Z"
        },
        {
          "id": "state",
          "action": "state.consistency",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-15T21:37:22Z",
          "output": {
            "status": "ok",
            "repo_root": "D:\\Projects\\prd-plugin",
            "summary": {
              "errors": 0,
              "warnings": 0,
              "infos": 0
            },
            "findings": []
          },
          "output_hash": "5a1c6e5246defb1b6b6b90ff734db95bece2886b408ab112ed9b8e67222d5568",
          "completed_at": "2026-07-15T21:37:22Z"
        },
        {
          "id": "status",
          "action": "state.query",
          "status": "completed",
          "resolved_input_hash": "a15231a2142a2a9a85355a8b9cbbccffe01a9c9c2c2fd8c2bc2987cdc481564a",
          "started_at": "2026-07-15T21:37:22Z",
          "output": {
            "repo_root": "D:\\Projects\\prd-plugin",
            "autonomy_level": "autonomous",
            "requests_by_status": {
              "deferred": 1,
              "implemented": 80,
              "proposed": 1,
              "rejected": 1
            },
            "active_tracking": [],
            "tracking_branches": [],
            "tracking_branch_counts": {},
            "tracking_branch_errors": [],
            "open_health": [],
            "stale_count": 0,
            "skill_usage": {
              "project-decision-policy": 1,
              "project-request-intake": 1,
              "project-test-driven-implementation": 1,
              "project-verification-before-completion": 1,
              "project-llm-wiki": 1
            },
            "wiki_backfill_pending": false,
            "version_update": null
          },
          "output_hash": "8ba9f7d3cc6705af37de9e3324d1258e21ccacb5ab0b2d7b389ca08885e11187",
          "completed_at": "2026-07-15T21:37:23Z"
        },
        {
          "id": "substrate",
          "action": "substrate.preflight",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-15T21:37:23Z",
          "output": {
            "status": "disabled",
            "services": {
              "status": "ok",
              "summary": {
                "critical": 0,
                "high": 0,
                "medium": 0,
                "low": 0
              },
              "findings": []
            },
            "policy": {
              "configured": {
                "enabled": false,
                "mode": "off",
                "capabilities": [
                  "records",
                  "graph",
                  "events"
                ],
                "contract_version": 2,
                "require_source_refs": true,
                "endpoint": "http://127.0.0.1:47124",
                "manual_url": "http://127.0.0.1:47124/utcp.json",
                "knowledge_browse_url": "http://127.0.0.1:5276",
                "auth_env": "AI_COLLAB_API_KEY",
                "timeout_seconds": 5,
                "max_result_bytes": 1048576,
                "cache_ttl_seconds": 60,
                "fallback": "local",
                "automation": {
                  "discovery_on_session_start": true,
                  "knowledge_recall": true,
                  "memory_recall": true,
                  "context_enrichment": true,
                  "notices_on_session_start": false,
                  "goals_sync": false,
                  "telemetry_on_maintenance": false,
                  "reporting_dispatch": true,
                  "judgment_dispatch": true,
                  "verification_execution": true
                }
              },
              "active": false,
              "effective_mode": "off",
              "effective_capabilities": []
            }
          },
          "output_hash": "a6df426290b4549a59eecaa0519ead9bcc50b7fcb25bd2185ff6047960f19ccb",
          "completed_at": "2026-07-15T21:37:23Z"
        },
        {
          "id": "notices",
          "action": "substrate.notices",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-15T21:37:23Z",
          "output": {
            "status": "disabled"
          },
          "output_hash": "38b904a1cf83df048360fb2480571b749fd98d57e11f1afdffb5a74a78166fea",
          "completed_at": "2026-07-15T21:37:23Z"
        },
        {
          "id": "goals",
          "action": "substrate.goals",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-15T21:37:23Z",
          "output": {
            "status": "disabled",
            "created": 0,
            "observed": 0,
            "results": []
          },
          "output_hash": "cdfd4de44a28140e686159f34f7b47975954c67e1d1efcef666e985acb136ed8",
          "completed_at": "2026-07-15T21:37:23Z"
        }
      ],
      "completed_at": "2026-07-15T21:37:23Z"
    },
    {
      "id": "WFR-208",
      "schema_version": "1.0",
      "workflow_id": "session.stop",
      "workflow_version": 1,
      "definition_hash": "0cef7bb3e28321be8f85375c154955a69310ce297e47de3f3b8dd48f77a2f07d",
      "plan_hash": "a5e1d77ac734217487fc418e29c7163f4e81178e25d171e70cd4c999d527d3e8",
      "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
      "inputs": {},
      "idempotency_key": "hook:Stop:019f67b6-71bc-7ae1-b172-e8d2c7c0b826",
      "status": "completed",
      "attempt": 1,
      "created_at": "2026-07-15T21:37:26Z",
      "updated_at": "2026-07-15T21:37:28Z",
      "receipts": [
        {
          "step_id": "state",
          "action": "state.consistency",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "5a1c6e5246defb1b6b6b90ff734db95bece2886b408ab112ed9b8e67222d5568",
          "completed_at": "2026-07-15T21:37:27Z"
        },
        {
          "step_id": "goals",
          "action": "substrate.goals",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "cdfd4de44a28140e686159f34f7b47975954c67e1d1efcef666e985acb136ed8",
          "completed_at": "2026-07-15T21:37:27Z"
        },
        {
          "step_id": "staleness",
          "action": "staleness.audit",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "1e81cb0ffd0a4d04626920a203b38d2d23a264cd43e807a85d375d69cae8a658",
          "completed_at": "2026-07-15T21:37:27Z"
        },
        {
          "step_id": "reflections",
          "action": "reflection.list",
          "input_hash": "0172e841ab4c13b3a4061f073f9d68a716ec87a8a5d52fde41823385e0582573",
          "output_hash": "c1b6b635c0bab21120657277f14ef6f839909875f307a3745fa48aee2bd6e449",
          "completed_at": "2026-07-15T21:37:27Z"
        },
        {
          "step_id": "bundle",
          "action": "reporting.bundle",
          "input_hash": "aed8ebb688dc3c085dd978d7c4120572173c3cb87e75919e4a937dcca6ef9457",
          "output_hash": "f61aa7bfac7c2e96e3bf2d3386a95e45d2db52d040f05aff9ea963197eacc3f6",
          "completed_at": "2026-07-15T21:37:27Z"
        },
        {
          "step_id": "delegated",
          "action": "reporting.delegate",
          "input_hash": "5bf4dfad88c9958da759cb1561ca5fdd8f3ac9050e938bfde85af5c8d804adc9",
          "output_hash": "e6085059f197def80ae95add1f328418107bea5436c9bd002530043646a3a95c",
          "completed_at": "2026-07-15T21:37:28Z"
        }
      ],
      "steps": [
        {
          "id": "state",
          "action": "state.consistency",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-15T21:37:26Z",
          "output": {
            "status": "ok",
            "repo_root": "D:\\Projects\\prd-plugin",
            "summary": {
              "errors": 0,
              "warnings": 0,
              "infos": 0
            },
            "findings": []
          },
          "output_hash": "5a1c6e5246defb1b6b6b90ff734db95bece2886b408ab112ed9b8e67222d5568",
          "completed_at": "2026-07-15T21:37:27Z"
        },
        {
          "id": "goals",
          "action": "substrate.goals",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-15T21:37:27Z",
          "output": {
            "status": "disabled",
            "created": 0,
            "observed": 0,
            "results": []
          },
          "output_hash": "cdfd4de44a28140e686159f34f7b47975954c67e1d1efcef666e985acb136ed8",
          "completed_at": "2026-07-15T21:37:27Z"
        },
        {
          "id": "staleness",
          "action": "staleness.audit",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-15T21:37:27Z",
          "output": {
            "status": "ok",
            "repo_root": "D:\\Projects\\prd-plugin",
            "counts": {
              "stale": 0
            },
            "stale": []
          },
          "output_hash": "1e81cb0ffd0a4d04626920a203b38d2d23a264cd43e807a85d375d69cae8a658",
          "completed_at": "2026-07-15T21:37:27Z"
        },
        {
          "id": "reflections",
          "action": "reflection.list",
          "status": "completed",
          "resolved_input_hash": "0172e841ab4c13b3a4061f073f9d68a716ec87a8a5d52fde41823385e0582573",
          "started_at": "2026-07-15T21:37:27Z",
          "output": {
            "enabled": false,
            "on_stop": true,
            "max_questions_per_stop": 5,
            "categories": [
              {
                "id": "behaviour_quality",
                "name": "Behaviour quality",
                "enabled": true,
                "question_count": 3
              },
              {
                "id": "harness_friction",
                "name": "Harness friction",
                "enabled": true,
                "question_count": 2
              }
            ],
            "questions": [
              {
                "id": "RFQ-001",
                "text": "Based on the work you just carried out, would you classify your behaviour as good? Answer yes or no and cite observable evidence.",
                "enabled": true,
                "category_id": "behaviour_quality",
                "category_name": "Behaviour quality",
                "effective_enabled": false
              },
              {
                "id": "RFQ-002",
                "text": "If you answered no, what could you do differently to correct your behaviour?",
                "enabled": true,
                "category_id": "behaviour_quality",
                "category_name": "Behaviour quality",
                "effective_enabled": false
              },
              {
                "id": "RFQ-003",
                "text": "Would another attempt using the identified good behaviours materially improve the outcome? Answer yes or no and state the next corrective action if yes.",
                "enabled": true,
                "category_id": "behaviour_quality",
                "category_name": "Behaviour quality",
                "effective_enabled": false
              },
              {
                "id": "RFQ-004",
                "text": "What harness friction points made this work more difficult?",
                "enabled": true,
                "category_id": "harness_friction",
                "category_name": "Harness friction",
                "effective_enabled": false
              },
              {
                "id": "RFQ-005",
                "text": "What up to three changes would most improve friction in the harness?",
                "enabled": true,
                "category_id": "harness_friction",
                "category_name": "Harness friction",
                "effective_enabled": false
              }
            ]
          },
          "output_hash": "c1b6b635c0bab21120657277f14ef6f839909875f307a3745fa48aee2bd6e449",
          "completed_at": "2026-07-15T21:37:27Z"
        },
        {
          "id": "bundle",
          "action": "reporting.bundle",
          "status": "completed",
          "resolved_input_hash": "aed8ebb688dc3c085dd978d7c4120572173c3cb87e75919e4a937dcca6ef9457",
          "started_at": "2026-07-15T21:37:27Z",
          "output": {
            "contract_version": 1,
            "task": "session_summary",
            "repo": "prd-plugin",
            "policy": {
              "enabled": false,
              "executor": "ai-collab",
              "contract_version": 1,
              "profile": "fast-capable",
              "tasks": [
                "report_summary",
                "session_summary",
                "wiki_synthesis",
                "triage_draft"
              ],
              "fallback": "main",
              "require_source_refs": true,
              "max_input_tokens": 12000,
              "max_output_tokens": 1500,
              "timeout_seconds": 30
            },
            "facts": {
              "requests_by_status": {
                "deferred": 1,
                "implemented": 80,
                "proposed": 1,
                "rejected": 1
              },
              "active_requests": [
                {
                  "id": "REQ-072",
                  "status": "proposed",
                  "severity": "low",
                  "summary": "opencode run-until-done: session.idle is a non-blocking notification, so the stop guard can't force continuation on opencode (currently degrades to a printed reminder, 0.5.95). Investigate whether opencode exposes any vetoable/continuation mechanism (a different event, a permission hook, or a 'continue' API) to enforce run-until-done, or accept the reminder as the permanent ceiling. Low priority — user rarely uses opencode."
                }
              ],
              "active_tracking": [],
              "open_health": [],
              "evidence_count": 105,
              "decision_count": 10
            },
            "findings": [],
            "source_refs": [
              ".prd_plugin/config.json",
              ".prd_plugin/state/decisions.json",
              ".prd_plugin/state/evidence.json",
              ".prd_plugin/state/health.json",
              ".prd_plugin/state/requests.json",
              ".prd_plugin/state/tracking.json",
              "REQ-072"
            ],
            "constraints": {
              "max_input_tokens": 12000,
              "max_output_tokens": 1500,
              "timeout_seconds": 30,
              "require_source_refs": true,
              "no_project_state_writes": true,
              "no_secrets_or_local_session_content": true
            }
          },
          "output_hash": "f61aa7bfac7c2e96e3bf2d3386a95e45d2db52d040f05aff9ea963197eacc3f6",
          "completed_at": "2026-07-15T21:37:27Z"
        },
        {
          "id": "delegated",
          "action": "reporting.delegate",
          "status": "completed",
          "resolved_input_hash": "5bf4dfad88c9958da759cb1561ca5fdd8f3ac9050e938bfde85af5c8d804adc9",
          "started_at": "2026-07-15T21:37:28Z",
          "output": {
            "status": "fallback",
            "action": "main",
            "reason": "disabled"
          },
          "output_hash": "e6085059f197def80ae95add1f328418107bea5436c9bd002530043646a3a95c",
          "completed_at": "2026-07-15T21:37:28Z"
        }
      ],
      "completed_at": "2026-07-15T21:37:28Z"
    },
    {
      "id": "WFR-209",
      "schema_version": "1.0",
      "workflow_id": "session.start",
      "workflow_version": 1,
      "definition_hash": "d0f98da02571e6dd27fec4aed92d3c82af9db75f8b90b997bf665635c7b7f6ca",
      "plan_hash": "b5072615ca3b7e9a3bd85d50d1f069d99ef2a9816b32c03a370745ed7a205536",
      "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
      "inputs": {},
      "idempotency_key": "hook:SessionStart:019f67b7-b2a7-71e2-a2be-41cc1b75b8f9",
      "status": "completed",
      "attempt": 1,
      "created_at": "2026-07-15T21:38:42Z",
      "updated_at": "2026-07-15T21:38:44Z",
      "receipts": [
        {
          "step_id": "config",
          "action": "config.audit",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "3782ec2317c0c8ee7598634310a2804d8aae4735f557498f9d3b8fae7c45e1e5",
          "completed_at": "2026-07-15T21:38:42Z"
        },
        {
          "step_id": "services",
          "action": "services.audit",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "13dcc58bd528f3efa3e6e0fa0853a6eedc376f1f3685fbd4869cbb2b60382ee3",
          "completed_at": "2026-07-15T21:38:42Z"
        },
        {
          "step_id": "state",
          "action": "state.consistency",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "5a1c6e5246defb1b6b6b90ff734db95bece2886b408ab112ed9b8e67222d5568",
          "completed_at": "2026-07-15T21:38:43Z"
        },
        {
          "step_id": "status",
          "action": "state.query",
          "input_hash": "a15231a2142a2a9a85355a8b9cbbccffe01a9c9c2c2fd8c2bc2987cdc481564a",
          "output_hash": "8ba9f7d3cc6705af37de9e3324d1258e21ccacb5ab0b2d7b389ca08885e11187",
          "completed_at": "2026-07-15T21:38:43Z"
        },
        {
          "step_id": "substrate",
          "action": "substrate.preflight",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "a6df426290b4549a59eecaa0519ead9bcc50b7fcb25bd2185ff6047960f19ccb",
          "completed_at": "2026-07-15T21:38:43Z"
        },
        {
          "step_id": "notices",
          "action": "substrate.notices",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "38b904a1cf83df048360fb2480571b749fd98d57e11f1afdffb5a74a78166fea",
          "completed_at": "2026-07-15T21:38:44Z"
        },
        {
          "step_id": "goals",
          "action": "substrate.goals",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "cdfd4de44a28140e686159f34f7b47975954c67e1d1efcef666e985acb136ed8",
          "completed_at": "2026-07-15T21:38:44Z"
        }
      ],
      "steps": [
        {
          "id": "config",
          "action": "config.audit",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-15T21:38:42Z",
          "output": {
            "status": "ok",
            "summary": {
              "settings": 195,
              "mutable": 186,
              "read_only_or_managed": 9,
              "unclassified": 0,
              "unknown": 0,
              "invalid": 0,
              "missing_using_defaults": 0
            },
            "unclassified_keys": [],
            "unknown_keys": [],
            "invalid_values": [],
            "missing_using_defaults": []
          },
          "output_hash": "3782ec2317c0c8ee7598634310a2804d8aae4735f557498f9d3b8fae7c45e1e5",
          "completed_at": "2026-07-15T21:38:42Z"
        },
        {
          "id": "services",
          "action": "services.audit",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-15T21:38:42Z",
          "output": {
            "status": "ok",
            "summary": {
              "critical": 0,
              "high": 0,
              "medium": 0,
              "low": 0
            },
            "findings": []
          },
          "output_hash": "13dcc58bd528f3efa3e6e0fa0853a6eedc376f1f3685fbd4869cbb2b60382ee3",
          "completed_at": "2026-07-15T21:38:42Z"
        },
        {
          "id": "state",
          "action": "state.consistency",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-15T21:38:42Z",
          "output": {
            "status": "ok",
            "repo_root": "D:\\Projects\\prd-plugin",
            "summary": {
              "errors": 0,
              "warnings": 0,
              "infos": 0
            },
            "findings": []
          },
          "output_hash": "5a1c6e5246defb1b6b6b90ff734db95bece2886b408ab112ed9b8e67222d5568",
          "completed_at": "2026-07-15T21:38:43Z"
        },
        {
          "id": "status",
          "action": "state.query",
          "status": "completed",
          "resolved_input_hash": "a15231a2142a2a9a85355a8b9cbbccffe01a9c9c2c2fd8c2bc2987cdc481564a",
          "started_at": "2026-07-15T21:38:43Z",
          "output": {
            "repo_root": "D:\\Projects\\prd-plugin",
            "autonomy_level": "autonomous",
            "requests_by_status": {
              "deferred": 1,
              "implemented": 80,
              "proposed": 1,
              "rejected": 1
            },
            "active_tracking": [],
            "tracking_branches": [],
            "tracking_branch_counts": {},
            "tracking_branch_errors": [],
            "open_health": [],
            "stale_count": 0,
            "skill_usage": {
              "project-decision-policy": 1,
              "project-request-intake": 1,
              "project-test-driven-implementation": 1,
              "project-verification-before-completion": 1,
              "project-llm-wiki": 1
            },
            "wiki_backfill_pending": false,
            "version_update": null
          },
          "output_hash": "8ba9f7d3cc6705af37de9e3324d1258e21ccacb5ab0b2d7b389ca08885e11187",
          "completed_at": "2026-07-15T21:38:43Z"
        },
        {
          "id": "substrate",
          "action": "substrate.preflight",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-15T21:38:43Z",
          "output": {
            "status": "disabled",
            "services": {
              "status": "ok",
              "summary": {
                "critical": 0,
                "high": 0,
                "medium": 0,
                "low": 0
              },
              "findings": []
            },
            "policy": {
              "configured": {
                "enabled": false,
                "mode": "off",
                "capabilities": [
                  "records",
                  "graph",
                  "events"
                ],
                "contract_version": 2,
                "require_source_refs": true,
                "endpoint": "http://127.0.0.1:47124",
                "manual_url": "http://127.0.0.1:47124/utcp.json",
                "knowledge_browse_url": "http://127.0.0.1:5276",
                "auth_env": "AI_COLLAB_API_KEY",
                "timeout_seconds": 5,
                "max_result_bytes": 1048576,
                "cache_ttl_seconds": 60,
                "fallback": "local",
                "automation": {
                  "discovery_on_session_start": true,
                  "knowledge_recall": true,
                  "memory_recall": true,
                  "context_enrichment": true,
                  "notices_on_session_start": false,
                  "goals_sync": false,
                  "telemetry_on_maintenance": false,
                  "reporting_dispatch": true,
                  "judgment_dispatch": true,
                  "verification_execution": true
                }
              },
              "active": false,
              "effective_mode": "off",
              "effective_capabilities": []
            }
          },
          "output_hash": "a6df426290b4549a59eecaa0519ead9bcc50b7fcb25bd2185ff6047960f19ccb",
          "completed_at": "2026-07-15T21:38:43Z"
        },
        {
          "id": "notices",
          "action": "substrate.notices",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-15T21:38:43Z",
          "output": {
            "status": "disabled"
          },
          "output_hash": "38b904a1cf83df048360fb2480571b749fd98d57e11f1afdffb5a74a78166fea",
          "completed_at": "2026-07-15T21:38:44Z"
        },
        {
          "id": "goals",
          "action": "substrate.goals",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-15T21:38:44Z",
          "output": {
            "status": "disabled",
            "created": 0,
            "observed": 0,
            "results": []
          },
          "output_hash": "cdfd4de44a28140e686159f34f7b47975954c67e1d1efcef666e985acb136ed8",
          "completed_at": "2026-07-15T21:38:44Z"
        }
      ],
      "completed_at": "2026-07-15T21:38:44Z"
    },
    {
      "id": "WFR-210",
      "schema_version": "1.0",
      "workflow_id": "session.stop",
      "workflow_version": 1,
      "definition_hash": "0cef7bb3e28321be8f85375c154955a69310ce297e47de3f3b8dd48f77a2f07d",
      "plan_hash": "a5e1d77ac734217487fc418e29c7163f4e81178e25d171e70cd4c999d527d3e8",
      "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
      "inputs": {},
      "idempotency_key": "hook:Stop:019f67b7-b2a7-71e2-a2be-41cc1b75b8f9",
      "status": "completed",
      "attempt": 1,
      "created_at": "2026-07-15T21:38:47Z",
      "updated_at": "2026-07-15T21:38:49Z",
      "receipts": [
        {
          "step_id": "state",
          "action": "state.consistency",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "5a1c6e5246defb1b6b6b90ff734db95bece2886b408ab112ed9b8e67222d5568",
          "completed_at": "2026-07-15T21:38:48Z"
        },
        {
          "step_id": "goals",
          "action": "substrate.goals",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "cdfd4de44a28140e686159f34f7b47975954c67e1d1efcef666e985acb136ed8",
          "completed_at": "2026-07-15T21:38:48Z"
        },
        {
          "step_id": "staleness",
          "action": "staleness.audit",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "1e81cb0ffd0a4d04626920a203b38d2d23a264cd43e807a85d375d69cae8a658",
          "completed_at": "2026-07-15T21:38:48Z"
        },
        {
          "step_id": "reflections",
          "action": "reflection.list",
          "input_hash": "0172e841ab4c13b3a4061f073f9d68a716ec87a8a5d52fde41823385e0582573",
          "output_hash": "c1b6b635c0bab21120657277f14ef6f839909875f307a3745fa48aee2bd6e449",
          "completed_at": "2026-07-15T21:38:48Z"
        },
        {
          "step_id": "bundle",
          "action": "reporting.bundle",
          "input_hash": "aed8ebb688dc3c085dd978d7c4120572173c3cb87e75919e4a937dcca6ef9457",
          "output_hash": "f61aa7bfac7c2e96e3bf2d3386a95e45d2db52d040f05aff9ea963197eacc3f6",
          "completed_at": "2026-07-15T21:38:48Z"
        },
        {
          "step_id": "delegated",
          "action": "reporting.delegate",
          "input_hash": "5bf4dfad88c9958da759cb1561ca5fdd8f3ac9050e938bfde85af5c8d804adc9",
          "output_hash": "e6085059f197def80ae95add1f328418107bea5436c9bd002530043646a3a95c",
          "completed_at": "2026-07-15T21:38:48Z"
        }
      ],
      "steps": [
        {
          "id": "state",
          "action": "state.consistency",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-15T21:38:47Z",
          "output": {
            "status": "ok",
            "repo_root": "D:\\Projects\\prd-plugin",
            "summary": {
              "errors": 0,
              "warnings": 0,
              "infos": 0
            },
            "findings": []
          },
          "output_hash": "5a1c6e5246defb1b6b6b90ff734db95bece2886b408ab112ed9b8e67222d5568",
          "completed_at": "2026-07-15T21:38:48Z"
        },
        {
          "id": "goals",
          "action": "substrate.goals",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-15T21:38:48Z",
          "output": {
            "status": "disabled",
            "created": 0,
            "observed": 0,
            "results": []
          },
          "output_hash": "cdfd4de44a28140e686159f34f7b47975954c67e1d1efcef666e985acb136ed8",
          "completed_at": "2026-07-15T21:38:48Z"
        },
        {
          "id": "staleness",
          "action": "staleness.audit",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-15T21:38:48Z",
          "output": {
            "status": "ok",
            "repo_root": "D:\\Projects\\prd-plugin",
            "counts": {
              "stale": 0
            },
            "stale": []
          },
          "output_hash": "1e81cb0ffd0a4d04626920a203b38d2d23a264cd43e807a85d375d69cae8a658",
          "completed_at": "2026-07-15T21:38:48Z"
        },
        {
          "id": "reflections",
          "action": "reflection.list",
          "status": "completed",
          "resolved_input_hash": "0172e841ab4c13b3a4061f073f9d68a716ec87a8a5d52fde41823385e0582573",
          "started_at": "2026-07-15T21:38:48Z",
          "output": {
            "enabled": false,
            "on_stop": true,
            "max_questions_per_stop": 5,
            "categories": [
              {
                "id": "behaviour_quality",
                "name": "Behaviour quality",
                "enabled": true,
                "question_count": 3
              },
              {
                "id": "harness_friction",
                "name": "Harness friction",
                "enabled": true,
                "question_count": 2
              }
            ],
            "questions": [
              {
                "id": "RFQ-001",
                "text": "Based on the work you just carried out, would you classify your behaviour as good? Answer yes or no and cite observable evidence.",
                "enabled": true,
                "category_id": "behaviour_quality",
                "category_name": "Behaviour quality",
                "effective_enabled": false
              },
              {
                "id": "RFQ-002",
                "text": "If you answered no, what could you do differently to correct your behaviour?",
                "enabled": true,
                "category_id": "behaviour_quality",
                "category_name": "Behaviour quality",
                "effective_enabled": false
              },
              {
                "id": "RFQ-003",
                "text": "Would another attempt using the identified good behaviours materially improve the outcome? Answer yes or no and state the next corrective action if yes.",
                "enabled": true,
                "category_id": "behaviour_quality",
                "category_name": "Behaviour quality",
                "effective_enabled": false
              },
              {
                "id": "RFQ-004",
                "text": "What harness friction points made this work more difficult?",
                "enabled": true,
                "category_id": "harness_friction",
                "category_name": "Harness friction",
                "effective_enabled": false
              },
              {
                "id": "RFQ-005",
                "text": "What up to three changes would most improve friction in the harness?",
                "enabled": true,
                "category_id": "harness_friction",
                "category_name": "Harness friction",
                "effective_enabled": false
              }
            ]
          },
          "output_hash": "c1b6b635c0bab21120657277f14ef6f839909875f307a3745fa48aee2bd6e449",
          "completed_at": "2026-07-15T21:38:48Z"
        },
        {
          "id": "bundle",
          "action": "reporting.bundle",
          "status": "completed",
          "resolved_input_hash": "aed8ebb688dc3c085dd978d7c4120572173c3cb87e75919e4a937dcca6ef9457",
          "started_at": "2026-07-15T21:38:48Z",
          "output": {
            "contract_version": 1,
            "task": "session_summary",
            "repo": "prd-plugin",
            "policy": {
              "enabled": false,
              "executor": "ai-collab",
              "contract_version": 1,
              "profile": "fast-capable",
              "tasks": [
                "report_summary",
                "session_summary",
                "wiki_synthesis",
                "triage_draft"
              ],
              "fallback": "main",
              "require_source_refs": true,
              "max_input_tokens": 12000,
              "max_output_tokens": 1500,
              "timeout_seconds": 30
            },
            "facts": {
              "requests_by_status": {
                "deferred": 1,
                "implemented": 80,
                "proposed": 1,
                "rejected": 1
              },
              "active_requests": [
                {
                  "id": "REQ-072",
                  "status": "proposed",
                  "severity": "low",
                  "summary": "opencode run-until-done: session.idle is a non-blocking notification, so the stop guard can't force continuation on opencode (currently degrades to a printed reminder, 0.5.95). Investigate whether opencode exposes any vetoable/continuation mechanism (a different event, a permission hook, or a 'continue' API) to enforce run-until-done, or accept the reminder as the permanent ceiling. Low priority — user rarely uses opencode."
                }
              ],
              "active_tracking": [],
              "open_health": [],
              "evidence_count": 105,
              "decision_count": 10
            },
            "findings": [],
            "source_refs": [
              ".prd_plugin/config.json",
              ".prd_plugin/state/decisions.json",
              ".prd_plugin/state/evidence.json",
              ".prd_plugin/state/health.json",
              ".prd_plugin/state/requests.json",
              ".prd_plugin/state/tracking.json",
              "REQ-072"
            ],
            "constraints": {
              "max_input_tokens": 12000,
              "max_output_tokens": 1500,
              "timeout_seconds": 30,
              "require_source_refs": true,
              "no_project_state_writes": true,
              "no_secrets_or_local_session_content": true
            }
          },
          "output_hash": "f61aa7bfac7c2e96e3bf2d3386a95e45d2db52d040f05aff9ea963197eacc3f6",
          "completed_at": "2026-07-15T21:38:48Z"
        },
        {
          "id": "delegated",
          "action": "reporting.delegate",
          "status": "completed",
          "resolved_input_hash": "5bf4dfad88c9958da759cb1561ca5fdd8f3ac9050e938bfde85af5c8d804adc9",
          "started_at": "2026-07-15T21:38:48Z",
          "output": {
            "status": "fallback",
            "action": "main",
            "reason": "disabled"
          },
          "output_hash": "e6085059f197def80ae95add1f328418107bea5436c9bd002530043646a3a95c",
          "completed_at": "2026-07-15T21:38:48Z"
        }
      ],
      "completed_at": "2026-07-15T21:38:49Z"
    },
    {
      "id": "WFR-211",
      "schema_version": "1.0",
      "workflow_id": "session.start",
      "workflow_version": 1,
      "definition_hash": "d0f98da02571e6dd27fec4aed92d3c82af9db75f8b90b997bf665635c7b7f6ca",
      "plan_hash": "b5072615ca3b7e9a3bd85d50d1f069d99ef2a9816b32c03a370745ed7a205536",
      "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
      "inputs": {},
      "idempotency_key": "hook:SessionStart:019f67cb-7cd3-7190-904f-20f7d371fec8",
      "status": "completed",
      "attempt": 1,
      "created_at": "2026-07-15T22:00:19Z",
      "updated_at": "2026-07-15T22:00:21Z",
      "receipts": [
        {
          "step_id": "config",
          "action": "config.audit",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "3782ec2317c0c8ee7598634310a2804d8aae4735f557498f9d3b8fae7c45e1e5",
          "completed_at": "2026-07-15T22:00:20Z"
        },
        {
          "step_id": "services",
          "action": "services.audit",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "13dcc58bd528f3efa3e6e0fa0853a6eedc376f1f3685fbd4869cbb2b60382ee3",
          "completed_at": "2026-07-15T22:00:20Z"
        },
        {
          "step_id": "state",
          "action": "state.consistency",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "5a1c6e5246defb1b6b6b90ff734db95bece2886b408ab112ed9b8e67222d5568",
          "completed_at": "2026-07-15T22:00:21Z"
        },
        {
          "step_id": "status",
          "action": "state.query",
          "input_hash": "a15231a2142a2a9a85355a8b9cbbccffe01a9c9c2c2fd8c2bc2987cdc481564a",
          "output_hash": "8ba9f7d3cc6705af37de9e3324d1258e21ccacb5ab0b2d7b389ca08885e11187",
          "completed_at": "2026-07-15T22:00:21Z"
        },
        {
          "step_id": "substrate",
          "action": "substrate.preflight",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "a6df426290b4549a59eecaa0519ead9bcc50b7fcb25bd2185ff6047960f19ccb",
          "completed_at": "2026-07-15T22:00:21Z"
        },
        {
          "step_id": "notices",
          "action": "substrate.notices",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "38b904a1cf83df048360fb2480571b749fd98d57e11f1afdffb5a74a78166fea",
          "completed_at": "2026-07-15T22:00:21Z"
        },
        {
          "step_id": "goals",
          "action": "substrate.goals",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "cdfd4de44a28140e686159f34f7b47975954c67e1d1efcef666e985acb136ed8",
          "completed_at": "2026-07-15T22:00:21Z"
        }
      ],
      "steps": [
        {
          "id": "config",
          "action": "config.audit",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-15T22:00:20Z",
          "output": {
            "status": "ok",
            "summary": {
              "settings": 195,
              "mutable": 186,
              "read_only_or_managed": 9,
              "unclassified": 0,
              "unknown": 0,
              "invalid": 0,
              "missing_using_defaults": 0
            },
            "unclassified_keys": [],
            "unknown_keys": [],
            "invalid_values": [],
            "missing_using_defaults": []
          },
          "output_hash": "3782ec2317c0c8ee7598634310a2804d8aae4735f557498f9d3b8fae7c45e1e5",
          "completed_at": "2026-07-15T22:00:20Z"
        },
        {
          "id": "services",
          "action": "services.audit",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-15T22:00:20Z",
          "output": {
            "status": "ok",
            "summary": {
              "critical": 0,
              "high": 0,
              "medium": 0,
              "low": 0
            },
            "findings": []
          },
          "output_hash": "13dcc58bd528f3efa3e6e0fa0853a6eedc376f1f3685fbd4869cbb2b60382ee3",
          "completed_at": "2026-07-15T22:00:20Z"
        },
        {
          "id": "state",
          "action": "state.consistency",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-15T22:00:20Z",
          "output": {
            "status": "ok",
            "repo_root": "D:\\Projects\\prd-plugin",
            "summary": {
              "errors": 0,
              "warnings": 0,
              "infos": 0
            },
            "findings": []
          },
          "output_hash": "5a1c6e5246defb1b6b6b90ff734db95bece2886b408ab112ed9b8e67222d5568",
          "completed_at": "2026-07-15T22:00:21Z"
        },
        {
          "id": "status",
          "action": "state.query",
          "status": "completed",
          "resolved_input_hash": "a15231a2142a2a9a85355a8b9cbbccffe01a9c9c2c2fd8c2bc2987cdc481564a",
          "started_at": "2026-07-15T22:00:21Z",
          "output": {
            "repo_root": "D:\\Projects\\prd-plugin",
            "autonomy_level": "autonomous",
            "requests_by_status": {
              "deferred": 1,
              "implemented": 80,
              "proposed": 1,
              "rejected": 1
            },
            "active_tracking": [],
            "tracking_branches": [],
            "tracking_branch_counts": {},
            "tracking_branch_errors": [],
            "open_health": [],
            "stale_count": 0,
            "skill_usage": {
              "project-decision-policy": 1,
              "project-request-intake": 1,
              "project-test-driven-implementation": 1,
              "project-verification-before-completion": 1,
              "project-llm-wiki": 1
            },
            "wiki_backfill_pending": false,
            "version_update": null
          },
          "output_hash": "8ba9f7d3cc6705af37de9e3324d1258e21ccacb5ab0b2d7b389ca08885e11187",
          "completed_at": "2026-07-15T22:00:21Z"
        },
        {
          "id": "substrate",
          "action": "substrate.preflight",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-15T22:00:21Z",
          "output": {
            "status": "disabled",
            "services": {
              "status": "ok",
              "summary": {
                "critical": 0,
                "high": 0,
                "medium": 0,
                "low": 0
              },
              "findings": []
            },
            "policy": {
              "configured": {
                "enabled": false,
                "mode": "off",
                "capabilities": [
                  "records",
                  "graph",
                  "events"
                ],
                "contract_version": 2,
                "require_source_refs": true,
                "endpoint": "http://127.0.0.1:47124",
                "manual_url": "http://127.0.0.1:47124/utcp.json",
                "knowledge_browse_url": "http://127.0.0.1:5276",
                "auth_env": "AI_COLLAB_API_KEY",
                "timeout_seconds": 5,
                "max_result_bytes": 1048576,
                "cache_ttl_seconds": 60,
                "fallback": "local",
                "automation": {
                  "discovery_on_session_start": true,
                  "knowledge_recall": true,
                  "memory_recall": true,
                  "context_enrichment": true,
                  "notices_on_session_start": false,
                  "goals_sync": false,
                  "telemetry_on_maintenance": false,
                  "reporting_dispatch": true,
                  "judgment_dispatch": true,
                  "verification_execution": true
                }
              },
              "active": false,
              "effective_mode": "off",
              "effective_capabilities": []
            }
          },
          "output_hash": "a6df426290b4549a59eecaa0519ead9bcc50b7fcb25bd2185ff6047960f19ccb",
          "completed_at": "2026-07-15T22:00:21Z"
        },
        {
          "id": "notices",
          "action": "substrate.notices",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-15T22:00:21Z",
          "output": {
            "status": "disabled"
          },
          "output_hash": "38b904a1cf83df048360fb2480571b749fd98d57e11f1afdffb5a74a78166fea",
          "completed_at": "2026-07-15T22:00:21Z"
        },
        {
          "id": "goals",
          "action": "substrate.goals",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-15T22:00:21Z",
          "output": {
            "status": "disabled",
            "created": 0,
            "observed": 0,
            "results": []
          },
          "output_hash": "cdfd4de44a28140e686159f34f7b47975954c67e1d1efcef666e985acb136ed8",
          "completed_at": "2026-07-15T22:00:21Z"
        }
      ],
      "completed_at": "2026-07-15T22:00:21Z"
    },
    {
      "id": "WFR-212",
      "schema_version": "1.0",
      "workflow_id": "session.stop",
      "workflow_version": 1,
      "definition_hash": "0cef7bb3e28321be8f85375c154955a69310ce297e47de3f3b8dd48f77a2f07d",
      "plan_hash": "a5e1d77ac734217487fc418e29c7163f4e81178e25d171e70cd4c999d527d3e8",
      "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
      "inputs": {},
      "idempotency_key": "hook:Stop:019f67cb-7cd3-7190-904f-20f7d371fec8",
      "status": "completed",
      "attempt": 1,
      "created_at": "2026-07-15T22:02:39Z",
      "updated_at": "2026-07-15T22:02:40Z",
      "receipts": [
        {
          "step_id": "state",
          "action": "state.consistency",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "5a1c6e5246defb1b6b6b90ff734db95bece2886b408ab112ed9b8e67222d5568",
          "completed_at": "2026-07-15T22:02:39Z"
        },
        {
          "step_id": "goals",
          "action": "substrate.goals",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "cdfd4de44a28140e686159f34f7b47975954c67e1d1efcef666e985acb136ed8",
          "completed_at": "2026-07-15T22:02:39Z"
        },
        {
          "step_id": "staleness",
          "action": "staleness.audit",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "1e81cb0ffd0a4d04626920a203b38d2d23a264cd43e807a85d375d69cae8a658",
          "completed_at": "2026-07-15T22:02:40Z"
        },
        {
          "step_id": "reflections",
          "action": "reflection.list",
          "input_hash": "0172e841ab4c13b3a4061f073f9d68a716ec87a8a5d52fde41823385e0582573",
          "output_hash": "c1b6b635c0bab21120657277f14ef6f839909875f307a3745fa48aee2bd6e449",
          "completed_at": "2026-07-15T22:02:40Z"
        },
        {
          "step_id": "bundle",
          "action": "reporting.bundle",
          "input_hash": "aed8ebb688dc3c085dd978d7c4120572173c3cb87e75919e4a937dcca6ef9457",
          "output_hash": "f61aa7bfac7c2e96e3bf2d3386a95e45d2db52d040f05aff9ea963197eacc3f6",
          "completed_at": "2026-07-15T22:02:40Z"
        },
        {
          "step_id": "delegated",
          "action": "reporting.delegate",
          "input_hash": "5bf4dfad88c9958da759cb1561ca5fdd8f3ac9050e938bfde85af5c8d804adc9",
          "output_hash": "e6085059f197def80ae95add1f328418107bea5436c9bd002530043646a3a95c",
          "completed_at": "2026-07-15T22:02:40Z"
        }
      ],
      "steps": [
        {
          "id": "state",
          "action": "state.consistency",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-15T22:02:39Z",
          "output": {
            "status": "ok",
            "repo_root": "D:\\Projects\\prd-plugin",
            "summary": {
              "errors": 0,
              "warnings": 0,
              "infos": 0
            },
            "findings": []
          },
          "output_hash": "5a1c6e5246defb1b6b6b90ff734db95bece2886b408ab112ed9b8e67222d5568",
          "completed_at": "2026-07-15T22:02:39Z"
        },
        {
          "id": "goals",
          "action": "substrate.goals",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-15T22:02:39Z",
          "output": {
            "status": "disabled",
            "created": 0,
            "observed": 0,
            "results": []
          },
          "output_hash": "cdfd4de44a28140e686159f34f7b47975954c67e1d1efcef666e985acb136ed8",
          "completed_at": "2026-07-15T22:02:39Z"
        },
        {
          "id": "staleness",
          "action": "staleness.audit",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-15T22:02:40Z",
          "output": {
            "status": "ok",
            "repo_root": "D:\\Projects\\prd-plugin",
            "counts": {
              "stale": 0
            },
            "stale": []
          },
          "output_hash": "1e81cb0ffd0a4d04626920a203b38d2d23a264cd43e807a85d375d69cae8a658",
          "completed_at": "2026-07-15T22:02:40Z"
        },
        {
          "id": "reflections",
          "action": "reflection.list",
          "status": "completed",
          "resolved_input_hash": "0172e841ab4c13b3a4061f073f9d68a716ec87a8a5d52fde41823385e0582573",
          "started_at": "2026-07-15T22:02:40Z",
          "output": {
            "enabled": false,
            "on_stop": true,
            "max_questions_per_stop": 5,
            "categories": [
              {
                "id": "behaviour_quality",
                "name": "Behaviour quality",
                "enabled": true,
                "question_count": 3
              },
              {
                "id": "harness_friction",
                "name": "Harness friction",
                "enabled": true,
                "question_count": 2
              }
            ],
            "questions": [
              {
                "id": "RFQ-001",
                "text": "Based on the work you just carried out, would you classify your behaviour as good? Answer yes or no and cite observable evidence.",
                "enabled": true,
                "category_id": "behaviour_quality",
                "category_name": "Behaviour quality",
                "effective_enabled": false
              },
              {
                "id": "RFQ-002",
                "text": "If you answered no, what could you do differently to correct your behaviour?",
                "enabled": true,
                "category_id": "behaviour_quality",
                "category_name": "Behaviour quality",
                "effective_enabled": false
              },
              {
                "id": "RFQ-003",
                "text": "Would another attempt using the identified good behaviours materially improve the outcome? Answer yes or no and state the next corrective action if yes.",
                "enabled": true,
                "category_id": "behaviour_quality",
                "category_name": "Behaviour quality",
                "effective_enabled": false
              },
              {
                "id": "RFQ-004",
                "text": "What harness friction points made this work more difficult?",
                "enabled": true,
                "category_id": "harness_friction",
                "category_name": "Harness friction",
                "effective_enabled": false
              },
              {
                "id": "RFQ-005",
                "text": "What up to three changes would most improve friction in the harness?",
                "enabled": true,
                "category_id": "harness_friction",
                "category_name": "Harness friction",
                "effective_enabled": false
              }
            ]
          },
          "output_hash": "c1b6b635c0bab21120657277f14ef6f839909875f307a3745fa48aee2bd6e449",
          "completed_at": "2026-07-15T22:02:40Z"
        },
        {
          "id": "bundle",
          "action": "reporting.bundle",
          "status": "completed",
          "resolved_input_hash": "aed8ebb688dc3c085dd978d7c4120572173c3cb87e75919e4a937dcca6ef9457",
          "started_at": "2026-07-15T22:02:40Z",
          "output": {
            "contract_version": 1,
            "task": "session_summary",
            "repo": "prd-plugin",
            "policy": {
              "enabled": false,
              "executor": "ai-collab",
              "contract_version": 1,
              "profile": "fast-capable",
              "tasks": [
                "report_summary",
                "session_summary",
                "wiki_synthesis",
                "triage_draft"
              ],
              "fallback": "main",
              "require_source_refs": true,
              "max_input_tokens": 12000,
              "max_output_tokens": 1500,
              "timeout_seconds": 30
            },
            "facts": {
              "requests_by_status": {
                "deferred": 1,
                "implemented": 80,
                "proposed": 1,
                "rejected": 1
              },
              "active_requests": [
                {
                  "id": "REQ-072",
                  "status": "proposed",
                  "severity": "low",
                  "summary": "opencode run-until-done: session.idle is a non-blocking notification, so the stop guard can't force continuation on opencode (currently degrades to a printed reminder, 0.5.95). Investigate whether opencode exposes any vetoable/continuation mechanism (a different event, a permission hook, or a 'continue' API) to enforce run-until-done, or accept the reminder as the permanent ceiling. Low priority — user rarely uses opencode."
                }
              ],
              "active_tracking": [],
              "open_health": [],
              "evidence_count": 105,
              "decision_count": 10
            },
            "findings": [],
            "source_refs": [
              ".prd_plugin/config.json",
              ".prd_plugin/state/decisions.json",
              ".prd_plugin/state/evidence.json",
              ".prd_plugin/state/health.json",
              ".prd_plugin/state/requests.json",
              ".prd_plugin/state/tracking.json",
              "REQ-072"
            ],
            "constraints": {
              "max_input_tokens": 12000,
              "max_output_tokens": 1500,
              "timeout_seconds": 30,
              "require_source_refs": true,
              "no_project_state_writes": true,
              "no_secrets_or_local_session_content": true
            }
          },
          "output_hash": "f61aa7bfac7c2e96e3bf2d3386a95e45d2db52d040f05aff9ea963197eacc3f6",
          "completed_at": "2026-07-15T22:02:40Z"
        },
        {
          "id": "delegated",
          "action": "reporting.delegate",
          "status": "completed",
          "resolved_input_hash": "5bf4dfad88c9958da759cb1561ca5fdd8f3ac9050e938bfde85af5c8d804adc9",
          "started_at": "2026-07-15T22:02:40Z",
          "output": {
            "status": "fallback",
            "action": "main",
            "reason": "disabled"
          },
          "output_hash": "e6085059f197def80ae95add1f328418107bea5436c9bd002530043646a3a95c",
          "completed_at": "2026-07-15T22:02:40Z"
        }
      ],
      "completed_at": "2026-07-15T22:02:40Z"
    },
    {
      "id": "WFR-213",
      "schema_version": "1.0",
      "workflow_id": "session.start",
      "workflow_version": 1,
      "definition_hash": "d0f98da02571e6dd27fec4aed92d3c82af9db75f8b90b997bf665635c7b7f6ca",
      "plan_hash": "b5072615ca3b7e9a3bd85d50d1f069d99ef2a9816b32c03a370745ed7a205536",
      "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
      "inputs": {},
      "idempotency_key": "hook:SessionStart:019f67cf-273d-7c00-aebe-9ef34867649b",
      "status": "completed",
      "attempt": 1,
      "created_at": "2026-07-15T22:04:19Z",
      "updated_at": "2026-07-15T22:04:21Z",
      "receipts": [
        {
          "step_id": "config",
          "action": "config.audit",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "3782ec2317c0c8ee7598634310a2804d8aae4735f557498f9d3b8fae7c45e1e5",
          "completed_at": "2026-07-15T22:04:19Z"
        },
        {
          "step_id": "services",
          "action": "services.audit",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "13dcc58bd528f3efa3e6e0fa0853a6eedc376f1f3685fbd4869cbb2b60382ee3",
          "completed_at": "2026-07-15T22:04:19Z"
        },
        {
          "step_id": "state",
          "action": "state.consistency",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "5a1c6e5246defb1b6b6b90ff734db95bece2886b408ab112ed9b8e67222d5568",
          "completed_at": "2026-07-15T22:04:20Z"
        },
        {
          "step_id": "status",
          "action": "state.query",
          "input_hash": "a15231a2142a2a9a85355a8b9cbbccffe01a9c9c2c2fd8c2bc2987cdc481564a",
          "output_hash": "8ba9f7d3cc6705af37de9e3324d1258e21ccacb5ab0b2d7b389ca08885e11187",
          "completed_at": "2026-07-15T22:04:20Z"
        },
        {
          "step_id": "substrate",
          "action": "substrate.preflight",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "a6df426290b4549a59eecaa0519ead9bcc50b7fcb25bd2185ff6047960f19ccb",
          "completed_at": "2026-07-15T22:04:20Z"
        },
        {
          "step_id": "notices",
          "action": "substrate.notices",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "38b904a1cf83df048360fb2480571b749fd98d57e11f1afdffb5a74a78166fea",
          "completed_at": "2026-07-15T22:04:20Z"
        },
        {
          "step_id": "goals",
          "action": "substrate.goals",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "cdfd4de44a28140e686159f34f7b47975954c67e1d1efcef666e985acb136ed8",
          "completed_at": "2026-07-15T22:04:21Z"
        }
      ],
      "steps": [
        {
          "id": "config",
          "action": "config.audit",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-15T22:04:19Z",
          "output": {
            "status": "ok",
            "summary": {
              "settings": 195,
              "mutable": 186,
              "read_only_or_managed": 9,
              "unclassified": 0,
              "unknown": 0,
              "invalid": 0,
              "missing_using_defaults": 0
            },
            "unclassified_keys": [],
            "unknown_keys": [],
            "invalid_values": [],
            "missing_using_defaults": []
          },
          "output_hash": "3782ec2317c0c8ee7598634310a2804d8aae4735f557498f9d3b8fae7c45e1e5",
          "completed_at": "2026-07-15T22:04:19Z"
        },
        {
          "id": "services",
          "action": "services.audit",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-15T22:04:19Z",
          "output": {
            "status": "ok",
            "summary": {
              "critical": 0,
              "high": 0,
              "medium": 0,
              "low": 0
            },
            "findings": []
          },
          "output_hash": "13dcc58bd528f3efa3e6e0fa0853a6eedc376f1f3685fbd4869cbb2b60382ee3",
          "completed_at": "2026-07-15T22:04:19Z"
        },
        {
          "id": "state",
          "action": "state.consistency",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-15T22:04:20Z",
          "output": {
            "status": "ok",
            "repo_root": "D:\\Projects\\prd-plugin",
            "summary": {
              "errors": 0,
              "warnings": 0,
              "infos": 0
            },
            "findings": []
          },
          "output_hash": "5a1c6e5246defb1b6b6b90ff734db95bece2886b408ab112ed9b8e67222d5568",
          "completed_at": "2026-07-15T22:04:20Z"
        },
        {
          "id": "status",
          "action": "state.query",
          "status": "completed",
          "resolved_input_hash": "a15231a2142a2a9a85355a8b9cbbccffe01a9c9c2c2fd8c2bc2987cdc481564a",
          "started_at": "2026-07-15T22:04:20Z",
          "output": {
            "repo_root": "D:\\Projects\\prd-plugin",
            "autonomy_level": "autonomous",
            "requests_by_status": {
              "deferred": 1,
              "implemented": 80,
              "proposed": 1,
              "rejected": 1
            },
            "active_tracking": [],
            "tracking_branches": [],
            "tracking_branch_counts": {},
            "tracking_branch_errors": [],
            "open_health": [],
            "stale_count": 0,
            "skill_usage": {
              "project-decision-policy": 1,
              "project-request-intake": 1,
              "project-test-driven-implementation": 1,
              "project-verification-before-completion": 1,
              "project-llm-wiki": 1
            },
            "wiki_backfill_pending": false,
            "version_update": null
          },
          "output_hash": "8ba9f7d3cc6705af37de9e3324d1258e21ccacb5ab0b2d7b389ca08885e11187",
          "completed_at": "2026-07-15T22:04:20Z"
        },
        {
          "id": "substrate",
          "action": "substrate.preflight",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-15T22:04:20Z",
          "output": {
            "status": "disabled",
            "services": {
              "status": "ok",
              "summary": {
                "critical": 0,
                "high": 0,
                "medium": 0,
                "low": 0
              },
              "findings": []
            },
            "policy": {
              "configured": {
                "enabled": false,
                "mode": "off",
                "capabilities": [
                  "records",
                  "graph",
                  "events"
                ],
                "contract_version": 2,
                "require_source_refs": true,
                "endpoint": "http://127.0.0.1:47124",
                "manual_url": "http://127.0.0.1:47124/utcp.json",
                "knowledge_browse_url": "http://127.0.0.1:5276",
                "auth_env": "AI_COLLAB_API_KEY",
                "timeout_seconds": 5,
                "max_result_bytes": 1048576,
                "cache_ttl_seconds": 60,
                "fallback": "local",
                "automation": {
                  "discovery_on_session_start": true,
                  "knowledge_recall": true,
                  "memory_recall": true,
                  "context_enrichment": true,
                  "notices_on_session_start": false,
                  "goals_sync": false,
                  "telemetry_on_maintenance": false,
                  "reporting_dispatch": true,
                  "judgment_dispatch": true,
                  "verification_execution": true
                }
              },
              "active": false,
              "effective_mode": "off",
              "effective_capabilities": []
            }
          },
          "output_hash": "a6df426290b4549a59eecaa0519ead9bcc50b7fcb25bd2185ff6047960f19ccb",
          "completed_at": "2026-07-15T22:04:20Z"
        },
        {
          "id": "notices",
          "action": "substrate.notices",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-15T22:04:20Z",
          "output": {
            "status": "disabled"
          },
          "output_hash": "38b904a1cf83df048360fb2480571b749fd98d57e11f1afdffb5a74a78166fea",
          "completed_at": "2026-07-15T22:04:20Z"
        },
        {
          "id": "goals",
          "action": "substrate.goals",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-15T22:04:21Z",
          "output": {
            "status": "disabled",
            "created": 0,
            "observed": 0,
            "results": []
          },
          "output_hash": "cdfd4de44a28140e686159f34f7b47975954c67e1d1efcef666e985acb136ed8",
          "completed_at": "2026-07-15T22:04:21Z"
        }
      ],
      "completed_at": "2026-07-15T22:04:21Z"
    },
    {
      "id": "WFR-214",
      "schema_version": "1.0",
      "workflow_id": "session.stop",
      "workflow_version": 1,
      "definition_hash": "0cef7bb3e28321be8f85375c154955a69310ce297e47de3f3b8dd48f77a2f07d",
      "plan_hash": "a5e1d77ac734217487fc418e29c7163f4e81178e25d171e70cd4c999d527d3e8",
      "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
      "inputs": {},
      "idempotency_key": "hook:Stop:019f67cf-273d-7c00-aebe-9ef34867649b",
      "status": "completed",
      "attempt": 1,
      "created_at": "2026-07-15T22:06:16Z",
      "updated_at": "2026-07-15T22:06:17Z",
      "receipts": [
        {
          "step_id": "state",
          "action": "state.consistency",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "5a1c6e5246defb1b6b6b90ff734db95bece2886b408ab112ed9b8e67222d5568",
          "completed_at": "2026-07-15T22:06:17Z"
        },
        {
          "step_id": "goals",
          "action": "substrate.goals",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "cdfd4de44a28140e686159f34f7b47975954c67e1d1efcef666e985acb136ed8",
          "completed_at": "2026-07-15T22:06:17Z"
        },
        {
          "step_id": "staleness",
          "action": "staleness.audit",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "1e81cb0ffd0a4d04626920a203b38d2d23a264cd43e807a85d375d69cae8a658",
          "completed_at": "2026-07-15T22:06:17Z"
        },
        {
          "step_id": "reflections",
          "action": "reflection.list",
          "input_hash": "0172e841ab4c13b3a4061f073f9d68a716ec87a8a5d52fde41823385e0582573",
          "output_hash": "c1b6b635c0bab21120657277f14ef6f839909875f307a3745fa48aee2bd6e449",
          "completed_at": "2026-07-15T22:06:17Z"
        },
        {
          "step_id": "bundle",
          "action": "reporting.bundle",
          "input_hash": "aed8ebb688dc3c085dd978d7c4120572173c3cb87e75919e4a937dcca6ef9457",
          "output_hash": "f61aa7bfac7c2e96e3bf2d3386a95e45d2db52d040f05aff9ea963197eacc3f6",
          "completed_at": "2026-07-15T22:06:17Z"
        },
        {
          "step_id": "delegated",
          "action": "reporting.delegate",
          "input_hash": "5bf4dfad88c9958da759cb1561ca5fdd8f3ac9050e938bfde85af5c8d804adc9",
          "output_hash": "e6085059f197def80ae95add1f328418107bea5436c9bd002530043646a3a95c",
          "completed_at": "2026-07-15T22:06:17Z"
        }
      ],
      "steps": [
        {
          "id": "state",
          "action": "state.consistency",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-15T22:06:16Z",
          "output": {
            "status": "ok",
            "repo_root": "D:\\Projects\\prd-plugin",
            "summary": {
              "errors": 0,
              "warnings": 0,
              "infos": 0
            },
            "findings": []
          },
          "output_hash": "5a1c6e5246defb1b6b6b90ff734db95bece2886b408ab112ed9b8e67222d5568",
          "completed_at": "2026-07-15T22:06:17Z"
        },
        {
          "id": "goals",
          "action": "substrate.goals",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-15T22:06:17Z",
          "output": {
            "status": "disabled",
            "created": 0,
            "observed": 0,
            "results": []
          },
          "output_hash": "cdfd4de44a28140e686159f34f7b47975954c67e1d1efcef666e985acb136ed8",
          "completed_at": "2026-07-15T22:06:17Z"
        },
        {
          "id": "staleness",
          "action": "staleness.audit",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-15T22:06:17Z",
          "output": {
            "status": "ok",
            "repo_root": "D:\\Projects\\prd-plugin",
            "counts": {
              "stale": 0
            },
            "stale": []
          },
          "output_hash": "1e81cb0ffd0a4d04626920a203b38d2d23a264cd43e807a85d375d69cae8a658",
          "completed_at": "2026-07-15T22:06:17Z"
        },
        {
          "id": "reflections",
          "action": "reflection.list",
          "status": "completed",
          "resolved_input_hash": "0172e841ab4c13b3a4061f073f9d68a716ec87a8a5d52fde41823385e0582573",
          "started_at": "2026-07-15T22:06:17Z",
          "output": {
            "enabled": false,
            "on_stop": true,
            "max_questions_per_stop": 5,
            "categories": [
              {
                "id": "behaviour_quality",
                "name": "Behaviour quality",
                "enabled": true,
                "question_count": 3
              },
              {
                "id": "harness_friction",
                "name": "Harness friction",
                "enabled": true,
                "question_count": 2
              }
            ],
            "questions": [
              {
                "id": "RFQ-001",
                "text": "Based on the work you just carried out, would you classify your behaviour as good? Answer yes or no and cite observable evidence.",
                "enabled": true,
                "category_id": "behaviour_quality",
                "category_name": "Behaviour quality",
                "effective_enabled": false
              },
              {
                "id": "RFQ-002",
                "text": "If you answered no, what could you do differently to correct your behaviour?",
                "enabled": true,
                "category_id": "behaviour_quality",
                "category_name": "Behaviour quality",
                "effective_enabled": false
              },
              {
                "id": "RFQ-003",
                "text": "Would another attempt using the identified good behaviours materially improve the outcome? Answer yes or no and state the next corrective action if yes.",
                "enabled": true,
                "category_id": "behaviour_quality",
                "category_name": "Behaviour quality",
                "effective_enabled": false
              },
              {
                "id": "RFQ-004",
                "text": "What harness friction points made this work more difficult?",
                "enabled": true,
                "category_id": "harness_friction",
                "category_name": "Harness friction",
                "effective_enabled": false
              },
              {
                "id": "RFQ-005",
                "text": "What up to three changes would most improve friction in the harness?",
                "enabled": true,
                "category_id": "harness_friction",
                "category_name": "Harness friction",
                "effective_enabled": false
              }
            ]
          },
          "output_hash": "c1b6b635c0bab21120657277f14ef6f839909875f307a3745fa48aee2bd6e449",
          "completed_at": "2026-07-15T22:06:17Z"
        },
        {
          "id": "bundle",
          "action": "reporting.bundle",
          "status": "completed",
          "resolved_input_hash": "aed8ebb688dc3c085dd978d7c4120572173c3cb87e75919e4a937dcca6ef9457",
          "started_at": "2026-07-15T22:06:17Z",
          "output": {
            "contract_version": 1,
            "task": "session_summary",
            "repo": "prd-plugin",
            "policy": {
              "enabled": false,
              "executor": "ai-collab",
              "contract_version": 1,
              "profile": "fast-capable",
              "tasks": [
                "report_summary",
                "session_summary",
                "wiki_synthesis",
                "triage_draft"
              ],
              "fallback": "main",
              "require_source_refs": true,
              "max_input_tokens": 12000,
              "max_output_tokens": 1500,
              "timeout_seconds": 30
            },
            "facts": {
              "requests_by_status": {
                "deferred": 1,
                "implemented": 80,
                "proposed": 1,
                "rejected": 1
              },
              "active_requests": [
                {
                  "id": "REQ-072",
                  "status": "proposed",
                  "severity": "low",
                  "summary": "opencode run-until-done: session.idle is a non-blocking notification, so the stop guard can't force continuation on opencode (currently degrades to a printed reminder, 0.5.95). Investigate whether opencode exposes any vetoable/continuation mechanism (a different event, a permission hook, or a 'continue' API) to enforce run-until-done, or accept the reminder as the permanent ceiling. Low priority — user rarely uses opencode."
                }
              ],
              "active_tracking": [],
              "open_health": [],
              "evidence_count": 105,
              "decision_count": 10
            },
            "findings": [],
            "source_refs": [
              ".prd_plugin/config.json",
              ".prd_plugin/state/decisions.json",
              ".prd_plugin/state/evidence.json",
              ".prd_plugin/state/health.json",
              ".prd_plugin/state/requests.json",
              ".prd_plugin/state/tracking.json",
              "REQ-072"
            ],
            "constraints": {
              "max_input_tokens": 12000,
              "max_output_tokens": 1500,
              "timeout_seconds": 30,
              "require_source_refs": true,
              "no_project_state_writes": true,
              "no_secrets_or_local_session_content": true
            }
          },
          "output_hash": "f61aa7bfac7c2e96e3bf2d3386a95e45d2db52d040f05aff9ea963197eacc3f6",
          "completed_at": "2026-07-15T22:06:17Z"
        },
        {
          "id": "delegated",
          "action": "reporting.delegate",
          "status": "completed",
          "resolved_input_hash": "5bf4dfad88c9958da759cb1561ca5fdd8f3ac9050e938bfde85af5c8d804adc9",
          "started_at": "2026-07-15T22:06:17Z",
          "output": {
            "status": "fallback",
            "action": "main",
            "reason": "disabled"
          },
          "output_hash": "e6085059f197def80ae95add1f328418107bea5436c9bd002530043646a3a95c",
          "completed_at": "2026-07-15T22:06:17Z"
        }
      ],
      "completed_at": "2026-07-15T22:06:17Z"
    },
    {
      "id": "WFR-215",
      "schema_version": "1.0",
      "workflow_id": "session.start",
      "workflow_version": 1,
      "definition_hash": "d0f98da02571e6dd27fec4aed92d3c82af9db75f8b90b997bf665635c7b7f6ca",
      "plan_hash": "b5072615ca3b7e9a3bd85d50d1f069d99ef2a9816b32c03a370745ed7a205536",
      "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
      "inputs": {},
      "idempotency_key": "hook:SessionStart:019f67d1-16ea-7d60-94b4-09d7ac444447",
      "status": "completed",
      "attempt": 1,
      "created_at": "2026-07-15T22:06:26Z",
      "updated_at": "2026-07-15T22:06:28Z",
      "receipts": [
        {
          "step_id": "config",
          "action": "config.audit",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "3782ec2317c0c8ee7598634310a2804d8aae4735f557498f9d3b8fae7c45e1e5",
          "completed_at": "2026-07-15T22:06:27Z"
        },
        {
          "step_id": "services",
          "action": "services.audit",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "13dcc58bd528f3efa3e6e0fa0853a6eedc376f1f3685fbd4869cbb2b60382ee3",
          "completed_at": "2026-07-15T22:06:27Z"
        },
        {
          "step_id": "state",
          "action": "state.consistency",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "5a1c6e5246defb1b6b6b90ff734db95bece2886b408ab112ed9b8e67222d5568",
          "completed_at": "2026-07-15T22:06:27Z"
        },
        {
          "step_id": "status",
          "action": "state.query",
          "input_hash": "a15231a2142a2a9a85355a8b9cbbccffe01a9c9c2c2fd8c2bc2987cdc481564a",
          "output_hash": "8ba9f7d3cc6705af37de9e3324d1258e21ccacb5ab0b2d7b389ca08885e11187",
          "completed_at": "2026-07-15T22:06:27Z"
        },
        {
          "step_id": "substrate",
          "action": "substrate.preflight",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "a6df426290b4549a59eecaa0519ead9bcc50b7fcb25bd2185ff6047960f19ccb",
          "completed_at": "2026-07-15T22:06:28Z"
        },
        {
          "step_id": "notices",
          "action": "substrate.notices",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "38b904a1cf83df048360fb2480571b749fd98d57e11f1afdffb5a74a78166fea",
          "completed_at": "2026-07-15T22:06:28Z"
        },
        {
          "step_id": "goals",
          "action": "substrate.goals",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "cdfd4de44a28140e686159f34f7b47975954c67e1d1efcef666e985acb136ed8",
          "completed_at": "2026-07-15T22:06:28Z"
        }
      ],
      "steps": [
        {
          "id": "config",
          "action": "config.audit",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-15T22:06:27Z",
          "output": {
            "status": "ok",
            "summary": {
              "settings": 195,
              "mutable": 186,
              "read_only_or_managed": 9,
              "unclassified": 0,
              "unknown": 0,
              "invalid": 0,
              "missing_using_defaults": 0
            },
            "unclassified_keys": [],
            "unknown_keys": [],
            "invalid_values": [],
            "missing_using_defaults": []
          },
          "output_hash": "3782ec2317c0c8ee7598634310a2804d8aae4735f557498f9d3b8fae7c45e1e5",
          "completed_at": "2026-07-15T22:06:27Z"
        },
        {
          "id": "services",
          "action": "services.audit",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-15T22:06:27Z",
          "output": {
            "status": "ok",
            "summary": {
              "critical": 0,
              "high": 0,
              "medium": 0,
              "low": 0
            },
            "findings": []
          },
          "output_hash": "13dcc58bd528f3efa3e6e0fa0853a6eedc376f1f3685fbd4869cbb2b60382ee3",
          "completed_at": "2026-07-15T22:06:27Z"
        },
        {
          "id": "state",
          "action": "state.consistency",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-15T22:06:27Z",
          "output": {
            "status": "ok",
            "repo_root": "D:\\Projects\\prd-plugin",
            "summary": {
              "errors": 0,
              "warnings": 0,
              "infos": 0
            },
            "findings": []
          },
          "output_hash": "5a1c6e5246defb1b6b6b90ff734db95bece2886b408ab112ed9b8e67222d5568",
          "completed_at": "2026-07-15T22:06:27Z"
        },
        {
          "id": "status",
          "action": "state.query",
          "status": "completed",
          "resolved_input_hash": "a15231a2142a2a9a85355a8b9cbbccffe01a9c9c2c2fd8c2bc2987cdc481564a",
          "started_at": "2026-07-15T22:06:27Z",
          "output": {
            "repo_root": "D:\\Projects\\prd-plugin",
            "autonomy_level": "autonomous",
            "requests_by_status": {
              "deferred": 1,
              "implemented": 80,
              "proposed": 1,
              "rejected": 1
            },
            "active_tracking": [],
            "tracking_branches": [],
            "tracking_branch_counts": {},
            "tracking_branch_errors": [],
            "open_health": [],
            "stale_count": 0,
            "skill_usage": {
              "project-decision-policy": 1,
              "project-request-intake": 1,
              "project-test-driven-implementation": 1,
              "project-verification-before-completion": 1,
              "project-llm-wiki": 1
            },
            "wiki_backfill_pending": false,
            "version_update": null
          },
          "output_hash": "8ba9f7d3cc6705af37de9e3324d1258e21ccacb5ab0b2d7b389ca08885e11187",
          "completed_at": "2026-07-15T22:06:27Z"
        },
        {
          "id": "substrate",
          "action": "substrate.preflight",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-15T22:06:27Z",
          "output": {
            "status": "disabled",
            "services": {
              "status": "ok",
              "summary": {
                "critical": 0,
                "high": 0,
                "medium": 0,
                "low": 0
              },
              "findings": []
            },
            "policy": {
              "configured": {
                "enabled": false,
                "mode": "off",
                "capabilities": [
                  "records",
                  "graph",
                  "events"
                ],
                "contract_version": 2,
                "require_source_refs": true,
                "endpoint": "http://127.0.0.1:47124",
                "manual_url": "http://127.0.0.1:47124/utcp.json",
                "knowledge_browse_url": "http://127.0.0.1:5276",
                "auth_env": "AI_COLLAB_API_KEY",
                "timeout_seconds": 5,
                "max_result_bytes": 1048576,
                "cache_ttl_seconds": 60,
                "fallback": "local",
                "automation": {
                  "discovery_on_session_start": true,
                  "knowledge_recall": true,
                  "memory_recall": true,
                  "context_enrichment": true,
                  "notices_on_session_start": false,
                  "goals_sync": false,
                  "telemetry_on_maintenance": false,
                  "reporting_dispatch": true,
                  "judgment_dispatch": true,
                  "verification_execution": true
                }
              },
              "active": false,
              "effective_mode": "off",
              "effective_capabilities": []
            }
          },
          "output_hash": "a6df426290b4549a59eecaa0519ead9bcc50b7fcb25bd2185ff6047960f19ccb",
          "completed_at": "2026-07-15T22:06:28Z"
        },
        {
          "id": "notices",
          "action": "substrate.notices",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-15T22:06:28Z",
          "output": {
            "status": "disabled"
          },
          "output_hash": "38b904a1cf83df048360fb2480571b749fd98d57e11f1afdffb5a74a78166fea",
          "completed_at": "2026-07-15T22:06:28Z"
        },
        {
          "id": "goals",
          "action": "substrate.goals",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-15T22:06:28Z",
          "output": {
            "status": "disabled",
            "created": 0,
            "observed": 0,
            "results": []
          },
          "output_hash": "cdfd4de44a28140e686159f34f7b47975954c67e1d1efcef666e985acb136ed8",
          "completed_at": "2026-07-15T22:06:28Z"
        }
      ],
      "completed_at": "2026-07-15T22:06:28Z"
    },
    {
      "id": "WFR-216",
      "schema_version": "1.0",
      "workflow_id": "session.stop",
      "workflow_version": 1,
      "definition_hash": "0cef7bb3e28321be8f85375c154955a69310ce297e47de3f3b8dd48f77a2f07d",
      "plan_hash": "a5e1d77ac734217487fc418e29c7163f4e81178e25d171e70cd4c999d527d3e8",
      "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
      "inputs": {},
      "idempotency_key": "hook:Stop:019f67d1-16ea-7d60-94b4-09d7ac444447",
      "status": "completed",
      "attempt": 1,
      "created_at": "2026-07-15T22:10:32Z",
      "updated_at": "2026-07-15T22:10:33Z",
      "receipts": [
        {
          "step_id": "state",
          "action": "state.consistency",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "5a1c6e5246defb1b6b6b90ff734db95bece2886b408ab112ed9b8e67222d5568",
          "completed_at": "2026-07-15T22:10:33Z"
        },
        {
          "step_id": "goals",
          "action": "substrate.goals",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "cdfd4de44a28140e686159f34f7b47975954c67e1d1efcef666e985acb136ed8",
          "completed_at": "2026-07-15T22:10:33Z"
        },
        {
          "step_id": "staleness",
          "action": "staleness.audit",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "1e81cb0ffd0a4d04626920a203b38d2d23a264cd43e807a85d375d69cae8a658",
          "completed_at": "2026-07-15T22:10:33Z"
        },
        {
          "step_id": "reflections",
          "action": "reflection.list",
          "input_hash": "0172e841ab4c13b3a4061f073f9d68a716ec87a8a5d52fde41823385e0582573",
          "output_hash": "c1b6b635c0bab21120657277f14ef6f839909875f307a3745fa48aee2bd6e449",
          "completed_at": "2026-07-15T22:10:33Z"
        },
        {
          "step_id": "bundle",
          "action": "reporting.bundle",
          "input_hash": "aed8ebb688dc3c085dd978d7c4120572173c3cb87e75919e4a937dcca6ef9457",
          "output_hash": "f61aa7bfac7c2e96e3bf2d3386a95e45d2db52d040f05aff9ea963197eacc3f6",
          "completed_at": "2026-07-15T22:10:33Z"
        },
        {
          "step_id": "delegated",
          "action": "reporting.delegate",
          "input_hash": "5bf4dfad88c9958da759cb1561ca5fdd8f3ac9050e938bfde85af5c8d804adc9",
          "output_hash": "e6085059f197def80ae95add1f328418107bea5436c9bd002530043646a3a95c",
          "completed_at": "2026-07-15T22:10:33Z"
        }
      ],
      "steps": [
        {
          "id": "state",
          "action": "state.consistency",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-15T22:10:32Z",
          "output": {
            "status": "ok",
            "repo_root": "D:\\Projects\\prd-plugin",
            "summary": {
              "errors": 0,
              "warnings": 0,
              "infos": 0
            },
            "findings": []
          },
          "output_hash": "5a1c6e5246defb1b6b6b90ff734db95bece2886b408ab112ed9b8e67222d5568",
          "completed_at": "2026-07-15T22:10:33Z"
        },
        {
          "id": "goals",
          "action": "substrate.goals",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-15T22:10:33Z",
          "output": {
            "status": "disabled",
            "created": 0,
            "observed": 0,
            "results": []
          },
          "output_hash": "cdfd4de44a28140e686159f34f7b47975954c67e1d1efcef666e985acb136ed8",
          "completed_at": "2026-07-15T22:10:33Z"
        },
        {
          "id": "staleness",
          "action": "staleness.audit",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-15T22:10:33Z",
          "output": {
            "status": "ok",
            "repo_root": "D:\\Projects\\prd-plugin",
            "counts": {
              "stale": 0
            },
            "stale": []
          },
          "output_hash": "1e81cb0ffd0a4d04626920a203b38d2d23a264cd43e807a85d375d69cae8a658",
          "completed_at": "2026-07-15T22:10:33Z"
        },
        {
          "id": "reflections",
          "action": "reflection.list",
          "status": "completed",
          "resolved_input_hash": "0172e841ab4c13b3a4061f073f9d68a716ec87a8a5d52fde41823385e0582573",
          "started_at": "2026-07-15T22:10:33Z",
          "output": {
            "enabled": false,
            "on_stop": true,
            "max_questions_per_stop": 5,
            "categories": [
              {
                "id": "behaviour_quality",
                "name": "Behaviour quality",
                "enabled": true,
                "question_count": 3
              },
              {
                "id": "harness_friction",
                "name": "Harness friction",
                "enabled": true,
                "question_count": 2
              }
            ],
            "questions": [
              {
                "id": "RFQ-001",
                "text": "Based on the work you just carried out, would you classify your behaviour as good? Answer yes or no and cite observable evidence.",
                "enabled": true,
                "category_id": "behaviour_quality",
                "category_name": "Behaviour quality",
                "effective_enabled": false
              },
              {
                "id": "RFQ-002",
                "text": "If you answered no, what could you do differently to correct your behaviour?",
                "enabled": true,
                "category_id": "behaviour_quality",
                "category_name": "Behaviour quality",
                "effective_enabled": false
              },
              {
                "id": "RFQ-003",
                "text": "Would another attempt using the identified good behaviours materially improve the outcome? Answer yes or no and state the next corrective action if yes.",
                "enabled": true,
                "category_id": "behaviour_quality",
                "category_name": "Behaviour quality",
                "effective_enabled": false
              },
              {
                "id": "RFQ-004",
                "text": "What harness friction points made this work more difficult?",
                "enabled": true,
                "category_id": "harness_friction",
                "category_name": "Harness friction",
                "effective_enabled": false
              },
              {
                "id": "RFQ-005",
                "text": "What up to three changes would most improve friction in the harness?",
                "enabled": true,
                "category_id": "harness_friction",
                "category_name": "Harness friction",
                "effective_enabled": false
              }
            ]
          },
          "output_hash": "c1b6b635c0bab21120657277f14ef6f839909875f307a3745fa48aee2bd6e449",
          "completed_at": "2026-07-15T22:10:33Z"
        },
        {
          "id": "bundle",
          "action": "reporting.bundle",
          "status": "completed",
          "resolved_input_hash": "aed8ebb688dc3c085dd978d7c4120572173c3cb87e75919e4a937dcca6ef9457",
          "started_at": "2026-07-15T22:10:33Z",
          "output": {
            "contract_version": 1,
            "task": "session_summary",
            "repo": "prd-plugin",
            "policy": {
              "enabled": false,
              "executor": "ai-collab",
              "contract_version": 1,
              "profile": "fast-capable",
              "tasks": [
                "report_summary",
                "session_summary",
                "wiki_synthesis",
                "triage_draft"
              ],
              "fallback": "main",
              "require_source_refs": true,
              "max_input_tokens": 12000,
              "max_output_tokens": 1500,
              "timeout_seconds": 30
            },
            "facts": {
              "requests_by_status": {
                "deferred": 1,
                "implemented": 80,
                "proposed": 1,
                "rejected": 1
              },
              "active_requests": [
                {
                  "id": "REQ-072",
                  "status": "proposed",
                  "severity": "low",
                  "summary": "opencode run-until-done: session.idle is a non-blocking notification, so the stop guard can't force continuation on opencode (currently degrades to a printed reminder, 0.5.95). Investigate whether opencode exposes any vetoable/continuation mechanism (a different event, a permission hook, or a 'continue' API) to enforce run-until-done, or accept the reminder as the permanent ceiling. Low priority — user rarely uses opencode."
                }
              ],
              "active_tracking": [],
              "open_health": [],
              "evidence_count": 105,
              "decision_count": 10
            },
            "findings": [],
            "source_refs": [
              ".prd_plugin/config.json",
              ".prd_plugin/state/decisions.json",
              ".prd_plugin/state/evidence.json",
              ".prd_plugin/state/health.json",
              ".prd_plugin/state/requests.json",
              ".prd_plugin/state/tracking.json",
              "REQ-072"
            ],
            "constraints": {
              "max_input_tokens": 12000,
              "max_output_tokens": 1500,
              "timeout_seconds": 30,
              "require_source_refs": true,
              "no_project_state_writes": true,
              "no_secrets_or_local_session_content": true
            }
          },
          "output_hash": "f61aa7bfac7c2e96e3bf2d3386a95e45d2db52d040f05aff9ea963197eacc3f6",
          "completed_at": "2026-07-15T22:10:33Z"
        },
        {
          "id": "delegated",
          "action": "reporting.delegate",
          "status": "completed",
          "resolved_input_hash": "5bf4dfad88c9958da759cb1561ca5fdd8f3ac9050e938bfde85af5c8d804adc9",
          "started_at": "2026-07-15T22:10:33Z",
          "output": {
            "status": "fallback",
            "action": "main",
            "reason": "disabled"
          },
          "output_hash": "e6085059f197def80ae95add1f328418107bea5436c9bd002530043646a3a95c",
          "completed_at": "2026-07-15T22:10:33Z"
        }
      ],
      "completed_at": "2026-07-15T22:10:33Z"
    },
    {
      "id": "WFR-217",
      "schema_version": "1.0",
      "workflow_id": "session.start",
      "workflow_version": 1,
      "definition_hash": "d0f98da02571e6dd27fec4aed92d3c82af9db75f8b90b997bf665635c7b7f6ca",
      "plan_hash": "b5072615ca3b7e9a3bd85d50d1f069d99ef2a9816b32c03a370745ed7a205536",
      "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
      "inputs": {},
      "idempotency_key": "hook:SessionStart:019f67dc-a383-7053-9bf7-b0766f02bbc8",
      "status": "completed",
      "attempt": 1,
      "created_at": "2026-07-15T22:19:04Z",
      "updated_at": "2026-07-15T22:19:05Z",
      "receipts": [
        {
          "step_id": "config",
          "action": "config.audit",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "3782ec2317c0c8ee7598634310a2804d8aae4735f557498f9d3b8fae7c45e1e5",
          "completed_at": "2026-07-15T22:19:04Z"
        },
        {
          "step_id": "services",
          "action": "services.audit",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "13dcc58bd528f3efa3e6e0fa0853a6eedc376f1f3685fbd4869cbb2b60382ee3",
          "completed_at": "2026-07-15T22:19:04Z"
        },
        {
          "step_id": "state",
          "action": "state.consistency",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "5a1c6e5246defb1b6b6b90ff734db95bece2886b408ab112ed9b8e67222d5568",
          "completed_at": "2026-07-15T22:19:04Z"
        },
        {
          "step_id": "status",
          "action": "state.query",
          "input_hash": "a15231a2142a2a9a85355a8b9cbbccffe01a9c9c2c2fd8c2bc2987cdc481564a",
          "output_hash": "8ba9f7d3cc6705af37de9e3324d1258e21ccacb5ab0b2d7b389ca08885e11187",
          "completed_at": "2026-07-15T22:19:05Z"
        },
        {
          "step_id": "substrate",
          "action": "substrate.preflight",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "a6df426290b4549a59eecaa0519ead9bcc50b7fcb25bd2185ff6047960f19ccb",
          "completed_at": "2026-07-15T22:19:05Z"
        },
        {
          "step_id": "notices",
          "action": "substrate.notices",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "38b904a1cf83df048360fb2480571b749fd98d57e11f1afdffb5a74a78166fea",
          "completed_at": "2026-07-15T22:19:05Z"
        },
        {
          "step_id": "goals",
          "action": "substrate.goals",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "cdfd4de44a28140e686159f34f7b47975954c67e1d1efcef666e985acb136ed8",
          "completed_at": "2026-07-15T22:19:05Z"
        }
      ],
      "steps": [
        {
          "id": "config",
          "action": "config.audit",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-15T22:19:04Z",
          "output": {
            "status": "ok",
            "summary": {
              "settings": 195,
              "mutable": 186,
              "read_only_or_managed": 9,
              "unclassified": 0,
              "unknown": 0,
              "invalid": 0,
              "missing_using_defaults": 0
            },
            "unclassified_keys": [],
            "unknown_keys": [],
            "invalid_values": [],
            "missing_using_defaults": []
          },
          "output_hash": "3782ec2317c0c8ee7598634310a2804d8aae4735f557498f9d3b8fae7c45e1e5",
          "completed_at": "2026-07-15T22:19:04Z"
        },
        {
          "id": "services",
          "action": "services.audit",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-15T22:19:04Z",
          "output": {
            "status": "ok",
            "summary": {
              "critical": 0,
              "high": 0,
              "medium": 0,
              "low": 0
            },
            "findings": []
          },
          "output_hash": "13dcc58bd528f3efa3e6e0fa0853a6eedc376f1f3685fbd4869cbb2b60382ee3",
          "completed_at": "2026-07-15T22:19:04Z"
        },
        {
          "id": "state",
          "action": "state.consistency",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-15T22:19:04Z",
          "output": {
            "status": "ok",
            "repo_root": "D:\\Projects\\prd-plugin",
            "summary": {
              "errors": 0,
              "warnings": 0,
              "infos": 0
            },
            "findings": []
          },
          "output_hash": "5a1c6e5246defb1b6b6b90ff734db95bece2886b408ab112ed9b8e67222d5568",
          "completed_at": "2026-07-15T22:19:04Z"
        },
        {
          "id": "status",
          "action": "state.query",
          "status": "completed",
          "resolved_input_hash": "a15231a2142a2a9a85355a8b9cbbccffe01a9c9c2c2fd8c2bc2987cdc481564a",
          "started_at": "2026-07-15T22:19:04Z",
          "output": {
            "repo_root": "D:\\Projects\\prd-plugin",
            "autonomy_level": "autonomous",
            "requests_by_status": {
              "deferred": 1,
              "implemented": 80,
              "proposed": 1,
              "rejected": 1
            },
            "active_tracking": [],
            "tracking_branches": [],
            "tracking_branch_counts": {},
            "tracking_branch_errors": [],
            "open_health": [],
            "stale_count": 0,
            "skill_usage": {
              "project-decision-policy": 1,
              "project-request-intake": 1,
              "project-test-driven-implementation": 1,
              "project-verification-before-completion": 1,
              "project-llm-wiki": 1
            },
            "wiki_backfill_pending": false,
            "version_update": null
          },
          "output_hash": "8ba9f7d3cc6705af37de9e3324d1258e21ccacb5ab0b2d7b389ca08885e11187",
          "completed_at": "2026-07-15T22:19:05Z"
        },
        {
          "id": "substrate",
          "action": "substrate.preflight",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-15T22:19:05Z",
          "output": {
            "status": "disabled",
            "services": {
              "status": "ok",
              "summary": {
                "critical": 0,
                "high": 0,
                "medium": 0,
                "low": 0
              },
              "findings": []
            },
            "policy": {
              "configured": {
                "enabled": false,
                "mode": "off",
                "capabilities": [
                  "records",
                  "graph",
                  "events"
                ],
                "contract_version": 2,
                "require_source_refs": true,
                "endpoint": "http://127.0.0.1:47124",
                "manual_url": "http://127.0.0.1:47124/utcp.json",
                "knowledge_browse_url": "http://127.0.0.1:5276",
                "auth_env": "AI_COLLAB_API_KEY",
                "timeout_seconds": 5,
                "max_result_bytes": 1048576,
                "cache_ttl_seconds": 60,
                "fallback": "local",
                "automation": {
                  "discovery_on_session_start": true,
                  "knowledge_recall": true,
                  "memory_recall": true,
                  "context_enrichment": true,
                  "notices_on_session_start": false,
                  "goals_sync": false,
                  "telemetry_on_maintenance": false,
                  "reporting_dispatch": true,
                  "judgment_dispatch": true,
                  "verification_execution": true
                }
              },
              "active": false,
              "effective_mode": "off",
              "effective_capabilities": []
            }
          },
          "output_hash": "a6df426290b4549a59eecaa0519ead9bcc50b7fcb25bd2185ff6047960f19ccb",
          "completed_at": "2026-07-15T22:19:05Z"
        },
        {
          "id": "notices",
          "action": "substrate.notices",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-15T22:19:05Z",
          "output": {
            "status": "disabled"
          },
          "output_hash": "38b904a1cf83df048360fb2480571b749fd98d57e11f1afdffb5a74a78166fea",
          "completed_at": "2026-07-15T22:19:05Z"
        },
        {
          "id": "goals",
          "action": "substrate.goals",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-15T22:19:05Z",
          "output": {
            "status": "disabled",
            "created": 0,
            "observed": 0,
            "results": []
          },
          "output_hash": "cdfd4de44a28140e686159f34f7b47975954c67e1d1efcef666e985acb136ed8",
          "completed_at": "2026-07-15T22:19:05Z"
        }
      ],
      "completed_at": "2026-07-15T22:19:05Z"
    },
    {
      "id": "WFR-218",
      "schema_version": "1.0",
      "workflow_id": "session.stop",
      "workflow_version": 1,
      "definition_hash": "0cef7bb3e28321be8f85375c154955a69310ce297e47de3f3b8dd48f77a2f07d",
      "plan_hash": "a5e1d77ac734217487fc418e29c7163f4e81178e25d171e70cd4c999d527d3e8",
      "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
      "inputs": {},
      "idempotency_key": "hook:Stop:019f67dc-a383-7053-9bf7-b0766f02bbc8",
      "status": "completed",
      "attempt": 1,
      "created_at": "2026-07-15T22:20:36Z",
      "updated_at": "2026-07-15T22:20:38Z",
      "receipts": [
        {
          "step_id": "state",
          "action": "state.consistency",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "5a1c6e5246defb1b6b6b90ff734db95bece2886b408ab112ed9b8e67222d5568",
          "completed_at": "2026-07-15T22:20:37Z"
        },
        {
          "step_id": "goals",
          "action": "substrate.goals",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "cdfd4de44a28140e686159f34f7b47975954c67e1d1efcef666e985acb136ed8",
          "completed_at": "2026-07-15T22:20:37Z"
        },
        {
          "step_id": "staleness",
          "action": "staleness.audit",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "1e81cb0ffd0a4d04626920a203b38d2d23a264cd43e807a85d375d69cae8a658",
          "completed_at": "2026-07-15T22:20:37Z"
        },
        {
          "step_id": "reflections",
          "action": "reflection.list",
          "input_hash": "0172e841ab4c13b3a4061f073f9d68a716ec87a8a5d52fde41823385e0582573",
          "output_hash": "c1b6b635c0bab21120657277f14ef6f839909875f307a3745fa48aee2bd6e449",
          "completed_at": "2026-07-15T22:20:37Z"
        },
        {
          "step_id": "bundle",
          "action": "reporting.bundle",
          "input_hash": "aed8ebb688dc3c085dd978d7c4120572173c3cb87e75919e4a937dcca6ef9457",
          "output_hash": "f61aa7bfac7c2e96e3bf2d3386a95e45d2db52d040f05aff9ea963197eacc3f6",
          "completed_at": "2026-07-15T22:20:37Z"
        },
        {
          "step_id": "delegated",
          "action": "reporting.delegate",
          "input_hash": "5bf4dfad88c9958da759cb1561ca5fdd8f3ac9050e938bfde85af5c8d804adc9",
          "output_hash": "e6085059f197def80ae95add1f328418107bea5436c9bd002530043646a3a95c",
          "completed_at": "2026-07-15T22:20:37Z"
        }
      ],
      "steps": [
        {
          "id": "state",
          "action": "state.consistency",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-15T22:20:36Z",
          "output": {
            "status": "ok",
            "repo_root": "D:\\Projects\\prd-plugin",
            "summary": {
              "errors": 0,
              "warnings": 0,
              "infos": 0
            },
            "findings": []
          },
          "output_hash": "5a1c6e5246defb1b6b6b90ff734db95bece2886b408ab112ed9b8e67222d5568",
          "completed_at": "2026-07-15T22:20:37Z"
        },
        {
          "id": "goals",
          "action": "substrate.goals",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-15T22:20:37Z",
          "output": {
            "status": "disabled",
            "created": 0,
            "observed": 0,
            "results": []
          },
          "output_hash": "cdfd4de44a28140e686159f34f7b47975954c67e1d1efcef666e985acb136ed8",
          "completed_at": "2026-07-15T22:20:37Z"
        },
        {
          "id": "staleness",
          "action": "staleness.audit",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-15T22:20:37Z",
          "output": {
            "status": "ok",
            "repo_root": "D:\\Projects\\prd-plugin",
            "counts": {
              "stale": 0
            },
            "stale": []
          },
          "output_hash": "1e81cb0ffd0a4d04626920a203b38d2d23a264cd43e807a85d375d69cae8a658",
          "completed_at": "2026-07-15T22:20:37Z"
        },
        {
          "id": "reflections",
          "action": "reflection.list",
          "status": "completed",
          "resolved_input_hash": "0172e841ab4c13b3a4061f073f9d68a716ec87a8a5d52fde41823385e0582573",
          "started_at": "2026-07-15T22:20:37Z",
          "output": {
            "enabled": false,
            "on_stop": true,
            "max_questions_per_stop": 5,
            "categories": [
              {
                "id": "behaviour_quality",
                "name": "Behaviour quality",
                "enabled": true,
                "question_count": 3
              },
              {
                "id": "harness_friction",
                "name": "Harness friction",
                "enabled": true,
                "question_count": 2
              }
            ],
            "questions": [
              {
                "id": "RFQ-001",
                "text": "Based on the work you just carried out, would you classify your behaviour as good? Answer yes or no and cite observable evidence.",
                "enabled": true,
                "category_id": "behaviour_quality",
                "category_name": "Behaviour quality",
                "effective_enabled": false
              },
              {
                "id": "RFQ-002",
                "text": "If you answered no, what could you do differently to correct your behaviour?",
                "enabled": true,
                "category_id": "behaviour_quality",
                "category_name": "Behaviour quality",
                "effective_enabled": false
              },
              {
                "id": "RFQ-003",
                "text": "Would another attempt using the identified good behaviours materially improve the outcome? Answer yes or no and state the next corrective action if yes.",
                "enabled": true,
                "category_id": "behaviour_quality",
                "category_name": "Behaviour quality",
                "effective_enabled": false
              },
              {
                "id": "RFQ-004",
                "text": "What harness friction points made this work more difficult?",
                "enabled": true,
                "category_id": "harness_friction",
                "category_name": "Harness friction",
                "effective_enabled": false
              },
              {
                "id": "RFQ-005",
                "text": "What up to three changes would most improve friction in the harness?",
                "enabled": true,
                "category_id": "harness_friction",
                "category_name": "Harness friction",
                "effective_enabled": false
              }
            ]
          },
          "output_hash": "c1b6b635c0bab21120657277f14ef6f839909875f307a3745fa48aee2bd6e449",
          "completed_at": "2026-07-15T22:20:37Z"
        },
        {
          "id": "bundle",
          "action": "reporting.bundle",
          "status": "completed",
          "resolved_input_hash": "aed8ebb688dc3c085dd978d7c4120572173c3cb87e75919e4a937dcca6ef9457",
          "started_at": "2026-07-15T22:20:37Z",
          "output": {
            "contract_version": 1,
            "task": "session_summary",
            "repo": "prd-plugin",
            "policy": {
              "enabled": false,
              "executor": "ai-collab",
              "contract_version": 1,
              "profile": "fast-capable",
              "tasks": [
                "report_summary",
                "session_summary",
                "wiki_synthesis",
                "triage_draft"
              ],
              "fallback": "main",
              "require_source_refs": true,
              "max_input_tokens": 12000,
              "max_output_tokens": 1500,
              "timeout_seconds": 30
            },
            "facts": {
              "requests_by_status": {
                "deferred": 1,
                "implemented": 80,
                "proposed": 1,
                "rejected": 1
              },
              "active_requests": [
                {
                  "id": "REQ-072",
                  "status": "proposed",
                  "severity": "low",
                  "summary": "opencode run-until-done: session.idle is a non-blocking notification, so the stop guard can't force continuation on opencode (currently degrades to a printed reminder, 0.5.95). Investigate whether opencode exposes any vetoable/continuation mechanism (a different event, a permission hook, or a 'continue' API) to enforce run-until-done, or accept the reminder as the permanent ceiling. Low priority — user rarely uses opencode."
                }
              ],
              "active_tracking": [],
              "open_health": [],
              "evidence_count": 105,
              "decision_count": 10
            },
            "findings": [],
            "source_refs": [
              ".prd_plugin/config.json",
              ".prd_plugin/state/decisions.json",
              ".prd_plugin/state/evidence.json",
              ".prd_plugin/state/health.json",
              ".prd_plugin/state/requests.json",
              ".prd_plugin/state/tracking.json",
              "REQ-072"
            ],
            "constraints": {
              "max_input_tokens": 12000,
              "max_output_tokens": 1500,
              "timeout_seconds": 30,
              "require_source_refs": true,
              "no_project_state_writes": true,
              "no_secrets_or_local_session_content": true
            }
          },
          "output_hash": "f61aa7bfac7c2e96e3bf2d3386a95e45d2db52d040f05aff9ea963197eacc3f6",
          "completed_at": "2026-07-15T22:20:37Z"
        },
        {
          "id": "delegated",
          "action": "reporting.delegate",
          "status": "completed",
          "resolved_input_hash": "5bf4dfad88c9958da759cb1561ca5fdd8f3ac9050e938bfde85af5c8d804adc9",
          "started_at": "2026-07-15T22:20:37Z",
          "output": {
            "status": "fallback",
            "action": "main",
            "reason": "disabled"
          },
          "output_hash": "e6085059f197def80ae95add1f328418107bea5436c9bd002530043646a3a95c",
          "completed_at": "2026-07-15T22:20:37Z"
        }
      ],
      "completed_at": "2026-07-15T22:20:38Z"
    },
    {
      "id": "WFR-219",
      "schema_version": "1.0",
      "workflow_id": "session.start",
      "workflow_version": 1,
      "definition_hash": "d0f98da02571e6dd27fec4aed92d3c82af9db75f8b90b997bf665635c7b7f6ca",
      "plan_hash": "b5072615ca3b7e9a3bd85d50d1f069d99ef2a9816b32c03a370745ed7a205536",
      "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
      "inputs": {},
      "idempotency_key": "hook:SessionStart:019f67de-c8a1-7d32-8857-0a69b926e3d9",
      "status": "completed",
      "attempt": 1,
      "created_at": "2026-07-15T22:21:24Z",
      "updated_at": "2026-07-15T22:21:25Z",
      "receipts": [
        {
          "step_id": "config",
          "action": "config.audit",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "3782ec2317c0c8ee7598634310a2804d8aae4735f557498f9d3b8fae7c45e1e5",
          "completed_at": "2026-07-15T22:21:24Z"
        },
        {
          "step_id": "services",
          "action": "services.audit",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "13dcc58bd528f3efa3e6e0fa0853a6eedc376f1f3685fbd4869cbb2b60382ee3",
          "completed_at": "2026-07-15T22:21:24Z"
        },
        {
          "step_id": "state",
          "action": "state.consistency",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "5a1c6e5246defb1b6b6b90ff734db95bece2886b408ab112ed9b8e67222d5568",
          "completed_at": "2026-07-15T22:21:25Z"
        },
        {
          "step_id": "status",
          "action": "state.query",
          "input_hash": "a15231a2142a2a9a85355a8b9cbbccffe01a9c9c2c2fd8c2bc2987cdc481564a",
          "output_hash": "8ba9f7d3cc6705af37de9e3324d1258e21ccacb5ab0b2d7b389ca08885e11187",
          "completed_at": "2026-07-15T22:21:25Z"
        },
        {
          "step_id": "substrate",
          "action": "substrate.preflight",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "a6df426290b4549a59eecaa0519ead9bcc50b7fcb25bd2185ff6047960f19ccb",
          "completed_at": "2026-07-15T22:21:25Z"
        },
        {
          "step_id": "notices",
          "action": "substrate.notices",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "38b904a1cf83df048360fb2480571b749fd98d57e11f1afdffb5a74a78166fea",
          "completed_at": "2026-07-15T22:21:25Z"
        },
        {
          "step_id": "goals",
          "action": "substrate.goals",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "cdfd4de44a28140e686159f34f7b47975954c67e1d1efcef666e985acb136ed8",
          "completed_at": "2026-07-15T22:21:25Z"
        }
      ],
      "steps": [
        {
          "id": "config",
          "action": "config.audit",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-15T22:21:24Z",
          "output": {
            "status": "ok",
            "summary": {
              "settings": 195,
              "mutable": 186,
              "read_only_or_managed": 9,
              "unclassified": 0,
              "unknown": 0,
              "invalid": 0,
              "missing_using_defaults": 0
            },
            "unclassified_keys": [],
            "unknown_keys": [],
            "invalid_values": [],
            "missing_using_defaults": []
          },
          "output_hash": "3782ec2317c0c8ee7598634310a2804d8aae4735f557498f9d3b8fae7c45e1e5",
          "completed_at": "2026-07-15T22:21:24Z"
        },
        {
          "id": "services",
          "action": "services.audit",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-15T22:21:24Z",
          "output": {
            "status": "ok",
            "summary": {
              "critical": 0,
              "high": 0,
              "medium": 0,
              "low": 0
            },
            "findings": []
          },
          "output_hash": "13dcc58bd528f3efa3e6e0fa0853a6eedc376f1f3685fbd4869cbb2b60382ee3",
          "completed_at": "2026-07-15T22:21:24Z"
        },
        {
          "id": "state",
          "action": "state.consistency",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-15T22:21:24Z",
          "output": {
            "status": "ok",
            "repo_root": "D:\\Projects\\prd-plugin",
            "summary": {
              "errors": 0,
              "warnings": 0,
              "infos": 0
            },
            "findings": []
          },
          "output_hash": "5a1c6e5246defb1b6b6b90ff734db95bece2886b408ab112ed9b8e67222d5568",
          "completed_at": "2026-07-15T22:21:25Z"
        },
        {
          "id": "status",
          "action": "state.query",
          "status": "completed",
          "resolved_input_hash": "a15231a2142a2a9a85355a8b9cbbccffe01a9c9c2c2fd8c2bc2987cdc481564a",
          "started_at": "2026-07-15T22:21:25Z",
          "output": {
            "repo_root": "D:\\Projects\\prd-plugin",
            "autonomy_level": "autonomous",
            "requests_by_status": {
              "deferred": 1,
              "implemented": 80,
              "proposed": 1,
              "rejected": 1
            },
            "active_tracking": [],
            "tracking_branches": [],
            "tracking_branch_counts": {},
            "tracking_branch_errors": [],
            "open_health": [],
            "stale_count": 0,
            "skill_usage": {
              "project-decision-policy": 1,
              "project-request-intake": 1,
              "project-test-driven-implementation": 1,
              "project-verification-before-completion": 1,
              "project-llm-wiki": 1
            },
            "wiki_backfill_pending": false,
            "version_update": null
          },
          "output_hash": "8ba9f7d3cc6705af37de9e3324d1258e21ccacb5ab0b2d7b389ca08885e11187",
          "completed_at": "2026-07-15T22:21:25Z"
        },
        {
          "id": "substrate",
          "action": "substrate.preflight",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-15T22:21:25Z",
          "output": {
            "status": "disabled",
            "services": {
              "status": "ok",
              "summary": {
                "critical": 0,
                "high": 0,
                "medium": 0,
                "low": 0
              },
              "findings": []
            },
            "policy": {
              "configured": {
                "enabled": false,
                "mode": "off",
                "capabilities": [
                  "records",
                  "graph",
                  "events"
                ],
                "contract_version": 2,
                "require_source_refs": true,
                "endpoint": "http://127.0.0.1:47124",
                "manual_url": "http://127.0.0.1:47124/utcp.json",
                "knowledge_browse_url": "http://127.0.0.1:5276",
                "auth_env": "AI_COLLAB_API_KEY",
                "timeout_seconds": 5,
                "max_result_bytes": 1048576,
                "cache_ttl_seconds": 60,
                "fallback": "local",
                "automation": {
                  "discovery_on_session_start": true,
                  "knowledge_recall": true,
                  "memory_recall": true,
                  "context_enrichment": true,
                  "notices_on_session_start": false,
                  "goals_sync": false,
                  "telemetry_on_maintenance": false,
                  "reporting_dispatch": true,
                  "judgment_dispatch": true,
                  "verification_execution": true
                }
              },
              "active": false,
              "effective_mode": "off",
              "effective_capabilities": []
            }
          },
          "output_hash": "a6df426290b4549a59eecaa0519ead9bcc50b7fcb25bd2185ff6047960f19ccb",
          "completed_at": "2026-07-15T22:21:25Z"
        },
        {
          "id": "notices",
          "action": "substrate.notices",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-15T22:21:25Z",
          "output": {
            "status": "disabled"
          },
          "output_hash": "38b904a1cf83df048360fb2480571b749fd98d57e11f1afdffb5a74a78166fea",
          "completed_at": "2026-07-15T22:21:25Z"
        },
        {
          "id": "goals",
          "action": "substrate.goals",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-15T22:21:25Z",
          "output": {
            "status": "disabled",
            "created": 0,
            "observed": 0,
            "results": []
          },
          "output_hash": "cdfd4de44a28140e686159f34f7b47975954c67e1d1efcef666e985acb136ed8",
          "completed_at": "2026-07-15T22:21:25Z"
        }
      ],
      "completed_at": "2026-07-15T22:21:25Z"
    },
    {
      "id": "WFR-220",
      "schema_version": "1.0",
      "workflow_id": "session.stop",
      "workflow_version": 1,
      "definition_hash": "0cef7bb3e28321be8f85375c154955a69310ce297e47de3f3b8dd48f77a2f07d",
      "plan_hash": "a5e1d77ac734217487fc418e29c7163f4e81178e25d171e70cd4c999d527d3e8",
      "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
      "inputs": {},
      "idempotency_key": "hook:Stop:019f67de-c8a1-7d32-8857-0a69b926e3d9",
      "status": "completed",
      "attempt": 1,
      "created_at": "2026-07-15T22:21:30Z",
      "updated_at": "2026-07-15T22:21:31Z",
      "receipts": [
        {
          "step_id": "state",
          "action": "state.consistency",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "5a1c6e5246defb1b6b6b90ff734db95bece2886b408ab112ed9b8e67222d5568",
          "completed_at": "2026-07-15T22:21:30Z"
        },
        {
          "step_id": "goals",
          "action": "substrate.goals",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "cdfd4de44a28140e686159f34f7b47975954c67e1d1efcef666e985acb136ed8",
          "completed_at": "2026-07-15T22:21:31Z"
        },
        {
          "step_id": "staleness",
          "action": "staleness.audit",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "1e81cb0ffd0a4d04626920a203b38d2d23a264cd43e807a85d375d69cae8a658",
          "completed_at": "2026-07-15T22:21:31Z"
        },
        {
          "step_id": "reflections",
          "action": "reflection.list",
          "input_hash": "0172e841ab4c13b3a4061f073f9d68a716ec87a8a5d52fde41823385e0582573",
          "output_hash": "c1b6b635c0bab21120657277f14ef6f839909875f307a3745fa48aee2bd6e449",
          "completed_at": "2026-07-15T22:21:31Z"
        },
        {
          "step_id": "bundle",
          "action": "reporting.bundle",
          "input_hash": "aed8ebb688dc3c085dd978d7c4120572173c3cb87e75919e4a937dcca6ef9457",
          "output_hash": "f61aa7bfac7c2e96e3bf2d3386a95e45d2db52d040f05aff9ea963197eacc3f6",
          "completed_at": "2026-07-15T22:21:31Z"
        },
        {
          "step_id": "delegated",
          "action": "reporting.delegate",
          "input_hash": "5bf4dfad88c9958da759cb1561ca5fdd8f3ac9050e938bfde85af5c8d804adc9",
          "output_hash": "e6085059f197def80ae95add1f328418107bea5436c9bd002530043646a3a95c",
          "completed_at": "2026-07-15T22:21:31Z"
        }
      ],
      "steps": [
        {
          "id": "state",
          "action": "state.consistency",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-15T22:21:30Z",
          "output": {
            "status": "ok",
            "repo_root": "D:\\Projects\\prd-plugin",
            "summary": {
              "errors": 0,
              "warnings": 0,
              "infos": 0
            },
            "findings": []
          },
          "output_hash": "5a1c6e5246defb1b6b6b90ff734db95bece2886b408ab112ed9b8e67222d5568",
          "completed_at": "2026-07-15T22:21:30Z"
        },
        {
          "id": "goals",
          "action": "substrate.goals",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-15T22:21:31Z",
          "output": {
            "status": "disabled",
            "created": 0,
            "observed": 0,
            "results": []
          },
          "output_hash": "cdfd4de44a28140e686159f34f7b47975954c67e1d1efcef666e985acb136ed8",
          "completed_at": "2026-07-15T22:21:31Z"
        },
        {
          "id": "staleness",
          "action": "staleness.audit",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-15T22:21:31Z",
          "output": {
            "status": "ok",
            "repo_root": "D:\\Projects\\prd-plugin",
            "counts": {
              "stale": 0
            },
            "stale": []
          },
          "output_hash": "1e81cb0ffd0a4d04626920a203b38d2d23a264cd43e807a85d375d69cae8a658",
          "completed_at": "2026-07-15T22:21:31Z"
        },
        {
          "id": "reflections",
          "action": "reflection.list",
          "status": "completed",
          "resolved_input_hash": "0172e841ab4c13b3a4061f073f9d68a716ec87a8a5d52fde41823385e0582573",
          "started_at": "2026-07-15T22:21:31Z",
          "output": {
            "enabled": false,
            "on_stop": true,
            "max_questions_per_stop": 5,
            "categories": [
              {
                "id": "behaviour_quality",
                "name": "Behaviour quality",
                "enabled": true,
                "question_count": 3
              },
              {
                "id": "harness_friction",
                "name": "Harness friction",
                "enabled": true,
                "question_count": 2
              }
            ],
            "questions": [
              {
                "id": "RFQ-001",
                "text": "Based on the work you just carried out, would you classify your behaviour as good? Answer yes or no and cite observable evidence.",
                "enabled": true,
                "category_id": "behaviour_quality",
                "category_name": "Behaviour quality",
                "effective_enabled": false
              },
              {
                "id": "RFQ-002",
                "text": "If you answered no, what could you do differently to correct your behaviour?",
                "enabled": true,
                "category_id": "behaviour_quality",
                "category_name": "Behaviour quality",
                "effective_enabled": false
              },
              {
                "id": "RFQ-003",
                "text": "Would another attempt using the identified good behaviours materially improve the outcome? Answer yes or no and state the next corrective action if yes.",
                "enabled": true,
                "category_id": "behaviour_quality",
                "category_name": "Behaviour quality",
                "effective_enabled": false
              },
              {
                "id": "RFQ-004",
                "text": "What harness friction points made this work more difficult?",
                "enabled": true,
                "category_id": "harness_friction",
                "category_name": "Harness friction",
                "effective_enabled": false
              },
              {
                "id": "RFQ-005",
                "text": "What up to three changes would most improve friction in the harness?",
                "enabled": true,
                "category_id": "harness_friction",
                "category_name": "Harness friction",
                "effective_enabled": false
              }
            ]
          },
          "output_hash": "c1b6b635c0bab21120657277f14ef6f839909875f307a3745fa48aee2bd6e449",
          "completed_at": "2026-07-15T22:21:31Z"
        },
        {
          "id": "bundle",
          "action": "reporting.bundle",
          "status": "completed",
          "resolved_input_hash": "aed8ebb688dc3c085dd978d7c4120572173c3cb87e75919e4a937dcca6ef9457",
          "started_at": "2026-07-15T22:21:31Z",
          "output": {
            "contract_version": 1,
            "task": "session_summary",
            "repo": "prd-plugin",
            "policy": {
              "enabled": false,
              "executor": "ai-collab",
              "contract_version": 1,
              "profile": "fast-capable",
              "tasks": [
                "report_summary",
                "session_summary",
                "wiki_synthesis",
                "triage_draft"
              ],
              "fallback": "main",
              "require_source_refs": true,
              "max_input_tokens": 12000,
              "max_output_tokens": 1500,
              "timeout_seconds": 30
            },
            "facts": {
              "requests_by_status": {
                "deferred": 1,
                "implemented": 80,
                "proposed": 1,
                "rejected": 1
              },
              "active_requests": [
                {
                  "id": "REQ-072",
                  "status": "proposed",
                  "severity": "low",
                  "summary": "opencode run-until-done: session.idle is a non-blocking notification, so the stop guard can't force continuation on opencode (currently degrades to a printed reminder, 0.5.95). Investigate whether opencode exposes any vetoable/continuation mechanism (a different event, a permission hook, or a 'continue' API) to enforce run-until-done, or accept the reminder as the permanent ceiling. Low priority — user rarely uses opencode."
                }
              ],
              "active_tracking": [],
              "open_health": [],
              "evidence_count": 105,
              "decision_count": 10
            },
            "findings": [],
            "source_refs": [
              ".prd_plugin/config.json",
              ".prd_plugin/state/decisions.json",
              ".prd_plugin/state/evidence.json",
              ".prd_plugin/state/health.json",
              ".prd_plugin/state/requests.json",
              ".prd_plugin/state/tracking.json",
              "REQ-072"
            ],
            "constraints": {
              "max_input_tokens": 12000,
              "max_output_tokens": 1500,
              "timeout_seconds": 30,
              "require_source_refs": true,
              "no_project_state_writes": true,
              "no_secrets_or_local_session_content": true
            }
          },
          "output_hash": "f61aa7bfac7c2e96e3bf2d3386a95e45d2db52d040f05aff9ea963197eacc3f6",
          "completed_at": "2026-07-15T22:21:31Z"
        },
        {
          "id": "delegated",
          "action": "reporting.delegate",
          "status": "completed",
          "resolved_input_hash": "5bf4dfad88c9958da759cb1561ca5fdd8f3ac9050e938bfde85af5c8d804adc9",
          "started_at": "2026-07-15T22:21:31Z",
          "output": {
            "status": "fallback",
            "action": "main",
            "reason": "disabled"
          },
          "output_hash": "e6085059f197def80ae95add1f328418107bea5436c9bd002530043646a3a95c",
          "completed_at": "2026-07-15T22:21:31Z"
        }
      ],
      "completed_at": "2026-07-15T22:21:31Z"
    },
    {
      "id": "WFR-221",
      "schema_version": "1.0",
      "workflow_id": "session.start",
      "workflow_version": 1,
      "definition_hash": "d0f98da02571e6dd27fec4aed92d3c82af9db75f8b90b997bf665635c7b7f6ca",
      "plan_hash": "b5072615ca3b7e9a3bd85d50d1f069d99ef2a9816b32c03a370745ed7a205536",
      "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
      "inputs": {},
      "idempotency_key": "hook:SessionStart:019f67df-4304-7773-88c1-d3e66b89b318",
      "status": "completed",
      "attempt": 1,
      "created_at": "2026-07-15T22:21:55Z",
      "updated_at": "2026-07-15T22:21:57Z",
      "receipts": [
        {
          "step_id": "config",
          "action": "config.audit",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "3782ec2317c0c8ee7598634310a2804d8aae4735f557498f9d3b8fae7c45e1e5",
          "completed_at": "2026-07-15T22:21:55Z"
        },
        {
          "step_id": "services",
          "action": "services.audit",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "13dcc58bd528f3efa3e6e0fa0853a6eedc376f1f3685fbd4869cbb2b60382ee3",
          "completed_at": "2026-07-15T22:21:55Z"
        },
        {
          "step_id": "state",
          "action": "state.consistency",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "5a1c6e5246defb1b6b6b90ff734db95bece2886b408ab112ed9b8e67222d5568",
          "completed_at": "2026-07-15T22:21:56Z"
        },
        {
          "step_id": "status",
          "action": "state.query",
          "input_hash": "a15231a2142a2a9a85355a8b9cbbccffe01a9c9c2c2fd8c2bc2987cdc481564a",
          "output_hash": "8ba9f7d3cc6705af37de9e3324d1258e21ccacb5ab0b2d7b389ca08885e11187",
          "completed_at": "2026-07-15T22:21:56Z"
        },
        {
          "step_id": "substrate",
          "action": "substrate.preflight",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "a6df426290b4549a59eecaa0519ead9bcc50b7fcb25bd2185ff6047960f19ccb",
          "completed_at": "2026-07-15T22:21:56Z"
        },
        {
          "step_id": "notices",
          "action": "substrate.notices",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "38b904a1cf83df048360fb2480571b749fd98d57e11f1afdffb5a74a78166fea",
          "completed_at": "2026-07-15T22:21:56Z"
        },
        {
          "step_id": "goals",
          "action": "substrate.goals",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "cdfd4de44a28140e686159f34f7b47975954c67e1d1efcef666e985acb136ed8",
          "completed_at": "2026-07-15T22:21:56Z"
        }
      ],
      "steps": [
        {
          "id": "config",
          "action": "config.audit",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-15T22:21:55Z",
          "output": {
            "status": "ok",
            "summary": {
              "settings": 195,
              "mutable": 186,
              "read_only_or_managed": 9,
              "unclassified": 0,
              "unknown": 0,
              "invalid": 0,
              "missing_using_defaults": 0
            },
            "unclassified_keys": [],
            "unknown_keys": [],
            "invalid_values": [],
            "missing_using_defaults": []
          },
          "output_hash": "3782ec2317c0c8ee7598634310a2804d8aae4735f557498f9d3b8fae7c45e1e5",
          "completed_at": "2026-07-15T22:21:55Z"
        },
        {
          "id": "services",
          "action": "services.audit",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-15T22:21:55Z",
          "output": {
            "status": "ok",
            "summary": {
              "critical": 0,
              "high": 0,
              "medium": 0,
              "low": 0
            },
            "findings": []
          },
          "output_hash": "13dcc58bd528f3efa3e6e0fa0853a6eedc376f1f3685fbd4869cbb2b60382ee3",
          "completed_at": "2026-07-15T22:21:55Z"
        },
        {
          "id": "state",
          "action": "state.consistency",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-15T22:21:55Z",
          "output": {
            "status": "ok",
            "repo_root": "D:\\Projects\\prd-plugin",
            "summary": {
              "errors": 0,
              "warnings": 0,
              "infos": 0
            },
            "findings": []
          },
          "output_hash": "5a1c6e5246defb1b6b6b90ff734db95bece2886b408ab112ed9b8e67222d5568",
          "completed_at": "2026-07-15T22:21:56Z"
        },
        {
          "id": "status",
          "action": "state.query",
          "status": "completed",
          "resolved_input_hash": "a15231a2142a2a9a85355a8b9cbbccffe01a9c9c2c2fd8c2bc2987cdc481564a",
          "started_at": "2026-07-15T22:21:56Z",
          "output": {
            "repo_root": "D:\\Projects\\prd-plugin",
            "autonomy_level": "autonomous",
            "requests_by_status": {
              "deferred": 1,
              "implemented": 80,
              "proposed": 1,
              "rejected": 1
            },
            "active_tracking": [],
            "tracking_branches": [],
            "tracking_branch_counts": {},
            "tracking_branch_errors": [],
            "open_health": [],
            "stale_count": 0,
            "skill_usage": {
              "project-decision-policy": 1,
              "project-request-intake": 1,
              "project-test-driven-implementation": 1,
              "project-verification-before-completion": 1,
              "project-llm-wiki": 1
            },
            "wiki_backfill_pending": false,
            "version_update": null
          },
          "output_hash": "8ba9f7d3cc6705af37de9e3324d1258e21ccacb5ab0b2d7b389ca08885e11187",
          "completed_at": "2026-07-15T22:21:56Z"
        },
        {
          "id": "substrate",
          "action": "substrate.preflight",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-15T22:21:56Z",
          "output": {
            "status": "disabled",
            "services": {
              "status": "ok",
              "summary": {
                "critical": 0,
                "high": 0,
                "medium": 0,
                "low": 0
              },
              "findings": []
            },
            "policy": {
              "configured": {
                "enabled": false,
                "mode": "off",
                "capabilities": [
                  "records",
                  "graph",
                  "events"
                ],
                "contract_version": 2,
                "require_source_refs": true,
                "endpoint": "http://127.0.0.1:47124",
                "manual_url": "http://127.0.0.1:47124/utcp.json",
                "knowledge_browse_url": "http://127.0.0.1:5276",
                "auth_env": "AI_COLLAB_API_KEY",
                "timeout_seconds": 5,
                "max_result_bytes": 1048576,
                "cache_ttl_seconds": 60,
                "fallback": "local",
                "automation": {
                  "discovery_on_session_start": true,
                  "knowledge_recall": true,
                  "memory_recall": true,
                  "context_enrichment": true,
                  "notices_on_session_start": false,
                  "goals_sync": false,
                  "telemetry_on_maintenance": false,
                  "reporting_dispatch": true,
                  "judgment_dispatch": true,
                  "verification_execution": true
                }
              },
              "active": false,
              "effective_mode": "off",
              "effective_capabilities": []
            }
          },
          "output_hash": "a6df426290b4549a59eecaa0519ead9bcc50b7fcb25bd2185ff6047960f19ccb",
          "completed_at": "2026-07-15T22:21:56Z"
        },
        {
          "id": "notices",
          "action": "substrate.notices",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-15T22:21:56Z",
          "output": {
            "status": "disabled"
          },
          "output_hash": "38b904a1cf83df048360fb2480571b749fd98d57e11f1afdffb5a74a78166fea",
          "completed_at": "2026-07-15T22:21:56Z"
        },
        {
          "id": "goals",
          "action": "substrate.goals",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-15T22:21:56Z",
          "output": {
            "status": "disabled",
            "created": 0,
            "observed": 0,
            "results": []
          },
          "output_hash": "cdfd4de44a28140e686159f34f7b47975954c67e1d1efcef666e985acb136ed8",
          "completed_at": "2026-07-15T22:21:56Z"
        }
      ],
      "completed_at": "2026-07-15T22:21:57Z"
    },
    {
      "id": "WFR-222",
      "schema_version": "1.0",
      "workflow_id": "session.stop",
      "workflow_version": 1,
      "definition_hash": "0cef7bb3e28321be8f85375c154955a69310ce297e47de3f3b8dd48f77a2f07d",
      "plan_hash": "a5e1d77ac734217487fc418e29c7163f4e81178e25d171e70cd4c999d527d3e8",
      "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
      "inputs": {},
      "idempotency_key": "hook:Stop:019f67df-4304-7773-88c1-d3e66b89b318",
      "status": "completed",
      "attempt": 1,
      "created_at": "2026-07-15T22:21:59Z",
      "updated_at": "2026-07-15T22:22:00Z",
      "receipts": [
        {
          "step_id": "state",
          "action": "state.consistency",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "5a1c6e5246defb1b6b6b90ff734db95bece2886b408ab112ed9b8e67222d5568",
          "completed_at": "2026-07-15T22:22:00Z"
        },
        {
          "step_id": "goals",
          "action": "substrate.goals",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "cdfd4de44a28140e686159f34f7b47975954c67e1d1efcef666e985acb136ed8",
          "completed_at": "2026-07-15T22:22:00Z"
        },
        {
          "step_id": "staleness",
          "action": "staleness.audit",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "1e81cb0ffd0a4d04626920a203b38d2d23a264cd43e807a85d375d69cae8a658",
          "completed_at": "2026-07-15T22:22:00Z"
        },
        {
          "step_id": "reflections",
          "action": "reflection.list",
          "input_hash": "0172e841ab4c13b3a4061f073f9d68a716ec87a8a5d52fde41823385e0582573",
          "output_hash": "c1b6b635c0bab21120657277f14ef6f839909875f307a3745fa48aee2bd6e449",
          "completed_at": "2026-07-15T22:22:00Z"
        },
        {
          "step_id": "bundle",
          "action": "reporting.bundle",
          "input_hash": "aed8ebb688dc3c085dd978d7c4120572173c3cb87e75919e4a937dcca6ef9457",
          "output_hash": "f61aa7bfac7c2e96e3bf2d3386a95e45d2db52d040f05aff9ea963197eacc3f6",
          "completed_at": "2026-07-15T22:22:00Z"
        },
        {
          "step_id": "delegated",
          "action": "reporting.delegate",
          "input_hash": "5bf4dfad88c9958da759cb1561ca5fdd8f3ac9050e938bfde85af5c8d804adc9",
          "output_hash": "e6085059f197def80ae95add1f328418107bea5436c9bd002530043646a3a95c",
          "completed_at": "2026-07-15T22:22:00Z"
        }
      ],
      "steps": [
        {
          "id": "state",
          "action": "state.consistency",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-15T22:21:59Z",
          "output": {
            "status": "ok",
            "repo_root": "D:\\Projects\\prd-plugin",
            "summary": {
              "errors": 0,
              "warnings": 0,
              "infos": 0
            },
            "findings": []
          },
          "output_hash": "5a1c6e5246defb1b6b6b90ff734db95bece2886b408ab112ed9b8e67222d5568",
          "completed_at": "2026-07-15T22:22:00Z"
        },
        {
          "id": "goals",
          "action": "substrate.goals",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-15T22:22:00Z",
          "output": {
            "status": "disabled",
            "created": 0,
            "observed": 0,
            "results": []
          },
          "output_hash": "cdfd4de44a28140e686159f34f7b47975954c67e1d1efcef666e985acb136ed8",
          "completed_at": "2026-07-15T22:22:00Z"
        },
        {
          "id": "staleness",
          "action": "staleness.audit",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-15T22:22:00Z",
          "output": {
            "status": "ok",
            "repo_root": "D:\\Projects\\prd-plugin",
            "counts": {
              "stale": 0
            },
            "stale": []
          },
          "output_hash": "1e81cb0ffd0a4d04626920a203b38d2d23a264cd43e807a85d375d69cae8a658",
          "completed_at": "2026-07-15T22:22:00Z"
        },
        {
          "id": "reflections",
          "action": "reflection.list",
          "status": "completed",
          "resolved_input_hash": "0172e841ab4c13b3a4061f073f9d68a716ec87a8a5d52fde41823385e0582573",
          "started_at": "2026-07-15T22:22:00Z",
          "output": {
            "enabled": false,
            "on_stop": true,
            "max_questions_per_stop": 5,
            "categories": [
              {
                "id": "behaviour_quality",
                "name": "Behaviour quality",
                "enabled": true,
                "question_count": 3
              },
              {
                "id": "harness_friction",
                "name": "Harness friction",
                "enabled": true,
                "question_count": 2
              }
            ],
            "questions": [
              {
                "id": "RFQ-001",
                "text": "Based on the work you just carried out, would you classify your behaviour as good? Answer yes or no and cite observable evidence.",
                "enabled": true,
                "category_id": "behaviour_quality",
                "category_name": "Behaviour quality",
                "effective_enabled": false
              },
              {
                "id": "RFQ-002",
                "text": "If you answered no, what could you do differently to correct your behaviour?",
                "enabled": true,
                "category_id": "behaviour_quality",
                "category_name": "Behaviour quality",
                "effective_enabled": false
              },
              {
                "id": "RFQ-003",
                "text": "Would another attempt using the identified good behaviours materially improve the outcome? Answer yes or no and state the next corrective action if yes.",
                "enabled": true,
                "category_id": "behaviour_quality",
                "category_name": "Behaviour quality",
                "effective_enabled": false
              },
              {
                "id": "RFQ-004",
                "text": "What harness friction points made this work more difficult?",
                "enabled": true,
                "category_id": "harness_friction",
                "category_name": "Harness friction",
                "effective_enabled": false
              },
              {
                "id": "RFQ-005",
                "text": "What up to three changes would most improve friction in the harness?",
                "enabled": true,
                "category_id": "harness_friction",
                "category_name": "Harness friction",
                "effective_enabled": false
              }
            ]
          },
          "output_hash": "c1b6b635c0bab21120657277f14ef6f839909875f307a3745fa48aee2bd6e449",
          "completed_at": "2026-07-15T22:22:00Z"
        },
        {
          "id": "bundle",
          "action": "reporting.bundle",
          "status": "completed",
          "resolved_input_hash": "aed8ebb688dc3c085dd978d7c4120572173c3cb87e75919e4a937dcca6ef9457",
          "started_at": "2026-07-15T22:22:00Z",
          "output": {
            "contract_version": 1,
            "task": "session_summary",
            "repo": "prd-plugin",
            "policy": {
              "enabled": false,
              "executor": "ai-collab",
              "contract_version": 1,
              "profile": "fast-capable",
              "tasks": [
                "report_summary",
                "session_summary",
                "wiki_synthesis",
                "triage_draft"
              ],
              "fallback": "main",
              "require_source_refs": true,
              "max_input_tokens": 12000,
              "max_output_tokens": 1500,
              "timeout_seconds": 30
            },
            "facts": {
              "requests_by_status": {
                "deferred": 1,
                "implemented": 80,
                "proposed": 1,
                "rejected": 1
              },
              "active_requests": [
                {
                  "id": "REQ-072",
                  "status": "proposed",
                  "severity": "low",
                  "summary": "opencode run-until-done: session.idle is a non-blocking notification, so the stop guard can't force continuation on opencode (currently degrades to a printed reminder, 0.5.95). Investigate whether opencode exposes any vetoable/continuation mechanism (a different event, a permission hook, or a 'continue' API) to enforce run-until-done, or accept the reminder as the permanent ceiling. Low priority — user rarely uses opencode."
                }
              ],
              "active_tracking": [],
              "open_health": [],
              "evidence_count": 105,
              "decision_count": 10
            },
            "findings": [],
            "source_refs": [
              ".prd_plugin/config.json",
              ".prd_plugin/state/decisions.json",
              ".prd_plugin/state/evidence.json",
              ".prd_plugin/state/health.json",
              ".prd_plugin/state/requests.json",
              ".prd_plugin/state/tracking.json",
              "REQ-072"
            ],
            "constraints": {
              "max_input_tokens": 12000,
              "max_output_tokens": 1500,
              "timeout_seconds": 30,
              "require_source_refs": true,
              "no_project_state_writes": true,
              "no_secrets_or_local_session_content": true
            }
          },
          "output_hash": "f61aa7bfac7c2e96e3bf2d3386a95e45d2db52d040f05aff9ea963197eacc3f6",
          "completed_at": "2026-07-15T22:22:00Z"
        },
        {
          "id": "delegated",
          "action": "reporting.delegate",
          "status": "completed",
          "resolved_input_hash": "5bf4dfad88c9958da759cb1561ca5fdd8f3ac9050e938bfde85af5c8d804adc9",
          "started_at": "2026-07-15T22:22:00Z",
          "output": {
            "status": "fallback",
            "action": "main",
            "reason": "disabled"
          },
          "output_hash": "e6085059f197def80ae95add1f328418107bea5436c9bd002530043646a3a95c",
          "completed_at": "2026-07-15T22:22:00Z"
        }
      ],
      "completed_at": "2026-07-15T22:22:00Z"
    },
    {
      "id": "WFR-223",
      "schema_version": "1.0",
      "workflow_id": "session.start",
      "workflow_version": 1,
      "definition_hash": "d0f98da02571e6dd27fec4aed92d3c82af9db75f8b90b997bf665635c7b7f6ca",
      "plan_hash": "b5072615ca3b7e9a3bd85d50d1f069d99ef2a9816b32c03a370745ed7a205536",
      "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
      "inputs": {},
      "idempotency_key": "hook:SessionStart:019f67e7-ac6b-7cb2-8576-9b5ab3509c71",
      "status": "completed",
      "attempt": 1,
      "created_at": "2026-07-15T22:31:06Z",
      "updated_at": "2026-07-15T22:31:08Z",
      "receipts": [
        {
          "step_id": "config",
          "action": "config.audit",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "3782ec2317c0c8ee7598634310a2804d8aae4735f557498f9d3b8fae7c45e1e5",
          "completed_at": "2026-07-15T22:31:06Z"
        },
        {
          "step_id": "services",
          "action": "services.audit",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "13dcc58bd528f3efa3e6e0fa0853a6eedc376f1f3685fbd4869cbb2b60382ee3",
          "completed_at": "2026-07-15T22:31:06Z"
        },
        {
          "step_id": "state",
          "action": "state.consistency",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "5a1c6e5246defb1b6b6b90ff734db95bece2886b408ab112ed9b8e67222d5568",
          "completed_at": "2026-07-15T22:31:07Z"
        },
        {
          "step_id": "status",
          "action": "state.query",
          "input_hash": "a15231a2142a2a9a85355a8b9cbbccffe01a9c9c2c2fd8c2bc2987cdc481564a",
          "output_hash": "8ba9f7d3cc6705af37de9e3324d1258e21ccacb5ab0b2d7b389ca08885e11187",
          "completed_at": "2026-07-15T22:31:07Z"
        },
        {
          "step_id": "substrate",
          "action": "substrate.preflight",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "a6df426290b4549a59eecaa0519ead9bcc50b7fcb25bd2185ff6047960f19ccb",
          "completed_at": "2026-07-15T22:31:07Z"
        },
        {
          "step_id": "notices",
          "action": "substrate.notices",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "38b904a1cf83df048360fb2480571b749fd98d57e11f1afdffb5a74a78166fea",
          "completed_at": "2026-07-15T22:31:08Z"
        },
        {
          "step_id": "goals",
          "action": "substrate.goals",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "cdfd4de44a28140e686159f34f7b47975954c67e1d1efcef666e985acb136ed8",
          "completed_at": "2026-07-15T22:31:08Z"
        }
      ],
      "steps": [
        {
          "id": "config",
          "action": "config.audit",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-15T22:31:06Z",
          "output": {
            "status": "ok",
            "summary": {
              "settings": 195,
              "mutable": 186,
              "read_only_or_managed": 9,
              "unclassified": 0,
              "unknown": 0,
              "invalid": 0,
              "missing_using_defaults": 0
            },
            "unclassified_keys": [],
            "unknown_keys": [],
            "invalid_values": [],
            "missing_using_defaults": []
          },
          "output_hash": "3782ec2317c0c8ee7598634310a2804d8aae4735f557498f9d3b8fae7c45e1e5",
          "completed_at": "2026-07-15T22:31:06Z"
        },
        {
          "id": "services",
          "action": "services.audit",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-15T22:31:06Z",
          "output": {
            "status": "ok",
            "summary": {
              "critical": 0,
              "high": 0,
              "medium": 0,
              "low": 0
            },
            "findings": []
          },
          "output_hash": "13dcc58bd528f3efa3e6e0fa0853a6eedc376f1f3685fbd4869cbb2b60382ee3",
          "completed_at": "2026-07-15T22:31:06Z"
        },
        {
          "id": "state",
          "action": "state.consistency",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-15T22:31:06Z",
          "output": {
            "status": "ok",
            "repo_root": "D:\\Projects\\prd-plugin",
            "summary": {
              "errors": 0,
              "warnings": 0,
              "infos": 0
            },
            "findings": []
          },
          "output_hash": "5a1c6e5246defb1b6b6b90ff734db95bece2886b408ab112ed9b8e67222d5568",
          "completed_at": "2026-07-15T22:31:07Z"
        },
        {
          "id": "status",
          "action": "state.query",
          "status": "completed",
          "resolved_input_hash": "a15231a2142a2a9a85355a8b9cbbccffe01a9c9c2c2fd8c2bc2987cdc481564a",
          "started_at": "2026-07-15T22:31:07Z",
          "output": {
            "repo_root": "D:\\Projects\\prd-plugin",
            "autonomy_level": "autonomous",
            "requests_by_status": {
              "deferred": 1,
              "implemented": 80,
              "proposed": 1,
              "rejected": 1
            },
            "active_tracking": [],
            "tracking_branches": [],
            "tracking_branch_counts": {},
            "tracking_branch_errors": [],
            "open_health": [],
            "stale_count": 0,
            "skill_usage": {
              "project-decision-policy": 1,
              "project-request-intake": 1,
              "project-test-driven-implementation": 1,
              "project-verification-before-completion": 1,
              "project-llm-wiki": 1
            },
            "wiki_backfill_pending": false,
            "version_update": null
          },
          "output_hash": "8ba9f7d3cc6705af37de9e3324d1258e21ccacb5ab0b2d7b389ca08885e11187",
          "completed_at": "2026-07-15T22:31:07Z"
        },
        {
          "id": "substrate",
          "action": "substrate.preflight",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-15T22:31:07Z",
          "output": {
            "status": "disabled",
            "services": {
              "status": "ok",
              "summary": {
                "critical": 0,
                "high": 0,
                "medium": 0,
                "low": 0
              },
              "findings": []
            },
            "policy": {
              "configured": {
                "enabled": false,
                "mode": "off",
                "capabilities": [
                  "records",
                  "graph",
                  "events"
                ],
                "contract_version": 2,
                "require_source_refs": true,
                "endpoint": "http://127.0.0.1:47124",
                "manual_url": "http://127.0.0.1:47124/utcp.json",
                "knowledge_browse_url": "http://127.0.0.1:5276",
                "auth_env": "AI_COLLAB_API_KEY",
                "timeout_seconds": 5,
                "max_result_bytes": 1048576,
                "cache_ttl_seconds": 60,
                "fallback": "local",
                "automation": {
                  "discovery_on_session_start": true,
                  "knowledge_recall": true,
                  "memory_recall": true,
                  "context_enrichment": true,
                  "notices_on_session_start": false,
                  "goals_sync": false,
                  "telemetry_on_maintenance": false,
                  "reporting_dispatch": true,
                  "judgment_dispatch": true,
                  "verification_execution": true
                }
              },
              "active": false,
              "effective_mode": "off",
              "effective_capabilities": []
            }
          },
          "output_hash": "a6df426290b4549a59eecaa0519ead9bcc50b7fcb25bd2185ff6047960f19ccb",
          "completed_at": "2026-07-15T22:31:07Z"
        },
        {
          "id": "notices",
          "action": "substrate.notices",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-15T22:31:07Z",
          "output": {
            "status": "disabled"
          },
          "output_hash": "38b904a1cf83df048360fb2480571b749fd98d57e11f1afdffb5a74a78166fea",
          "completed_at": "2026-07-15T22:31:08Z"
        },
        {
          "id": "goals",
          "action": "substrate.goals",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-15T22:31:08Z",
          "output": {
            "status": "disabled",
            "created": 0,
            "observed": 0,
            "results": []
          },
          "output_hash": "cdfd4de44a28140e686159f34f7b47975954c67e1d1efcef666e985acb136ed8",
          "completed_at": "2026-07-15T22:31:08Z"
        }
      ],
      "completed_at": "2026-07-15T22:31:08Z"
    },
    {
      "id": "WFR-224",
      "schema_version": "1.0",
      "workflow_id": "planning.requirements",
      "workflow_version": 1,
      "definition_hash": "daa4833c9f8905528cd972d56f2868eb1e535dcbb47db1a5a09f7114a6e5c83e",
      "plan_hash": "392501e5a2ed8f464ff3920746471a817161deaa5c83b79bf39597e411024703",
      "input_hash": "eaf272e7e1131888eb48630a17eccba2fa545f9934590b7e1e70c8f781c73f57",
      "inputs": {
        "instructions": "Define the approved PRD Plugin repository module contract: one portable manifest, JSON Schema plus Markdown plus conformance fixtures; PRD Plugin owns desired declarations and validation; AI-Collab owns admission and generation-guarded runtime bindings; UTCP is canonical and MCP is a compatibility projection; secret values are forbidden; repo_expert is required only for agent-routable modules.",
        "source_refs": [
          "MSG-mrmmvp3c-xcrxm6",
          "SP-mrmmvg11-vkf9fe",
          "docs/brainstorm/BR-2026-07-15-workspace-development-control-plane.json",
          "wiki/integrations/repository-service-manifest.md",
          "templates/services.json",
          "git:ff1fb2ff7ef8e48ef48d7aec9b090e8ebddf6944"
        ]
      },
      "idempotency_key": "module-contract-prd-plugin-v1-2026-07-15",
      "status": "completed",
      "attempt": 1,
      "created_at": "2026-07-15T22:33:54Z",
      "updated_at": "2026-07-15T22:34:45Z",
      "receipts": [
        {
          "step_id": "state",
          "action": "state.consistency",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "5a1c6e5246defb1b6b6b90ff734db95bece2886b408ab112ed9b8e67222d5568",
          "completed_at": "2026-07-15T22:33:55Z"
        },
        {
          "step_id": "context",
          "action": "substrate.enrich",
          "input_hash": "97e14feed2b8d011750cc45f6a128a794efc082b589d9e95107d7c5c37cff175",
          "output_hash": "2d07e6f1e76493944cfefe2b023f7a88eaeaffdc3913331e8d22c1176d4760a9",
          "completed_at": "2026-07-15T22:33:55Z"
        },
        {
          "step_id": "requirements",
          "action": "judgment.request",
          "input_hash": "ab9ad4b0feef0223b13df4621ef9058c9000e6880efe94c74d593c471299c9f3",
          "output_hash": "17625e53ea61c39dbf619a4110aedd44835b7a41c5aef7666164c284ca618491",
          "request_hash": "7eb9e265983938b2b60aa185c744ceedc5ba91a23fe06bacf37f7a1093829424",
          "completed_at": "2026-07-15T22:34:45Z"
        }
      ],
      "steps": [
        {
          "id": "state",
          "action": "state.consistency",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-15T22:33:54Z",
          "output": {
            "status": "ok",
            "repo_root": "D:\\Projects\\prd-plugin",
            "summary": {
              "errors": 0,
              "warnings": 0,
              "infos": 0
            },
            "findings": []
          },
          "output_hash": "5a1c6e5246defb1b6b6b90ff734db95bece2886b408ab112ed9b8e67222d5568",
          "completed_at": "2026-07-15T22:33:55Z"
        },
        {
          "id": "context",
          "action": "substrate.enrich",
          "status": "completed",
          "resolved_input_hash": "97e14feed2b8d011750cc45f6a128a794efc082b589d9e95107d7c5c37cff175",
          "started_at": "2026-07-15T22:33:55Z",
          "output": {
            "status": "disabled",
            "results": [],
            "local_source_refs": [
              "MSG-mrmmvp3c-xcrxm6",
              "SP-mrmmvg11-vkf9fe",
              "docs/brainstorm/BR-2026-07-15-workspace-development-control-plane.json",
              "wiki/integrations/repository-service-manifest.md",
              "templates/services.json",
              "git:ff1fb2ff7ef8e48ef48d7aec9b090e8ebddf6944"
            ]
          },
          "output_hash": "2d07e6f1e76493944cfefe2b023f7a88eaeaffdc3913331e8d22c1176d4760a9",
          "completed_at": "2026-07-15T22:33:55Z"
        },
        {
          "id": "requirements",
          "action": "judgment.request",
          "status": "completed",
          "resolved_input_hash": "ab9ad4b0feef0223b13df4621ef9058c9000e6880efe94c74d593c471299c9f3",
          "started_at": "2026-07-15T22:33:55Z",
          "judgment_request": {
            "contract_version": 1,
            "run_id": "WFR-224",
            "step_id": "requirements",
            "task": "requirements",
            "instructions": "Define the approved PRD Plugin repository module contract: one portable manifest, JSON Schema plus Markdown plus conformance fixtures; PRD Plugin owns desired declarations and validation; AI-Collab owns admission and generation-guarded runtime bindings; UTCP is canonical and MCP is a compatibility projection; secret values are forbidden; repo_expert is required only for agent-routable modules.",
            "source_refs": [
              "MSG-mrmmvp3c-xcrxm6",
              "SP-mrmmvg11-vkf9fe",
              "docs/brainstorm/BR-2026-07-15-workspace-development-control-plane.json",
              "wiki/integrations/repository-service-manifest.md",
              "templates/services.json",
              "git:ff1fb2ff7ef8e48ef48d7aec9b090e8ebddf6944"
            ],
            "source_hashes": {
              "docs/brainstorm/BR-2026-07-15-workspace-development-control-plane.json": "d7b9659b80e85c91cdcfef947d2cdf00bbb893b1fb802353826f230bf950a99c",
              "wiki/integrations/repository-service-manifest.md": "135196c94922709ad28da0dbd9324ce9c8f726d534fd6f9e31b9ba989ecb1324",
              "templates/services.json": "dd7c6ae898a0d26f37a5921df18e5ea728624c916ebc738ecee74fa401bbf503"
            },
            "result_schema": {
              "type": "object",
              "required": [
                "summary",
                "requirements",
                "source_refs"
              ],
              "properties": {
                "summary": {
                  "type": "string"
                },
                "requirements": {
                  "type": "array",
                  "items": {
                    "type": "object"
                  }
                },
                "source_refs": {
                  "type": "array",
                  "items": {
                    "type": "string"
                  }
                }
              }
            },
            "executor": "ai-collab",
            "profile": "fast-capable",
            "constraints": {
              "no_project_state_writes": true,
              "require_source_refs": true
            },
            "request_hash": "7eb9e265983938b2b60aa185c744ceedc5ba91a23fe06bacf37f7a1093829424"
          },
          "output": {
            "summary": "A source-pinned, versioned repository module manifest compiled and validated by PRD Plugin, submitted to AI-Collab for admission, and paired with cross-domain fixtures. The contract declares portable desired state only; live bindings, effective grants, runtime instances, health, and secret values remain outside it.",
            "requirements": [
              {
                "id": "PRD-REQ-010",
                "summary": "Define one canonical module.manifest with referenced sections for identity, compatibility, consumes, needs, offers, governance, migration, and provenance."
              },
              {
                "id": "PRD-REQ-011",
                "summary": "Publish the normative package as JSON Schema, a human-readable Markdown contract, and valid/invalid conformance fixtures."
              },
              {
                "id": "PRD-REQ-012",
                "summary": "Preserve the ownership seam: PRD Plugin owns portable desired declarations, compilation, validation, migrations, and conformance evidence; AI-Collab owns admission and effective runtime state."
              },
              {
                "id": "PRD-REQ-013",
                "summary": "Use a complete UTCP-first tool catalog as the source of tool metadata and treat MCP as a generated compatibility projection."
              },
              {
                "id": "PRD-REQ-014",
                "summary": "Forbid resolved secret values and provider credentials; allow only typed opaque secret requirements and references."
              },
              {
                "id": "PRD-REQ-015",
                "summary": "Require a repo_expert profile only when module_mode is agent_routable; allow passive modules without an expert."
              },
              {
                "id": "PRD-REQ-016",
                "summary": "Keep roles, agent profiles, team templates, and provider capability policy portable while excluding live agent instances, sessions, quotas, health, and concrete provider accounts."
              },
              {
                "id": "PRD-REQ-017",
                "summary": "Declare offers for tools, knowledge, configuration, skills, workflows, data contracts, app contributions, runners, observability, and agents without granting runtime authority."
              },
              {
                "id": "PRD-REQ-018",
                "summary": "Declare needs and consumes with required/optional behavior, compatibility ranges, permissions, approval requirements, and explicit block/degrade fallback."
              },
              {
                "id": "PRD-REQ-019",
                "summary": "Carry source authority, artifact digests, adapter kind, conformance level, missing fields, legacy entry points, replacements, and rollback metadata for additive migration."
              },
              {
                "id": "PRD-REQ-020",
                "summary": "Define cross-domain invariants for stable logical binding identity, monotonic desired generation, digest/policy matching, and stale observed state never authorizing, while leaving the binding schema to AI-Collab."
              },
              {
                "id": "PRD-REQ-021",
                "summary": "Default-deny unknown or incompatible capability declarations and preserve workspace policy and the consent floor as higher authority than repository requests."
              }
            ],
            "source_refs": [
              "MSG-mrmmvp3c-xcrxm6",
              "SP-mrmmvg11-vkf9fe",
              "docs/brainstorm/BR-2026-07-15-workspace-development-control-plane.json",
              "wiki/integrations/repository-service-manifest.md",
              "templates/services.json",
              "git:ff1fb2ff7ef8e48ef48d7aec9b090e8ebddf6944"
            ]
          },
          "output_hash": "17625e53ea61c39dbf619a4110aedd44835b7a41c5aef7666164c284ca618491",
          "completed_at": "2026-07-15T22:34:45Z",
          "judgment_result": {
            "request_hash": "7eb9e265983938b2b60aa185c744ceedc5ba91a23fe06bacf37f7a1093829424",
            "executor": "ai-collab",
            "profile": "fast-capable"
          }
        }
      ],
      "completed_at": "2026-07-15T22:34:45Z"
    },
    {
      "id": "WFR-225",
      "schema_version": "1.0",
      "workflow_id": "engineering.code-review",
      "workflow_version": 1,
      "definition_hash": "ad3df68a0ff3c3ede35fe5266dcfbffbe7b1ba3e8ada5fc4b9012db9f451212f",
      "plan_hash": "5111f9bf0e37057feede27f2fb7e01e833487320ffe394e0c2aaf7ecf79eaf0b",
      "input_hash": "ebe80f2e37a128ff3e4c46b3213f02a7fe9eb43b90f2dbe8f6aea1b6090d76ed",
      "inputs": {
        "base_ref": "HEAD",
        "source_refs": [
          "PRD-010",
          "ARCH-010",
          "IMP-011",
          "WFR-224",
          "docs/specs/repository-module-contract-v1/README.md",
          "docs/specs/repository-module-contract-v1/module-manifest.schema.json",
          "tests/test_repository_module_contract.py"
        ]
      },
      "idempotency_key": "module-contract-prd-plugin-review-v1-2026-07-15",
      "status": "completed",
      "attempt": 1,
      "created_at": "2026-07-15T22:46:27Z",
      "updated_at": "2026-07-15T22:48:35Z",
      "receipts": [
        {
          "step_id": "diff",
          "action": "git.diff_check",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "11c11db30f4b3f6c758722ba3e27eea08145b7d212f6a157451e364b48475280",
          "completed_at": "2026-07-15T22:46:27Z"
        },
        {
          "step_id": "verification",
          "action": "verification.plan",
          "input_hash": "b12ccf62e6ab650fd8e92c6312c484bea2c968535e9092c56c94ac384bdd78bd",
          "output_hash": "9309f6575ddbbd32b56f9da18d25c793e7987fea6ab9bc86fd942e3a6731f977",
          "completed_at": "2026-07-15T22:46:28Z"
        },
        {
          "step_id": "context",
          "action": "substrate.enrich",
          "input_hash": "9e47106d49a56d2e1162e33ca9956a984c1c984084403b521e3f8151b6fa2e92",
          "output_hash": "9f2b06874414c449090733f7aa3ddb8ee31f5710d3a935b73f06b63038dfad03",
          "completed_at": "2026-07-15T22:46:28Z"
        },
        {
          "step_id": "review",
          "action": "judgment.request",
          "input_hash": "461887a95cb300db9c761190191990d8d6e69918dfe112a785336b5967bbe9ec",
          "output_hash": "84a3f349d641ce2958294c3489279ec0cad6af73ed3f135666101080e112aaac",
          "request_hash": "c126ae899110178335142c88d909a59444198d70d99607d385fb5337e8c4b6eb",
          "completed_at": "2026-07-15T22:48:35Z"
        }
      ],
      "steps": [
        {
          "id": "diff",
          "action": "git.diff_check",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-15T22:46:27Z",
          "output": {
            "passed": true
          },
          "output_hash": "11c11db30f4b3f6c758722ba3e27eea08145b7d212f6a157451e364b48475280",
          "completed_at": "2026-07-15T22:46:27Z"
        },
        {
          "id": "verification",
          "action": "verification.plan",
          "status": "completed",
          "resolved_input_hash": "b12ccf62e6ab650fd8e92c6312c484bea2c968535e9092c56c94ac384bdd78bd",
          "started_at": "2026-07-15T22:46:27Z",
          "output": {
            "schema_version": "1.0",
            "contract_version": 1,
            "executor": "ai-collab",
            "changed_files": [
              ".prd_plugin/config.json",
              ".prd_plugin/ids/registry.json",
              ".prd_plugin/state/artifacts/architecture/ARCH-010.json",
              ".prd_plugin/state/artifacts/implementation_plan/IMP-011.json",
              ".prd_plugin/state/artifacts/prd/PRD-010.json",
              ".prd_plugin/state/workflow-runs.json",
              "docs/specs/repository-module-contract-v1/fixtures/agent-routable-missing-expert.invalid.json",
              "docs/specs/repository-module-contract-v1/fixtures/agent-routable.valid.json",
              "docs/specs/repository-module-contract-v1/fixtures/mcp-primary-tool.invalid.json",
              "docs/specs/repository-module-contract-v1/fixtures/passive.valid.json",
              "docs/specs/repository-module-contract-v1/fixtures/resolved-secret.invalid.json",
              "docs/specs/repository-module-contract-v1/module-manifest.schema.json",
              "docs/specs/repository-module-contract-v1/README.md",
              "tests/test_repository_module_contract.py"
            ],
            "change_fingerprint": "f708b9724b5b7dab4dba04d02da39b52d52c870f0cff03dff2af1daaac5b5811",
            "policy": {
              "enabled": false,
              "executor": "ai-collab",
              "neighbor_limit": 12,
              "max_changed_files": 25,
              "fallback": "full",
              "full_suite_triggers": [
                "release",
                "core_change",
                "impact_unavailable",
                "impact_degraded",
                "unmapped_change"
              ],
              "core_paths": [
                "package.json",
                "package-lock.json",
                "pyproject.toml",
                "Cargo.toml",
                "go.mod",
                ".github/workflows/**"
              ],
              "test_patterns": [
                "tests/**",
                "test/**",
                "spec/**",
                "**/*.test.*",
                "**/*.spec.*",
                "test_*.py",
                "*_test.py",
                "*_test.go",
                "**/test_*.py",
                "**/*_test.py",
                "**/*_test.go"
              ],
              "max_selected_tests": 200,
              "execution_timeout_seconds": 600,
              "focused_commands": [],
              "full_commands": [],
              "allowed_executables": [
                "python",
                "python3",
                "py",
                "pytest",
                "npm",
                "npx",
                "node",
                "go",
                "cargo",
                "dotnet",
                "mvn",
                "gradle",
                "gradlew",
                "make"
              ]
            },
            "selection_rules": {
              "precedence": [
                "exact_changed",
                "explicit_test_ownership",
                "structural_dependencies",
                "predictive_impact"
              ],
              "require_all_changed_files_mapped": true,
              "widen_before_full": true,
              "predictive_signal_is_sufficient_alone": false
            },
            "fallback": {
              "strategy": "full",
              "conditions": [
                "release",
                "core_change",
                "impact_unavailable",
                "impact_degraded",
                "unmapped_change"
              ]
            },
            "strategy": "full",
            "reason": "test_scope_disabled",
            "runtime_requests": {},
            "plan_hash": "47f27c1ace57bd13ca79b0084fc0ef505943adf26ddf52952537454f0d88bc9c"
          },
          "output_hash": "9309f6575ddbbd32b56f9da18d25c793e7987fea6ab9bc86fd942e3a6731f977",
          "completed_at": "2026-07-15T22:46:28Z"
        },
        {
          "id": "context",
          "action": "substrate.enrich",
          "status": "completed",
          "resolved_input_hash": "9e47106d49a56d2e1162e33ca9956a984c1c984084403b521e3f8151b6fa2e92",
          "started_at": "2026-07-15T22:46:28Z",
          "output": {
            "status": "disabled",
            "results": [],
            "local_source_refs": [
              "PRD-010",
              "ARCH-010",
              "IMP-011",
              "WFR-224",
              "docs/specs/repository-module-contract-v1/README.md",
              "docs/specs/repository-module-contract-v1/module-manifest.schema.json",
              "tests/test_repository_module_contract.py"
            ]
          },
          "output_hash": "9f2b06874414c449090733f7aa3ddb8ee31f5710d3a935b73f06b63038dfad03",
          "completed_at": "2026-07-15T22:46:28Z"
        },
        {
          "id": "review",
          "action": "judgment.request",
          "status": "completed",
          "resolved_input_hash": "461887a95cb300db9c761190191990d8d6e69918dfe112a785336b5967bbe9ec",
          "started_at": "2026-07-15T22:46:28Z",
          "judgment_request": {
            "contract_version": 1,
            "run_id": "WFR-225",
            "step_id": "review",
            "task": "code_review",
            "instructions": "Find material correctness, robustness, security, compatibility, or test gaps; do not restate mechanical facts.",
            "source_refs": [
              "PRD-010",
              "ARCH-010",
              "IMP-011",
              "WFR-224",
              "docs/specs/repository-module-contract-v1/README.md",
              "docs/specs/repository-module-contract-v1/module-manifest.schema.json",
              "tests/test_repository_module_contract.py"
            ],
            "source_hashes": {
              "docs/specs/repository-module-contract-v1/README.md": "6b2fa26148cd79add0893a308107acf77d894a9c44d64b12333ebd258d429497",
              "docs/specs/repository-module-contract-v1/module-manifest.schema.json": "608d08103800133ab5d6e99dae91d2ded65d137aef66e89529826c15b7795156",
              "tests/test_repository_module_contract.py": "88818fff41acdefa89b7db34b9a36dfdf7895a2ad21c1bbf1218a2b47a3307c9"
            },
            "result_schema": {
              "type": "object",
              "required": [
                "summary",
                "findings",
                "source_refs"
              ],
              "properties": {
                "summary": {
                  "type": "string"
                },
                "findings": {
                  "type": "array",
                  "items": {
                    "type": "object"
                  }
                },
                "source_refs": {
                  "type": "array",
                  "items": {
                    "type": "string"
                  }
                }
              }
            },
            "executor": "ai-collab",
            "profile": "fast-capable",
            "constraints": {
              "no_project_state_writes": true,
              "require_source_refs": true
            },
            "request_hash": "c126ae899110178335142c88d909a59444198d70d99607d385fb5337e8c4b6eb"
          },
          "output": {
            "summary": "The ownership, security, migration, and generation invariants are coherent, but the first draft had three completion/verification hygiene gaps that must be fixed before commit.",
            "findings": [
              {
                "severity": "important",
                "area": "testing",
                "summary": "The conformance unit test checked a parallel semantic helper but did not execute the Draft 2020-12 schema, so schema/fixture drift could pass CI.",
                "action": "Validate every positive and negative fixture with jsonschema and install a bounded jsonschema version in the unit-test job."
              },
              {
                "severity": "important",
                "area": "completion",
                "summary": "IMP-TASK-089 was marked complete before review, repository verification, evidence, and commit existed.",
                "action": "Keep the task in progress until fresh verification and evidence support completion."
              },
              {
                "severity": "important",
                "area": "traceability",
                "summary": "Permanent artifacts cited WFR-224 even though workflow-runs.json contains a large pre-existing unstaged backlog that cannot be safely included in this isolated commit.",
                "action": "Use the approved room/scratchpad and pinned git/source files as permanent authority; keep WFR-224 as local execution evidence only."
              }
            ],
            "source_refs": [
              "PRD-010",
              "ARCH-010",
              "IMP-011",
              "WFR-224",
              "docs/specs/repository-module-contract-v1/README.md",
              "docs/specs/repository-module-contract-v1/module-manifest.schema.json",
              "tests/test_repository_module_contract.py"
            ]
          },
          "output_hash": "84a3f349d641ce2958294c3489279ec0cad6af73ed3f135666101080e112aaac",
          "completed_at": "2026-07-15T22:48:35Z",
          "judgment_result": {
            "request_hash": "c126ae899110178335142c88d909a59444198d70d99607d385fb5337e8c4b6eb",
            "executor": "ai-collab",
            "profile": "fast-capable"
          }
        }
      ],
      "completed_at": "2026-07-15T22:48:35Z"
    },
    {
      "id": "WFR-226",
      "schema_version": "1.0",
      "workflow_id": "engineering.code-review",
      "workflow_version": 1,
      "definition_hash": "ad3df68a0ff3c3ede35fe5266dcfbffbe7b1ba3e8ada5fc4b9012db9f451212f",
      "plan_hash": "446063d79b384e20bb889c5fea1efeefd6ebd0af394b03ddb49f894a35d21751",
      "input_hash": "f849dabd90d719f8c158f23df4e2c92d662f8dde580830beae29a568e4f2cda0",
      "inputs": {
        "base_ref": "HEAD",
        "source_refs": [
          "PRD-010",
          "ARCH-010",
          "IMP-011",
          "docs/specs/repository-module-contract-v1/README.md",
          "docs/specs/repository-module-contract-v1/module-manifest.schema.json",
          "tests/test_repository_module_contract.py",
          ".github/workflows/ci.yml"
        ]
      },
      "idempotency_key": "module-contract-prd-plugin-review-v2-2026-07-15",
      "status": "completed",
      "attempt": 1,
      "created_at": "2026-07-15T22:50:20Z",
      "updated_at": "2026-07-15T22:50:36Z",
      "receipts": [
        {
          "step_id": "diff",
          "action": "git.diff_check",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "11c11db30f4b3f6c758722ba3e27eea08145b7d212f6a157451e364b48475280",
          "completed_at": "2026-07-15T22:50:20Z"
        },
        {
          "step_id": "verification",
          "action": "verification.plan",
          "input_hash": "b12ccf62e6ab650fd8e92c6312c484bea2c968535e9092c56c94ac384bdd78bd",
          "output_hash": "e3b33cd7f57b0a97d82002de9ad5697539e8ea093cf03288414ad18bb3d97feb",
          "completed_at": "2026-07-15T22:50:21Z"
        },
        {
          "step_id": "context",
          "action": "substrate.enrich",
          "input_hash": "b21ff00052962dfc04594cb81068a8949170379fa0456c93a96ca41ed8944b84",
          "output_hash": "a7f7db045c5de5b3120f3cbcbb810da5e635500694af5dd850535ce68f1b6e2f",
          "completed_at": "2026-07-15T22:50:21Z"
        },
        {
          "step_id": "review",
          "action": "judgment.request",
          "input_hash": "005379d7655b29905ed29c3cb22c695d2532584eb806215e0f2d204233d3d29e",
          "output_hash": "3a72e4b2b0dc47ad805a946dc9862dbe27964069cacace8072e16fc8fe735766",
          "request_hash": "2958d73de3a0ddb22494a5fd6cf795ca33dbd52838631b53459ba31848e31cb7",
          "completed_at": "2026-07-15T22:50:36Z"
        }
      ],
      "steps": [
        {
          "id": "diff",
          "action": "git.diff_check",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-15T22:50:20Z",
          "output": {
            "passed": true
          },
          "output_hash": "11c11db30f4b3f6c758722ba3e27eea08145b7d212f6a157451e364b48475280",
          "completed_at": "2026-07-15T22:50:20Z"
        },
        {
          "id": "verification",
          "action": "verification.plan",
          "status": "completed",
          "resolved_input_hash": "b12ccf62e6ab650fd8e92c6312c484bea2c968535e9092c56c94ac384bdd78bd",
          "started_at": "2026-07-15T22:50:21Z",
          "output": {
            "schema_version": "1.0",
            "contract_version": 1,
            "executor": "ai-collab",
            "changed_files": [
              ".github/workflows/ci.yml",
              ".prd_plugin/config.json",
              ".prd_plugin/ids/registry.json",
              ".prd_plugin/state/artifacts/architecture/ARCH-010.json",
              ".prd_plugin/state/artifacts/implementation_plan/IMP-011.json",
              ".prd_plugin/state/artifacts/prd/PRD-010.json",
              ".prd_plugin/state/workflow-runs.json",
              "docs/specs/repository-module-contract-v1/fixtures/agent-routable-missing-expert.invalid.json",
              "docs/specs/repository-module-contract-v1/fixtures/agent-routable.valid.json",
              "docs/specs/repository-module-contract-v1/fixtures/mcp-primary-tool.invalid.json",
              "docs/specs/repository-module-contract-v1/fixtures/passive.valid.json",
              "docs/specs/repository-module-contract-v1/fixtures/resolved-secret.invalid.json",
              "docs/specs/repository-module-contract-v1/module-manifest.schema.json",
              "docs/specs/repository-module-contract-v1/README.md",
              "tests/test_repository_module_contract.py"
            ],
            "change_fingerprint": "95e426dd45377943e2d5920b00b74b85a3f8d973bb32a2f2010434ac8a79c500",
            "policy": {
              "enabled": false,
              "executor": "ai-collab",
              "neighbor_limit": 12,
              "max_changed_files": 25,
              "fallback": "full",
              "full_suite_triggers": [
                "release",
                "core_change",
                "impact_unavailable",
                "impact_degraded",
                "unmapped_change"
              ],
              "core_paths": [
                "package.json",
                "package-lock.json",
                "pyproject.toml",
                "Cargo.toml",
                "go.mod",
                ".github/workflows/**"
              ],
              "test_patterns": [
                "tests/**",
                "test/**",
                "spec/**",
                "**/*.test.*",
                "**/*.spec.*",
                "test_*.py",
                "*_test.py",
                "*_test.go",
                "**/test_*.py",
                "**/*_test.py",
                "**/*_test.go"
              ],
              "max_selected_tests": 200,
              "execution_timeout_seconds": 600,
              "focused_commands": [],
              "full_commands": [],
              "allowed_executables": [
                "python",
                "python3",
                "py",
                "pytest",
                "npm",
                "npx",
                "node",
                "go",
                "cargo",
                "dotnet",
                "mvn",
                "gradle",
                "gradlew",
                "make"
              ]
            },
            "selection_rules": {
              "precedence": [
                "exact_changed",
                "explicit_test_ownership",
                "structural_dependencies",
                "predictive_impact"
              ],
              "require_all_changed_files_mapped": true,
              "widen_before_full": true,
              "predictive_signal_is_sufficient_alone": false
            },
            "fallback": {
              "strategy": "full",
              "conditions": [
                "release",
                "core_change",
                "impact_unavailable",
                "impact_degraded",
                "unmapped_change"
              ]
            },
            "strategy": "full",
            "reason": "test_scope_disabled",
            "runtime_requests": {},
            "plan_hash": "30e6d2ff1e4c5193ba40628aebd25113cad8809d1a7065278ad69891c93996d6"
          },
          "output_hash": "e3b33cd7f57b0a97d82002de9ad5697539e8ea093cf03288414ad18bb3d97feb",
          "completed_at": "2026-07-15T22:50:21Z"
        },
        {
          "id": "context",
          "action": "substrate.enrich",
          "status": "completed",
          "resolved_input_hash": "b21ff00052962dfc04594cb81068a8949170379fa0456c93a96ca41ed8944b84",
          "started_at": "2026-07-15T22:50:21Z",
          "output": {
            "status": "disabled",
            "results": [],
            "local_source_refs": [
              "PRD-010",
              "ARCH-010",
              "IMP-011",
              "docs/specs/repository-module-contract-v1/README.md",
              "docs/specs/repository-module-contract-v1/module-manifest.schema.json",
              "tests/test_repository_module_contract.py",
              ".github/workflows/ci.yml"
            ]
          },
          "output_hash": "a7f7db045c5de5b3120f3cbcbb810da5e635500694af5dd850535ce68f1b6e2f",
          "completed_at": "2026-07-15T22:50:21Z"
        },
        {
          "id": "review",
          "action": "judgment.request",
          "status": "completed",
          "resolved_input_hash": "005379d7655b29905ed29c3cb22c695d2532584eb806215e0f2d204233d3d29e",
          "started_at": "2026-07-15T22:50:21Z",
          "judgment_request": {
            "contract_version": 1,
            "run_id": "WFR-226",
            "step_id": "review",
            "task": "code_review",
            "instructions": "Find material correctness, robustness, security, compatibility, or test gaps; do not restate mechanical facts.",
            "source_refs": [
              "PRD-010",
              "ARCH-010",
              "IMP-011",
              "docs/specs/repository-module-contract-v1/README.md",
              "docs/specs/repository-module-contract-v1/module-manifest.schema.json",
              "tests/test_repository_module_contract.py",
              ".github/workflows/ci.yml"
            ],
            "source_hashes": {
              "docs/specs/repository-module-contract-v1/README.md": "ac7043c2136abb8b94df84a2103db3e55fcad499b7d22caff353c37d05580672",
              "docs/specs/repository-module-contract-v1/module-manifest.schema.json": "608d08103800133ab5d6e99dae91d2ded65d137aef66e89529826c15b7795156",
              "tests/test_repository_module_contract.py": "53178a5587181ad990043ae69865c5a73eab61812883aec7258b69f07c032f94",
              ".github/workflows/ci.yml": "4092f9e124a4cfe91073e721c4f22da20f6332c4c81bee2d0f2e427b1825b23c"
            },
            "result_schema": {
              "type": "object",
              "required": [
                "summary",
                "findings",
                "source_refs"
              ],
              "properties": {
                "summary": {
                  "type": "string"
                },
                "findings": {
                  "type": "array",
                  "items": {
                    "type": "object"
                  }
                },
                "source_refs": {
                  "type": "array",
                  "items": {
                    "type": "string"
                  }
                }
              }
            },
            "executor": "ai-collab",
            "profile": "fast-capable",
            "constraints": {
              "no_project_state_writes": true,
              "require_source_refs": true
            },
            "request_hash": "2958d73de3a0ddb22494a5fd6cf795ca33dbd52838631b53459ba31848e31cb7"
          },
          "output": {
            "summary": "The revised package is internally coherent and ready for verification: the schema is executed in tests, CI installs a bounded validator dependency, the first implementation task remains in progress, and permanent artifacts no longer depend on unstaged workflow-run history.",
            "findings": [],
            "source_refs": [
              "PRD-010",
              "ARCH-010",
              "IMP-011",
              "docs/specs/repository-module-contract-v1/README.md",
              "docs/specs/repository-module-contract-v1/module-manifest.schema.json",
              "tests/test_repository_module_contract.py",
              ".github/workflows/ci.yml"
            ]
          },
          "output_hash": "3a72e4b2b0dc47ad805a946dc9862dbe27964069cacace8072e16fc8fe735766",
          "completed_at": "2026-07-15T22:50:36Z",
          "judgment_result": {
            "request_hash": "2958d73de3a0ddb22494a5fd6cf795ca33dbd52838631b53459ba31848e31cb7",
            "executor": "ai-collab",
            "profile": "fast-capable"
          }
        }
      ],
      "completed_at": "2026-07-15T22:50:36Z"
    },
    {
      "id": "WFR-227",
      "schema_version": "1.0",
      "workflow_id": "session.start",
      "workflow_version": 1,
      "definition_hash": "d0f98da02571e6dd27fec4aed92d3c82af9db75f8b90b997bf665635c7b7f6ca",
      "plan_hash": "b5072615ca3b7e9a3bd85d50d1f069d99ef2a9816b32c03a370745ed7a205536",
      "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
      "inputs": {},
      "idempotency_key": "hook:SessionStart:019f67fa-78d7-7511-a4ed-fd5c02224594",
      "status": "completed",
      "attempt": 1,
      "created_at": "2026-07-15T22:51:38Z",
      "updated_at": "2026-07-15T22:51:40Z",
      "receipts": [
        {
          "step_id": "config",
          "action": "config.audit",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "3782ec2317c0c8ee7598634310a2804d8aae4735f557498f9d3b8fae7c45e1e5",
          "completed_at": "2026-07-15T22:51:38Z"
        },
        {
          "step_id": "services",
          "action": "services.audit",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "13dcc58bd528f3efa3e6e0fa0853a6eedc376f1f3685fbd4869cbb2b60382ee3",
          "completed_at": "2026-07-15T22:51:38Z"
        },
        {
          "step_id": "state",
          "action": "state.consistency",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "5a1c6e5246defb1b6b6b90ff734db95bece2886b408ab112ed9b8e67222d5568",
          "completed_at": "2026-07-15T22:51:39Z"
        },
        {
          "step_id": "status",
          "action": "state.query",
          "input_hash": "a15231a2142a2a9a85355a8b9cbbccffe01a9c9c2c2fd8c2bc2987cdc481564a",
          "output_hash": "8ba9f7d3cc6705af37de9e3324d1258e21ccacb5ab0b2d7b389ca08885e11187",
          "completed_at": "2026-07-15T22:51:39Z"
        },
        {
          "step_id": "substrate",
          "action": "substrate.preflight",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "a6df426290b4549a59eecaa0519ead9bcc50b7fcb25bd2185ff6047960f19ccb",
          "completed_at": "2026-07-15T22:51:40Z"
        },
        {
          "step_id": "notices",
          "action": "substrate.notices",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "38b904a1cf83df048360fb2480571b749fd98d57e11f1afdffb5a74a78166fea",
          "completed_at": "2026-07-15T22:51:40Z"
        },
        {
          "step_id": "goals",
          "action": "substrate.goals",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "cdfd4de44a28140e686159f34f7b47975954c67e1d1efcef666e985acb136ed8",
          "completed_at": "2026-07-15T22:51:40Z"
        }
      ],
      "steps": [
        {
          "id": "config",
          "action": "config.audit",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-15T22:51:38Z",
          "output": {
            "status": "ok",
            "summary": {
              "settings": 195,
              "mutable": 186,
              "read_only_or_managed": 9,
              "unclassified": 0,
              "unknown": 0,
              "invalid": 0,
              "missing_using_defaults": 0
            },
            "unclassified_keys": [],
            "unknown_keys": [],
            "invalid_values": [],
            "missing_using_defaults": []
          },
          "output_hash": "3782ec2317c0c8ee7598634310a2804d8aae4735f557498f9d3b8fae7c45e1e5",
          "completed_at": "2026-07-15T22:51:38Z"
        },
        {
          "id": "services",
          "action": "services.audit",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-15T22:51:38Z",
          "output": {
            "status": "ok",
            "summary": {
              "critical": 0,
              "high": 0,
              "medium": 0,
              "low": 0
            },
            "findings": []
          },
          "output_hash": "13dcc58bd528f3efa3e6e0fa0853a6eedc376f1f3685fbd4869cbb2b60382ee3",
          "completed_at": "2026-07-15T22:51:38Z"
        },
        {
          "id": "state",
          "action": "state.consistency",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-15T22:51:38Z",
          "output": {
            "status": "ok",
            "repo_root": "D:\\Projects\\prd-plugin",
            "summary": {
              "errors": 0,
              "warnings": 0,
              "infos": 0
            },
            "findings": []
          },
          "output_hash": "5a1c6e5246defb1b6b6b90ff734db95bece2886b408ab112ed9b8e67222d5568",
          "completed_at": "2026-07-15T22:51:39Z"
        },
        {
          "id": "status",
          "action": "state.query",
          "status": "completed",
          "resolved_input_hash": "a15231a2142a2a9a85355a8b9cbbccffe01a9c9c2c2fd8c2bc2987cdc481564a",
          "started_at": "2026-07-15T22:51:39Z",
          "output": {
            "repo_root": "D:\\Projects\\prd-plugin",
            "autonomy_level": "autonomous",
            "requests_by_status": {
              "deferred": 1,
              "implemented": 80,
              "proposed": 1,
              "rejected": 1
            },
            "active_tracking": [],
            "tracking_branches": [],
            "tracking_branch_counts": {},
            "tracking_branch_errors": [],
            "open_health": [],
            "stale_count": 0,
            "skill_usage": {
              "project-decision-policy": 1,
              "project-request-intake": 1,
              "project-test-driven-implementation": 1,
              "project-verification-before-completion": 1,
              "project-llm-wiki": 1
            },
            "wiki_backfill_pending": false,
            "version_update": null
          },
          "output_hash": "8ba9f7d3cc6705af37de9e3324d1258e21ccacb5ab0b2d7b389ca08885e11187",
          "completed_at": "2026-07-15T22:51:39Z"
        },
        {
          "id": "substrate",
          "action": "substrate.preflight",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-15T22:51:40Z",
          "output": {
            "status": "disabled",
            "services": {
              "status": "ok",
              "summary": {
                "critical": 0,
                "high": 0,
                "medium": 0,
                "low": 0
              },
              "findings": []
            },
            "policy": {
              "configured": {
                "enabled": false,
                "mode": "off",
                "capabilities": [
                  "records",
                  "graph",
                  "events"
                ],
                "contract_version": 2,
                "require_source_refs": true,
                "endpoint": "http://127.0.0.1:47124",
                "manual_url": "http://127.0.0.1:47124/utcp.json",
                "knowledge_browse_url": "http://127.0.0.1:5276",
                "auth_env": "AI_COLLAB_API_KEY",
                "timeout_seconds": 5,
                "max_result_bytes": 1048576,
                "cache_ttl_seconds": 60,
                "fallback": "local",
                "automation": {
                  "discovery_on_session_start": true,
                  "knowledge_recall": true,
                  "memory_recall": true,
                  "context_enrichment": true,
                  "notices_on_session_start": false,
                  "goals_sync": false,
                  "telemetry_on_maintenance": false,
                  "reporting_dispatch": true,
                  "judgment_dispatch": true,
                  "verification_execution": true
                }
              },
              "active": false,
              "effective_mode": "off",
              "effective_capabilities": []
            }
          },
          "output_hash": "a6df426290b4549a59eecaa0519ead9bcc50b7fcb25bd2185ff6047960f19ccb",
          "completed_at": "2026-07-15T22:51:40Z"
        },
        {
          "id": "notices",
          "action": "substrate.notices",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-15T22:51:40Z",
          "output": {
            "status": "disabled"
          },
          "output_hash": "38b904a1cf83df048360fb2480571b749fd98d57e11f1afdffb5a74a78166fea",
          "completed_at": "2026-07-15T22:51:40Z"
        },
        {
          "id": "goals",
          "action": "substrate.goals",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-15T22:51:40Z",
          "output": {
            "status": "disabled",
            "created": 0,
            "observed": 0,
            "results": []
          },
          "output_hash": "cdfd4de44a28140e686159f34f7b47975954c67e1d1efcef666e985acb136ed8",
          "completed_at": "2026-07-15T22:51:40Z"
        }
      ],
      "completed_at": "2026-07-15T22:51:40Z"
    },
    {
      "id": "WFR-228",
      "schema_version": "1.0",
      "workflow_id": "session.stop",
      "workflow_version": 1,
      "definition_hash": "0cef7bb3e28321be8f85375c154955a69310ce297e47de3f3b8dd48f77a2f07d",
      "plan_hash": "a5e1d77ac734217487fc418e29c7163f4e81178e25d171e70cd4c999d527d3e8",
      "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
      "inputs": {},
      "idempotency_key": "hook:Stop:019f67fa-78d7-7511-a4ed-fd5c02224594",
      "status": "completed",
      "attempt": 1,
      "created_at": "2026-07-15T22:51:43Z",
      "updated_at": "2026-07-15T22:51:44Z",
      "receipts": [
        {
          "step_id": "state",
          "action": "state.consistency",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "5a1c6e5246defb1b6b6b90ff734db95bece2886b408ab112ed9b8e67222d5568",
          "completed_at": "2026-07-15T22:51:44Z"
        },
        {
          "step_id": "goals",
          "action": "substrate.goals",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "cdfd4de44a28140e686159f34f7b47975954c67e1d1efcef666e985acb136ed8",
          "completed_at": "2026-07-15T22:51:44Z"
        },
        {
          "step_id": "staleness",
          "action": "staleness.audit",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "1e81cb0ffd0a4d04626920a203b38d2d23a264cd43e807a85d375d69cae8a658",
          "completed_at": "2026-07-15T22:51:44Z"
        },
        {
          "step_id": "reflections",
          "action": "reflection.list",
          "input_hash": "0172e841ab4c13b3a4061f073f9d68a716ec87a8a5d52fde41823385e0582573",
          "output_hash": "c1b6b635c0bab21120657277f14ef6f839909875f307a3745fa48aee2bd6e449",
          "completed_at": "2026-07-15T22:51:44Z"
        },
        {
          "step_id": "bundle",
          "action": "reporting.bundle",
          "input_hash": "aed8ebb688dc3c085dd978d7c4120572173c3cb87e75919e4a937dcca6ef9457",
          "output_hash": "f61aa7bfac7c2e96e3bf2d3386a95e45d2db52d040f05aff9ea963197eacc3f6",
          "completed_at": "2026-07-15T22:51:44Z"
        },
        {
          "step_id": "delegated",
          "action": "reporting.delegate",
          "input_hash": "5bf4dfad88c9958da759cb1561ca5fdd8f3ac9050e938bfde85af5c8d804adc9",
          "output_hash": "e6085059f197def80ae95add1f328418107bea5436c9bd002530043646a3a95c",
          "completed_at": "2026-07-15T22:51:44Z"
        }
      ],
      "steps": [
        {
          "id": "state",
          "action": "state.consistency",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-15T22:51:43Z",
          "output": {
            "status": "ok",
            "repo_root": "D:\\Projects\\prd-plugin",
            "summary": {
              "errors": 0,
              "warnings": 0,
              "infos": 0
            },
            "findings": []
          },
          "output_hash": "5a1c6e5246defb1b6b6b90ff734db95bece2886b408ab112ed9b8e67222d5568",
          "completed_at": "2026-07-15T22:51:44Z"
        },
        {
          "id": "goals",
          "action": "substrate.goals",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-15T22:51:44Z",
          "output": {
            "status": "disabled",
            "created": 0,
            "observed": 0,
            "results": []
          },
          "output_hash": "cdfd4de44a28140e686159f34f7b47975954c67e1d1efcef666e985acb136ed8",
          "completed_at": "2026-07-15T22:51:44Z"
        },
        {
          "id": "staleness",
          "action": "staleness.audit",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-15T22:51:44Z",
          "output": {
            "status": "ok",
            "repo_root": "D:\\Projects\\prd-plugin",
            "counts": {
              "stale": 0
            },
            "stale": []
          },
          "output_hash": "1e81cb0ffd0a4d04626920a203b38d2d23a264cd43e807a85d375d69cae8a658",
          "completed_at": "2026-07-15T22:51:44Z"
        },
        {
          "id": "reflections",
          "action": "reflection.list",
          "status": "completed",
          "resolved_input_hash": "0172e841ab4c13b3a4061f073f9d68a716ec87a8a5d52fde41823385e0582573",
          "started_at": "2026-07-15T22:51:44Z",
          "output": {
            "enabled": false,
            "on_stop": true,
            "max_questions_per_stop": 5,
            "categories": [
              {
                "id": "behaviour_quality",
                "name": "Behaviour quality",
                "enabled": true,
                "question_count": 3
              },
              {
                "id": "harness_friction",
                "name": "Harness friction",
                "enabled": true,
                "question_count": 2
              }
            ],
            "questions": [
              {
                "id": "RFQ-001",
                "text": "Based on the work you just carried out, would you classify your behaviour as good? Answer yes or no and cite observable evidence.",
                "enabled": true,
                "category_id": "behaviour_quality",
                "category_name": "Behaviour quality",
                "effective_enabled": false
              },
              {
                "id": "RFQ-002",
                "text": "If you answered no, what could you do differently to correct your behaviour?",
                "enabled": true,
                "category_id": "behaviour_quality",
                "category_name": "Behaviour quality",
                "effective_enabled": false
              },
              {
                "id": "RFQ-003",
                "text": "Would another attempt using the identified good behaviours materially improve the outcome? Answer yes or no and state the next corrective action if yes.",
                "enabled": true,
                "category_id": "behaviour_quality",
                "category_name": "Behaviour quality",
                "effective_enabled": false
              },
              {
                "id": "RFQ-004",
                "text": "What harness friction points made this work more difficult?",
                "enabled": true,
                "category_id": "harness_friction",
                "category_name": "Harness friction",
                "effective_enabled": false
              },
              {
                "id": "RFQ-005",
                "text": "What up to three changes would most improve friction in the harness?",
                "enabled": true,
                "category_id": "harness_friction",
                "category_name": "Harness friction",
                "effective_enabled": false
              }
            ]
          },
          "output_hash": "c1b6b635c0bab21120657277f14ef6f839909875f307a3745fa48aee2bd6e449",
          "completed_at": "2026-07-15T22:51:44Z"
        },
        {
          "id": "bundle",
          "action": "reporting.bundle",
          "status": "completed",
          "resolved_input_hash": "aed8ebb688dc3c085dd978d7c4120572173c3cb87e75919e4a937dcca6ef9457",
          "started_at": "2026-07-15T22:51:44Z",
          "output": {
            "contract_version": 1,
            "task": "session_summary",
            "repo": "prd-plugin",
            "policy": {
              "enabled": false,
              "executor": "ai-collab",
              "contract_version": 1,
              "profile": "fast-capable",
              "tasks": [
                "report_summary",
                "session_summary",
                "wiki_synthesis",
                "triage_draft"
              ],
              "fallback": "main",
              "require_source_refs": true,
              "max_input_tokens": 12000,
              "max_output_tokens": 1500,
              "timeout_seconds": 30
            },
            "facts": {
              "requests_by_status": {
                "deferred": 1,
                "implemented": 80,
                "proposed": 1,
                "rejected": 1
              },
              "active_requests": [
                {
                  "id": "REQ-072",
                  "status": "proposed",
                  "severity": "low",
                  "summary": "opencode run-until-done: session.idle is a non-blocking notification, so the stop guard can't force continuation on opencode (currently degrades to a printed reminder, 0.5.95). Investigate whether opencode exposes any vetoable/continuation mechanism (a different event, a permission hook, or a 'continue' API) to enforce run-until-done, or accept the reminder as the permanent ceiling. Low priority — user rarely uses opencode."
                }
              ],
              "active_tracking": [],
              "open_health": [],
              "evidence_count": 105,
              "decision_count": 10
            },
            "findings": [],
            "source_refs": [
              ".prd_plugin/config.json",
              ".prd_plugin/state/decisions.json",
              ".prd_plugin/state/evidence.json",
              ".prd_plugin/state/health.json",
              ".prd_plugin/state/requests.json",
              ".prd_plugin/state/tracking.json",
              "REQ-072"
            ],
            "constraints": {
              "max_input_tokens": 12000,
              "max_output_tokens": 1500,
              "timeout_seconds": 30,
              "require_source_refs": true,
              "no_project_state_writes": true,
              "no_secrets_or_local_session_content": true
            }
          },
          "output_hash": "f61aa7bfac7c2e96e3bf2d3386a95e45d2db52d040f05aff9ea963197eacc3f6",
          "completed_at": "2026-07-15T22:51:44Z"
        },
        {
          "id": "delegated",
          "action": "reporting.delegate",
          "status": "completed",
          "resolved_input_hash": "5bf4dfad88c9958da759cb1561ca5fdd8f3ac9050e938bfde85af5c8d804adc9",
          "started_at": "2026-07-15T22:51:44Z",
          "output": {
            "status": "fallback",
            "action": "main",
            "reason": "disabled"
          },
          "output_hash": "e6085059f197def80ae95add1f328418107bea5436c9bd002530043646a3a95c",
          "completed_at": "2026-07-15T22:51:44Z"
        }
      ],
      "completed_at": "2026-07-15T22:51:44Z"
    },
    {
      "id": "WFR-229",
      "schema_version": "1.0",
      "workflow_id": "session.start",
      "workflow_version": 1,
      "definition_hash": "d0f98da02571e6dd27fec4aed92d3c82af9db75f8b90b997bf665635c7b7f6ca",
      "plan_hash": "b5072615ca3b7e9a3bd85d50d1f069d99ef2a9816b32c03a370745ed7a205536",
      "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
      "inputs": {},
      "idempotency_key": "hook:SessionStart:019f67fb-2ac1-7e92-8005-e17c0a3a9ccf",
      "status": "completed",
      "attempt": 1,
      "created_at": "2026-07-15T22:52:24Z",
      "updated_at": "2026-07-15T22:52:26Z",
      "receipts": [
        {
          "step_id": "config",
          "action": "config.audit",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "3782ec2317c0c8ee7598634310a2804d8aae4735f557498f9d3b8fae7c45e1e5",
          "completed_at": "2026-07-15T22:52:24Z"
        },
        {
          "step_id": "services",
          "action": "services.audit",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "13dcc58bd528f3efa3e6e0fa0853a6eedc376f1f3685fbd4869cbb2b60382ee3",
          "completed_at": "2026-07-15T22:52:24Z"
        },
        {
          "step_id": "state",
          "action": "state.consistency",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "5a1c6e5246defb1b6b6b90ff734db95bece2886b408ab112ed9b8e67222d5568",
          "completed_at": "2026-07-15T22:52:25Z"
        },
        {
          "step_id": "status",
          "action": "state.query",
          "input_hash": "a15231a2142a2a9a85355a8b9cbbccffe01a9c9c2c2fd8c2bc2987cdc481564a",
          "output_hash": "8ba9f7d3cc6705af37de9e3324d1258e21ccacb5ab0b2d7b389ca08885e11187",
          "completed_at": "2026-07-15T22:52:25Z"
        },
        {
          "step_id": "substrate",
          "action": "substrate.preflight",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "a6df426290b4549a59eecaa0519ead9bcc50b7fcb25bd2185ff6047960f19ccb",
          "completed_at": "2026-07-15T22:52:25Z"
        },
        {
          "step_id": "notices",
          "action": "substrate.notices",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "38b904a1cf83df048360fb2480571b749fd98d57e11f1afdffb5a74a78166fea",
          "completed_at": "2026-07-15T22:52:25Z"
        },
        {
          "step_id": "goals",
          "action": "substrate.goals",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "cdfd4de44a28140e686159f34f7b47975954c67e1d1efcef666e985acb136ed8",
          "completed_at": "2026-07-15T22:52:26Z"
        }
      ],
      "steps": [
        {
          "id": "config",
          "action": "config.audit",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-15T22:52:24Z",
          "output": {
            "status": "ok",
            "summary": {
              "settings": 195,
              "mutable": 186,
              "read_only_or_managed": 9,
              "unclassified": 0,
              "unknown": 0,
              "invalid": 0,
              "missing_using_defaults": 0
            },
            "unclassified_keys": [],
            "unknown_keys": [],
            "invalid_values": [],
            "missing_using_defaults": []
          },
          "output_hash": "3782ec2317c0c8ee7598634310a2804d8aae4735f557498f9d3b8fae7c45e1e5",
          "completed_at": "2026-07-15T22:52:24Z"
        },
        {
          "id": "services",
          "action": "services.audit",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-15T22:52:24Z",
          "output": {
            "status": "ok",
            "summary": {
              "critical": 0,
              "high": 0,
              "medium": 0,
              "low": 0
            },
            "findings": []
          },
          "output_hash": "13dcc58bd528f3efa3e6e0fa0853a6eedc376f1f3685fbd4869cbb2b60382ee3",
          "completed_at": "2026-07-15T22:52:24Z"
        },
        {
          "id": "state",
          "action": "state.consistency",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-15T22:52:24Z",
          "output": {
            "status": "ok",
            "repo_root": "D:\\Projects\\prd-plugin",
            "summary": {
              "errors": 0,
              "warnings": 0,
              "infos": 0
            },
            "findings": []
          },
          "output_hash": "5a1c6e5246defb1b6b6b90ff734db95bece2886b408ab112ed9b8e67222d5568",
          "completed_at": "2026-07-15T22:52:25Z"
        },
        {
          "id": "status",
          "action": "state.query",
          "status": "completed",
          "resolved_input_hash": "a15231a2142a2a9a85355a8b9cbbccffe01a9c9c2c2fd8c2bc2987cdc481564a",
          "started_at": "2026-07-15T22:52:25Z",
          "output": {
            "repo_root": "D:\\Projects\\prd-plugin",
            "autonomy_level": "autonomous",
            "requests_by_status": {
              "deferred": 1,
              "implemented": 80,
              "proposed": 1,
              "rejected": 1
            },
            "active_tracking": [],
            "tracking_branches": [],
            "tracking_branch_counts": {},
            "tracking_branch_errors": [],
            "open_health": [],
            "stale_count": 0,
            "skill_usage": {
              "project-decision-policy": 1,
              "project-request-intake": 1,
              "project-test-driven-implementation": 1,
              "project-verification-before-completion": 1,
              "project-llm-wiki": 1
            },
            "wiki_backfill_pending": false,
            "version_update": null
          },
          "output_hash": "8ba9f7d3cc6705af37de9e3324d1258e21ccacb5ab0b2d7b389ca08885e11187",
          "completed_at": "2026-07-15T22:52:25Z"
        },
        {
          "id": "substrate",
          "action": "substrate.preflight",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-15T22:52:25Z",
          "output": {
            "status": "disabled",
            "services": {
              "status": "ok",
              "summary": {
                "critical": 0,
                "high": 0,
                "medium": 0,
                "low": 0
              },
              "findings": []
            },
            "policy": {
              "configured": {
                "enabled": false,
                "mode": "off",
                "capabilities": [
                  "records",
                  "graph",
                  "events"
                ],
                "contract_version": 2,
                "require_source_refs": true,
                "endpoint": "http://127.0.0.1:47124",
                "manual_url": "http://127.0.0.1:47124/utcp.json",
                "knowledge_browse_url": "http://127.0.0.1:5276",
                "auth_env": "AI_COLLAB_API_KEY",
                "timeout_seconds": 5,
                "max_result_bytes": 1048576,
                "cache_ttl_seconds": 60,
                "fallback": "local",
                "automation": {
                  "discovery_on_session_start": true,
                  "knowledge_recall": true,
                  "memory_recall": true,
                  "context_enrichment": true,
                  "notices_on_session_start": false,
                  "goals_sync": false,
                  "telemetry_on_maintenance": false,
                  "reporting_dispatch": true,
                  "judgment_dispatch": true,
                  "verification_execution": true
                }
              },
              "active": false,
              "effective_mode": "off",
              "effective_capabilities": []
            }
          },
          "output_hash": "a6df426290b4549a59eecaa0519ead9bcc50b7fcb25bd2185ff6047960f19ccb",
          "completed_at": "2026-07-15T22:52:25Z"
        },
        {
          "id": "notices",
          "action": "substrate.notices",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-15T22:52:25Z",
          "output": {
            "status": "disabled"
          },
          "output_hash": "38b904a1cf83df048360fb2480571b749fd98d57e11f1afdffb5a74a78166fea",
          "completed_at": "2026-07-15T22:52:25Z"
        },
        {
          "id": "goals",
          "action": "substrate.goals",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-15T22:52:26Z",
          "output": {
            "status": "disabled",
            "created": 0,
            "observed": 0,
            "results": []
          },
          "output_hash": "cdfd4de44a28140e686159f34f7b47975954c67e1d1efcef666e985acb136ed8",
          "completed_at": "2026-07-15T22:52:26Z"
        }
      ],
      "completed_at": "2026-07-15T22:52:26Z"
    },
    {
      "id": "WFR-230",
      "schema_version": "1.0",
      "workflow_id": "session.stop",
      "workflow_version": 1,
      "definition_hash": "0cef7bb3e28321be8f85375c154955a69310ce297e47de3f3b8dd48f77a2f07d",
      "plan_hash": "a5e1d77ac734217487fc418e29c7163f4e81178e25d171e70cd4c999d527d3e8",
      "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
      "inputs": {},
      "idempotency_key": "hook:Stop:019f67fb-2ac1-7e92-8005-e17c0a3a9ccf",
      "status": "completed",
      "attempt": 1,
      "created_at": "2026-07-15T22:52:29Z",
      "updated_at": "2026-07-15T22:52:31Z",
      "receipts": [
        {
          "step_id": "state",
          "action": "state.consistency",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "5a1c6e5246defb1b6b6b90ff734db95bece2886b408ab112ed9b8e67222d5568",
          "completed_at": "2026-07-15T22:52:30Z"
        },
        {
          "step_id": "goals",
          "action": "substrate.goals",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "cdfd4de44a28140e686159f34f7b47975954c67e1d1efcef666e985acb136ed8",
          "completed_at": "2026-07-15T22:52:30Z"
        },
        {
          "step_id": "staleness",
          "action": "staleness.audit",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "1e81cb0ffd0a4d04626920a203b38d2d23a264cd43e807a85d375d69cae8a658",
          "completed_at": "2026-07-15T22:52:30Z"
        },
        {
          "step_id": "reflections",
          "action": "reflection.list",
          "input_hash": "0172e841ab4c13b3a4061f073f9d68a716ec87a8a5d52fde41823385e0582573",
          "output_hash": "c1b6b635c0bab21120657277f14ef6f839909875f307a3745fa48aee2bd6e449",
          "completed_at": "2026-07-15T22:52:31Z"
        },
        {
          "step_id": "bundle",
          "action": "reporting.bundle",
          "input_hash": "aed8ebb688dc3c085dd978d7c4120572173c3cb87e75919e4a937dcca6ef9457",
          "output_hash": "f61aa7bfac7c2e96e3bf2d3386a95e45d2db52d040f05aff9ea963197eacc3f6",
          "completed_at": "2026-07-15T22:52:31Z"
        },
        {
          "step_id": "delegated",
          "action": "reporting.delegate",
          "input_hash": "5bf4dfad88c9958da759cb1561ca5fdd8f3ac9050e938bfde85af5c8d804adc9",
          "output_hash": "e6085059f197def80ae95add1f328418107bea5436c9bd002530043646a3a95c",
          "completed_at": "2026-07-15T22:52:31Z"
        }
      ],
      "steps": [
        {
          "id": "state",
          "action": "state.consistency",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-15T22:52:30Z",
          "output": {
            "status": "ok",
            "repo_root": "D:\\Projects\\prd-plugin",
            "summary": {
              "errors": 0,
              "warnings": 0,
              "infos": 0
            },
            "findings": []
          },
          "output_hash": "5a1c6e5246defb1b6b6b90ff734db95bece2886b408ab112ed9b8e67222d5568",
          "completed_at": "2026-07-15T22:52:30Z"
        },
        {
          "id": "goals",
          "action": "substrate.goals",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-15T22:52:30Z",
          "output": {
            "status": "disabled",
            "created": 0,
            "observed": 0,
            "results": []
          },
          "output_hash": "cdfd4de44a28140e686159f34f7b47975954c67e1d1efcef666e985acb136ed8",
          "completed_at": "2026-07-15T22:52:30Z"
        },
        {
          "id": "staleness",
          "action": "staleness.audit",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-15T22:52:30Z",
          "output": {
            "status": "ok",
            "repo_root": "D:\\Projects\\prd-plugin",
            "counts": {
              "stale": 0
            },
            "stale": []
          },
          "output_hash": "1e81cb0ffd0a4d04626920a203b38d2d23a264cd43e807a85d375d69cae8a658",
          "completed_at": "2026-07-15T22:52:30Z"
        },
        {
          "id": "reflections",
          "action": "reflection.list",
          "status": "completed",
          "resolved_input_hash": "0172e841ab4c13b3a4061f073f9d68a716ec87a8a5d52fde41823385e0582573",
          "started_at": "2026-07-15T22:52:31Z",
          "output": {
            "enabled": false,
            "on_stop": true,
            "max_questions_per_stop": 5,
            "categories": [
              {
                "id": "behaviour_quality",
                "name": "Behaviour quality",
                "enabled": true,
                "question_count": 3
              },
              {
                "id": "harness_friction",
                "name": "Harness friction",
                "enabled": true,
                "question_count": 2
              }
            ],
            "questions": [
              {
                "id": "RFQ-001",
                "text": "Based on the work you just carried out, would you classify your behaviour as good? Answer yes or no and cite observable evidence.",
                "enabled": true,
                "category_id": "behaviour_quality",
                "category_name": "Behaviour quality",
                "effective_enabled": false
              },
              {
                "id": "RFQ-002",
                "text": "If you answered no, what could you do differently to correct your behaviour?",
                "enabled": true,
                "category_id": "behaviour_quality",
                "category_name": "Behaviour quality",
                "effective_enabled": false
              },
              {
                "id": "RFQ-003",
                "text": "Would another attempt using the identified good behaviours materially improve the outcome? Answer yes or no and state the next corrective action if yes.",
                "enabled": true,
                "category_id": "behaviour_quality",
                "category_name": "Behaviour quality",
                "effective_enabled": false
              },
              {
                "id": "RFQ-004",
                "text": "What harness friction points made this work more difficult?",
                "enabled": true,
                "category_id": "harness_friction",
                "category_name": "Harness friction",
                "effective_enabled": false
              },
              {
                "id": "RFQ-005",
                "text": "What up to three changes would most improve friction in the harness?",
                "enabled": true,
                "category_id": "harness_friction",
                "category_name": "Harness friction",
                "effective_enabled": false
              }
            ]
          },
          "output_hash": "c1b6b635c0bab21120657277f14ef6f839909875f307a3745fa48aee2bd6e449",
          "completed_at": "2026-07-15T22:52:31Z"
        },
        {
          "id": "bundle",
          "action": "reporting.bundle",
          "status": "completed",
          "resolved_input_hash": "aed8ebb688dc3c085dd978d7c4120572173c3cb87e75919e4a937dcca6ef9457",
          "started_at": "2026-07-15T22:52:31Z",
          "output": {
            "contract_version": 1,
            "task": "session_summary",
            "repo": "prd-plugin",
            "policy": {
              "enabled": false,
              "executor": "ai-collab",
              "contract_version": 1,
              "profile": "fast-capable",
              "tasks": [
                "report_summary",
                "session_summary",
                "wiki_synthesis",
                "triage_draft"
              ],
              "fallback": "main",
              "require_source_refs": true,
              "max_input_tokens": 12000,
              "max_output_tokens": 1500,
              "timeout_seconds": 30
            },
            "facts": {
              "requests_by_status": {
                "deferred": 1,
                "implemented": 80,
                "proposed": 1,
                "rejected": 1
              },
              "active_requests": [
                {
                  "id": "REQ-072",
                  "status": "proposed",
                  "severity": "low",
                  "summary": "opencode run-until-done: session.idle is a non-blocking notification, so the stop guard can't force continuation on opencode (currently degrades to a printed reminder, 0.5.95). Investigate whether opencode exposes any vetoable/continuation mechanism (a different event, a permission hook, or a 'continue' API) to enforce run-until-done, or accept the reminder as the permanent ceiling. Low priority — user rarely uses opencode."
                }
              ],
              "active_tracking": [],
              "open_health": [],
              "evidence_count": 105,
              "decision_count": 10
            },
            "findings": [],
            "source_refs": [
              ".prd_plugin/config.json",
              ".prd_plugin/state/decisions.json",
              ".prd_plugin/state/evidence.json",
              ".prd_plugin/state/health.json",
              ".prd_plugin/state/requests.json",
              ".prd_plugin/state/tracking.json",
              "REQ-072"
            ],
            "constraints": {
              "max_input_tokens": 12000,
              "max_output_tokens": 1500,
              "timeout_seconds": 30,
              "require_source_refs": true,
              "no_project_state_writes": true,
              "no_secrets_or_local_session_content": true
            }
          },
          "output_hash": "f61aa7bfac7c2e96e3bf2d3386a95e45d2db52d040f05aff9ea963197eacc3f6",
          "completed_at": "2026-07-15T22:52:31Z"
        },
        {
          "id": "delegated",
          "action": "reporting.delegate",
          "status": "completed",
          "resolved_input_hash": "5bf4dfad88c9958da759cb1561ca5fdd8f3ac9050e938bfde85af5c8d804adc9",
          "started_at": "2026-07-15T22:52:31Z",
          "output": {
            "status": "fallback",
            "action": "main",
            "reason": "disabled"
          },
          "output_hash": "e6085059f197def80ae95add1f328418107bea5436c9bd002530043646a3a95c",
          "completed_at": "2026-07-15T22:52:31Z"
        }
      ],
      "completed_at": "2026-07-15T22:52:31Z"
    },
    {
      "id": "WFR-231",
      "schema_version": "1.0",
      "workflow_id": "session.start",
      "workflow_version": 1,
      "definition_hash": "d0f98da02571e6dd27fec4aed92d3c82af9db75f8b90b997bf665635c7b7f6ca",
      "plan_hash": "b5072615ca3b7e9a3bd85d50d1f069d99ef2a9816b32c03a370745ed7a205536",
      "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
      "inputs": {},
      "idempotency_key": "codex-20260716-req079-080-start",
      "status": "completed",
      "attempt": 1,
      "created_at": "2026-07-16T04:59:16Z",
      "updated_at": "2026-07-16T04:59:51Z",
      "receipts": [
        {
          "step_id": "config",
          "action": "config.audit",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "3782ec2317c0c8ee7598634310a2804d8aae4735f557498f9d3b8fae7c45e1e5",
          "completed_at": "2026-07-16T04:59:17Z"
        },
        {
          "step_id": "services",
          "action": "services.audit",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "13dcc58bd528f3efa3e6e0fa0853a6eedc376f1f3685fbd4869cbb2b60382ee3",
          "completed_at": "2026-07-16T04:59:18Z"
        },
        {
          "step_id": "state",
          "action": "state.consistency",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "5a1c6e5246defb1b6b6b90ff734db95bece2886b408ab112ed9b8e67222d5568",
          "completed_at": "2026-07-16T04:59:42Z"
        },
        {
          "step_id": "status",
          "action": "state.query",
          "input_hash": "a15231a2142a2a9a85355a8b9cbbccffe01a9c9c2c2fd8c2bc2987cdc481564a",
          "output_hash": "8ba9f7d3cc6705af37de9e3324d1258e21ccacb5ab0b2d7b389ca08885e11187",
          "completed_at": "2026-07-16T04:59:46Z"
        },
        {
          "step_id": "substrate",
          "action": "substrate.preflight",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "a6df426290b4549a59eecaa0519ead9bcc50b7fcb25bd2185ff6047960f19ccb",
          "completed_at": "2026-07-16T04:59:47Z"
        },
        {
          "step_id": "notices",
          "action": "substrate.notices",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "38b904a1cf83df048360fb2480571b749fd98d57e11f1afdffb5a74a78166fea",
          "completed_at": "2026-07-16T04:59:49Z"
        },
        {
          "step_id": "goals",
          "action": "substrate.goals",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "cdfd4de44a28140e686159f34f7b47975954c67e1d1efcef666e985acb136ed8",
          "completed_at": "2026-07-16T04:59:50Z"
        }
      ],
      "steps": [
        {
          "id": "config",
          "action": "config.audit",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-16T04:59:17Z",
          "output": {
            "status": "ok",
            "summary": {
              "settings": 195,
              "mutable": 186,
              "read_only_or_managed": 9,
              "unclassified": 0,
              "unknown": 0,
              "invalid": 0,
              "missing_using_defaults": 0
            },
            "unclassified_keys": [],
            "unknown_keys": [],
            "invalid_values": [],
            "missing_using_defaults": []
          },
          "output_hash": "3782ec2317c0c8ee7598634310a2804d8aae4735f557498f9d3b8fae7c45e1e5",
          "completed_at": "2026-07-16T04:59:17Z"
        },
        {
          "id": "services",
          "action": "services.audit",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-16T04:59:18Z",
          "output": {
            "status": "ok",
            "summary": {
              "critical": 0,
              "high": 0,
              "medium": 0,
              "low": 0
            },
            "findings": []
          },
          "output_hash": "13dcc58bd528f3efa3e6e0fa0853a6eedc376f1f3685fbd4869cbb2b60382ee3",
          "completed_at": "2026-07-16T04:59:18Z"
        },
        {
          "id": "state",
          "action": "state.consistency",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-16T04:59:19Z",
          "output": {
            "status": "ok",
            "repo_root": "D:\\Projects\\prd-plugin",
            "summary": {
              "errors": 0,
              "warnings": 0,
              "infos": 0
            },
            "findings": []
          },
          "output_hash": "5a1c6e5246defb1b6b6b90ff734db95bece2886b408ab112ed9b8e67222d5568",
          "completed_at": "2026-07-16T04:59:42Z"
        },
        {
          "id": "status",
          "action": "state.query",
          "status": "completed",
          "resolved_input_hash": "a15231a2142a2a9a85355a8b9cbbccffe01a9c9c2c2fd8c2bc2987cdc481564a",
          "started_at": "2026-07-16T04:59:42Z",
          "output": {
            "repo_root": "D:\\Projects\\prd-plugin",
            "autonomy_level": "autonomous",
            "requests_by_status": {
              "deferred": 1,
              "implemented": 80,
              "proposed": 1,
              "rejected": 1
            },
            "active_tracking": [],
            "tracking_branches": [],
            "tracking_branch_counts": {},
            "tracking_branch_errors": [],
            "open_health": [],
            "stale_count": 0,
            "skill_usage": {
              "project-decision-policy": 1,
              "project-request-intake": 1,
              "project-test-driven-implementation": 1,
              "project-verification-before-completion": 1,
              "project-llm-wiki": 1
            },
            "wiki_backfill_pending": false,
            "version_update": null
          },
          "output_hash": "8ba9f7d3cc6705af37de9e3324d1258e21ccacb5ab0b2d7b389ca08885e11187",
          "completed_at": "2026-07-16T04:59:46Z"
        },
        {
          "id": "substrate",
          "action": "substrate.preflight",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-16T04:59:47Z",
          "output": {
            "status": "disabled",
            "services": {
              "status": "ok",
              "summary": {
                "critical": 0,
                "high": 0,
                "medium": 0,
                "low": 0
              },
              "findings": []
            },
            "policy": {
              "configured": {
                "enabled": false,
                "mode": "off",
                "capabilities": [
                  "records",
                  "graph",
                  "events"
                ],
                "contract_version": 2,
                "require_source_refs": true,
                "endpoint": "http://127.0.0.1:47124",
                "manual_url": "http://127.0.0.1:47124/utcp.json",
                "knowledge_browse_url": "http://127.0.0.1:5276",
                "auth_env": "AI_COLLAB_API_KEY",
                "timeout_seconds": 5,
                "max_result_bytes": 1048576,
                "cache_ttl_seconds": 60,
                "fallback": "local",
                "automation": {
                  "discovery_on_session_start": true,
                  "knowledge_recall": true,
                  "memory_recall": true,
                  "context_enrichment": true,
                  "notices_on_session_start": false,
                  "goals_sync": false,
                  "telemetry_on_maintenance": false,
                  "reporting_dispatch": true,
                  "judgment_dispatch": true,
                  "verification_execution": true
                }
              },
              "active": false,
              "effective_mode": "off",
              "effective_capabilities": []
            }
          },
          "output_hash": "a6df426290b4549a59eecaa0519ead9bcc50b7fcb25bd2185ff6047960f19ccb",
          "completed_at": "2026-07-16T04:59:47Z"
        },
        {
          "id": "notices",
          "action": "substrate.notices",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-16T04:59:49Z",
          "output": {
            "status": "disabled"
          },
          "output_hash": "38b904a1cf83df048360fb2480571b749fd98d57e11f1afdffb5a74a78166fea",
          "completed_at": "2026-07-16T04:59:49Z"
        },
        {
          "id": "goals",
          "action": "substrate.goals",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-16T04:59:50Z",
          "output": {
            "status": "disabled",
            "created": 0,
            "observed": 0,
            "results": []
          },
          "output_hash": "cdfd4de44a28140e686159f34f7b47975954c67e1d1efcef666e985acb136ed8",
          "completed_at": "2026-07-16T04:59:50Z"
        }
      ],
      "completed_at": "2026-07-16T04:59:51Z"
    },
    {
      "id": "WFR-232",
      "schema_version": "1.0",
      "workflow_id": "request.intake",
      "workflow_version": 1,
      "definition_hash": "b61272f54c5d4778a27afe601feaae39057f75fac2c289858b6caf5f3b2a4fbe",
      "plan_hash": "8f153beb1967a7d8ff6d980b170946eb4b972fd2c98c8746f8e255aaa48e2266",
      "input_hash": "2eb11338f2f66d94ad7e232f437d2b5ba24a3685e132d66472d00d9f06cbea97",
      "inputs": {
        "summary": "Ship staleness_audit.py wherever enabled downstream workflows require it",
        "request_type": "bug",
        "severity": "high",
        "scope": "local",
        "rationale": "Downstream session.stop executes the staleness.audit action, which imports staleness_audit unconditionally, while the install-scope manifest marks staleness_audit.py optional and omits it from normal installs.",
        "affected_areas": [
          "templates/script-install-scope.json",
          "templates/repo-skeleton/.prd_plugin/templates/script-install-scope.json",
          "scripts/prd_workflows.py",
          "scripts/prd_install.py",
          "tests"
        ],
        "expected_behavior": "A normal downstream install contains every Python module required by enabled deterministic workflows, and session.stop completes without ambient PYTHONPATH workarounds."
      },
      "idempotency_key": "codex-20260716-req079-intake",
      "status": "completed",
      "attempt": 1,
      "created_at": "2026-07-16T05:05:23Z",
      "updated_at": "2026-07-16T05:05:24Z",
      "receipts": [
        {
          "step_id": "create",
          "action": "state.mutate",
          "input_hash": "8476feb6db4bdbdf49f8784e6743eea76e6105a9d06750b3d2f120bbbaa13d88",
          "output_hash": "83ac9b13624d11baaa91ed80a2af12da8ae4578f62029811dde7359fe0d4e0b3",
          "completed_at": "2026-07-16T05:05:23Z"
        },
        {
          "step_id": "confirm",
          "action": "state.query",
          "input_hash": "f970f08b8ab04e09850280190173a417a1f32b3326ec8ebb593e909fe32dd626",
          "output_hash": "7ee03f359ec974953d0549986a84b9a2492f02e559d001d98c7b5af7c90dd9a4",
          "completed_at": "2026-07-16T05:05:23Z"
        }
      ],
      "steps": [
        {
          "id": "create",
          "action": "state.mutate",
          "status": "completed",
          "resolved_input_hash": "8476feb6db4bdbdf49f8784e6743eea76e6105a9d06750b3d2f120bbbaa13d88",
          "started_at": "2026-07-16T05:05:23Z",
          "execution_token": "a91c53db97538005a61c2081c1fa19dee19ef20fe40a9a5198207a112302b3d1",
          "output": {
            "id": "REQ-102",
            "status": "proposed"
          },
          "output_hash": "83ac9b13624d11baaa91ed80a2af12da8ae4578f62029811dde7359fe0d4e0b3",
          "completed_at": "2026-07-16T05:05:23Z"
        },
        {
          "id": "confirm",
          "action": "state.query",
          "status": "completed",
          "resolved_input_hash": "f970f08b8ab04e09850280190173a417a1f32b3326ec8ebb593e909fe32dd626",
          "started_at": "2026-07-16T05:05:23Z",
          "output": {
            "kind": "REQ",
            "record": {
              "id": "REQ-102",
              "status": "proposed",
              "request_type": "bug",
              "scope": "local",
              "visibility": "repo",
              "summary": "Ship staleness_audit.py wherever enabled downstream workflows require it",
              "severity": "high",
              "requested_by_agent": "AGENT-MCP",
              "created_at": "2026-07-16",
              "rationale": "Downstream session.stop executes the staleness.audit action, which imports staleness_audit unconditionally, while the install-scope manifest marks staleness_audit.py optional and omits it from normal installs.",
              "affected_areas": [
                "templates/script-install-scope.json",
                "templates/repo-skeleton/.prd_plugin/templates/script-install-scope.json",
                "scripts/prd_workflows.py",
                "scripts/prd_install.py",
                "tests"
              ],
              "expected_behavior": "A normal downstream install contains every Python module required by enabled deterministic workflows, and session.stop completes without ambient PYTHONPATH workarounds.",
              "upstream_submission": false
            }
          },
          "output_hash": "7ee03f359ec974953d0549986a84b9a2492f02e559d001d98c7b5af7c90dd9a4",
          "completed_at": "2026-07-16T05:05:23Z"
        }
      ],
      "completed_at": "2026-07-16T05:05:24Z"
    },
    {
      "id": "WFR-233",
      "schema_version": "1.0",
      "workflow_id": "request.intake",
      "workflow_version": 1,
      "definition_hash": "b61272f54c5d4778a27afe601feaae39057f75fac2c289858b6caf5f3b2a4fbe",
      "plan_hash": "6f7fdd0f1e5a0d2d281fffa979e18f5005579e6568f73cc9e0b2bb1e9878e870",
      "input_hash": "099df345dee570741cc415ceac9d1c5b665701e03e090a521104cb933dc5d10c",
      "inputs": {
        "summary": "Reconcile UTCP and MCP registrations through one canonical PRD tool-surface contract",
        "request_type": "bug",
        "severity": "medium",
        "scope": "local",
        "rationale": "The generated UTCP surface and MCP registration are maintained independently, have different counts and naming, and the checked-in UTCP manual has already drifted behind the generated surface.",
        "affected_areas": [
          "scripts/prd_tools.py",
          "mcp/server.cjs",
          "utcp.json",
          "downstream tool-surface templates",
          "tests",
          "wiki"
        ],
        "expected_behavior": "Both transports validate against one machine-readable capability catalog; every registered tool is accounted for, intentional transport-only differences carry explicit safety rationale, and generated manuals cannot silently drift."
      },
      "idempotency_key": "codex-20260716-req080-intake",
      "status": "completed",
      "attempt": 1,
      "created_at": "2026-07-16T05:05:25Z",
      "updated_at": "2026-07-16T05:05:26Z",
      "receipts": [
        {
          "step_id": "create",
          "action": "state.mutate",
          "input_hash": "b5130f87d2153f3067d84ef0ea0e54bb255746e1b44b5bf38e30ce52b03e419e",
          "output_hash": "4a6c701c0f869f200b21c73d979ee22d6170cf8f203b2b9626775277f00c55ef",
          "completed_at": "2026-07-16T05:05:26Z"
        },
        {
          "step_id": "confirm",
          "action": "state.query",
          "input_hash": "2a2a9a4105ac7e05964e676ffba0f2dcef7e95af7f20260800fc69a62c91a3cf",
          "output_hash": "dbf0cbc6019778bcb21023a12fcea549c955cdc1663c318917c37e875eabb61b",
          "completed_at": "2026-07-16T05:05:26Z"
        }
      ],
      "steps": [
        {
          "id": "create",
          "action": "state.mutate",
          "status": "completed",
          "resolved_input_hash": "b5130f87d2153f3067d84ef0ea0e54bb255746e1b44b5bf38e30ce52b03e419e",
          "started_at": "2026-07-16T05:05:25Z",
          "execution_token": "1cd3e215c73cc05e518af7dd654503b05b4174e77bf97d781a523dfc815045e6",
          "output": {
            "id": "REQ-103",
            "status": "proposed"
          },
          "output_hash": "4a6c701c0f869f200b21c73d979ee22d6170cf8f203b2b9626775277f00c55ef",
          "completed_at": "2026-07-16T05:05:26Z"
        },
        {
          "id": "confirm",
          "action": "state.query",
          "status": "completed",
          "resolved_input_hash": "2a2a9a4105ac7e05964e676ffba0f2dcef7e95af7f20260800fc69a62c91a3cf",
          "started_at": "2026-07-16T05:05:26Z",
          "output": {
            "kind": "REQ",
            "record": {
              "id": "REQ-103",
              "status": "proposed",
              "request_type": "bug",
              "scope": "local",
              "visibility": "repo",
              "summary": "Reconcile UTCP and MCP registrations through one canonical PRD tool-surface contract",
              "severity": "medium",
              "requested_by_agent": "AGENT-MCP",
              "created_at": "2026-07-16",
              "rationale": "The generated UTCP surface and MCP registration are maintained independently, have different counts and naming, and the checked-in UTCP manual has already drifted behind the generated surface.",
              "affected_areas": [
                "scripts/prd_tools.py",
                "mcp/server.cjs",
                "utcp.json",
                "downstream tool-surface templates",
                "tests",
                "wiki"
              ],
              "expected_behavior": "Both transports validate against one machine-readable capability catalog; every registered tool is accounted for, intentional transport-only differences carry explicit safety rationale, and generated manuals cannot silently drift.",
              "upstream_submission": false
            }
          },
          "output_hash": "dbf0cbc6019778bcb21023a12fcea549c955cdc1663c318917c37e875eabb61b",
          "completed_at": "2026-07-16T05:05:26Z"
        }
      ],
      "completed_at": "2026-07-16T05:05:26Z"
    },
    {
      "id": "WFR-234",
      "schema_version": "1.0",
      "workflow_id": "session.start",
      "workflow_version": 1,
      "definition_hash": "d0f98da02571e6dd27fec4aed92d3c82af9db75f8b90b997bf665635c7b7f6ca",
      "plan_hash": "b5072615ca3b7e9a3bd85d50d1f069d99ef2a9816b32c03a370745ed7a205536",
      "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
      "inputs": {},
      "idempotency_key": "hook:SessionStart:8a21f73a-ec95-4ca9-899d-2a3913064ae6",
      "status": "failed",
      "attempt": 1,
      "created_at": "2026-07-16T06:28:39Z",
      "updated_at": "2026-07-16T06:28:42Z",
      "receipts": [
        {
          "step_id": "config",
          "action": "config.audit",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "3782ec2317c0c8ee7598634310a2804d8aae4735f557498f9d3b8fae7c45e1e5",
          "completed_at": "2026-07-16T06:28:39Z"
        },
        {
          "step_id": "services",
          "action": "services.audit",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "13dcc58bd528f3efa3e6e0fa0853a6eedc376f1f3685fbd4869cbb2b60382ee3",
          "completed_at": "2026-07-16T06:28:39Z"
        }
      ],
      "steps": [
        {
          "id": "config",
          "action": "config.audit",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-16T06:28:39Z",
          "output": {
            "status": "ok",
            "summary": {
              "settings": 195,
              "mutable": 186,
              "read_only_or_managed": 9,
              "unclassified": 0,
              "unknown": 0,
              "invalid": 0,
              "missing_using_defaults": 0
            },
            "unclassified_keys": [],
            "unknown_keys": [],
            "invalid_values": [],
            "missing_using_defaults": []
          },
          "output_hash": "3782ec2317c0c8ee7598634310a2804d8aae4735f557498f9d3b8fae7c45e1e5",
          "completed_at": "2026-07-16T06:28:39Z"
        },
        {
          "id": "services",
          "action": "services.audit",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-16T06:28:39Z",
          "output": {
            "status": "ok",
            "summary": {
              "critical": 0,
              "high": 0,
              "medium": 0,
              "low": 0
            },
            "findings": []
          },
          "output_hash": "13dcc58bd528f3efa3e6e0fa0853a6eedc376f1f3685fbd4869cbb2b60382ee3",
          "completed_at": "2026-07-16T06:28:39Z"
        },
        {
          "id": "state",
          "action": "state.consistency",
          "status": "failed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-16T06:28:39Z"
        },
        {
          "id": "status",
          "action": "state.query",
          "status": "pending"
        },
        {
          "id": "substrate",
          "action": "substrate.preflight",
          "status": "pending"
        },
        {
          "id": "notices",
          "action": "substrate.notices",
          "status": "pending"
        },
        {
          "id": "goals",
          "action": "substrate.goals",
          "status": "pending"
        }
      ],
      "error": {
        "type": "ActionError",
        "message": "state consistency failed with 1 finding(s)"
      }
    },
    {
      "id": "WFR-235",
      "schema_version": "1.0",
      "workflow_id": "session.start",
      "workflow_version": 1,
      "definition_hash": "d0f98da02571e6dd27fec4aed92d3c82af9db75f8b90b997bf665635c7b7f6ca",
      "plan_hash": "b5072615ca3b7e9a3bd85d50d1f069d99ef2a9816b32c03a370745ed7a205536",
      "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
      "inputs": {},
      "idempotency_key": "hook:SessionStart:7bd0c286-8fd0-46d2-8507-a123bf316e08",
      "status": "completed",
      "attempt": 1,
      "created_at": "2026-07-16T06:28:40Z",
      "updated_at": "2026-07-16T06:28:43Z",
      "receipts": [
        {
          "step_id": "config",
          "action": "config.audit",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "3782ec2317c0c8ee7598634310a2804d8aae4735f557498f9d3b8fae7c45e1e5",
          "completed_at": "2026-07-16T06:28:41Z"
        },
        {
          "step_id": "services",
          "action": "services.audit",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "13dcc58bd528f3efa3e6e0fa0853a6eedc376f1f3685fbd4869cbb2b60382ee3",
          "completed_at": "2026-07-16T06:28:41Z"
        },
        {
          "step_id": "state",
          "action": "state.consistency",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "5a1c6e5246defb1b6b6b90ff734db95bece2886b408ab112ed9b8e67222d5568",
          "completed_at": "2026-07-16T06:28:42Z"
        },
        {
          "step_id": "status",
          "action": "state.query",
          "input_hash": "a15231a2142a2a9a85355a8b9cbbccffe01a9c9c2c2fd8c2bc2987cdc481564a",
          "output_hash": "92e598583f399689adb01dbd3947b08800ab1f04efa185e02f3d7d2d0ab4f96f",
          "completed_at": "2026-07-16T06:28:43Z"
        },
        {
          "step_id": "substrate",
          "action": "substrate.preflight",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "a6df426290b4549a59eecaa0519ead9bcc50b7fcb25bd2185ff6047960f19ccb",
          "completed_at": "2026-07-16T06:28:43Z"
        },
        {
          "step_id": "notices",
          "action": "substrate.notices",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "38b904a1cf83df048360fb2480571b749fd98d57e11f1afdffb5a74a78166fea",
          "completed_at": "2026-07-16T06:28:43Z"
        },
        {
          "step_id": "goals",
          "action": "substrate.goals",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "cdfd4de44a28140e686159f34f7b47975954c67e1d1efcef666e985acb136ed8",
          "completed_at": "2026-07-16T06:28:43Z"
        }
      ],
      "steps": [
        {
          "id": "config",
          "action": "config.audit",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-16T06:28:41Z",
          "output": {
            "status": "ok",
            "summary": {
              "settings": 195,
              "mutable": 186,
              "read_only_or_managed": 9,
              "unclassified": 0,
              "unknown": 0,
              "invalid": 0,
              "missing_using_defaults": 0
            },
            "unclassified_keys": [],
            "unknown_keys": [],
            "invalid_values": [],
            "missing_using_defaults": []
          },
          "output_hash": "3782ec2317c0c8ee7598634310a2804d8aae4735f557498f9d3b8fae7c45e1e5",
          "completed_at": "2026-07-16T06:28:41Z"
        },
        {
          "id": "services",
          "action": "services.audit",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-16T06:28:41Z",
          "output": {
            "status": "ok",
            "summary": {
              "critical": 0,
              "high": 0,
              "medium": 0,
              "low": 0
            },
            "findings": []
          },
          "output_hash": "13dcc58bd528f3efa3e6e0fa0853a6eedc376f1f3685fbd4869cbb2b60382ee3",
          "completed_at": "2026-07-16T06:28:41Z"
        },
        {
          "id": "state",
          "action": "state.consistency",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-16T06:28:41Z",
          "output": {
            "status": "ok",
            "repo_root": "D:\\Projects\\prd-plugin",
            "summary": {
              "errors": 0,
              "warnings": 0,
              "infos": 0
            },
            "findings": []
          },
          "output_hash": "5a1c6e5246defb1b6b6b90ff734db95bece2886b408ab112ed9b8e67222d5568",
          "completed_at": "2026-07-16T06:28:42Z"
        },
        {
          "id": "status",
          "action": "state.query",
          "status": "completed",
          "resolved_input_hash": "a15231a2142a2a9a85355a8b9cbbccffe01a9c9c2c2fd8c2bc2987cdc481564a",
          "started_at": "2026-07-16T06:28:42Z",
          "output": {
            "repo_root": "D:\\Projects\\prd-plugin",
            "autonomy_level": "autonomous",
            "requests_by_status": {
              "accepted": 2,
              "deferred": 1,
              "implemented": 80,
              "proposed": 1,
              "rejected": 1
            },
            "active_tracking": [
              "TRK-115"
            ],
            "tracking_branches": [],
            "tracking_branch_counts": {},
            "tracking_branch_errors": [],
            "open_health": [],
            "stale_count": 0,
            "skill_usage": {
              "project-decision-policy": 1,
              "project-request-intake": 1,
              "project-test-driven-implementation": 1,
              "project-verification-before-completion": 1,
              "project-llm-wiki": 1
            },
            "wiki_backfill_pending": false,
            "version_update": null
          },
          "output_hash": "92e598583f399689adb01dbd3947b08800ab1f04efa185e02f3d7d2d0ab4f96f",
          "completed_at": "2026-07-16T06:28:43Z"
        },
        {
          "id": "substrate",
          "action": "substrate.preflight",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-16T06:28:43Z",
          "output": {
            "status": "disabled",
            "services": {
              "status": "ok",
              "summary": {
                "critical": 0,
                "high": 0,
                "medium": 0,
                "low": 0
              },
              "findings": []
            },
            "policy": {
              "configured": {
                "enabled": false,
                "mode": "off",
                "capabilities": [
                  "records",
                  "graph",
                  "events"
                ],
                "contract_version": 2,
                "require_source_refs": true,
                "endpoint": "http://127.0.0.1:47124",
                "manual_url": "http://127.0.0.1:47124/utcp.json",
                "knowledge_browse_url": "http://127.0.0.1:5276",
                "auth_env": "AI_COLLAB_API_KEY",
                "timeout_seconds": 5,
                "max_result_bytes": 1048576,
                "cache_ttl_seconds": 60,
                "fallback": "local",
                "automation": {
                  "discovery_on_session_start": true,
                  "knowledge_recall": true,
                  "memory_recall": true,
                  "context_enrichment": true,
                  "notices_on_session_start": false,
                  "goals_sync": false,
                  "telemetry_on_maintenance": false,
                  "reporting_dispatch": true,
                  "judgment_dispatch": true,
                  "verification_execution": true
                }
              },
              "active": false,
              "effective_mode": "off",
              "effective_capabilities": []
            }
          },
          "output_hash": "a6df426290b4549a59eecaa0519ead9bcc50b7fcb25bd2185ff6047960f19ccb",
          "completed_at": "2026-07-16T06:28:43Z"
        },
        {
          "id": "notices",
          "action": "substrate.notices",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-16T06:28:43Z",
          "output": {
            "status": "disabled"
          },
          "output_hash": "38b904a1cf83df048360fb2480571b749fd98d57e11f1afdffb5a74a78166fea",
          "completed_at": "2026-07-16T06:28:43Z"
        },
        {
          "id": "goals",
          "action": "substrate.goals",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-16T06:28:43Z",
          "output": {
            "status": "disabled",
            "created": 0,
            "observed": 0,
            "results": []
          },
          "output_hash": "cdfd4de44a28140e686159f34f7b47975954c67e1d1efcef666e985acb136ed8",
          "completed_at": "2026-07-16T06:28:43Z"
        }
      ],
      "completed_at": "2026-07-16T06:28:43Z"
    },
    {
      "id": "WFR-236",
      "schema_version": "1.0",
      "workflow_id": "session.start",
      "workflow_version": 1,
      "definition_hash": "d0f98da02571e6dd27fec4aed92d3c82af9db75f8b90b997bf665635c7b7f6ca",
      "plan_hash": "b5072615ca3b7e9a3bd85d50d1f069d99ef2a9816b32c03a370745ed7a205536",
      "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
      "inputs": {},
      "idempotency_key": "hook:SessionStart:60ee1cdb-bbe1-4398-a446-f583252e726a",
      "status": "completed",
      "attempt": 1,
      "created_at": "2026-07-16T06:29:18Z",
      "updated_at": "2026-07-16T06:29:20Z",
      "receipts": [
        {
          "step_id": "config",
          "action": "config.audit",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "3782ec2317c0c8ee7598634310a2804d8aae4735f557498f9d3b8fae7c45e1e5",
          "completed_at": "2026-07-16T06:29:19Z"
        },
        {
          "step_id": "services",
          "action": "services.audit",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "13dcc58bd528f3efa3e6e0fa0853a6eedc376f1f3685fbd4869cbb2b60382ee3",
          "completed_at": "2026-07-16T06:29:19Z"
        },
        {
          "step_id": "state",
          "action": "state.consistency",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "5a1c6e5246defb1b6b6b90ff734db95bece2886b408ab112ed9b8e67222d5568",
          "completed_at": "2026-07-16T06:29:19Z"
        },
        {
          "step_id": "status",
          "action": "state.query",
          "input_hash": "a15231a2142a2a9a85355a8b9cbbccffe01a9c9c2c2fd8c2bc2987cdc481564a",
          "output_hash": "92e598583f399689adb01dbd3947b08800ab1f04efa185e02f3d7d2d0ab4f96f",
          "completed_at": "2026-07-16T06:29:20Z"
        },
        {
          "step_id": "substrate",
          "action": "substrate.preflight",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "a6df426290b4549a59eecaa0519ead9bcc50b7fcb25bd2185ff6047960f19ccb",
          "completed_at": "2026-07-16T06:29:20Z"
        },
        {
          "step_id": "notices",
          "action": "substrate.notices",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "38b904a1cf83df048360fb2480571b749fd98d57e11f1afdffb5a74a78166fea",
          "completed_at": "2026-07-16T06:29:20Z"
        },
        {
          "step_id": "goals",
          "action": "substrate.goals",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "cdfd4de44a28140e686159f34f7b47975954c67e1d1efcef666e985acb136ed8",
          "completed_at": "2026-07-16T06:29:20Z"
        }
      ],
      "steps": [
        {
          "id": "config",
          "action": "config.audit",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-16T06:29:19Z",
          "output": {
            "status": "ok",
            "summary": {
              "settings": 195,
              "mutable": 186,
              "read_only_or_managed": 9,
              "unclassified": 0,
              "unknown": 0,
              "invalid": 0,
              "missing_using_defaults": 0
            },
            "unclassified_keys": [],
            "unknown_keys": [],
            "invalid_values": [],
            "missing_using_defaults": []
          },
          "output_hash": "3782ec2317c0c8ee7598634310a2804d8aae4735f557498f9d3b8fae7c45e1e5",
          "completed_at": "2026-07-16T06:29:19Z"
        },
        {
          "id": "services",
          "action": "services.audit",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-16T06:29:19Z",
          "output": {
            "status": "ok",
            "summary": {
              "critical": 0,
              "high": 0,
              "medium": 0,
              "low": 0
            },
            "findings": []
          },
          "output_hash": "13dcc58bd528f3efa3e6e0fa0853a6eedc376f1f3685fbd4869cbb2b60382ee3",
          "completed_at": "2026-07-16T06:29:19Z"
        },
        {
          "id": "state",
          "action": "state.consistency",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-16T06:29:19Z",
          "output": {
            "status": "ok",
            "repo_root": "D:\\Projects\\prd-plugin",
            "summary": {
              "errors": 0,
              "warnings": 0,
              "infos": 0
            },
            "findings": []
          },
          "output_hash": "5a1c6e5246defb1b6b6b90ff734db95bece2886b408ab112ed9b8e67222d5568",
          "completed_at": "2026-07-16T06:29:19Z"
        },
        {
          "id": "status",
          "action": "state.query",
          "status": "completed",
          "resolved_input_hash": "a15231a2142a2a9a85355a8b9cbbccffe01a9c9c2c2fd8c2bc2987cdc481564a",
          "started_at": "2026-07-16T06:29:19Z",
          "output": {
            "repo_root": "D:\\Projects\\prd-plugin",
            "autonomy_level": "autonomous",
            "requests_by_status": {
              "accepted": 2,
              "deferred": 1,
              "implemented": 80,
              "proposed": 1,
              "rejected": 1
            },
            "active_tracking": [
              "TRK-115"
            ],
            "tracking_branches": [],
            "tracking_branch_counts": {},
            "tracking_branch_errors": [],
            "open_health": [],
            "stale_count": 0,
            "skill_usage": {
              "project-decision-policy": 1,
              "project-request-intake": 1,
              "project-test-driven-implementation": 1,
              "project-verification-before-completion": 1,
              "project-llm-wiki": 1
            },
            "wiki_backfill_pending": false,
            "version_update": null
          },
          "output_hash": "92e598583f399689adb01dbd3947b08800ab1f04efa185e02f3d7d2d0ab4f96f",
          "completed_at": "2026-07-16T06:29:20Z"
        },
        {
          "id": "substrate",
          "action": "substrate.preflight",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-16T06:29:20Z",
          "output": {
            "status": "disabled",
            "services": {
              "status": "ok",
              "summary": {
                "critical": 0,
                "high": 0,
                "medium": 0,
                "low": 0
              },
              "findings": []
            },
            "policy": {
              "configured": {
                "enabled": false,
                "mode": "off",
                "capabilities": [
                  "records",
                  "graph",
                  "events"
                ],
                "contract_version": 2,
                "require_source_refs": true,
                "endpoint": "http://127.0.0.1:47124",
                "manual_url": "http://127.0.0.1:47124/utcp.json",
                "knowledge_browse_url": "http://127.0.0.1:5276",
                "auth_env": "AI_COLLAB_API_KEY",
                "timeout_seconds": 5,
                "max_result_bytes": 1048576,
                "cache_ttl_seconds": 60,
                "fallback": "local",
                "automation": {
                  "discovery_on_session_start": true,
                  "knowledge_recall": true,
                  "memory_recall": true,
                  "context_enrichment": true,
                  "notices_on_session_start": false,
                  "goals_sync": false,
                  "telemetry_on_maintenance": false,
                  "reporting_dispatch": true,
                  "judgment_dispatch": true,
                  "verification_execution": true
                }
              },
              "active": false,
              "effective_mode": "off",
              "effective_capabilities": []
            }
          },
          "output_hash": "a6df426290b4549a59eecaa0519ead9bcc50b7fcb25bd2185ff6047960f19ccb",
          "completed_at": "2026-07-16T06:29:20Z"
        },
        {
          "id": "notices",
          "action": "substrate.notices",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-16T06:29:20Z",
          "output": {
            "status": "disabled"
          },
          "output_hash": "38b904a1cf83df048360fb2480571b749fd98d57e11f1afdffb5a74a78166fea",
          "completed_at": "2026-07-16T06:29:20Z"
        },
        {
          "id": "goals",
          "action": "substrate.goals",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-16T06:29:20Z",
          "output": {
            "status": "disabled",
            "created": 0,
            "observed": 0,
            "results": []
          },
          "output_hash": "cdfd4de44a28140e686159f34f7b47975954c67e1d1efcef666e985acb136ed8",
          "completed_at": "2026-07-16T06:29:20Z"
        }
      ],
      "completed_at": "2026-07-16T06:29:20Z"
    },
    {
      "id": "WFR-237",
      "schema_version": "1.0",
      "workflow_id": "session.stop",
      "workflow_version": 1,
      "definition_hash": "0cef7bb3e28321be8f85375c154955a69310ce297e47de3f3b8dd48f77a2f07d",
      "plan_hash": "a5e1d77ac734217487fc418e29c7163f4e81178e25d171e70cd4c999d527d3e8",
      "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
      "inputs": {},
      "idempotency_key": "hook:Stop:60ee1cdb-bbe1-4398-a446-f583252e726a",
      "status": "completed",
      "attempt": 1,
      "created_at": "2026-07-16T06:31:26Z",
      "updated_at": "2026-07-16T06:31:27Z",
      "receipts": [
        {
          "step_id": "state",
          "action": "state.consistency",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "5a1c6e5246defb1b6b6b90ff734db95bece2886b408ab112ed9b8e67222d5568",
          "completed_at": "2026-07-16T06:31:26Z"
        },
        {
          "step_id": "goals",
          "action": "substrate.goals",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "cdfd4de44a28140e686159f34f7b47975954c67e1d1efcef666e985acb136ed8",
          "completed_at": "2026-07-16T06:31:26Z"
        },
        {
          "step_id": "staleness",
          "action": "staleness.audit",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "1e81cb0ffd0a4d04626920a203b38d2d23a264cd43e807a85d375d69cae8a658",
          "completed_at": "2026-07-16T06:31:27Z"
        },
        {
          "step_id": "reflections",
          "action": "reflection.list",
          "input_hash": "0172e841ab4c13b3a4061f073f9d68a716ec87a8a5d52fde41823385e0582573",
          "output_hash": "c1b6b635c0bab21120657277f14ef6f839909875f307a3745fa48aee2bd6e449",
          "completed_at": "2026-07-16T06:31:27Z"
        },
        {
          "step_id": "bundle",
          "action": "reporting.bundle",
          "input_hash": "aed8ebb688dc3c085dd978d7c4120572173c3cb87e75919e4a937dcca6ef9457",
          "output_hash": "058efa50df9a2c032e7da2bbc3375c9d413f738b05c6a52bcff5402fc8851cc4",
          "completed_at": "2026-07-16T06:31:27Z"
        },
        {
          "step_id": "delegated",
          "action": "reporting.delegate",
          "input_hash": "67d11f87de5d700ad1ec278b53bfb604284b7aa528ef20b0e1ebea6bbadb5f8a",
          "output_hash": "e6085059f197def80ae95add1f328418107bea5436c9bd002530043646a3a95c",
          "completed_at": "2026-07-16T06:31:27Z"
        }
      ],
      "steps": [
        {
          "id": "state",
          "action": "state.consistency",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-16T06:31:26Z",
          "output": {
            "status": "ok",
            "repo_root": "D:\\Projects\\prd-plugin",
            "summary": {
              "errors": 0,
              "warnings": 0,
              "infos": 0
            },
            "findings": []
          },
          "output_hash": "5a1c6e5246defb1b6b6b90ff734db95bece2886b408ab112ed9b8e67222d5568",
          "completed_at": "2026-07-16T06:31:26Z"
        },
        {
          "id": "goals",
          "action": "substrate.goals",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-16T06:31:26Z",
          "output": {
            "status": "disabled",
            "created": 0,
            "observed": 0,
            "results": []
          },
          "output_hash": "cdfd4de44a28140e686159f34f7b47975954c67e1d1efcef666e985acb136ed8",
          "completed_at": "2026-07-16T06:31:26Z"
        },
        {
          "id": "staleness",
          "action": "staleness.audit",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-16T06:31:27Z",
          "output": {
            "status": "ok",
            "repo_root": "D:\\Projects\\prd-plugin",
            "counts": {
              "stale": 0
            },
            "stale": []
          },
          "output_hash": "1e81cb0ffd0a4d04626920a203b38d2d23a264cd43e807a85d375d69cae8a658",
          "completed_at": "2026-07-16T06:31:27Z"
        },
        {
          "id": "reflections",
          "action": "reflection.list",
          "status": "completed",
          "resolved_input_hash": "0172e841ab4c13b3a4061f073f9d68a716ec87a8a5d52fde41823385e0582573",
          "started_at": "2026-07-16T06:31:27Z",
          "output": {
            "enabled": false,
            "on_stop": true,
            "max_questions_per_stop": 5,
            "categories": [
              {
                "id": "behaviour_quality",
                "name": "Behaviour quality",
                "enabled": true,
                "question_count": 3
              },
              {
                "id": "harness_friction",
                "name": "Harness friction",
                "enabled": true,
                "question_count": 2
              }
            ],
            "questions": [
              {
                "id": "RFQ-001",
                "text": "Based on the work you just carried out, would you classify your behaviour as good? Answer yes or no and cite observable evidence.",
                "enabled": true,
                "category_id": "behaviour_quality",
                "category_name": "Behaviour quality",
                "effective_enabled": false
              },
              {
                "id": "RFQ-002",
                "text": "If you answered no, what could you do differently to correct your behaviour?",
                "enabled": true,
                "category_id": "behaviour_quality",
                "category_name": "Behaviour quality",
                "effective_enabled": false
              },
              {
                "id": "RFQ-003",
                "text": "Would another attempt using the identified good behaviours materially improve the outcome? Answer yes or no and state the next corrective action if yes.",
                "enabled": true,
                "category_id": "behaviour_quality",
                "category_name": "Behaviour quality",
                "effective_enabled": false
              },
              {
                "id": "RFQ-004",
                "text": "What harness friction points made this work more difficult?",
                "enabled": true,
                "category_id": "harness_friction",
                "category_name": "Harness friction",
                "effective_enabled": false
              },
              {
                "id": "RFQ-005",
                "text": "What up to three changes would most improve friction in the harness?",
                "enabled": true,
                "category_id": "harness_friction",
                "category_name": "Harness friction",
                "effective_enabled": false
              }
            ]
          },
          "output_hash": "c1b6b635c0bab21120657277f14ef6f839909875f307a3745fa48aee2bd6e449",
          "completed_at": "2026-07-16T06:31:27Z"
        },
        {
          "id": "bundle",
          "action": "reporting.bundle",
          "status": "completed",
          "resolved_input_hash": "aed8ebb688dc3c085dd978d7c4120572173c3cb87e75919e4a937dcca6ef9457",
          "started_at": "2026-07-16T06:31:27Z",
          "output": {
            "contract_version": 1,
            "task": "session_summary",
            "repo": "prd-plugin",
            "policy": {
              "enabled": false,
              "executor": "ai-collab",
              "contract_version": 1,
              "profile": "fast-capable",
              "tasks": [
                "report_summary",
                "session_summary",
                "wiki_synthesis",
                "triage_draft"
              ],
              "fallback": "main",
              "require_source_refs": true,
              "max_input_tokens": 12000,
              "max_output_tokens": 1500,
              "timeout_seconds": 30
            },
            "facts": {
              "requests_by_status": {
                "accepted": 2,
                "deferred": 1,
                "implemented": 80,
                "proposed": 1,
                "rejected": 1
              },
              "active_requests": [
                {
                  "id": "REQ-072",
                  "status": "proposed",
                  "severity": "low",
                  "summary": "opencode run-until-done: session.idle is a non-blocking notification, so the stop guard can't force continuation on opencode (currently degrades to a printed reminder, 0.5.95). Investigate whether opencode exposes any vetoable/continuation mechanism (a different event, a permission hook, or a 'continue' API) to enforce run-until-done, or accept the reminder as the permanent ceiling. Low priority — user rarely uses opencode."
                },
                {
                  "id": "REQ-102",
                  "status": "accepted",
                  "severity": "high",
                  "summary": "Ship staleness_audit.py wherever enabled downstream workflows require it"
                },
                {
                  "id": "REQ-103",
                  "status": "accepted",
                  "severity": "medium",
                  "summary": "Reconcile UTCP and MCP registrations through one canonical PRD tool-surface contract"
                }
              ],
              "active_tracking": [
                {
                  "id": "TRK-115",
                  "type": "goal",
                  "status": "active",
                  "summary": "Fix downstream Stop workflow dependency delivery and reconcile UTCP/MCP tool surfaces through a canonical contract"
                }
              ],
              "open_health": [],
              "evidence_count": 105,
              "decision_count": 10
            },
            "findings": [],
            "source_refs": [
              ".prd_plugin/config.json",
              ".prd_plugin/state/decisions.json",
              ".prd_plugin/state/evidence.json",
              ".prd_plugin/state/health.json",
              ".prd_plugin/state/requests.json",
              ".prd_plugin/state/tracking.json",
              "REQ-072",
              "REQ-102",
              "REQ-103",
              "TRK-115"
            ],
            "constraints": {
              "max_input_tokens": 12000,
              "max_output_tokens": 1500,
              "timeout_seconds": 30,
              "require_source_refs": true,
              "no_project_state_writes": true,
              "no_secrets_or_local_session_content": true
            }
          },
          "output_hash": "058efa50df9a2c032e7da2bbc3375c9d413f738b05c6a52bcff5402fc8851cc4",
          "completed_at": "2026-07-16T06:31:27Z"
        },
        {
          "id": "delegated",
          "action": "reporting.delegate",
          "status": "completed",
          "resolved_input_hash": "67d11f87de5d700ad1ec278b53bfb604284b7aa528ef20b0e1ebea6bbadb5f8a",
          "started_at": "2026-07-16T06:31:27Z",
          "output": {
            "status": "fallback",
            "action": "main",
            "reason": "disabled"
          },
          "output_hash": "e6085059f197def80ae95add1f328418107bea5436c9bd002530043646a3a95c",
          "completed_at": "2026-07-16T06:31:27Z"
        }
      ],
      "completed_at": "2026-07-16T06:31:27Z"
    },
    {
      "id": "WFR-238",
      "schema_version": "1.0",
      "workflow_id": "session.start",
      "workflow_version": 1,
      "definition_hash": "d0f98da02571e6dd27fec4aed92d3c82af9db75f8b90b997bf665635c7b7f6ca",
      "plan_hash": "b5072615ca3b7e9a3bd85d50d1f069d99ef2a9816b32c03a370745ed7a205536",
      "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
      "inputs": {},
      "idempotency_key": "hook:SessionStart:019f6b45-135a-7983-981b-f9afa98c2653",
      "status": "completed",
      "attempt": 1,
      "created_at": "2026-07-16T14:12:01Z",
      "updated_at": "2026-07-16T14:12:06Z",
      "receipts": [
        {
          "step_id": "config",
          "action": "config.audit",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "3782ec2317c0c8ee7598634310a2804d8aae4735f557498f9d3b8fae7c45e1e5",
          "completed_at": "2026-07-16T14:12:01Z"
        },
        {
          "step_id": "services",
          "action": "services.audit",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "13dcc58bd528f3efa3e6e0fa0853a6eedc376f1f3685fbd4869cbb2b60382ee3",
          "completed_at": "2026-07-16T14:12:01Z"
        },
        {
          "step_id": "state",
          "action": "state.consistency",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "5a1c6e5246defb1b6b6b90ff734db95bece2886b408ab112ed9b8e67222d5568",
          "completed_at": "2026-07-16T14:12:05Z"
        },
        {
          "step_id": "status",
          "action": "state.query",
          "input_hash": "a15231a2142a2a9a85355a8b9cbbccffe01a9c9c2c2fd8c2bc2987cdc481564a",
          "output_hash": "e612fd24ae96a43d20bfe419de740c28c46e9e641ce9e590c5c2ca32d932b393",
          "completed_at": "2026-07-16T14:12:05Z"
        },
        {
          "step_id": "substrate",
          "action": "substrate.preflight",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "a6df426290b4549a59eecaa0519ead9bcc50b7fcb25bd2185ff6047960f19ccb",
          "completed_at": "2026-07-16T14:12:05Z"
        },
        {
          "step_id": "notices",
          "action": "substrate.notices",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "38b904a1cf83df048360fb2480571b749fd98d57e11f1afdffb5a74a78166fea",
          "completed_at": "2026-07-16T14:12:06Z"
        },
        {
          "step_id": "goals",
          "action": "substrate.goals",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "cdfd4de44a28140e686159f34f7b47975954c67e1d1efcef666e985acb136ed8",
          "completed_at": "2026-07-16T14:12:06Z"
        }
      ],
      "steps": [
        {
          "id": "config",
          "action": "config.audit",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-16T14:12:01Z",
          "output": {
            "status": "ok",
            "summary": {
              "settings": 195,
              "mutable": 186,
              "read_only_or_managed": 9,
              "unclassified": 0,
              "unknown": 0,
              "invalid": 0,
              "missing_using_defaults": 0
            },
            "unclassified_keys": [],
            "unknown_keys": [],
            "invalid_values": [],
            "missing_using_defaults": []
          },
          "output_hash": "3782ec2317c0c8ee7598634310a2804d8aae4735f557498f9d3b8fae7c45e1e5",
          "completed_at": "2026-07-16T14:12:01Z"
        },
        {
          "id": "services",
          "action": "services.audit",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-16T14:12:01Z",
          "output": {
            "status": "ok",
            "summary": {
              "critical": 0,
              "high": 0,
              "medium": 0,
              "low": 0
            },
            "findings": []
          },
          "output_hash": "13dcc58bd528f3efa3e6e0fa0853a6eedc376f1f3685fbd4869cbb2b60382ee3",
          "completed_at": "2026-07-16T14:12:01Z"
        },
        {
          "id": "state",
          "action": "state.consistency",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-16T14:12:01Z",
          "output": {
            "status": "ok",
            "repo_root": "D:\\Projects\\prd-plugin",
            "summary": {
              "errors": 0,
              "warnings": 0,
              "infos": 0
            },
            "findings": []
          },
          "output_hash": "5a1c6e5246defb1b6b6b90ff734db95bece2886b408ab112ed9b8e67222d5568",
          "completed_at": "2026-07-16T14:12:05Z"
        },
        {
          "id": "status",
          "action": "state.query",
          "status": "completed",
          "resolved_input_hash": "a15231a2142a2a9a85355a8b9cbbccffe01a9c9c2c2fd8c2bc2987cdc481564a",
          "started_at": "2026-07-16T14:12:05Z",
          "output": {
            "repo_root": "D:\\Projects\\prd-plugin",
            "autonomy_level": "autonomous",
            "requests_by_status": {
              "deferred": 1,
              "implemented": 89,
              "in_review": 1,
              "proposed": 3,
              "rejected": 1
            },
            "active_tracking": [],
            "tracking_branches": [],
            "tracking_branch_counts": {},
            "tracking_branch_errors": [],
            "open_health": [],
            "stale_count": 0,
            "skill_usage": {
              "project-decision-policy": 1,
              "project-request-intake": 1,
              "project-test-driven-implementation": 1,
              "project-verification-before-completion": 1,
              "project-llm-wiki": 1
            },
            "wiki_backfill_pending": false,
            "version_update": null
          },
          "output_hash": "e612fd24ae96a43d20bfe419de740c28c46e9e641ce9e590c5c2ca32d932b393",
          "completed_at": "2026-07-16T14:12:05Z"
        },
        {
          "id": "substrate",
          "action": "substrate.preflight",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-16T14:12:05Z",
          "output": {
            "status": "disabled",
            "services": {
              "status": "ok",
              "summary": {
                "critical": 0,
                "high": 0,
                "medium": 0,
                "low": 0
              },
              "findings": []
            },
            "policy": {
              "configured": {
                "enabled": false,
                "mode": "off",
                "capabilities": [
                  "records",
                  "graph",
                  "events"
                ],
                "contract_version": 2,
                "require_source_refs": true,
                "endpoint": "http://127.0.0.1:47124",
                "manual_url": "http://127.0.0.1:47124/utcp.json",
                "knowledge_browse_url": "http://127.0.0.1:5276",
                "auth_env": "AI_COLLAB_API_KEY",
                "timeout_seconds": 5,
                "max_result_bytes": 1048576,
                "cache_ttl_seconds": 60,
                "fallback": "local",
                "automation": {
                  "discovery_on_session_start": true,
                  "knowledge_recall": true,
                  "memory_recall": true,
                  "context_enrichment": true,
                  "notices_on_session_start": false,
                  "goals_sync": false,
                  "telemetry_on_maintenance": false,
                  "reporting_dispatch": true,
                  "judgment_dispatch": true,
                  "verification_execution": true
                }
              },
              "active": false,
              "effective_mode": "off",
              "effective_capabilities": []
            }
          },
          "output_hash": "a6df426290b4549a59eecaa0519ead9bcc50b7fcb25bd2185ff6047960f19ccb",
          "completed_at": "2026-07-16T14:12:05Z"
        },
        {
          "id": "notices",
          "action": "substrate.notices",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-16T14:12:06Z",
          "output": {
            "status": "disabled"
          },
          "output_hash": "38b904a1cf83df048360fb2480571b749fd98d57e11f1afdffb5a74a78166fea",
          "completed_at": "2026-07-16T14:12:06Z"
        },
        {
          "id": "goals",
          "action": "substrate.goals",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-16T14:12:06Z",
          "output": {
            "status": "disabled",
            "created": 0,
            "observed": 0,
            "results": []
          },
          "output_hash": "cdfd4de44a28140e686159f34f7b47975954c67e1d1efcef666e985acb136ed8",
          "completed_at": "2026-07-16T14:12:06Z"
        }
      ],
      "completed_at": "2026-07-16T14:12:06Z"
    },
    {
      "id": "WFR-239",
      "schema_version": "1.0",
      "workflow_id": "session.stop",
      "workflow_version": 1,
      "definition_hash": "0cef7bb3e28321be8f85375c154955a69310ce297e47de3f3b8dd48f77a2f07d",
      "plan_hash": "a5e1d77ac734217487fc418e29c7163f4e81178e25d171e70cd4c999d527d3e8",
      "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
      "inputs": {},
      "idempotency_key": "hook:Stop:019f6b45-135a-7983-981b-f9afa98c2653",
      "status": "completed",
      "attempt": 1,
      "created_at": "2026-07-16T14:12:12Z",
      "updated_at": "2026-07-16T14:12:14Z",
      "receipts": [
        {
          "step_id": "state",
          "action": "state.consistency",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "5a1c6e5246defb1b6b6b90ff734db95bece2886b408ab112ed9b8e67222d5568",
          "completed_at": "2026-07-16T14:12:13Z"
        },
        {
          "step_id": "goals",
          "action": "substrate.goals",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "cdfd4de44a28140e686159f34f7b47975954c67e1d1efcef666e985acb136ed8",
          "completed_at": "2026-07-16T14:12:13Z"
        },
        {
          "step_id": "staleness",
          "action": "staleness.audit",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "1e81cb0ffd0a4d04626920a203b38d2d23a264cd43e807a85d375d69cae8a658",
          "completed_at": "2026-07-16T14:12:13Z"
        },
        {
          "step_id": "reflections",
          "action": "reflection.list",
          "input_hash": "0172e841ab4c13b3a4061f073f9d68a716ec87a8a5d52fde41823385e0582573",
          "output_hash": "c1b6b635c0bab21120657277f14ef6f839909875f307a3745fa48aee2bd6e449",
          "completed_at": "2026-07-16T14:12:13Z"
        },
        {
          "step_id": "bundle",
          "action": "reporting.bundle",
          "input_hash": "aed8ebb688dc3c085dd978d7c4120572173c3cb87e75919e4a937dcca6ef9457",
          "output_hash": "1e3c2b097cfbf440bcb114e6be9886a2a6ec5d728d22160f832b484b7e1392bb",
          "completed_at": "2026-07-16T14:12:14Z"
        },
        {
          "step_id": "delegated",
          "action": "reporting.delegate",
          "input_hash": "0fae08474dd6b273c8eac1063dd656e7f54bae999e800ca8a6bc0821f4994f9d",
          "output_hash": "e6085059f197def80ae95add1f328418107bea5436c9bd002530043646a3a95c",
          "completed_at": "2026-07-16T14:12:14Z"
        }
      ],
      "steps": [
        {
          "id": "state",
          "action": "state.consistency",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-16T14:12:12Z",
          "output": {
            "status": "ok",
            "repo_root": "D:\\Projects\\prd-plugin",
            "summary": {
              "errors": 0,
              "warnings": 0,
              "infos": 0
            },
            "findings": []
          },
          "output_hash": "5a1c6e5246defb1b6b6b90ff734db95bece2886b408ab112ed9b8e67222d5568",
          "completed_at": "2026-07-16T14:12:13Z"
        },
        {
          "id": "goals",
          "action": "substrate.goals",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-16T14:12:13Z",
          "output": {
            "status": "disabled",
            "created": 0,
            "observed": 0,
            "results": []
          },
          "output_hash": "cdfd4de44a28140e686159f34f7b47975954c67e1d1efcef666e985acb136ed8",
          "completed_at": "2026-07-16T14:12:13Z"
        },
        {
          "id": "staleness",
          "action": "staleness.audit",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-16T14:12:13Z",
          "output": {
            "status": "ok",
            "repo_root": "D:\\Projects\\prd-plugin",
            "counts": {
              "stale": 0
            },
            "stale": []
          },
          "output_hash": "1e81cb0ffd0a4d04626920a203b38d2d23a264cd43e807a85d375d69cae8a658",
          "completed_at": "2026-07-16T14:12:13Z"
        },
        {
          "id": "reflections",
          "action": "reflection.list",
          "status": "completed",
          "resolved_input_hash": "0172e841ab4c13b3a4061f073f9d68a716ec87a8a5d52fde41823385e0582573",
          "started_at": "2026-07-16T14:12:13Z",
          "output": {
            "enabled": false,
            "on_stop": true,
            "max_questions_per_stop": 5,
            "categories": [
              {
                "id": "behaviour_quality",
                "name": "Behaviour quality",
                "enabled": true,
                "question_count": 3
              },
              {
                "id": "harness_friction",
                "name": "Harness friction",
                "enabled": true,
                "question_count": 2
              }
            ],
            "questions": [
              {
                "id": "RFQ-001",
                "text": "Based on the work you just carried out, would you classify your behaviour as good? Answer yes or no and cite observable evidence.",
                "enabled": true,
                "category_id": "behaviour_quality",
                "category_name": "Behaviour quality",
                "effective_enabled": false
              },
              {
                "id": "RFQ-002",
                "text": "If you answered no, what could you do differently to correct your behaviour?",
                "enabled": true,
                "category_id": "behaviour_quality",
                "category_name": "Behaviour quality",
                "effective_enabled": false
              },
              {
                "id": "RFQ-003",
                "text": "Would another attempt using the identified good behaviours materially improve the outcome? Answer yes or no and state the next corrective action if yes.",
                "enabled": true,
                "category_id": "behaviour_quality",
                "category_name": "Behaviour quality",
                "effective_enabled": false
              },
              {
                "id": "RFQ-004",
                "text": "What harness friction points made this work more difficult?",
                "enabled": true,
                "category_id": "harness_friction",
                "category_name": "Harness friction",
                "effective_enabled": false
              },
              {
                "id": "RFQ-005",
                "text": "What up to three changes would most improve friction in the harness?",
                "enabled": true,
                "category_id": "harness_friction",
                "category_name": "Harness friction",
                "effective_enabled": false
              }
            ]
          },
          "output_hash": "c1b6b635c0bab21120657277f14ef6f839909875f307a3745fa48aee2bd6e449",
          "completed_at": "2026-07-16T14:12:13Z"
        },
        {
          "id": "bundle",
          "action": "reporting.bundle",
          "status": "completed",
          "resolved_input_hash": "aed8ebb688dc3c085dd978d7c4120572173c3cb87e75919e4a937dcca6ef9457",
          "started_at": "2026-07-16T14:12:14Z",
          "output": {
            "contract_version": 1,
            "task": "session_summary",
            "repo": "prd-plugin",
            "policy": {
              "enabled": false,
              "executor": "ai-collab",
              "contract_version": 1,
              "profile": "fast-capable",
              "tasks": [
                "report_summary",
                "session_summary",
                "wiki_synthesis",
                "triage_draft"
              ],
              "fallback": "main",
              "require_source_refs": true,
              "max_input_tokens": 12000,
              "max_output_tokens": 1500,
              "timeout_seconds": 30
            },
            "facts": {
              "requests_by_status": {
                "deferred": 1,
                "implemented": 89,
                "in_review": 1,
                "proposed": 3,
                "rejected": 1
              },
              "active_requests": [
                {
                  "id": "REQ-072",
                  "status": "proposed",
                  "severity": "low",
                  "summary": "opencode run-until-done: session.idle is a non-blocking notification, so the stop guard can't force continuation on opencode (currently degrades to a printed reminder, 0.5.95). Investigate whether opencode exposes any vetoable/continuation mechanism (a different event, a permission hook, or a 'continue' API) to enforce run-until-done, or accept the reminder as the permanent ceiling. Low priority — user rarely uses opencode."
                },
                {
                  "id": "REQ-104",
                  "status": "in_review",
                  "severity": "high",
                  "summary": "Ordinary-workspace chat has no path into the planning pipeline: owner-approved collaboration decisions land in scratchpads, room agents cannot allocate REQ/PRD/TRK ids past the parallel-worker mutation boundary, and goal-administrator grants detach when participant identity changes on runner restart"
                },
                {
                  "id": "REQ-107",
                  "status": "proposed",
                  "severity": "high",
                  "summary": "Adopt the UTCP-first tool architecture (user-directed): one UTCP manual is the source of truth for ALL prd-plugin tools including mutations, the MCP surface is generated by the official @utcp/mcp-bridge, and the 2,323-line hand-written MCP server is retired as a hand-maintained surface"
                },
                {
                  "id": "REQ-113",
                  "status": "proposed",
                  "severity": "low",
                  "summary": "Request-thread close has no validated tool: finished threads stay 'unresolved' in message_check forever unless state is hand-flipped; add a thread-close capability to the UTCP-first tool catalog (REQ-107), not as a new hand-written MCP handler"
                }
              ],
              "active_tracking": [],
              "open_health": [],
              "evidence_count": 125,
              "decision_count": 10
            },
            "findings": [],
            "source_refs": [
              ".prd_plugin/config.json",
              ".prd_plugin/state/decisions.json",
              ".prd_plugin/state/evidence.json",
              ".prd_plugin/state/health.json",
              ".prd_plugin/state/requests.json",
              ".prd_plugin/state/tracking.json",
              "REQ-072",
              "REQ-104",
              "REQ-107",
              "REQ-113"
            ],
            "constraints": {
              "max_input_tokens": 12000,
              "max_output_tokens": 1500,
              "timeout_seconds": 30,
              "require_source_refs": true,
              "no_project_state_writes": true,
              "no_secrets_or_local_session_content": true
            }
          },
          "output_hash": "1e3c2b097cfbf440bcb114e6be9886a2a6ec5d728d22160f832b484b7e1392bb",
          "completed_at": "2026-07-16T14:12:14Z"
        },
        {
          "id": "delegated",
          "action": "reporting.delegate",
          "status": "completed",
          "resolved_input_hash": "0fae08474dd6b273c8eac1063dd656e7f54bae999e800ca8a6bc0821f4994f9d",
          "started_at": "2026-07-16T14:12:14Z",
          "output": {
            "status": "fallback",
            "action": "main",
            "reason": "disabled"
          },
          "output_hash": "e6085059f197def80ae95add1f328418107bea5436c9bd002530043646a3a95c",
          "completed_at": "2026-07-16T14:12:14Z"
        }
      ],
      "completed_at": "2026-07-16T14:12:14Z"
    },
    {
      "id": "WFR-240",
      "schema_version": "1.0",
      "workflow_id": "session.start",
      "workflow_version": 1,
      "definition_hash": "d0f98da02571e6dd27fec4aed92d3c82af9db75f8b90b997bf665635c7b7f6ca",
      "plan_hash": "b5072615ca3b7e9a3bd85d50d1f069d99ef2a9816b32c03a370745ed7a205536",
      "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
      "inputs": {},
      "idempotency_key": "hook:SessionStart:019f6b45-6356-79e2-a9f0-ce76afa1609d",
      "status": "completed",
      "attempt": 1,
      "created_at": "2026-07-16T14:12:21Z",
      "updated_at": "2026-07-16T14:12:23Z",
      "receipts": [
        {
          "step_id": "config",
          "action": "config.audit",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "3782ec2317c0c8ee7598634310a2804d8aae4735f557498f9d3b8fae7c45e1e5",
          "completed_at": "2026-07-16T14:12:21Z"
        },
        {
          "step_id": "services",
          "action": "services.audit",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "13dcc58bd528f3efa3e6e0fa0853a6eedc376f1f3685fbd4869cbb2b60382ee3",
          "completed_at": "2026-07-16T14:12:21Z"
        },
        {
          "step_id": "state",
          "action": "state.consistency",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "5a1c6e5246defb1b6b6b90ff734db95bece2886b408ab112ed9b8e67222d5568",
          "completed_at": "2026-07-16T14:12:22Z"
        },
        {
          "step_id": "status",
          "action": "state.query",
          "input_hash": "a15231a2142a2a9a85355a8b9cbbccffe01a9c9c2c2fd8c2bc2987cdc481564a",
          "output_hash": "e612fd24ae96a43d20bfe419de740c28c46e9e641ce9e590c5c2ca32d932b393",
          "completed_at": "2026-07-16T14:12:22Z"
        },
        {
          "step_id": "substrate",
          "action": "substrate.preflight",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "a6df426290b4549a59eecaa0519ead9bcc50b7fcb25bd2185ff6047960f19ccb",
          "completed_at": "2026-07-16T14:12:22Z"
        },
        {
          "step_id": "notices",
          "action": "substrate.notices",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "38b904a1cf83df048360fb2480571b749fd98d57e11f1afdffb5a74a78166fea",
          "completed_at": "2026-07-16T14:12:22Z"
        },
        {
          "step_id": "goals",
          "action": "substrate.goals",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "cdfd4de44a28140e686159f34f7b47975954c67e1d1efcef666e985acb136ed8",
          "completed_at": "2026-07-16T14:12:22Z"
        }
      ],
      "steps": [
        {
          "id": "config",
          "action": "config.audit",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-16T14:12:21Z",
          "output": {
            "status": "ok",
            "summary": {
              "settings": 195,
              "mutable": 186,
              "read_only_or_managed": 9,
              "unclassified": 0,
              "unknown": 0,
              "invalid": 0,
              "missing_using_defaults": 0
            },
            "unclassified_keys": [],
            "unknown_keys": [],
            "invalid_values": [],
            "missing_using_defaults": []
          },
          "output_hash": "3782ec2317c0c8ee7598634310a2804d8aae4735f557498f9d3b8fae7c45e1e5",
          "completed_at": "2026-07-16T14:12:21Z"
        },
        {
          "id": "services",
          "action": "services.audit",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-16T14:12:21Z",
          "output": {
            "status": "ok",
            "summary": {
              "critical": 0,
              "high": 0,
              "medium": 0,
              "low": 0
            },
            "findings": []
          },
          "output_hash": "13dcc58bd528f3efa3e6e0fa0853a6eedc376f1f3685fbd4869cbb2b60382ee3",
          "completed_at": "2026-07-16T14:12:21Z"
        },
        {
          "id": "state",
          "action": "state.consistency",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-16T14:12:21Z",
          "output": {
            "status": "ok",
            "repo_root": "D:\\Projects\\prd-plugin",
            "summary": {
              "errors": 0,
              "warnings": 0,
              "infos": 0
            },
            "findings": []
          },
          "output_hash": "5a1c6e5246defb1b6b6b90ff734db95bece2886b408ab112ed9b8e67222d5568",
          "completed_at": "2026-07-16T14:12:22Z"
        },
        {
          "id": "status",
          "action": "state.query",
          "status": "completed",
          "resolved_input_hash": "a15231a2142a2a9a85355a8b9cbbccffe01a9c9c2c2fd8c2bc2987cdc481564a",
          "started_at": "2026-07-16T14:12:22Z",
          "output": {
            "repo_root": "D:\\Projects\\prd-plugin",
            "autonomy_level": "autonomous",
            "requests_by_status": {
              "deferred": 1,
              "implemented": 89,
              "in_review": 1,
              "proposed": 3,
              "rejected": 1
            },
            "active_tracking": [],
            "tracking_branches": [],
            "tracking_branch_counts": {},
            "tracking_branch_errors": [],
            "open_health": [],
            "stale_count": 0,
            "skill_usage": {
              "project-decision-policy": 1,
              "project-request-intake": 1,
              "project-test-driven-implementation": 1,
              "project-verification-before-completion": 1,
              "project-llm-wiki": 1
            },
            "wiki_backfill_pending": false,
            "version_update": null
          },
          "output_hash": "e612fd24ae96a43d20bfe419de740c28c46e9e641ce9e590c5c2ca32d932b393",
          "completed_at": "2026-07-16T14:12:22Z"
        },
        {
          "id": "substrate",
          "action": "substrate.preflight",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-16T14:12:22Z",
          "output": {
            "status": "disabled",
            "services": {
              "status": "ok",
              "summary": {
                "critical": 0,
                "high": 0,
                "medium": 0,
                "low": 0
              },
              "findings": []
            },
            "policy": {
              "configured": {
                "enabled": false,
                "mode": "off",
                "capabilities": [
                  "records",
                  "graph",
                  "events"
                ],
                "contract_version": 2,
                "require_source_refs": true,
                "endpoint": "http://127.0.0.1:47124",
                "manual_url": "http://127.0.0.1:47124/utcp.json",
                "knowledge_browse_url": "http://127.0.0.1:5276",
                "auth_env": "AI_COLLAB_API_KEY",
                "timeout_seconds": 5,
                "max_result_bytes": 1048576,
                "cache_ttl_seconds": 60,
                "fallback": "local",
                "automation": {
                  "discovery_on_session_start": true,
                  "knowledge_recall": true,
                  "memory_recall": true,
                  "context_enrichment": true,
                  "notices_on_session_start": false,
                  "goals_sync": false,
                  "telemetry_on_maintenance": false,
                  "reporting_dispatch": true,
                  "judgment_dispatch": true,
                  "verification_execution": true
                }
              },
              "active": false,
              "effective_mode": "off",
              "effective_capabilities": []
            }
          },
          "output_hash": "a6df426290b4549a59eecaa0519ead9bcc50b7fcb25bd2185ff6047960f19ccb",
          "completed_at": "2026-07-16T14:12:22Z"
        },
        {
          "id": "notices",
          "action": "substrate.notices",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-16T14:12:22Z",
          "output": {
            "status": "disabled"
          },
          "output_hash": "38b904a1cf83df048360fb2480571b749fd98d57e11f1afdffb5a74a78166fea",
          "completed_at": "2026-07-16T14:12:22Z"
        },
        {
          "id": "goals",
          "action": "substrate.goals",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-16T14:12:22Z",
          "output": {
            "status": "disabled",
            "created": 0,
            "observed": 0,
            "results": []
          },
          "output_hash": "cdfd4de44a28140e686159f34f7b47975954c67e1d1efcef666e985acb136ed8",
          "completed_at": "2026-07-16T14:12:22Z"
        }
      ],
      "completed_at": "2026-07-16T14:12:23Z"
    },
    {
      "id": "WFR-241",
      "schema_version": "1.0",
      "workflow_id": "session.stop",
      "workflow_version": 1,
      "definition_hash": "0cef7bb3e28321be8f85375c154955a69310ce297e47de3f3b8dd48f77a2f07d",
      "plan_hash": "a5e1d77ac734217487fc418e29c7163f4e81178e25d171e70cd4c999d527d3e8",
      "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
      "inputs": {},
      "idempotency_key": "hook:Stop:019f6b45-6356-79e2-a9f0-ce76afa1609d",
      "status": "completed",
      "attempt": 1,
      "created_at": "2026-07-16T14:12:27Z",
      "updated_at": "2026-07-16T14:12:29Z",
      "receipts": [
        {
          "step_id": "state",
          "action": "state.consistency",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "5a1c6e5246defb1b6b6b90ff734db95bece2886b408ab112ed9b8e67222d5568",
          "completed_at": "2026-07-16T14:12:28Z"
        },
        {
          "step_id": "goals",
          "action": "substrate.goals",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "cdfd4de44a28140e686159f34f7b47975954c67e1d1efcef666e985acb136ed8",
          "completed_at": "2026-07-16T14:12:29Z"
        },
        {
          "step_id": "staleness",
          "action": "staleness.audit",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "1e81cb0ffd0a4d04626920a203b38d2d23a264cd43e807a85d375d69cae8a658",
          "completed_at": "2026-07-16T14:12:29Z"
        },
        {
          "step_id": "reflections",
          "action": "reflection.list",
          "input_hash": "0172e841ab4c13b3a4061f073f9d68a716ec87a8a5d52fde41823385e0582573",
          "output_hash": "c1b6b635c0bab21120657277f14ef6f839909875f307a3745fa48aee2bd6e449",
          "completed_at": "2026-07-16T14:12:29Z"
        },
        {
          "step_id": "bundle",
          "action": "reporting.bundle",
          "input_hash": "aed8ebb688dc3c085dd978d7c4120572173c3cb87e75919e4a937dcca6ef9457",
          "output_hash": "1e3c2b097cfbf440bcb114e6be9886a2a6ec5d728d22160f832b484b7e1392bb",
          "completed_at": "2026-07-16T14:12:29Z"
        },
        {
          "step_id": "delegated",
          "action": "reporting.delegate",
          "input_hash": "0fae08474dd6b273c8eac1063dd656e7f54bae999e800ca8a6bc0821f4994f9d",
          "output_hash": "e6085059f197def80ae95add1f328418107bea5436c9bd002530043646a3a95c",
          "completed_at": "2026-07-16T14:12:29Z"
        }
      ],
      "steps": [
        {
          "id": "state",
          "action": "state.consistency",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-16T14:12:28Z",
          "output": {
            "status": "ok",
            "repo_root": "D:\\Projects\\prd-plugin",
            "summary": {
              "errors": 0,
              "warnings": 0,
              "infos": 0
            },
            "findings": []
          },
          "output_hash": "5a1c6e5246defb1b6b6b90ff734db95bece2886b408ab112ed9b8e67222d5568",
          "completed_at": "2026-07-16T14:12:28Z"
        },
        {
          "id": "goals",
          "action": "substrate.goals",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-16T14:12:29Z",
          "output": {
            "status": "disabled",
            "created": 0,
            "observed": 0,
            "results": []
          },
          "output_hash": "cdfd4de44a28140e686159f34f7b47975954c67e1d1efcef666e985acb136ed8",
          "completed_at": "2026-07-16T14:12:29Z"
        },
        {
          "id": "staleness",
          "action": "staleness.audit",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-16T14:12:29Z",
          "output": {
            "status": "ok",
            "repo_root": "D:\\Projects\\prd-plugin",
            "counts": {
              "stale": 0
            },
            "stale": []
          },
          "output_hash": "1e81cb0ffd0a4d04626920a203b38d2d23a264cd43e807a85d375d69cae8a658",
          "completed_at": "2026-07-16T14:12:29Z"
        },
        {
          "id": "reflections",
          "action": "reflection.list",
          "status": "completed",
          "resolved_input_hash": "0172e841ab4c13b3a4061f073f9d68a716ec87a8a5d52fde41823385e0582573",
          "started_at": "2026-07-16T14:12:29Z",
          "output": {
            "enabled": false,
            "on_stop": true,
            "max_questions_per_stop": 5,
            "categories": [
              {
                "id": "behaviour_quality",
                "name": "Behaviour quality",
                "enabled": true,
                "question_count": 3
              },
              {
                "id": "harness_friction",
                "name": "Harness friction",
                "enabled": true,
                "question_count": 2
              }
            ],
            "questions": [
              {
                "id": "RFQ-001",
                "text": "Based on the work you just carried out, would you classify your behaviour as good? Answer yes or no and cite observable evidence.",
                "enabled": true,
                "category_id": "behaviour_quality",
                "category_name": "Behaviour quality",
                "effective_enabled": false
              },
              {
                "id": "RFQ-002",
                "text": "If you answered no, what could you do differently to correct your behaviour?",
                "enabled": true,
                "category_id": "behaviour_quality",
                "category_name": "Behaviour quality",
                "effective_enabled": false
              },
              {
                "id": "RFQ-003",
                "text": "Would another attempt using the identified good behaviours materially improve the outcome? Answer yes or no and state the next corrective action if yes.",
                "enabled": true,
                "category_id": "behaviour_quality",
                "category_name": "Behaviour quality",
                "effective_enabled": false
              },
              {
                "id": "RFQ-004",
                "text": "What harness friction points made this work more difficult?",
                "enabled": true,
                "category_id": "harness_friction",
                "category_name": "Harness friction",
                "effective_enabled": false
              },
              {
                "id": "RFQ-005",
                "text": "What up to three changes would most improve friction in the harness?",
                "enabled": true,
                "category_id": "harness_friction",
                "category_name": "Harness friction",
                "effective_enabled": false
              }
            ]
          },
          "output_hash": "c1b6b635c0bab21120657277f14ef6f839909875f307a3745fa48aee2bd6e449",
          "completed_at": "2026-07-16T14:12:29Z"
        },
        {
          "id": "bundle",
          "action": "reporting.bundle",
          "status": "completed",
          "resolved_input_hash": "aed8ebb688dc3c085dd978d7c4120572173c3cb87e75919e4a937dcca6ef9457",
          "started_at": "2026-07-16T14:12:29Z",
          "output": {
            "contract_version": 1,
            "task": "session_summary",
            "repo": "prd-plugin",
            "policy": {
              "enabled": false,
              "executor": "ai-collab",
              "contract_version": 1,
              "profile": "fast-capable",
              "tasks": [
                "report_summary",
                "session_summary",
                "wiki_synthesis",
                "triage_draft"
              ],
              "fallback": "main",
              "require_source_refs": true,
              "max_input_tokens": 12000,
              "max_output_tokens": 1500,
              "timeout_seconds": 30
            },
            "facts": {
              "requests_by_status": {
                "deferred": 1,
                "implemented": 89,
                "in_review": 1,
                "proposed": 3,
                "rejected": 1
              },
              "active_requests": [
                {
                  "id": "REQ-072",
                  "status": "proposed",
                  "severity": "low",
                  "summary": "opencode run-until-done: session.idle is a non-blocking notification, so the stop guard can't force continuation on opencode (currently degrades to a printed reminder, 0.5.95). Investigate whether opencode exposes any vetoable/continuation mechanism (a different event, a permission hook, or a 'continue' API) to enforce run-until-done, or accept the reminder as the permanent ceiling. Low priority — user rarely uses opencode."
                },
                {
                  "id": "REQ-104",
                  "status": "in_review",
                  "severity": "high",
                  "summary": "Ordinary-workspace chat has no path into the planning pipeline: owner-approved collaboration decisions land in scratchpads, room agents cannot allocate REQ/PRD/TRK ids past the parallel-worker mutation boundary, and goal-administrator grants detach when participant identity changes on runner restart"
                },
                {
                  "id": "REQ-107",
                  "status": "proposed",
                  "severity": "high",
                  "summary": "Adopt the UTCP-first tool architecture (user-directed): one UTCP manual is the source of truth for ALL prd-plugin tools including mutations, the MCP surface is generated by the official @utcp/mcp-bridge, and the 2,323-line hand-written MCP server is retired as a hand-maintained surface"
                },
                {
                  "id": "REQ-113",
                  "status": "proposed",
                  "severity": "low",
                  "summary": "Request-thread close has no validated tool: finished threads stay 'unresolved' in message_check forever unless state is hand-flipped; add a thread-close capability to the UTCP-first tool catalog (REQ-107), not as a new hand-written MCP handler"
                }
              ],
              "active_tracking": [],
              "open_health": [],
              "evidence_count": 125,
              "decision_count": 10
            },
            "findings": [],
            "source_refs": [
              ".prd_plugin/config.json",
              ".prd_plugin/state/decisions.json",
              ".prd_plugin/state/evidence.json",
              ".prd_plugin/state/health.json",
              ".prd_plugin/state/requests.json",
              ".prd_plugin/state/tracking.json",
              "REQ-072",
              "REQ-104",
              "REQ-107",
              "REQ-113"
            ],
            "constraints": {
              "max_input_tokens": 12000,
              "max_output_tokens": 1500,
              "timeout_seconds": 30,
              "require_source_refs": true,
              "no_project_state_writes": true,
              "no_secrets_or_local_session_content": true
            }
          },
          "output_hash": "1e3c2b097cfbf440bcb114e6be9886a2a6ec5d728d22160f832b484b7e1392bb",
          "completed_at": "2026-07-16T14:12:29Z"
        },
        {
          "id": "delegated",
          "action": "reporting.delegate",
          "status": "completed",
          "resolved_input_hash": "0fae08474dd6b273c8eac1063dd656e7f54bae999e800ca8a6bc0821f4994f9d",
          "started_at": "2026-07-16T14:12:29Z",
          "output": {
            "status": "fallback",
            "action": "main",
            "reason": "disabled"
          },
          "output_hash": "e6085059f197def80ae95add1f328418107bea5436c9bd002530043646a3a95c",
          "completed_at": "2026-07-16T14:12:29Z"
        }
      ],
      "completed_at": "2026-07-16T14:12:29Z"
    },
    {
      "id": "WFR-242",
      "schema_version": "1.0",
      "workflow_id": "session.start",
      "workflow_version": 1,
      "definition_hash": "d0f98da02571e6dd27fec4aed92d3c82af9db75f8b90b997bf665635c7b7f6ca",
      "plan_hash": "b5072615ca3b7e9a3bd85d50d1f069d99ef2a9816b32c03a370745ed7a205536",
      "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
      "inputs": {},
      "idempotency_key": "hook:SessionStart:019f6b45-a08e-7fc1-ba9f-7f4d7792d124",
      "status": "completed",
      "attempt": 1,
      "created_at": "2026-07-16T14:12:36Z",
      "updated_at": "2026-07-16T14:12:38Z",
      "receipts": [
        {
          "step_id": "config",
          "action": "config.audit",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "3782ec2317c0c8ee7598634310a2804d8aae4735f557498f9d3b8fae7c45e1e5",
          "completed_at": "2026-07-16T14:12:36Z"
        },
        {
          "step_id": "services",
          "action": "services.audit",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "13dcc58bd528f3efa3e6e0fa0853a6eedc376f1f3685fbd4869cbb2b60382ee3",
          "completed_at": "2026-07-16T14:12:37Z"
        },
        {
          "step_id": "state",
          "action": "state.consistency",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "5a1c6e5246defb1b6b6b90ff734db95bece2886b408ab112ed9b8e67222d5568",
          "completed_at": "2026-07-16T14:12:37Z"
        },
        {
          "step_id": "status",
          "action": "state.query",
          "input_hash": "a15231a2142a2a9a85355a8b9cbbccffe01a9c9c2c2fd8c2bc2987cdc481564a",
          "output_hash": "e612fd24ae96a43d20bfe419de740c28c46e9e641ce9e590c5c2ca32d932b393",
          "completed_at": "2026-07-16T14:12:38Z"
        },
        {
          "step_id": "substrate",
          "action": "substrate.preflight",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "a6df426290b4549a59eecaa0519ead9bcc50b7fcb25bd2185ff6047960f19ccb",
          "completed_at": "2026-07-16T14:12:38Z"
        },
        {
          "step_id": "notices",
          "action": "substrate.notices",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "38b904a1cf83df048360fb2480571b749fd98d57e11f1afdffb5a74a78166fea",
          "completed_at": "2026-07-16T14:12:38Z"
        },
        {
          "step_id": "goals",
          "action": "substrate.goals",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "cdfd4de44a28140e686159f34f7b47975954c67e1d1efcef666e985acb136ed8",
          "completed_at": "2026-07-16T14:12:38Z"
        }
      ],
      "steps": [
        {
          "id": "config",
          "action": "config.audit",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-16T14:12:36Z",
          "output": {
            "status": "ok",
            "summary": {
              "settings": 195,
              "mutable": 186,
              "read_only_or_managed": 9,
              "unclassified": 0,
              "unknown": 0,
              "invalid": 0,
              "missing_using_defaults": 0
            },
            "unclassified_keys": [],
            "unknown_keys": [],
            "invalid_values": [],
            "missing_using_defaults": []
          },
          "output_hash": "3782ec2317c0c8ee7598634310a2804d8aae4735f557498f9d3b8fae7c45e1e5",
          "completed_at": "2026-07-16T14:12:36Z"
        },
        {
          "id": "services",
          "action": "services.audit",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-16T14:12:37Z",
          "output": {
            "status": "ok",
            "summary": {
              "critical": 0,
              "high": 0,
              "medium": 0,
              "low": 0
            },
            "findings": []
          },
          "output_hash": "13dcc58bd528f3efa3e6e0fa0853a6eedc376f1f3685fbd4869cbb2b60382ee3",
          "completed_at": "2026-07-16T14:12:37Z"
        },
        {
          "id": "state",
          "action": "state.consistency",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-16T14:12:37Z",
          "output": {
            "status": "ok",
            "repo_root": "D:\\Projects\\prd-plugin",
            "summary": {
              "errors": 0,
              "warnings": 0,
              "infos": 0
            },
            "findings": []
          },
          "output_hash": "5a1c6e5246defb1b6b6b90ff734db95bece2886b408ab112ed9b8e67222d5568",
          "completed_at": "2026-07-16T14:12:37Z"
        },
        {
          "id": "status",
          "action": "state.query",
          "status": "completed",
          "resolved_input_hash": "a15231a2142a2a9a85355a8b9cbbccffe01a9c9c2c2fd8c2bc2987cdc481564a",
          "started_at": "2026-07-16T14:12:37Z",
          "output": {
            "repo_root": "D:\\Projects\\prd-plugin",
            "autonomy_level": "autonomous",
            "requests_by_status": {
              "deferred": 1,
              "implemented": 89,
              "in_review": 1,
              "proposed": 3,
              "rejected": 1
            },
            "active_tracking": [],
            "tracking_branches": [],
            "tracking_branch_counts": {},
            "tracking_branch_errors": [],
            "open_health": [],
            "stale_count": 0,
            "skill_usage": {
              "project-decision-policy": 1,
              "project-request-intake": 1,
              "project-test-driven-implementation": 1,
              "project-verification-before-completion": 1,
              "project-llm-wiki": 1
            },
            "wiki_backfill_pending": false,
            "version_update": null
          },
          "output_hash": "e612fd24ae96a43d20bfe419de740c28c46e9e641ce9e590c5c2ca32d932b393",
          "completed_at": "2026-07-16T14:12:38Z"
        },
        {
          "id": "substrate",
          "action": "substrate.preflight",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-16T14:12:38Z",
          "output": {
            "status": "disabled",
            "services": {
              "status": "ok",
              "summary": {
                "critical": 0,
                "high": 0,
                "medium": 0,
                "low": 0
              },
              "findings": []
            },
            "policy": {
              "configured": {
                "enabled": false,
                "mode": "off",
                "capabilities": [
                  "records",
                  "graph",
                  "events"
                ],
                "contract_version": 2,
                "require_source_refs": true,
                "endpoint": "http://127.0.0.1:47124",
                "manual_url": "http://127.0.0.1:47124/utcp.json",
                "knowledge_browse_url": "http://127.0.0.1:5276",
                "auth_env": "AI_COLLAB_API_KEY",
                "timeout_seconds": 5,
                "max_result_bytes": 1048576,
                "cache_ttl_seconds": 60,
                "fallback": "local",
                "automation": {
                  "discovery_on_session_start": true,
                  "knowledge_recall": true,
                  "memory_recall": true,
                  "context_enrichment": true,
                  "notices_on_session_start": false,
                  "goals_sync": false,
                  "telemetry_on_maintenance": false,
                  "reporting_dispatch": true,
                  "judgment_dispatch": true,
                  "verification_execution": true
                }
              },
              "active": false,
              "effective_mode": "off",
              "effective_capabilities": []
            }
          },
          "output_hash": "a6df426290b4549a59eecaa0519ead9bcc50b7fcb25bd2185ff6047960f19ccb",
          "completed_at": "2026-07-16T14:12:38Z"
        },
        {
          "id": "notices",
          "action": "substrate.notices",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-16T14:12:38Z",
          "output": {
            "status": "disabled"
          },
          "output_hash": "38b904a1cf83df048360fb2480571b749fd98d57e11f1afdffb5a74a78166fea",
          "completed_at": "2026-07-16T14:12:38Z"
        },
        {
          "id": "goals",
          "action": "substrate.goals",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-16T14:12:38Z",
          "output": {
            "status": "disabled",
            "created": 0,
            "observed": 0,
            "results": []
          },
          "output_hash": "cdfd4de44a28140e686159f34f7b47975954c67e1d1efcef666e985acb136ed8",
          "completed_at": "2026-07-16T14:12:38Z"
        }
      ],
      "completed_at": "2026-07-16T14:12:38Z"
    },
    {
      "id": "WFR-243",
      "schema_version": "1.0",
      "workflow_id": "session.stop",
      "workflow_version": 1,
      "definition_hash": "0cef7bb3e28321be8f85375c154955a69310ce297e47de3f3b8dd48f77a2f07d",
      "plan_hash": "a5e1d77ac734217487fc418e29c7163f4e81178e25d171e70cd4c999d527d3e8",
      "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
      "inputs": {},
      "idempotency_key": "hook:Stop:019f6b45-a08e-7fc1-ba9f-7f4d7792d124",
      "status": "completed",
      "attempt": 1,
      "created_at": "2026-07-16T14:12:42Z",
      "updated_at": "2026-07-16T14:12:44Z",
      "receipts": [
        {
          "step_id": "state",
          "action": "state.consistency",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "5a1c6e5246defb1b6b6b90ff734db95bece2886b408ab112ed9b8e67222d5568",
          "completed_at": "2026-07-16T14:12:43Z"
        },
        {
          "step_id": "goals",
          "action": "substrate.goals",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "cdfd4de44a28140e686159f34f7b47975954c67e1d1efcef666e985acb136ed8",
          "completed_at": "2026-07-16T14:12:43Z"
        },
        {
          "step_id": "staleness",
          "action": "staleness.audit",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "1e81cb0ffd0a4d04626920a203b38d2d23a264cd43e807a85d375d69cae8a658",
          "completed_at": "2026-07-16T14:12:43Z"
        },
        {
          "step_id": "reflections",
          "action": "reflection.list",
          "input_hash": "0172e841ab4c13b3a4061f073f9d68a716ec87a8a5d52fde41823385e0582573",
          "output_hash": "c1b6b635c0bab21120657277f14ef6f839909875f307a3745fa48aee2bd6e449",
          "completed_at": "2026-07-16T14:12:43Z"
        },
        {
          "step_id": "bundle",
          "action": "reporting.bundle",
          "input_hash": "aed8ebb688dc3c085dd978d7c4120572173c3cb87e75919e4a937dcca6ef9457",
          "output_hash": "1e3c2b097cfbf440bcb114e6be9886a2a6ec5d728d22160f832b484b7e1392bb",
          "completed_at": "2026-07-16T14:12:43Z"
        },
        {
          "step_id": "delegated",
          "action": "reporting.delegate",
          "input_hash": "0fae08474dd6b273c8eac1063dd656e7f54bae999e800ca8a6bc0821f4994f9d",
          "output_hash": "e6085059f197def80ae95add1f328418107bea5436c9bd002530043646a3a95c",
          "completed_at": "2026-07-16T14:12:44Z"
        }
      ],
      "steps": [
        {
          "id": "state",
          "action": "state.consistency",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-16T14:12:42Z",
          "output": {
            "status": "ok",
            "repo_root": "D:\\Projects\\prd-plugin",
            "summary": {
              "errors": 0,
              "warnings": 0,
              "infos": 0
            },
            "findings": []
          },
          "output_hash": "5a1c6e5246defb1b6b6b90ff734db95bece2886b408ab112ed9b8e67222d5568",
          "completed_at": "2026-07-16T14:12:43Z"
        },
        {
          "id": "goals",
          "action": "substrate.goals",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-16T14:12:43Z",
          "output": {
            "status": "disabled",
            "created": 0,
            "observed": 0,
            "results": []
          },
          "output_hash": "cdfd4de44a28140e686159f34f7b47975954c67e1d1efcef666e985acb136ed8",
          "completed_at": "2026-07-16T14:12:43Z"
        },
        {
          "id": "staleness",
          "action": "staleness.audit",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-16T14:12:43Z",
          "output": {
            "status": "ok",
            "repo_root": "D:\\Projects\\prd-plugin",
            "counts": {
              "stale": 0
            },
            "stale": []
          },
          "output_hash": "1e81cb0ffd0a4d04626920a203b38d2d23a264cd43e807a85d375d69cae8a658",
          "completed_at": "2026-07-16T14:12:43Z"
        },
        {
          "id": "reflections",
          "action": "reflection.list",
          "status": "completed",
          "resolved_input_hash": "0172e841ab4c13b3a4061f073f9d68a716ec87a8a5d52fde41823385e0582573",
          "started_at": "2026-07-16T14:12:43Z",
          "output": {
            "enabled": false,
            "on_stop": true,
            "max_questions_per_stop": 5,
            "categories": [
              {
                "id": "behaviour_quality",
                "name": "Behaviour quality",
                "enabled": true,
                "question_count": 3
              },
              {
                "id": "harness_friction",
                "name": "Harness friction",
                "enabled": true,
                "question_count": 2
              }
            ],
            "questions": [
              {
                "id": "RFQ-001",
                "text": "Based on the work you just carried out, would you classify your behaviour as good? Answer yes or no and cite observable evidence.",
                "enabled": true,
                "category_id": "behaviour_quality",
                "category_name": "Behaviour quality",
                "effective_enabled": false
              },
              {
                "id": "RFQ-002",
                "text": "If you answered no, what could you do differently to correct your behaviour?",
                "enabled": true,
                "category_id": "behaviour_quality",
                "category_name": "Behaviour quality",
                "effective_enabled": false
              },
              {
                "id": "RFQ-003",
                "text": "Would another attempt using the identified good behaviours materially improve the outcome? Answer yes or no and state the next corrective action if yes.",
                "enabled": true,
                "category_id": "behaviour_quality",
                "category_name": "Behaviour quality",
                "effective_enabled": false
              },
              {
                "id": "RFQ-004",
                "text": "What harness friction points made this work more difficult?",
                "enabled": true,
                "category_id": "harness_friction",
                "category_name": "Harness friction",
                "effective_enabled": false
              },
              {
                "id": "RFQ-005",
                "text": "What up to three changes would most improve friction in the harness?",
                "enabled": true,
                "category_id": "harness_friction",
                "category_name": "Harness friction",
                "effective_enabled": false
              }
            ]
          },
          "output_hash": "c1b6b635c0bab21120657277f14ef6f839909875f307a3745fa48aee2bd6e449",
          "completed_at": "2026-07-16T14:12:43Z"
        },
        {
          "id": "bundle",
          "action": "reporting.bundle",
          "status": "completed",
          "resolved_input_hash": "aed8ebb688dc3c085dd978d7c4120572173c3cb87e75919e4a937dcca6ef9457",
          "started_at": "2026-07-16T14:12:43Z",
          "output": {
            "contract_version": 1,
            "task": "session_summary",
            "repo": "prd-plugin",
            "policy": {
              "enabled": false,
              "executor": "ai-collab",
              "contract_version": 1,
              "profile": "fast-capable",
              "tasks": [
                "report_summary",
                "session_summary",
                "wiki_synthesis",
                "triage_draft"
              ],
              "fallback": "main",
              "require_source_refs": true,
              "max_input_tokens": 12000,
              "max_output_tokens": 1500,
              "timeout_seconds": 30
            },
            "facts": {
              "requests_by_status": {
                "deferred": 1,
                "implemented": 89,
                "in_review": 1,
                "proposed": 3,
                "rejected": 1
              },
              "active_requests": [
                {
                  "id": "REQ-072",
                  "status": "proposed",
                  "severity": "low",
                  "summary": "opencode run-until-done: session.idle is a non-blocking notification, so the stop guard can't force continuation on opencode (currently degrades to a printed reminder, 0.5.95). Investigate whether opencode exposes any vetoable/continuation mechanism (a different event, a permission hook, or a 'continue' API) to enforce run-until-done, or accept the reminder as the permanent ceiling. Low priority — user rarely uses opencode."
                },
                {
                  "id": "REQ-104",
                  "status": "in_review",
                  "severity": "high",
                  "summary": "Ordinary-workspace chat has no path into the planning pipeline: owner-approved collaboration decisions land in scratchpads, room agents cannot allocate REQ/PRD/TRK ids past the parallel-worker mutation boundary, and goal-administrator grants detach when participant identity changes on runner restart"
                },
                {
                  "id": "REQ-107",
                  "status": "proposed",
                  "severity": "high",
                  "summary": "Adopt the UTCP-first tool architecture (user-directed): one UTCP manual is the source of truth for ALL prd-plugin tools including mutations, the MCP surface is generated by the official @utcp/mcp-bridge, and the 2,323-line hand-written MCP server is retired as a hand-maintained surface"
                },
                {
                  "id": "REQ-113",
                  "status": "proposed",
                  "severity": "low",
                  "summary": "Request-thread close has no validated tool: finished threads stay 'unresolved' in message_check forever unless state is hand-flipped; add a thread-close capability to the UTCP-first tool catalog (REQ-107), not as a new hand-written MCP handler"
                }
              ],
              "active_tracking": [],
              "open_health": [],
              "evidence_count": 125,
              "decision_count": 10
            },
            "findings": [],
            "source_refs": [
              ".prd_plugin/config.json",
              ".prd_plugin/state/decisions.json",
              ".prd_plugin/state/evidence.json",
              ".prd_plugin/state/health.json",
              ".prd_plugin/state/requests.json",
              ".prd_plugin/state/tracking.json",
              "REQ-072",
              "REQ-104",
              "REQ-107",
              "REQ-113"
            ],
            "constraints": {
              "max_input_tokens": 12000,
              "max_output_tokens": 1500,
              "timeout_seconds": 30,
              "require_source_refs": true,
              "no_project_state_writes": true,
              "no_secrets_or_local_session_content": true
            }
          },
          "output_hash": "1e3c2b097cfbf440bcb114e6be9886a2a6ec5d728d22160f832b484b7e1392bb",
          "completed_at": "2026-07-16T14:12:43Z"
        },
        {
          "id": "delegated",
          "action": "reporting.delegate",
          "status": "completed",
          "resolved_input_hash": "0fae08474dd6b273c8eac1063dd656e7f54bae999e800ca8a6bc0821f4994f9d",
          "started_at": "2026-07-16T14:12:44Z",
          "output": {
            "status": "fallback",
            "action": "main",
            "reason": "disabled"
          },
          "output_hash": "e6085059f197def80ae95add1f328418107bea5436c9bd002530043646a3a95c",
          "completed_at": "2026-07-16T14:12:44Z"
        }
      ],
      "completed_at": "2026-07-16T14:12:44Z"
    },
    {
      "id": "WFR-244",
      "schema_version": "1.0",
      "workflow_id": "session.start",
      "workflow_version": 1,
      "definition_hash": "d0f98da02571e6dd27fec4aed92d3c82af9db75f8b90b997bf665635c7b7f6ca",
      "plan_hash": "b5072615ca3b7e9a3bd85d50d1f069d99ef2a9816b32c03a370745ed7a205536",
      "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
      "inputs": {},
      "idempotency_key": "hook:SessionStart:019f6b45-d9d1-7a82-8725-af2f5b9db0fb",
      "status": "completed",
      "attempt": 1,
      "created_at": "2026-07-16T14:12:51Z",
      "updated_at": "2026-07-16T14:12:53Z",
      "receipts": [
        {
          "step_id": "config",
          "action": "config.audit",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "3782ec2317c0c8ee7598634310a2804d8aae4735f557498f9d3b8fae7c45e1e5",
          "completed_at": "2026-07-16T14:12:51Z"
        },
        {
          "step_id": "services",
          "action": "services.audit",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "13dcc58bd528f3efa3e6e0fa0853a6eedc376f1f3685fbd4869cbb2b60382ee3",
          "completed_at": "2026-07-16T14:12:51Z"
        },
        {
          "step_id": "state",
          "action": "state.consistency",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "5a1c6e5246defb1b6b6b90ff734db95bece2886b408ab112ed9b8e67222d5568",
          "completed_at": "2026-07-16T14:12:52Z"
        },
        {
          "step_id": "status",
          "action": "state.query",
          "input_hash": "a15231a2142a2a9a85355a8b9cbbccffe01a9c9c2c2fd8c2bc2987cdc481564a",
          "output_hash": "e612fd24ae96a43d20bfe419de740c28c46e9e641ce9e590c5c2ca32d932b393",
          "completed_at": "2026-07-16T14:12:53Z"
        },
        {
          "step_id": "substrate",
          "action": "substrate.preflight",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "a6df426290b4549a59eecaa0519ead9bcc50b7fcb25bd2185ff6047960f19ccb",
          "completed_at": "2026-07-16T14:12:53Z"
        },
        {
          "step_id": "notices",
          "action": "substrate.notices",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "38b904a1cf83df048360fb2480571b749fd98d57e11f1afdffb5a74a78166fea",
          "completed_at": "2026-07-16T14:12:53Z"
        },
        {
          "step_id": "goals",
          "action": "substrate.goals",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "cdfd4de44a28140e686159f34f7b47975954c67e1d1efcef666e985acb136ed8",
          "completed_at": "2026-07-16T14:12:53Z"
        }
      ],
      "steps": [
        {
          "id": "config",
          "action": "config.audit",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-16T14:12:51Z",
          "output": {
            "status": "ok",
            "summary": {
              "settings": 195,
              "mutable": 186,
              "read_only_or_managed": 9,
              "unclassified": 0,
              "unknown": 0,
              "invalid": 0,
              "missing_using_defaults": 0
            },
            "unclassified_keys": [],
            "unknown_keys": [],
            "invalid_values": [],
            "missing_using_defaults": []
          },
          "output_hash": "3782ec2317c0c8ee7598634310a2804d8aae4735f557498f9d3b8fae7c45e1e5",
          "completed_at": "2026-07-16T14:12:51Z"
        },
        {
          "id": "services",
          "action": "services.audit",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-16T14:12:51Z",
          "output": {
            "status": "ok",
            "summary": {
              "critical": 0,
              "high": 0,
              "medium": 0,
              "low": 0
            },
            "findings": []
          },
          "output_hash": "13dcc58bd528f3efa3e6e0fa0853a6eedc376f1f3685fbd4869cbb2b60382ee3",
          "completed_at": "2026-07-16T14:12:51Z"
        },
        {
          "id": "state",
          "action": "state.consistency",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-16T14:12:52Z",
          "output": {
            "status": "ok",
            "repo_root": "D:\\Projects\\prd-plugin",
            "summary": {
              "errors": 0,
              "warnings": 0,
              "infos": 0
            },
            "findings": []
          },
          "output_hash": "5a1c6e5246defb1b6b6b90ff734db95bece2886b408ab112ed9b8e67222d5568",
          "completed_at": "2026-07-16T14:12:52Z"
        },
        {
          "id": "status",
          "action": "state.query",
          "status": "completed",
          "resolved_input_hash": "a15231a2142a2a9a85355a8b9cbbccffe01a9c9c2c2fd8c2bc2987cdc481564a",
          "started_at": "2026-07-16T14:12:52Z",
          "output": {
            "repo_root": "D:\\Projects\\prd-plugin",
            "autonomy_level": "autonomous",
            "requests_by_status": {
              "deferred": 1,
              "implemented": 89,
              "in_review": 1,
              "proposed": 3,
              "rejected": 1
            },
            "active_tracking": [],
            "tracking_branches": [],
            "tracking_branch_counts": {},
            "tracking_branch_errors": [],
            "open_health": [],
            "stale_count": 0,
            "skill_usage": {
              "project-decision-policy": 1,
              "project-request-intake": 1,
              "project-test-driven-implementation": 1,
              "project-verification-before-completion": 1,
              "project-llm-wiki": 1
            },
            "wiki_backfill_pending": false,
            "version_update": null
          },
          "output_hash": "e612fd24ae96a43d20bfe419de740c28c46e9e641ce9e590c5c2ca32d932b393",
          "completed_at": "2026-07-16T14:12:53Z"
        },
        {
          "id": "substrate",
          "action": "substrate.preflight",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-16T14:12:53Z",
          "output": {
            "status": "disabled",
            "services": {
              "status": "ok",
              "summary": {
                "critical": 0,
                "high": 0,
                "medium": 0,
                "low": 0
              },
              "findings": []
            },
            "policy": {
              "configured": {
                "enabled": false,
                "mode": "off",
                "capabilities": [
                  "records",
                  "graph",
                  "events"
                ],
                "contract_version": 2,
                "require_source_refs": true,
                "endpoint": "http://127.0.0.1:47124",
                "manual_url": "http://127.0.0.1:47124/utcp.json",
                "knowledge_browse_url": "http://127.0.0.1:5276",
                "auth_env": "AI_COLLAB_API_KEY",
                "timeout_seconds": 5,
                "max_result_bytes": 1048576,
                "cache_ttl_seconds": 60,
                "fallback": "local",
                "automation": {
                  "discovery_on_session_start": true,
                  "knowledge_recall": true,
                  "memory_recall": true,
                  "context_enrichment": true,
                  "notices_on_session_start": false,
                  "goals_sync": false,
                  "telemetry_on_maintenance": false,
                  "reporting_dispatch": true,
                  "judgment_dispatch": true,
                  "verification_execution": true
                }
              },
              "active": false,
              "effective_mode": "off",
              "effective_capabilities": []
            }
          },
          "output_hash": "a6df426290b4549a59eecaa0519ead9bcc50b7fcb25bd2185ff6047960f19ccb",
          "completed_at": "2026-07-16T14:12:53Z"
        },
        {
          "id": "notices",
          "action": "substrate.notices",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-16T14:12:53Z",
          "output": {
            "status": "disabled"
          },
          "output_hash": "38b904a1cf83df048360fb2480571b749fd98d57e11f1afdffb5a74a78166fea",
          "completed_at": "2026-07-16T14:12:53Z"
        },
        {
          "id": "goals",
          "action": "substrate.goals",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-16T14:12:53Z",
          "output": {
            "status": "disabled",
            "created": 0,
            "observed": 0,
            "results": []
          },
          "output_hash": "cdfd4de44a28140e686159f34f7b47975954c67e1d1efcef666e985acb136ed8",
          "completed_at": "2026-07-16T14:12:53Z"
        }
      ],
      "completed_at": "2026-07-16T14:12:53Z"
    },
    {
      "id": "WFR-245",
      "schema_version": "1.0",
      "workflow_id": "session.stop",
      "workflow_version": 1,
      "definition_hash": "0cef7bb3e28321be8f85375c154955a69310ce297e47de3f3b8dd48f77a2f07d",
      "plan_hash": "a5e1d77ac734217487fc418e29c7163f4e81178e25d171e70cd4c999d527d3e8",
      "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
      "inputs": {},
      "idempotency_key": "hook:Stop:019f6b45-d9d1-7a82-8725-af2f5b9db0fb",
      "status": "completed",
      "attempt": 1,
      "created_at": "2026-07-16T14:12:58Z",
      "updated_at": "2026-07-16T14:12:59Z",
      "receipts": [
        {
          "step_id": "state",
          "action": "state.consistency",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "5a1c6e5246defb1b6b6b90ff734db95bece2886b408ab112ed9b8e67222d5568",
          "completed_at": "2026-07-16T14:12:59Z"
        },
        {
          "step_id": "goals",
          "action": "substrate.goals",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "cdfd4de44a28140e686159f34f7b47975954c67e1d1efcef666e985acb136ed8",
          "completed_at": "2026-07-16T14:12:59Z"
        },
        {
          "step_id": "staleness",
          "action": "staleness.audit",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "1e81cb0ffd0a4d04626920a203b38d2d23a264cd43e807a85d375d69cae8a658",
          "completed_at": "2026-07-16T14:12:59Z"
        },
        {
          "step_id": "reflections",
          "action": "reflection.list",
          "input_hash": "0172e841ab4c13b3a4061f073f9d68a716ec87a8a5d52fde41823385e0582573",
          "output_hash": "c1b6b635c0bab21120657277f14ef6f839909875f307a3745fa48aee2bd6e449",
          "completed_at": "2026-07-16T14:12:59Z"
        },
        {
          "step_id": "bundle",
          "action": "reporting.bundle",
          "input_hash": "aed8ebb688dc3c085dd978d7c4120572173c3cb87e75919e4a937dcca6ef9457",
          "output_hash": "1e3c2b097cfbf440bcb114e6be9886a2a6ec5d728d22160f832b484b7e1392bb",
          "completed_at": "2026-07-16T14:12:59Z"
        },
        {
          "step_id": "delegated",
          "action": "reporting.delegate",
          "input_hash": "0fae08474dd6b273c8eac1063dd656e7f54bae999e800ca8a6bc0821f4994f9d",
          "output_hash": "e6085059f197def80ae95add1f328418107bea5436c9bd002530043646a3a95c",
          "completed_at": "2026-07-16T14:12:59Z"
        }
      ],
      "steps": [
        {
          "id": "state",
          "action": "state.consistency",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-16T14:12:58Z",
          "output": {
            "status": "ok",
            "repo_root": "D:\\Projects\\prd-plugin",
            "summary": {
              "errors": 0,
              "warnings": 0,
              "infos": 0
            },
            "findings": []
          },
          "output_hash": "5a1c6e5246defb1b6b6b90ff734db95bece2886b408ab112ed9b8e67222d5568",
          "completed_at": "2026-07-16T14:12:59Z"
        },
        {
          "id": "goals",
          "action": "substrate.goals",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-16T14:12:59Z",
          "output": {
            "status": "disabled",
            "created": 0,
            "observed": 0,
            "results": []
          },
          "output_hash": "cdfd4de44a28140e686159f34f7b47975954c67e1d1efcef666e985acb136ed8",
          "completed_at": "2026-07-16T14:12:59Z"
        },
        {
          "id": "staleness",
          "action": "staleness.audit",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-16T14:12:59Z",
          "output": {
            "status": "ok",
            "repo_root": "D:\\Projects\\prd-plugin",
            "counts": {
              "stale": 0
            },
            "stale": []
          },
          "output_hash": "1e81cb0ffd0a4d04626920a203b38d2d23a264cd43e807a85d375d69cae8a658",
          "completed_at": "2026-07-16T14:12:59Z"
        },
        {
          "id": "reflections",
          "action": "reflection.list",
          "status": "completed",
          "resolved_input_hash": "0172e841ab4c13b3a4061f073f9d68a716ec87a8a5d52fde41823385e0582573",
          "started_at": "2026-07-16T14:12:59Z",
          "output": {
            "enabled": false,
            "on_stop": true,
            "max_questions_per_stop": 5,
            "categories": [
              {
                "id": "behaviour_quality",
                "name": "Behaviour quality",
                "enabled": true,
                "question_count": 3
              },
              {
                "id": "harness_friction",
                "name": "Harness friction",
                "enabled": true,
                "question_count": 2
              }
            ],
            "questions": [
              {
                "id": "RFQ-001",
                "text": "Based on the work you just carried out, would you classify your behaviour as good? Answer yes or no and cite observable evidence.",
                "enabled": true,
                "category_id": "behaviour_quality",
                "category_name": "Behaviour quality",
                "effective_enabled": false
              },
              {
                "id": "RFQ-002",
                "text": "If you answered no, what could you do differently to correct your behaviour?",
                "enabled": true,
                "category_id": "behaviour_quality",
                "category_name": "Behaviour quality",
                "effective_enabled": false
              },
              {
                "id": "RFQ-003",
                "text": "Would another attempt using the identified good behaviours materially improve the outcome? Answer yes or no and state the next corrective action if yes.",
                "enabled": true,
                "category_id": "behaviour_quality",
                "category_name": "Behaviour quality",
                "effective_enabled": false
              },
              {
                "id": "RFQ-004",
                "text": "What harness friction points made this work more difficult?",
                "enabled": true,
                "category_id": "harness_friction",
                "category_name": "Harness friction",
                "effective_enabled": false
              },
              {
                "id": "RFQ-005",
                "text": "What up to three changes would most improve friction in the harness?",
                "enabled": true,
                "category_id": "harness_friction",
                "category_name": "Harness friction",
                "effective_enabled": false
              }
            ]
          },
          "output_hash": "c1b6b635c0bab21120657277f14ef6f839909875f307a3745fa48aee2bd6e449",
          "completed_at": "2026-07-16T14:12:59Z"
        },
        {
          "id": "bundle",
          "action": "reporting.bundle",
          "status": "completed",
          "resolved_input_hash": "aed8ebb688dc3c085dd978d7c4120572173c3cb87e75919e4a937dcca6ef9457",
          "started_at": "2026-07-16T14:12:59Z",
          "output": {
            "contract_version": 1,
            "task": "session_summary",
            "repo": "prd-plugin",
            "policy": {
              "enabled": false,
              "executor": "ai-collab",
              "contract_version": 1,
              "profile": "fast-capable",
              "tasks": [
                "report_summary",
                "session_summary",
                "wiki_synthesis",
                "triage_draft"
              ],
              "fallback": "main",
              "require_source_refs": true,
              "max_input_tokens": 12000,
              "max_output_tokens": 1500,
              "timeout_seconds": 30
            },
            "facts": {
              "requests_by_status": {
                "deferred": 1,
                "implemented": 89,
                "in_review": 1,
                "proposed": 3,
                "rejected": 1
              },
              "active_requests": [
                {
                  "id": "REQ-072",
                  "status": "proposed",
                  "severity": "low",
                  "summary": "opencode run-until-done: session.idle is a non-blocking notification, so the stop guard can't force continuation on opencode (currently degrades to a printed reminder, 0.5.95). Investigate whether opencode exposes any vetoable/continuation mechanism (a different event, a permission hook, or a 'continue' API) to enforce run-until-done, or accept the reminder as the permanent ceiling. Low priority — user rarely uses opencode."
                },
                {
                  "id": "REQ-104",
                  "status": "in_review",
                  "severity": "high",
                  "summary": "Ordinary-workspace chat has no path into the planning pipeline: owner-approved collaboration decisions land in scratchpads, room agents cannot allocate REQ/PRD/TRK ids past the parallel-worker mutation boundary, and goal-administrator grants detach when participant identity changes on runner restart"
                },
                {
                  "id": "REQ-107",
                  "status": "proposed",
                  "severity": "high",
                  "summary": "Adopt the UTCP-first tool architecture (user-directed): one UTCP manual is the source of truth for ALL prd-plugin tools including mutations, the MCP surface is generated by the official @utcp/mcp-bridge, and the 2,323-line hand-written MCP server is retired as a hand-maintained surface"
                },
                {
                  "id": "REQ-113",
                  "status": "proposed",
                  "severity": "low",
                  "summary": "Request-thread close has no validated tool: finished threads stay 'unresolved' in message_check forever unless state is hand-flipped; add a thread-close capability to the UTCP-first tool catalog (REQ-107), not as a new hand-written MCP handler"
                }
              ],
              "active_tracking": [],
              "open_health": [],
              "evidence_count": 125,
              "decision_count": 10
            },
            "findings": [],
            "source_refs": [
              ".prd_plugin/config.json",
              ".prd_plugin/state/decisions.json",
              ".prd_plugin/state/evidence.json",
              ".prd_plugin/state/health.json",
              ".prd_plugin/state/requests.json",
              ".prd_plugin/state/tracking.json",
              "REQ-072",
              "REQ-104",
              "REQ-107",
              "REQ-113"
            ],
            "constraints": {
              "max_input_tokens": 12000,
              "max_output_tokens": 1500,
              "timeout_seconds": 30,
              "require_source_refs": true,
              "no_project_state_writes": true,
              "no_secrets_or_local_session_content": true
            }
          },
          "output_hash": "1e3c2b097cfbf440bcb114e6be9886a2a6ec5d728d22160f832b484b7e1392bb",
          "completed_at": "2026-07-16T14:12:59Z"
        },
        {
          "id": "delegated",
          "action": "reporting.delegate",
          "status": "completed",
          "resolved_input_hash": "0fae08474dd6b273c8eac1063dd656e7f54bae999e800ca8a6bc0821f4994f9d",
          "started_at": "2026-07-16T14:12:59Z",
          "output": {
            "status": "fallback",
            "action": "main",
            "reason": "disabled"
          },
          "output_hash": "e6085059f197def80ae95add1f328418107bea5436c9bd002530043646a3a95c",
          "completed_at": "2026-07-16T14:12:59Z"
        }
      ],
      "completed_at": "2026-07-16T14:12:59Z"
    },
    {
      "id": "WFR-246",
      "schema_version": "1.0",
      "workflow_id": "session.start",
      "workflow_version": 1,
      "definition_hash": "d0f98da02571e6dd27fec4aed92d3c82af9db75f8b90b997bf665635c7b7f6ca",
      "plan_hash": "b5072615ca3b7e9a3bd85d50d1f069d99ef2a9816b32c03a370745ed7a205536",
      "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
      "inputs": {},
      "idempotency_key": "hook:SessionStart:019f6b46-133d-75f2-bee1-60cb7b36fe50",
      "status": "completed",
      "attempt": 1,
      "created_at": "2026-07-16T14:13:06Z",
      "updated_at": "2026-07-16T14:13:08Z",
      "receipts": [
        {
          "step_id": "config",
          "action": "config.audit",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "3782ec2317c0c8ee7598634310a2804d8aae4735f557498f9d3b8fae7c45e1e5",
          "completed_at": "2026-07-16T14:13:06Z"
        },
        {
          "step_id": "services",
          "action": "services.audit",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "13dcc58bd528f3efa3e6e0fa0853a6eedc376f1f3685fbd4869cbb2b60382ee3",
          "completed_at": "2026-07-16T14:13:07Z"
        },
        {
          "step_id": "state",
          "action": "state.consistency",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "5a1c6e5246defb1b6b6b90ff734db95bece2886b408ab112ed9b8e67222d5568",
          "completed_at": "2026-07-16T14:13:07Z"
        },
        {
          "step_id": "status",
          "action": "state.query",
          "input_hash": "a15231a2142a2a9a85355a8b9cbbccffe01a9c9c2c2fd8c2bc2987cdc481564a",
          "output_hash": "e612fd24ae96a43d20bfe419de740c28c46e9e641ce9e590c5c2ca32d932b393",
          "completed_at": "2026-07-16T14:13:08Z"
        },
        {
          "step_id": "substrate",
          "action": "substrate.preflight",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "a6df426290b4549a59eecaa0519ead9bcc50b7fcb25bd2185ff6047960f19ccb",
          "completed_at": "2026-07-16T14:13:08Z"
        },
        {
          "step_id": "notices",
          "action": "substrate.notices",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "38b904a1cf83df048360fb2480571b749fd98d57e11f1afdffb5a74a78166fea",
          "completed_at": "2026-07-16T14:13:08Z"
        },
        {
          "step_id": "goals",
          "action": "substrate.goals",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "cdfd4de44a28140e686159f34f7b47975954c67e1d1efcef666e985acb136ed8",
          "completed_at": "2026-07-16T14:13:08Z"
        }
      ],
      "steps": [
        {
          "id": "config",
          "action": "config.audit",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-16T14:13:06Z",
          "output": {
            "status": "ok",
            "summary": {
              "settings": 195,
              "mutable": 186,
              "read_only_or_managed": 9,
              "unclassified": 0,
              "unknown": 0,
              "invalid": 0,
              "missing_using_defaults": 0
            },
            "unclassified_keys": [],
            "unknown_keys": [],
            "invalid_values": [],
            "missing_using_defaults": []
          },
          "output_hash": "3782ec2317c0c8ee7598634310a2804d8aae4735f557498f9d3b8fae7c45e1e5",
          "completed_at": "2026-07-16T14:13:06Z"
        },
        {
          "id": "services",
          "action": "services.audit",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-16T14:13:07Z",
          "output": {
            "status": "ok",
            "summary": {
              "critical": 0,
              "high": 0,
              "medium": 0,
              "low": 0
            },
            "findings": []
          },
          "output_hash": "13dcc58bd528f3efa3e6e0fa0853a6eedc376f1f3685fbd4869cbb2b60382ee3",
          "completed_at": "2026-07-16T14:13:07Z"
        },
        {
          "id": "state",
          "action": "state.consistency",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-16T14:13:07Z",
          "output": {
            "status": "ok",
            "repo_root": "D:\\Projects\\prd-plugin",
            "summary": {
              "errors": 0,
              "warnings": 0,
              "infos": 0
            },
            "findings": []
          },
          "output_hash": "5a1c6e5246defb1b6b6b90ff734db95bece2886b408ab112ed9b8e67222d5568",
          "completed_at": "2026-07-16T14:13:07Z"
        },
        {
          "id": "status",
          "action": "state.query",
          "status": "completed",
          "resolved_input_hash": "a15231a2142a2a9a85355a8b9cbbccffe01a9c9c2c2fd8c2bc2987cdc481564a",
          "started_at": "2026-07-16T14:13:08Z",
          "output": {
            "repo_root": "D:\\Projects\\prd-plugin",
            "autonomy_level": "autonomous",
            "requests_by_status": {
              "deferred": 1,
              "implemented": 89,
              "in_review": 1,
              "proposed": 3,
              "rejected": 1
            },
            "active_tracking": [],
            "tracking_branches": [],
            "tracking_branch_counts": {},
            "tracking_branch_errors": [],
            "open_health": [],
            "stale_count": 0,
            "skill_usage": {
              "project-decision-policy": 1,
              "project-request-intake": 1,
              "project-test-driven-implementation": 1,
              "project-verification-before-completion": 1,
              "project-llm-wiki": 1
            },
            "wiki_backfill_pending": false,
            "version_update": null
          },
          "output_hash": "e612fd24ae96a43d20bfe419de740c28c46e9e641ce9e590c5c2ca32d932b393",
          "completed_at": "2026-07-16T14:13:08Z"
        },
        {
          "id": "substrate",
          "action": "substrate.preflight",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-16T14:13:08Z",
          "output": {
            "status": "disabled",
            "services": {
              "status": "ok",
              "summary": {
                "critical": 0,
                "high": 0,
                "medium": 0,
                "low": 0
              },
              "findings": []
            },
            "policy": {
              "configured": {
                "enabled": false,
                "mode": "off",
                "capabilities": [
                  "records",
                  "graph",
                  "events"
                ],
                "contract_version": 2,
                "require_source_refs": true,
                "endpoint": "http://127.0.0.1:47124",
                "manual_url": "http://127.0.0.1:47124/utcp.json",
                "knowledge_browse_url": "http://127.0.0.1:5276",
                "auth_env": "AI_COLLAB_API_KEY",
                "timeout_seconds": 5,
                "max_result_bytes": 1048576,
                "cache_ttl_seconds": 60,
                "fallback": "local",
                "automation": {
                  "discovery_on_session_start": true,
                  "knowledge_recall": true,
                  "memory_recall": true,
                  "context_enrichment": true,
                  "notices_on_session_start": false,
                  "goals_sync": false,
                  "telemetry_on_maintenance": false,
                  "reporting_dispatch": true,
                  "judgment_dispatch": true,
                  "verification_execution": true
                }
              },
              "active": false,
              "effective_mode": "off",
              "effective_capabilities": []
            }
          },
          "output_hash": "a6df426290b4549a59eecaa0519ead9bcc50b7fcb25bd2185ff6047960f19ccb",
          "completed_at": "2026-07-16T14:13:08Z"
        },
        {
          "id": "notices",
          "action": "substrate.notices",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-16T14:13:08Z",
          "output": {
            "status": "disabled"
          },
          "output_hash": "38b904a1cf83df048360fb2480571b749fd98d57e11f1afdffb5a74a78166fea",
          "completed_at": "2026-07-16T14:13:08Z"
        },
        {
          "id": "goals",
          "action": "substrate.goals",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-16T14:13:08Z",
          "output": {
            "status": "disabled",
            "created": 0,
            "observed": 0,
            "results": []
          },
          "output_hash": "cdfd4de44a28140e686159f34f7b47975954c67e1d1efcef666e985acb136ed8",
          "completed_at": "2026-07-16T14:13:08Z"
        }
      ],
      "completed_at": "2026-07-16T14:13:08Z"
    },
    {
      "id": "WFR-247",
      "schema_version": "1.0",
      "workflow_id": "session.stop",
      "workflow_version": 1,
      "definition_hash": "0cef7bb3e28321be8f85375c154955a69310ce297e47de3f3b8dd48f77a2f07d",
      "plan_hash": "a5e1d77ac734217487fc418e29c7163f4e81178e25d171e70cd4c999d527d3e8",
      "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
      "inputs": {},
      "idempotency_key": "hook:Stop:019f6b46-133d-75f2-bee1-60cb7b36fe50",
      "status": "completed",
      "attempt": 1,
      "created_at": "2026-07-16T14:13:12Z",
      "updated_at": "2026-07-16T14:13:14Z",
      "receipts": [
        {
          "step_id": "state",
          "action": "state.consistency",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "5a1c6e5246defb1b6b6b90ff734db95bece2886b408ab112ed9b8e67222d5568",
          "completed_at": "2026-07-16T14:13:13Z"
        },
        {
          "step_id": "goals",
          "action": "substrate.goals",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "cdfd4de44a28140e686159f34f7b47975954c67e1d1efcef666e985acb136ed8",
          "completed_at": "2026-07-16T14:13:14Z"
        },
        {
          "step_id": "staleness",
          "action": "staleness.audit",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "1e81cb0ffd0a4d04626920a203b38d2d23a264cd43e807a85d375d69cae8a658",
          "completed_at": "2026-07-16T14:13:14Z"
        },
        {
          "step_id": "reflections",
          "action": "reflection.list",
          "input_hash": "0172e841ab4c13b3a4061f073f9d68a716ec87a8a5d52fde41823385e0582573",
          "output_hash": "c1b6b635c0bab21120657277f14ef6f839909875f307a3745fa48aee2bd6e449",
          "completed_at": "2026-07-16T14:13:14Z"
        },
        {
          "step_id": "bundle",
          "action": "reporting.bundle",
          "input_hash": "aed8ebb688dc3c085dd978d7c4120572173c3cb87e75919e4a937dcca6ef9457",
          "output_hash": "1e3c2b097cfbf440bcb114e6be9886a2a6ec5d728d22160f832b484b7e1392bb",
          "completed_at": "2026-07-16T14:13:14Z"
        },
        {
          "step_id": "delegated",
          "action": "reporting.delegate",
          "input_hash": "0fae08474dd6b273c8eac1063dd656e7f54bae999e800ca8a6bc0821f4994f9d",
          "output_hash": "e6085059f197def80ae95add1f328418107bea5436c9bd002530043646a3a95c",
          "completed_at": "2026-07-16T14:13:14Z"
        }
      ],
      "steps": [
        {
          "id": "state",
          "action": "state.consistency",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-16T14:13:12Z",
          "output": {
            "status": "ok",
            "repo_root": "D:\\Projects\\prd-plugin",
            "summary": {
              "errors": 0,
              "warnings": 0,
              "infos": 0
            },
            "findings": []
          },
          "output_hash": "5a1c6e5246defb1b6b6b90ff734db95bece2886b408ab112ed9b8e67222d5568",
          "completed_at": "2026-07-16T14:13:13Z"
        },
        {
          "id": "goals",
          "action": "substrate.goals",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-16T14:13:14Z",
          "output": {
            "status": "disabled",
            "created": 0,
            "observed": 0,
            "results": []
          },
          "output_hash": "cdfd4de44a28140e686159f34f7b47975954c67e1d1efcef666e985acb136ed8",
          "completed_at": "2026-07-16T14:13:14Z"
        },
        {
          "id": "staleness",
          "action": "staleness.audit",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-16T14:13:14Z",
          "output": {
            "status": "ok",
            "repo_root": "D:\\Projects\\prd-plugin",
            "counts": {
              "stale": 0
            },
            "stale": []
          },
          "output_hash": "1e81cb0ffd0a4d04626920a203b38d2d23a264cd43e807a85d375d69cae8a658",
          "completed_at": "2026-07-16T14:13:14Z"
        },
        {
          "id": "reflections",
          "action": "reflection.list",
          "status": "completed",
          "resolved_input_hash": "0172e841ab4c13b3a4061f073f9d68a716ec87a8a5d52fde41823385e0582573",
          "started_at": "2026-07-16T14:13:14Z",
          "output": {
            "enabled": false,
            "on_stop": true,
            "max_questions_per_stop": 5,
            "categories": [
              {
                "id": "behaviour_quality",
                "name": "Behaviour quality",
                "enabled": true,
                "question_count": 3
              },
              {
                "id": "harness_friction",
                "name": "Harness friction",
                "enabled": true,
                "question_count": 2
              }
            ],
            "questions": [
              {
                "id": "RFQ-001",
                "text": "Based on the work you just carried out, would you classify your behaviour as good? Answer yes or no and cite observable evidence.",
                "enabled": true,
                "category_id": "behaviour_quality",
                "category_name": "Behaviour quality",
                "effective_enabled": false
              },
              {
                "id": "RFQ-002",
                "text": "If you answered no, what could you do differently to correct your behaviour?",
                "enabled": true,
                "category_id": "behaviour_quality",
                "category_name": "Behaviour quality",
                "effective_enabled": false
              },
              {
                "id": "RFQ-003",
                "text": "Would another attempt using the identified good behaviours materially improve the outcome? Answer yes or no and state the next corrective action if yes.",
                "enabled": true,
                "category_id": "behaviour_quality",
                "category_name": "Behaviour quality",
                "effective_enabled": false
              },
              {
                "id": "RFQ-004",
                "text": "What harness friction points made this work more difficult?",
                "enabled": true,
                "category_id": "harness_friction",
                "category_name": "Harness friction",
                "effective_enabled": false
              },
              {
                "id": "RFQ-005",
                "text": "What up to three changes would most improve friction in the harness?",
                "enabled": true,
                "category_id": "harness_friction",
                "category_name": "Harness friction",
                "effective_enabled": false
              }
            ]
          },
          "output_hash": "c1b6b635c0bab21120657277f14ef6f839909875f307a3745fa48aee2bd6e449",
          "completed_at": "2026-07-16T14:13:14Z"
        },
        {
          "id": "bundle",
          "action": "reporting.bundle",
          "status": "completed",
          "resolved_input_hash": "aed8ebb688dc3c085dd978d7c4120572173c3cb87e75919e4a937dcca6ef9457",
          "started_at": "2026-07-16T14:13:14Z",
          "output": {
            "contract_version": 1,
            "task": "session_summary",
            "repo": "prd-plugin",
            "policy": {
              "enabled": false,
              "executor": "ai-collab",
              "contract_version": 1,
              "profile": "fast-capable",
              "tasks": [
                "report_summary",
                "session_summary",
                "wiki_synthesis",
                "triage_draft"
              ],
              "fallback": "main",
              "require_source_refs": true,
              "max_input_tokens": 12000,
              "max_output_tokens": 1500,
              "timeout_seconds": 30
            },
            "facts": {
              "requests_by_status": {
                "deferred": 1,
                "implemented": 89,
                "in_review": 1,
                "proposed": 3,
                "rejected": 1
              },
              "active_requests": [
                {
                  "id": "REQ-072",
                  "status": "proposed",
                  "severity": "low",
                  "summary": "opencode run-until-done: session.idle is a non-blocking notification, so the stop guard can't force continuation on opencode (currently degrades to a printed reminder, 0.5.95). Investigate whether opencode exposes any vetoable/continuation mechanism (a different event, a permission hook, or a 'continue' API) to enforce run-until-done, or accept the reminder as the permanent ceiling. Low priority — user rarely uses opencode."
                },
                {
                  "id": "REQ-104",
                  "status": "in_review",
                  "severity": "high",
                  "summary": "Ordinary-workspace chat has no path into the planning pipeline: owner-approved collaboration decisions land in scratchpads, room agents cannot allocate REQ/PRD/TRK ids past the parallel-worker mutation boundary, and goal-administrator grants detach when participant identity changes on runner restart"
                },
                {
                  "id": "REQ-107",
                  "status": "proposed",
                  "severity": "high",
                  "summary": "Adopt the UTCP-first tool architecture (user-directed): one UTCP manual is the source of truth for ALL prd-plugin tools including mutations, the MCP surface is generated by the official @utcp/mcp-bridge, and the 2,323-line hand-written MCP server is retired as a hand-maintained surface"
                },
                {
                  "id": "REQ-113",
                  "status": "proposed",
                  "severity": "low",
                  "summary": "Request-thread close has no validated tool: finished threads stay 'unresolved' in message_check forever unless state is hand-flipped; add a thread-close capability to the UTCP-first tool catalog (REQ-107), not as a new hand-written MCP handler"
                }
              ],
              "active_tracking": [],
              "open_health": [],
              "evidence_count": 125,
              "decision_count": 10
            },
            "findings": [],
            "source_refs": [
              ".prd_plugin/config.json",
              ".prd_plugin/state/decisions.json",
              ".prd_plugin/state/evidence.json",
              ".prd_plugin/state/health.json",
              ".prd_plugin/state/requests.json",
              ".prd_plugin/state/tracking.json",
              "REQ-072",
              "REQ-104",
              "REQ-107",
              "REQ-113"
            ],
            "constraints": {
              "max_input_tokens": 12000,
              "max_output_tokens": 1500,
              "timeout_seconds": 30,
              "require_source_refs": true,
              "no_project_state_writes": true,
              "no_secrets_or_local_session_content": true
            }
          },
          "output_hash": "1e3c2b097cfbf440bcb114e6be9886a2a6ec5d728d22160f832b484b7e1392bb",
          "completed_at": "2026-07-16T14:13:14Z"
        },
        {
          "id": "delegated",
          "action": "reporting.delegate",
          "status": "completed",
          "resolved_input_hash": "0fae08474dd6b273c8eac1063dd656e7f54bae999e800ca8a6bc0821f4994f9d",
          "started_at": "2026-07-16T14:13:14Z",
          "output": {
            "status": "fallback",
            "action": "main",
            "reason": "disabled"
          },
          "output_hash": "e6085059f197def80ae95add1f328418107bea5436c9bd002530043646a3a95c",
          "completed_at": "2026-07-16T14:13:14Z"
        }
      ],
      "completed_at": "2026-07-16T14:13:14Z"
    },
    {
      "id": "WFR-248",
      "schema_version": "1.0",
      "workflow_id": "session.start",
      "workflow_version": 1,
      "definition_hash": "d0f98da02571e6dd27fec4aed92d3c82af9db75f8b90b997bf665635c7b7f6ca",
      "plan_hash": "b5072615ca3b7e9a3bd85d50d1f069d99ef2a9816b32c03a370745ed7a205536",
      "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
      "inputs": {},
      "idempotency_key": "hook:SessionStart:019f6b46-4ea6-7991-9c16-eabd547bc038",
      "status": "completed",
      "attempt": 1,
      "created_at": "2026-07-16T14:13:21Z",
      "updated_at": "2026-07-16T14:13:23Z",
      "receipts": [
        {
          "step_id": "config",
          "action": "config.audit",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "3782ec2317c0c8ee7598634310a2804d8aae4735f557498f9d3b8fae7c45e1e5",
          "completed_at": "2026-07-16T14:13:21Z"
        },
        {
          "step_id": "services",
          "action": "services.audit",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "13dcc58bd528f3efa3e6e0fa0853a6eedc376f1f3685fbd4869cbb2b60382ee3",
          "completed_at": "2026-07-16T14:13:21Z"
        },
        {
          "step_id": "state",
          "action": "state.consistency",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "5a1c6e5246defb1b6b6b90ff734db95bece2886b408ab112ed9b8e67222d5568",
          "completed_at": "2026-07-16T14:13:22Z"
        },
        {
          "step_id": "status",
          "action": "state.query",
          "input_hash": "a15231a2142a2a9a85355a8b9cbbccffe01a9c9c2c2fd8c2bc2987cdc481564a",
          "output_hash": "e612fd24ae96a43d20bfe419de740c28c46e9e641ce9e590c5c2ca32d932b393",
          "completed_at": "2026-07-16T14:13:22Z"
        },
        {
          "step_id": "substrate",
          "action": "substrate.preflight",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "a6df426290b4549a59eecaa0519ead9bcc50b7fcb25bd2185ff6047960f19ccb",
          "completed_at": "2026-07-16T14:13:22Z"
        },
        {
          "step_id": "notices",
          "action": "substrate.notices",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "38b904a1cf83df048360fb2480571b749fd98d57e11f1afdffb5a74a78166fea",
          "completed_at": "2026-07-16T14:13:22Z"
        },
        {
          "step_id": "goals",
          "action": "substrate.goals",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "cdfd4de44a28140e686159f34f7b47975954c67e1d1efcef666e985acb136ed8",
          "completed_at": "2026-07-16T14:13:23Z"
        }
      ],
      "steps": [
        {
          "id": "config",
          "action": "config.audit",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-16T14:13:21Z",
          "output": {
            "status": "ok",
            "summary": {
              "settings": 195,
              "mutable": 186,
              "read_only_or_managed": 9,
              "unclassified": 0,
              "unknown": 0,
              "invalid": 0,
              "missing_using_defaults": 0
            },
            "unclassified_keys": [],
            "unknown_keys": [],
            "invalid_values": [],
            "missing_using_defaults": []
          },
          "output_hash": "3782ec2317c0c8ee7598634310a2804d8aae4735f557498f9d3b8fae7c45e1e5",
          "completed_at": "2026-07-16T14:13:21Z"
        },
        {
          "id": "services",
          "action": "services.audit",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-16T14:13:21Z",
          "output": {
            "status": "ok",
            "summary": {
              "critical": 0,
              "high": 0,
              "medium": 0,
              "low": 0
            },
            "findings": []
          },
          "output_hash": "13dcc58bd528f3efa3e6e0fa0853a6eedc376f1f3685fbd4869cbb2b60382ee3",
          "completed_at": "2026-07-16T14:13:21Z"
        },
        {
          "id": "state",
          "action": "state.consistency",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-16T14:13:21Z",
          "output": {
            "status": "ok",
            "repo_root": "D:\\Projects\\prd-plugin",
            "summary": {
              "errors": 0,
              "warnings": 0,
              "infos": 0
            },
            "findings": []
          },
          "output_hash": "5a1c6e5246defb1b6b6b90ff734db95bece2886b408ab112ed9b8e67222d5568",
          "completed_at": "2026-07-16T14:13:22Z"
        },
        {
          "id": "status",
          "action": "state.query",
          "status": "completed",
          "resolved_input_hash": "a15231a2142a2a9a85355a8b9cbbccffe01a9c9c2c2fd8c2bc2987cdc481564a",
          "started_at": "2026-07-16T14:13:22Z",
          "output": {
            "repo_root": "D:\\Projects\\prd-plugin",
            "autonomy_level": "autonomous",
            "requests_by_status": {
              "deferred": 1,
              "implemented": 89,
              "in_review": 1,
              "proposed": 3,
              "rejected": 1
            },
            "active_tracking": [],
            "tracking_branches": [],
            "tracking_branch_counts": {},
            "tracking_branch_errors": [],
            "open_health": [],
            "stale_count": 0,
            "skill_usage": {
              "project-decision-policy": 1,
              "project-request-intake": 1,
              "project-test-driven-implementation": 1,
              "project-verification-before-completion": 1,
              "project-llm-wiki": 1
            },
            "wiki_backfill_pending": false,
            "version_update": null
          },
          "output_hash": "e612fd24ae96a43d20bfe419de740c28c46e9e641ce9e590c5c2ca32d932b393",
          "completed_at": "2026-07-16T14:13:22Z"
        },
        {
          "id": "substrate",
          "action": "substrate.preflight",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-16T14:13:22Z",
          "output": {
            "status": "disabled",
            "services": {
              "status": "ok",
              "summary": {
                "critical": 0,
                "high": 0,
                "medium": 0,
                "low": 0
              },
              "findings": []
            },
            "policy": {
              "configured": {
                "enabled": false,
                "mode": "off",
                "capabilities": [
                  "records",
                  "graph",
                  "events"
                ],
                "contract_version": 2,
                "require_source_refs": true,
                "endpoint": "http://127.0.0.1:47124",
                "manual_url": "http://127.0.0.1:47124/utcp.json",
                "knowledge_browse_url": "http://127.0.0.1:5276",
                "auth_env": "AI_COLLAB_API_KEY",
                "timeout_seconds": 5,
                "max_result_bytes": 1048576,
                "cache_ttl_seconds": 60,
                "fallback": "local",
                "automation": {
                  "discovery_on_session_start": true,
                  "knowledge_recall": true,
                  "memory_recall": true,
                  "context_enrichment": true,
                  "notices_on_session_start": false,
                  "goals_sync": false,
                  "telemetry_on_maintenance": false,
                  "reporting_dispatch": true,
                  "judgment_dispatch": true,
                  "verification_execution": true
                }
              },
              "active": false,
              "effective_mode": "off",
              "effective_capabilities": []
            }
          },
          "output_hash": "a6df426290b4549a59eecaa0519ead9bcc50b7fcb25bd2185ff6047960f19ccb",
          "completed_at": "2026-07-16T14:13:22Z"
        },
        {
          "id": "notices",
          "action": "substrate.notices",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-16T14:13:22Z",
          "output": {
            "status": "disabled"
          },
          "output_hash": "38b904a1cf83df048360fb2480571b749fd98d57e11f1afdffb5a74a78166fea",
          "completed_at": "2026-07-16T14:13:22Z"
        },
        {
          "id": "goals",
          "action": "substrate.goals",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-16T14:13:23Z",
          "output": {
            "status": "disabled",
            "created": 0,
            "observed": 0,
            "results": []
          },
          "output_hash": "cdfd4de44a28140e686159f34f7b47975954c67e1d1efcef666e985acb136ed8",
          "completed_at": "2026-07-16T14:13:23Z"
        }
      ],
      "completed_at": "2026-07-16T14:13:23Z"
    },
    {
      "id": "WFR-249",
      "schema_version": "1.0",
      "workflow_id": "session.stop",
      "workflow_version": 1,
      "definition_hash": "0cef7bb3e28321be8f85375c154955a69310ce297e47de3f3b8dd48f77a2f07d",
      "plan_hash": "a5e1d77ac734217487fc418e29c7163f4e81178e25d171e70cd4c999d527d3e8",
      "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
      "inputs": {},
      "idempotency_key": "hook:Stop:019f6b46-4ea6-7991-9c16-eabd547bc038",
      "status": "completed",
      "attempt": 1,
      "created_at": "2026-07-16T14:13:28Z",
      "updated_at": "2026-07-16T14:13:30Z",
      "receipts": [
        {
          "step_id": "state",
          "action": "state.consistency",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "5a1c6e5246defb1b6b6b90ff734db95bece2886b408ab112ed9b8e67222d5568",
          "completed_at": "2026-07-16T14:13:29Z"
        },
        {
          "step_id": "goals",
          "action": "substrate.goals",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "cdfd4de44a28140e686159f34f7b47975954c67e1d1efcef666e985acb136ed8",
          "completed_at": "2026-07-16T14:13:29Z"
        },
        {
          "step_id": "staleness",
          "action": "staleness.audit",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "1e81cb0ffd0a4d04626920a203b38d2d23a264cd43e807a85d375d69cae8a658",
          "completed_at": "2026-07-16T14:13:29Z"
        },
        {
          "step_id": "reflections",
          "action": "reflection.list",
          "input_hash": "0172e841ab4c13b3a4061f073f9d68a716ec87a8a5d52fde41823385e0582573",
          "output_hash": "c1b6b635c0bab21120657277f14ef6f839909875f307a3745fa48aee2bd6e449",
          "completed_at": "2026-07-16T14:13:29Z"
        },
        {
          "step_id": "bundle",
          "action": "reporting.bundle",
          "input_hash": "aed8ebb688dc3c085dd978d7c4120572173c3cb87e75919e4a937dcca6ef9457",
          "output_hash": "1e3c2b097cfbf440bcb114e6be9886a2a6ec5d728d22160f832b484b7e1392bb",
          "completed_at": "2026-07-16T14:13:30Z"
        },
        {
          "step_id": "delegated",
          "action": "reporting.delegate",
          "input_hash": "0fae08474dd6b273c8eac1063dd656e7f54bae999e800ca8a6bc0821f4994f9d",
          "output_hash": "e6085059f197def80ae95add1f328418107bea5436c9bd002530043646a3a95c",
          "completed_at": "2026-07-16T14:13:30Z"
        }
      ],
      "steps": [
        {
          "id": "state",
          "action": "state.consistency",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-16T14:13:28Z",
          "output": {
            "status": "ok",
            "repo_root": "D:\\Projects\\prd-plugin",
            "summary": {
              "errors": 0,
              "warnings": 0,
              "infos": 0
            },
            "findings": []
          },
          "output_hash": "5a1c6e5246defb1b6b6b90ff734db95bece2886b408ab112ed9b8e67222d5568",
          "completed_at": "2026-07-16T14:13:29Z"
        },
        {
          "id": "goals",
          "action": "substrate.goals",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-16T14:13:29Z",
          "output": {
            "status": "disabled",
            "created": 0,
            "observed": 0,
            "results": []
          },
          "output_hash": "cdfd4de44a28140e686159f34f7b47975954c67e1d1efcef666e985acb136ed8",
          "completed_at": "2026-07-16T14:13:29Z"
        },
        {
          "id": "staleness",
          "action": "staleness.audit",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-16T14:13:29Z",
          "output": {
            "status": "ok",
            "repo_root": "D:\\Projects\\prd-plugin",
            "counts": {
              "stale": 0
            },
            "stale": []
          },
          "output_hash": "1e81cb0ffd0a4d04626920a203b38d2d23a264cd43e807a85d375d69cae8a658",
          "completed_at": "2026-07-16T14:13:29Z"
        },
        {
          "id": "reflections",
          "action": "reflection.list",
          "status": "completed",
          "resolved_input_hash": "0172e841ab4c13b3a4061f073f9d68a716ec87a8a5d52fde41823385e0582573",
          "started_at": "2026-07-16T14:13:29Z",
          "output": {
            "enabled": false,
            "on_stop": true,
            "max_questions_per_stop": 5,
            "categories": [
              {
                "id": "behaviour_quality",
                "name": "Behaviour quality",
                "enabled": true,
                "question_count": 3
              },
              {
                "id": "harness_friction",
                "name": "Harness friction",
                "enabled": true,
                "question_count": 2
              }
            ],
            "questions": [
              {
                "id": "RFQ-001",
                "text": "Based on the work you just carried out, would you classify your behaviour as good? Answer yes or no and cite observable evidence.",
                "enabled": true,
                "category_id": "behaviour_quality",
                "category_name": "Behaviour quality",
                "effective_enabled": false
              },
              {
                "id": "RFQ-002",
                "text": "If you answered no, what could you do differently to correct your behaviour?",
                "enabled": true,
                "category_id": "behaviour_quality",
                "category_name": "Behaviour quality",
                "effective_enabled": false
              },
              {
                "id": "RFQ-003",
                "text": "Would another attempt using the identified good behaviours materially improve the outcome? Answer yes or no and state the next corrective action if yes.",
                "enabled": true,
                "category_id": "behaviour_quality",
                "category_name": "Behaviour quality",
                "effective_enabled": false
              },
              {
                "id": "RFQ-004",
                "text": "What harness friction points made this work more difficult?",
                "enabled": true,
                "category_id": "harness_friction",
                "category_name": "Harness friction",
                "effective_enabled": false
              },
              {
                "id": "RFQ-005",
                "text": "What up to three changes would most improve friction in the harness?",
                "enabled": true,
                "category_id": "harness_friction",
                "category_name": "Harness friction",
                "effective_enabled": false
              }
            ]
          },
          "output_hash": "c1b6b635c0bab21120657277f14ef6f839909875f307a3745fa48aee2bd6e449",
          "completed_at": "2026-07-16T14:13:29Z"
        },
        {
          "id": "bundle",
          "action": "reporting.bundle",
          "status": "completed",
          "resolved_input_hash": "aed8ebb688dc3c085dd978d7c4120572173c3cb87e75919e4a937dcca6ef9457",
          "started_at": "2026-07-16T14:13:30Z",
          "output": {
            "contract_version": 1,
            "task": "session_summary",
            "repo": "prd-plugin",
            "policy": {
              "enabled": false,
              "executor": "ai-collab",
              "contract_version": 1,
              "profile": "fast-capable",
              "tasks": [
                "report_summary",
                "session_summary",
                "wiki_synthesis",
                "triage_draft"
              ],
              "fallback": "main",
              "require_source_refs": true,
              "max_input_tokens": 12000,
              "max_output_tokens": 1500,
              "timeout_seconds": 30
            },
            "facts": {
              "requests_by_status": {
                "deferred": 1,
                "implemented": 89,
                "in_review": 1,
                "proposed": 3,
                "rejected": 1
              },
              "active_requests": [
                {
                  "id": "REQ-072",
                  "status": "proposed",
                  "severity": "low",
                  "summary": "opencode run-until-done: session.idle is a non-blocking notification, so the stop guard can't force continuation on opencode (currently degrades to a printed reminder, 0.5.95). Investigate whether opencode exposes any vetoable/continuation mechanism (a different event, a permission hook, or a 'continue' API) to enforce run-until-done, or accept the reminder as the permanent ceiling. Low priority — user rarely uses opencode."
                },
                {
                  "id": "REQ-104",
                  "status": "in_review",
                  "severity": "high",
                  "summary": "Ordinary-workspace chat has no path into the planning pipeline: owner-approved collaboration decisions land in scratchpads, room agents cannot allocate REQ/PRD/TRK ids past the parallel-worker mutation boundary, and goal-administrator grants detach when participant identity changes on runner restart"
                },
                {
                  "id": "REQ-107",
                  "status": "proposed",
                  "severity": "high",
                  "summary": "Adopt the UTCP-first tool architecture (user-directed): one UTCP manual is the source of truth for ALL prd-plugin tools including mutations, the MCP surface is generated by the official @utcp/mcp-bridge, and the 2,323-line hand-written MCP server is retired as a hand-maintained surface"
                },
                {
                  "id": "REQ-113",
                  "status": "proposed",
                  "severity": "low",
                  "summary": "Request-thread close has no validated tool: finished threads stay 'unresolved' in message_check forever unless state is hand-flipped; add a thread-close capability to the UTCP-first tool catalog (REQ-107), not as a new hand-written MCP handler"
                }
              ],
              "active_tracking": [],
              "open_health": [],
              "evidence_count": 125,
              "decision_count": 10
            },
            "findings": [],
            "source_refs": [
              ".prd_plugin/config.json",
              ".prd_plugin/state/decisions.json",
              ".prd_plugin/state/evidence.json",
              ".prd_plugin/state/health.json",
              ".prd_plugin/state/requests.json",
              ".prd_plugin/state/tracking.json",
              "REQ-072",
              "REQ-104",
              "REQ-107",
              "REQ-113"
            ],
            "constraints": {
              "max_input_tokens": 12000,
              "max_output_tokens": 1500,
              "timeout_seconds": 30,
              "require_source_refs": true,
              "no_project_state_writes": true,
              "no_secrets_or_local_session_content": true
            }
          },
          "output_hash": "1e3c2b097cfbf440bcb114e6be9886a2a6ec5d728d22160f832b484b7e1392bb",
          "completed_at": "2026-07-16T14:13:30Z"
        },
        {
          "id": "delegated",
          "action": "reporting.delegate",
          "status": "completed",
          "resolved_input_hash": "0fae08474dd6b273c8eac1063dd656e7f54bae999e800ca8a6bc0821f4994f9d",
          "started_at": "2026-07-16T14:13:30Z",
          "output": {
            "status": "fallback",
            "action": "main",
            "reason": "disabled"
          },
          "output_hash": "e6085059f197def80ae95add1f328418107bea5436c9bd002530043646a3a95c",
          "completed_at": "2026-07-16T14:13:30Z"
        }
      ],
      "completed_at": "2026-07-16T14:13:30Z"
    },
    {
      "id": "WFR-250",
      "schema_version": "1.0",
      "workflow_id": "session.start",
      "workflow_version": 1,
      "definition_hash": "d0f98da02571e6dd27fec4aed92d3c82af9db75f8b90b997bf665635c7b7f6ca",
      "plan_hash": "b5072615ca3b7e9a3bd85d50d1f069d99ef2a9816b32c03a370745ed7a205536",
      "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
      "inputs": {},
      "idempotency_key": "hook:SessionStart:019f6b46-8cfd-7860-b8b2-a7806f04498c",
      "status": "completed",
      "attempt": 1,
      "created_at": "2026-07-16T14:13:37Z",
      "updated_at": "2026-07-16T14:13:39Z",
      "receipts": [
        {
          "step_id": "config",
          "action": "config.audit",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "3782ec2317c0c8ee7598634310a2804d8aae4735f557498f9d3b8fae7c45e1e5",
          "completed_at": "2026-07-16T14:13:37Z"
        },
        {
          "step_id": "services",
          "action": "services.audit",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "13dcc58bd528f3efa3e6e0fa0853a6eedc376f1f3685fbd4869cbb2b60382ee3",
          "completed_at": "2026-07-16T14:13:37Z"
        },
        {
          "step_id": "state",
          "action": "state.consistency",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "5a1c6e5246defb1b6b6b90ff734db95bece2886b408ab112ed9b8e67222d5568",
          "completed_at": "2026-07-16T14:13:38Z"
        },
        {
          "step_id": "status",
          "action": "state.query",
          "input_hash": "a15231a2142a2a9a85355a8b9cbbccffe01a9c9c2c2fd8c2bc2987cdc481564a",
          "output_hash": "e612fd24ae96a43d20bfe419de740c28c46e9e641ce9e590c5c2ca32d932b393",
          "completed_at": "2026-07-16T14:13:39Z"
        },
        {
          "step_id": "substrate",
          "action": "substrate.preflight",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "a6df426290b4549a59eecaa0519ead9bcc50b7fcb25bd2185ff6047960f19ccb",
          "completed_at": "2026-07-16T14:13:39Z"
        },
        {
          "step_id": "notices",
          "action": "substrate.notices",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "38b904a1cf83df048360fb2480571b749fd98d57e11f1afdffb5a74a78166fea",
          "completed_at": "2026-07-16T14:13:39Z"
        },
        {
          "step_id": "goals",
          "action": "substrate.goals",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "cdfd4de44a28140e686159f34f7b47975954c67e1d1efcef666e985acb136ed8",
          "completed_at": "2026-07-16T14:13:39Z"
        }
      ],
      "steps": [
        {
          "id": "config",
          "action": "config.audit",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-16T14:13:37Z",
          "output": {
            "status": "ok",
            "summary": {
              "settings": 195,
              "mutable": 186,
              "read_only_or_managed": 9,
              "unclassified": 0,
              "unknown": 0,
              "invalid": 0,
              "missing_using_defaults": 0
            },
            "unclassified_keys": [],
            "unknown_keys": [],
            "invalid_values": [],
            "missing_using_defaults": []
          },
          "output_hash": "3782ec2317c0c8ee7598634310a2804d8aae4735f557498f9d3b8fae7c45e1e5",
          "completed_at": "2026-07-16T14:13:37Z"
        },
        {
          "id": "services",
          "action": "services.audit",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-16T14:13:37Z",
          "output": {
            "status": "ok",
            "summary": {
              "critical": 0,
              "high": 0,
              "medium": 0,
              "low": 0
            },
            "findings": []
          },
          "output_hash": "13dcc58bd528f3efa3e6e0fa0853a6eedc376f1f3685fbd4869cbb2b60382ee3",
          "completed_at": "2026-07-16T14:13:37Z"
        },
        {
          "id": "state",
          "action": "state.consistency",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-16T14:13:38Z",
          "output": {
            "status": "ok",
            "repo_root": "D:\\Projects\\prd-plugin",
            "summary": {
              "errors": 0,
              "warnings": 0,
              "infos": 0
            },
            "findings": []
          },
          "output_hash": "5a1c6e5246defb1b6b6b90ff734db95bece2886b408ab112ed9b8e67222d5568",
          "completed_at": "2026-07-16T14:13:38Z"
        },
        {
          "id": "status",
          "action": "state.query",
          "status": "completed",
          "resolved_input_hash": "a15231a2142a2a9a85355a8b9cbbccffe01a9c9c2c2fd8c2bc2987cdc481564a",
          "started_at": "2026-07-16T14:13:38Z",
          "output": {
            "repo_root": "D:\\Projects\\prd-plugin",
            "autonomy_level": "autonomous",
            "requests_by_status": {
              "deferred": 1,
              "implemented": 89,
              "in_review": 1,
              "proposed": 3,
              "rejected": 1
            },
            "active_tracking": [],
            "tracking_branches": [],
            "tracking_branch_counts": {},
            "tracking_branch_errors": [],
            "open_health": [],
            "stale_count": 0,
            "skill_usage": {
              "project-decision-policy": 1,
              "project-request-intake": 1,
              "project-test-driven-implementation": 1,
              "project-verification-before-completion": 1,
              "project-llm-wiki": 1
            },
            "wiki_backfill_pending": false,
            "version_update": null
          },
          "output_hash": "e612fd24ae96a43d20bfe419de740c28c46e9e641ce9e590c5c2ca32d932b393",
          "completed_at": "2026-07-16T14:13:39Z"
        },
        {
          "id": "substrate",
          "action": "substrate.preflight",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-16T14:13:39Z",
          "output": {
            "status": "disabled",
            "services": {
              "status": "ok",
              "summary": {
                "critical": 0,
                "high": 0,
                "medium": 0,
                "low": 0
              },
              "findings": []
            },
            "policy": {
              "configured": {
                "enabled": false,
                "mode": "off",
                "capabilities": [
                  "records",
                  "graph",
                  "events"
                ],
                "contract_version": 2,
                "require_source_refs": true,
                "endpoint": "http://127.0.0.1:47124",
                "manual_url": "http://127.0.0.1:47124/utcp.json",
                "knowledge_browse_url": "http://127.0.0.1:5276",
                "auth_env": "AI_COLLAB_API_KEY",
                "timeout_seconds": 5,
                "max_result_bytes": 1048576,
                "cache_ttl_seconds": 60,
                "fallback": "local",
                "automation": {
                  "discovery_on_session_start": true,
                  "knowledge_recall": true,
                  "memory_recall": true,
                  "context_enrichment": true,
                  "notices_on_session_start": false,
                  "goals_sync": false,
                  "telemetry_on_maintenance": false,
                  "reporting_dispatch": true,
                  "judgment_dispatch": true,
                  "verification_execution": true
                }
              },
              "active": false,
              "effective_mode": "off",
              "effective_capabilities": []
            }
          },
          "output_hash": "a6df426290b4549a59eecaa0519ead9bcc50b7fcb25bd2185ff6047960f19ccb",
          "completed_at": "2026-07-16T14:13:39Z"
        },
        {
          "id": "notices",
          "action": "substrate.notices",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-16T14:13:39Z",
          "output": {
            "status": "disabled"
          },
          "output_hash": "38b904a1cf83df048360fb2480571b749fd98d57e11f1afdffb5a74a78166fea",
          "completed_at": "2026-07-16T14:13:39Z"
        },
        {
          "id": "goals",
          "action": "substrate.goals",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-16T14:13:39Z",
          "output": {
            "status": "disabled",
            "created": 0,
            "observed": 0,
            "results": []
          },
          "output_hash": "cdfd4de44a28140e686159f34f7b47975954c67e1d1efcef666e985acb136ed8",
          "completed_at": "2026-07-16T14:13:39Z"
        }
      ],
      "completed_at": "2026-07-16T14:13:39Z"
    },
    {
      "id": "WFR-251",
      "schema_version": "1.0",
      "workflow_id": "session.stop",
      "workflow_version": 1,
      "definition_hash": "0cef7bb3e28321be8f85375c154955a69310ce297e47de3f3b8dd48f77a2f07d",
      "plan_hash": "a5e1d77ac734217487fc418e29c7163f4e81178e25d171e70cd4c999d527d3e8",
      "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
      "inputs": {},
      "idempotency_key": "hook:Stop:019f6b46-8cfd-7860-b8b2-a7806f04498c",
      "status": "completed",
      "attempt": 1,
      "created_at": "2026-07-16T14:13:46Z",
      "updated_at": "2026-07-16T14:13:48Z",
      "receipts": [
        {
          "step_id": "state",
          "action": "state.consistency",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "5a1c6e5246defb1b6b6b90ff734db95bece2886b408ab112ed9b8e67222d5568",
          "completed_at": "2026-07-16T14:13:47Z"
        },
        {
          "step_id": "goals",
          "action": "substrate.goals",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "cdfd4de44a28140e686159f34f7b47975954c67e1d1efcef666e985acb136ed8",
          "completed_at": "2026-07-16T14:13:47Z"
        },
        {
          "step_id": "staleness",
          "action": "staleness.audit",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "1e81cb0ffd0a4d04626920a203b38d2d23a264cd43e807a85d375d69cae8a658",
          "completed_at": "2026-07-16T14:13:47Z"
        },
        {
          "step_id": "reflections",
          "action": "reflection.list",
          "input_hash": "0172e841ab4c13b3a4061f073f9d68a716ec87a8a5d52fde41823385e0582573",
          "output_hash": "c1b6b635c0bab21120657277f14ef6f839909875f307a3745fa48aee2bd6e449",
          "completed_at": "2026-07-16T14:13:47Z"
        },
        {
          "step_id": "bundle",
          "action": "reporting.bundle",
          "input_hash": "aed8ebb688dc3c085dd978d7c4120572173c3cb87e75919e4a937dcca6ef9457",
          "output_hash": "1e3c2b097cfbf440bcb114e6be9886a2a6ec5d728d22160f832b484b7e1392bb",
          "completed_at": "2026-07-16T14:13:47Z"
        },
        {
          "step_id": "delegated",
          "action": "reporting.delegate",
          "input_hash": "0fae08474dd6b273c8eac1063dd656e7f54bae999e800ca8a6bc0821f4994f9d",
          "output_hash": "e6085059f197def80ae95add1f328418107bea5436c9bd002530043646a3a95c",
          "completed_at": "2026-07-16T14:13:48Z"
        }
      ],
      "steps": [
        {
          "id": "state",
          "action": "state.consistency",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-16T14:13:46Z",
          "output": {
            "status": "ok",
            "repo_root": "D:\\Projects\\prd-plugin",
            "summary": {
              "errors": 0,
              "warnings": 0,
              "infos": 0
            },
            "findings": []
          },
          "output_hash": "5a1c6e5246defb1b6b6b90ff734db95bece2886b408ab112ed9b8e67222d5568",
          "completed_at": "2026-07-16T14:13:47Z"
        },
        {
          "id": "goals",
          "action": "substrate.goals",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-16T14:13:47Z",
          "output": {
            "status": "disabled",
            "created": 0,
            "observed": 0,
            "results": []
          },
          "output_hash": "cdfd4de44a28140e686159f34f7b47975954c67e1d1efcef666e985acb136ed8",
          "completed_at": "2026-07-16T14:13:47Z"
        },
        {
          "id": "staleness",
          "action": "staleness.audit",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-16T14:13:47Z",
          "output": {
            "status": "ok",
            "repo_root": "D:\\Projects\\prd-plugin",
            "counts": {
              "stale": 0
            },
            "stale": []
          },
          "output_hash": "1e81cb0ffd0a4d04626920a203b38d2d23a264cd43e807a85d375d69cae8a658",
          "completed_at": "2026-07-16T14:13:47Z"
        },
        {
          "id": "reflections",
          "action": "reflection.list",
          "status": "completed",
          "resolved_input_hash": "0172e841ab4c13b3a4061f073f9d68a716ec87a8a5d52fde41823385e0582573",
          "started_at": "2026-07-16T14:13:47Z",
          "output": {
            "enabled": false,
            "on_stop": true,
            "max_questions_per_stop": 5,
            "categories": [
              {
                "id": "behaviour_quality",
                "name": "Behaviour quality",
                "enabled": true,
                "question_count": 3
              },
              {
                "id": "harness_friction",
                "name": "Harness friction",
                "enabled": true,
                "question_count": 2
              }
            ],
            "questions": [
              {
                "id": "RFQ-001",
                "text": "Based on the work you just carried out, would you classify your behaviour as good? Answer yes or no and cite observable evidence.",
                "enabled": true,
                "category_id": "behaviour_quality",
                "category_name": "Behaviour quality",
                "effective_enabled": false
              },
              {
                "id": "RFQ-002",
                "text": "If you answered no, what could you do differently to correct your behaviour?",
                "enabled": true,
                "category_id": "behaviour_quality",
                "category_name": "Behaviour quality",
                "effective_enabled": false
              },
              {
                "id": "RFQ-003",
                "text": "Would another attempt using the identified good behaviours materially improve the outcome? Answer yes or no and state the next corrective action if yes.",
                "enabled": true,
                "category_id": "behaviour_quality",
                "category_name": "Behaviour quality",
                "effective_enabled": false
              },
              {
                "id": "RFQ-004",
                "text": "What harness friction points made this work more difficult?",
                "enabled": true,
                "category_id": "harness_friction",
                "category_name": "Harness friction",
                "effective_enabled": false
              },
              {
                "id": "RFQ-005",
                "text": "What up to three changes would most improve friction in the harness?",
                "enabled": true,
                "category_id": "harness_friction",
                "category_name": "Harness friction",
                "effective_enabled": false
              }
            ]
          },
          "output_hash": "c1b6b635c0bab21120657277f14ef6f839909875f307a3745fa48aee2bd6e449",
          "completed_at": "2026-07-16T14:13:47Z"
        },
        {
          "id": "bundle",
          "action": "reporting.bundle",
          "status": "completed",
          "resolved_input_hash": "aed8ebb688dc3c085dd978d7c4120572173c3cb87e75919e4a937dcca6ef9457",
          "started_at": "2026-07-16T14:13:47Z",
          "output": {
            "contract_version": 1,
            "task": "session_summary",
            "repo": "prd-plugin",
            "policy": {
              "enabled": false,
              "executor": "ai-collab",
              "contract_version": 1,
              "profile": "fast-capable",
              "tasks": [
                "report_summary",
                "session_summary",
                "wiki_synthesis",
                "triage_draft"
              ],
              "fallback": "main",
              "require_source_refs": true,
              "max_input_tokens": 12000,
              "max_output_tokens": 1500,
              "timeout_seconds": 30
            },
            "facts": {
              "requests_by_status": {
                "deferred": 1,
                "implemented": 89,
                "in_review": 1,
                "proposed": 3,
                "rejected": 1
              },
              "active_requests": [
                {
                  "id": "REQ-072",
                  "status": "proposed",
                  "severity": "low",
                  "summary": "opencode run-until-done: session.idle is a non-blocking notification, so the stop guard can't force continuation on opencode (currently degrades to a printed reminder, 0.5.95). Investigate whether opencode exposes any vetoable/continuation mechanism (a different event, a permission hook, or a 'continue' API) to enforce run-until-done, or accept the reminder as the permanent ceiling. Low priority — user rarely uses opencode."
                },
                {
                  "id": "REQ-104",
                  "status": "in_review",
                  "severity": "high",
                  "summary": "Ordinary-workspace chat has no path into the planning pipeline: owner-approved collaboration decisions land in scratchpads, room agents cannot allocate REQ/PRD/TRK ids past the parallel-worker mutation boundary, and goal-administrator grants detach when participant identity changes on runner restart"
                },
                {
                  "id": "REQ-107",
                  "status": "proposed",
                  "severity": "high",
                  "summary": "Adopt the UTCP-first tool architecture (user-directed): one UTCP manual is the source of truth for ALL prd-plugin tools including mutations, the MCP surface is generated by the official @utcp/mcp-bridge, and the 2,323-line hand-written MCP server is retired as a hand-maintained surface"
                },
                {
                  "id": "REQ-113",
                  "status": "proposed",
                  "severity": "low",
                  "summary": "Request-thread close has no validated tool: finished threads stay 'unresolved' in message_check forever unless state is hand-flipped; add a thread-close capability to the UTCP-first tool catalog (REQ-107), not as a new hand-written MCP handler"
                }
              ],
              "active_tracking": [],
              "open_health": [],
              "evidence_count": 125,
              "decision_count": 10
            },
            "findings": [],
            "source_refs": [
              ".prd_plugin/config.json",
              ".prd_plugin/state/decisions.json",
              ".prd_plugin/state/evidence.json",
              ".prd_plugin/state/health.json",
              ".prd_plugin/state/requests.json",
              ".prd_plugin/state/tracking.json",
              "REQ-072",
              "REQ-104",
              "REQ-107",
              "REQ-113"
            ],
            "constraints": {
              "max_input_tokens": 12000,
              "max_output_tokens": 1500,
              "timeout_seconds": 30,
              "require_source_refs": true,
              "no_project_state_writes": true,
              "no_secrets_or_local_session_content": true
            }
          },
          "output_hash": "1e3c2b097cfbf440bcb114e6be9886a2a6ec5d728d22160f832b484b7e1392bb",
          "completed_at": "2026-07-16T14:13:47Z"
        },
        {
          "id": "delegated",
          "action": "reporting.delegate",
          "status": "completed",
          "resolved_input_hash": "0fae08474dd6b273c8eac1063dd656e7f54bae999e800ca8a6bc0821f4994f9d",
          "started_at": "2026-07-16T14:13:48Z",
          "output": {
            "status": "fallback",
            "action": "main",
            "reason": "disabled"
          },
          "output_hash": "e6085059f197def80ae95add1f328418107bea5436c9bd002530043646a3a95c",
          "completed_at": "2026-07-16T14:13:48Z"
        }
      ],
      "completed_at": "2026-07-16T14:13:48Z"
    },
    {
      "id": "WFR-252",
      "schema_version": "1.0",
      "workflow_id": "session.start",
      "workflow_version": 1,
      "definition_hash": "d0f98da02571e6dd27fec4aed92d3c82af9db75f8b90b997bf665635c7b7f6ca",
      "plan_hash": "b5072615ca3b7e9a3bd85d50d1f069d99ef2a9816b32c03a370745ed7a205536",
      "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
      "inputs": {},
      "idempotency_key": "hook:SessionStart:019f6b46-d36f-74a3-a6fd-982fcd92b5d5",
      "status": "completed",
      "attempt": 1,
      "created_at": "2026-07-16T14:13:55Z",
      "updated_at": "2026-07-16T14:13:58Z",
      "receipts": [
        {
          "step_id": "config",
          "action": "config.audit",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "3782ec2317c0c8ee7598634310a2804d8aae4735f557498f9d3b8fae7c45e1e5",
          "completed_at": "2026-07-16T14:13:55Z"
        },
        {
          "step_id": "services",
          "action": "services.audit",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "13dcc58bd528f3efa3e6e0fa0853a6eedc376f1f3685fbd4869cbb2b60382ee3",
          "completed_at": "2026-07-16T14:13:56Z"
        },
        {
          "step_id": "state",
          "action": "state.consistency",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "5a1c6e5246defb1b6b6b90ff734db95bece2886b408ab112ed9b8e67222d5568",
          "completed_at": "2026-07-16T14:13:57Z"
        },
        {
          "step_id": "status",
          "action": "state.query",
          "input_hash": "a15231a2142a2a9a85355a8b9cbbccffe01a9c9c2c2fd8c2bc2987cdc481564a",
          "output_hash": "e612fd24ae96a43d20bfe419de740c28c46e9e641ce9e590c5c2ca32d932b393",
          "completed_at": "2026-07-16T14:13:57Z"
        },
        {
          "step_id": "substrate",
          "action": "substrate.preflight",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "a6df426290b4549a59eecaa0519ead9bcc50b7fcb25bd2185ff6047960f19ccb",
          "completed_at": "2026-07-16T14:13:58Z"
        },
        {
          "step_id": "notices",
          "action": "substrate.notices",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "38b904a1cf83df048360fb2480571b749fd98d57e11f1afdffb5a74a78166fea",
          "completed_at": "2026-07-16T14:13:58Z"
        },
        {
          "step_id": "goals",
          "action": "substrate.goals",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "cdfd4de44a28140e686159f34f7b47975954c67e1d1efcef666e985acb136ed8",
          "completed_at": "2026-07-16T14:13:58Z"
        }
      ],
      "steps": [
        {
          "id": "config",
          "action": "config.audit",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-16T14:13:55Z",
          "output": {
            "status": "ok",
            "summary": {
              "settings": 195,
              "mutable": 186,
              "read_only_or_managed": 9,
              "unclassified": 0,
              "unknown": 0,
              "invalid": 0,
              "missing_using_defaults": 0
            },
            "unclassified_keys": [],
            "unknown_keys": [],
            "invalid_values": [],
            "missing_using_defaults": []
          },
          "output_hash": "3782ec2317c0c8ee7598634310a2804d8aae4735f557498f9d3b8fae7c45e1e5",
          "completed_at": "2026-07-16T14:13:55Z"
        },
        {
          "id": "services",
          "action": "services.audit",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-16T14:13:56Z",
          "output": {
            "status": "ok",
            "summary": {
              "critical": 0,
              "high": 0,
              "medium": 0,
              "low": 0
            },
            "findings": []
          },
          "output_hash": "13dcc58bd528f3efa3e6e0fa0853a6eedc376f1f3685fbd4869cbb2b60382ee3",
          "completed_at": "2026-07-16T14:13:56Z"
        },
        {
          "id": "state",
          "action": "state.consistency",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-16T14:13:56Z",
          "output": {
            "status": "ok",
            "repo_root": "D:\\Projects\\prd-plugin",
            "summary": {
              "errors": 0,
              "warnings": 0,
              "infos": 0
            },
            "findings": []
          },
          "output_hash": "5a1c6e5246defb1b6b6b90ff734db95bece2886b408ab112ed9b8e67222d5568",
          "completed_at": "2026-07-16T14:13:57Z"
        },
        {
          "id": "status",
          "action": "state.query",
          "status": "completed",
          "resolved_input_hash": "a15231a2142a2a9a85355a8b9cbbccffe01a9c9c2c2fd8c2bc2987cdc481564a",
          "started_at": "2026-07-16T14:13:57Z",
          "output": {
            "repo_root": "D:\\Projects\\prd-plugin",
            "autonomy_level": "autonomous",
            "requests_by_status": {
              "deferred": 1,
              "implemented": 89,
              "in_review": 1,
              "proposed": 3,
              "rejected": 1
            },
            "active_tracking": [],
            "tracking_branches": [],
            "tracking_branch_counts": {},
            "tracking_branch_errors": [],
            "open_health": [],
            "stale_count": 0,
            "skill_usage": {
              "project-decision-policy": 1,
              "project-request-intake": 1,
              "project-test-driven-implementation": 1,
              "project-verification-before-completion": 1,
              "project-llm-wiki": 1
            },
            "wiki_backfill_pending": false,
            "version_update": null
          },
          "output_hash": "e612fd24ae96a43d20bfe419de740c28c46e9e641ce9e590c5c2ca32d932b393",
          "completed_at": "2026-07-16T14:13:57Z"
        },
        {
          "id": "substrate",
          "action": "substrate.preflight",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-16T14:13:58Z",
          "output": {
            "status": "disabled",
            "services": {
              "status": "ok",
              "summary": {
                "critical": 0,
                "high": 0,
                "medium": 0,
                "low": 0
              },
              "findings": []
            },
            "policy": {
              "configured": {
                "enabled": false,
                "mode": "off",
                "capabilities": [
                  "records",
                  "graph",
                  "events"
                ],
                "contract_version": 2,
                "require_source_refs": true,
                "endpoint": "http://127.0.0.1:47124",
                "manual_url": "http://127.0.0.1:47124/utcp.json",
                "knowledge_browse_url": "http://127.0.0.1:5276",
                "auth_env": "AI_COLLAB_API_KEY",
                "timeout_seconds": 5,
                "max_result_bytes": 1048576,
                "cache_ttl_seconds": 60,
                "fallback": "local",
                "automation": {
                  "discovery_on_session_start": true,
                  "knowledge_recall": true,
                  "memory_recall": true,
                  "context_enrichment": true,
                  "notices_on_session_start": false,
                  "goals_sync": false,
                  "telemetry_on_maintenance": false,
                  "reporting_dispatch": true,
                  "judgment_dispatch": true,
                  "verification_execution": true
                }
              },
              "active": false,
              "effective_mode": "off",
              "effective_capabilities": []
            }
          },
          "output_hash": "a6df426290b4549a59eecaa0519ead9bcc50b7fcb25bd2185ff6047960f19ccb",
          "completed_at": "2026-07-16T14:13:58Z"
        },
        {
          "id": "notices",
          "action": "substrate.notices",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-16T14:13:58Z",
          "output": {
            "status": "disabled"
          },
          "output_hash": "38b904a1cf83df048360fb2480571b749fd98d57e11f1afdffb5a74a78166fea",
          "completed_at": "2026-07-16T14:13:58Z"
        },
        {
          "id": "goals",
          "action": "substrate.goals",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-16T14:13:58Z",
          "output": {
            "status": "disabled",
            "created": 0,
            "observed": 0,
            "results": []
          },
          "output_hash": "cdfd4de44a28140e686159f34f7b47975954c67e1d1efcef666e985acb136ed8",
          "completed_at": "2026-07-16T14:13:58Z"
        }
      ],
      "completed_at": "2026-07-16T14:13:58Z"
    },
    {
      "id": "WFR-253",
      "schema_version": "1.0",
      "workflow_id": "session.stop",
      "workflow_version": 1,
      "definition_hash": "0cef7bb3e28321be8f85375c154955a69310ce297e47de3f3b8dd48f77a2f07d",
      "plan_hash": "a5e1d77ac734217487fc418e29c7163f4e81178e25d171e70cd4c999d527d3e8",
      "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
      "inputs": {},
      "idempotency_key": "hook:Stop:019f6b46-d36f-74a3-a6fd-982fcd92b5d5",
      "status": "completed",
      "attempt": 1,
      "created_at": "2026-07-16T14:14:04Z",
      "updated_at": "2026-07-16T14:14:06Z",
      "receipts": [
        {
          "step_id": "state",
          "action": "state.consistency",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "5a1c6e5246defb1b6b6b90ff734db95bece2886b408ab112ed9b8e67222d5568",
          "completed_at": "2026-07-16T14:14:05Z"
        },
        {
          "step_id": "goals",
          "action": "substrate.goals",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "cdfd4de44a28140e686159f34f7b47975954c67e1d1efcef666e985acb136ed8",
          "completed_at": "2026-07-16T14:14:05Z"
        },
        {
          "step_id": "staleness",
          "action": "staleness.audit",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "1e81cb0ffd0a4d04626920a203b38d2d23a264cd43e807a85d375d69cae8a658",
          "completed_at": "2026-07-16T14:14:05Z"
        },
        {
          "step_id": "reflections",
          "action": "reflection.list",
          "input_hash": "0172e841ab4c13b3a4061f073f9d68a716ec87a8a5d52fde41823385e0582573",
          "output_hash": "c1b6b635c0bab21120657277f14ef6f839909875f307a3745fa48aee2bd6e449",
          "completed_at": "2026-07-16T14:14:05Z"
        },
        {
          "step_id": "bundle",
          "action": "reporting.bundle",
          "input_hash": "aed8ebb688dc3c085dd978d7c4120572173c3cb87e75919e4a937dcca6ef9457",
          "output_hash": "1e3c2b097cfbf440bcb114e6be9886a2a6ec5d728d22160f832b484b7e1392bb",
          "completed_at": "2026-07-16T14:14:05Z"
        },
        {
          "step_id": "delegated",
          "action": "reporting.delegate",
          "input_hash": "0fae08474dd6b273c8eac1063dd656e7f54bae999e800ca8a6bc0821f4994f9d",
          "output_hash": "e6085059f197def80ae95add1f328418107bea5436c9bd002530043646a3a95c",
          "completed_at": "2026-07-16T14:14:06Z"
        }
      ],
      "steps": [
        {
          "id": "state",
          "action": "state.consistency",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-16T14:14:04Z",
          "output": {
            "status": "ok",
            "repo_root": "D:\\Projects\\prd-plugin",
            "summary": {
              "errors": 0,
              "warnings": 0,
              "infos": 0
            },
            "findings": []
          },
          "output_hash": "5a1c6e5246defb1b6b6b90ff734db95bece2886b408ab112ed9b8e67222d5568",
          "completed_at": "2026-07-16T14:14:05Z"
        },
        {
          "id": "goals",
          "action": "substrate.goals",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-16T14:14:05Z",
          "output": {
            "status": "disabled",
            "created": 0,
            "observed": 0,
            "results": []
          },
          "output_hash": "cdfd4de44a28140e686159f34f7b47975954c67e1d1efcef666e985acb136ed8",
          "completed_at": "2026-07-16T14:14:05Z"
        },
        {
          "id": "staleness",
          "action": "staleness.audit",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-16T14:14:05Z",
          "output": {
            "status": "ok",
            "repo_root": "D:\\Projects\\prd-plugin",
            "counts": {
              "stale": 0
            },
            "stale": []
          },
          "output_hash": "1e81cb0ffd0a4d04626920a203b38d2d23a264cd43e807a85d375d69cae8a658",
          "completed_at": "2026-07-16T14:14:05Z"
        },
        {
          "id": "reflections",
          "action": "reflection.list",
          "status": "completed",
          "resolved_input_hash": "0172e841ab4c13b3a4061f073f9d68a716ec87a8a5d52fde41823385e0582573",
          "started_at": "2026-07-16T14:14:05Z",
          "output": {
            "enabled": false,
            "on_stop": true,
            "max_questions_per_stop": 5,
            "categories": [
              {
                "id": "behaviour_quality",
                "name": "Behaviour quality",
                "enabled": true,
                "question_count": 3
              },
              {
                "id": "harness_friction",
                "name": "Harness friction",
                "enabled": true,
                "question_count": 2
              }
            ],
            "questions": [
              {
                "id": "RFQ-001",
                "text": "Based on the work you just carried out, would you classify your behaviour as good? Answer yes or no and cite observable evidence.",
                "enabled": true,
                "category_id": "behaviour_quality",
                "category_name": "Behaviour quality",
                "effective_enabled": false
              },
              {
                "id": "RFQ-002",
                "text": "If you answered no, what could you do differently to correct your behaviour?",
                "enabled": true,
                "category_id": "behaviour_quality",
                "category_name": "Behaviour quality",
                "effective_enabled": false
              },
              {
                "id": "RFQ-003",
                "text": "Would another attempt using the identified good behaviours materially improve the outcome? Answer yes or no and state the next corrective action if yes.",
                "enabled": true,
                "category_id": "behaviour_quality",
                "category_name": "Behaviour quality",
                "effective_enabled": false
              },
              {
                "id": "RFQ-004",
                "text": "What harness friction points made this work more difficult?",
                "enabled": true,
                "category_id": "harness_friction",
                "category_name": "Harness friction",
                "effective_enabled": false
              },
              {
                "id": "RFQ-005",
                "text": "What up to three changes would most improve friction in the harness?",
                "enabled": true,
                "category_id": "harness_friction",
                "category_name": "Harness friction",
                "effective_enabled": false
              }
            ]
          },
          "output_hash": "c1b6b635c0bab21120657277f14ef6f839909875f307a3745fa48aee2bd6e449",
          "completed_at": "2026-07-16T14:14:05Z"
        },
        {
          "id": "bundle",
          "action": "reporting.bundle",
          "status": "completed",
          "resolved_input_hash": "aed8ebb688dc3c085dd978d7c4120572173c3cb87e75919e4a937dcca6ef9457",
          "started_at": "2026-07-16T14:14:05Z",
          "output": {
            "contract_version": 1,
            "task": "session_summary",
            "repo": "prd-plugin",
            "policy": {
              "enabled": false,
              "executor": "ai-collab",
              "contract_version": 1,
              "profile": "fast-capable",
              "tasks": [
                "report_summary",
                "session_summary",
                "wiki_synthesis",
                "triage_draft"
              ],
              "fallback": "main",
              "require_source_refs": true,
              "max_input_tokens": 12000,
              "max_output_tokens": 1500,
              "timeout_seconds": 30
            },
            "facts": {
              "requests_by_status": {
                "deferred": 1,
                "implemented": 89,
                "in_review": 1,
                "proposed": 3,
                "rejected": 1
              },
              "active_requests": [
                {
                  "id": "REQ-072",
                  "status": "proposed",
                  "severity": "low",
                  "summary": "opencode run-until-done: session.idle is a non-blocking notification, so the stop guard can't force continuation on opencode (currently degrades to a printed reminder, 0.5.95). Investigate whether opencode exposes any vetoable/continuation mechanism (a different event, a permission hook, or a 'continue' API) to enforce run-until-done, or accept the reminder as the permanent ceiling. Low priority — user rarely uses opencode."
                },
                {
                  "id": "REQ-104",
                  "status": "in_review",
                  "severity": "high",
                  "summary": "Ordinary-workspace chat has no path into the planning pipeline: owner-approved collaboration decisions land in scratchpads, room agents cannot allocate REQ/PRD/TRK ids past the parallel-worker mutation boundary, and goal-administrator grants detach when participant identity changes on runner restart"
                },
                {
                  "id": "REQ-107",
                  "status": "proposed",
                  "severity": "high",
                  "summary": "Adopt the UTCP-first tool architecture (user-directed): one UTCP manual is the source of truth for ALL prd-plugin tools including mutations, the MCP surface is generated by the official @utcp/mcp-bridge, and the 2,323-line hand-written MCP server is retired as a hand-maintained surface"
                },
                {
                  "id": "REQ-113",
                  "status": "proposed",
                  "severity": "low",
                  "summary": "Request-thread close has no validated tool: finished threads stay 'unresolved' in message_check forever unless state is hand-flipped; add a thread-close capability to the UTCP-first tool catalog (REQ-107), not as a new hand-written MCP handler"
                }
              ],
              "active_tracking": [],
              "open_health": [],
              "evidence_count": 125,
              "decision_count": 10
            },
            "findings": [],
            "source_refs": [
              ".prd_plugin/config.json",
              ".prd_plugin/state/decisions.json",
              ".prd_plugin/state/evidence.json",
              ".prd_plugin/state/health.json",
              ".prd_plugin/state/requests.json",
              ".prd_plugin/state/tracking.json",
              "REQ-072",
              "REQ-104",
              "REQ-107",
              "REQ-113"
            ],
            "constraints": {
              "max_input_tokens": 12000,
              "max_output_tokens": 1500,
              "timeout_seconds": 30,
              "require_source_refs": true,
              "no_project_state_writes": true,
              "no_secrets_or_local_session_content": true
            }
          },
          "output_hash": "1e3c2b097cfbf440bcb114e6be9886a2a6ec5d728d22160f832b484b7e1392bb",
          "completed_at": "2026-07-16T14:14:05Z"
        },
        {
          "id": "delegated",
          "action": "reporting.delegate",
          "status": "completed",
          "resolved_input_hash": "0fae08474dd6b273c8eac1063dd656e7f54bae999e800ca8a6bc0821f4994f9d",
          "started_at": "2026-07-16T14:14:06Z",
          "output": {
            "status": "fallback",
            "action": "main",
            "reason": "disabled"
          },
          "output_hash": "e6085059f197def80ae95add1f328418107bea5436c9bd002530043646a3a95c",
          "completed_at": "2026-07-16T14:14:06Z"
        }
      ],
      "completed_at": "2026-07-16T14:14:06Z"
    },
    {
      "id": "WFR-254",
      "schema_version": "1.0",
      "workflow_id": "session.start",
      "workflow_version": 1,
      "definition_hash": "d0f98da02571e6dd27fec4aed92d3c82af9db75f8b90b997bf665635c7b7f6ca",
      "plan_hash": "b5072615ca3b7e9a3bd85d50d1f069d99ef2a9816b32c03a370745ed7a205536",
      "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
      "inputs": {},
      "idempotency_key": "hook:SessionStart:019f6b47-1b48-7883-89e4-2e305bc322d3",
      "status": "completed",
      "attempt": 1,
      "created_at": "2026-07-16T14:14:14Z",
      "updated_at": "2026-07-16T14:14:16Z",
      "receipts": [
        {
          "step_id": "config",
          "action": "config.audit",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "3782ec2317c0c8ee7598634310a2804d8aae4735f557498f9d3b8fae7c45e1e5",
          "completed_at": "2026-07-16T14:14:14Z"
        },
        {
          "step_id": "services",
          "action": "services.audit",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "13dcc58bd528f3efa3e6e0fa0853a6eedc376f1f3685fbd4869cbb2b60382ee3",
          "completed_at": "2026-07-16T14:14:14Z"
        },
        {
          "step_id": "state",
          "action": "state.consistency",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "5a1c6e5246defb1b6b6b90ff734db95bece2886b408ab112ed9b8e67222d5568",
          "completed_at": "2026-07-16T14:14:15Z"
        },
        {
          "step_id": "status",
          "action": "state.query",
          "input_hash": "a15231a2142a2a9a85355a8b9cbbccffe01a9c9c2c2fd8c2bc2987cdc481564a",
          "output_hash": "e612fd24ae96a43d20bfe419de740c28c46e9e641ce9e590c5c2ca32d932b393",
          "completed_at": "2026-07-16T14:14:16Z"
        },
        {
          "step_id": "substrate",
          "action": "substrate.preflight",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "a6df426290b4549a59eecaa0519ead9bcc50b7fcb25bd2185ff6047960f19ccb",
          "completed_at": "2026-07-16T14:14:16Z"
        },
        {
          "step_id": "notices",
          "action": "substrate.notices",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "38b904a1cf83df048360fb2480571b749fd98d57e11f1afdffb5a74a78166fea",
          "completed_at": "2026-07-16T14:14:16Z"
        },
        {
          "step_id": "goals",
          "action": "substrate.goals",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "cdfd4de44a28140e686159f34f7b47975954c67e1d1efcef666e985acb136ed8",
          "completed_at": "2026-07-16T14:14:16Z"
        }
      ],
      "steps": [
        {
          "id": "config",
          "action": "config.audit",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-16T14:14:14Z",
          "output": {
            "status": "ok",
            "summary": {
              "settings": 195,
              "mutable": 186,
              "read_only_or_managed": 9,
              "unclassified": 0,
              "unknown": 0,
              "invalid": 0,
              "missing_using_defaults": 0
            },
            "unclassified_keys": [],
            "unknown_keys": [],
            "invalid_values": [],
            "missing_using_defaults": []
          },
          "output_hash": "3782ec2317c0c8ee7598634310a2804d8aae4735f557498f9d3b8fae7c45e1e5",
          "completed_at": "2026-07-16T14:14:14Z"
        },
        {
          "id": "services",
          "action": "services.audit",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-16T14:14:14Z",
          "output": {
            "status": "ok",
            "summary": {
              "critical": 0,
              "high": 0,
              "medium": 0,
              "low": 0
            },
            "findings": []
          },
          "output_hash": "13dcc58bd528f3efa3e6e0fa0853a6eedc376f1f3685fbd4869cbb2b60382ee3",
          "completed_at": "2026-07-16T14:14:14Z"
        },
        {
          "id": "state",
          "action": "state.consistency",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-16T14:14:14Z",
          "output": {
            "status": "ok",
            "repo_root": "D:\\Projects\\prd-plugin",
            "summary": {
              "errors": 0,
              "warnings": 0,
              "infos": 0
            },
            "findings": []
          },
          "output_hash": "5a1c6e5246defb1b6b6b90ff734db95bece2886b408ab112ed9b8e67222d5568",
          "completed_at": "2026-07-16T14:14:15Z"
        },
        {
          "id": "status",
          "action": "state.query",
          "status": "completed",
          "resolved_input_hash": "a15231a2142a2a9a85355a8b9cbbccffe01a9c9c2c2fd8c2bc2987cdc481564a",
          "started_at": "2026-07-16T14:14:15Z",
          "output": {
            "repo_root": "D:\\Projects\\prd-plugin",
            "autonomy_level": "autonomous",
            "requests_by_status": {
              "deferred": 1,
              "implemented": 89,
              "in_review": 1,
              "proposed": 3,
              "rejected": 1
            },
            "active_tracking": [],
            "tracking_branches": [],
            "tracking_branch_counts": {},
            "tracking_branch_errors": [],
            "open_health": [],
            "stale_count": 0,
            "skill_usage": {
              "project-decision-policy": 1,
              "project-request-intake": 1,
              "project-test-driven-implementation": 1,
              "project-verification-before-completion": 1,
              "project-llm-wiki": 1
            },
            "wiki_backfill_pending": false,
            "version_update": null
          },
          "output_hash": "e612fd24ae96a43d20bfe419de740c28c46e9e641ce9e590c5c2ca32d932b393",
          "completed_at": "2026-07-16T14:14:16Z"
        },
        {
          "id": "substrate",
          "action": "substrate.preflight",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-16T14:14:16Z",
          "output": {
            "status": "disabled",
            "services": {
              "status": "ok",
              "summary": {
                "critical": 0,
                "high": 0,
                "medium": 0,
                "low": 0
              },
              "findings": []
            },
            "policy": {
              "configured": {
                "enabled": false,
                "mode": "off",
                "capabilities": [
                  "records",
                  "graph",
                  "events"
                ],
                "contract_version": 2,
                "require_source_refs": true,
                "endpoint": "http://127.0.0.1:47124",
                "manual_url": "http://127.0.0.1:47124/utcp.json",
                "knowledge_browse_url": "http://127.0.0.1:5276",
                "auth_env": "AI_COLLAB_API_KEY",
                "timeout_seconds": 5,
                "max_result_bytes": 1048576,
                "cache_ttl_seconds": 60,
                "fallback": "local",
                "automation": {
                  "discovery_on_session_start": true,
                  "knowledge_recall": true,
                  "memory_recall": true,
                  "context_enrichment": true,
                  "notices_on_session_start": false,
                  "goals_sync": false,
                  "telemetry_on_maintenance": false,
                  "reporting_dispatch": true,
                  "judgment_dispatch": true,
                  "verification_execution": true
                }
              },
              "active": false,
              "effective_mode": "off",
              "effective_capabilities": []
            }
          },
          "output_hash": "a6df426290b4549a59eecaa0519ead9bcc50b7fcb25bd2185ff6047960f19ccb",
          "completed_at": "2026-07-16T14:14:16Z"
        },
        {
          "id": "notices",
          "action": "substrate.notices",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-16T14:14:16Z",
          "output": {
            "status": "disabled"
          },
          "output_hash": "38b904a1cf83df048360fb2480571b749fd98d57e11f1afdffb5a74a78166fea",
          "completed_at": "2026-07-16T14:14:16Z"
        },
        {
          "id": "goals",
          "action": "substrate.goals",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-16T14:14:16Z",
          "output": {
            "status": "disabled",
            "created": 0,
            "observed": 0,
            "results": []
          },
          "output_hash": "cdfd4de44a28140e686159f34f7b47975954c67e1d1efcef666e985acb136ed8",
          "completed_at": "2026-07-16T14:14:16Z"
        }
      ],
      "completed_at": "2026-07-16T14:14:16Z"
    },
    {
      "id": "WFR-255",
      "schema_version": "1.0",
      "workflow_id": "session.stop",
      "workflow_version": 1,
      "definition_hash": "0cef7bb3e28321be8f85375c154955a69310ce297e47de3f3b8dd48f77a2f07d",
      "plan_hash": "a5e1d77ac734217487fc418e29c7163f4e81178e25d171e70cd4c999d527d3e8",
      "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
      "inputs": {},
      "idempotency_key": "hook:Stop:019f6b47-1b48-7883-89e4-2e305bc322d3",
      "status": "completed",
      "attempt": 1,
      "created_at": "2026-07-16T14:14:24Z",
      "updated_at": "2026-07-16T14:14:27Z",
      "receipts": [
        {
          "step_id": "state",
          "action": "state.consistency",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "5a1c6e5246defb1b6b6b90ff734db95bece2886b408ab112ed9b8e67222d5568",
          "completed_at": "2026-07-16T14:14:25Z"
        },
        {
          "step_id": "goals",
          "action": "substrate.goals",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "cdfd4de44a28140e686159f34f7b47975954c67e1d1efcef666e985acb136ed8",
          "completed_at": "2026-07-16T14:14:26Z"
        },
        {
          "step_id": "staleness",
          "action": "staleness.audit",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "1e81cb0ffd0a4d04626920a203b38d2d23a264cd43e807a85d375d69cae8a658",
          "completed_at": "2026-07-16T14:14:26Z"
        },
        {
          "step_id": "reflections",
          "action": "reflection.list",
          "input_hash": "0172e841ab4c13b3a4061f073f9d68a716ec87a8a5d52fde41823385e0582573",
          "output_hash": "c1b6b635c0bab21120657277f14ef6f839909875f307a3745fa48aee2bd6e449",
          "completed_at": "2026-07-16T14:14:26Z"
        },
        {
          "step_id": "bundle",
          "action": "reporting.bundle",
          "input_hash": "aed8ebb688dc3c085dd978d7c4120572173c3cb87e75919e4a937dcca6ef9457",
          "output_hash": "1e3c2b097cfbf440bcb114e6be9886a2a6ec5d728d22160f832b484b7e1392bb",
          "completed_at": "2026-07-16T14:14:26Z"
        },
        {
          "step_id": "delegated",
          "action": "reporting.delegate",
          "input_hash": "0fae08474dd6b273c8eac1063dd656e7f54bae999e800ca8a6bc0821f4994f9d",
          "output_hash": "e6085059f197def80ae95add1f328418107bea5436c9bd002530043646a3a95c",
          "completed_at": "2026-07-16T14:14:27Z"
        }
      ],
      "steps": [
        {
          "id": "state",
          "action": "state.consistency",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-16T14:14:24Z",
          "output": {
            "status": "ok",
            "repo_root": "D:\\Projects\\prd-plugin",
            "summary": {
              "errors": 0,
              "warnings": 0,
              "infos": 0
            },
            "findings": []
          },
          "output_hash": "5a1c6e5246defb1b6b6b90ff734db95bece2886b408ab112ed9b8e67222d5568",
          "completed_at": "2026-07-16T14:14:25Z"
        },
        {
          "id": "goals",
          "action": "substrate.goals",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-16T14:14:26Z",
          "output": {
            "status": "disabled",
            "created": 0,
            "observed": 0,
            "results": []
          },
          "output_hash": "cdfd4de44a28140e686159f34f7b47975954c67e1d1efcef666e985acb136ed8",
          "completed_at": "2026-07-16T14:14:26Z"
        },
        {
          "id": "staleness",
          "action": "staleness.audit",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-16T14:14:26Z",
          "output": {
            "status": "ok",
            "repo_root": "D:\\Projects\\prd-plugin",
            "counts": {
              "stale": 0
            },
            "stale": []
          },
          "output_hash": "1e81cb0ffd0a4d04626920a203b38d2d23a264cd43e807a85d375d69cae8a658",
          "completed_at": "2026-07-16T14:14:26Z"
        },
        {
          "id": "reflections",
          "action": "reflection.list",
          "status": "completed",
          "resolved_input_hash": "0172e841ab4c13b3a4061f073f9d68a716ec87a8a5d52fde41823385e0582573",
          "started_at": "2026-07-16T14:14:26Z",
          "output": {
            "enabled": false,
            "on_stop": true,
            "max_questions_per_stop": 5,
            "categories": [
              {
                "id": "behaviour_quality",
                "name": "Behaviour quality",
                "enabled": true,
                "question_count": 3
              },
              {
                "id": "harness_friction",
                "name": "Harness friction",
                "enabled": true,
                "question_count": 2
              }
            ],
            "questions": [
              {
                "id": "RFQ-001",
                "text": "Based on the work you just carried out, would you classify your behaviour as good? Answer yes or no and cite observable evidence.",
                "enabled": true,
                "category_id": "behaviour_quality",
                "category_name": "Behaviour quality",
                "effective_enabled": false
              },
              {
                "id": "RFQ-002",
                "text": "If you answered no, what could you do differently to correct your behaviour?",
                "enabled": true,
                "category_id": "behaviour_quality",
                "category_name": "Behaviour quality",
                "effective_enabled": false
              },
              {
                "id": "RFQ-003",
                "text": "Would another attempt using the identified good behaviours materially improve the outcome? Answer yes or no and state the next corrective action if yes.",
                "enabled": true,
                "category_id": "behaviour_quality",
                "category_name": "Behaviour quality",
                "effective_enabled": false
              },
              {
                "id": "RFQ-004",
                "text": "What harness friction points made this work more difficult?",
                "enabled": true,
                "category_id": "harness_friction",
                "category_name": "Harness friction",
                "effective_enabled": false
              },
              {
                "id": "RFQ-005",
                "text": "What up to three changes would most improve friction in the harness?",
                "enabled": true,
                "category_id": "harness_friction",
                "category_name": "Harness friction",
                "effective_enabled": false
              }
            ]
          },
          "output_hash": "c1b6b635c0bab21120657277f14ef6f839909875f307a3745fa48aee2bd6e449",
          "completed_at": "2026-07-16T14:14:26Z"
        },
        {
          "id": "bundle",
          "action": "reporting.bundle",
          "status": "completed",
          "resolved_input_hash": "aed8ebb688dc3c085dd978d7c4120572173c3cb87e75919e4a937dcca6ef9457",
          "started_at": "2026-07-16T14:14:26Z",
          "output": {
            "contract_version": 1,
            "task": "session_summary",
            "repo": "prd-plugin",
            "policy": {
              "enabled": false,
              "executor": "ai-collab",
              "contract_version": 1,
              "profile": "fast-capable",
              "tasks": [
                "report_summary",
                "session_summary",
                "wiki_synthesis",
                "triage_draft"
              ],
              "fallback": "main",
              "require_source_refs": true,
              "max_input_tokens": 12000,
              "max_output_tokens": 1500,
              "timeout_seconds": 30
            },
            "facts": {
              "requests_by_status": {
                "deferred": 1,
                "implemented": 89,
                "in_review": 1,
                "proposed": 3,
                "rejected": 1
              },
              "active_requests": [
                {
                  "id": "REQ-072",
                  "status": "proposed",
                  "severity": "low",
                  "summary": "opencode run-until-done: session.idle is a non-blocking notification, so the stop guard can't force continuation on opencode (currently degrades to a printed reminder, 0.5.95). Investigate whether opencode exposes any vetoable/continuation mechanism (a different event, a permission hook, or a 'continue' API) to enforce run-until-done, or accept the reminder as the permanent ceiling. Low priority — user rarely uses opencode."
                },
                {
                  "id": "REQ-104",
                  "status": "in_review",
                  "severity": "high",
                  "summary": "Ordinary-workspace chat has no path into the planning pipeline: owner-approved collaboration decisions land in scratchpads, room agents cannot allocate REQ/PRD/TRK ids past the parallel-worker mutation boundary, and goal-administrator grants detach when participant identity changes on runner restart"
                },
                {
                  "id": "REQ-107",
                  "status": "proposed",
                  "severity": "high",
                  "summary": "Adopt the UTCP-first tool architecture (user-directed): one UTCP manual is the source of truth for ALL prd-plugin tools including mutations, the MCP surface is generated by the official @utcp/mcp-bridge, and the 2,323-line hand-written MCP server is retired as a hand-maintained surface"
                },
                {
                  "id": "REQ-113",
                  "status": "proposed",
                  "severity": "low",
                  "summary": "Request-thread close has no validated tool: finished threads stay 'unresolved' in message_check forever unless state is hand-flipped; add a thread-close capability to the UTCP-first tool catalog (REQ-107), not as a new hand-written MCP handler"
                }
              ],
              "active_tracking": [],
              "open_health": [],
              "evidence_count": 125,
              "decision_count": 10
            },
            "findings": [],
            "source_refs": [
              ".prd_plugin/config.json",
              ".prd_plugin/state/decisions.json",
              ".prd_plugin/state/evidence.json",
              ".prd_plugin/state/health.json",
              ".prd_plugin/state/requests.json",
              ".prd_plugin/state/tracking.json",
              "REQ-072",
              "REQ-104",
              "REQ-107",
              "REQ-113"
            ],
            "constraints": {
              "max_input_tokens": 12000,
              "max_output_tokens": 1500,
              "timeout_seconds": 30,
              "require_source_refs": true,
              "no_project_state_writes": true,
              "no_secrets_or_local_session_content": true
            }
          },
          "output_hash": "1e3c2b097cfbf440bcb114e6be9886a2a6ec5d728d22160f832b484b7e1392bb",
          "completed_at": "2026-07-16T14:14:26Z"
        },
        {
          "id": "delegated",
          "action": "reporting.delegate",
          "status": "completed",
          "resolved_input_hash": "0fae08474dd6b273c8eac1063dd656e7f54bae999e800ca8a6bc0821f4994f9d",
          "started_at": "2026-07-16T14:14:27Z",
          "output": {
            "status": "fallback",
            "action": "main",
            "reason": "disabled"
          },
          "output_hash": "e6085059f197def80ae95add1f328418107bea5436c9bd002530043646a3a95c",
          "completed_at": "2026-07-16T14:14:27Z"
        }
      ],
      "completed_at": "2026-07-16T14:14:27Z"
    },
    {
      "id": "WFR-256",
      "schema_version": "1.0",
      "workflow_id": "session.start",
      "workflow_version": 1,
      "definition_hash": "d0f98da02571e6dd27fec4aed92d3c82af9db75f8b90b997bf665635c7b7f6ca",
      "plan_hash": "b5072615ca3b7e9a3bd85d50d1f069d99ef2a9816b32c03a370745ed7a205536",
      "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
      "inputs": {},
      "idempotency_key": "hook:SessionStart:019f6b47-6d07-79f0-8dad-2becc8e2f197",
      "status": "completed",
      "attempt": 1,
      "created_at": "2026-07-16T14:14:34Z",
      "updated_at": "2026-07-16T14:14:37Z",
      "receipts": [
        {
          "step_id": "config",
          "action": "config.audit",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "3782ec2317c0c8ee7598634310a2804d8aae4735f557498f9d3b8fae7c45e1e5",
          "completed_at": "2026-07-16T14:14:35Z"
        },
        {
          "step_id": "services",
          "action": "services.audit",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "13dcc58bd528f3efa3e6e0fa0853a6eedc376f1f3685fbd4869cbb2b60382ee3",
          "completed_at": "2026-07-16T14:14:35Z"
        },
        {
          "step_id": "state",
          "action": "state.consistency",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "5a1c6e5246defb1b6b6b90ff734db95bece2886b408ab112ed9b8e67222d5568",
          "completed_at": "2026-07-16T14:14:36Z"
        },
        {
          "step_id": "status",
          "action": "state.query",
          "input_hash": "a15231a2142a2a9a85355a8b9cbbccffe01a9c9c2c2fd8c2bc2987cdc481564a",
          "output_hash": "e612fd24ae96a43d20bfe419de740c28c46e9e641ce9e590c5c2ca32d932b393",
          "completed_at": "2026-07-16T14:14:36Z"
        },
        {
          "step_id": "substrate",
          "action": "substrate.preflight",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "a6df426290b4549a59eecaa0519ead9bcc50b7fcb25bd2185ff6047960f19ccb",
          "completed_at": "2026-07-16T14:14:36Z"
        },
        {
          "step_id": "notices",
          "action": "substrate.notices",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "38b904a1cf83df048360fb2480571b749fd98d57e11f1afdffb5a74a78166fea",
          "completed_at": "2026-07-16T14:14:37Z"
        },
        {
          "step_id": "goals",
          "action": "substrate.goals",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "cdfd4de44a28140e686159f34f7b47975954c67e1d1efcef666e985acb136ed8",
          "completed_at": "2026-07-16T14:14:37Z"
        }
      ],
      "steps": [
        {
          "id": "config",
          "action": "config.audit",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-16T14:14:35Z",
          "output": {
            "status": "ok",
            "summary": {
              "settings": 195,
              "mutable": 186,
              "read_only_or_managed": 9,
              "unclassified": 0,
              "unknown": 0,
              "invalid": 0,
              "missing_using_defaults": 0
            },
            "unclassified_keys": [],
            "unknown_keys": [],
            "invalid_values": [],
            "missing_using_defaults": []
          },
          "output_hash": "3782ec2317c0c8ee7598634310a2804d8aae4735f557498f9d3b8fae7c45e1e5",
          "completed_at": "2026-07-16T14:14:35Z"
        },
        {
          "id": "services",
          "action": "services.audit",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-16T14:14:35Z",
          "output": {
            "status": "ok",
            "summary": {
              "critical": 0,
              "high": 0,
              "medium": 0,
              "low": 0
            },
            "findings": []
          },
          "output_hash": "13dcc58bd528f3efa3e6e0fa0853a6eedc376f1f3685fbd4869cbb2b60382ee3",
          "completed_at": "2026-07-16T14:14:35Z"
        },
        {
          "id": "state",
          "action": "state.consistency",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-16T14:14:35Z",
          "output": {
            "status": "ok",
            "repo_root": "D:\\Projects\\prd-plugin",
            "summary": {
              "errors": 0,
              "warnings": 0,
              "infos": 0
            },
            "findings": []
          },
          "output_hash": "5a1c6e5246defb1b6b6b90ff734db95bece2886b408ab112ed9b8e67222d5568",
          "completed_at": "2026-07-16T14:14:36Z"
        },
        {
          "id": "status",
          "action": "state.query",
          "status": "completed",
          "resolved_input_hash": "a15231a2142a2a9a85355a8b9cbbccffe01a9c9c2c2fd8c2bc2987cdc481564a",
          "started_at": "2026-07-16T14:14:36Z",
          "output": {
            "repo_root": "D:\\Projects\\prd-plugin",
            "autonomy_level": "autonomous",
            "requests_by_status": {
              "deferred": 1,
              "implemented": 89,
              "in_review": 1,
              "proposed": 3,
              "rejected": 1
            },
            "active_tracking": [],
            "tracking_branches": [],
            "tracking_branch_counts": {},
            "tracking_branch_errors": [],
            "open_health": [],
            "stale_count": 0,
            "skill_usage": {
              "project-decision-policy": 1,
              "project-request-intake": 1,
              "project-test-driven-implementation": 1,
              "project-verification-before-completion": 1,
              "project-llm-wiki": 1
            },
            "wiki_backfill_pending": false,
            "version_update": null
          },
          "output_hash": "e612fd24ae96a43d20bfe419de740c28c46e9e641ce9e590c5c2ca32d932b393",
          "completed_at": "2026-07-16T14:14:36Z"
        },
        {
          "id": "substrate",
          "action": "substrate.preflight",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-16T14:14:36Z",
          "output": {
            "status": "disabled",
            "services": {
              "status": "ok",
              "summary": {
                "critical": 0,
                "high": 0,
                "medium": 0,
                "low": 0
              },
              "findings": []
            },
            "policy": {
              "configured": {
                "enabled": false,
                "mode": "off",
                "capabilities": [
                  "records",
                  "graph",
                  "events"
                ],
                "contract_version": 2,
                "require_source_refs": true,
                "endpoint": "http://127.0.0.1:47124",
                "manual_url": "http://127.0.0.1:47124/utcp.json",
                "knowledge_browse_url": "http://127.0.0.1:5276",
                "auth_env": "AI_COLLAB_API_KEY",
                "timeout_seconds": 5,
                "max_result_bytes": 1048576,
                "cache_ttl_seconds": 60,
                "fallback": "local",
                "automation": {
                  "discovery_on_session_start": true,
                  "knowledge_recall": true,
                  "memory_recall": true,
                  "context_enrichment": true,
                  "notices_on_session_start": false,
                  "goals_sync": false,
                  "telemetry_on_maintenance": false,
                  "reporting_dispatch": true,
                  "judgment_dispatch": true,
                  "verification_execution": true
                }
              },
              "active": false,
              "effective_mode": "off",
              "effective_capabilities": []
            }
          },
          "output_hash": "a6df426290b4549a59eecaa0519ead9bcc50b7fcb25bd2185ff6047960f19ccb",
          "completed_at": "2026-07-16T14:14:36Z"
        },
        {
          "id": "notices",
          "action": "substrate.notices",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-16T14:14:37Z",
          "output": {
            "status": "disabled"
          },
          "output_hash": "38b904a1cf83df048360fb2480571b749fd98d57e11f1afdffb5a74a78166fea",
          "completed_at": "2026-07-16T14:14:37Z"
        },
        {
          "id": "goals",
          "action": "substrate.goals",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-16T14:14:37Z",
          "output": {
            "status": "disabled",
            "created": 0,
            "observed": 0,
            "results": []
          },
          "output_hash": "cdfd4de44a28140e686159f34f7b47975954c67e1d1efcef666e985acb136ed8",
          "completed_at": "2026-07-16T14:14:37Z"
        }
      ],
      "completed_at": "2026-07-16T14:14:37Z"
    },
    {
      "id": "WFR-257",
      "schema_version": "1.0",
      "workflow_id": "session.stop",
      "workflow_version": 1,
      "definition_hash": "0cef7bb3e28321be8f85375c154955a69310ce297e47de3f3b8dd48f77a2f07d",
      "plan_hash": "a5e1d77ac734217487fc418e29c7163f4e81178e25d171e70cd4c999d527d3e8",
      "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
      "inputs": {},
      "idempotency_key": "hook:Stop:019f6b47-6d07-79f0-8dad-2becc8e2f197",
      "status": "completed",
      "attempt": 1,
      "created_at": "2026-07-16T14:14:45Z",
      "updated_at": "2026-07-16T14:14:47Z",
      "receipts": [
        {
          "step_id": "state",
          "action": "state.consistency",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "5a1c6e5246defb1b6b6b90ff734db95bece2886b408ab112ed9b8e67222d5568",
          "completed_at": "2026-07-16T14:14:46Z"
        },
        {
          "step_id": "goals",
          "action": "substrate.goals",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "cdfd4de44a28140e686159f34f7b47975954c67e1d1efcef666e985acb136ed8",
          "completed_at": "2026-07-16T14:14:46Z"
        },
        {
          "step_id": "staleness",
          "action": "staleness.audit",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "1e81cb0ffd0a4d04626920a203b38d2d23a264cd43e807a85d375d69cae8a658",
          "completed_at": "2026-07-16T14:14:46Z"
        },
        {
          "step_id": "reflections",
          "action": "reflection.list",
          "input_hash": "0172e841ab4c13b3a4061f073f9d68a716ec87a8a5d52fde41823385e0582573",
          "output_hash": "c1b6b635c0bab21120657277f14ef6f839909875f307a3745fa48aee2bd6e449",
          "completed_at": "2026-07-16T14:14:47Z"
        },
        {
          "step_id": "bundle",
          "action": "reporting.bundle",
          "input_hash": "aed8ebb688dc3c085dd978d7c4120572173c3cb87e75919e4a937dcca6ef9457",
          "output_hash": "1e3c2b097cfbf440bcb114e6be9886a2a6ec5d728d22160f832b484b7e1392bb",
          "completed_at": "2026-07-16T14:14:47Z"
        },
        {
          "step_id": "delegated",
          "action": "reporting.delegate",
          "input_hash": "0fae08474dd6b273c8eac1063dd656e7f54bae999e800ca8a6bc0821f4994f9d",
          "output_hash": "e6085059f197def80ae95add1f328418107bea5436c9bd002530043646a3a95c",
          "completed_at": "2026-07-16T14:14:47Z"
        }
      ],
      "steps": [
        {
          "id": "state",
          "action": "state.consistency",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-16T14:14:45Z",
          "output": {
            "status": "ok",
            "repo_root": "D:\\Projects\\prd-plugin",
            "summary": {
              "errors": 0,
              "warnings": 0,
              "infos": 0
            },
            "findings": []
          },
          "output_hash": "5a1c6e5246defb1b6b6b90ff734db95bece2886b408ab112ed9b8e67222d5568",
          "completed_at": "2026-07-16T14:14:46Z"
        },
        {
          "id": "goals",
          "action": "substrate.goals",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-16T14:14:46Z",
          "output": {
            "status": "disabled",
            "created": 0,
            "observed": 0,
            "results": []
          },
          "output_hash": "cdfd4de44a28140e686159f34f7b47975954c67e1d1efcef666e985acb136ed8",
          "completed_at": "2026-07-16T14:14:46Z"
        },
        {
          "id": "staleness",
          "action": "staleness.audit",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-16T14:14:46Z",
          "output": {
            "status": "ok",
            "repo_root": "D:\\Projects\\prd-plugin",
            "counts": {
              "stale": 0
            },
            "stale": []
          },
          "output_hash": "1e81cb0ffd0a4d04626920a203b38d2d23a264cd43e807a85d375d69cae8a658",
          "completed_at": "2026-07-16T14:14:46Z"
        },
        {
          "id": "reflections",
          "action": "reflection.list",
          "status": "completed",
          "resolved_input_hash": "0172e841ab4c13b3a4061f073f9d68a716ec87a8a5d52fde41823385e0582573",
          "started_at": "2026-07-16T14:14:47Z",
          "output": {
            "enabled": false,
            "on_stop": true,
            "max_questions_per_stop": 5,
            "categories": [
              {
                "id": "behaviour_quality",
                "name": "Behaviour quality",
                "enabled": true,
                "question_count": 3
              },
              {
                "id": "harness_friction",
                "name": "Harness friction",
                "enabled": true,
                "question_count": 2
              }
            ],
            "questions": [
              {
                "id": "RFQ-001",
                "text": "Based on the work you just carried out, would you classify your behaviour as good? Answer yes or no and cite observable evidence.",
                "enabled": true,
                "category_id": "behaviour_quality",
                "category_name": "Behaviour quality",
                "effective_enabled": false
              },
              {
                "id": "RFQ-002",
                "text": "If you answered no, what could you do differently to correct your behaviour?",
                "enabled": true,
                "category_id": "behaviour_quality",
                "category_name": "Behaviour quality",
                "effective_enabled": false
              },
              {
                "id": "RFQ-003",
                "text": "Would another attempt using the identified good behaviours materially improve the outcome? Answer yes or no and state the next corrective action if yes.",
                "enabled": true,
                "category_id": "behaviour_quality",
                "category_name": "Behaviour quality",
                "effective_enabled": false
              },
              {
                "id": "RFQ-004",
                "text": "What harness friction points made this work more difficult?",
                "enabled": true,
                "category_id": "harness_friction",
                "category_name": "Harness friction",
                "effective_enabled": false
              },
              {
                "id": "RFQ-005",
                "text": "What up to three changes would most improve friction in the harness?",
                "enabled": true,
                "category_id": "harness_friction",
                "category_name": "Harness friction",
                "effective_enabled": false
              }
            ]
          },
          "output_hash": "c1b6b635c0bab21120657277f14ef6f839909875f307a3745fa48aee2bd6e449",
          "completed_at": "2026-07-16T14:14:47Z"
        },
        {
          "id": "bundle",
          "action": "reporting.bundle",
          "status": "completed",
          "resolved_input_hash": "aed8ebb688dc3c085dd978d7c4120572173c3cb87e75919e4a937dcca6ef9457",
          "started_at": "2026-07-16T14:14:47Z",
          "output": {
            "contract_version": 1,
            "task": "session_summary",
            "repo": "prd-plugin",
            "policy": {
              "enabled": false,
              "executor": "ai-collab",
              "contract_version": 1,
              "profile": "fast-capable",
              "tasks": [
                "report_summary",
                "session_summary",
                "wiki_synthesis",
                "triage_draft"
              ],
              "fallback": "main",
              "require_source_refs": true,
              "max_input_tokens": 12000,
              "max_output_tokens": 1500,
              "timeout_seconds": 30
            },
            "facts": {
              "requests_by_status": {
                "deferred": 1,
                "implemented": 89,
                "in_review": 1,
                "proposed": 3,
                "rejected": 1
              },
              "active_requests": [
                {
                  "id": "REQ-072",
                  "status": "proposed",
                  "severity": "low",
                  "summary": "opencode run-until-done: session.idle is a non-blocking notification, so the stop guard can't force continuation on opencode (currently degrades to a printed reminder, 0.5.95). Investigate whether opencode exposes any vetoable/continuation mechanism (a different event, a permission hook, or a 'continue' API) to enforce run-until-done, or accept the reminder as the permanent ceiling. Low priority — user rarely uses opencode."
                },
                {
                  "id": "REQ-104",
                  "status": "in_review",
                  "severity": "high",
                  "summary": "Ordinary-workspace chat has no path into the planning pipeline: owner-approved collaboration decisions land in scratchpads, room agents cannot allocate REQ/PRD/TRK ids past the parallel-worker mutation boundary, and goal-administrator grants detach when participant identity changes on runner restart"
                },
                {
                  "id": "REQ-107",
                  "status": "proposed",
                  "severity": "high",
                  "summary": "Adopt the UTCP-first tool architecture (user-directed): one UTCP manual is the source of truth for ALL prd-plugin tools including mutations, the MCP surface is generated by the official @utcp/mcp-bridge, and the 2,323-line hand-written MCP server is retired as a hand-maintained surface"
                },
                {
                  "id": "REQ-113",
                  "status": "proposed",
                  "severity": "low",
                  "summary": "Request-thread close has no validated tool: finished threads stay 'unresolved' in message_check forever unless state is hand-flipped; add a thread-close capability to the UTCP-first tool catalog (REQ-107), not as a new hand-written MCP handler"
                }
              ],
              "active_tracking": [],
              "open_health": [],
              "evidence_count": 125,
              "decision_count": 10
            },
            "findings": [],
            "source_refs": [
              ".prd_plugin/config.json",
              ".prd_plugin/state/decisions.json",
              ".prd_plugin/state/evidence.json",
              ".prd_plugin/state/health.json",
              ".prd_plugin/state/requests.json",
              ".prd_plugin/state/tracking.json",
              "REQ-072",
              "REQ-104",
              "REQ-107",
              "REQ-113"
            ],
            "constraints": {
              "max_input_tokens": 12000,
              "max_output_tokens": 1500,
              "timeout_seconds": 30,
              "require_source_refs": true,
              "no_project_state_writes": true,
              "no_secrets_or_local_session_content": true
            }
          },
          "output_hash": "1e3c2b097cfbf440bcb114e6be9886a2a6ec5d728d22160f832b484b7e1392bb",
          "completed_at": "2026-07-16T14:14:47Z"
        },
        {
          "id": "delegated",
          "action": "reporting.delegate",
          "status": "completed",
          "resolved_input_hash": "0fae08474dd6b273c8eac1063dd656e7f54bae999e800ca8a6bc0821f4994f9d",
          "started_at": "2026-07-16T14:14:47Z",
          "output": {
            "status": "fallback",
            "action": "main",
            "reason": "disabled"
          },
          "output_hash": "e6085059f197def80ae95add1f328418107bea5436c9bd002530043646a3a95c",
          "completed_at": "2026-07-16T14:14:47Z"
        }
      ],
      "completed_at": "2026-07-16T14:14:47Z"
    },
    {
      "id": "WFR-258",
      "schema_version": "1.0",
      "workflow_id": "session.start",
      "workflow_version": 1,
      "definition_hash": "d0f98da02571e6dd27fec4aed92d3c82af9db75f8b90b997bf665635c7b7f6ca",
      "plan_hash": "b5072615ca3b7e9a3bd85d50d1f069d99ef2a9816b32c03a370745ed7a205536",
      "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
      "inputs": {},
      "idempotency_key": "hook:SessionStart:019f6b47-bafe-70c0-ba1c-8c9d2af86c40",
      "status": "completed",
      "attempt": 1,
      "created_at": "2026-07-16T14:14:54Z",
      "updated_at": "2026-07-16T14:14:56Z",
      "receipts": [
        {
          "step_id": "config",
          "action": "config.audit",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "3782ec2317c0c8ee7598634310a2804d8aae4735f557498f9d3b8fae7c45e1e5",
          "completed_at": "2026-07-16T14:14:54Z"
        },
        {
          "step_id": "services",
          "action": "services.audit",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "13dcc58bd528f3efa3e6e0fa0853a6eedc376f1f3685fbd4869cbb2b60382ee3",
          "completed_at": "2026-07-16T14:14:55Z"
        },
        {
          "step_id": "state",
          "action": "state.consistency",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "5a1c6e5246defb1b6b6b90ff734db95bece2886b408ab112ed9b8e67222d5568",
          "completed_at": "2026-07-16T14:14:55Z"
        },
        {
          "step_id": "status",
          "action": "state.query",
          "input_hash": "a15231a2142a2a9a85355a8b9cbbccffe01a9c9c2c2fd8c2bc2987cdc481564a",
          "output_hash": "e612fd24ae96a43d20bfe419de740c28c46e9e641ce9e590c5c2ca32d932b393",
          "completed_at": "2026-07-16T14:14:56Z"
        },
        {
          "step_id": "substrate",
          "action": "substrate.preflight",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "a6df426290b4549a59eecaa0519ead9bcc50b7fcb25bd2185ff6047960f19ccb",
          "completed_at": "2026-07-16T14:14:56Z"
        },
        {
          "step_id": "notices",
          "action": "substrate.notices",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "38b904a1cf83df048360fb2480571b749fd98d57e11f1afdffb5a74a78166fea",
          "completed_at": "2026-07-16T14:14:56Z"
        },
        {
          "step_id": "goals",
          "action": "substrate.goals",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "cdfd4de44a28140e686159f34f7b47975954c67e1d1efcef666e985acb136ed8",
          "completed_at": "2026-07-16T14:14:56Z"
        }
      ],
      "steps": [
        {
          "id": "config",
          "action": "config.audit",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-16T14:14:54Z",
          "output": {
            "status": "ok",
            "summary": {
              "settings": 195,
              "mutable": 186,
              "read_only_or_managed": 9,
              "unclassified": 0,
              "unknown": 0,
              "invalid": 0,
              "missing_using_defaults": 0
            },
            "unclassified_keys": [],
            "unknown_keys": [],
            "invalid_values": [],
            "missing_using_defaults": []
          },
          "output_hash": "3782ec2317c0c8ee7598634310a2804d8aae4735f557498f9d3b8fae7c45e1e5",
          "completed_at": "2026-07-16T14:14:54Z"
        },
        {
          "id": "services",
          "action": "services.audit",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-16T14:14:55Z",
          "output": {
            "status": "ok",
            "summary": {
              "critical": 0,
              "high": 0,
              "medium": 0,
              "low": 0
            },
            "findings": []
          },
          "output_hash": "13dcc58bd528f3efa3e6e0fa0853a6eedc376f1f3685fbd4869cbb2b60382ee3",
          "completed_at": "2026-07-16T14:14:55Z"
        },
        {
          "id": "state",
          "action": "state.consistency",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-16T14:14:55Z",
          "output": {
            "status": "ok",
            "repo_root": "D:\\Projects\\prd-plugin",
            "summary": {
              "errors": 0,
              "warnings": 0,
              "infos": 0
            },
            "findings": []
          },
          "output_hash": "5a1c6e5246defb1b6b6b90ff734db95bece2886b408ab112ed9b8e67222d5568",
          "completed_at": "2026-07-16T14:14:55Z"
        },
        {
          "id": "status",
          "action": "state.query",
          "status": "completed",
          "resolved_input_hash": "a15231a2142a2a9a85355a8b9cbbccffe01a9c9c2c2fd8c2bc2987cdc481564a",
          "started_at": "2026-07-16T14:14:55Z",
          "output": {
            "repo_root": "D:\\Projects\\prd-plugin",
            "autonomy_level": "autonomous",
            "requests_by_status": {
              "deferred": 1,
              "implemented": 89,
              "in_review": 1,
              "proposed": 3,
              "rejected": 1
            },
            "active_tracking": [],
            "tracking_branches": [],
            "tracking_branch_counts": {},
            "tracking_branch_errors": [],
            "open_health": [],
            "stale_count": 0,
            "skill_usage": {
              "project-decision-policy": 1,
              "project-request-intake": 1,
              "project-test-driven-implementation": 1,
              "project-verification-before-completion": 1,
              "project-llm-wiki": 1
            },
            "wiki_backfill_pending": false,
            "version_update": null
          },
          "output_hash": "e612fd24ae96a43d20bfe419de740c28c46e9e641ce9e590c5c2ca32d932b393",
          "completed_at": "2026-07-16T14:14:56Z"
        },
        {
          "id": "substrate",
          "action": "substrate.preflight",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-16T14:14:56Z",
          "output": {
            "status": "disabled",
            "services": {
              "status": "ok",
              "summary": {
                "critical": 0,
                "high": 0,
                "medium": 0,
                "low": 0
              },
              "findings": []
            },
            "policy": {
              "configured": {
                "enabled": false,
                "mode": "off",
                "capabilities": [
                  "records",
                  "graph",
                  "events"
                ],
                "contract_version": 2,
                "require_source_refs": true,
                "endpoint": "http://127.0.0.1:47124",
                "manual_url": "http://127.0.0.1:47124/utcp.json",
                "knowledge_browse_url": "http://127.0.0.1:5276",
                "auth_env": "AI_COLLAB_API_KEY",
                "timeout_seconds": 5,
                "max_result_bytes": 1048576,
                "cache_ttl_seconds": 60,
                "fallback": "local",
                "automation": {
                  "discovery_on_session_start": true,
                  "knowledge_recall": true,
                  "memory_recall": true,
                  "context_enrichment": true,
                  "notices_on_session_start": false,
                  "goals_sync": false,
                  "telemetry_on_maintenance": false,
                  "reporting_dispatch": true,
                  "judgment_dispatch": true,
                  "verification_execution": true
                }
              },
              "active": false,
              "effective_mode": "off",
              "effective_capabilities": []
            }
          },
          "output_hash": "a6df426290b4549a59eecaa0519ead9bcc50b7fcb25bd2185ff6047960f19ccb",
          "completed_at": "2026-07-16T14:14:56Z"
        },
        {
          "id": "notices",
          "action": "substrate.notices",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-16T14:14:56Z",
          "output": {
            "status": "disabled"
          },
          "output_hash": "38b904a1cf83df048360fb2480571b749fd98d57e11f1afdffb5a74a78166fea",
          "completed_at": "2026-07-16T14:14:56Z"
        },
        {
          "id": "goals",
          "action": "substrate.goals",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-16T14:14:56Z",
          "output": {
            "status": "disabled",
            "created": 0,
            "observed": 0,
            "results": []
          },
          "output_hash": "cdfd4de44a28140e686159f34f7b47975954c67e1d1efcef666e985acb136ed8",
          "completed_at": "2026-07-16T14:14:56Z"
        }
      ],
      "completed_at": "2026-07-16T14:14:56Z"
    },
    {
      "id": "WFR-259",
      "schema_version": "1.0",
      "workflow_id": "session.stop",
      "workflow_version": 1,
      "definition_hash": "0cef7bb3e28321be8f85375c154955a69310ce297e47de3f3b8dd48f77a2f07d",
      "plan_hash": "a5e1d77ac734217487fc418e29c7163f4e81178e25d171e70cd4c999d527d3e8",
      "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
      "inputs": {},
      "idempotency_key": "hook:Stop:019f6b47-bafe-70c0-ba1c-8c9d2af86c40",
      "status": "completed",
      "attempt": 1,
      "created_at": "2026-07-16T14:15:05Z",
      "updated_at": "2026-07-16T14:15:06Z",
      "receipts": [
        {
          "step_id": "state",
          "action": "state.consistency",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "5a1c6e5246defb1b6b6b90ff734db95bece2886b408ab112ed9b8e67222d5568",
          "completed_at": "2026-07-16T14:15:06Z"
        },
        {
          "step_id": "goals",
          "action": "substrate.goals",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "cdfd4de44a28140e686159f34f7b47975954c67e1d1efcef666e985acb136ed8",
          "completed_at": "2026-07-16T14:15:06Z"
        },
        {
          "step_id": "staleness",
          "action": "staleness.audit",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "1e81cb0ffd0a4d04626920a203b38d2d23a264cd43e807a85d375d69cae8a658",
          "completed_at": "2026-07-16T14:15:06Z"
        },
        {
          "step_id": "reflections",
          "action": "reflection.list",
          "input_hash": "0172e841ab4c13b3a4061f073f9d68a716ec87a8a5d52fde41823385e0582573",
          "output_hash": "c1b6b635c0bab21120657277f14ef6f839909875f307a3745fa48aee2bd6e449",
          "completed_at": "2026-07-16T14:15:06Z"
        },
        {
          "step_id": "bundle",
          "action": "reporting.bundle",
          "input_hash": "aed8ebb688dc3c085dd978d7c4120572173c3cb87e75919e4a937dcca6ef9457",
          "output_hash": "1e3c2b097cfbf440bcb114e6be9886a2a6ec5d728d22160f832b484b7e1392bb",
          "completed_at": "2026-07-16T14:15:06Z"
        },
        {
          "step_id": "delegated",
          "action": "reporting.delegate",
          "input_hash": "0fae08474dd6b273c8eac1063dd656e7f54bae999e800ca8a6bc0821f4994f9d",
          "output_hash": "e6085059f197def80ae95add1f328418107bea5436c9bd002530043646a3a95c",
          "completed_at": "2026-07-16T14:15:06Z"
        }
      ],
      "steps": [
        {
          "id": "state",
          "action": "state.consistency",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-16T14:15:05Z",
          "output": {
            "status": "ok",
            "repo_root": "D:\\Projects\\prd-plugin",
            "summary": {
              "errors": 0,
              "warnings": 0,
              "infos": 0
            },
            "findings": []
          },
          "output_hash": "5a1c6e5246defb1b6b6b90ff734db95bece2886b408ab112ed9b8e67222d5568",
          "completed_at": "2026-07-16T14:15:06Z"
        },
        {
          "id": "goals",
          "action": "substrate.goals",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-16T14:15:06Z",
          "output": {
            "status": "disabled",
            "created": 0,
            "observed": 0,
            "results": []
          },
          "output_hash": "cdfd4de44a28140e686159f34f7b47975954c67e1d1efcef666e985acb136ed8",
          "completed_at": "2026-07-16T14:15:06Z"
        },
        {
          "id": "staleness",
          "action": "staleness.audit",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-16T14:15:06Z",
          "output": {
            "status": "ok",
            "repo_root": "D:\\Projects\\prd-plugin",
            "counts": {
              "stale": 0
            },
            "stale": []
          },
          "output_hash": "1e81cb0ffd0a4d04626920a203b38d2d23a264cd43e807a85d375d69cae8a658",
          "completed_at": "2026-07-16T14:15:06Z"
        },
        {
          "id": "reflections",
          "action": "reflection.list",
          "status": "completed",
          "resolved_input_hash": "0172e841ab4c13b3a4061f073f9d68a716ec87a8a5d52fde41823385e0582573",
          "started_at": "2026-07-16T14:15:06Z",
          "output": {
            "enabled": false,
            "on_stop": true,
            "max_questions_per_stop": 5,
            "categories": [
              {
                "id": "behaviour_quality",
                "name": "Behaviour quality",
                "enabled": true,
                "question_count": 3
              },
              {
                "id": "harness_friction",
                "name": "Harness friction",
                "enabled": true,
                "question_count": 2
              }
            ],
            "questions": [
              {
                "id": "RFQ-001",
                "text": "Based on the work you just carried out, would you classify your behaviour as good? Answer yes or no and cite observable evidence.",
                "enabled": true,
                "category_id": "behaviour_quality",
                "category_name": "Behaviour quality",
                "effective_enabled": false
              },
              {
                "id": "RFQ-002",
                "text": "If you answered no, what could you do differently to correct your behaviour?",
                "enabled": true,
                "category_id": "behaviour_quality",
                "category_name": "Behaviour quality",
                "effective_enabled": false
              },
              {
                "id": "RFQ-003",
                "text": "Would another attempt using the identified good behaviours materially improve the outcome? Answer yes or no and state the next corrective action if yes.",
                "enabled": true,
                "category_id": "behaviour_quality",
                "category_name": "Behaviour quality",
                "effective_enabled": false
              },
              {
                "id": "RFQ-004",
                "text": "What harness friction points made this work more difficult?",
                "enabled": true,
                "category_id": "harness_friction",
                "category_name": "Harness friction",
                "effective_enabled": false
              },
              {
                "id": "RFQ-005",
                "text": "What up to three changes would most improve friction in the harness?",
                "enabled": true,
                "category_id": "harness_friction",
                "category_name": "Harness friction",
                "effective_enabled": false
              }
            ]
          },
          "output_hash": "c1b6b635c0bab21120657277f14ef6f839909875f307a3745fa48aee2bd6e449",
          "completed_at": "2026-07-16T14:15:06Z"
        },
        {
          "id": "bundle",
          "action": "reporting.bundle",
          "status": "completed",
          "resolved_input_hash": "aed8ebb688dc3c085dd978d7c4120572173c3cb87e75919e4a937dcca6ef9457",
          "started_at": "2026-07-16T14:15:06Z",
          "output": {
            "contract_version": 1,
            "task": "session_summary",
            "repo": "prd-plugin",
            "policy": {
              "enabled": false,
              "executor": "ai-collab",
              "contract_version": 1,
              "profile": "fast-capable",
              "tasks": [
                "report_summary",
                "session_summary",
                "wiki_synthesis",
                "triage_draft"
              ],
              "fallback": "main",
              "require_source_refs": true,
              "max_input_tokens": 12000,
              "max_output_tokens": 1500,
              "timeout_seconds": 30
            },
            "facts": {
              "requests_by_status": {
                "deferred": 1,
                "implemented": 89,
                "in_review": 1,
                "proposed": 3,
                "rejected": 1
              },
              "active_requests": [
                {
                  "id": "REQ-072",
                  "status": "proposed",
                  "severity": "low",
                  "summary": "opencode run-until-done: session.idle is a non-blocking notification, so the stop guard can't force continuation on opencode (currently degrades to a printed reminder, 0.5.95). Investigate whether opencode exposes any vetoable/continuation mechanism (a different event, a permission hook, or a 'continue' API) to enforce run-until-done, or accept the reminder as the permanent ceiling. Low priority — user rarely uses opencode."
                },
                {
                  "id": "REQ-104",
                  "status": "in_review",
                  "severity": "high",
                  "summary": "Ordinary-workspace chat has no path into the planning pipeline: owner-approved collaboration decisions land in scratchpads, room agents cannot allocate REQ/PRD/TRK ids past the parallel-worker mutation boundary, and goal-administrator grants detach when participant identity changes on runner restart"
                },
                {
                  "id": "REQ-107",
                  "status": "proposed",
                  "severity": "high",
                  "summary": "Adopt the UTCP-first tool architecture (user-directed): one UTCP manual is the source of truth for ALL prd-plugin tools including mutations, the MCP surface is generated by the official @utcp/mcp-bridge, and the 2,323-line hand-written MCP server is retired as a hand-maintained surface"
                },
                {
                  "id": "REQ-113",
                  "status": "proposed",
                  "severity": "low",
                  "summary": "Request-thread close has no validated tool: finished threads stay 'unresolved' in message_check forever unless state is hand-flipped; add a thread-close capability to the UTCP-first tool catalog (REQ-107), not as a new hand-written MCP handler"
                }
              ],
              "active_tracking": [],
              "open_health": [],
              "evidence_count": 125,
              "decision_count": 10
            },
            "findings": [],
            "source_refs": [
              ".prd_plugin/config.json",
              ".prd_plugin/state/decisions.json",
              ".prd_plugin/state/evidence.json",
              ".prd_plugin/state/health.json",
              ".prd_plugin/state/requests.json",
              ".prd_plugin/state/tracking.json",
              "REQ-072",
              "REQ-104",
              "REQ-107",
              "REQ-113"
            ],
            "constraints": {
              "max_input_tokens": 12000,
              "max_output_tokens": 1500,
              "timeout_seconds": 30,
              "require_source_refs": true,
              "no_project_state_writes": true,
              "no_secrets_or_local_session_content": true
            }
          },
          "output_hash": "1e3c2b097cfbf440bcb114e6be9886a2a6ec5d728d22160f832b484b7e1392bb",
          "completed_at": "2026-07-16T14:15:06Z"
        },
        {
          "id": "delegated",
          "action": "reporting.delegate",
          "status": "completed",
          "resolved_input_hash": "0fae08474dd6b273c8eac1063dd656e7f54bae999e800ca8a6bc0821f4994f9d",
          "started_at": "2026-07-16T14:15:06Z",
          "output": {
            "status": "fallback",
            "action": "main",
            "reason": "disabled"
          },
          "output_hash": "e6085059f197def80ae95add1f328418107bea5436c9bd002530043646a3a95c",
          "completed_at": "2026-07-16T14:15:06Z"
        }
      ],
      "completed_at": "2026-07-16T14:15:06Z"
    },
    {
      "id": "WFR-260",
      "schema_version": "1.0",
      "workflow_id": "session.start",
      "workflow_version": 1,
      "definition_hash": "d0f98da02571e6dd27fec4aed92d3c82af9db75f8b90b997bf665635c7b7f6ca",
      "plan_hash": "b5072615ca3b7e9a3bd85d50d1f069d99ef2a9816b32c03a370745ed7a205536",
      "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
      "inputs": {},
      "idempotency_key": "hook:SessionStart:019f6b48-0534-77b3-8c83-597812f3c02d",
      "status": "completed",
      "attempt": 1,
      "created_at": "2026-07-16T14:15:14Z",
      "updated_at": "2026-07-16T14:15:16Z",
      "receipts": [
        {
          "step_id": "config",
          "action": "config.audit",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "3782ec2317c0c8ee7598634310a2804d8aae4735f557498f9d3b8fae7c45e1e5",
          "completed_at": "2026-07-16T14:15:14Z"
        },
        {
          "step_id": "services",
          "action": "services.audit",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "13dcc58bd528f3efa3e6e0fa0853a6eedc376f1f3685fbd4869cbb2b60382ee3",
          "completed_at": "2026-07-16T14:15:14Z"
        },
        {
          "step_id": "state",
          "action": "state.consistency",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "5a1c6e5246defb1b6b6b90ff734db95bece2886b408ab112ed9b8e67222d5568",
          "completed_at": "2026-07-16T14:15:15Z"
        },
        {
          "step_id": "status",
          "action": "state.query",
          "input_hash": "a15231a2142a2a9a85355a8b9cbbccffe01a9c9c2c2fd8c2bc2987cdc481564a",
          "output_hash": "e612fd24ae96a43d20bfe419de740c28c46e9e641ce9e590c5c2ca32d932b393",
          "completed_at": "2026-07-16T14:15:16Z"
        },
        {
          "step_id": "substrate",
          "action": "substrate.preflight",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "a6df426290b4549a59eecaa0519ead9bcc50b7fcb25bd2185ff6047960f19ccb",
          "completed_at": "2026-07-16T14:15:16Z"
        },
        {
          "step_id": "notices",
          "action": "substrate.notices",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "38b904a1cf83df048360fb2480571b749fd98d57e11f1afdffb5a74a78166fea",
          "completed_at": "2026-07-16T14:15:16Z"
        },
        {
          "step_id": "goals",
          "action": "substrate.goals",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "cdfd4de44a28140e686159f34f7b47975954c67e1d1efcef666e985acb136ed8",
          "completed_at": "2026-07-16T14:15:16Z"
        }
      ],
      "steps": [
        {
          "id": "config",
          "action": "config.audit",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-16T14:15:14Z",
          "output": {
            "status": "ok",
            "summary": {
              "settings": 195,
              "mutable": 186,
              "read_only_or_managed": 9,
              "unclassified": 0,
              "unknown": 0,
              "invalid": 0,
              "missing_using_defaults": 0
            },
            "unclassified_keys": [],
            "unknown_keys": [],
            "invalid_values": [],
            "missing_using_defaults": []
          },
          "output_hash": "3782ec2317c0c8ee7598634310a2804d8aae4735f557498f9d3b8fae7c45e1e5",
          "completed_at": "2026-07-16T14:15:14Z"
        },
        {
          "id": "services",
          "action": "services.audit",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-16T14:15:14Z",
          "output": {
            "status": "ok",
            "summary": {
              "critical": 0,
              "high": 0,
              "medium": 0,
              "low": 0
            },
            "findings": []
          },
          "output_hash": "13dcc58bd528f3efa3e6e0fa0853a6eedc376f1f3685fbd4869cbb2b60382ee3",
          "completed_at": "2026-07-16T14:15:14Z"
        },
        {
          "id": "state",
          "action": "state.consistency",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-16T14:15:14Z",
          "output": {
            "status": "ok",
            "repo_root": "D:\\Projects\\prd-plugin",
            "summary": {
              "errors": 0,
              "warnings": 0,
              "infos": 0
            },
            "findings": []
          },
          "output_hash": "5a1c6e5246defb1b6b6b90ff734db95bece2886b408ab112ed9b8e67222d5568",
          "completed_at": "2026-07-16T14:15:15Z"
        },
        {
          "id": "status",
          "action": "state.query",
          "status": "completed",
          "resolved_input_hash": "a15231a2142a2a9a85355a8b9cbbccffe01a9c9c2c2fd8c2bc2987cdc481564a",
          "started_at": "2026-07-16T14:15:16Z",
          "output": {
            "repo_root": "D:\\Projects\\prd-plugin",
            "autonomy_level": "autonomous",
            "requests_by_status": {
              "deferred": 1,
              "implemented": 89,
              "in_review": 1,
              "proposed": 3,
              "rejected": 1
            },
            "active_tracking": [],
            "tracking_branches": [],
            "tracking_branch_counts": {},
            "tracking_branch_errors": [],
            "open_health": [],
            "stale_count": 0,
            "skill_usage": {
              "project-decision-policy": 1,
              "project-request-intake": 1,
              "project-test-driven-implementation": 1,
              "project-verification-before-completion": 1,
              "project-llm-wiki": 1
            },
            "wiki_backfill_pending": false,
            "version_update": null
          },
          "output_hash": "e612fd24ae96a43d20bfe419de740c28c46e9e641ce9e590c5c2ca32d932b393",
          "completed_at": "2026-07-16T14:15:16Z"
        },
        {
          "id": "substrate",
          "action": "substrate.preflight",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-16T14:15:16Z",
          "output": {
            "status": "disabled",
            "services": {
              "status": "ok",
              "summary": {
                "critical": 0,
                "high": 0,
                "medium": 0,
                "low": 0
              },
              "findings": []
            },
            "policy": {
              "configured": {
                "enabled": false,
                "mode": "off",
                "capabilities": [
                  "records",
                  "graph",
                  "events"
                ],
                "contract_version": 2,
                "require_source_refs": true,
                "endpoint": "http://127.0.0.1:47124",
                "manual_url": "http://127.0.0.1:47124/utcp.json",
                "knowledge_browse_url": "http://127.0.0.1:5276",
                "auth_env": "AI_COLLAB_API_KEY",
                "timeout_seconds": 5,
                "max_result_bytes": 1048576,
                "cache_ttl_seconds": 60,
                "fallback": "local",
                "automation": {
                  "discovery_on_session_start": true,
                  "knowledge_recall": true,
                  "memory_recall": true,
                  "context_enrichment": true,
                  "notices_on_session_start": false,
                  "goals_sync": false,
                  "telemetry_on_maintenance": false,
                  "reporting_dispatch": true,
                  "judgment_dispatch": true,
                  "verification_execution": true
                }
              },
              "active": false,
              "effective_mode": "off",
              "effective_capabilities": []
            }
          },
          "output_hash": "a6df426290b4549a59eecaa0519ead9bcc50b7fcb25bd2185ff6047960f19ccb",
          "completed_at": "2026-07-16T14:15:16Z"
        },
        {
          "id": "notices",
          "action": "substrate.notices",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-16T14:15:16Z",
          "output": {
            "status": "disabled"
          },
          "output_hash": "38b904a1cf83df048360fb2480571b749fd98d57e11f1afdffb5a74a78166fea",
          "completed_at": "2026-07-16T14:15:16Z"
        },
        {
          "id": "goals",
          "action": "substrate.goals",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-16T14:15:16Z",
          "output": {
            "status": "disabled",
            "created": 0,
            "observed": 0,
            "results": []
          },
          "output_hash": "cdfd4de44a28140e686159f34f7b47975954c67e1d1efcef666e985acb136ed8",
          "completed_at": "2026-07-16T14:15:16Z"
        }
      ],
      "completed_at": "2026-07-16T14:15:16Z"
    },
    {
      "id": "WFR-261",
      "schema_version": "1.0",
      "workflow_id": "session.stop",
      "workflow_version": 1,
      "definition_hash": "0cef7bb3e28321be8f85375c154955a69310ce297e47de3f3b8dd48f77a2f07d",
      "plan_hash": "a5e1d77ac734217487fc418e29c7163f4e81178e25d171e70cd4c999d527d3e8",
      "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
      "inputs": {},
      "idempotency_key": "hook:Stop:019f6b48-0534-77b3-8c83-597812f3c02d",
      "status": "completed",
      "attempt": 1,
      "created_at": "2026-07-16T14:15:21Z",
      "updated_at": "2026-07-16T14:15:23Z",
      "receipts": [
        {
          "step_id": "state",
          "action": "state.consistency",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "5a1c6e5246defb1b6b6b90ff734db95bece2886b408ab112ed9b8e67222d5568",
          "completed_at": "2026-07-16T14:15:22Z"
        },
        {
          "step_id": "goals",
          "action": "substrate.goals",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "cdfd4de44a28140e686159f34f7b47975954c67e1d1efcef666e985acb136ed8",
          "completed_at": "2026-07-16T14:15:22Z"
        },
        {
          "step_id": "staleness",
          "action": "staleness.audit",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "1e81cb0ffd0a4d04626920a203b38d2d23a264cd43e807a85d375d69cae8a658",
          "completed_at": "2026-07-16T14:15:22Z"
        },
        {
          "step_id": "reflections",
          "action": "reflection.list",
          "input_hash": "0172e841ab4c13b3a4061f073f9d68a716ec87a8a5d52fde41823385e0582573",
          "output_hash": "c1b6b635c0bab21120657277f14ef6f839909875f307a3745fa48aee2bd6e449",
          "completed_at": "2026-07-16T14:15:22Z"
        },
        {
          "step_id": "bundle",
          "action": "reporting.bundle",
          "input_hash": "aed8ebb688dc3c085dd978d7c4120572173c3cb87e75919e4a937dcca6ef9457",
          "output_hash": "1e3c2b097cfbf440bcb114e6be9886a2a6ec5d728d22160f832b484b7e1392bb",
          "completed_at": "2026-07-16T14:15:22Z"
        },
        {
          "step_id": "delegated",
          "action": "reporting.delegate",
          "input_hash": "0fae08474dd6b273c8eac1063dd656e7f54bae999e800ca8a6bc0821f4994f9d",
          "output_hash": "e6085059f197def80ae95add1f328418107bea5436c9bd002530043646a3a95c",
          "completed_at": "2026-07-16T14:15:22Z"
        }
      ],
      "steps": [
        {
          "id": "state",
          "action": "state.consistency",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-16T14:15:21Z",
          "output": {
            "status": "ok",
            "repo_root": "D:\\Projects\\prd-plugin",
            "summary": {
              "errors": 0,
              "warnings": 0,
              "infos": 0
            },
            "findings": []
          },
          "output_hash": "5a1c6e5246defb1b6b6b90ff734db95bece2886b408ab112ed9b8e67222d5568",
          "completed_at": "2026-07-16T14:15:22Z"
        },
        {
          "id": "goals",
          "action": "substrate.goals",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-16T14:15:22Z",
          "output": {
            "status": "disabled",
            "created": 0,
            "observed": 0,
            "results": []
          },
          "output_hash": "cdfd4de44a28140e686159f34f7b47975954c67e1d1efcef666e985acb136ed8",
          "completed_at": "2026-07-16T14:15:22Z"
        },
        {
          "id": "staleness",
          "action": "staleness.audit",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-16T14:15:22Z",
          "output": {
            "status": "ok",
            "repo_root": "D:\\Projects\\prd-plugin",
            "counts": {
              "stale": 0
            },
            "stale": []
          },
          "output_hash": "1e81cb0ffd0a4d04626920a203b38d2d23a264cd43e807a85d375d69cae8a658",
          "completed_at": "2026-07-16T14:15:22Z"
        },
        {
          "id": "reflections",
          "action": "reflection.list",
          "status": "completed",
          "resolved_input_hash": "0172e841ab4c13b3a4061f073f9d68a716ec87a8a5d52fde41823385e0582573",
          "started_at": "2026-07-16T14:15:22Z",
          "output": {
            "enabled": false,
            "on_stop": true,
            "max_questions_per_stop": 5,
            "categories": [
              {
                "id": "behaviour_quality",
                "name": "Behaviour quality",
                "enabled": true,
                "question_count": 3
              },
              {
                "id": "harness_friction",
                "name": "Harness friction",
                "enabled": true,
                "question_count": 2
              }
            ],
            "questions": [
              {
                "id": "RFQ-001",
                "text": "Based on the work you just carried out, would you classify your behaviour as good? Answer yes or no and cite observable evidence.",
                "enabled": true,
                "category_id": "behaviour_quality",
                "category_name": "Behaviour quality",
                "effective_enabled": false
              },
              {
                "id": "RFQ-002",
                "text": "If you answered no, what could you do differently to correct your behaviour?",
                "enabled": true,
                "category_id": "behaviour_quality",
                "category_name": "Behaviour quality",
                "effective_enabled": false
              },
              {
                "id": "RFQ-003",
                "text": "Would another attempt using the identified good behaviours materially improve the outcome? Answer yes or no and state the next corrective action if yes.",
                "enabled": true,
                "category_id": "behaviour_quality",
                "category_name": "Behaviour quality",
                "effective_enabled": false
              },
              {
                "id": "RFQ-004",
                "text": "What harness friction points made this work more difficult?",
                "enabled": true,
                "category_id": "harness_friction",
                "category_name": "Harness friction",
                "effective_enabled": false
              },
              {
                "id": "RFQ-005",
                "text": "What up to three changes would most improve friction in the harness?",
                "enabled": true,
                "category_id": "harness_friction",
                "category_name": "Harness friction",
                "effective_enabled": false
              }
            ]
          },
          "output_hash": "c1b6b635c0bab21120657277f14ef6f839909875f307a3745fa48aee2bd6e449",
          "completed_at": "2026-07-16T14:15:22Z"
        },
        {
          "id": "bundle",
          "action": "reporting.bundle",
          "status": "completed",
          "resolved_input_hash": "aed8ebb688dc3c085dd978d7c4120572173c3cb87e75919e4a937dcca6ef9457",
          "started_at": "2026-07-16T14:15:22Z",
          "output": {
            "contract_version": 1,
            "task": "session_summary",
            "repo": "prd-plugin",
            "policy": {
              "enabled": false,
              "executor": "ai-collab",
              "contract_version": 1,
              "profile": "fast-capable",
              "tasks": [
                "report_summary",
                "session_summary",
                "wiki_synthesis",
                "triage_draft"
              ],
              "fallback": "main",
              "require_source_refs": true,
              "max_input_tokens": 12000,
              "max_output_tokens": 1500,
              "timeout_seconds": 30
            },
            "facts": {
              "requests_by_status": {
                "deferred": 1,
                "implemented": 89,
                "in_review": 1,
                "proposed": 3,
                "rejected": 1
              },
              "active_requests": [
                {
                  "id": "REQ-072",
                  "status": "proposed",
                  "severity": "low",
                  "summary": "opencode run-until-done: session.idle is a non-blocking notification, so the stop guard can't force continuation on opencode (currently degrades to a printed reminder, 0.5.95). Investigate whether opencode exposes any vetoable/continuation mechanism (a different event, a permission hook, or a 'continue' API) to enforce run-until-done, or accept the reminder as the permanent ceiling. Low priority — user rarely uses opencode."
                },
                {
                  "id": "REQ-104",
                  "status": "in_review",
                  "severity": "high",
                  "summary": "Ordinary-workspace chat has no path into the planning pipeline: owner-approved collaboration decisions land in scratchpads, room agents cannot allocate REQ/PRD/TRK ids past the parallel-worker mutation boundary, and goal-administrator grants detach when participant identity changes on runner restart"
                },
                {
                  "id": "REQ-107",
                  "status": "proposed",
                  "severity": "high",
                  "summary": "Adopt the UTCP-first tool architecture (user-directed): one UTCP manual is the source of truth for ALL prd-plugin tools including mutations, the MCP surface is generated by the official @utcp/mcp-bridge, and the 2,323-line hand-written MCP server is retired as a hand-maintained surface"
                },
                {
                  "id": "REQ-113",
                  "status": "proposed",
                  "severity": "low",
                  "summary": "Request-thread close has no validated tool: finished threads stay 'unresolved' in message_check forever unless state is hand-flipped; add a thread-close capability to the UTCP-first tool catalog (REQ-107), not as a new hand-written MCP handler"
                }
              ],
              "active_tracking": [],
              "open_health": [],
              "evidence_count": 125,
              "decision_count": 10
            },
            "findings": [],
            "source_refs": [
              ".prd_plugin/config.json",
              ".prd_plugin/state/decisions.json",
              ".prd_plugin/state/evidence.json",
              ".prd_plugin/state/health.json",
              ".prd_plugin/state/requests.json",
              ".prd_plugin/state/tracking.json",
              "REQ-072",
              "REQ-104",
              "REQ-107",
              "REQ-113"
            ],
            "constraints": {
              "max_input_tokens": 12000,
              "max_output_tokens": 1500,
              "timeout_seconds": 30,
              "require_source_refs": true,
              "no_project_state_writes": true,
              "no_secrets_or_local_session_content": true
            }
          },
          "output_hash": "1e3c2b097cfbf440bcb114e6be9886a2a6ec5d728d22160f832b484b7e1392bb",
          "completed_at": "2026-07-16T14:15:22Z"
        },
        {
          "id": "delegated",
          "action": "reporting.delegate",
          "status": "completed",
          "resolved_input_hash": "0fae08474dd6b273c8eac1063dd656e7f54bae999e800ca8a6bc0821f4994f9d",
          "started_at": "2026-07-16T14:15:22Z",
          "output": {
            "status": "fallback",
            "action": "main",
            "reason": "disabled"
          },
          "output_hash": "e6085059f197def80ae95add1f328418107bea5436c9bd002530043646a3a95c",
          "completed_at": "2026-07-16T14:15:22Z"
        }
      ],
      "completed_at": "2026-07-16T14:15:23Z"
    },
    {
      "id": "WFR-262",
      "schema_version": "1.0",
      "workflow_id": "session.start",
      "workflow_version": 1,
      "definition_hash": "d0f98da02571e6dd27fec4aed92d3c82af9db75f8b90b997bf665635c7b7f6ca",
      "plan_hash": "b5072615ca3b7e9a3bd85d50d1f069d99ef2a9816b32c03a370745ed7a205536",
      "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
      "inputs": {},
      "idempotency_key": "hook:SessionStart:019f6b48-44d1-7b60-b122-57c527116f87",
      "status": "completed",
      "attempt": 1,
      "created_at": "2026-07-16T14:15:30Z",
      "updated_at": "2026-07-16T14:15:31Z",
      "receipts": [
        {
          "step_id": "config",
          "action": "config.audit",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "3782ec2317c0c8ee7598634310a2804d8aae4735f557498f9d3b8fae7c45e1e5",
          "completed_at": "2026-07-16T14:15:30Z"
        },
        {
          "step_id": "services",
          "action": "services.audit",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "13dcc58bd528f3efa3e6e0fa0853a6eedc376f1f3685fbd4869cbb2b60382ee3",
          "completed_at": "2026-07-16T14:15:30Z"
        },
        {
          "step_id": "state",
          "action": "state.consistency",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "5a1c6e5246defb1b6b6b90ff734db95bece2886b408ab112ed9b8e67222d5568",
          "completed_at": "2026-07-16T14:15:31Z"
        },
        {
          "step_id": "status",
          "action": "state.query",
          "input_hash": "a15231a2142a2a9a85355a8b9cbbccffe01a9c9c2c2fd8c2bc2987cdc481564a",
          "output_hash": "e612fd24ae96a43d20bfe419de740c28c46e9e641ce9e590c5c2ca32d932b393",
          "completed_at": "2026-07-16T14:15:31Z"
        },
        {
          "step_id": "substrate",
          "action": "substrate.preflight",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "a6df426290b4549a59eecaa0519ead9bcc50b7fcb25bd2185ff6047960f19ccb",
          "completed_at": "2026-07-16T14:15:31Z"
        },
        {
          "step_id": "notices",
          "action": "substrate.notices",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "38b904a1cf83df048360fb2480571b749fd98d57e11f1afdffb5a74a78166fea",
          "completed_at": "2026-07-16T14:15:31Z"
        },
        {
          "step_id": "goals",
          "action": "substrate.goals",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "cdfd4de44a28140e686159f34f7b47975954c67e1d1efcef666e985acb136ed8",
          "completed_at": "2026-07-16T14:15:31Z"
        }
      ],
      "steps": [
        {
          "id": "config",
          "action": "config.audit",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-16T14:15:30Z",
          "output": {
            "status": "ok",
            "summary": {
              "settings": 195,
              "mutable": 186,
              "read_only_or_managed": 9,
              "unclassified": 0,
              "unknown": 0,
              "invalid": 0,
              "missing_using_defaults": 0
            },
            "unclassified_keys": [],
            "unknown_keys": [],
            "invalid_values": [],
            "missing_using_defaults": []
          },
          "output_hash": "3782ec2317c0c8ee7598634310a2804d8aae4735f557498f9d3b8fae7c45e1e5",
          "completed_at": "2026-07-16T14:15:30Z"
        },
        {
          "id": "services",
          "action": "services.audit",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-16T14:15:30Z",
          "output": {
            "status": "ok",
            "summary": {
              "critical": 0,
              "high": 0,
              "medium": 0,
              "low": 0
            },
            "findings": []
          },
          "output_hash": "13dcc58bd528f3efa3e6e0fa0853a6eedc376f1f3685fbd4869cbb2b60382ee3",
          "completed_at": "2026-07-16T14:15:30Z"
        },
        {
          "id": "state",
          "action": "state.consistency",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-16T14:15:30Z",
          "output": {
            "status": "ok",
            "repo_root": "D:\\Projects\\prd-plugin",
            "summary": {
              "errors": 0,
              "warnings": 0,
              "infos": 0
            },
            "findings": []
          },
          "output_hash": "5a1c6e5246defb1b6b6b90ff734db95bece2886b408ab112ed9b8e67222d5568",
          "completed_at": "2026-07-16T14:15:31Z"
        },
        {
          "id": "status",
          "action": "state.query",
          "status": "completed",
          "resolved_input_hash": "a15231a2142a2a9a85355a8b9cbbccffe01a9c9c2c2fd8c2bc2987cdc481564a",
          "started_at": "2026-07-16T14:15:31Z",
          "output": {
            "repo_root": "D:\\Projects\\prd-plugin",
            "autonomy_level": "autonomous",
            "requests_by_status": {
              "deferred": 1,
              "implemented": 89,
              "in_review": 1,
              "proposed": 3,
              "rejected": 1
            },
            "active_tracking": [],
            "tracking_branches": [],
            "tracking_branch_counts": {},
            "tracking_branch_errors": [],
            "open_health": [],
            "stale_count": 0,
            "skill_usage": {
              "project-decision-policy": 1,
              "project-request-intake": 1,
              "project-test-driven-implementation": 1,
              "project-verification-before-completion": 1,
              "project-llm-wiki": 1
            },
            "wiki_backfill_pending": false,
            "version_update": null
          },
          "output_hash": "e612fd24ae96a43d20bfe419de740c28c46e9e641ce9e590c5c2ca32d932b393",
          "completed_at": "2026-07-16T14:15:31Z"
        },
        {
          "id": "substrate",
          "action": "substrate.preflight",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-16T14:15:31Z",
          "output": {
            "status": "disabled",
            "services": {
              "status": "ok",
              "summary": {
                "critical": 0,
                "high": 0,
                "medium": 0,
                "low": 0
              },
              "findings": []
            },
            "policy": {
              "configured": {
                "enabled": false,
                "mode": "off",
                "capabilities": [
                  "records",
                  "graph",
                  "events"
                ],
                "contract_version": 2,
                "require_source_refs": true,
                "endpoint": "http://127.0.0.1:47124",
                "manual_url": "http://127.0.0.1:47124/utcp.json",
                "knowledge_browse_url": "http://127.0.0.1:5276",
                "auth_env": "AI_COLLAB_API_KEY",
                "timeout_seconds": 5,
                "max_result_bytes": 1048576,
                "cache_ttl_seconds": 60,
                "fallback": "local",
                "automation": {
                  "discovery_on_session_start": true,
                  "knowledge_recall": true,
                  "memory_recall": true,
                  "context_enrichment": true,
                  "notices_on_session_start": false,
                  "goals_sync": false,
                  "telemetry_on_maintenance": false,
                  "reporting_dispatch": true,
                  "judgment_dispatch": true,
                  "verification_execution": true
                }
              },
              "active": false,
              "effective_mode": "off",
              "effective_capabilities": []
            }
          },
          "output_hash": "a6df426290b4549a59eecaa0519ead9bcc50b7fcb25bd2185ff6047960f19ccb",
          "completed_at": "2026-07-16T14:15:31Z"
        },
        {
          "id": "notices",
          "action": "substrate.notices",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-16T14:15:31Z",
          "output": {
            "status": "disabled"
          },
          "output_hash": "38b904a1cf83df048360fb2480571b749fd98d57e11f1afdffb5a74a78166fea",
          "completed_at": "2026-07-16T14:15:31Z"
        },
        {
          "id": "goals",
          "action": "substrate.goals",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-16T14:15:31Z",
          "output": {
            "status": "disabled",
            "created": 0,
            "observed": 0,
            "results": []
          },
          "output_hash": "cdfd4de44a28140e686159f34f7b47975954c67e1d1efcef666e985acb136ed8",
          "completed_at": "2026-07-16T14:15:31Z"
        }
      ],
      "completed_at": "2026-07-16T14:15:31Z"
    },
    {
      "id": "WFR-263",
      "schema_version": "1.0",
      "workflow_id": "session.stop",
      "workflow_version": 1,
      "definition_hash": "0cef7bb3e28321be8f85375c154955a69310ce297e47de3f3b8dd48f77a2f07d",
      "plan_hash": "a5e1d77ac734217487fc418e29c7163f4e81178e25d171e70cd4c999d527d3e8",
      "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
      "inputs": {},
      "idempotency_key": "hook:Stop:019f6b48-44d1-7b60-b122-57c527116f87",
      "status": "completed",
      "attempt": 1,
      "created_at": "2026-07-16T14:15:36Z",
      "updated_at": "2026-07-16T14:15:38Z",
      "receipts": [
        {
          "step_id": "state",
          "action": "state.consistency",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "5a1c6e5246defb1b6b6b90ff734db95bece2886b408ab112ed9b8e67222d5568",
          "completed_at": "2026-07-16T14:15:37Z"
        },
        {
          "step_id": "goals",
          "action": "substrate.goals",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "cdfd4de44a28140e686159f34f7b47975954c67e1d1efcef666e985acb136ed8",
          "completed_at": "2026-07-16T14:15:37Z"
        },
        {
          "step_id": "staleness",
          "action": "staleness.audit",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "1e81cb0ffd0a4d04626920a203b38d2d23a264cd43e807a85d375d69cae8a658",
          "completed_at": "2026-07-16T14:15:37Z"
        },
        {
          "step_id": "reflections",
          "action": "reflection.list",
          "input_hash": "0172e841ab4c13b3a4061f073f9d68a716ec87a8a5d52fde41823385e0582573",
          "output_hash": "c1b6b635c0bab21120657277f14ef6f839909875f307a3745fa48aee2bd6e449",
          "completed_at": "2026-07-16T14:15:37Z"
        },
        {
          "step_id": "bundle",
          "action": "reporting.bundle",
          "input_hash": "aed8ebb688dc3c085dd978d7c4120572173c3cb87e75919e4a937dcca6ef9457",
          "output_hash": "1e3c2b097cfbf440bcb114e6be9886a2a6ec5d728d22160f832b484b7e1392bb",
          "completed_at": "2026-07-16T14:15:37Z"
        },
        {
          "step_id": "delegated",
          "action": "reporting.delegate",
          "input_hash": "0fae08474dd6b273c8eac1063dd656e7f54bae999e800ca8a6bc0821f4994f9d",
          "output_hash": "e6085059f197def80ae95add1f328418107bea5436c9bd002530043646a3a95c",
          "completed_at": "2026-07-16T14:15:38Z"
        }
      ],
      "steps": [
        {
          "id": "state",
          "action": "state.consistency",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-16T14:15:36Z",
          "output": {
            "status": "ok",
            "repo_root": "D:\\Projects\\prd-plugin",
            "summary": {
              "errors": 0,
              "warnings": 0,
              "infos": 0
            },
            "findings": []
          },
          "output_hash": "5a1c6e5246defb1b6b6b90ff734db95bece2886b408ab112ed9b8e67222d5568",
          "completed_at": "2026-07-16T14:15:37Z"
        },
        {
          "id": "goals",
          "action": "substrate.goals",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-16T14:15:37Z",
          "output": {
            "status": "disabled",
            "created": 0,
            "observed": 0,
            "results": []
          },
          "output_hash": "cdfd4de44a28140e686159f34f7b47975954c67e1d1efcef666e985acb136ed8",
          "completed_at": "2026-07-16T14:15:37Z"
        },
        {
          "id": "staleness",
          "action": "staleness.audit",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-16T14:15:37Z",
          "output": {
            "status": "ok",
            "repo_root": "D:\\Projects\\prd-plugin",
            "counts": {
              "stale": 0
            },
            "stale": []
          },
          "output_hash": "1e81cb0ffd0a4d04626920a203b38d2d23a264cd43e807a85d375d69cae8a658",
          "completed_at": "2026-07-16T14:15:37Z"
        },
        {
          "id": "reflections",
          "action": "reflection.list",
          "status": "completed",
          "resolved_input_hash": "0172e841ab4c13b3a4061f073f9d68a716ec87a8a5d52fde41823385e0582573",
          "started_at": "2026-07-16T14:15:37Z",
          "output": {
            "enabled": false,
            "on_stop": true,
            "max_questions_per_stop": 5,
            "categories": [
              {
                "id": "behaviour_quality",
                "name": "Behaviour quality",
                "enabled": true,
                "question_count": 3
              },
              {
                "id": "harness_friction",
                "name": "Harness friction",
                "enabled": true,
                "question_count": 2
              }
            ],
            "questions": [
              {
                "id": "RFQ-001",
                "text": "Based on the work you just carried out, would you classify your behaviour as good? Answer yes or no and cite observable evidence.",
                "enabled": true,
                "category_id": "behaviour_quality",
                "category_name": "Behaviour quality",
                "effective_enabled": false
              },
              {
                "id": "RFQ-002",
                "text": "If you answered no, what could you do differently to correct your behaviour?",
                "enabled": true,
                "category_id": "behaviour_quality",
                "category_name": "Behaviour quality",
                "effective_enabled": false
              },
              {
                "id": "RFQ-003",
                "text": "Would another attempt using the identified good behaviours materially improve the outcome? Answer yes or no and state the next corrective action if yes.",
                "enabled": true,
                "category_id": "behaviour_quality",
                "category_name": "Behaviour quality",
                "effective_enabled": false
              },
              {
                "id": "RFQ-004",
                "text": "What harness friction points made this work more difficult?",
                "enabled": true,
                "category_id": "harness_friction",
                "category_name": "Harness friction",
                "effective_enabled": false
              },
              {
                "id": "RFQ-005",
                "text": "What up to three changes would most improve friction in the harness?",
                "enabled": true,
                "category_id": "harness_friction",
                "category_name": "Harness friction",
                "effective_enabled": false
              }
            ]
          },
          "output_hash": "c1b6b635c0bab21120657277f14ef6f839909875f307a3745fa48aee2bd6e449",
          "completed_at": "2026-07-16T14:15:37Z"
        },
        {
          "id": "bundle",
          "action": "reporting.bundle",
          "status": "completed",
          "resolved_input_hash": "aed8ebb688dc3c085dd978d7c4120572173c3cb87e75919e4a937dcca6ef9457",
          "started_at": "2026-07-16T14:15:37Z",
          "output": {
            "contract_version": 1,
            "task": "session_summary",
            "repo": "prd-plugin",
            "policy": {
              "enabled": false,
              "executor": "ai-collab",
              "contract_version": 1,
              "profile": "fast-capable",
              "tasks": [
                "report_summary",
                "session_summary",
                "wiki_synthesis",
                "triage_draft"
              ],
              "fallback": "main",
              "require_source_refs": true,
              "max_input_tokens": 12000,
              "max_output_tokens": 1500,
              "timeout_seconds": 30
            },
            "facts": {
              "requests_by_status": {
                "deferred": 1,
                "implemented": 89,
                "in_review": 1,
                "proposed": 3,
                "rejected": 1
              },
              "active_requests": [
                {
                  "id": "REQ-072",
                  "status": "proposed",
                  "severity": "low",
                  "summary": "opencode run-until-done: session.idle is a non-blocking notification, so the stop guard can't force continuation on opencode (currently degrades to a printed reminder, 0.5.95). Investigate whether opencode exposes any vetoable/continuation mechanism (a different event, a permission hook, or a 'continue' API) to enforce run-until-done, or accept the reminder as the permanent ceiling. Low priority — user rarely uses opencode."
                },
                {
                  "id": "REQ-104",
                  "status": "in_review",
                  "severity": "high",
                  "summary": "Ordinary-workspace chat has no path into the planning pipeline: owner-approved collaboration decisions land in scratchpads, room agents cannot allocate REQ/PRD/TRK ids past the parallel-worker mutation boundary, and goal-administrator grants detach when participant identity changes on runner restart"
                },
                {
                  "id": "REQ-107",
                  "status": "proposed",
                  "severity": "high",
                  "summary": "Adopt the UTCP-first tool architecture (user-directed): one UTCP manual is the source of truth for ALL prd-plugin tools including mutations, the MCP surface is generated by the official @utcp/mcp-bridge, and the 2,323-line hand-written MCP server is retired as a hand-maintained surface"
                },
                {
                  "id": "REQ-113",
                  "status": "proposed",
                  "severity": "low",
                  "summary": "Request-thread close has no validated tool: finished threads stay 'unresolved' in message_check forever unless state is hand-flipped; add a thread-close capability to the UTCP-first tool catalog (REQ-107), not as a new hand-written MCP handler"
                }
              ],
              "active_tracking": [],
              "open_health": [],
              "evidence_count": 125,
              "decision_count": 10
            },
            "findings": [],
            "source_refs": [
              ".prd_plugin/config.json",
              ".prd_plugin/state/decisions.json",
              ".prd_plugin/state/evidence.json",
              ".prd_plugin/state/health.json",
              ".prd_plugin/state/requests.json",
              ".prd_plugin/state/tracking.json",
              "REQ-072",
              "REQ-104",
              "REQ-107",
              "REQ-113"
            ],
            "constraints": {
              "max_input_tokens": 12000,
              "max_output_tokens": 1500,
              "timeout_seconds": 30,
              "require_source_refs": true,
              "no_project_state_writes": true,
              "no_secrets_or_local_session_content": true
            }
          },
          "output_hash": "1e3c2b097cfbf440bcb114e6be9886a2a6ec5d728d22160f832b484b7e1392bb",
          "completed_at": "2026-07-16T14:15:37Z"
        },
        {
          "id": "delegated",
          "action": "reporting.delegate",
          "status": "completed",
          "resolved_input_hash": "0fae08474dd6b273c8eac1063dd656e7f54bae999e800ca8a6bc0821f4994f9d",
          "started_at": "2026-07-16T14:15:37Z",
          "output": {
            "status": "fallback",
            "action": "main",
            "reason": "disabled"
          },
          "output_hash": "e6085059f197def80ae95add1f328418107bea5436c9bd002530043646a3a95c",
          "completed_at": "2026-07-16T14:15:38Z"
        }
      ],
      "completed_at": "2026-07-16T14:15:38Z"
    },
    {
      "id": "WFR-264",
      "schema_version": "1.0",
      "workflow_id": "session.start",
      "workflow_version": 1,
      "definition_hash": "d0f98da02571e6dd27fec4aed92d3c82af9db75f8b90b997bf665635c7b7f6ca",
      "plan_hash": "b5072615ca3b7e9a3bd85d50d1f069d99ef2a9816b32c03a370745ed7a205536",
      "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
      "inputs": {},
      "idempotency_key": "hook:SessionStart:019f6b48-7e19-7b81-835e-7064173011fd",
      "status": "completed",
      "attempt": 1,
      "created_at": "2026-07-16T14:15:45Z",
      "updated_at": "2026-07-16T14:15:47Z",
      "receipts": [
        {
          "step_id": "config",
          "action": "config.audit",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "3782ec2317c0c8ee7598634310a2804d8aae4735f557498f9d3b8fae7c45e1e5",
          "completed_at": "2026-07-16T14:15:45Z"
        },
        {
          "step_id": "services",
          "action": "services.audit",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "13dcc58bd528f3efa3e6e0fa0853a6eedc376f1f3685fbd4869cbb2b60382ee3",
          "completed_at": "2026-07-16T14:15:45Z"
        },
        {
          "step_id": "state",
          "action": "state.consistency",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "5a1c6e5246defb1b6b6b90ff734db95bece2886b408ab112ed9b8e67222d5568",
          "completed_at": "2026-07-16T14:15:46Z"
        },
        {
          "step_id": "status",
          "action": "state.query",
          "input_hash": "a15231a2142a2a9a85355a8b9cbbccffe01a9c9c2c2fd8c2bc2987cdc481564a",
          "output_hash": "e612fd24ae96a43d20bfe419de740c28c46e9e641ce9e590c5c2ca32d932b393",
          "completed_at": "2026-07-16T14:15:46Z"
        },
        {
          "step_id": "substrate",
          "action": "substrate.preflight",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "a6df426290b4549a59eecaa0519ead9bcc50b7fcb25bd2185ff6047960f19ccb",
          "completed_at": "2026-07-16T14:15:46Z"
        },
        {
          "step_id": "notices",
          "action": "substrate.notices",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "38b904a1cf83df048360fb2480571b749fd98d57e11f1afdffb5a74a78166fea",
          "completed_at": "2026-07-16T14:15:46Z"
        },
        {
          "step_id": "goals",
          "action": "substrate.goals",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "cdfd4de44a28140e686159f34f7b47975954c67e1d1efcef666e985acb136ed8",
          "completed_at": "2026-07-16T14:15:47Z"
        }
      ],
      "steps": [
        {
          "id": "config",
          "action": "config.audit",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-16T14:15:45Z",
          "output": {
            "status": "ok",
            "summary": {
              "settings": 195,
              "mutable": 186,
              "read_only_or_managed": 9,
              "unclassified": 0,
              "unknown": 0,
              "invalid": 0,
              "missing_using_defaults": 0
            },
            "unclassified_keys": [],
            "unknown_keys": [],
            "invalid_values": [],
            "missing_using_defaults": []
          },
          "output_hash": "3782ec2317c0c8ee7598634310a2804d8aae4735f557498f9d3b8fae7c45e1e5",
          "completed_at": "2026-07-16T14:15:45Z"
        },
        {
          "id": "services",
          "action": "services.audit",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-16T14:15:45Z",
          "output": {
            "status": "ok",
            "summary": {
              "critical": 0,
              "high": 0,
              "medium": 0,
              "low": 0
            },
            "findings": []
          },
          "output_hash": "13dcc58bd528f3efa3e6e0fa0853a6eedc376f1f3685fbd4869cbb2b60382ee3",
          "completed_at": "2026-07-16T14:15:45Z"
        },
        {
          "id": "state",
          "action": "state.consistency",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-16T14:15:45Z",
          "output": {
            "status": "ok",
            "repo_root": "D:\\Projects\\prd-plugin",
            "summary": {
              "errors": 0,
              "warnings": 0,
              "infos": 0
            },
            "findings": []
          },
          "output_hash": "5a1c6e5246defb1b6b6b90ff734db95bece2886b408ab112ed9b8e67222d5568",
          "completed_at": "2026-07-16T14:15:46Z"
        },
        {
          "id": "status",
          "action": "state.query",
          "status": "completed",
          "resolved_input_hash": "a15231a2142a2a9a85355a8b9cbbccffe01a9c9c2c2fd8c2bc2987cdc481564a",
          "started_at": "2026-07-16T14:15:46Z",
          "output": {
            "repo_root": "D:\\Projects\\prd-plugin",
            "autonomy_level": "autonomous",
            "requests_by_status": {
              "deferred": 1,
              "implemented": 89,
              "in_review": 1,
              "proposed": 3,
              "rejected": 1
            },
            "active_tracking": [],
            "tracking_branches": [],
            "tracking_branch_counts": {},
            "tracking_branch_errors": [],
            "open_health": [],
            "stale_count": 0,
            "skill_usage": {
              "project-decision-policy": 1,
              "project-request-intake": 1,
              "project-test-driven-implementation": 1,
              "project-verification-before-completion": 1,
              "project-llm-wiki": 1
            },
            "wiki_backfill_pending": false,
            "version_update": null
          },
          "output_hash": "e612fd24ae96a43d20bfe419de740c28c46e9e641ce9e590c5c2ca32d932b393",
          "completed_at": "2026-07-16T14:15:46Z"
        },
        {
          "id": "substrate",
          "action": "substrate.preflight",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-16T14:15:46Z",
          "output": {
            "status": "disabled",
            "services": {
              "status": "ok",
              "summary": {
                "critical": 0,
                "high": 0,
                "medium": 0,
                "low": 0
              },
              "findings": []
            },
            "policy": {
              "configured": {
                "enabled": false,
                "mode": "off",
                "capabilities": [
                  "records",
                  "graph",
                  "events"
                ],
                "contract_version": 2,
                "require_source_refs": true,
                "endpoint": "http://127.0.0.1:47124",
                "manual_url": "http://127.0.0.1:47124/utcp.json",
                "knowledge_browse_url": "http://127.0.0.1:5276",
                "auth_env": "AI_COLLAB_API_KEY",
                "timeout_seconds": 5,
                "max_result_bytes": 1048576,
                "cache_ttl_seconds": 60,
                "fallback": "local",
                "automation": {
                  "discovery_on_session_start": true,
                  "knowledge_recall": true,
                  "memory_recall": true,
                  "context_enrichment": true,
                  "notices_on_session_start": false,
                  "goals_sync": false,
                  "telemetry_on_maintenance": false,
                  "reporting_dispatch": true,
                  "judgment_dispatch": true,
                  "verification_execution": true
                }
              },
              "active": false,
              "effective_mode": "off",
              "effective_capabilities": []
            }
          },
          "output_hash": "a6df426290b4549a59eecaa0519ead9bcc50b7fcb25bd2185ff6047960f19ccb",
          "completed_at": "2026-07-16T14:15:46Z"
        },
        {
          "id": "notices",
          "action": "substrate.notices",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-16T14:15:46Z",
          "output": {
            "status": "disabled"
          },
          "output_hash": "38b904a1cf83df048360fb2480571b749fd98d57e11f1afdffb5a74a78166fea",
          "completed_at": "2026-07-16T14:15:46Z"
        },
        {
          "id": "goals",
          "action": "substrate.goals",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-16T14:15:47Z",
          "output": {
            "status": "disabled",
            "created": 0,
            "observed": 0,
            "results": []
          },
          "output_hash": "cdfd4de44a28140e686159f34f7b47975954c67e1d1efcef666e985acb136ed8",
          "completed_at": "2026-07-16T14:15:47Z"
        }
      ],
      "completed_at": "2026-07-16T14:15:47Z"
    },
    {
      "id": "WFR-265",
      "schema_version": "1.0",
      "workflow_id": "session.stop",
      "workflow_version": 1,
      "definition_hash": "0cef7bb3e28321be8f85375c154955a69310ce297e47de3f3b8dd48f77a2f07d",
      "plan_hash": "a5e1d77ac734217487fc418e29c7163f4e81178e25d171e70cd4c999d527d3e8",
      "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
      "inputs": {},
      "idempotency_key": "hook:Stop:019f6b48-7e19-7b81-835e-7064173011fd",
      "status": "completed",
      "attempt": 1,
      "created_at": "2026-07-16T14:15:52Z",
      "updated_at": "2026-07-16T14:15:53Z",
      "receipts": [
        {
          "step_id": "state",
          "action": "state.consistency",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "5a1c6e5246defb1b6b6b90ff734db95bece2886b408ab112ed9b8e67222d5568",
          "completed_at": "2026-07-16T14:15:53Z"
        },
        {
          "step_id": "goals",
          "action": "substrate.goals",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "cdfd4de44a28140e686159f34f7b47975954c67e1d1efcef666e985acb136ed8",
          "completed_at": "2026-07-16T14:15:53Z"
        },
        {
          "step_id": "staleness",
          "action": "staleness.audit",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "1e81cb0ffd0a4d04626920a203b38d2d23a264cd43e807a85d375d69cae8a658",
          "completed_at": "2026-07-16T14:15:53Z"
        },
        {
          "step_id": "reflections",
          "action": "reflection.list",
          "input_hash": "0172e841ab4c13b3a4061f073f9d68a716ec87a8a5d52fde41823385e0582573",
          "output_hash": "c1b6b635c0bab21120657277f14ef6f839909875f307a3745fa48aee2bd6e449",
          "completed_at": "2026-07-16T14:15:53Z"
        },
        {
          "step_id": "bundle",
          "action": "reporting.bundle",
          "input_hash": "aed8ebb688dc3c085dd978d7c4120572173c3cb87e75919e4a937dcca6ef9457",
          "output_hash": "1e3c2b097cfbf440bcb114e6be9886a2a6ec5d728d22160f832b484b7e1392bb",
          "completed_at": "2026-07-16T14:15:53Z"
        },
        {
          "step_id": "delegated",
          "action": "reporting.delegate",
          "input_hash": "0fae08474dd6b273c8eac1063dd656e7f54bae999e800ca8a6bc0821f4994f9d",
          "output_hash": "e6085059f197def80ae95add1f328418107bea5436c9bd002530043646a3a95c",
          "completed_at": "2026-07-16T14:15:53Z"
        }
      ],
      "steps": [
        {
          "id": "state",
          "action": "state.consistency",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-16T14:15:52Z",
          "output": {
            "status": "ok",
            "repo_root": "D:\\Projects\\prd-plugin",
            "summary": {
              "errors": 0,
              "warnings": 0,
              "infos": 0
            },
            "findings": []
          },
          "output_hash": "5a1c6e5246defb1b6b6b90ff734db95bece2886b408ab112ed9b8e67222d5568",
          "completed_at": "2026-07-16T14:15:53Z"
        },
        {
          "id": "goals",
          "action": "substrate.goals",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-16T14:15:53Z",
          "output": {
            "status": "disabled",
            "created": 0,
            "observed": 0,
            "results": []
          },
          "output_hash": "cdfd4de44a28140e686159f34f7b47975954c67e1d1efcef666e985acb136ed8",
          "completed_at": "2026-07-16T14:15:53Z"
        },
        {
          "id": "staleness",
          "action": "staleness.audit",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-16T14:15:53Z",
          "output": {
            "status": "ok",
            "repo_root": "D:\\Projects\\prd-plugin",
            "counts": {
              "stale": 0
            },
            "stale": []
          },
          "output_hash": "1e81cb0ffd0a4d04626920a203b38d2d23a264cd43e807a85d375d69cae8a658",
          "completed_at": "2026-07-16T14:15:53Z"
        },
        {
          "id": "reflections",
          "action": "reflection.list",
          "status": "completed",
          "resolved_input_hash": "0172e841ab4c13b3a4061f073f9d68a716ec87a8a5d52fde41823385e0582573",
          "started_at": "2026-07-16T14:15:53Z",
          "output": {
            "enabled": false,
            "on_stop": true,
            "max_questions_per_stop": 5,
            "categories": [
              {
                "id": "behaviour_quality",
                "name": "Behaviour quality",
                "enabled": true,
                "question_count": 3
              },
              {
                "id": "harness_friction",
                "name": "Harness friction",
                "enabled": true,
                "question_count": 2
              }
            ],
            "questions": [
              {
                "id": "RFQ-001",
                "text": "Based on the work you just carried out, would you classify your behaviour as good? Answer yes or no and cite observable evidence.",
                "enabled": true,
                "category_id": "behaviour_quality",
                "category_name": "Behaviour quality",
                "effective_enabled": false
              },
              {
                "id": "RFQ-002",
                "text": "If you answered no, what could you do differently to correct your behaviour?",
                "enabled": true,
                "category_id": "behaviour_quality",
                "category_name": "Behaviour quality",
                "effective_enabled": false
              },
              {
                "id": "RFQ-003",
                "text": "Would another attempt using the identified good behaviours materially improve the outcome? Answer yes or no and state the next corrective action if yes.",
                "enabled": true,
                "category_id": "behaviour_quality",
                "category_name": "Behaviour quality",
                "effective_enabled": false
              },
              {
                "id": "RFQ-004",
                "text": "What harness friction points made this work more difficult?",
                "enabled": true,
                "category_id": "harness_friction",
                "category_name": "Harness friction",
                "effective_enabled": false
              },
              {
                "id": "RFQ-005",
                "text": "What up to three changes would most improve friction in the harness?",
                "enabled": true,
                "category_id": "harness_friction",
                "category_name": "Harness friction",
                "effective_enabled": false
              }
            ]
          },
          "output_hash": "c1b6b635c0bab21120657277f14ef6f839909875f307a3745fa48aee2bd6e449",
          "completed_at": "2026-07-16T14:15:53Z"
        },
        {
          "id": "bundle",
          "action": "reporting.bundle",
          "status": "completed",
          "resolved_input_hash": "aed8ebb688dc3c085dd978d7c4120572173c3cb87e75919e4a937dcca6ef9457",
          "started_at": "2026-07-16T14:15:53Z",
          "output": {
            "contract_version": 1,
            "task": "session_summary",
            "repo": "prd-plugin",
            "policy": {
              "enabled": false,
              "executor": "ai-collab",
              "contract_version": 1,
              "profile": "fast-capable",
              "tasks": [
                "report_summary",
                "session_summary",
                "wiki_synthesis",
                "triage_draft"
              ],
              "fallback": "main",
              "require_source_refs": true,
              "max_input_tokens": 12000,
              "max_output_tokens": 1500,
              "timeout_seconds": 30
            },
            "facts": {
              "requests_by_status": {
                "deferred": 1,
                "implemented": 89,
                "in_review": 1,
                "proposed": 3,
                "rejected": 1
              },
              "active_requests": [
                {
                  "id": "REQ-072",
                  "status": "proposed",
                  "severity": "low",
                  "summary": "opencode run-until-done: session.idle is a non-blocking notification, so the stop guard can't force continuation on opencode (currently degrades to a printed reminder, 0.5.95). Investigate whether opencode exposes any vetoable/continuation mechanism (a different event, a permission hook, or a 'continue' API) to enforce run-until-done, or accept the reminder as the permanent ceiling. Low priority — user rarely uses opencode."
                },
                {
                  "id": "REQ-104",
                  "status": "in_review",
                  "severity": "high",
                  "summary": "Ordinary-workspace chat has no path into the planning pipeline: owner-approved collaboration decisions land in scratchpads, room agents cannot allocate REQ/PRD/TRK ids past the parallel-worker mutation boundary, and goal-administrator grants detach when participant identity changes on runner restart"
                },
                {
                  "id": "REQ-107",
                  "status": "proposed",
                  "severity": "high",
                  "summary": "Adopt the UTCP-first tool architecture (user-directed): one UTCP manual is the source of truth for ALL prd-plugin tools including mutations, the MCP surface is generated by the official @utcp/mcp-bridge, and the 2,323-line hand-written MCP server is retired as a hand-maintained surface"
                },
                {
                  "id": "REQ-113",
                  "status": "proposed",
                  "severity": "low",
                  "summary": "Request-thread close has no validated tool: finished threads stay 'unresolved' in message_check forever unless state is hand-flipped; add a thread-close capability to the UTCP-first tool catalog (REQ-107), not as a new hand-written MCP handler"
                }
              ],
              "active_tracking": [],
              "open_health": [],
              "evidence_count": 125,
              "decision_count": 10
            },
            "findings": [],
            "source_refs": [
              ".prd_plugin/config.json",
              ".prd_plugin/state/decisions.json",
              ".prd_plugin/state/evidence.json",
              ".prd_plugin/state/health.json",
              ".prd_plugin/state/requests.json",
              ".prd_plugin/state/tracking.json",
              "REQ-072",
              "REQ-104",
              "REQ-107",
              "REQ-113"
            ],
            "constraints": {
              "max_input_tokens": 12000,
              "max_output_tokens": 1500,
              "timeout_seconds": 30,
              "require_source_refs": true,
              "no_project_state_writes": true,
              "no_secrets_or_local_session_content": true
            }
          },
          "output_hash": "1e3c2b097cfbf440bcb114e6be9886a2a6ec5d728d22160f832b484b7e1392bb",
          "completed_at": "2026-07-16T14:15:53Z"
        },
        {
          "id": "delegated",
          "action": "reporting.delegate",
          "status": "completed",
          "resolved_input_hash": "0fae08474dd6b273c8eac1063dd656e7f54bae999e800ca8a6bc0821f4994f9d",
          "started_at": "2026-07-16T14:15:53Z",
          "output": {
            "status": "fallback",
            "action": "main",
            "reason": "disabled"
          },
          "output_hash": "e6085059f197def80ae95add1f328418107bea5436c9bd002530043646a3a95c",
          "completed_at": "2026-07-16T14:15:53Z"
        }
      ],
      "completed_at": "2026-07-16T14:15:53Z"
    },
    {
      "id": "WFR-266",
      "schema_version": "1.0",
      "workflow_id": "session.start",
      "workflow_version": 1,
      "definition_hash": "d0f98da02571e6dd27fec4aed92d3c82af9db75f8b90b997bf665635c7b7f6ca",
      "plan_hash": "b5072615ca3b7e9a3bd85d50d1f069d99ef2a9816b32c03a370745ed7a205536",
      "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
      "inputs": {},
      "idempotency_key": "hook:SessionStart:019f6b48-bfa2-7513-9e1c-84845b41a180",
      "status": "completed",
      "attempt": 1,
      "created_at": "2026-07-16T14:16:01Z",
      "updated_at": "2026-07-16T14:16:03Z",
      "receipts": [
        {
          "step_id": "config",
          "action": "config.audit",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "3782ec2317c0c8ee7598634310a2804d8aae4735f557498f9d3b8fae7c45e1e5",
          "completed_at": "2026-07-16T14:16:01Z"
        },
        {
          "step_id": "services",
          "action": "services.audit",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "13dcc58bd528f3efa3e6e0fa0853a6eedc376f1f3685fbd4869cbb2b60382ee3",
          "completed_at": "2026-07-16T14:16:01Z"
        },
        {
          "step_id": "state",
          "action": "state.consistency",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "5a1c6e5246defb1b6b6b90ff734db95bece2886b408ab112ed9b8e67222d5568",
          "completed_at": "2026-07-16T14:16:03Z"
        },
        {
          "step_id": "status",
          "action": "state.query",
          "input_hash": "a15231a2142a2a9a85355a8b9cbbccffe01a9c9c2c2fd8c2bc2987cdc481564a",
          "output_hash": "e612fd24ae96a43d20bfe419de740c28c46e9e641ce9e590c5c2ca32d932b393",
          "completed_at": "2026-07-16T14:16:03Z"
        },
        {
          "step_id": "substrate",
          "action": "substrate.preflight",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "a6df426290b4549a59eecaa0519ead9bcc50b7fcb25bd2185ff6047960f19ccb",
          "completed_at": "2026-07-16T14:16:03Z"
        },
        {
          "step_id": "notices",
          "action": "substrate.notices",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "38b904a1cf83df048360fb2480571b749fd98d57e11f1afdffb5a74a78166fea",
          "completed_at": "2026-07-16T14:16:03Z"
        },
        {
          "step_id": "goals",
          "action": "substrate.goals",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "cdfd4de44a28140e686159f34f7b47975954c67e1d1efcef666e985acb136ed8",
          "completed_at": "2026-07-16T14:16:03Z"
        }
      ],
      "steps": [
        {
          "id": "config",
          "action": "config.audit",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-16T14:16:01Z",
          "output": {
            "status": "ok",
            "summary": {
              "settings": 195,
              "mutable": 186,
              "read_only_or_managed": 9,
              "unclassified": 0,
              "unknown": 0,
              "invalid": 0,
              "missing_using_defaults": 0
            },
            "unclassified_keys": [],
            "unknown_keys": [],
            "invalid_values": [],
            "missing_using_defaults": []
          },
          "output_hash": "3782ec2317c0c8ee7598634310a2804d8aae4735f557498f9d3b8fae7c45e1e5",
          "completed_at": "2026-07-16T14:16:01Z"
        },
        {
          "id": "services",
          "action": "services.audit",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-16T14:16:01Z",
          "output": {
            "status": "ok",
            "summary": {
              "critical": 0,
              "high": 0,
              "medium": 0,
              "low": 0
            },
            "findings": []
          },
          "output_hash": "13dcc58bd528f3efa3e6e0fa0853a6eedc376f1f3685fbd4869cbb2b60382ee3",
          "completed_at": "2026-07-16T14:16:01Z"
        },
        {
          "id": "state",
          "action": "state.consistency",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-16T14:16:02Z",
          "output": {
            "status": "ok",
            "repo_root": "D:\\Projects\\prd-plugin",
            "summary": {
              "errors": 0,
              "warnings": 0,
              "infos": 0
            },
            "findings": []
          },
          "output_hash": "5a1c6e5246defb1b6b6b90ff734db95bece2886b408ab112ed9b8e67222d5568",
          "completed_at": "2026-07-16T14:16:03Z"
        },
        {
          "id": "status",
          "action": "state.query",
          "status": "completed",
          "resolved_input_hash": "a15231a2142a2a9a85355a8b9cbbccffe01a9c9c2c2fd8c2bc2987cdc481564a",
          "started_at": "2026-07-16T14:16:03Z",
          "output": {
            "repo_root": "D:\\Projects\\prd-plugin",
            "autonomy_level": "autonomous",
            "requests_by_status": {
              "deferred": 1,
              "implemented": 89,
              "in_review": 1,
              "proposed": 3,
              "rejected": 1
            },
            "active_tracking": [],
            "tracking_branches": [],
            "tracking_branch_counts": {},
            "tracking_branch_errors": [],
            "open_health": [],
            "stale_count": 0,
            "skill_usage": {
              "project-decision-policy": 1,
              "project-request-intake": 1,
              "project-test-driven-implementation": 1,
              "project-verification-before-completion": 1,
              "project-llm-wiki": 1
            },
            "wiki_backfill_pending": false,
            "version_update": null
          },
          "output_hash": "e612fd24ae96a43d20bfe419de740c28c46e9e641ce9e590c5c2ca32d932b393",
          "completed_at": "2026-07-16T14:16:03Z"
        },
        {
          "id": "substrate",
          "action": "substrate.preflight",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-16T14:16:03Z",
          "output": {
            "status": "disabled",
            "services": {
              "status": "ok",
              "summary": {
                "critical": 0,
                "high": 0,
                "medium": 0,
                "low": 0
              },
              "findings": []
            },
            "policy": {
              "configured": {
                "enabled": false,
                "mode": "off",
                "capabilities": [
                  "records",
                  "graph",
                  "events"
                ],
                "contract_version": 2,
                "require_source_refs": true,
                "endpoint": "http://127.0.0.1:47124",
                "manual_url": "http://127.0.0.1:47124/utcp.json",
                "knowledge_browse_url": "http://127.0.0.1:5276",
                "auth_env": "AI_COLLAB_API_KEY",
                "timeout_seconds": 5,
                "max_result_bytes": 1048576,
                "cache_ttl_seconds": 60,
                "fallback": "local",
                "automation": {
                  "discovery_on_session_start": true,
                  "knowledge_recall": true,
                  "memory_recall": true,
                  "context_enrichment": true,
                  "notices_on_session_start": false,
                  "goals_sync": false,
                  "telemetry_on_maintenance": false,
                  "reporting_dispatch": true,
                  "judgment_dispatch": true,
                  "verification_execution": true
                }
              },
              "active": false,
              "effective_mode": "off",
              "effective_capabilities": []
            }
          },
          "output_hash": "a6df426290b4549a59eecaa0519ead9bcc50b7fcb25bd2185ff6047960f19ccb",
          "completed_at": "2026-07-16T14:16:03Z"
        },
        {
          "id": "notices",
          "action": "substrate.notices",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-16T14:16:03Z",
          "output": {
            "status": "disabled"
          },
          "output_hash": "38b904a1cf83df048360fb2480571b749fd98d57e11f1afdffb5a74a78166fea",
          "completed_at": "2026-07-16T14:16:03Z"
        },
        {
          "id": "goals",
          "action": "substrate.goals",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-16T14:16:03Z",
          "output": {
            "status": "disabled",
            "created": 0,
            "observed": 0,
            "results": []
          },
          "output_hash": "cdfd4de44a28140e686159f34f7b47975954c67e1d1efcef666e985acb136ed8",
          "completed_at": "2026-07-16T14:16:03Z"
        }
      ],
      "completed_at": "2026-07-16T14:16:03Z"
    },
    {
      "id": "WFR-267",
      "schema_version": "1.0",
      "workflow_id": "session.stop",
      "workflow_version": 1,
      "definition_hash": "0cef7bb3e28321be8f85375c154955a69310ce297e47de3f3b8dd48f77a2f07d",
      "plan_hash": "a5e1d77ac734217487fc418e29c7163f4e81178e25d171e70cd4c999d527d3e8",
      "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
      "inputs": {},
      "idempotency_key": "hook:Stop:019f6b48-bfa2-7513-9e1c-84845b41a180",
      "status": "completed",
      "attempt": 1,
      "created_at": "2026-07-16T14:16:08Z",
      "updated_at": "2026-07-16T14:16:10Z",
      "receipts": [
        {
          "step_id": "state",
          "action": "state.consistency",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "5a1c6e5246defb1b6b6b90ff734db95bece2886b408ab112ed9b8e67222d5568",
          "completed_at": "2026-07-16T14:16:10Z"
        },
        {
          "step_id": "goals",
          "action": "substrate.goals",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "cdfd4de44a28140e686159f34f7b47975954c67e1d1efcef666e985acb136ed8",
          "completed_at": "2026-07-16T14:16:10Z"
        },
        {
          "step_id": "staleness",
          "action": "staleness.audit",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "1e81cb0ffd0a4d04626920a203b38d2d23a264cd43e807a85d375d69cae8a658",
          "completed_at": "2026-07-16T14:16:10Z"
        },
        {
          "step_id": "reflections",
          "action": "reflection.list",
          "input_hash": "0172e841ab4c13b3a4061f073f9d68a716ec87a8a5d52fde41823385e0582573",
          "output_hash": "c1b6b635c0bab21120657277f14ef6f839909875f307a3745fa48aee2bd6e449",
          "completed_at": "2026-07-16T14:16:10Z"
        },
        {
          "step_id": "bundle",
          "action": "reporting.bundle",
          "input_hash": "aed8ebb688dc3c085dd978d7c4120572173c3cb87e75919e4a937dcca6ef9457",
          "output_hash": "1e3c2b097cfbf440bcb114e6be9886a2a6ec5d728d22160f832b484b7e1392bb",
          "completed_at": "2026-07-16T14:16:10Z"
        },
        {
          "step_id": "delegated",
          "action": "reporting.delegate",
          "input_hash": "0fae08474dd6b273c8eac1063dd656e7f54bae999e800ca8a6bc0821f4994f9d",
          "output_hash": "e6085059f197def80ae95add1f328418107bea5436c9bd002530043646a3a95c",
          "completed_at": "2026-07-16T14:16:10Z"
        }
      ],
      "steps": [
        {
          "id": "state",
          "action": "state.consistency",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-16T14:16:09Z",
          "output": {
            "status": "ok",
            "repo_root": "D:\\Projects\\prd-plugin",
            "summary": {
              "errors": 0,
              "warnings": 0,
              "infos": 0
            },
            "findings": []
          },
          "output_hash": "5a1c6e5246defb1b6b6b90ff734db95bece2886b408ab112ed9b8e67222d5568",
          "completed_at": "2026-07-16T14:16:10Z"
        },
        {
          "id": "goals",
          "action": "substrate.goals",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-16T14:16:10Z",
          "output": {
            "status": "disabled",
            "created": 0,
            "observed": 0,
            "results": []
          },
          "output_hash": "cdfd4de44a28140e686159f34f7b47975954c67e1d1efcef666e985acb136ed8",
          "completed_at": "2026-07-16T14:16:10Z"
        },
        {
          "id": "staleness",
          "action": "staleness.audit",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-16T14:16:10Z",
          "output": {
            "status": "ok",
            "repo_root": "D:\\Projects\\prd-plugin",
            "counts": {
              "stale": 0
            },
            "stale": []
          },
          "output_hash": "1e81cb0ffd0a4d04626920a203b38d2d23a264cd43e807a85d375d69cae8a658",
          "completed_at": "2026-07-16T14:16:10Z"
        },
        {
          "id": "reflections",
          "action": "reflection.list",
          "status": "completed",
          "resolved_input_hash": "0172e841ab4c13b3a4061f073f9d68a716ec87a8a5d52fde41823385e0582573",
          "started_at": "2026-07-16T14:16:10Z",
          "output": {
            "enabled": false,
            "on_stop": true,
            "max_questions_per_stop": 5,
            "categories": [
              {
                "id": "behaviour_quality",
                "name": "Behaviour quality",
                "enabled": true,
                "question_count": 3
              },
              {
                "id": "harness_friction",
                "name": "Harness friction",
                "enabled": true,
                "question_count": 2
              }
            ],
            "questions": [
              {
                "id": "RFQ-001",
                "text": "Based on the work you just carried out, would you classify your behaviour as good? Answer yes or no and cite observable evidence.",
                "enabled": true,
                "category_id": "behaviour_quality",
                "category_name": "Behaviour quality",
                "effective_enabled": false
              },
              {
                "id": "RFQ-002",
                "text": "If you answered no, what could you do differently to correct your behaviour?",
                "enabled": true,
                "category_id": "behaviour_quality",
                "category_name": "Behaviour quality",
                "effective_enabled": false
              },
              {
                "id": "RFQ-003",
                "text": "Would another attempt using the identified good behaviours materially improve the outcome? Answer yes or no and state the next corrective action if yes.",
                "enabled": true,
                "category_id": "behaviour_quality",
                "category_name": "Behaviour quality",
                "effective_enabled": false
              },
              {
                "id": "RFQ-004",
                "text": "What harness friction points made this work more difficult?",
                "enabled": true,
                "category_id": "harness_friction",
                "category_name": "Harness friction",
                "effective_enabled": false
              },
              {
                "id": "RFQ-005",
                "text": "What up to three changes would most improve friction in the harness?",
                "enabled": true,
                "category_id": "harness_friction",
                "category_name": "Harness friction",
                "effective_enabled": false
              }
            ]
          },
          "output_hash": "c1b6b635c0bab21120657277f14ef6f839909875f307a3745fa48aee2bd6e449",
          "completed_at": "2026-07-16T14:16:10Z"
        },
        {
          "id": "bundle",
          "action": "reporting.bundle",
          "status": "completed",
          "resolved_input_hash": "aed8ebb688dc3c085dd978d7c4120572173c3cb87e75919e4a937dcca6ef9457",
          "started_at": "2026-07-16T14:16:10Z",
          "output": {
            "contract_version": 1,
            "task": "session_summary",
            "repo": "prd-plugin",
            "policy": {
              "enabled": false,
              "executor": "ai-collab",
              "contract_version": 1,
              "profile": "fast-capable",
              "tasks": [
                "report_summary",
                "session_summary",
                "wiki_synthesis",
                "triage_draft"
              ],
              "fallback": "main",
              "require_source_refs": true,
              "max_input_tokens": 12000,
              "max_output_tokens": 1500,
              "timeout_seconds": 30
            },
            "facts": {
              "requests_by_status": {
                "deferred": 1,
                "implemented": 89,
                "in_review": 1,
                "proposed": 3,
                "rejected": 1
              },
              "active_requests": [
                {
                  "id": "REQ-072",
                  "status": "proposed",
                  "severity": "low",
                  "summary": "opencode run-until-done: session.idle is a non-blocking notification, so the stop guard can't force continuation on opencode (currently degrades to a printed reminder, 0.5.95). Investigate whether opencode exposes any vetoable/continuation mechanism (a different event, a permission hook, or a 'continue' API) to enforce run-until-done, or accept the reminder as the permanent ceiling. Low priority — user rarely uses opencode."
                },
                {
                  "id": "REQ-104",
                  "status": "in_review",
                  "severity": "high",
                  "summary": "Ordinary-workspace chat has no path into the planning pipeline: owner-approved collaboration decisions land in scratchpads, room agents cannot allocate REQ/PRD/TRK ids past the parallel-worker mutation boundary, and goal-administrator grants detach when participant identity changes on runner restart"
                },
                {
                  "id": "REQ-107",
                  "status": "proposed",
                  "severity": "high",
                  "summary": "Adopt the UTCP-first tool architecture (user-directed): one UTCP manual is the source of truth for ALL prd-plugin tools including mutations, the MCP surface is generated by the official @utcp/mcp-bridge, and the 2,323-line hand-written MCP server is retired as a hand-maintained surface"
                },
                {
                  "id": "REQ-113",
                  "status": "proposed",
                  "severity": "low",
                  "summary": "Request-thread close has no validated tool: finished threads stay 'unresolved' in message_check forever unless state is hand-flipped; add a thread-close capability to the UTCP-first tool catalog (REQ-107), not as a new hand-written MCP handler"
                }
              ],
              "active_tracking": [],
              "open_health": [],
              "evidence_count": 125,
              "decision_count": 10
            },
            "findings": [],
            "source_refs": [
              ".prd_plugin/config.json",
              ".prd_plugin/state/decisions.json",
              ".prd_plugin/state/evidence.json",
              ".prd_plugin/state/health.json",
              ".prd_plugin/state/requests.json",
              ".prd_plugin/state/tracking.json",
              "REQ-072",
              "REQ-104",
              "REQ-107",
              "REQ-113"
            ],
            "constraints": {
              "max_input_tokens": 12000,
              "max_output_tokens": 1500,
              "timeout_seconds": 30,
              "require_source_refs": true,
              "no_project_state_writes": true,
              "no_secrets_or_local_session_content": true
            }
          },
          "output_hash": "1e3c2b097cfbf440bcb114e6be9886a2a6ec5d728d22160f832b484b7e1392bb",
          "completed_at": "2026-07-16T14:16:10Z"
        },
        {
          "id": "delegated",
          "action": "reporting.delegate",
          "status": "completed",
          "resolved_input_hash": "0fae08474dd6b273c8eac1063dd656e7f54bae999e800ca8a6bc0821f4994f9d",
          "started_at": "2026-07-16T14:16:10Z",
          "output": {
            "status": "fallback",
            "action": "main",
            "reason": "disabled"
          },
          "output_hash": "e6085059f197def80ae95add1f328418107bea5436c9bd002530043646a3a95c",
          "completed_at": "2026-07-16T14:16:10Z"
        }
      ],
      "completed_at": "2026-07-16T14:16:10Z"
    },
    {
      "id": "WFR-268",
      "schema_version": "1.0",
      "workflow_id": "session.start",
      "workflow_version": 1,
      "definition_hash": "d0f98da02571e6dd27fec4aed92d3c82af9db75f8b90b997bf665635c7b7f6ca",
      "plan_hash": "b5072615ca3b7e9a3bd85d50d1f069d99ef2a9816b32c03a370745ed7a205536",
      "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
      "inputs": {},
      "idempotency_key": "hook:SessionStart:019f6b49-0112-7c90-b0ac-35310e0c0a7d",
      "status": "completed",
      "attempt": 1,
      "created_at": "2026-07-16T14:16:19Z",
      "updated_at": "2026-07-16T14:16:21Z",
      "receipts": [
        {
          "step_id": "config",
          "action": "config.audit",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "3782ec2317c0c8ee7598634310a2804d8aae4735f557498f9d3b8fae7c45e1e5",
          "completed_at": "2026-07-16T14:16:19Z"
        },
        {
          "step_id": "services",
          "action": "services.audit",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "13dcc58bd528f3efa3e6e0fa0853a6eedc376f1f3685fbd4869cbb2b60382ee3",
          "completed_at": "2026-07-16T14:16:19Z"
        },
        {
          "step_id": "state",
          "action": "state.consistency",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "5a1c6e5246defb1b6b6b90ff734db95bece2886b408ab112ed9b8e67222d5568",
          "completed_at": "2026-07-16T14:16:20Z"
        },
        {
          "step_id": "status",
          "action": "state.query",
          "input_hash": "a15231a2142a2a9a85355a8b9cbbccffe01a9c9c2c2fd8c2bc2987cdc481564a",
          "output_hash": "e612fd24ae96a43d20bfe419de740c28c46e9e641ce9e590c5c2ca32d932b393",
          "completed_at": "2026-07-16T14:16:21Z"
        },
        {
          "step_id": "substrate",
          "action": "substrate.preflight",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "a6df426290b4549a59eecaa0519ead9bcc50b7fcb25bd2185ff6047960f19ccb",
          "completed_at": "2026-07-16T14:16:21Z"
        },
        {
          "step_id": "notices",
          "action": "substrate.notices",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "38b904a1cf83df048360fb2480571b749fd98d57e11f1afdffb5a74a78166fea",
          "completed_at": "2026-07-16T14:16:21Z"
        },
        {
          "step_id": "goals",
          "action": "substrate.goals",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "cdfd4de44a28140e686159f34f7b47975954c67e1d1efcef666e985acb136ed8",
          "completed_at": "2026-07-16T14:16:21Z"
        }
      ],
      "steps": [
        {
          "id": "config",
          "action": "config.audit",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-16T14:16:19Z",
          "output": {
            "status": "ok",
            "summary": {
              "settings": 195,
              "mutable": 186,
              "read_only_or_managed": 9,
              "unclassified": 0,
              "unknown": 0,
              "invalid": 0,
              "missing_using_defaults": 0
            },
            "unclassified_keys": [],
            "unknown_keys": [],
            "invalid_values": [],
            "missing_using_defaults": []
          },
          "output_hash": "3782ec2317c0c8ee7598634310a2804d8aae4735f557498f9d3b8fae7c45e1e5",
          "completed_at": "2026-07-16T14:16:19Z"
        },
        {
          "id": "services",
          "action": "services.audit",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-16T14:16:19Z",
          "output": {
            "status": "ok",
            "summary": {
              "critical": 0,
              "high": 0,
              "medium": 0,
              "low": 0
            },
            "findings": []
          },
          "output_hash": "13dcc58bd528f3efa3e6e0fa0853a6eedc376f1f3685fbd4869cbb2b60382ee3",
          "completed_at": "2026-07-16T14:16:19Z"
        },
        {
          "id": "state",
          "action": "state.consistency",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-16T14:16:19Z",
          "output": {
            "status": "ok",
            "repo_root": "D:\\Projects\\prd-plugin",
            "summary": {
              "errors": 0,
              "warnings": 0,
              "infos": 0
            },
            "findings": []
          },
          "output_hash": "5a1c6e5246defb1b6b6b90ff734db95bece2886b408ab112ed9b8e67222d5568",
          "completed_at": "2026-07-16T14:16:20Z"
        },
        {
          "id": "status",
          "action": "state.query",
          "status": "completed",
          "resolved_input_hash": "a15231a2142a2a9a85355a8b9cbbccffe01a9c9c2c2fd8c2bc2987cdc481564a",
          "started_at": "2026-07-16T14:16:20Z",
          "output": {
            "repo_root": "D:\\Projects\\prd-plugin",
            "autonomy_level": "autonomous",
            "requests_by_status": {
              "deferred": 1,
              "implemented": 89,
              "in_review": 1,
              "proposed": 3,
              "rejected": 1
            },
            "active_tracking": [],
            "tracking_branches": [],
            "tracking_branch_counts": {},
            "tracking_branch_errors": [],
            "open_health": [],
            "stale_count": 0,
            "skill_usage": {
              "project-decision-policy": 1,
              "project-request-intake": 1,
              "project-test-driven-implementation": 1,
              "project-verification-before-completion": 1,
              "project-llm-wiki": 1
            },
            "wiki_backfill_pending": false,
            "version_update": null
          },
          "output_hash": "e612fd24ae96a43d20bfe419de740c28c46e9e641ce9e590c5c2ca32d932b393",
          "completed_at": "2026-07-16T14:16:21Z"
        },
        {
          "id": "substrate",
          "action": "substrate.preflight",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-16T14:16:21Z",
          "output": {
            "status": "disabled",
            "services": {
              "status": "ok",
              "summary": {
                "critical": 0,
                "high": 0,
                "medium": 0,
                "low": 0
              },
              "findings": []
            },
            "policy": {
              "configured": {
                "enabled": false,
                "mode": "off",
                "capabilities": [
                  "records",
                  "graph",
                  "events"
                ],
                "contract_version": 2,
                "require_source_refs": true,
                "endpoint": "http://127.0.0.1:47124",
                "manual_url": "http://127.0.0.1:47124/utcp.json",
                "knowledge_browse_url": "http://127.0.0.1:5276",
                "auth_env": "AI_COLLAB_API_KEY",
                "timeout_seconds": 5,
                "max_result_bytes": 1048576,
                "cache_ttl_seconds": 60,
                "fallback": "local",
                "automation": {
                  "discovery_on_session_start": true,
                  "knowledge_recall": true,
                  "memory_recall": true,
                  "context_enrichment": true,
                  "notices_on_session_start": false,
                  "goals_sync": false,
                  "telemetry_on_maintenance": false,
                  "reporting_dispatch": true,
                  "judgment_dispatch": true,
                  "verification_execution": true
                }
              },
              "active": false,
              "effective_mode": "off",
              "effective_capabilities": []
            }
          },
          "output_hash": "a6df426290b4549a59eecaa0519ead9bcc50b7fcb25bd2185ff6047960f19ccb",
          "completed_at": "2026-07-16T14:16:21Z"
        },
        {
          "id": "notices",
          "action": "substrate.notices",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-16T14:16:21Z",
          "output": {
            "status": "disabled"
          },
          "output_hash": "38b904a1cf83df048360fb2480571b749fd98d57e11f1afdffb5a74a78166fea",
          "completed_at": "2026-07-16T14:16:21Z"
        },
        {
          "id": "goals",
          "action": "substrate.goals",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-16T14:16:21Z",
          "output": {
            "status": "disabled",
            "created": 0,
            "observed": 0,
            "results": []
          },
          "output_hash": "cdfd4de44a28140e686159f34f7b47975954c67e1d1efcef666e985acb136ed8",
          "completed_at": "2026-07-16T14:16:21Z"
        }
      ],
      "completed_at": "2026-07-16T14:16:21Z"
    },
    {
      "id": "WFR-269",
      "schema_version": "1.0",
      "workflow_id": "session.stop",
      "workflow_version": 1,
      "definition_hash": "0cef7bb3e28321be8f85375c154955a69310ce297e47de3f3b8dd48f77a2f07d",
      "plan_hash": "a5e1d77ac734217487fc418e29c7163f4e81178e25d171e70cd4c999d527d3e8",
      "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
      "inputs": {},
      "idempotency_key": "hook:Stop:019f6b49-0112-7c90-b0ac-35310e0c0a7d",
      "status": "completed",
      "attempt": 1,
      "created_at": "2026-07-16T14:16:29Z",
      "updated_at": "2026-07-16T14:16:30Z",
      "receipts": [
        {
          "step_id": "state",
          "action": "state.consistency",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "5a1c6e5246defb1b6b6b90ff734db95bece2886b408ab112ed9b8e67222d5568",
          "completed_at": "2026-07-16T14:16:30Z"
        },
        {
          "step_id": "goals",
          "action": "substrate.goals",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "cdfd4de44a28140e686159f34f7b47975954c67e1d1efcef666e985acb136ed8",
          "completed_at": "2026-07-16T14:16:30Z"
        },
        {
          "step_id": "staleness",
          "action": "staleness.audit",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "1e81cb0ffd0a4d04626920a203b38d2d23a264cd43e807a85d375d69cae8a658",
          "completed_at": "2026-07-16T14:16:30Z"
        },
        {
          "step_id": "reflections",
          "action": "reflection.list",
          "input_hash": "0172e841ab4c13b3a4061f073f9d68a716ec87a8a5d52fde41823385e0582573",
          "output_hash": "c1b6b635c0bab21120657277f14ef6f839909875f307a3745fa48aee2bd6e449",
          "completed_at": "2026-07-16T14:16:30Z"
        },
        {
          "step_id": "bundle",
          "action": "reporting.bundle",
          "input_hash": "aed8ebb688dc3c085dd978d7c4120572173c3cb87e75919e4a937dcca6ef9457",
          "output_hash": "1e3c2b097cfbf440bcb114e6be9886a2a6ec5d728d22160f832b484b7e1392bb",
          "completed_at": "2026-07-16T14:16:30Z"
        },
        {
          "step_id": "delegated",
          "action": "reporting.delegate",
          "input_hash": "0fae08474dd6b273c8eac1063dd656e7f54bae999e800ca8a6bc0821f4994f9d",
          "output_hash": "e6085059f197def80ae95add1f328418107bea5436c9bd002530043646a3a95c",
          "completed_at": "2026-07-16T14:16:30Z"
        }
      ],
      "steps": [
        {
          "id": "state",
          "action": "state.consistency",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-16T14:16:29Z",
          "output": {
            "status": "ok",
            "repo_root": "D:\\Projects\\prd-plugin",
            "summary": {
              "errors": 0,
              "warnings": 0,
              "infos": 0
            },
            "findings": []
          },
          "output_hash": "5a1c6e5246defb1b6b6b90ff734db95bece2886b408ab112ed9b8e67222d5568",
          "completed_at": "2026-07-16T14:16:30Z"
        },
        {
          "id": "goals",
          "action": "substrate.goals",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-16T14:16:30Z",
          "output": {
            "status": "disabled",
            "created": 0,
            "observed": 0,
            "results": []
          },
          "output_hash": "cdfd4de44a28140e686159f34f7b47975954c67e1d1efcef666e985acb136ed8",
          "completed_at": "2026-07-16T14:16:30Z"
        },
        {
          "id": "staleness",
          "action": "staleness.audit",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-16T14:16:30Z",
          "output": {
            "status": "ok",
            "repo_root": "D:\\Projects\\prd-plugin",
            "counts": {
              "stale": 0
            },
            "stale": []
          },
          "output_hash": "1e81cb0ffd0a4d04626920a203b38d2d23a264cd43e807a85d375d69cae8a658",
          "completed_at": "2026-07-16T14:16:30Z"
        },
        {
          "id": "reflections",
          "action": "reflection.list",
          "status": "completed",
          "resolved_input_hash": "0172e841ab4c13b3a4061f073f9d68a716ec87a8a5d52fde41823385e0582573",
          "started_at": "2026-07-16T14:16:30Z",
          "output": {
            "enabled": false,
            "on_stop": true,
            "max_questions_per_stop": 5,
            "categories": [
              {
                "id": "behaviour_quality",
                "name": "Behaviour quality",
                "enabled": true,
                "question_count": 3
              },
              {
                "id": "harness_friction",
                "name": "Harness friction",
                "enabled": true,
                "question_count": 2
              }
            ],
            "questions": [
              {
                "id": "RFQ-001",
                "text": "Based on the work you just carried out, would you classify your behaviour as good? Answer yes or no and cite observable evidence.",
                "enabled": true,
                "category_id": "behaviour_quality",
                "category_name": "Behaviour quality",
                "effective_enabled": false
              },
              {
                "id": "RFQ-002",
                "text": "If you answered no, what could you do differently to correct your behaviour?",
                "enabled": true,
                "category_id": "behaviour_quality",
                "category_name": "Behaviour quality",
                "effective_enabled": false
              },
              {
                "id": "RFQ-003",
                "text": "Would another attempt using the identified good behaviours materially improve the outcome? Answer yes or no and state the next corrective action if yes.",
                "enabled": true,
                "category_id": "behaviour_quality",
                "category_name": "Behaviour quality",
                "effective_enabled": false
              },
              {
                "id": "RFQ-004",
                "text": "What harness friction points made this work more difficult?",
                "enabled": true,
                "category_id": "harness_friction",
                "category_name": "Harness friction",
                "effective_enabled": false
              },
              {
                "id": "RFQ-005",
                "text": "What up to three changes would most improve friction in the harness?",
                "enabled": true,
                "category_id": "harness_friction",
                "category_name": "Harness friction",
                "effective_enabled": false
              }
            ]
          },
          "output_hash": "c1b6b635c0bab21120657277f14ef6f839909875f307a3745fa48aee2bd6e449",
          "completed_at": "2026-07-16T14:16:30Z"
        },
        {
          "id": "bundle",
          "action": "reporting.bundle",
          "status": "completed",
          "resolved_input_hash": "aed8ebb688dc3c085dd978d7c4120572173c3cb87e75919e4a937dcca6ef9457",
          "started_at": "2026-07-16T14:16:30Z",
          "output": {
            "contract_version": 1,
            "task": "session_summary",
            "repo": "prd-plugin",
            "policy": {
              "enabled": false,
              "executor": "ai-collab",
              "contract_version": 1,
              "profile": "fast-capable",
              "tasks": [
                "report_summary",
                "session_summary",
                "wiki_synthesis",
                "triage_draft"
              ],
              "fallback": "main",
              "require_source_refs": true,
              "max_input_tokens": 12000,
              "max_output_tokens": 1500,
              "timeout_seconds": 30
            },
            "facts": {
              "requests_by_status": {
                "deferred": 1,
                "implemented": 89,
                "in_review": 1,
                "proposed": 3,
                "rejected": 1
              },
              "active_requests": [
                {
                  "id": "REQ-072",
                  "status": "proposed",
                  "severity": "low",
                  "summary": "opencode run-until-done: session.idle is a non-blocking notification, so the stop guard can't force continuation on opencode (currently degrades to a printed reminder, 0.5.95). Investigate whether opencode exposes any vetoable/continuation mechanism (a different event, a permission hook, or a 'continue' API) to enforce run-until-done, or accept the reminder as the permanent ceiling. Low priority — user rarely uses opencode."
                },
                {
                  "id": "REQ-104",
                  "status": "in_review",
                  "severity": "high",
                  "summary": "Ordinary-workspace chat has no path into the planning pipeline: owner-approved collaboration decisions land in scratchpads, room agents cannot allocate REQ/PRD/TRK ids past the parallel-worker mutation boundary, and goal-administrator grants detach when participant identity changes on runner restart"
                },
                {
                  "id": "REQ-107",
                  "status": "proposed",
                  "severity": "high",
                  "summary": "Adopt the UTCP-first tool architecture (user-directed): one UTCP manual is the source of truth for ALL prd-plugin tools including mutations, the MCP surface is generated by the official @utcp/mcp-bridge, and the 2,323-line hand-written MCP server is retired as a hand-maintained surface"
                },
                {
                  "id": "REQ-113",
                  "status": "proposed",
                  "severity": "low",
                  "summary": "Request-thread close has no validated tool: finished threads stay 'unresolved' in message_check forever unless state is hand-flipped; add a thread-close capability to the UTCP-first tool catalog (REQ-107), not as a new hand-written MCP handler"
                }
              ],
              "active_tracking": [],
              "open_health": [],
              "evidence_count": 125,
              "decision_count": 10
            },
            "findings": [],
            "source_refs": [
              ".prd_plugin/config.json",
              ".prd_plugin/state/decisions.json",
              ".prd_plugin/state/evidence.json",
              ".prd_plugin/state/health.json",
              ".prd_plugin/state/requests.json",
              ".prd_plugin/state/tracking.json",
              "REQ-072",
              "REQ-104",
              "REQ-107",
              "REQ-113"
            ],
            "constraints": {
              "max_input_tokens": 12000,
              "max_output_tokens": 1500,
              "timeout_seconds": 30,
              "require_source_refs": true,
              "no_project_state_writes": true,
              "no_secrets_or_local_session_content": true
            }
          },
          "output_hash": "1e3c2b097cfbf440bcb114e6be9886a2a6ec5d728d22160f832b484b7e1392bb",
          "completed_at": "2026-07-16T14:16:30Z"
        },
        {
          "id": "delegated",
          "action": "reporting.delegate",
          "status": "completed",
          "resolved_input_hash": "0fae08474dd6b273c8eac1063dd656e7f54bae999e800ca8a6bc0821f4994f9d",
          "started_at": "2026-07-16T14:16:30Z",
          "output": {
            "status": "fallback",
            "action": "main",
            "reason": "disabled"
          },
          "output_hash": "e6085059f197def80ae95add1f328418107bea5436c9bd002530043646a3a95c",
          "completed_at": "2026-07-16T14:16:30Z"
        }
      ],
      "completed_at": "2026-07-16T14:16:30Z"
    },
    {
      "id": "WFR-270",
      "schema_version": "1.0",
      "workflow_id": "session.start",
      "workflow_version": 1,
      "definition_hash": "d0f98da02571e6dd27fec4aed92d3c82af9db75f8b90b997bf665635c7b7f6ca",
      "plan_hash": "b5072615ca3b7e9a3bd85d50d1f069d99ef2a9816b32c03a370745ed7a205536",
      "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
      "inputs": {},
      "idempotency_key": "hook:SessionStart:019f6b49-4ce5-77a2-a3a0-b0d9c4e5a7f6",
      "status": "completed",
      "attempt": 1,
      "created_at": "2026-07-16T14:16:38Z",
      "updated_at": "2026-07-16T14:16:40Z",
      "receipts": [
        {
          "step_id": "config",
          "action": "config.audit",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "3782ec2317c0c8ee7598634310a2804d8aae4735f557498f9d3b8fae7c45e1e5",
          "completed_at": "2026-07-16T14:16:38Z"
        },
        {
          "step_id": "services",
          "action": "services.audit",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "13dcc58bd528f3efa3e6e0fa0853a6eedc376f1f3685fbd4869cbb2b60382ee3",
          "completed_at": "2026-07-16T14:16:39Z"
        },
        {
          "step_id": "state",
          "action": "state.consistency",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "5a1c6e5246defb1b6b6b90ff734db95bece2886b408ab112ed9b8e67222d5568",
          "completed_at": "2026-07-16T14:16:40Z"
        },
        {
          "step_id": "status",
          "action": "state.query",
          "input_hash": "a15231a2142a2a9a85355a8b9cbbccffe01a9c9c2c2fd8c2bc2987cdc481564a",
          "output_hash": "e612fd24ae96a43d20bfe419de740c28c46e9e641ce9e590c5c2ca32d932b393",
          "completed_at": "2026-07-16T14:16:40Z"
        },
        {
          "step_id": "substrate",
          "action": "substrate.preflight",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "a6df426290b4549a59eecaa0519ead9bcc50b7fcb25bd2185ff6047960f19ccb",
          "completed_at": "2026-07-16T14:16:40Z"
        },
        {
          "step_id": "notices",
          "action": "substrate.notices",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "38b904a1cf83df048360fb2480571b749fd98d57e11f1afdffb5a74a78166fea",
          "completed_at": "2026-07-16T14:16:40Z"
        },
        {
          "step_id": "goals",
          "action": "substrate.goals",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "cdfd4de44a28140e686159f34f7b47975954c67e1d1efcef666e985acb136ed8",
          "completed_at": "2026-07-16T14:16:40Z"
        }
      ],
      "steps": [
        {
          "id": "config",
          "action": "config.audit",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-16T14:16:38Z",
          "output": {
            "status": "ok",
            "summary": {
              "settings": 195,
              "mutable": 186,
              "read_only_or_managed": 9,
              "unclassified": 0,
              "unknown": 0,
              "invalid": 0,
              "missing_using_defaults": 0
            },
            "unclassified_keys": [],
            "unknown_keys": [],
            "invalid_values": [],
            "missing_using_defaults": []
          },
          "output_hash": "3782ec2317c0c8ee7598634310a2804d8aae4735f557498f9d3b8fae7c45e1e5",
          "completed_at": "2026-07-16T14:16:38Z"
        },
        {
          "id": "services",
          "action": "services.audit",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-16T14:16:39Z",
          "output": {
            "status": "ok",
            "summary": {
              "critical": 0,
              "high": 0,
              "medium": 0,
              "low": 0
            },
            "findings": []
          },
          "output_hash": "13dcc58bd528f3efa3e6e0fa0853a6eedc376f1f3685fbd4869cbb2b60382ee3",
          "completed_at": "2026-07-16T14:16:39Z"
        },
        {
          "id": "state",
          "action": "state.consistency",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-16T14:16:39Z",
          "output": {
            "status": "ok",
            "repo_root": "D:\\Projects\\prd-plugin",
            "summary": {
              "errors": 0,
              "warnings": 0,
              "infos": 0
            },
            "findings": []
          },
          "output_hash": "5a1c6e5246defb1b6b6b90ff734db95bece2886b408ab112ed9b8e67222d5568",
          "completed_at": "2026-07-16T14:16:40Z"
        },
        {
          "id": "status",
          "action": "state.query",
          "status": "completed",
          "resolved_input_hash": "a15231a2142a2a9a85355a8b9cbbccffe01a9c9c2c2fd8c2bc2987cdc481564a",
          "started_at": "2026-07-16T14:16:40Z",
          "output": {
            "repo_root": "D:\\Projects\\prd-plugin",
            "autonomy_level": "autonomous",
            "requests_by_status": {
              "deferred": 1,
              "implemented": 89,
              "in_review": 1,
              "proposed": 3,
              "rejected": 1
            },
            "active_tracking": [],
            "tracking_branches": [],
            "tracking_branch_counts": {},
            "tracking_branch_errors": [],
            "open_health": [],
            "stale_count": 0,
            "skill_usage": {
              "project-decision-policy": 1,
              "project-request-intake": 1,
              "project-test-driven-implementation": 1,
              "project-verification-before-completion": 1,
              "project-llm-wiki": 1
            },
            "wiki_backfill_pending": false,
            "version_update": null
          },
          "output_hash": "e612fd24ae96a43d20bfe419de740c28c46e9e641ce9e590c5c2ca32d932b393",
          "completed_at": "2026-07-16T14:16:40Z"
        },
        {
          "id": "substrate",
          "action": "substrate.preflight",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-16T14:16:40Z",
          "output": {
            "status": "disabled",
            "services": {
              "status": "ok",
              "summary": {
                "critical": 0,
                "high": 0,
                "medium": 0,
                "low": 0
              },
              "findings": []
            },
            "policy": {
              "configured": {
                "enabled": false,
                "mode": "off",
                "capabilities": [
                  "records",
                  "graph",
                  "events"
                ],
                "contract_version": 2,
                "require_source_refs": true,
                "endpoint": "http://127.0.0.1:47124",
                "manual_url": "http://127.0.0.1:47124/utcp.json",
                "knowledge_browse_url": "http://127.0.0.1:5276",
                "auth_env": "AI_COLLAB_API_KEY",
                "timeout_seconds": 5,
                "max_result_bytes": 1048576,
                "cache_ttl_seconds": 60,
                "fallback": "local",
                "automation": {
                  "discovery_on_session_start": true,
                  "knowledge_recall": true,
                  "memory_recall": true,
                  "context_enrichment": true,
                  "notices_on_session_start": false,
                  "goals_sync": false,
                  "telemetry_on_maintenance": false,
                  "reporting_dispatch": true,
                  "judgment_dispatch": true,
                  "verification_execution": true
                }
              },
              "active": false,
              "effective_mode": "off",
              "effective_capabilities": []
            }
          },
          "output_hash": "a6df426290b4549a59eecaa0519ead9bcc50b7fcb25bd2185ff6047960f19ccb",
          "completed_at": "2026-07-16T14:16:40Z"
        },
        {
          "id": "notices",
          "action": "substrate.notices",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-16T14:16:40Z",
          "output": {
            "status": "disabled"
          },
          "output_hash": "38b904a1cf83df048360fb2480571b749fd98d57e11f1afdffb5a74a78166fea",
          "completed_at": "2026-07-16T14:16:40Z"
        },
        {
          "id": "goals",
          "action": "substrate.goals",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-16T14:16:40Z",
          "output": {
            "status": "disabled",
            "created": 0,
            "observed": 0,
            "results": []
          },
          "output_hash": "cdfd4de44a28140e686159f34f7b47975954c67e1d1efcef666e985acb136ed8",
          "completed_at": "2026-07-16T14:16:40Z"
        }
      ],
      "completed_at": "2026-07-16T14:16:40Z"
    },
    {
      "id": "WFR-271",
      "schema_version": "1.0",
      "workflow_id": "session.stop",
      "workflow_version": 1,
      "definition_hash": "0cef7bb3e28321be8f85375c154955a69310ce297e47de3f3b8dd48f77a2f07d",
      "plan_hash": "a5e1d77ac734217487fc418e29c7163f4e81178e25d171e70cd4c999d527d3e8",
      "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
      "inputs": {},
      "idempotency_key": "hook:Stop:019f6b49-4ce5-77a2-a3a0-b0d9c4e5a7f6",
      "status": "completed",
      "attempt": 1,
      "created_at": "2026-07-16T14:16:47Z",
      "updated_at": "2026-07-16T14:16:48Z",
      "receipts": [
        {
          "step_id": "state",
          "action": "state.consistency",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "5a1c6e5246defb1b6b6b90ff734db95bece2886b408ab112ed9b8e67222d5568",
          "completed_at": "2026-07-16T14:16:48Z"
        },
        {
          "step_id": "goals",
          "action": "substrate.goals",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "cdfd4de44a28140e686159f34f7b47975954c67e1d1efcef666e985acb136ed8",
          "completed_at": "2026-07-16T14:16:48Z"
        },
        {
          "step_id": "staleness",
          "action": "staleness.audit",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "1e81cb0ffd0a4d04626920a203b38d2d23a264cd43e807a85d375d69cae8a658",
          "completed_at": "2026-07-16T14:16:48Z"
        },
        {
          "step_id": "reflections",
          "action": "reflection.list",
          "input_hash": "0172e841ab4c13b3a4061f073f9d68a716ec87a8a5d52fde41823385e0582573",
          "output_hash": "c1b6b635c0bab21120657277f14ef6f839909875f307a3745fa48aee2bd6e449",
          "completed_at": "2026-07-16T14:16:48Z"
        },
        {
          "step_id": "bundle",
          "action": "reporting.bundle",
          "input_hash": "aed8ebb688dc3c085dd978d7c4120572173c3cb87e75919e4a937dcca6ef9457",
          "output_hash": "1e3c2b097cfbf440bcb114e6be9886a2a6ec5d728d22160f832b484b7e1392bb",
          "completed_at": "2026-07-16T14:16:48Z"
        },
        {
          "step_id": "delegated",
          "action": "reporting.delegate",
          "input_hash": "0fae08474dd6b273c8eac1063dd656e7f54bae999e800ca8a6bc0821f4994f9d",
          "output_hash": "e6085059f197def80ae95add1f328418107bea5436c9bd002530043646a3a95c",
          "completed_at": "2026-07-16T14:16:48Z"
        }
      ],
      "steps": [
        {
          "id": "state",
          "action": "state.consistency",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-16T14:16:47Z",
          "output": {
            "status": "ok",
            "repo_root": "D:\\Projects\\prd-plugin",
            "summary": {
              "errors": 0,
              "warnings": 0,
              "infos": 0
            },
            "findings": []
          },
          "output_hash": "5a1c6e5246defb1b6b6b90ff734db95bece2886b408ab112ed9b8e67222d5568",
          "completed_at": "2026-07-16T14:16:48Z"
        },
        {
          "id": "goals",
          "action": "substrate.goals",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-16T14:16:48Z",
          "output": {
            "status": "disabled",
            "created": 0,
            "observed": 0,
            "results": []
          },
          "output_hash": "cdfd4de44a28140e686159f34f7b47975954c67e1d1efcef666e985acb136ed8",
          "completed_at": "2026-07-16T14:16:48Z"
        },
        {
          "id": "staleness",
          "action": "staleness.audit",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-16T14:16:48Z",
          "output": {
            "status": "ok",
            "repo_root": "D:\\Projects\\prd-plugin",
            "counts": {
              "stale": 0
            },
            "stale": []
          },
          "output_hash": "1e81cb0ffd0a4d04626920a203b38d2d23a264cd43e807a85d375d69cae8a658",
          "completed_at": "2026-07-16T14:16:48Z"
        },
        {
          "id": "reflections",
          "action": "reflection.list",
          "status": "completed",
          "resolved_input_hash": "0172e841ab4c13b3a4061f073f9d68a716ec87a8a5d52fde41823385e0582573",
          "started_at": "2026-07-16T14:16:48Z",
          "output": {
            "enabled": false,
            "on_stop": true,
            "max_questions_per_stop": 5,
            "categories": [
              {
                "id": "behaviour_quality",
                "name": "Behaviour quality",
                "enabled": true,
                "question_count": 3
              },
              {
                "id": "harness_friction",
                "name": "Harness friction",
                "enabled": true,
                "question_count": 2
              }
            ],
            "questions": [
              {
                "id": "RFQ-001",
                "text": "Based on the work you just carried out, would you classify your behaviour as good? Answer yes or no and cite observable evidence.",
                "enabled": true,
                "category_id": "behaviour_quality",
                "category_name": "Behaviour quality",
                "effective_enabled": false
              },
              {
                "id": "RFQ-002",
                "text": "If you answered no, what could you do differently to correct your behaviour?",
                "enabled": true,
                "category_id": "behaviour_quality",
                "category_name": "Behaviour quality",
                "effective_enabled": false
              },
              {
                "id": "RFQ-003",
                "text": "Would another attempt using the identified good behaviours materially improve the outcome? Answer yes or no and state the next corrective action if yes.",
                "enabled": true,
                "category_id": "behaviour_quality",
                "category_name": "Behaviour quality",
                "effective_enabled": false
              },
              {
                "id": "RFQ-004",
                "text": "What harness friction points made this work more difficult?",
                "enabled": true,
                "category_id": "harness_friction",
                "category_name": "Harness friction",
                "effective_enabled": false
              },
              {
                "id": "RFQ-005",
                "text": "What up to three changes would most improve friction in the harness?",
                "enabled": true,
                "category_id": "harness_friction",
                "category_name": "Harness friction",
                "effective_enabled": false
              }
            ]
          },
          "output_hash": "c1b6b635c0bab21120657277f14ef6f839909875f307a3745fa48aee2bd6e449",
          "completed_at": "2026-07-16T14:16:48Z"
        },
        {
          "id": "bundle",
          "action": "reporting.bundle",
          "status": "completed",
          "resolved_input_hash": "aed8ebb688dc3c085dd978d7c4120572173c3cb87e75919e4a937dcca6ef9457",
          "started_at": "2026-07-16T14:16:48Z",
          "output": {
            "contract_version": 1,
            "task": "session_summary",
            "repo": "prd-plugin",
            "policy": {
              "enabled": false,
              "executor": "ai-collab",
              "contract_version": 1,
              "profile": "fast-capable",
              "tasks": [
                "report_summary",
                "session_summary",
                "wiki_synthesis",
                "triage_draft"
              ],
              "fallback": "main",
              "require_source_refs": true,
              "max_input_tokens": 12000,
              "max_output_tokens": 1500,
              "timeout_seconds": 30
            },
            "facts": {
              "requests_by_status": {
                "deferred": 1,
                "implemented": 89,
                "in_review": 1,
                "proposed": 3,
                "rejected": 1
              },
              "active_requests": [
                {
                  "id": "REQ-072",
                  "status": "proposed",
                  "severity": "low",
                  "summary": "opencode run-until-done: session.idle is a non-blocking notification, so the stop guard can't force continuation on opencode (currently degrades to a printed reminder, 0.5.95). Investigate whether opencode exposes any vetoable/continuation mechanism (a different event, a permission hook, or a 'continue' API) to enforce run-until-done, or accept the reminder as the permanent ceiling. Low priority — user rarely uses opencode."
                },
                {
                  "id": "REQ-104",
                  "status": "in_review",
                  "severity": "high",
                  "summary": "Ordinary-workspace chat has no path into the planning pipeline: owner-approved collaboration decisions land in scratchpads, room agents cannot allocate REQ/PRD/TRK ids past the parallel-worker mutation boundary, and goal-administrator grants detach when participant identity changes on runner restart"
                },
                {
                  "id": "REQ-107",
                  "status": "proposed",
                  "severity": "high",
                  "summary": "Adopt the UTCP-first tool architecture (user-directed): one UTCP manual is the source of truth for ALL prd-plugin tools including mutations, the MCP surface is generated by the official @utcp/mcp-bridge, and the 2,323-line hand-written MCP server is retired as a hand-maintained surface"
                },
                {
                  "id": "REQ-113",
                  "status": "proposed",
                  "severity": "low",
                  "summary": "Request-thread close has no validated tool: finished threads stay 'unresolved' in message_check forever unless state is hand-flipped; add a thread-close capability to the UTCP-first tool catalog (REQ-107), not as a new hand-written MCP handler"
                }
              ],
              "active_tracking": [],
              "open_health": [],
              "evidence_count": 125,
              "decision_count": 10
            },
            "findings": [],
            "source_refs": [
              ".prd_plugin/config.json",
              ".prd_plugin/state/decisions.json",
              ".prd_plugin/state/evidence.json",
              ".prd_plugin/state/health.json",
              ".prd_plugin/state/requests.json",
              ".prd_plugin/state/tracking.json",
              "REQ-072",
              "REQ-104",
              "REQ-107",
              "REQ-113"
            ],
            "constraints": {
              "max_input_tokens": 12000,
              "max_output_tokens": 1500,
              "timeout_seconds": 30,
              "require_source_refs": true,
              "no_project_state_writes": true,
              "no_secrets_or_local_session_content": true
            }
          },
          "output_hash": "1e3c2b097cfbf440bcb114e6be9886a2a6ec5d728d22160f832b484b7e1392bb",
          "completed_at": "2026-07-16T14:16:48Z"
        },
        {
          "id": "delegated",
          "action": "reporting.delegate",
          "status": "completed",
          "resolved_input_hash": "0fae08474dd6b273c8eac1063dd656e7f54bae999e800ca8a6bc0821f4994f9d",
          "started_at": "2026-07-16T14:16:48Z",
          "output": {
            "status": "fallback",
            "action": "main",
            "reason": "disabled"
          },
          "output_hash": "e6085059f197def80ae95add1f328418107bea5436c9bd002530043646a3a95c",
          "completed_at": "2026-07-16T14:16:48Z"
        }
      ],
      "completed_at": "2026-07-16T14:16:48Z"
    },
    {
      "id": "WFR-272",
      "schema_version": "1.0",
      "workflow_id": "session.start",
      "workflow_version": 1,
      "definition_hash": "d0f98da02571e6dd27fec4aed92d3c82af9db75f8b90b997bf665635c7b7f6ca",
      "plan_hash": "b5072615ca3b7e9a3bd85d50d1f069d99ef2a9816b32c03a370745ed7a205536",
      "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
      "inputs": {},
      "idempotency_key": "hook:SessionStart:019f6b49-953e-7773-a1c0-847c70c52bb3",
      "status": "completed",
      "attempt": 1,
      "created_at": "2026-07-16T14:17:04Z",
      "updated_at": "2026-07-16T14:17:06Z",
      "receipts": [
        {
          "step_id": "config",
          "action": "config.audit",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "3782ec2317c0c8ee7598634310a2804d8aae4735f557498f9d3b8fae7c45e1e5",
          "completed_at": "2026-07-16T14:17:04Z"
        },
        {
          "step_id": "services",
          "action": "services.audit",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "13dcc58bd528f3efa3e6e0fa0853a6eedc376f1f3685fbd4869cbb2b60382ee3",
          "completed_at": "2026-07-16T14:17:04Z"
        },
        {
          "step_id": "state",
          "action": "state.consistency",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "5a1c6e5246defb1b6b6b90ff734db95bece2886b408ab112ed9b8e67222d5568",
          "completed_at": "2026-07-16T14:17:05Z"
        },
        {
          "step_id": "status",
          "action": "state.query",
          "input_hash": "a15231a2142a2a9a85355a8b9cbbccffe01a9c9c2c2fd8c2bc2987cdc481564a",
          "output_hash": "e612fd24ae96a43d20bfe419de740c28c46e9e641ce9e590c5c2ca32d932b393",
          "completed_at": "2026-07-16T14:17:05Z"
        },
        {
          "step_id": "substrate",
          "action": "substrate.preflight",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "a6df426290b4549a59eecaa0519ead9bcc50b7fcb25bd2185ff6047960f19ccb",
          "completed_at": "2026-07-16T14:17:05Z"
        },
        {
          "step_id": "notices",
          "action": "substrate.notices",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "38b904a1cf83df048360fb2480571b749fd98d57e11f1afdffb5a74a78166fea",
          "completed_at": "2026-07-16T14:17:05Z"
        },
        {
          "step_id": "goals",
          "action": "substrate.goals",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "cdfd4de44a28140e686159f34f7b47975954c67e1d1efcef666e985acb136ed8",
          "completed_at": "2026-07-16T14:17:06Z"
        }
      ],
      "steps": [
        {
          "id": "config",
          "action": "config.audit",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-16T14:17:04Z",
          "output": {
            "status": "ok",
            "summary": {
              "settings": 195,
              "mutable": 186,
              "read_only_or_managed": 9,
              "unclassified": 0,
              "unknown": 0,
              "invalid": 0,
              "missing_using_defaults": 0
            },
            "unclassified_keys": [],
            "unknown_keys": [],
            "invalid_values": [],
            "missing_using_defaults": []
          },
          "output_hash": "3782ec2317c0c8ee7598634310a2804d8aae4735f557498f9d3b8fae7c45e1e5",
          "completed_at": "2026-07-16T14:17:04Z"
        },
        {
          "id": "services",
          "action": "services.audit",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-16T14:17:04Z",
          "output": {
            "status": "ok",
            "summary": {
              "critical": 0,
              "high": 0,
              "medium": 0,
              "low": 0
            },
            "findings": []
          },
          "output_hash": "13dcc58bd528f3efa3e6e0fa0853a6eedc376f1f3685fbd4869cbb2b60382ee3",
          "completed_at": "2026-07-16T14:17:04Z"
        },
        {
          "id": "state",
          "action": "state.consistency",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-16T14:17:04Z",
          "output": {
            "status": "ok",
            "repo_root": "D:\\Projects\\prd-plugin",
            "summary": {
              "errors": 0,
              "warnings": 0,
              "infos": 0
            },
            "findings": []
          },
          "output_hash": "5a1c6e5246defb1b6b6b90ff734db95bece2886b408ab112ed9b8e67222d5568",
          "completed_at": "2026-07-16T14:17:05Z"
        },
        {
          "id": "status",
          "action": "state.query",
          "status": "completed",
          "resolved_input_hash": "a15231a2142a2a9a85355a8b9cbbccffe01a9c9c2c2fd8c2bc2987cdc481564a",
          "started_at": "2026-07-16T14:17:05Z",
          "output": {
            "repo_root": "D:\\Projects\\prd-plugin",
            "autonomy_level": "autonomous",
            "requests_by_status": {
              "deferred": 1,
              "implemented": 89,
              "in_review": 1,
              "proposed": 3,
              "rejected": 1
            },
            "active_tracking": [],
            "tracking_branches": [],
            "tracking_branch_counts": {},
            "tracking_branch_errors": [],
            "open_health": [],
            "stale_count": 0,
            "skill_usage": {
              "project-decision-policy": 1,
              "project-request-intake": 1,
              "project-test-driven-implementation": 1,
              "project-verification-before-completion": 1,
              "project-llm-wiki": 1
            },
            "wiki_backfill_pending": false,
            "version_update": null
          },
          "output_hash": "e612fd24ae96a43d20bfe419de740c28c46e9e641ce9e590c5c2ca32d932b393",
          "completed_at": "2026-07-16T14:17:05Z"
        },
        {
          "id": "substrate",
          "action": "substrate.preflight",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-16T14:17:05Z",
          "output": {
            "status": "disabled",
            "services": {
              "status": "ok",
              "summary": {
                "critical": 0,
                "high": 0,
                "medium": 0,
                "low": 0
              },
              "findings": []
            },
            "policy": {
              "configured": {
                "enabled": false,
                "mode": "off",
                "capabilities": [
                  "records",
                  "graph",
                  "events"
                ],
                "contract_version": 2,
                "require_source_refs": true,
                "endpoint": "http://127.0.0.1:47124",
                "manual_url": "http://127.0.0.1:47124/utcp.json",
                "knowledge_browse_url": "http://127.0.0.1:5276",
                "auth_env": "AI_COLLAB_API_KEY",
                "timeout_seconds": 5,
                "max_result_bytes": 1048576,
                "cache_ttl_seconds": 60,
                "fallback": "local",
                "automation": {
                  "discovery_on_session_start": true,
                  "knowledge_recall": true,
                  "memory_recall": true,
                  "context_enrichment": true,
                  "notices_on_session_start": false,
                  "goals_sync": false,
                  "telemetry_on_maintenance": false,
                  "reporting_dispatch": true,
                  "judgment_dispatch": true,
                  "verification_execution": true
                }
              },
              "active": false,
              "effective_mode": "off",
              "effective_capabilities": []
            }
          },
          "output_hash": "a6df426290b4549a59eecaa0519ead9bcc50b7fcb25bd2185ff6047960f19ccb",
          "completed_at": "2026-07-16T14:17:05Z"
        },
        {
          "id": "notices",
          "action": "substrate.notices",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-16T14:17:05Z",
          "output": {
            "status": "disabled"
          },
          "output_hash": "38b904a1cf83df048360fb2480571b749fd98d57e11f1afdffb5a74a78166fea",
          "completed_at": "2026-07-16T14:17:05Z"
        },
        {
          "id": "goals",
          "action": "substrate.goals",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-16T14:17:05Z",
          "output": {
            "status": "disabled",
            "created": 0,
            "observed": 0,
            "results": []
          },
          "output_hash": "cdfd4de44a28140e686159f34f7b47975954c67e1d1efcef666e985acb136ed8",
          "completed_at": "2026-07-16T14:17:06Z"
        }
      ],
      "completed_at": "2026-07-16T14:17:06Z"
    },
    {
      "id": "WFR-273",
      "schema_version": "1.0",
      "workflow_id": "session.stop",
      "workflow_version": 1,
      "definition_hash": "0cef7bb3e28321be8f85375c154955a69310ce297e47de3f3b8dd48f77a2f07d",
      "plan_hash": "a5e1d77ac734217487fc418e29c7163f4e81178e25d171e70cd4c999d527d3e8",
      "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
      "inputs": {},
      "idempotency_key": "hook:Stop:019f6b49-953e-7773-a1c0-847c70c52bb3",
      "status": "completed",
      "attempt": 1,
      "created_at": "2026-07-16T14:17:13Z",
      "updated_at": "2026-07-16T14:17:15Z",
      "receipts": [
        {
          "step_id": "state",
          "action": "state.consistency",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "5a1c6e5246defb1b6b6b90ff734db95bece2886b408ab112ed9b8e67222d5568",
          "completed_at": "2026-07-16T14:17:14Z"
        },
        {
          "step_id": "goals",
          "action": "substrate.goals",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "cdfd4de44a28140e686159f34f7b47975954c67e1d1efcef666e985acb136ed8",
          "completed_at": "2026-07-16T14:17:14Z"
        },
        {
          "step_id": "staleness",
          "action": "staleness.audit",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "1e81cb0ffd0a4d04626920a203b38d2d23a264cd43e807a85d375d69cae8a658",
          "completed_at": "2026-07-16T14:17:15Z"
        },
        {
          "step_id": "reflections",
          "action": "reflection.list",
          "input_hash": "0172e841ab4c13b3a4061f073f9d68a716ec87a8a5d52fde41823385e0582573",
          "output_hash": "c1b6b635c0bab21120657277f14ef6f839909875f307a3745fa48aee2bd6e449",
          "completed_at": "2026-07-16T14:17:15Z"
        },
        {
          "step_id": "bundle",
          "action": "reporting.bundle",
          "input_hash": "aed8ebb688dc3c085dd978d7c4120572173c3cb87e75919e4a937dcca6ef9457",
          "output_hash": "1e3c2b097cfbf440bcb114e6be9886a2a6ec5d728d22160f832b484b7e1392bb",
          "completed_at": "2026-07-16T14:17:15Z"
        },
        {
          "step_id": "delegated",
          "action": "reporting.delegate",
          "input_hash": "0fae08474dd6b273c8eac1063dd656e7f54bae999e800ca8a6bc0821f4994f9d",
          "output_hash": "e6085059f197def80ae95add1f328418107bea5436c9bd002530043646a3a95c",
          "completed_at": "2026-07-16T14:17:15Z"
        }
      ],
      "steps": [
        {
          "id": "state",
          "action": "state.consistency",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-16T14:17:14Z",
          "output": {
            "status": "ok",
            "repo_root": "D:\\Projects\\prd-plugin",
            "summary": {
              "errors": 0,
              "warnings": 0,
              "infos": 0
            },
            "findings": []
          },
          "output_hash": "5a1c6e5246defb1b6b6b90ff734db95bece2886b408ab112ed9b8e67222d5568",
          "completed_at": "2026-07-16T14:17:14Z"
        },
        {
          "id": "goals",
          "action": "substrate.goals",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-16T14:17:14Z",
          "output": {
            "status": "disabled",
            "created": 0,
            "observed": 0,
            "results": []
          },
          "output_hash": "cdfd4de44a28140e686159f34f7b47975954c67e1d1efcef666e985acb136ed8",
          "completed_at": "2026-07-16T14:17:14Z"
        },
        {
          "id": "staleness",
          "action": "staleness.audit",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-16T14:17:15Z",
          "output": {
            "status": "ok",
            "repo_root": "D:\\Projects\\prd-plugin",
            "counts": {
              "stale": 0
            },
            "stale": []
          },
          "output_hash": "1e81cb0ffd0a4d04626920a203b38d2d23a264cd43e807a85d375d69cae8a658",
          "completed_at": "2026-07-16T14:17:15Z"
        },
        {
          "id": "reflections",
          "action": "reflection.list",
          "status": "completed",
          "resolved_input_hash": "0172e841ab4c13b3a4061f073f9d68a716ec87a8a5d52fde41823385e0582573",
          "started_at": "2026-07-16T14:17:15Z",
          "output": {
            "enabled": false,
            "on_stop": true,
            "max_questions_per_stop": 5,
            "categories": [
              {
                "id": "behaviour_quality",
                "name": "Behaviour quality",
                "enabled": true,
                "question_count": 3
              },
              {
                "id": "harness_friction",
                "name": "Harness friction",
                "enabled": true,
                "question_count": 2
              }
            ],
            "questions": [
              {
                "id": "RFQ-001",
                "text": "Based on the work you just carried out, would you classify your behaviour as good? Answer yes or no and cite observable evidence.",
                "enabled": true,
                "category_id": "behaviour_quality",
                "category_name": "Behaviour quality",
                "effective_enabled": false
              },
              {
                "id": "RFQ-002",
                "text": "If you answered no, what could you do differently to correct your behaviour?",
                "enabled": true,
                "category_id": "behaviour_quality",
                "category_name": "Behaviour quality",
                "effective_enabled": false
              },
              {
                "id": "RFQ-003",
                "text": "Would another attempt using the identified good behaviours materially improve the outcome? Answer yes or no and state the next corrective action if yes.",
                "enabled": true,
                "category_id": "behaviour_quality",
                "category_name": "Behaviour quality",
                "effective_enabled": false
              },
              {
                "id": "RFQ-004",
                "text": "What harness friction points made this work more difficult?",
                "enabled": true,
                "category_id": "harness_friction",
                "category_name": "Harness friction",
                "effective_enabled": false
              },
              {
                "id": "RFQ-005",
                "text": "What up to three changes would most improve friction in the harness?",
                "enabled": true,
                "category_id": "harness_friction",
                "category_name": "Harness friction",
                "effective_enabled": false
              }
            ]
          },
          "output_hash": "c1b6b635c0bab21120657277f14ef6f839909875f307a3745fa48aee2bd6e449",
          "completed_at": "2026-07-16T14:17:15Z"
        },
        {
          "id": "bundle",
          "action": "reporting.bundle",
          "status": "completed",
          "resolved_input_hash": "aed8ebb688dc3c085dd978d7c4120572173c3cb87e75919e4a937dcca6ef9457",
          "started_at": "2026-07-16T14:17:15Z",
          "output": {
            "contract_version": 1,
            "task": "session_summary",
            "repo": "prd-plugin",
            "policy": {
              "enabled": false,
              "executor": "ai-collab",
              "contract_version": 1,
              "profile": "fast-capable",
              "tasks": [
                "report_summary",
                "session_summary",
                "wiki_synthesis",
                "triage_draft"
              ],
              "fallback": "main",
              "require_source_refs": true,
              "max_input_tokens": 12000,
              "max_output_tokens": 1500,
              "timeout_seconds": 30
            },
            "facts": {
              "requests_by_status": {
                "deferred": 1,
                "implemented": 89,
                "in_review": 1,
                "proposed": 3,
                "rejected": 1
              },
              "active_requests": [
                {
                  "id": "REQ-072",
                  "status": "proposed",
                  "severity": "low",
                  "summary": "opencode run-until-done: session.idle is a non-blocking notification, so the stop guard can't force continuation on opencode (currently degrades to a printed reminder, 0.5.95). Investigate whether opencode exposes any vetoable/continuation mechanism (a different event, a permission hook, or a 'continue' API) to enforce run-until-done, or accept the reminder as the permanent ceiling. Low priority — user rarely uses opencode."
                },
                {
                  "id": "REQ-104",
                  "status": "in_review",
                  "severity": "high",
                  "summary": "Ordinary-workspace chat has no path into the planning pipeline: owner-approved collaboration decisions land in scratchpads, room agents cannot allocate REQ/PRD/TRK ids past the parallel-worker mutation boundary, and goal-administrator grants detach when participant identity changes on runner restart"
                },
                {
                  "id": "REQ-107",
                  "status": "proposed",
                  "severity": "high",
                  "summary": "Adopt the UTCP-first tool architecture (user-directed): one UTCP manual is the source of truth for ALL prd-plugin tools including mutations, the MCP surface is generated by the official @utcp/mcp-bridge, and the 2,323-line hand-written MCP server is retired as a hand-maintained surface"
                },
                {
                  "id": "REQ-113",
                  "status": "proposed",
                  "severity": "low",
                  "summary": "Request-thread close has no validated tool: finished threads stay 'unresolved' in message_check forever unless state is hand-flipped; add a thread-close capability to the UTCP-first tool catalog (REQ-107), not as a new hand-written MCP handler"
                }
              ],
              "active_tracking": [],
              "open_health": [],
              "evidence_count": 125,
              "decision_count": 10
            },
            "findings": [],
            "source_refs": [
              ".prd_plugin/config.json",
              ".prd_plugin/state/decisions.json",
              ".prd_plugin/state/evidence.json",
              ".prd_plugin/state/health.json",
              ".prd_plugin/state/requests.json",
              ".prd_plugin/state/tracking.json",
              "REQ-072",
              "REQ-104",
              "REQ-107",
              "REQ-113"
            ],
            "constraints": {
              "max_input_tokens": 12000,
              "max_output_tokens": 1500,
              "timeout_seconds": 30,
              "require_source_refs": true,
              "no_project_state_writes": true,
              "no_secrets_or_local_session_content": true
            }
          },
          "output_hash": "1e3c2b097cfbf440bcb114e6be9886a2a6ec5d728d22160f832b484b7e1392bb",
          "completed_at": "2026-07-16T14:17:15Z"
        },
        {
          "id": "delegated",
          "action": "reporting.delegate",
          "status": "completed",
          "resolved_input_hash": "0fae08474dd6b273c8eac1063dd656e7f54bae999e800ca8a6bc0821f4994f9d",
          "started_at": "2026-07-16T14:17:15Z",
          "output": {
            "status": "fallback",
            "action": "main",
            "reason": "disabled"
          },
          "output_hash": "e6085059f197def80ae95add1f328418107bea5436c9bd002530043646a3a95c",
          "completed_at": "2026-07-16T14:17:15Z"
        }
      ],
      "completed_at": "2026-07-16T14:17:15Z"
    },
    {
      "id": "WFR-274",
      "schema_version": "1.0",
      "workflow_id": "session.start",
      "workflow_version": 1,
      "definition_hash": "d0f98da02571e6dd27fec4aed92d3c82af9db75f8b90b997bf665635c7b7f6ca",
      "plan_hash": "b5072615ca3b7e9a3bd85d50d1f069d99ef2a9816b32c03a370745ed7a205536",
      "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
      "inputs": {},
      "idempotency_key": "hook:SessionStart:019f6b49-fac2-7b70-bf8c-a007ff6d2a5f",
      "status": "completed",
      "attempt": 1,
      "created_at": "2026-07-16T14:17:21Z",
      "updated_at": "2026-07-16T14:17:23Z",
      "receipts": [
        {
          "step_id": "config",
          "action": "config.audit",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "3782ec2317c0c8ee7598634310a2804d8aae4735f557498f9d3b8fae7c45e1e5",
          "completed_at": "2026-07-16T14:17:22Z"
        },
        {
          "step_id": "services",
          "action": "services.audit",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "13dcc58bd528f3efa3e6e0fa0853a6eedc376f1f3685fbd4869cbb2b60382ee3",
          "completed_at": "2026-07-16T14:17:22Z"
        },
        {
          "step_id": "state",
          "action": "state.consistency",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "5a1c6e5246defb1b6b6b90ff734db95bece2886b408ab112ed9b8e67222d5568",
          "completed_at": "2026-07-16T14:17:23Z"
        },
        {
          "step_id": "status",
          "action": "state.query",
          "input_hash": "a15231a2142a2a9a85355a8b9cbbccffe01a9c9c2c2fd8c2bc2987cdc481564a",
          "output_hash": "e612fd24ae96a43d20bfe419de740c28c46e9e641ce9e590c5c2ca32d932b393",
          "completed_at": "2026-07-16T14:17:23Z"
        },
        {
          "step_id": "substrate",
          "action": "substrate.preflight",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "a6df426290b4549a59eecaa0519ead9bcc50b7fcb25bd2185ff6047960f19ccb",
          "completed_at": "2026-07-16T14:17:23Z"
        },
        {
          "step_id": "notices",
          "action": "substrate.notices",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "38b904a1cf83df048360fb2480571b749fd98d57e11f1afdffb5a74a78166fea",
          "completed_at": "2026-07-16T14:17:23Z"
        },
        {
          "step_id": "goals",
          "action": "substrate.goals",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "cdfd4de44a28140e686159f34f7b47975954c67e1d1efcef666e985acb136ed8",
          "completed_at": "2026-07-16T14:17:23Z"
        }
      ],
      "steps": [
        {
          "id": "config",
          "action": "config.audit",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-16T14:17:22Z",
          "output": {
            "status": "ok",
            "summary": {
              "settings": 195,
              "mutable": 186,
              "read_only_or_managed": 9,
              "unclassified": 0,
              "unknown": 0,
              "invalid": 0,
              "missing_using_defaults": 0
            },
            "unclassified_keys": [],
            "unknown_keys": [],
            "invalid_values": [],
            "missing_using_defaults": []
          },
          "output_hash": "3782ec2317c0c8ee7598634310a2804d8aae4735f557498f9d3b8fae7c45e1e5",
          "completed_at": "2026-07-16T14:17:22Z"
        },
        {
          "id": "services",
          "action": "services.audit",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-16T14:17:22Z",
          "output": {
            "status": "ok",
            "summary": {
              "critical": 0,
              "high": 0,
              "medium": 0,
              "low": 0
            },
            "findings": []
          },
          "output_hash": "13dcc58bd528f3efa3e6e0fa0853a6eedc376f1f3685fbd4869cbb2b60382ee3",
          "completed_at": "2026-07-16T14:17:22Z"
        },
        {
          "id": "state",
          "action": "state.consistency",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-16T14:17:22Z",
          "output": {
            "status": "ok",
            "repo_root": "D:\\Projects\\prd-plugin",
            "summary": {
              "errors": 0,
              "warnings": 0,
              "infos": 0
            },
            "findings": []
          },
          "output_hash": "5a1c6e5246defb1b6b6b90ff734db95bece2886b408ab112ed9b8e67222d5568",
          "completed_at": "2026-07-16T14:17:23Z"
        },
        {
          "id": "status",
          "action": "state.query",
          "status": "completed",
          "resolved_input_hash": "a15231a2142a2a9a85355a8b9cbbccffe01a9c9c2c2fd8c2bc2987cdc481564a",
          "started_at": "2026-07-16T14:17:23Z",
          "output": {
            "repo_root": "D:\\Projects\\prd-plugin",
            "autonomy_level": "autonomous",
            "requests_by_status": {
              "deferred": 1,
              "implemented": 89,
              "in_review": 1,
              "proposed": 3,
              "rejected": 1
            },
            "active_tracking": [],
            "tracking_branches": [],
            "tracking_branch_counts": {},
            "tracking_branch_errors": [],
            "open_health": [],
            "stale_count": 0,
            "skill_usage": {
              "project-decision-policy": 1,
              "project-request-intake": 1,
              "project-test-driven-implementation": 1,
              "project-verification-before-completion": 1,
              "project-llm-wiki": 1
            },
            "wiki_backfill_pending": false,
            "version_update": null
          },
          "output_hash": "e612fd24ae96a43d20bfe419de740c28c46e9e641ce9e590c5c2ca32d932b393",
          "completed_at": "2026-07-16T14:17:23Z"
        },
        {
          "id": "substrate",
          "action": "substrate.preflight",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-16T14:17:23Z",
          "output": {
            "status": "disabled",
            "services": {
              "status": "ok",
              "summary": {
                "critical": 0,
                "high": 0,
                "medium": 0,
                "low": 0
              },
              "findings": []
            },
            "policy": {
              "configured": {
                "enabled": false,
                "mode": "off",
                "capabilities": [
                  "records",
                  "graph",
                  "events"
                ],
                "contract_version": 2,
                "require_source_refs": true,
                "endpoint": "http://127.0.0.1:47124",
                "manual_url": "http://127.0.0.1:47124/utcp.json",
                "knowledge_browse_url": "http://127.0.0.1:5276",
                "auth_env": "AI_COLLAB_API_KEY",
                "timeout_seconds": 5,
                "max_result_bytes": 1048576,
                "cache_ttl_seconds": 60,
                "fallback": "local",
                "automation": {
                  "discovery_on_session_start": true,
                  "knowledge_recall": true,
                  "memory_recall": true,
                  "context_enrichment": true,
                  "notices_on_session_start": false,
                  "goals_sync": false,
                  "telemetry_on_maintenance": false,
                  "reporting_dispatch": true,
                  "judgment_dispatch": true,
                  "verification_execution": true
                }
              },
              "active": false,
              "effective_mode": "off",
              "effective_capabilities": []
            }
          },
          "output_hash": "a6df426290b4549a59eecaa0519ead9bcc50b7fcb25bd2185ff6047960f19ccb",
          "completed_at": "2026-07-16T14:17:23Z"
        },
        {
          "id": "notices",
          "action": "substrate.notices",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-16T14:17:23Z",
          "output": {
            "status": "disabled"
          },
          "output_hash": "38b904a1cf83df048360fb2480571b749fd98d57e11f1afdffb5a74a78166fea",
          "completed_at": "2026-07-16T14:17:23Z"
        },
        {
          "id": "goals",
          "action": "substrate.goals",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-16T14:17:23Z",
          "output": {
            "status": "disabled",
            "created": 0,
            "observed": 0,
            "results": []
          },
          "output_hash": "cdfd4de44a28140e686159f34f7b47975954c67e1d1efcef666e985acb136ed8",
          "completed_at": "2026-07-16T14:17:23Z"
        }
      ],
      "completed_at": "2026-07-16T14:17:23Z"
    },
    {
      "id": "WFR-275",
      "schema_version": "1.0",
      "workflow_id": "session.stop",
      "workflow_version": 1,
      "definition_hash": "0cef7bb3e28321be8f85375c154955a69310ce297e47de3f3b8dd48f77a2f07d",
      "plan_hash": "a5e1d77ac734217487fc418e29c7163f4e81178e25d171e70cd4c999d527d3e8",
      "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
      "inputs": {},
      "idempotency_key": "hook:Stop:019f6b49-fac2-7b70-bf8c-a007ff6d2a5f",
      "status": "completed",
      "attempt": 1,
      "created_at": "2026-07-16T14:17:28Z",
      "updated_at": "2026-07-16T14:17:31Z",
      "receipts": [
        {
          "step_id": "state",
          "action": "state.consistency",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "5a1c6e5246defb1b6b6b90ff734db95bece2886b408ab112ed9b8e67222d5568",
          "completed_at": "2026-07-16T14:17:29Z"
        },
        {
          "step_id": "goals",
          "action": "substrate.goals",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "cdfd4de44a28140e686159f34f7b47975954c67e1d1efcef666e985acb136ed8",
          "completed_at": "2026-07-16T14:17:30Z"
        },
        {
          "step_id": "staleness",
          "action": "staleness.audit",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "1e81cb0ffd0a4d04626920a203b38d2d23a264cd43e807a85d375d69cae8a658",
          "completed_at": "2026-07-16T14:17:30Z"
        },
        {
          "step_id": "reflections",
          "action": "reflection.list",
          "input_hash": "0172e841ab4c13b3a4061f073f9d68a716ec87a8a5d52fde41823385e0582573",
          "output_hash": "c1b6b635c0bab21120657277f14ef6f839909875f307a3745fa48aee2bd6e449",
          "completed_at": "2026-07-16T14:17:30Z"
        },
        {
          "step_id": "bundle",
          "action": "reporting.bundle",
          "input_hash": "aed8ebb688dc3c085dd978d7c4120572173c3cb87e75919e4a937dcca6ef9457",
          "output_hash": "1e3c2b097cfbf440bcb114e6be9886a2a6ec5d728d22160f832b484b7e1392bb",
          "completed_at": "2026-07-16T14:17:30Z"
        },
        {
          "step_id": "delegated",
          "action": "reporting.delegate",
          "input_hash": "0fae08474dd6b273c8eac1063dd656e7f54bae999e800ca8a6bc0821f4994f9d",
          "output_hash": "e6085059f197def80ae95add1f328418107bea5436c9bd002530043646a3a95c",
          "completed_at": "2026-07-16T14:17:31Z"
        }
      ],
      "steps": [
        {
          "id": "state",
          "action": "state.consistency",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-16T14:17:28Z",
          "output": {
            "status": "ok",
            "repo_root": "D:\\Projects\\prd-plugin",
            "summary": {
              "errors": 0,
              "warnings": 0,
              "infos": 0
            },
            "findings": []
          },
          "output_hash": "5a1c6e5246defb1b6b6b90ff734db95bece2886b408ab112ed9b8e67222d5568",
          "completed_at": "2026-07-16T14:17:29Z"
        },
        {
          "id": "goals",
          "action": "substrate.goals",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-16T14:17:29Z",
          "output": {
            "status": "disabled",
            "created": 0,
            "observed": 0,
            "results": []
          },
          "output_hash": "cdfd4de44a28140e686159f34f7b47975954c67e1d1efcef666e985acb136ed8",
          "completed_at": "2026-07-16T14:17:30Z"
        },
        {
          "id": "staleness",
          "action": "staleness.audit",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-16T14:17:30Z",
          "output": {
            "status": "ok",
            "repo_root": "D:\\Projects\\prd-plugin",
            "counts": {
              "stale": 0
            },
            "stale": []
          },
          "output_hash": "1e81cb0ffd0a4d04626920a203b38d2d23a264cd43e807a85d375d69cae8a658",
          "completed_at": "2026-07-16T14:17:30Z"
        },
        {
          "id": "reflections",
          "action": "reflection.list",
          "status": "completed",
          "resolved_input_hash": "0172e841ab4c13b3a4061f073f9d68a716ec87a8a5d52fde41823385e0582573",
          "started_at": "2026-07-16T14:17:30Z",
          "output": {
            "enabled": false,
            "on_stop": true,
            "max_questions_per_stop": 5,
            "categories": [
              {
                "id": "behaviour_quality",
                "name": "Behaviour quality",
                "enabled": true,
                "question_count": 3
              },
              {
                "id": "harness_friction",
                "name": "Harness friction",
                "enabled": true,
                "question_count": 2
              }
            ],
            "questions": [
              {
                "id": "RFQ-001",
                "text": "Based on the work you just carried out, would you classify your behaviour as good? Answer yes or no and cite observable evidence.",
                "enabled": true,
                "category_id": "behaviour_quality",
                "category_name": "Behaviour quality",
                "effective_enabled": false
              },
              {
                "id": "RFQ-002",
                "text": "If you answered no, what could you do differently to correct your behaviour?",
                "enabled": true,
                "category_id": "behaviour_quality",
                "category_name": "Behaviour quality",
                "effective_enabled": false
              },
              {
                "id": "RFQ-003",
                "text": "Would another attempt using the identified good behaviours materially improve the outcome? Answer yes or no and state the next corrective action if yes.",
                "enabled": true,
                "category_id": "behaviour_quality",
                "category_name": "Behaviour quality",
                "effective_enabled": false
              },
              {
                "id": "RFQ-004",
                "text": "What harness friction points made this work more difficult?",
                "enabled": true,
                "category_id": "harness_friction",
                "category_name": "Harness friction",
                "effective_enabled": false
              },
              {
                "id": "RFQ-005",
                "text": "What up to three changes would most improve friction in the harness?",
                "enabled": true,
                "category_id": "harness_friction",
                "category_name": "Harness friction",
                "effective_enabled": false
              }
            ]
          },
          "output_hash": "c1b6b635c0bab21120657277f14ef6f839909875f307a3745fa48aee2bd6e449",
          "completed_at": "2026-07-16T14:17:30Z"
        },
        {
          "id": "bundle",
          "action": "reporting.bundle",
          "status": "completed",
          "resolved_input_hash": "aed8ebb688dc3c085dd978d7c4120572173c3cb87e75919e4a937dcca6ef9457",
          "started_at": "2026-07-16T14:17:30Z",
          "output": {
            "contract_version": 1,
            "task": "session_summary",
            "repo": "prd-plugin",
            "policy": {
              "enabled": false,
              "executor": "ai-collab",
              "contract_version": 1,
              "profile": "fast-capable",
              "tasks": [
                "report_summary",
                "session_summary",
                "wiki_synthesis",
                "triage_draft"
              ],
              "fallback": "main",
              "require_source_refs": true,
              "max_input_tokens": 12000,
              "max_output_tokens": 1500,
              "timeout_seconds": 30
            },
            "facts": {
              "requests_by_status": {
                "deferred": 1,
                "implemented": 89,
                "in_review": 1,
                "proposed": 3,
                "rejected": 1
              },
              "active_requests": [
                {
                  "id": "REQ-072",
                  "status": "proposed",
                  "severity": "low",
                  "summary": "opencode run-until-done: session.idle is a non-blocking notification, so the stop guard can't force continuation on opencode (currently degrades to a printed reminder, 0.5.95). Investigate whether opencode exposes any vetoable/continuation mechanism (a different event, a permission hook, or a 'continue' API) to enforce run-until-done, or accept the reminder as the permanent ceiling. Low priority — user rarely uses opencode."
                },
                {
                  "id": "REQ-104",
                  "status": "in_review",
                  "severity": "high",
                  "summary": "Ordinary-workspace chat has no path into the planning pipeline: owner-approved collaboration decisions land in scratchpads, room agents cannot allocate REQ/PRD/TRK ids past the parallel-worker mutation boundary, and goal-administrator grants detach when participant identity changes on runner restart"
                },
                {
                  "id": "REQ-107",
                  "status": "proposed",
                  "severity": "high",
                  "summary": "Adopt the UTCP-first tool architecture (user-directed): one UTCP manual is the source of truth for ALL prd-plugin tools including mutations, the MCP surface is generated by the official @utcp/mcp-bridge, and the 2,323-line hand-written MCP server is retired as a hand-maintained surface"
                },
                {
                  "id": "REQ-113",
                  "status": "proposed",
                  "severity": "low",
                  "summary": "Request-thread close has no validated tool: finished threads stay 'unresolved' in message_check forever unless state is hand-flipped; add a thread-close capability to the UTCP-first tool catalog (REQ-107), not as a new hand-written MCP handler"
                }
              ],
              "active_tracking": [],
              "open_health": [],
              "evidence_count": 125,
              "decision_count": 10
            },
            "findings": [],
            "source_refs": [
              ".prd_plugin/config.json",
              ".prd_plugin/state/decisions.json",
              ".prd_plugin/state/evidence.json",
              ".prd_plugin/state/health.json",
              ".prd_plugin/state/requests.json",
              ".prd_plugin/state/tracking.json",
              "REQ-072",
              "REQ-104",
              "REQ-107",
              "REQ-113"
            ],
            "constraints": {
              "max_input_tokens": 12000,
              "max_output_tokens": 1500,
              "timeout_seconds": 30,
              "require_source_refs": true,
              "no_project_state_writes": true,
              "no_secrets_or_local_session_content": true
            }
          },
          "output_hash": "1e3c2b097cfbf440bcb114e6be9886a2a6ec5d728d22160f832b484b7e1392bb",
          "completed_at": "2026-07-16T14:17:30Z"
        },
        {
          "id": "delegated",
          "action": "reporting.delegate",
          "status": "completed",
          "resolved_input_hash": "0fae08474dd6b273c8eac1063dd656e7f54bae999e800ca8a6bc0821f4994f9d",
          "started_at": "2026-07-16T14:17:31Z",
          "output": {
            "status": "fallback",
            "action": "main",
            "reason": "disabled"
          },
          "output_hash": "e6085059f197def80ae95add1f328418107bea5436c9bd002530043646a3a95c",
          "completed_at": "2026-07-16T14:17:31Z"
        }
      ],
      "completed_at": "2026-07-16T14:17:31Z"
    },
    {
      "id": "WFR-276",
      "schema_version": "1.0",
      "workflow_id": "session.start",
      "workflow_version": 1,
      "definition_hash": "d0f98da02571e6dd27fec4aed92d3c82af9db75f8b90b997bf665635c7b7f6ca",
      "plan_hash": "b5072615ca3b7e9a3bd85d50d1f069d99ef2a9816b32c03a370745ed7a205536",
      "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
      "inputs": {},
      "idempotency_key": "hook:SessionStart:019f6b4a-3a78-78f2-8fb0-98205975ac51",
      "status": "completed",
      "attempt": 1,
      "created_at": "2026-07-16T14:17:38Z",
      "updated_at": "2026-07-16T14:17:41Z",
      "receipts": [
        {
          "step_id": "config",
          "action": "config.audit",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "3782ec2317c0c8ee7598634310a2804d8aae4735f557498f9d3b8fae7c45e1e5",
          "completed_at": "2026-07-16T14:17:39Z"
        },
        {
          "step_id": "services",
          "action": "services.audit",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "13dcc58bd528f3efa3e6e0fa0853a6eedc376f1f3685fbd4869cbb2b60382ee3",
          "completed_at": "2026-07-16T14:17:39Z"
        },
        {
          "step_id": "state",
          "action": "state.consistency",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "5a1c6e5246defb1b6b6b90ff734db95bece2886b408ab112ed9b8e67222d5568",
          "completed_at": "2026-07-16T14:17:40Z"
        },
        {
          "step_id": "status",
          "action": "state.query",
          "input_hash": "a15231a2142a2a9a85355a8b9cbbccffe01a9c9c2c2fd8c2bc2987cdc481564a",
          "output_hash": "e612fd24ae96a43d20bfe419de740c28c46e9e641ce9e590c5c2ca32d932b393",
          "completed_at": "2026-07-16T14:17:41Z"
        },
        {
          "step_id": "substrate",
          "action": "substrate.preflight",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "a6df426290b4549a59eecaa0519ead9bcc50b7fcb25bd2185ff6047960f19ccb",
          "completed_at": "2026-07-16T14:17:41Z"
        },
        {
          "step_id": "notices",
          "action": "substrate.notices",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "38b904a1cf83df048360fb2480571b749fd98d57e11f1afdffb5a74a78166fea",
          "completed_at": "2026-07-16T14:17:41Z"
        },
        {
          "step_id": "goals",
          "action": "substrate.goals",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "cdfd4de44a28140e686159f34f7b47975954c67e1d1efcef666e985acb136ed8",
          "completed_at": "2026-07-16T14:17:41Z"
        }
      ],
      "steps": [
        {
          "id": "config",
          "action": "config.audit",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-16T14:17:39Z",
          "output": {
            "status": "ok",
            "summary": {
              "settings": 195,
              "mutable": 186,
              "read_only_or_managed": 9,
              "unclassified": 0,
              "unknown": 0,
              "invalid": 0,
              "missing_using_defaults": 0
            },
            "unclassified_keys": [],
            "unknown_keys": [],
            "invalid_values": [],
            "missing_using_defaults": []
          },
          "output_hash": "3782ec2317c0c8ee7598634310a2804d8aae4735f557498f9d3b8fae7c45e1e5",
          "completed_at": "2026-07-16T14:17:39Z"
        },
        {
          "id": "services",
          "action": "services.audit",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-16T14:17:39Z",
          "output": {
            "status": "ok",
            "summary": {
              "critical": 0,
              "high": 0,
              "medium": 0,
              "low": 0
            },
            "findings": []
          },
          "output_hash": "13dcc58bd528f3efa3e6e0fa0853a6eedc376f1f3685fbd4869cbb2b60382ee3",
          "completed_at": "2026-07-16T14:17:39Z"
        },
        {
          "id": "state",
          "action": "state.consistency",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-16T14:17:39Z",
          "output": {
            "status": "ok",
            "repo_root": "D:\\Projects\\prd-plugin",
            "summary": {
              "errors": 0,
              "warnings": 0,
              "infos": 0
            },
            "findings": []
          },
          "output_hash": "5a1c6e5246defb1b6b6b90ff734db95bece2886b408ab112ed9b8e67222d5568",
          "completed_at": "2026-07-16T14:17:40Z"
        },
        {
          "id": "status",
          "action": "state.query",
          "status": "completed",
          "resolved_input_hash": "a15231a2142a2a9a85355a8b9cbbccffe01a9c9c2c2fd8c2bc2987cdc481564a",
          "started_at": "2026-07-16T14:17:40Z",
          "output": {
            "repo_root": "D:\\Projects\\prd-plugin",
            "autonomy_level": "autonomous",
            "requests_by_status": {
              "deferred": 1,
              "implemented": 89,
              "in_review": 1,
              "proposed": 3,
              "rejected": 1
            },
            "active_tracking": [],
            "tracking_branches": [],
            "tracking_branch_counts": {},
            "tracking_branch_errors": [],
            "open_health": [],
            "stale_count": 0,
            "skill_usage": {
              "project-decision-policy": 1,
              "project-request-intake": 1,
              "project-test-driven-implementation": 1,
              "project-verification-before-completion": 1,
              "project-llm-wiki": 1
            },
            "wiki_backfill_pending": false,
            "version_update": null
          },
          "output_hash": "e612fd24ae96a43d20bfe419de740c28c46e9e641ce9e590c5c2ca32d932b393",
          "completed_at": "2026-07-16T14:17:41Z"
        },
        {
          "id": "substrate",
          "action": "substrate.preflight",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-16T14:17:41Z",
          "output": {
            "status": "disabled",
            "services": {
              "status": "ok",
              "summary": {
                "critical": 0,
                "high": 0,
                "medium": 0,
                "low": 0
              },
              "findings": []
            },
            "policy": {
              "configured": {
                "enabled": false,
                "mode": "off",
                "capabilities": [
                  "records",
                  "graph",
                  "events"
                ],
                "contract_version": 2,
                "require_source_refs": true,
                "endpoint": "http://127.0.0.1:47124",
                "manual_url": "http://127.0.0.1:47124/utcp.json",
                "knowledge_browse_url": "http://127.0.0.1:5276",
                "auth_env": "AI_COLLAB_API_KEY",
                "timeout_seconds": 5,
                "max_result_bytes": 1048576,
                "cache_ttl_seconds": 60,
                "fallback": "local",
                "automation": {
                  "discovery_on_session_start": true,
                  "knowledge_recall": true,
                  "memory_recall": true,
                  "context_enrichment": true,
                  "notices_on_session_start": false,
                  "goals_sync": false,
                  "telemetry_on_maintenance": false,
                  "reporting_dispatch": true,
                  "judgment_dispatch": true,
                  "verification_execution": true
                }
              },
              "active": false,
              "effective_mode": "off",
              "effective_capabilities": []
            }
          },
          "output_hash": "a6df426290b4549a59eecaa0519ead9bcc50b7fcb25bd2185ff6047960f19ccb",
          "completed_at": "2026-07-16T14:17:41Z"
        },
        {
          "id": "notices",
          "action": "substrate.notices",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-16T14:17:41Z",
          "output": {
            "status": "disabled"
          },
          "output_hash": "38b904a1cf83df048360fb2480571b749fd98d57e11f1afdffb5a74a78166fea",
          "completed_at": "2026-07-16T14:17:41Z"
        },
        {
          "id": "goals",
          "action": "substrate.goals",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-16T14:17:41Z",
          "output": {
            "status": "disabled",
            "created": 0,
            "observed": 0,
            "results": []
          },
          "output_hash": "cdfd4de44a28140e686159f34f7b47975954c67e1d1efcef666e985acb136ed8",
          "completed_at": "2026-07-16T14:17:41Z"
        }
      ],
      "completed_at": "2026-07-16T14:17:41Z"
    },
    {
      "id": "WFR-277",
      "schema_version": "1.0",
      "workflow_id": "session.stop",
      "workflow_version": 1,
      "definition_hash": "0cef7bb3e28321be8f85375c154955a69310ce297e47de3f3b8dd48f77a2f07d",
      "plan_hash": "a5e1d77ac734217487fc418e29c7163f4e81178e25d171e70cd4c999d527d3e8",
      "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
      "inputs": {},
      "idempotency_key": "hook:Stop:019f6b4a-3a78-78f2-8fb0-98205975ac51",
      "status": "completed",
      "attempt": 1,
      "created_at": "2026-07-16T14:17:46Z",
      "updated_at": "2026-07-16T14:17:49Z",
      "receipts": [
        {
          "step_id": "state",
          "action": "state.consistency",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "5a1c6e5246defb1b6b6b90ff734db95bece2886b408ab112ed9b8e67222d5568",
          "completed_at": "2026-07-16T14:17:48Z"
        },
        {
          "step_id": "goals",
          "action": "substrate.goals",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "cdfd4de44a28140e686159f34f7b47975954c67e1d1efcef666e985acb136ed8",
          "completed_at": "2026-07-16T14:17:48Z"
        },
        {
          "step_id": "staleness",
          "action": "staleness.audit",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "1e81cb0ffd0a4d04626920a203b38d2d23a264cd43e807a85d375d69cae8a658",
          "completed_at": "2026-07-16T14:17:48Z"
        },
        {
          "step_id": "reflections",
          "action": "reflection.list",
          "input_hash": "0172e841ab4c13b3a4061f073f9d68a716ec87a8a5d52fde41823385e0582573",
          "output_hash": "c1b6b635c0bab21120657277f14ef6f839909875f307a3745fa48aee2bd6e449",
          "completed_at": "2026-07-16T14:17:48Z"
        },
        {
          "step_id": "bundle",
          "action": "reporting.bundle",
          "input_hash": "aed8ebb688dc3c085dd978d7c4120572173c3cb87e75919e4a937dcca6ef9457",
          "output_hash": "1e3c2b097cfbf440bcb114e6be9886a2a6ec5d728d22160f832b484b7e1392bb",
          "completed_at": "2026-07-16T14:17:49Z"
        },
        {
          "step_id": "delegated",
          "action": "reporting.delegate",
          "input_hash": "0fae08474dd6b273c8eac1063dd656e7f54bae999e800ca8a6bc0821f4994f9d",
          "output_hash": "e6085059f197def80ae95add1f328418107bea5436c9bd002530043646a3a95c",
          "completed_at": "2026-07-16T14:17:49Z"
        }
      ],
      "steps": [
        {
          "id": "state",
          "action": "state.consistency",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-16T14:17:47Z",
          "output": {
            "status": "ok",
            "repo_root": "D:\\Projects\\prd-plugin",
            "summary": {
              "errors": 0,
              "warnings": 0,
              "infos": 0
            },
            "findings": []
          },
          "output_hash": "5a1c6e5246defb1b6b6b90ff734db95bece2886b408ab112ed9b8e67222d5568",
          "completed_at": "2026-07-16T14:17:48Z"
        },
        {
          "id": "goals",
          "action": "substrate.goals",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-16T14:17:48Z",
          "output": {
            "status": "disabled",
            "created": 0,
            "observed": 0,
            "results": []
          },
          "output_hash": "cdfd4de44a28140e686159f34f7b47975954c67e1d1efcef666e985acb136ed8",
          "completed_at": "2026-07-16T14:17:48Z"
        },
        {
          "id": "staleness",
          "action": "staleness.audit",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-16T14:17:48Z",
          "output": {
            "status": "ok",
            "repo_root": "D:\\Projects\\prd-plugin",
            "counts": {
              "stale": 0
            },
            "stale": []
          },
          "output_hash": "1e81cb0ffd0a4d04626920a203b38d2d23a264cd43e807a85d375d69cae8a658",
          "completed_at": "2026-07-16T14:17:48Z"
        },
        {
          "id": "reflections",
          "action": "reflection.list",
          "status": "completed",
          "resolved_input_hash": "0172e841ab4c13b3a4061f073f9d68a716ec87a8a5d52fde41823385e0582573",
          "started_at": "2026-07-16T14:17:48Z",
          "output": {
            "enabled": false,
            "on_stop": true,
            "max_questions_per_stop": 5,
            "categories": [
              {
                "id": "behaviour_quality",
                "name": "Behaviour quality",
                "enabled": true,
                "question_count": 3
              },
              {
                "id": "harness_friction",
                "name": "Harness friction",
                "enabled": true,
                "question_count": 2
              }
            ],
            "questions": [
              {
                "id": "RFQ-001",
                "text": "Based on the work you just carried out, would you classify your behaviour as good? Answer yes or no and cite observable evidence.",
                "enabled": true,
                "category_id": "behaviour_quality",
                "category_name": "Behaviour quality",
                "effective_enabled": false
              },
              {
                "id": "RFQ-002",
                "text": "If you answered no, what could you do differently to correct your behaviour?",
                "enabled": true,
                "category_id": "behaviour_quality",
                "category_name": "Behaviour quality",
                "effective_enabled": false
              },
              {
                "id": "RFQ-003",
                "text": "Would another attempt using the identified good behaviours materially improve the outcome? Answer yes or no and state the next corrective action if yes.",
                "enabled": true,
                "category_id": "behaviour_quality",
                "category_name": "Behaviour quality",
                "effective_enabled": false
              },
              {
                "id": "RFQ-004",
                "text": "What harness friction points made this work more difficult?",
                "enabled": true,
                "category_id": "harness_friction",
                "category_name": "Harness friction",
                "effective_enabled": false
              },
              {
                "id": "RFQ-005",
                "text": "What up to three changes would most improve friction in the harness?",
                "enabled": true,
                "category_id": "harness_friction",
                "category_name": "Harness friction",
                "effective_enabled": false
              }
            ]
          },
          "output_hash": "c1b6b635c0bab21120657277f14ef6f839909875f307a3745fa48aee2bd6e449",
          "completed_at": "2026-07-16T14:17:48Z"
        },
        {
          "id": "bundle",
          "action": "reporting.bundle",
          "status": "completed",
          "resolved_input_hash": "aed8ebb688dc3c085dd978d7c4120572173c3cb87e75919e4a937dcca6ef9457",
          "started_at": "2026-07-16T14:17:49Z",
          "output": {
            "contract_version": 1,
            "task": "session_summary",
            "repo": "prd-plugin",
            "policy": {
              "enabled": false,
              "executor": "ai-collab",
              "contract_version": 1,
              "profile": "fast-capable",
              "tasks": [
                "report_summary",
                "session_summary",
                "wiki_synthesis",
                "triage_draft"
              ],
              "fallback": "main",
              "require_source_refs": true,
              "max_input_tokens": 12000,
              "max_output_tokens": 1500,
              "timeout_seconds": 30
            },
            "facts": {
              "requests_by_status": {
                "deferred": 1,
                "implemented": 89,
                "in_review": 1,
                "proposed": 3,
                "rejected": 1
              },
              "active_requests": [
                {
                  "id": "REQ-072",
                  "status": "proposed",
                  "severity": "low",
                  "summary": "opencode run-until-done: session.idle is a non-blocking notification, so the stop guard can't force continuation on opencode (currently degrades to a printed reminder, 0.5.95). Investigate whether opencode exposes any vetoable/continuation mechanism (a different event, a permission hook, or a 'continue' API) to enforce run-until-done, or accept the reminder as the permanent ceiling. Low priority — user rarely uses opencode."
                },
                {
                  "id": "REQ-104",
                  "status": "in_review",
                  "severity": "high",
                  "summary": "Ordinary-workspace chat has no path into the planning pipeline: owner-approved collaboration decisions land in scratchpads, room agents cannot allocate REQ/PRD/TRK ids past the parallel-worker mutation boundary, and goal-administrator grants detach when participant identity changes on runner restart"
                },
                {
                  "id": "REQ-107",
                  "status": "proposed",
                  "severity": "high",
                  "summary": "Adopt the UTCP-first tool architecture (user-directed): one UTCP manual is the source of truth for ALL prd-plugin tools including mutations, the MCP surface is generated by the official @utcp/mcp-bridge, and the 2,323-line hand-written MCP server is retired as a hand-maintained surface"
                },
                {
                  "id": "REQ-113",
                  "status": "proposed",
                  "severity": "low",
                  "summary": "Request-thread close has no validated tool: finished threads stay 'unresolved' in message_check forever unless state is hand-flipped; add a thread-close capability to the UTCP-first tool catalog (REQ-107), not as a new hand-written MCP handler"
                }
              ],
              "active_tracking": [],
              "open_health": [],
              "evidence_count": 125,
              "decision_count": 10
            },
            "findings": [],
            "source_refs": [
              ".prd_plugin/config.json",
              ".prd_plugin/state/decisions.json",
              ".prd_plugin/state/evidence.json",
              ".prd_plugin/state/health.json",
              ".prd_plugin/state/requests.json",
              ".prd_plugin/state/tracking.json",
              "REQ-072",
              "REQ-104",
              "REQ-107",
              "REQ-113"
            ],
            "constraints": {
              "max_input_tokens": 12000,
              "max_output_tokens": 1500,
              "timeout_seconds": 30,
              "require_source_refs": true,
              "no_project_state_writes": true,
              "no_secrets_or_local_session_content": true
            }
          },
          "output_hash": "1e3c2b097cfbf440bcb114e6be9886a2a6ec5d728d22160f832b484b7e1392bb",
          "completed_at": "2026-07-16T14:17:49Z"
        },
        {
          "id": "delegated",
          "action": "reporting.delegate",
          "status": "completed",
          "resolved_input_hash": "0fae08474dd6b273c8eac1063dd656e7f54bae999e800ca8a6bc0821f4994f9d",
          "started_at": "2026-07-16T14:17:49Z",
          "output": {
            "status": "fallback",
            "action": "main",
            "reason": "disabled"
          },
          "output_hash": "e6085059f197def80ae95add1f328418107bea5436c9bd002530043646a3a95c",
          "completed_at": "2026-07-16T14:17:49Z"
        }
      ],
      "completed_at": "2026-07-16T14:17:49Z"
    },
    {
      "id": "WFR-278",
      "schema_version": "1.0",
      "workflow_id": "session.start",
      "workflow_version": 1,
      "definition_hash": "d0f98da02571e6dd27fec4aed92d3c82af9db75f8b90b997bf665635c7b7f6ca",
      "plan_hash": "b5072615ca3b7e9a3bd85d50d1f069d99ef2a9816b32c03a370745ed7a205536",
      "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
      "inputs": {},
      "idempotency_key": "hook:SessionStart:019f6b4a-9428-70c1-a262-b5a8b60e9ea4",
      "status": "completed",
      "attempt": 1,
      "created_at": "2026-07-16T14:18:01Z",
      "updated_at": "2026-07-16T14:18:04Z",
      "receipts": [
        {
          "step_id": "config",
          "action": "config.audit",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "3782ec2317c0c8ee7598634310a2804d8aae4735f557498f9d3b8fae7c45e1e5",
          "completed_at": "2026-07-16T14:18:02Z"
        },
        {
          "step_id": "services",
          "action": "services.audit",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "13dcc58bd528f3efa3e6e0fa0853a6eedc376f1f3685fbd4869cbb2b60382ee3",
          "completed_at": "2026-07-16T14:18:02Z"
        },
        {
          "step_id": "state",
          "action": "state.consistency",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "5a1c6e5246defb1b6b6b90ff734db95bece2886b408ab112ed9b8e67222d5568",
          "completed_at": "2026-07-16T14:18:03Z"
        },
        {
          "step_id": "status",
          "action": "state.query",
          "input_hash": "a15231a2142a2a9a85355a8b9cbbccffe01a9c9c2c2fd8c2bc2987cdc481564a",
          "output_hash": "e612fd24ae96a43d20bfe419de740c28c46e9e641ce9e590c5c2ca32d932b393",
          "completed_at": "2026-07-16T14:18:03Z"
        },
        {
          "step_id": "substrate",
          "action": "substrate.preflight",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "a6df426290b4549a59eecaa0519ead9bcc50b7fcb25bd2185ff6047960f19ccb",
          "completed_at": "2026-07-16T14:18:04Z"
        },
        {
          "step_id": "notices",
          "action": "substrate.notices",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "38b904a1cf83df048360fb2480571b749fd98d57e11f1afdffb5a74a78166fea",
          "completed_at": "2026-07-16T14:18:04Z"
        },
        {
          "step_id": "goals",
          "action": "substrate.goals",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "cdfd4de44a28140e686159f34f7b47975954c67e1d1efcef666e985acb136ed8",
          "completed_at": "2026-07-16T14:18:04Z"
        }
      ],
      "steps": [
        {
          "id": "config",
          "action": "config.audit",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-16T14:18:02Z",
          "output": {
            "status": "ok",
            "summary": {
              "settings": 195,
              "mutable": 186,
              "read_only_or_managed": 9,
              "unclassified": 0,
              "unknown": 0,
              "invalid": 0,
              "missing_using_defaults": 0
            },
            "unclassified_keys": [],
            "unknown_keys": [],
            "invalid_values": [],
            "missing_using_defaults": []
          },
          "output_hash": "3782ec2317c0c8ee7598634310a2804d8aae4735f557498f9d3b8fae7c45e1e5",
          "completed_at": "2026-07-16T14:18:02Z"
        },
        {
          "id": "services",
          "action": "services.audit",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-16T14:18:02Z",
          "output": {
            "status": "ok",
            "summary": {
              "critical": 0,
              "high": 0,
              "medium": 0,
              "low": 0
            },
            "findings": []
          },
          "output_hash": "13dcc58bd528f3efa3e6e0fa0853a6eedc376f1f3685fbd4869cbb2b60382ee3",
          "completed_at": "2026-07-16T14:18:02Z"
        },
        {
          "id": "state",
          "action": "state.consistency",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-16T14:18:02Z",
          "output": {
            "status": "ok",
            "repo_root": "D:\\Projects\\prd-plugin",
            "summary": {
              "errors": 0,
              "warnings": 0,
              "infos": 0
            },
            "findings": []
          },
          "output_hash": "5a1c6e5246defb1b6b6b90ff734db95bece2886b408ab112ed9b8e67222d5568",
          "completed_at": "2026-07-16T14:18:03Z"
        },
        {
          "id": "status",
          "action": "state.query",
          "status": "completed",
          "resolved_input_hash": "a15231a2142a2a9a85355a8b9cbbccffe01a9c9c2c2fd8c2bc2987cdc481564a",
          "started_at": "2026-07-16T14:18:03Z",
          "output": {
            "repo_root": "D:\\Projects\\prd-plugin",
            "autonomy_level": "autonomous",
            "requests_by_status": {
              "deferred": 1,
              "implemented": 89,
              "in_review": 1,
              "proposed": 3,
              "rejected": 1
            },
            "active_tracking": [],
            "tracking_branches": [],
            "tracking_branch_counts": {},
            "tracking_branch_errors": [],
            "open_health": [],
            "stale_count": 0,
            "skill_usage": {
              "project-decision-policy": 1,
              "project-request-intake": 1,
              "project-test-driven-implementation": 1,
              "project-verification-before-completion": 1,
              "project-llm-wiki": 1
            },
            "wiki_backfill_pending": false,
            "version_update": null
          },
          "output_hash": "e612fd24ae96a43d20bfe419de740c28c46e9e641ce9e590c5c2ca32d932b393",
          "completed_at": "2026-07-16T14:18:03Z"
        },
        {
          "id": "substrate",
          "action": "substrate.preflight",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-16T14:18:04Z",
          "output": {
            "status": "disabled",
            "services": {
              "status": "ok",
              "summary": {
                "critical": 0,
                "high": 0,
                "medium": 0,
                "low": 0
              },
              "findings": []
            },
            "policy": {
              "configured": {
                "enabled": false,
                "mode": "off",
                "capabilities": [
                  "records",
                  "graph",
                  "events"
                ],
                "contract_version": 2,
                "require_source_refs": true,
                "endpoint": "http://127.0.0.1:47124",
                "manual_url": "http://127.0.0.1:47124/utcp.json",
                "knowledge_browse_url": "http://127.0.0.1:5276",
                "auth_env": "AI_COLLAB_API_KEY",
                "timeout_seconds": 5,
                "max_result_bytes": 1048576,
                "cache_ttl_seconds": 60,
                "fallback": "local",
                "automation": {
                  "discovery_on_session_start": true,
                  "knowledge_recall": true,
                  "memory_recall": true,
                  "context_enrichment": true,
                  "notices_on_session_start": false,
                  "goals_sync": false,
                  "telemetry_on_maintenance": false,
                  "reporting_dispatch": true,
                  "judgment_dispatch": true,
                  "verification_execution": true
                }
              },
              "active": false,
              "effective_mode": "off",
              "effective_capabilities": []
            }
          },
          "output_hash": "a6df426290b4549a59eecaa0519ead9bcc50b7fcb25bd2185ff6047960f19ccb",
          "completed_at": "2026-07-16T14:18:04Z"
        },
        {
          "id": "notices",
          "action": "substrate.notices",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-16T14:18:04Z",
          "output": {
            "status": "disabled"
          },
          "output_hash": "38b904a1cf83df048360fb2480571b749fd98d57e11f1afdffb5a74a78166fea",
          "completed_at": "2026-07-16T14:18:04Z"
        },
        {
          "id": "goals",
          "action": "substrate.goals",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-16T14:18:04Z",
          "output": {
            "status": "disabled",
            "created": 0,
            "observed": 0,
            "results": []
          },
          "output_hash": "cdfd4de44a28140e686159f34f7b47975954c67e1d1efcef666e985acb136ed8",
          "completed_at": "2026-07-16T14:18:04Z"
        }
      ],
      "completed_at": "2026-07-16T14:18:04Z"
    },
    {
      "id": "WFR-279",
      "schema_version": "1.0",
      "workflow_id": "session.stop",
      "workflow_version": 1,
      "definition_hash": "0cef7bb3e28321be8f85375c154955a69310ce297e47de3f3b8dd48f77a2f07d",
      "plan_hash": "a5e1d77ac734217487fc418e29c7163f4e81178e25d171e70cd4c999d527d3e8",
      "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
      "inputs": {},
      "idempotency_key": "hook:Stop:019f6b4a-9428-70c1-a262-b5a8b60e9ea4",
      "status": "completed",
      "attempt": 1,
      "created_at": "2026-07-16T14:18:11Z",
      "updated_at": "2026-07-16T14:18:13Z",
      "receipts": [
        {
          "step_id": "state",
          "action": "state.consistency",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "5a1c6e5246defb1b6b6b90ff734db95bece2886b408ab112ed9b8e67222d5568",
          "completed_at": "2026-07-16T14:18:12Z"
        },
        {
          "step_id": "goals",
          "action": "substrate.goals",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "cdfd4de44a28140e686159f34f7b47975954c67e1d1efcef666e985acb136ed8",
          "completed_at": "2026-07-16T14:18:12Z"
        },
        {
          "step_id": "staleness",
          "action": "staleness.audit",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "1e81cb0ffd0a4d04626920a203b38d2d23a264cd43e807a85d375d69cae8a658",
          "completed_at": "2026-07-16T14:18:13Z"
        },
        {
          "step_id": "reflections",
          "action": "reflection.list",
          "input_hash": "0172e841ab4c13b3a4061f073f9d68a716ec87a8a5d52fde41823385e0582573",
          "output_hash": "c1b6b635c0bab21120657277f14ef6f839909875f307a3745fa48aee2bd6e449",
          "completed_at": "2026-07-16T14:18:13Z"
        },
        {
          "step_id": "bundle",
          "action": "reporting.bundle",
          "input_hash": "aed8ebb688dc3c085dd978d7c4120572173c3cb87e75919e4a937dcca6ef9457",
          "output_hash": "1e3c2b097cfbf440bcb114e6be9886a2a6ec5d728d22160f832b484b7e1392bb",
          "completed_at": "2026-07-16T14:18:13Z"
        },
        {
          "step_id": "delegated",
          "action": "reporting.delegate",
          "input_hash": "0fae08474dd6b273c8eac1063dd656e7f54bae999e800ca8a6bc0821f4994f9d",
          "output_hash": "e6085059f197def80ae95add1f328418107bea5436c9bd002530043646a3a95c",
          "completed_at": "2026-07-16T14:18:13Z"
        }
      ],
      "steps": [
        {
          "id": "state",
          "action": "state.consistency",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-16T14:18:12Z",
          "output": {
            "status": "ok",
            "repo_root": "D:\\Projects\\prd-plugin",
            "summary": {
              "errors": 0,
              "warnings": 0,
              "infos": 0
            },
            "findings": []
          },
          "output_hash": "5a1c6e5246defb1b6b6b90ff734db95bece2886b408ab112ed9b8e67222d5568",
          "completed_at": "2026-07-16T14:18:12Z"
        },
        {
          "id": "goals",
          "action": "substrate.goals",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-16T14:18:12Z",
          "output": {
            "status": "disabled",
            "created": 0,
            "observed": 0,
            "results": []
          },
          "output_hash": "cdfd4de44a28140e686159f34f7b47975954c67e1d1efcef666e985acb136ed8",
          "completed_at": "2026-07-16T14:18:12Z"
        },
        {
          "id": "staleness",
          "action": "staleness.audit",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-16T14:18:13Z",
          "output": {
            "status": "ok",
            "repo_root": "D:\\Projects\\prd-plugin",
            "counts": {
              "stale": 0
            },
            "stale": []
          },
          "output_hash": "1e81cb0ffd0a4d04626920a203b38d2d23a264cd43e807a85d375d69cae8a658",
          "completed_at": "2026-07-16T14:18:13Z"
        },
        {
          "id": "reflections",
          "action": "reflection.list",
          "status": "completed",
          "resolved_input_hash": "0172e841ab4c13b3a4061f073f9d68a716ec87a8a5d52fde41823385e0582573",
          "started_at": "2026-07-16T14:18:13Z",
          "output": {
            "enabled": false,
            "on_stop": true,
            "max_questions_per_stop": 5,
            "categories": [
              {
                "id": "behaviour_quality",
                "name": "Behaviour quality",
                "enabled": true,
                "question_count": 3
              },
              {
                "id": "harness_friction",
                "name": "Harness friction",
                "enabled": true,
                "question_count": 2
              }
            ],
            "questions": [
              {
                "id": "RFQ-001",
                "text": "Based on the work you just carried out, would you classify your behaviour as good? Answer yes or no and cite observable evidence.",
                "enabled": true,
                "category_id": "behaviour_quality",
                "category_name": "Behaviour quality",
                "effective_enabled": false
              },
              {
                "id": "RFQ-002",
                "text": "If you answered no, what could you do differently to correct your behaviour?",
                "enabled": true,
                "category_id": "behaviour_quality",
                "category_name": "Behaviour quality",
                "effective_enabled": false
              },
              {
                "id": "RFQ-003",
                "text": "Would another attempt using the identified good behaviours materially improve the outcome? Answer yes or no and state the next corrective action if yes.",
                "enabled": true,
                "category_id": "behaviour_quality",
                "category_name": "Behaviour quality",
                "effective_enabled": false
              },
              {
                "id": "RFQ-004",
                "text": "What harness friction points made this work more difficult?",
                "enabled": true,
                "category_id": "harness_friction",
                "category_name": "Harness friction",
                "effective_enabled": false
              },
              {
                "id": "RFQ-005",
                "text": "What up to three changes would most improve friction in the harness?",
                "enabled": true,
                "category_id": "harness_friction",
                "category_name": "Harness friction",
                "effective_enabled": false
              }
            ]
          },
          "output_hash": "c1b6b635c0bab21120657277f14ef6f839909875f307a3745fa48aee2bd6e449",
          "completed_at": "2026-07-16T14:18:13Z"
        },
        {
          "id": "bundle",
          "action": "reporting.bundle",
          "status": "completed",
          "resolved_input_hash": "aed8ebb688dc3c085dd978d7c4120572173c3cb87e75919e4a937dcca6ef9457",
          "started_at": "2026-07-16T14:18:13Z",
          "output": {
            "contract_version": 1,
            "task": "session_summary",
            "repo": "prd-plugin",
            "policy": {
              "enabled": false,
              "executor": "ai-collab",
              "contract_version": 1,
              "profile": "fast-capable",
              "tasks": [
                "report_summary",
                "session_summary",
                "wiki_synthesis",
                "triage_draft"
              ],
              "fallback": "main",
              "require_source_refs": true,
              "max_input_tokens": 12000,
              "max_output_tokens": 1500,
              "timeout_seconds": 30
            },
            "facts": {
              "requests_by_status": {
                "deferred": 1,
                "implemented": 89,
                "in_review": 1,
                "proposed": 3,
                "rejected": 1
              },
              "active_requests": [
                {
                  "id": "REQ-072",
                  "status": "proposed",
                  "severity": "low",
                  "summary": "opencode run-until-done: session.idle is a non-blocking notification, so the stop guard can't force continuation on opencode (currently degrades to a printed reminder, 0.5.95). Investigate whether opencode exposes any vetoable/continuation mechanism (a different event, a permission hook, or a 'continue' API) to enforce run-until-done, or accept the reminder as the permanent ceiling. Low priority — user rarely uses opencode."
                },
                {
                  "id": "REQ-104",
                  "status": "in_review",
                  "severity": "high",
                  "summary": "Ordinary-workspace chat has no path into the planning pipeline: owner-approved collaboration decisions land in scratchpads, room agents cannot allocate REQ/PRD/TRK ids past the parallel-worker mutation boundary, and goal-administrator grants detach when participant identity changes on runner restart"
                },
                {
                  "id": "REQ-107",
                  "status": "proposed",
                  "severity": "high",
                  "summary": "Adopt the UTCP-first tool architecture (user-directed): one UTCP manual is the source of truth for ALL prd-plugin tools including mutations, the MCP surface is generated by the official @utcp/mcp-bridge, and the 2,323-line hand-written MCP server is retired as a hand-maintained surface"
                },
                {
                  "id": "REQ-113",
                  "status": "proposed",
                  "severity": "low",
                  "summary": "Request-thread close has no validated tool: finished threads stay 'unresolved' in message_check forever unless state is hand-flipped; add a thread-close capability to the UTCP-first tool catalog (REQ-107), not as a new hand-written MCP handler"
                }
              ],
              "active_tracking": [],
              "open_health": [],
              "evidence_count": 125,
              "decision_count": 10
            },
            "findings": [],
            "source_refs": [
              ".prd_plugin/config.json",
              ".prd_plugin/state/decisions.json",
              ".prd_plugin/state/evidence.json",
              ".prd_plugin/state/health.json",
              ".prd_plugin/state/requests.json",
              ".prd_plugin/state/tracking.json",
              "REQ-072",
              "REQ-104",
              "REQ-107",
              "REQ-113"
            ],
            "constraints": {
              "max_input_tokens": 12000,
              "max_output_tokens": 1500,
              "timeout_seconds": 30,
              "require_source_refs": true,
              "no_project_state_writes": true,
              "no_secrets_or_local_session_content": true
            }
          },
          "output_hash": "1e3c2b097cfbf440bcb114e6be9886a2a6ec5d728d22160f832b484b7e1392bb",
          "completed_at": "2026-07-16T14:18:13Z"
        },
        {
          "id": "delegated",
          "action": "reporting.delegate",
          "status": "completed",
          "resolved_input_hash": "0fae08474dd6b273c8eac1063dd656e7f54bae999e800ca8a6bc0821f4994f9d",
          "started_at": "2026-07-16T14:18:13Z",
          "output": {
            "status": "fallback",
            "action": "main",
            "reason": "disabled"
          },
          "output_hash": "e6085059f197def80ae95add1f328418107bea5436c9bd002530043646a3a95c",
          "completed_at": "2026-07-16T14:18:13Z"
        }
      ],
      "completed_at": "2026-07-16T14:18:13Z"
    },
    {
      "id": "WFR-280",
      "schema_version": "1.0",
      "workflow_id": "session.start",
      "workflow_version": 1,
      "definition_hash": "d0f98da02571e6dd27fec4aed92d3c82af9db75f8b90b997bf665635c7b7f6ca",
      "plan_hash": "b5072615ca3b7e9a3bd85d50d1f069d99ef2a9816b32c03a370745ed7a205536",
      "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
      "inputs": {},
      "idempotency_key": "hook:SessionStart:019f6b4a-e265-71e3-8505-c02dd671a902",
      "status": "completed",
      "attempt": 1,
      "created_at": "2026-07-16T14:18:21Z",
      "updated_at": "2026-07-16T14:18:24Z",
      "receipts": [
        {
          "step_id": "config",
          "action": "config.audit",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "3782ec2317c0c8ee7598634310a2804d8aae4735f557498f9d3b8fae7c45e1e5",
          "completed_at": "2026-07-16T14:18:21Z"
        },
        {
          "step_id": "services",
          "action": "services.audit",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "13dcc58bd528f3efa3e6e0fa0853a6eedc376f1f3685fbd4869cbb2b60382ee3",
          "completed_at": "2026-07-16T14:18:21Z"
        },
        {
          "step_id": "state",
          "action": "state.consistency",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "5a1c6e5246defb1b6b6b90ff734db95bece2886b408ab112ed9b8e67222d5568",
          "completed_at": "2026-07-16T14:18:23Z"
        },
        {
          "step_id": "status",
          "action": "state.query",
          "input_hash": "a15231a2142a2a9a85355a8b9cbbccffe01a9c9c2c2fd8c2bc2987cdc481564a",
          "output_hash": "e612fd24ae96a43d20bfe419de740c28c46e9e641ce9e590c5c2ca32d932b393",
          "completed_at": "2026-07-16T14:18:23Z"
        },
        {
          "step_id": "substrate",
          "action": "substrate.preflight",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "a6df426290b4549a59eecaa0519ead9bcc50b7fcb25bd2185ff6047960f19ccb",
          "completed_at": "2026-07-16T14:18:23Z"
        },
        {
          "step_id": "notices",
          "action": "substrate.notices",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "38b904a1cf83df048360fb2480571b749fd98d57e11f1afdffb5a74a78166fea",
          "completed_at": "2026-07-16T14:18:24Z"
        },
        {
          "step_id": "goals",
          "action": "substrate.goals",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "cdfd4de44a28140e686159f34f7b47975954c67e1d1efcef666e985acb136ed8",
          "completed_at": "2026-07-16T14:18:24Z"
        }
      ],
      "steps": [
        {
          "id": "config",
          "action": "config.audit",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-16T14:18:21Z",
          "output": {
            "status": "ok",
            "summary": {
              "settings": 195,
              "mutable": 186,
              "read_only_or_managed": 9,
              "unclassified": 0,
              "unknown": 0,
              "invalid": 0,
              "missing_using_defaults": 0
            },
            "unclassified_keys": [],
            "unknown_keys": [],
            "invalid_values": [],
            "missing_using_defaults": []
          },
          "output_hash": "3782ec2317c0c8ee7598634310a2804d8aae4735f557498f9d3b8fae7c45e1e5",
          "completed_at": "2026-07-16T14:18:21Z"
        },
        {
          "id": "services",
          "action": "services.audit",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-16T14:18:21Z",
          "output": {
            "status": "ok",
            "summary": {
              "critical": 0,
              "high": 0,
              "medium": 0,
              "low": 0
            },
            "findings": []
          },
          "output_hash": "13dcc58bd528f3efa3e6e0fa0853a6eedc376f1f3685fbd4869cbb2b60382ee3",
          "completed_at": "2026-07-16T14:18:21Z"
        },
        {
          "id": "state",
          "action": "state.consistency",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-16T14:18:21Z",
          "output": {
            "status": "ok",
            "repo_root": "D:\\Projects\\prd-plugin",
            "summary": {
              "errors": 0,
              "warnings": 0,
              "infos": 0
            },
            "findings": []
          },
          "output_hash": "5a1c6e5246defb1b6b6b90ff734db95bece2886b408ab112ed9b8e67222d5568",
          "completed_at": "2026-07-16T14:18:23Z"
        },
        {
          "id": "status",
          "action": "state.query",
          "status": "completed",
          "resolved_input_hash": "a15231a2142a2a9a85355a8b9cbbccffe01a9c9c2c2fd8c2bc2987cdc481564a",
          "started_at": "2026-07-16T14:18:23Z",
          "output": {
            "repo_root": "D:\\Projects\\prd-plugin",
            "autonomy_level": "autonomous",
            "requests_by_status": {
              "deferred": 1,
              "implemented": 89,
              "in_review": 1,
              "proposed": 3,
              "rejected": 1
            },
            "active_tracking": [],
            "tracking_branches": [],
            "tracking_branch_counts": {},
            "tracking_branch_errors": [],
            "open_health": [],
            "stale_count": 0,
            "skill_usage": {
              "project-decision-policy": 1,
              "project-request-intake": 1,
              "project-test-driven-implementation": 1,
              "project-verification-before-completion": 1,
              "project-llm-wiki": 1
            },
            "wiki_backfill_pending": false,
            "version_update": null
          },
          "output_hash": "e612fd24ae96a43d20bfe419de740c28c46e9e641ce9e590c5c2ca32d932b393",
          "completed_at": "2026-07-16T14:18:23Z"
        },
        {
          "id": "substrate",
          "action": "substrate.preflight",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-16T14:18:23Z",
          "output": {
            "status": "disabled",
            "services": {
              "status": "ok",
              "summary": {
                "critical": 0,
                "high": 0,
                "medium": 0,
                "low": 0
              },
              "findings": []
            },
            "policy": {
              "configured": {
                "enabled": false,
                "mode": "off",
                "capabilities": [
                  "records",
                  "graph",
                  "events"
                ],
                "contract_version": 2,
                "require_source_refs": true,
                "endpoint": "http://127.0.0.1:47124",
                "manual_url": "http://127.0.0.1:47124/utcp.json",
                "knowledge_browse_url": "http://127.0.0.1:5276",
                "auth_env": "AI_COLLAB_API_KEY",
                "timeout_seconds": 5,
                "max_result_bytes": 1048576,
                "cache_ttl_seconds": 60,
                "fallback": "local",
                "automation": {
                  "discovery_on_session_start": true,
                  "knowledge_recall": true,
                  "memory_recall": true,
                  "context_enrichment": true,
                  "notices_on_session_start": false,
                  "goals_sync": false,
                  "telemetry_on_maintenance": false,
                  "reporting_dispatch": true,
                  "judgment_dispatch": true,
                  "verification_execution": true
                }
              },
              "active": false,
              "effective_mode": "off",
              "effective_capabilities": []
            }
          },
          "output_hash": "a6df426290b4549a59eecaa0519ead9bcc50b7fcb25bd2185ff6047960f19ccb",
          "completed_at": "2026-07-16T14:18:23Z"
        },
        {
          "id": "notices",
          "action": "substrate.notices",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-16T14:18:23Z",
          "output": {
            "status": "disabled"
          },
          "output_hash": "38b904a1cf83df048360fb2480571b749fd98d57e11f1afdffb5a74a78166fea",
          "completed_at": "2026-07-16T14:18:24Z"
        },
        {
          "id": "goals",
          "action": "substrate.goals",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-16T14:18:24Z",
          "output": {
            "status": "disabled",
            "created": 0,
            "observed": 0,
            "results": []
          },
          "output_hash": "cdfd4de44a28140e686159f34f7b47975954c67e1d1efcef666e985acb136ed8",
          "completed_at": "2026-07-16T14:18:24Z"
        }
      ],
      "completed_at": "2026-07-16T14:18:24Z"
    },
    {
      "id": "WFR-281",
      "schema_version": "1.0",
      "workflow_id": "session.stop",
      "workflow_version": 1,
      "definition_hash": "0cef7bb3e28321be8f85375c154955a69310ce297e47de3f3b8dd48f77a2f07d",
      "plan_hash": "a5e1d77ac734217487fc418e29c7163f4e81178e25d171e70cd4c999d527d3e8",
      "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
      "inputs": {},
      "idempotency_key": "hook:Stop:019f6b4a-e265-71e3-8505-c02dd671a902",
      "status": "completed",
      "attempt": 1,
      "created_at": "2026-07-16T14:18:29Z",
      "updated_at": "2026-07-16T14:18:31Z",
      "receipts": [
        {
          "step_id": "state",
          "action": "state.consistency",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "5a1c6e5246defb1b6b6b90ff734db95bece2886b408ab112ed9b8e67222d5568",
          "completed_at": "2026-07-16T14:18:30Z"
        },
        {
          "step_id": "goals",
          "action": "substrate.goals",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "cdfd4de44a28140e686159f34f7b47975954c67e1d1efcef666e985acb136ed8",
          "completed_at": "2026-07-16T14:18:30Z"
        },
        {
          "step_id": "staleness",
          "action": "staleness.audit",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "1e81cb0ffd0a4d04626920a203b38d2d23a264cd43e807a85d375d69cae8a658",
          "completed_at": "2026-07-16T14:18:30Z"
        },
        {
          "step_id": "reflections",
          "action": "reflection.list",
          "input_hash": "0172e841ab4c13b3a4061f073f9d68a716ec87a8a5d52fde41823385e0582573",
          "output_hash": "c1b6b635c0bab21120657277f14ef6f839909875f307a3745fa48aee2bd6e449",
          "completed_at": "2026-07-16T14:18:30Z"
        },
        {
          "step_id": "bundle",
          "action": "reporting.bundle",
          "input_hash": "aed8ebb688dc3c085dd978d7c4120572173c3cb87e75919e4a937dcca6ef9457",
          "output_hash": "1e3c2b097cfbf440bcb114e6be9886a2a6ec5d728d22160f832b484b7e1392bb",
          "completed_at": "2026-07-16T14:18:30Z"
        },
        {
          "step_id": "delegated",
          "action": "reporting.delegate",
          "input_hash": "0fae08474dd6b273c8eac1063dd656e7f54bae999e800ca8a6bc0821f4994f9d",
          "output_hash": "e6085059f197def80ae95add1f328418107bea5436c9bd002530043646a3a95c",
          "completed_at": "2026-07-16T14:18:31Z"
        }
      ],
      "steps": [
        {
          "id": "state",
          "action": "state.consistency",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-16T14:18:29Z",
          "output": {
            "status": "ok",
            "repo_root": "D:\\Projects\\prd-plugin",
            "summary": {
              "errors": 0,
              "warnings": 0,
              "infos": 0
            },
            "findings": []
          },
          "output_hash": "5a1c6e5246defb1b6b6b90ff734db95bece2886b408ab112ed9b8e67222d5568",
          "completed_at": "2026-07-16T14:18:30Z"
        },
        {
          "id": "goals",
          "action": "substrate.goals",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-16T14:18:30Z",
          "output": {
            "status": "disabled",
            "created": 0,
            "observed": 0,
            "results": []
          },
          "output_hash": "cdfd4de44a28140e686159f34f7b47975954c67e1d1efcef666e985acb136ed8",
          "completed_at": "2026-07-16T14:18:30Z"
        },
        {
          "id": "staleness",
          "action": "staleness.audit",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-16T14:18:30Z",
          "output": {
            "status": "ok",
            "repo_root": "D:\\Projects\\prd-plugin",
            "counts": {
              "stale": 0
            },
            "stale": []
          },
          "output_hash": "1e81cb0ffd0a4d04626920a203b38d2d23a264cd43e807a85d375d69cae8a658",
          "completed_at": "2026-07-16T14:18:30Z"
        },
        {
          "id": "reflections",
          "action": "reflection.list",
          "status": "completed",
          "resolved_input_hash": "0172e841ab4c13b3a4061f073f9d68a716ec87a8a5d52fde41823385e0582573",
          "started_at": "2026-07-16T14:18:30Z",
          "output": {
            "enabled": false,
            "on_stop": true,
            "max_questions_per_stop": 5,
            "categories": [
              {
                "id": "behaviour_quality",
                "name": "Behaviour quality",
                "enabled": true,
                "question_count": 3
              },
              {
                "id": "harness_friction",
                "name": "Harness friction",
                "enabled": true,
                "question_count": 2
              }
            ],
            "questions": [
              {
                "id": "RFQ-001",
                "text": "Based on the work you just carried out, would you classify your behaviour as good? Answer yes or no and cite observable evidence.",
                "enabled": true,
                "category_id": "behaviour_quality",
                "category_name": "Behaviour quality",
                "effective_enabled": false
              },
              {
                "id": "RFQ-002",
                "text": "If you answered no, what could you do differently to correct your behaviour?",
                "enabled": true,
                "category_id": "behaviour_quality",
                "category_name": "Behaviour quality",
                "effective_enabled": false
              },
              {
                "id": "RFQ-003",
                "text": "Would another attempt using the identified good behaviours materially improve the outcome? Answer yes or no and state the next corrective action if yes.",
                "enabled": true,
                "category_id": "behaviour_quality",
                "category_name": "Behaviour quality",
                "effective_enabled": false
              },
              {
                "id": "RFQ-004",
                "text": "What harness friction points made this work more difficult?",
                "enabled": true,
                "category_id": "harness_friction",
                "category_name": "Harness friction",
                "effective_enabled": false
              },
              {
                "id": "RFQ-005",
                "text": "What up to three changes would most improve friction in the harness?",
                "enabled": true,
                "category_id": "harness_friction",
                "category_name": "Harness friction",
                "effective_enabled": false
              }
            ]
          },
          "output_hash": "c1b6b635c0bab21120657277f14ef6f839909875f307a3745fa48aee2bd6e449",
          "completed_at": "2026-07-16T14:18:30Z"
        },
        {
          "id": "bundle",
          "action": "reporting.bundle",
          "status": "completed",
          "resolved_input_hash": "aed8ebb688dc3c085dd978d7c4120572173c3cb87e75919e4a937dcca6ef9457",
          "started_at": "2026-07-16T14:18:30Z",
          "output": {
            "contract_version": 1,
            "task": "session_summary",
            "repo": "prd-plugin",
            "policy": {
              "enabled": false,
              "executor": "ai-collab",
              "contract_version": 1,
              "profile": "fast-capable",
              "tasks": [
                "report_summary",
                "session_summary",
                "wiki_synthesis",
                "triage_draft"
              ],
              "fallback": "main",
              "require_source_refs": true,
              "max_input_tokens": 12000,
              "max_output_tokens": 1500,
              "timeout_seconds": 30
            },
            "facts": {
              "requests_by_status": {
                "deferred": 1,
                "implemented": 89,
                "in_review": 1,
                "proposed": 3,
                "rejected": 1
              },
              "active_requests": [
                {
                  "id": "REQ-072",
                  "status": "proposed",
                  "severity": "low",
                  "summary": "opencode run-until-done: session.idle is a non-blocking notification, so the stop guard can't force continuation on opencode (currently degrades to a printed reminder, 0.5.95). Investigate whether opencode exposes any vetoable/continuation mechanism (a different event, a permission hook, or a 'continue' API) to enforce run-until-done, or accept the reminder as the permanent ceiling. Low priority — user rarely uses opencode."
                },
                {
                  "id": "REQ-104",
                  "status": "in_review",
                  "severity": "high",
                  "summary": "Ordinary-workspace chat has no path into the planning pipeline: owner-approved collaboration decisions land in scratchpads, room agents cannot allocate REQ/PRD/TRK ids past the parallel-worker mutation boundary, and goal-administrator grants detach when participant identity changes on runner restart"
                },
                {
                  "id": "REQ-107",
                  "status": "proposed",
                  "severity": "high",
                  "summary": "Adopt the UTCP-first tool architecture (user-directed): one UTCP manual is the source of truth for ALL prd-plugin tools including mutations, the MCP surface is generated by the official @utcp/mcp-bridge, and the 2,323-line hand-written MCP server is retired as a hand-maintained surface"
                },
                {
                  "id": "REQ-113",
                  "status": "proposed",
                  "severity": "low",
                  "summary": "Request-thread close has no validated tool: finished threads stay 'unresolved' in message_check forever unless state is hand-flipped; add a thread-close capability to the UTCP-first tool catalog (REQ-107), not as a new hand-written MCP handler"
                }
              ],
              "active_tracking": [],
              "open_health": [],
              "evidence_count": 125,
              "decision_count": 10
            },
            "findings": [],
            "source_refs": [
              ".prd_plugin/config.json",
              ".prd_plugin/state/decisions.json",
              ".prd_plugin/state/evidence.json",
              ".prd_plugin/state/health.json",
              ".prd_plugin/state/requests.json",
              ".prd_plugin/state/tracking.json",
              "REQ-072",
              "REQ-104",
              "REQ-107",
              "REQ-113"
            ],
            "constraints": {
              "max_input_tokens": 12000,
              "max_output_tokens": 1500,
              "timeout_seconds": 30,
              "require_source_refs": true,
              "no_project_state_writes": true,
              "no_secrets_or_local_session_content": true
            }
          },
          "output_hash": "1e3c2b097cfbf440bcb114e6be9886a2a6ec5d728d22160f832b484b7e1392bb",
          "completed_at": "2026-07-16T14:18:30Z"
        },
        {
          "id": "delegated",
          "action": "reporting.delegate",
          "status": "completed",
          "resolved_input_hash": "0fae08474dd6b273c8eac1063dd656e7f54bae999e800ca8a6bc0821f4994f9d",
          "started_at": "2026-07-16T14:18:31Z",
          "output": {
            "status": "fallback",
            "action": "main",
            "reason": "disabled"
          },
          "output_hash": "e6085059f197def80ae95add1f328418107bea5436c9bd002530043646a3a95c",
          "completed_at": "2026-07-16T14:18:31Z"
        }
      ],
      "completed_at": "2026-07-16T14:18:31Z"
    },
    {
      "id": "WFR-282",
      "schema_version": "1.0",
      "workflow_id": "session.start",
      "workflow_version": 1,
      "definition_hash": "d0f98da02571e6dd27fec4aed92d3c82af9db75f8b90b997bf665635c7b7f6ca",
      "plan_hash": "b5072615ca3b7e9a3bd85d50d1f069d99ef2a9816b32c03a370745ed7a205536",
      "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
      "inputs": {},
      "idempotency_key": "hook:SessionStart:019f6b4b-2451-70c0-b3e3-cb42c5f86a74",
      "status": "completed",
      "attempt": 1,
      "created_at": "2026-07-16T14:18:43Z",
      "updated_at": "2026-07-16T14:18:45Z",
      "receipts": [
        {
          "step_id": "config",
          "action": "config.audit",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "3782ec2317c0c8ee7598634310a2804d8aae4735f557498f9d3b8fae7c45e1e5",
          "completed_at": "2026-07-16T14:18:43Z"
        },
        {
          "step_id": "services",
          "action": "services.audit",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "13dcc58bd528f3efa3e6e0fa0853a6eedc376f1f3685fbd4869cbb2b60382ee3",
          "completed_at": "2026-07-16T14:18:43Z"
        },
        {
          "step_id": "state",
          "action": "state.consistency",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "5a1c6e5246defb1b6b6b90ff734db95bece2886b408ab112ed9b8e67222d5568",
          "completed_at": "2026-07-16T14:18:44Z"
        },
        {
          "step_id": "status",
          "action": "state.query",
          "input_hash": "a15231a2142a2a9a85355a8b9cbbccffe01a9c9c2c2fd8c2bc2987cdc481564a",
          "output_hash": "e612fd24ae96a43d20bfe419de740c28c46e9e641ce9e590c5c2ca32d932b393",
          "completed_at": "2026-07-16T14:18:45Z"
        },
        {
          "step_id": "substrate",
          "action": "substrate.preflight",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "a6df426290b4549a59eecaa0519ead9bcc50b7fcb25bd2185ff6047960f19ccb",
          "completed_at": "2026-07-16T14:18:45Z"
        },
        {
          "step_id": "notices",
          "action": "substrate.notices",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "38b904a1cf83df048360fb2480571b749fd98d57e11f1afdffb5a74a78166fea",
          "completed_at": "2026-07-16T14:18:45Z"
        },
        {
          "step_id": "goals",
          "action": "substrate.goals",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "cdfd4de44a28140e686159f34f7b47975954c67e1d1efcef666e985acb136ed8",
          "completed_at": "2026-07-16T14:18:45Z"
        }
      ],
      "steps": [
        {
          "id": "config",
          "action": "config.audit",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-16T14:18:43Z",
          "output": {
            "status": "ok",
            "summary": {
              "settings": 195,
              "mutable": 186,
              "read_only_or_managed": 9,
              "unclassified": 0,
              "unknown": 0,
              "invalid": 0,
              "missing_using_defaults": 0
            },
            "unclassified_keys": [],
            "unknown_keys": [],
            "invalid_values": [],
            "missing_using_defaults": []
          },
          "output_hash": "3782ec2317c0c8ee7598634310a2804d8aae4735f557498f9d3b8fae7c45e1e5",
          "completed_at": "2026-07-16T14:18:43Z"
        },
        {
          "id": "services",
          "action": "services.audit",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-16T14:18:43Z",
          "output": {
            "status": "ok",
            "summary": {
              "critical": 0,
              "high": 0,
              "medium": 0,
              "low": 0
            },
            "findings": []
          },
          "output_hash": "13dcc58bd528f3efa3e6e0fa0853a6eedc376f1f3685fbd4869cbb2b60382ee3",
          "completed_at": "2026-07-16T14:18:43Z"
        },
        {
          "id": "state",
          "action": "state.consistency",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-16T14:18:43Z",
          "output": {
            "status": "ok",
            "repo_root": "D:\\Projects\\prd-plugin",
            "summary": {
              "errors": 0,
              "warnings": 0,
              "infos": 0
            },
            "findings": []
          },
          "output_hash": "5a1c6e5246defb1b6b6b90ff734db95bece2886b408ab112ed9b8e67222d5568",
          "completed_at": "2026-07-16T14:18:44Z"
        },
        {
          "id": "status",
          "action": "state.query",
          "status": "completed",
          "resolved_input_hash": "a15231a2142a2a9a85355a8b9cbbccffe01a9c9c2c2fd8c2bc2987cdc481564a",
          "started_at": "2026-07-16T14:18:44Z",
          "output": {
            "repo_root": "D:\\Projects\\prd-plugin",
            "autonomy_level": "autonomous",
            "requests_by_status": {
              "deferred": 1,
              "implemented": 89,
              "in_review": 1,
              "proposed": 3,
              "rejected": 1
            },
            "active_tracking": [],
            "tracking_branches": [],
            "tracking_branch_counts": {},
            "tracking_branch_errors": [],
            "open_health": [],
            "stale_count": 0,
            "skill_usage": {
              "project-decision-policy": 1,
              "project-request-intake": 1,
              "project-test-driven-implementation": 1,
              "project-verification-before-completion": 1,
              "project-llm-wiki": 1
            },
            "wiki_backfill_pending": false,
            "version_update": null
          },
          "output_hash": "e612fd24ae96a43d20bfe419de740c28c46e9e641ce9e590c5c2ca32d932b393",
          "completed_at": "2026-07-16T14:18:45Z"
        },
        {
          "id": "substrate",
          "action": "substrate.preflight",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-16T14:18:45Z",
          "output": {
            "status": "disabled",
            "services": {
              "status": "ok",
              "summary": {
                "critical": 0,
                "high": 0,
                "medium": 0,
                "low": 0
              },
              "findings": []
            },
            "policy": {
              "configured": {
                "enabled": false,
                "mode": "off",
                "capabilities": [
                  "records",
                  "graph",
                  "events"
                ],
                "contract_version": 2,
                "require_source_refs": true,
                "endpoint": "http://127.0.0.1:47124",
                "manual_url": "http://127.0.0.1:47124/utcp.json",
                "knowledge_browse_url": "http://127.0.0.1:5276",
                "auth_env": "AI_COLLAB_API_KEY",
                "timeout_seconds": 5,
                "max_result_bytes": 1048576,
                "cache_ttl_seconds": 60,
                "fallback": "local",
                "automation": {
                  "discovery_on_session_start": true,
                  "knowledge_recall": true,
                  "memory_recall": true,
                  "context_enrichment": true,
                  "notices_on_session_start": false,
                  "goals_sync": false,
                  "telemetry_on_maintenance": false,
                  "reporting_dispatch": true,
                  "judgment_dispatch": true,
                  "verification_execution": true
                }
              },
              "active": false,
              "effective_mode": "off",
              "effective_capabilities": []
            }
          },
          "output_hash": "a6df426290b4549a59eecaa0519ead9bcc50b7fcb25bd2185ff6047960f19ccb",
          "completed_at": "2026-07-16T14:18:45Z"
        },
        {
          "id": "notices",
          "action": "substrate.notices",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-16T14:18:45Z",
          "output": {
            "status": "disabled"
          },
          "output_hash": "38b904a1cf83df048360fb2480571b749fd98d57e11f1afdffb5a74a78166fea",
          "completed_at": "2026-07-16T14:18:45Z"
        },
        {
          "id": "goals",
          "action": "substrate.goals",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-16T14:18:45Z",
          "output": {
            "status": "disabled",
            "created": 0,
            "observed": 0,
            "results": []
          },
          "output_hash": "cdfd4de44a28140e686159f34f7b47975954c67e1d1efcef666e985acb136ed8",
          "completed_at": "2026-07-16T14:18:45Z"
        }
      ],
      "completed_at": "2026-07-16T14:18:45Z"
    },
    {
      "id": "WFR-283",
      "schema_version": "1.0",
      "workflow_id": "session.stop",
      "workflow_version": 1,
      "definition_hash": "0cef7bb3e28321be8f85375c154955a69310ce297e47de3f3b8dd48f77a2f07d",
      "plan_hash": "a5e1d77ac734217487fc418e29c7163f4e81178e25d171e70cd4c999d527d3e8",
      "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
      "inputs": {},
      "idempotency_key": "hook:Stop:019f6b4b-2451-70c0-b3e3-cb42c5f86a74",
      "status": "completed",
      "attempt": 1,
      "created_at": "2026-07-16T14:18:50Z",
      "updated_at": "2026-07-16T14:18:52Z",
      "receipts": [
        {
          "step_id": "state",
          "action": "state.consistency",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "5a1c6e5246defb1b6b6b90ff734db95bece2886b408ab112ed9b8e67222d5568",
          "completed_at": "2026-07-16T14:18:51Z"
        },
        {
          "step_id": "goals",
          "action": "substrate.goals",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "cdfd4de44a28140e686159f34f7b47975954c67e1d1efcef666e985acb136ed8",
          "completed_at": "2026-07-16T14:18:51Z"
        },
        {
          "step_id": "staleness",
          "action": "staleness.audit",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "1e81cb0ffd0a4d04626920a203b38d2d23a264cd43e807a85d375d69cae8a658",
          "completed_at": "2026-07-16T14:18:52Z"
        },
        {
          "step_id": "reflections",
          "action": "reflection.list",
          "input_hash": "0172e841ab4c13b3a4061f073f9d68a716ec87a8a5d52fde41823385e0582573",
          "output_hash": "c1b6b635c0bab21120657277f14ef6f839909875f307a3745fa48aee2bd6e449",
          "completed_at": "2026-07-16T14:18:52Z"
        },
        {
          "step_id": "bundle",
          "action": "reporting.bundle",
          "input_hash": "aed8ebb688dc3c085dd978d7c4120572173c3cb87e75919e4a937dcca6ef9457",
          "output_hash": "1e3c2b097cfbf440bcb114e6be9886a2a6ec5d728d22160f832b484b7e1392bb",
          "completed_at": "2026-07-16T14:18:52Z"
        },
        {
          "step_id": "delegated",
          "action": "reporting.delegate",
          "input_hash": "0fae08474dd6b273c8eac1063dd656e7f54bae999e800ca8a6bc0821f4994f9d",
          "output_hash": "e6085059f197def80ae95add1f328418107bea5436c9bd002530043646a3a95c",
          "completed_at": "2026-07-16T14:18:52Z"
        }
      ],
      "steps": [
        {
          "id": "state",
          "action": "state.consistency",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-16T14:18:51Z",
          "output": {
            "status": "ok",
            "repo_root": "D:\\Projects\\prd-plugin",
            "summary": {
              "errors": 0,
              "warnings": 0,
              "infos": 0
            },
            "findings": []
          },
          "output_hash": "5a1c6e5246defb1b6b6b90ff734db95bece2886b408ab112ed9b8e67222d5568",
          "completed_at": "2026-07-16T14:18:51Z"
        },
        {
          "id": "goals",
          "action": "substrate.goals",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-16T14:18:51Z",
          "output": {
            "status": "disabled",
            "created": 0,
            "observed": 0,
            "results": []
          },
          "output_hash": "cdfd4de44a28140e686159f34f7b47975954c67e1d1efcef666e985acb136ed8",
          "completed_at": "2026-07-16T14:18:51Z"
        },
        {
          "id": "staleness",
          "action": "staleness.audit",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-16T14:18:52Z",
          "output": {
            "status": "ok",
            "repo_root": "D:\\Projects\\prd-plugin",
            "counts": {
              "stale": 0
            },
            "stale": []
          },
          "output_hash": "1e81cb0ffd0a4d04626920a203b38d2d23a264cd43e807a85d375d69cae8a658",
          "completed_at": "2026-07-16T14:18:52Z"
        },
        {
          "id": "reflections",
          "action": "reflection.list",
          "status": "completed",
          "resolved_input_hash": "0172e841ab4c13b3a4061f073f9d68a716ec87a8a5d52fde41823385e0582573",
          "started_at": "2026-07-16T14:18:52Z",
          "output": {
            "enabled": false,
            "on_stop": true,
            "max_questions_per_stop": 5,
            "categories": [
              {
                "id": "behaviour_quality",
                "name": "Behaviour quality",
                "enabled": true,
                "question_count": 3
              },
              {
                "id": "harness_friction",
                "name": "Harness friction",
                "enabled": true,
                "question_count": 2
              }
            ],
            "questions": [
              {
                "id": "RFQ-001",
                "text": "Based on the work you just carried out, would you classify your behaviour as good? Answer yes or no and cite observable evidence.",
                "enabled": true,
                "category_id": "behaviour_quality",
                "category_name": "Behaviour quality",
                "effective_enabled": false
              },
              {
                "id": "RFQ-002",
                "text": "If you answered no, what could you do differently to correct your behaviour?",
                "enabled": true,
                "category_id": "behaviour_quality",
                "category_name": "Behaviour quality",
                "effective_enabled": false
              },
              {
                "id": "RFQ-003",
                "text": "Would another attempt using the identified good behaviours materially improve the outcome? Answer yes or no and state the next corrective action if yes.",
                "enabled": true,
                "category_id": "behaviour_quality",
                "category_name": "Behaviour quality",
                "effective_enabled": false
              },
              {
                "id": "RFQ-004",
                "text": "What harness friction points made this work more difficult?",
                "enabled": true,
                "category_id": "harness_friction",
                "category_name": "Harness friction",
                "effective_enabled": false
              },
              {
                "id": "RFQ-005",
                "text": "What up to three changes would most improve friction in the harness?",
                "enabled": true,
                "category_id": "harness_friction",
                "category_name": "Harness friction",
                "effective_enabled": false
              }
            ]
          },
          "output_hash": "c1b6b635c0bab21120657277f14ef6f839909875f307a3745fa48aee2bd6e449",
          "completed_at": "2026-07-16T14:18:52Z"
        },
        {
          "id": "bundle",
          "action": "reporting.bundle",
          "status": "completed",
          "resolved_input_hash": "aed8ebb688dc3c085dd978d7c4120572173c3cb87e75919e4a937dcca6ef9457",
          "started_at": "2026-07-16T14:18:52Z",
          "output": {
            "contract_version": 1,
            "task": "session_summary",
            "repo": "prd-plugin",
            "policy": {
              "enabled": false,
              "executor": "ai-collab",
              "contract_version": 1,
              "profile": "fast-capable",
              "tasks": [
                "report_summary",
                "session_summary",
                "wiki_synthesis",
                "triage_draft"
              ],
              "fallback": "main",
              "require_source_refs": true,
              "max_input_tokens": 12000,
              "max_output_tokens": 1500,
              "timeout_seconds": 30
            },
            "facts": {
              "requests_by_status": {
                "deferred": 1,
                "implemented": 89,
                "in_review": 1,
                "proposed": 3,
                "rejected": 1
              },
              "active_requests": [
                {
                  "id": "REQ-072",
                  "status": "proposed",
                  "severity": "low",
                  "summary": "opencode run-until-done: session.idle is a non-blocking notification, so the stop guard can't force continuation on opencode (currently degrades to a printed reminder, 0.5.95). Investigate whether opencode exposes any vetoable/continuation mechanism (a different event, a permission hook, or a 'continue' API) to enforce run-until-done, or accept the reminder as the permanent ceiling. Low priority — user rarely uses opencode."
                },
                {
                  "id": "REQ-104",
                  "status": "in_review",
                  "severity": "high",
                  "summary": "Ordinary-workspace chat has no path into the planning pipeline: owner-approved collaboration decisions land in scratchpads, room agents cannot allocate REQ/PRD/TRK ids past the parallel-worker mutation boundary, and goal-administrator grants detach when participant identity changes on runner restart"
                },
                {
                  "id": "REQ-107",
                  "status": "proposed",
                  "severity": "high",
                  "summary": "Adopt the UTCP-first tool architecture (user-directed): one UTCP manual is the source of truth for ALL prd-plugin tools including mutations, the MCP surface is generated by the official @utcp/mcp-bridge, and the 2,323-line hand-written MCP server is retired as a hand-maintained surface"
                },
                {
                  "id": "REQ-113",
                  "status": "proposed",
                  "severity": "low",
                  "summary": "Request-thread close has no validated tool: finished threads stay 'unresolved' in message_check forever unless state is hand-flipped; add a thread-close capability to the UTCP-first tool catalog (REQ-107), not as a new hand-written MCP handler"
                }
              ],
              "active_tracking": [],
              "open_health": [],
              "evidence_count": 125,
              "decision_count": 10
            },
            "findings": [],
            "source_refs": [
              ".prd_plugin/config.json",
              ".prd_plugin/state/decisions.json",
              ".prd_plugin/state/evidence.json",
              ".prd_plugin/state/health.json",
              ".prd_plugin/state/requests.json",
              ".prd_plugin/state/tracking.json",
              "REQ-072",
              "REQ-104",
              "REQ-107",
              "REQ-113"
            ],
            "constraints": {
              "max_input_tokens": 12000,
              "max_output_tokens": 1500,
              "timeout_seconds": 30,
              "require_source_refs": true,
              "no_project_state_writes": true,
              "no_secrets_or_local_session_content": true
            }
          },
          "output_hash": "1e3c2b097cfbf440bcb114e6be9886a2a6ec5d728d22160f832b484b7e1392bb",
          "completed_at": "2026-07-16T14:18:52Z"
        },
        {
          "id": "delegated",
          "action": "reporting.delegate",
          "status": "completed",
          "resolved_input_hash": "0fae08474dd6b273c8eac1063dd656e7f54bae999e800ca8a6bc0821f4994f9d",
          "started_at": "2026-07-16T14:18:52Z",
          "output": {
            "status": "fallback",
            "action": "main",
            "reason": "disabled"
          },
          "output_hash": "e6085059f197def80ae95add1f328418107bea5436c9bd002530043646a3a95c",
          "completed_at": "2026-07-16T14:18:52Z"
        }
      ],
      "completed_at": "2026-07-16T14:18:52Z"
    },
    {
      "id": "WFR-284",
      "schema_version": "1.0",
      "workflow_id": "session.start",
      "workflow_version": 1,
      "definition_hash": "d0f98da02571e6dd27fec4aed92d3c82af9db75f8b90b997bf665635c7b7f6ca",
      "plan_hash": "b5072615ca3b7e9a3bd85d50d1f069d99ef2a9816b32c03a370745ed7a205536",
      "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
      "inputs": {},
      "idempotency_key": "hook:SessionStart:019f6b4b-7791-7f60-ab8c-cea9d5d647f3",
      "status": "completed",
      "attempt": 1,
      "created_at": "2026-07-16T14:19:00Z",
      "updated_at": "2026-07-16T14:19:02Z",
      "receipts": [
        {
          "step_id": "config",
          "action": "config.audit",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "3782ec2317c0c8ee7598634310a2804d8aae4735f557498f9d3b8fae7c45e1e5",
          "completed_at": "2026-07-16T14:19:00Z"
        },
        {
          "step_id": "services",
          "action": "services.audit",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "13dcc58bd528f3efa3e6e0fa0853a6eedc376f1f3685fbd4869cbb2b60382ee3",
          "completed_at": "2026-07-16T14:19:00Z"
        },
        {
          "step_id": "state",
          "action": "state.consistency",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "5a1c6e5246defb1b6b6b90ff734db95bece2886b408ab112ed9b8e67222d5568",
          "completed_at": "2026-07-16T14:19:01Z"
        },
        {
          "step_id": "status",
          "action": "state.query",
          "input_hash": "a15231a2142a2a9a85355a8b9cbbccffe01a9c9c2c2fd8c2bc2987cdc481564a",
          "output_hash": "e612fd24ae96a43d20bfe419de740c28c46e9e641ce9e590c5c2ca32d932b393",
          "completed_at": "2026-07-16T14:19:01Z"
        },
        {
          "step_id": "substrate",
          "action": "substrate.preflight",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "a6df426290b4549a59eecaa0519ead9bcc50b7fcb25bd2185ff6047960f19ccb",
          "completed_at": "2026-07-16T14:19:02Z"
        },
        {
          "step_id": "notices",
          "action": "substrate.notices",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "38b904a1cf83df048360fb2480571b749fd98d57e11f1afdffb5a74a78166fea",
          "completed_at": "2026-07-16T14:19:02Z"
        },
        {
          "step_id": "goals",
          "action": "substrate.goals",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "cdfd4de44a28140e686159f34f7b47975954c67e1d1efcef666e985acb136ed8",
          "completed_at": "2026-07-16T14:19:02Z"
        }
      ],
      "steps": [
        {
          "id": "config",
          "action": "config.audit",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-16T14:19:00Z",
          "output": {
            "status": "ok",
            "summary": {
              "settings": 195,
              "mutable": 186,
              "read_only_or_managed": 9,
              "unclassified": 0,
              "unknown": 0,
              "invalid": 0,
              "missing_using_defaults": 0
            },
            "unclassified_keys": [],
            "unknown_keys": [],
            "invalid_values": [],
            "missing_using_defaults": []
          },
          "output_hash": "3782ec2317c0c8ee7598634310a2804d8aae4735f557498f9d3b8fae7c45e1e5",
          "completed_at": "2026-07-16T14:19:00Z"
        },
        {
          "id": "services",
          "action": "services.audit",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-16T14:19:00Z",
          "output": {
            "status": "ok",
            "summary": {
              "critical": 0,
              "high": 0,
              "medium": 0,
              "low": 0
            },
            "findings": []
          },
          "output_hash": "13dcc58bd528f3efa3e6e0fa0853a6eedc376f1f3685fbd4869cbb2b60382ee3",
          "completed_at": "2026-07-16T14:19:00Z"
        },
        {
          "id": "state",
          "action": "state.consistency",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-16T14:19:00Z",
          "output": {
            "status": "ok",
            "repo_root": "D:\\Projects\\prd-plugin",
            "summary": {
              "errors": 0,
              "warnings": 0,
              "infos": 0
            },
            "findings": []
          },
          "output_hash": "5a1c6e5246defb1b6b6b90ff734db95bece2886b408ab112ed9b8e67222d5568",
          "completed_at": "2026-07-16T14:19:01Z"
        },
        {
          "id": "status",
          "action": "state.query",
          "status": "completed",
          "resolved_input_hash": "a15231a2142a2a9a85355a8b9cbbccffe01a9c9c2c2fd8c2bc2987cdc481564a",
          "started_at": "2026-07-16T14:19:01Z",
          "output": {
            "repo_root": "D:\\Projects\\prd-plugin",
            "autonomy_level": "autonomous",
            "requests_by_status": {
              "deferred": 1,
              "implemented": 89,
              "in_review": 1,
              "proposed": 3,
              "rejected": 1
            },
            "active_tracking": [],
            "tracking_branches": [],
            "tracking_branch_counts": {},
            "tracking_branch_errors": [],
            "open_health": [],
            "stale_count": 0,
            "skill_usage": {
              "project-decision-policy": 1,
              "project-request-intake": 1,
              "project-test-driven-implementation": 1,
              "project-verification-before-completion": 1,
              "project-llm-wiki": 1
            },
            "wiki_backfill_pending": false,
            "version_update": null
          },
          "output_hash": "e612fd24ae96a43d20bfe419de740c28c46e9e641ce9e590c5c2ca32d932b393",
          "completed_at": "2026-07-16T14:19:01Z"
        },
        {
          "id": "substrate",
          "action": "substrate.preflight",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-16T14:19:02Z",
          "output": {
            "status": "disabled",
            "services": {
              "status": "ok",
              "summary": {
                "critical": 0,
                "high": 0,
                "medium": 0,
                "low": 0
              },
              "findings": []
            },
            "policy": {
              "configured": {
                "enabled": false,
                "mode": "off",
                "capabilities": [
                  "records",
                  "graph",
                  "events"
                ],
                "contract_version": 2,
                "require_source_refs": true,
                "endpoint": "http://127.0.0.1:47124",
                "manual_url": "http://127.0.0.1:47124/utcp.json",
                "knowledge_browse_url": "http://127.0.0.1:5276",
                "auth_env": "AI_COLLAB_API_KEY",
                "timeout_seconds": 5,
                "max_result_bytes": 1048576,
                "cache_ttl_seconds": 60,
                "fallback": "local",
                "automation": {
                  "discovery_on_session_start": true,
                  "knowledge_recall": true,
                  "memory_recall": true,
                  "context_enrichment": true,
                  "notices_on_session_start": false,
                  "goals_sync": false,
                  "telemetry_on_maintenance": false,
                  "reporting_dispatch": true,
                  "judgment_dispatch": true,
                  "verification_execution": true
                }
              },
              "active": false,
              "effective_mode": "off",
              "effective_capabilities": []
            }
          },
          "output_hash": "a6df426290b4549a59eecaa0519ead9bcc50b7fcb25bd2185ff6047960f19ccb",
          "completed_at": "2026-07-16T14:19:02Z"
        },
        {
          "id": "notices",
          "action": "substrate.notices",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-16T14:19:02Z",
          "output": {
            "status": "disabled"
          },
          "output_hash": "38b904a1cf83df048360fb2480571b749fd98d57e11f1afdffb5a74a78166fea",
          "completed_at": "2026-07-16T14:19:02Z"
        },
        {
          "id": "goals",
          "action": "substrate.goals",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-16T14:19:02Z",
          "output": {
            "status": "disabled",
            "created": 0,
            "observed": 0,
            "results": []
          },
          "output_hash": "cdfd4de44a28140e686159f34f7b47975954c67e1d1efcef666e985acb136ed8",
          "completed_at": "2026-07-16T14:19:02Z"
        }
      ],
      "completed_at": "2026-07-16T14:19:02Z"
    },
    {
      "id": "WFR-285",
      "schema_version": "1.0",
      "workflow_id": "session.stop",
      "workflow_version": 1,
      "definition_hash": "0cef7bb3e28321be8f85375c154955a69310ce297e47de3f3b8dd48f77a2f07d",
      "plan_hash": "a5e1d77ac734217487fc418e29c7163f4e81178e25d171e70cd4c999d527d3e8",
      "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
      "inputs": {},
      "idempotency_key": "hook:Stop:019f6b4b-7791-7f60-ab8c-cea9d5d647f3",
      "status": "completed",
      "attempt": 1,
      "created_at": "2026-07-16T14:19:07Z",
      "updated_at": "2026-07-16T14:19:09Z",
      "receipts": [
        {
          "step_id": "state",
          "action": "state.consistency",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "5a1c6e5246defb1b6b6b90ff734db95bece2886b408ab112ed9b8e67222d5568",
          "completed_at": "2026-07-16T14:19:08Z"
        },
        {
          "step_id": "goals",
          "action": "substrate.goals",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "cdfd4de44a28140e686159f34f7b47975954c67e1d1efcef666e985acb136ed8",
          "completed_at": "2026-07-16T14:19:08Z"
        },
        {
          "step_id": "staleness",
          "action": "staleness.audit",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "1e81cb0ffd0a4d04626920a203b38d2d23a264cd43e807a85d375d69cae8a658",
          "completed_at": "2026-07-16T14:19:09Z"
        },
        {
          "step_id": "reflections",
          "action": "reflection.list",
          "input_hash": "0172e841ab4c13b3a4061f073f9d68a716ec87a8a5d52fde41823385e0582573",
          "output_hash": "c1b6b635c0bab21120657277f14ef6f839909875f307a3745fa48aee2bd6e449",
          "completed_at": "2026-07-16T14:19:09Z"
        },
        {
          "step_id": "bundle",
          "action": "reporting.bundle",
          "input_hash": "aed8ebb688dc3c085dd978d7c4120572173c3cb87e75919e4a937dcca6ef9457",
          "output_hash": "1e3c2b097cfbf440bcb114e6be9886a2a6ec5d728d22160f832b484b7e1392bb",
          "completed_at": "2026-07-16T14:19:09Z"
        },
        {
          "step_id": "delegated",
          "action": "reporting.delegate",
          "input_hash": "0fae08474dd6b273c8eac1063dd656e7f54bae999e800ca8a6bc0821f4994f9d",
          "output_hash": "e6085059f197def80ae95add1f328418107bea5436c9bd002530043646a3a95c",
          "completed_at": "2026-07-16T14:19:09Z"
        }
      ],
      "steps": [
        {
          "id": "state",
          "action": "state.consistency",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-16T14:19:08Z",
          "output": {
            "status": "ok",
            "repo_root": "D:\\Projects\\prd-plugin",
            "summary": {
              "errors": 0,
              "warnings": 0,
              "infos": 0
            },
            "findings": []
          },
          "output_hash": "5a1c6e5246defb1b6b6b90ff734db95bece2886b408ab112ed9b8e67222d5568",
          "completed_at": "2026-07-16T14:19:08Z"
        },
        {
          "id": "goals",
          "action": "substrate.goals",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-16T14:19:08Z",
          "output": {
            "status": "disabled",
            "created": 0,
            "observed": 0,
            "results": []
          },
          "output_hash": "cdfd4de44a28140e686159f34f7b47975954c67e1d1efcef666e985acb136ed8",
          "completed_at": "2026-07-16T14:19:08Z"
        },
        {
          "id": "staleness",
          "action": "staleness.audit",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-16T14:19:09Z",
          "output": {
            "status": "ok",
            "repo_root": "D:\\Projects\\prd-plugin",
            "counts": {
              "stale": 0
            },
            "stale": []
          },
          "output_hash": "1e81cb0ffd0a4d04626920a203b38d2d23a264cd43e807a85d375d69cae8a658",
          "completed_at": "2026-07-16T14:19:09Z"
        },
        {
          "id": "reflections",
          "action": "reflection.list",
          "status": "completed",
          "resolved_input_hash": "0172e841ab4c13b3a4061f073f9d68a716ec87a8a5d52fde41823385e0582573",
          "started_at": "2026-07-16T14:19:09Z",
          "output": {
            "enabled": false,
            "on_stop": true,
            "max_questions_per_stop": 5,
            "categories": [
              {
                "id": "behaviour_quality",
                "name": "Behaviour quality",
                "enabled": true,
                "question_count": 3
              },
              {
                "id": "harness_friction",
                "name": "Harness friction",
                "enabled": true,
                "question_count": 2
              }
            ],
            "questions": [
              {
                "id": "RFQ-001",
                "text": "Based on the work you just carried out, would you classify your behaviour as good? Answer yes or no and cite observable evidence.",
                "enabled": true,
                "category_id": "behaviour_quality",
                "category_name": "Behaviour quality",
                "effective_enabled": false
              },
              {
                "id": "RFQ-002",
                "text": "If you answered no, what could you do differently to correct your behaviour?",
                "enabled": true,
                "category_id": "behaviour_quality",
                "category_name": "Behaviour quality",
                "effective_enabled": false
              },
              {
                "id": "RFQ-003",
                "text": "Would another attempt using the identified good behaviours materially improve the outcome? Answer yes or no and state the next corrective action if yes.",
                "enabled": true,
                "category_id": "behaviour_quality",
                "category_name": "Behaviour quality",
                "effective_enabled": false
              },
              {
                "id": "RFQ-004",
                "text": "What harness friction points made this work more difficult?",
                "enabled": true,
                "category_id": "harness_friction",
                "category_name": "Harness friction",
                "effective_enabled": false
              },
              {
                "id": "RFQ-005",
                "text": "What up to three changes would most improve friction in the harness?",
                "enabled": true,
                "category_id": "harness_friction",
                "category_name": "Harness friction",
                "effective_enabled": false
              }
            ]
          },
          "output_hash": "c1b6b635c0bab21120657277f14ef6f839909875f307a3745fa48aee2bd6e449",
          "completed_at": "2026-07-16T14:19:09Z"
        },
        {
          "id": "bundle",
          "action": "reporting.bundle",
          "status": "completed",
          "resolved_input_hash": "aed8ebb688dc3c085dd978d7c4120572173c3cb87e75919e4a937dcca6ef9457",
          "started_at": "2026-07-16T14:19:09Z",
          "output": {
            "contract_version": 1,
            "task": "session_summary",
            "repo": "prd-plugin",
            "policy": {
              "enabled": false,
              "executor": "ai-collab",
              "contract_version": 1,
              "profile": "fast-capable",
              "tasks": [
                "report_summary",
                "session_summary",
                "wiki_synthesis",
                "triage_draft"
              ],
              "fallback": "main",
              "require_source_refs": true,
              "max_input_tokens": 12000,
              "max_output_tokens": 1500,
              "timeout_seconds": 30
            },
            "facts": {
              "requests_by_status": {
                "deferred": 1,
                "implemented": 89,
                "in_review": 1,
                "proposed": 3,
                "rejected": 1
              },
              "active_requests": [
                {
                  "id": "REQ-072",
                  "status": "proposed",
                  "severity": "low",
                  "summary": "opencode run-until-done: session.idle is a non-blocking notification, so the stop guard can't force continuation on opencode (currently degrades to a printed reminder, 0.5.95). Investigate whether opencode exposes any vetoable/continuation mechanism (a different event, a permission hook, or a 'continue' API) to enforce run-until-done, or accept the reminder as the permanent ceiling. Low priority — user rarely uses opencode."
                },
                {
                  "id": "REQ-104",
                  "status": "in_review",
                  "severity": "high",
                  "summary": "Ordinary-workspace chat has no path into the planning pipeline: owner-approved collaboration decisions land in scratchpads, room agents cannot allocate REQ/PRD/TRK ids past the parallel-worker mutation boundary, and goal-administrator grants detach when participant identity changes on runner restart"
                },
                {
                  "id": "REQ-107",
                  "status": "proposed",
                  "severity": "high",
                  "summary": "Adopt the UTCP-first tool architecture (user-directed): one UTCP manual is the source of truth for ALL prd-plugin tools including mutations, the MCP surface is generated by the official @utcp/mcp-bridge, and the 2,323-line hand-written MCP server is retired as a hand-maintained surface"
                },
                {
                  "id": "REQ-113",
                  "status": "proposed",
                  "severity": "low",
                  "summary": "Request-thread close has no validated tool: finished threads stay 'unresolved' in message_check forever unless state is hand-flipped; add a thread-close capability to the UTCP-first tool catalog (REQ-107), not as a new hand-written MCP handler"
                }
              ],
              "active_tracking": [],
              "open_health": [],
              "evidence_count": 125,
              "decision_count": 10
            },
            "findings": [],
            "source_refs": [
              ".prd_plugin/config.json",
              ".prd_plugin/state/decisions.json",
              ".prd_plugin/state/evidence.json",
              ".prd_plugin/state/health.json",
              ".prd_plugin/state/requests.json",
              ".prd_plugin/state/tracking.json",
              "REQ-072",
              "REQ-104",
              "REQ-107",
              "REQ-113"
            ],
            "constraints": {
              "max_input_tokens": 12000,
              "max_output_tokens": 1500,
              "timeout_seconds": 30,
              "require_source_refs": true,
              "no_project_state_writes": true,
              "no_secrets_or_local_session_content": true
            }
          },
          "output_hash": "1e3c2b097cfbf440bcb114e6be9886a2a6ec5d728d22160f832b484b7e1392bb",
          "completed_at": "2026-07-16T14:19:09Z"
        },
        {
          "id": "delegated",
          "action": "reporting.delegate",
          "status": "completed",
          "resolved_input_hash": "0fae08474dd6b273c8eac1063dd656e7f54bae999e800ca8a6bc0821f4994f9d",
          "started_at": "2026-07-16T14:19:09Z",
          "output": {
            "status": "fallback",
            "action": "main",
            "reason": "disabled"
          },
          "output_hash": "e6085059f197def80ae95add1f328418107bea5436c9bd002530043646a3a95c",
          "completed_at": "2026-07-16T14:19:09Z"
        }
      ],
      "completed_at": "2026-07-16T14:19:09Z"
    },
    {
      "id": "WFR-286",
      "schema_version": "1.0",
      "workflow_id": "session.start",
      "workflow_version": 1,
      "definition_hash": "d0f98da02571e6dd27fec4aed92d3c82af9db75f8b90b997bf665635c7b7f6ca",
      "plan_hash": "b5072615ca3b7e9a3bd85d50d1f069d99ef2a9816b32c03a370745ed7a205536",
      "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
      "inputs": {},
      "idempotency_key": "hook:SessionStart:019f6b4b-b99b-7b10-8455-d110c5b78327",
      "status": "completed",
      "attempt": 1,
      "created_at": "2026-07-16T14:19:16Z",
      "updated_at": "2026-07-16T14:19:18Z",
      "receipts": [
        {
          "step_id": "config",
          "action": "config.audit",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "3782ec2317c0c8ee7598634310a2804d8aae4735f557498f9d3b8fae7c45e1e5",
          "completed_at": "2026-07-16T14:19:16Z"
        },
        {
          "step_id": "services",
          "action": "services.audit",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "13dcc58bd528f3efa3e6e0fa0853a6eedc376f1f3685fbd4869cbb2b60382ee3",
          "completed_at": "2026-07-16T14:19:16Z"
        },
        {
          "step_id": "state",
          "action": "state.consistency",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "5a1c6e5246defb1b6b6b90ff734db95bece2886b408ab112ed9b8e67222d5568",
          "completed_at": "2026-07-16T14:19:17Z"
        },
        {
          "step_id": "status",
          "action": "state.query",
          "input_hash": "a15231a2142a2a9a85355a8b9cbbccffe01a9c9c2c2fd8c2bc2987cdc481564a",
          "output_hash": "e612fd24ae96a43d20bfe419de740c28c46e9e641ce9e590c5c2ca32d932b393",
          "completed_at": "2026-07-16T14:19:17Z"
        },
        {
          "step_id": "substrate",
          "action": "substrate.preflight",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "a6df426290b4549a59eecaa0519ead9bcc50b7fcb25bd2185ff6047960f19ccb",
          "completed_at": "2026-07-16T14:19:18Z"
        },
        {
          "step_id": "notices",
          "action": "substrate.notices",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "38b904a1cf83df048360fb2480571b749fd98d57e11f1afdffb5a74a78166fea",
          "completed_at": "2026-07-16T14:19:18Z"
        },
        {
          "step_id": "goals",
          "action": "substrate.goals",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "cdfd4de44a28140e686159f34f7b47975954c67e1d1efcef666e985acb136ed8",
          "completed_at": "2026-07-16T14:19:18Z"
        }
      ],
      "steps": [
        {
          "id": "config",
          "action": "config.audit",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-16T14:19:16Z",
          "output": {
            "status": "ok",
            "summary": {
              "settings": 195,
              "mutable": 186,
              "read_only_or_managed": 9,
              "unclassified": 0,
              "unknown": 0,
              "invalid": 0,
              "missing_using_defaults": 0
            },
            "unclassified_keys": [],
            "unknown_keys": [],
            "invalid_values": [],
            "missing_using_defaults": []
          },
          "output_hash": "3782ec2317c0c8ee7598634310a2804d8aae4735f557498f9d3b8fae7c45e1e5",
          "completed_at": "2026-07-16T14:19:16Z"
        },
        {
          "id": "services",
          "action": "services.audit",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-16T14:19:16Z",
          "output": {
            "status": "ok",
            "summary": {
              "critical": 0,
              "high": 0,
              "medium": 0,
              "low": 0
            },
            "findings": []
          },
          "output_hash": "13dcc58bd528f3efa3e6e0fa0853a6eedc376f1f3685fbd4869cbb2b60382ee3",
          "completed_at": "2026-07-16T14:19:16Z"
        },
        {
          "id": "state",
          "action": "state.consistency",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-16T14:19:16Z",
          "output": {
            "status": "ok",
            "repo_root": "D:\\Projects\\prd-plugin",
            "summary": {
              "errors": 0,
              "warnings": 0,
              "infos": 0
            },
            "findings": []
          },
          "output_hash": "5a1c6e5246defb1b6b6b90ff734db95bece2886b408ab112ed9b8e67222d5568",
          "completed_at": "2026-07-16T14:19:17Z"
        },
        {
          "id": "status",
          "action": "state.query",
          "status": "completed",
          "resolved_input_hash": "a15231a2142a2a9a85355a8b9cbbccffe01a9c9c2c2fd8c2bc2987cdc481564a",
          "started_at": "2026-07-16T14:19:17Z",
          "output": {
            "repo_root": "D:\\Projects\\prd-plugin",
            "autonomy_level": "autonomous",
            "requests_by_status": {
              "deferred": 1,
              "implemented": 89,
              "in_review": 1,
              "proposed": 3,
              "rejected": 1
            },
            "active_tracking": [],
            "tracking_branches": [],
            "tracking_branch_counts": {},
            "tracking_branch_errors": [],
            "open_health": [],
            "stale_count": 0,
            "skill_usage": {
              "project-decision-policy": 1,
              "project-request-intake": 1,
              "project-test-driven-implementation": 1,
              "project-verification-before-completion": 1,
              "project-llm-wiki": 1
            },
            "wiki_backfill_pending": false,
            "version_update": null
          },
          "output_hash": "e612fd24ae96a43d20bfe419de740c28c46e9e641ce9e590c5c2ca32d932b393",
          "completed_at": "2026-07-16T14:19:17Z"
        },
        {
          "id": "substrate",
          "action": "substrate.preflight",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-16T14:19:17Z",
          "output": {
            "status": "disabled",
            "services": {
              "status": "ok",
              "summary": {
                "critical": 0,
                "high": 0,
                "medium": 0,
                "low": 0
              },
              "findings": []
            },
            "policy": {
              "configured": {
                "enabled": false,
                "mode": "off",
                "capabilities": [
                  "records",
                  "graph",
                  "events"
                ],
                "contract_version": 2,
                "require_source_refs": true,
                "endpoint": "http://127.0.0.1:47124",
                "manual_url": "http://127.0.0.1:47124/utcp.json",
                "knowledge_browse_url": "http://127.0.0.1:5276",
                "auth_env": "AI_COLLAB_API_KEY",
                "timeout_seconds": 5,
                "max_result_bytes": 1048576,
                "cache_ttl_seconds": 60,
                "fallback": "local",
                "automation": {
                  "discovery_on_session_start": true,
                  "knowledge_recall": true,
                  "memory_recall": true,
                  "context_enrichment": true,
                  "notices_on_session_start": false,
                  "goals_sync": false,
                  "telemetry_on_maintenance": false,
                  "reporting_dispatch": true,
                  "judgment_dispatch": true,
                  "verification_execution": true
                }
              },
              "active": false,
              "effective_mode": "off",
              "effective_capabilities": []
            }
          },
          "output_hash": "a6df426290b4549a59eecaa0519ead9bcc50b7fcb25bd2185ff6047960f19ccb",
          "completed_at": "2026-07-16T14:19:18Z"
        },
        {
          "id": "notices",
          "action": "substrate.notices",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-16T14:19:18Z",
          "output": {
            "status": "disabled"
          },
          "output_hash": "38b904a1cf83df048360fb2480571b749fd98d57e11f1afdffb5a74a78166fea",
          "completed_at": "2026-07-16T14:19:18Z"
        },
        {
          "id": "goals",
          "action": "substrate.goals",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-16T14:19:18Z",
          "output": {
            "status": "disabled",
            "created": 0,
            "observed": 0,
            "results": []
          },
          "output_hash": "cdfd4de44a28140e686159f34f7b47975954c67e1d1efcef666e985acb136ed8",
          "completed_at": "2026-07-16T14:19:18Z"
        }
      ],
      "completed_at": "2026-07-16T14:19:18Z"
    },
    {
      "id": "WFR-287",
      "schema_version": "1.0",
      "workflow_id": "session.stop",
      "workflow_version": 1,
      "definition_hash": "0cef7bb3e28321be8f85375c154955a69310ce297e47de3f3b8dd48f77a2f07d",
      "plan_hash": "a5e1d77ac734217487fc418e29c7163f4e81178e25d171e70cd4c999d527d3e8",
      "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
      "inputs": {},
      "idempotency_key": "hook:Stop:019f6b4b-b99b-7b10-8455-d110c5b78327",
      "status": "completed",
      "attempt": 1,
      "created_at": "2026-07-16T14:19:23Z",
      "updated_at": "2026-07-16T14:19:26Z",
      "receipts": [
        {
          "step_id": "state",
          "action": "state.consistency",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "5a1c6e5246defb1b6b6b90ff734db95bece2886b408ab112ed9b8e67222d5568",
          "completed_at": "2026-07-16T14:19:25Z"
        },
        {
          "step_id": "goals",
          "action": "substrate.goals",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "cdfd4de44a28140e686159f34f7b47975954c67e1d1efcef666e985acb136ed8",
          "completed_at": "2026-07-16T14:19:25Z"
        },
        {
          "step_id": "staleness",
          "action": "staleness.audit",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "1e81cb0ffd0a4d04626920a203b38d2d23a264cd43e807a85d375d69cae8a658",
          "completed_at": "2026-07-16T14:19:25Z"
        },
        {
          "step_id": "reflections",
          "action": "reflection.list",
          "input_hash": "0172e841ab4c13b3a4061f073f9d68a716ec87a8a5d52fde41823385e0582573",
          "output_hash": "c1b6b635c0bab21120657277f14ef6f839909875f307a3745fa48aee2bd6e449",
          "completed_at": "2026-07-16T14:19:25Z"
        },
        {
          "step_id": "bundle",
          "action": "reporting.bundle",
          "input_hash": "aed8ebb688dc3c085dd978d7c4120572173c3cb87e75919e4a937dcca6ef9457",
          "output_hash": "1e3c2b097cfbf440bcb114e6be9886a2a6ec5d728d22160f832b484b7e1392bb",
          "completed_at": "2026-07-16T14:19:25Z"
        },
        {
          "step_id": "delegated",
          "action": "reporting.delegate",
          "input_hash": "0fae08474dd6b273c8eac1063dd656e7f54bae999e800ca8a6bc0821f4994f9d",
          "output_hash": "e6085059f197def80ae95add1f328418107bea5436c9bd002530043646a3a95c",
          "completed_at": "2026-07-16T14:19:25Z"
        }
      ],
      "steps": [
        {
          "id": "state",
          "action": "state.consistency",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-16T14:19:24Z",
          "output": {
            "status": "ok",
            "repo_root": "D:\\Projects\\prd-plugin",
            "summary": {
              "errors": 0,
              "warnings": 0,
              "infos": 0
            },
            "findings": []
          },
          "output_hash": "5a1c6e5246defb1b6b6b90ff734db95bece2886b408ab112ed9b8e67222d5568",
          "completed_at": "2026-07-16T14:19:25Z"
        },
        {
          "id": "goals",
          "action": "substrate.goals",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-16T14:19:25Z",
          "output": {
            "status": "disabled",
            "created": 0,
            "observed": 0,
            "results": []
          },
          "output_hash": "cdfd4de44a28140e686159f34f7b47975954c67e1d1efcef666e985acb136ed8",
          "completed_at": "2026-07-16T14:19:25Z"
        },
        {
          "id": "staleness",
          "action": "staleness.audit",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-16T14:19:25Z",
          "output": {
            "status": "ok",
            "repo_root": "D:\\Projects\\prd-plugin",
            "counts": {
              "stale": 0
            },
            "stale": []
          },
          "output_hash": "1e81cb0ffd0a4d04626920a203b38d2d23a264cd43e807a85d375d69cae8a658",
          "completed_at": "2026-07-16T14:19:25Z"
        },
        {
          "id": "reflections",
          "action": "reflection.list",
          "status": "completed",
          "resolved_input_hash": "0172e841ab4c13b3a4061f073f9d68a716ec87a8a5d52fde41823385e0582573",
          "started_at": "2026-07-16T14:19:25Z",
          "output": {
            "enabled": false,
            "on_stop": true,
            "max_questions_per_stop": 5,
            "categories": [
              {
                "id": "behaviour_quality",
                "name": "Behaviour quality",
                "enabled": true,
                "question_count": 3
              },
              {
                "id": "harness_friction",
                "name": "Harness friction",
                "enabled": true,
                "question_count": 2
              }
            ],
            "questions": [
              {
                "id": "RFQ-001",
                "text": "Based on the work you just carried out, would you classify your behaviour as good? Answer yes or no and cite observable evidence.",
                "enabled": true,
                "category_id": "behaviour_quality",
                "category_name": "Behaviour quality",
                "effective_enabled": false
              },
              {
                "id": "RFQ-002",
                "text": "If you answered no, what could you do differently to correct your behaviour?",
                "enabled": true,
                "category_id": "behaviour_quality",
                "category_name": "Behaviour quality",
                "effective_enabled": false
              },
              {
                "id": "RFQ-003",
                "text": "Would another attempt using the identified good behaviours materially improve the outcome? Answer yes or no and state the next corrective action if yes.",
                "enabled": true,
                "category_id": "behaviour_quality",
                "category_name": "Behaviour quality",
                "effective_enabled": false
              },
              {
                "id": "RFQ-004",
                "text": "What harness friction points made this work more difficult?",
                "enabled": true,
                "category_id": "harness_friction",
                "category_name": "Harness friction",
                "effective_enabled": false
              },
              {
                "id": "RFQ-005",
                "text": "What up to three changes would most improve friction in the harness?",
                "enabled": true,
                "category_id": "harness_friction",
                "category_name": "Harness friction",
                "effective_enabled": false
              }
            ]
          },
          "output_hash": "c1b6b635c0bab21120657277f14ef6f839909875f307a3745fa48aee2bd6e449",
          "completed_at": "2026-07-16T14:19:25Z"
        },
        {
          "id": "bundle",
          "action": "reporting.bundle",
          "status": "completed",
          "resolved_input_hash": "aed8ebb688dc3c085dd978d7c4120572173c3cb87e75919e4a937dcca6ef9457",
          "started_at": "2026-07-16T14:19:25Z",
          "output": {
            "contract_version": 1,
            "task": "session_summary",
            "repo": "prd-plugin",
            "policy": {
              "enabled": false,
              "executor": "ai-collab",
              "contract_version": 1,
              "profile": "fast-capable",
              "tasks": [
                "report_summary",
                "session_summary",
                "wiki_synthesis",
                "triage_draft"
              ],
              "fallback": "main",
              "require_source_refs": true,
              "max_input_tokens": 12000,
              "max_output_tokens": 1500,
              "timeout_seconds": 30
            },
            "facts": {
              "requests_by_status": {
                "deferred": 1,
                "implemented": 89,
                "in_review": 1,
                "proposed": 3,
                "rejected": 1
              },
              "active_requests": [
                {
                  "id": "REQ-072",
                  "status": "proposed",
                  "severity": "low",
                  "summary": "opencode run-until-done: session.idle is a non-blocking notification, so the stop guard can't force continuation on opencode (currently degrades to a printed reminder, 0.5.95). Investigate whether opencode exposes any vetoable/continuation mechanism (a different event, a permission hook, or a 'continue' API) to enforce run-until-done, or accept the reminder as the permanent ceiling. Low priority — user rarely uses opencode."
                },
                {
                  "id": "REQ-104",
                  "status": "in_review",
                  "severity": "high",
                  "summary": "Ordinary-workspace chat has no path into the planning pipeline: owner-approved collaboration decisions land in scratchpads, room agents cannot allocate REQ/PRD/TRK ids past the parallel-worker mutation boundary, and goal-administrator grants detach when participant identity changes on runner restart"
                },
                {
                  "id": "REQ-107",
                  "status": "proposed",
                  "severity": "high",
                  "summary": "Adopt the UTCP-first tool architecture (user-directed): one UTCP manual is the source of truth for ALL prd-plugin tools including mutations, the MCP surface is generated by the official @utcp/mcp-bridge, and the 2,323-line hand-written MCP server is retired as a hand-maintained surface"
                },
                {
                  "id": "REQ-113",
                  "status": "proposed",
                  "severity": "low",
                  "summary": "Request-thread close has no validated tool: finished threads stay 'unresolved' in message_check forever unless state is hand-flipped; add a thread-close capability to the UTCP-first tool catalog (REQ-107), not as a new hand-written MCP handler"
                }
              ],
              "active_tracking": [],
              "open_health": [],
              "evidence_count": 125,
              "decision_count": 10
            },
            "findings": [],
            "source_refs": [
              ".prd_plugin/config.json",
              ".prd_plugin/state/decisions.json",
              ".prd_plugin/state/evidence.json",
              ".prd_plugin/state/health.json",
              ".prd_plugin/state/requests.json",
              ".prd_plugin/state/tracking.json",
              "REQ-072",
              "REQ-104",
              "REQ-107",
              "REQ-113"
            ],
            "constraints": {
              "max_input_tokens": 12000,
              "max_output_tokens": 1500,
              "timeout_seconds": 30,
              "require_source_refs": true,
              "no_project_state_writes": true,
              "no_secrets_or_local_session_content": true
            }
          },
          "output_hash": "1e3c2b097cfbf440bcb114e6be9886a2a6ec5d728d22160f832b484b7e1392bb",
          "completed_at": "2026-07-16T14:19:25Z"
        },
        {
          "id": "delegated",
          "action": "reporting.delegate",
          "status": "completed",
          "resolved_input_hash": "0fae08474dd6b273c8eac1063dd656e7f54bae999e800ca8a6bc0821f4994f9d",
          "started_at": "2026-07-16T14:19:25Z",
          "output": {
            "status": "fallback",
            "action": "main",
            "reason": "disabled"
          },
          "output_hash": "e6085059f197def80ae95add1f328418107bea5436c9bd002530043646a3a95c",
          "completed_at": "2026-07-16T14:19:25Z"
        }
      ],
      "completed_at": "2026-07-16T14:19:26Z"
    },
    {
      "id": "WFR-288",
      "schema_version": "1.0",
      "workflow_id": "session.start",
      "workflow_version": 1,
      "definition_hash": "d0f98da02571e6dd27fec4aed92d3c82af9db75f8b90b997bf665635c7b7f6ca",
      "plan_hash": "b5072615ca3b7e9a3bd85d50d1f069d99ef2a9816b32c03a370745ed7a205536",
      "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
      "inputs": {},
      "idempotency_key": "hook:SessionStart:019f6b4b-fb35-7901-9417-b206b5f3224c",
      "status": "completed",
      "attempt": 1,
      "created_at": "2026-07-16T14:19:40Z",
      "updated_at": "2026-07-16T14:19:42Z",
      "receipts": [
        {
          "step_id": "config",
          "action": "config.audit",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "3782ec2317c0c8ee7598634310a2804d8aae4735f557498f9d3b8fae7c45e1e5",
          "completed_at": "2026-07-16T14:19:40Z"
        },
        {
          "step_id": "services",
          "action": "services.audit",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "13dcc58bd528f3efa3e6e0fa0853a6eedc376f1f3685fbd4869cbb2b60382ee3",
          "completed_at": "2026-07-16T14:19:40Z"
        },
        {
          "step_id": "state",
          "action": "state.consistency",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "5a1c6e5246defb1b6b6b90ff734db95bece2886b408ab112ed9b8e67222d5568",
          "completed_at": "2026-07-16T14:19:42Z"
        },
        {
          "step_id": "status",
          "action": "state.query",
          "input_hash": "a15231a2142a2a9a85355a8b9cbbccffe01a9c9c2c2fd8c2bc2987cdc481564a",
          "output_hash": "e612fd24ae96a43d20bfe419de740c28c46e9e641ce9e590c5c2ca32d932b393",
          "completed_at": "2026-07-16T14:19:42Z"
        },
        {
          "step_id": "substrate",
          "action": "substrate.preflight",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "a6df426290b4549a59eecaa0519ead9bcc50b7fcb25bd2185ff6047960f19ccb",
          "completed_at": "2026-07-16T14:19:42Z"
        },
        {
          "step_id": "notices",
          "action": "substrate.notices",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "38b904a1cf83df048360fb2480571b749fd98d57e11f1afdffb5a74a78166fea",
          "completed_at": "2026-07-16T14:19:42Z"
        },
        {
          "step_id": "goals",
          "action": "substrate.goals",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "cdfd4de44a28140e686159f34f7b47975954c67e1d1efcef666e985acb136ed8",
          "completed_at": "2026-07-16T14:19:42Z"
        }
      ],
      "steps": [
        {
          "id": "config",
          "action": "config.audit",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-16T14:19:40Z",
          "output": {
            "status": "ok",
            "summary": {
              "settings": 195,
              "mutable": 186,
              "read_only_or_managed": 9,
              "unclassified": 0,
              "unknown": 0,
              "invalid": 0,
              "missing_using_defaults": 0
            },
            "unclassified_keys": [],
            "unknown_keys": [],
            "invalid_values": [],
            "missing_using_defaults": []
          },
          "output_hash": "3782ec2317c0c8ee7598634310a2804d8aae4735f557498f9d3b8fae7c45e1e5",
          "completed_at": "2026-07-16T14:19:40Z"
        },
        {
          "id": "services",
          "action": "services.audit",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-16T14:19:40Z",
          "output": {
            "status": "ok",
            "summary": {
              "critical": 0,
              "high": 0,
              "medium": 0,
              "low": 0
            },
            "findings": []
          },
          "output_hash": "13dcc58bd528f3efa3e6e0fa0853a6eedc376f1f3685fbd4869cbb2b60382ee3",
          "completed_at": "2026-07-16T14:19:40Z"
        },
        {
          "id": "state",
          "action": "state.consistency",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-16T14:19:41Z",
          "output": {
            "status": "ok",
            "repo_root": "D:\\Projects\\prd-plugin",
            "summary": {
              "errors": 0,
              "warnings": 0,
              "infos": 0
            },
            "findings": []
          },
          "output_hash": "5a1c6e5246defb1b6b6b90ff734db95bece2886b408ab112ed9b8e67222d5568",
          "completed_at": "2026-07-16T14:19:42Z"
        },
        {
          "id": "status",
          "action": "state.query",
          "status": "completed",
          "resolved_input_hash": "a15231a2142a2a9a85355a8b9cbbccffe01a9c9c2c2fd8c2bc2987cdc481564a",
          "started_at": "2026-07-16T14:19:42Z",
          "output": {
            "repo_root": "D:\\Projects\\prd-plugin",
            "autonomy_level": "autonomous",
            "requests_by_status": {
              "deferred": 1,
              "implemented": 89,
              "in_review": 1,
              "proposed": 3,
              "rejected": 1
            },
            "active_tracking": [],
            "tracking_branches": [],
            "tracking_branch_counts": {},
            "tracking_branch_errors": [],
            "open_health": [],
            "stale_count": 0,
            "skill_usage": {
              "project-decision-policy": 1,
              "project-request-intake": 1,
              "project-test-driven-implementation": 1,
              "project-verification-before-completion": 1,
              "project-llm-wiki": 1
            },
            "wiki_backfill_pending": false,
            "version_update": null
          },
          "output_hash": "e612fd24ae96a43d20bfe419de740c28c46e9e641ce9e590c5c2ca32d932b393",
          "completed_at": "2026-07-16T14:19:42Z"
        },
        {
          "id": "substrate",
          "action": "substrate.preflight",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-16T14:19:42Z",
          "output": {
            "status": "disabled",
            "services": {
              "status": "ok",
              "summary": {
                "critical": 0,
                "high": 0,
                "medium": 0,
                "low": 0
              },
              "findings": []
            },
            "policy": {
              "configured": {
                "enabled": false,
                "mode": "off",
                "capabilities": [
                  "records",
                  "graph",
                  "events"
                ],
                "contract_version": 2,
                "require_source_refs": true,
                "endpoint": "http://127.0.0.1:47124",
                "manual_url": "http://127.0.0.1:47124/utcp.json",
                "knowledge_browse_url": "http://127.0.0.1:5276",
                "auth_env": "AI_COLLAB_API_KEY",
                "timeout_seconds": 5,
                "max_result_bytes": 1048576,
                "cache_ttl_seconds": 60,
                "fallback": "local",
                "automation": {
                  "discovery_on_session_start": true,
                  "knowledge_recall": true,
                  "memory_recall": true,
                  "context_enrichment": true,
                  "notices_on_session_start": false,
                  "goals_sync": false,
                  "telemetry_on_maintenance": false,
                  "reporting_dispatch": true,
                  "judgment_dispatch": true,
                  "verification_execution": true
                }
              },
              "active": false,
              "effective_mode": "off",
              "effective_capabilities": []
            }
          },
          "output_hash": "a6df426290b4549a59eecaa0519ead9bcc50b7fcb25bd2185ff6047960f19ccb",
          "completed_at": "2026-07-16T14:19:42Z"
        },
        {
          "id": "notices",
          "action": "substrate.notices",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-16T14:19:42Z",
          "output": {
            "status": "disabled"
          },
          "output_hash": "38b904a1cf83df048360fb2480571b749fd98d57e11f1afdffb5a74a78166fea",
          "completed_at": "2026-07-16T14:19:42Z"
        },
        {
          "id": "goals",
          "action": "substrate.goals",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-16T14:19:42Z",
          "output": {
            "status": "disabled",
            "created": 0,
            "observed": 0,
            "results": []
          },
          "output_hash": "cdfd4de44a28140e686159f34f7b47975954c67e1d1efcef666e985acb136ed8",
          "completed_at": "2026-07-16T14:19:42Z"
        }
      ],
      "completed_at": "2026-07-16T14:19:42Z"
    },
    {
      "id": "WFR-289",
      "schema_version": "1.0",
      "workflow_id": "session.stop",
      "workflow_version": 1,
      "definition_hash": "0cef7bb3e28321be8f85375c154955a69310ce297e47de3f3b8dd48f77a2f07d",
      "plan_hash": "a5e1d77ac734217487fc418e29c7163f4e81178e25d171e70cd4c999d527d3e8",
      "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
      "inputs": {},
      "idempotency_key": "hook:Stop:019f6b4b-fb35-7901-9417-b206b5f3224c",
      "status": "completed",
      "attempt": 1,
      "created_at": "2026-07-16T14:19:48Z",
      "updated_at": "2026-07-16T14:19:50Z",
      "receipts": [
        {
          "step_id": "state",
          "action": "state.consistency",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "5a1c6e5246defb1b6b6b90ff734db95bece2886b408ab112ed9b8e67222d5568",
          "completed_at": "2026-07-16T14:19:49Z"
        },
        {
          "step_id": "goals",
          "action": "substrate.goals",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "cdfd4de44a28140e686159f34f7b47975954c67e1d1efcef666e985acb136ed8",
          "completed_at": "2026-07-16T14:19:49Z"
        },
        {
          "step_id": "staleness",
          "action": "staleness.audit",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "1e81cb0ffd0a4d04626920a203b38d2d23a264cd43e807a85d375d69cae8a658",
          "completed_at": "2026-07-16T14:19:49Z"
        },
        {
          "step_id": "reflections",
          "action": "reflection.list",
          "input_hash": "0172e841ab4c13b3a4061f073f9d68a716ec87a8a5d52fde41823385e0582573",
          "output_hash": "c1b6b635c0bab21120657277f14ef6f839909875f307a3745fa48aee2bd6e449",
          "completed_at": "2026-07-16T14:19:50Z"
        },
        {
          "step_id": "bundle",
          "action": "reporting.bundle",
          "input_hash": "aed8ebb688dc3c085dd978d7c4120572173c3cb87e75919e4a937dcca6ef9457",
          "output_hash": "1e3c2b097cfbf440bcb114e6be9886a2a6ec5d728d22160f832b484b7e1392bb",
          "completed_at": "2026-07-16T14:19:50Z"
        },
        {
          "step_id": "delegated",
          "action": "reporting.delegate",
          "input_hash": "0fae08474dd6b273c8eac1063dd656e7f54bae999e800ca8a6bc0821f4994f9d",
          "output_hash": "e6085059f197def80ae95add1f328418107bea5436c9bd002530043646a3a95c",
          "completed_at": "2026-07-16T14:19:50Z"
        }
      ],
      "steps": [
        {
          "id": "state",
          "action": "state.consistency",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-16T14:19:48Z",
          "output": {
            "status": "ok",
            "repo_root": "D:\\Projects\\prd-plugin",
            "summary": {
              "errors": 0,
              "warnings": 0,
              "infos": 0
            },
            "findings": []
          },
          "output_hash": "5a1c6e5246defb1b6b6b90ff734db95bece2886b408ab112ed9b8e67222d5568",
          "completed_at": "2026-07-16T14:19:49Z"
        },
        {
          "id": "goals",
          "action": "substrate.goals",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-16T14:19:49Z",
          "output": {
            "status": "disabled",
            "created": 0,
            "observed": 0,
            "results": []
          },
          "output_hash": "cdfd4de44a28140e686159f34f7b47975954c67e1d1efcef666e985acb136ed8",
          "completed_at": "2026-07-16T14:19:49Z"
        },
        {
          "id": "staleness",
          "action": "staleness.audit",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-16T14:19:49Z",
          "output": {
            "status": "ok",
            "repo_root": "D:\\Projects\\prd-plugin",
            "counts": {
              "stale": 0
            },
            "stale": []
          },
          "output_hash": "1e81cb0ffd0a4d04626920a203b38d2d23a264cd43e807a85d375d69cae8a658",
          "completed_at": "2026-07-16T14:19:49Z"
        },
        {
          "id": "reflections",
          "action": "reflection.list",
          "status": "completed",
          "resolved_input_hash": "0172e841ab4c13b3a4061f073f9d68a716ec87a8a5d52fde41823385e0582573",
          "started_at": "2026-07-16T14:19:50Z",
          "output": {
            "enabled": false,
            "on_stop": true,
            "max_questions_per_stop": 5,
            "categories": [
              {
                "id": "behaviour_quality",
                "name": "Behaviour quality",
                "enabled": true,
                "question_count": 3
              },
              {
                "id": "harness_friction",
                "name": "Harness friction",
                "enabled": true,
                "question_count": 2
              }
            ],
            "questions": [
              {
                "id": "RFQ-001",
                "text": "Based on the work you just carried out, would you classify your behaviour as good? Answer yes or no and cite observable evidence.",
                "enabled": true,
                "category_id": "behaviour_quality",
                "category_name": "Behaviour quality",
                "effective_enabled": false
              },
              {
                "id": "RFQ-002",
                "text": "If you answered no, what could you do differently to correct your behaviour?",
                "enabled": true,
                "category_id": "behaviour_quality",
                "category_name": "Behaviour quality",
                "effective_enabled": false
              },
              {
                "id": "RFQ-003",
                "text": "Would another attempt using the identified good behaviours materially improve the outcome? Answer yes or no and state the next corrective action if yes.",
                "enabled": true,
                "category_id": "behaviour_quality",
                "category_name": "Behaviour quality",
                "effective_enabled": false
              },
              {
                "id": "RFQ-004",
                "text": "What harness friction points made this work more difficult?",
                "enabled": true,
                "category_id": "harness_friction",
                "category_name": "Harness friction",
                "effective_enabled": false
              },
              {
                "id": "RFQ-005",
                "text": "What up to three changes would most improve friction in the harness?",
                "enabled": true,
                "category_id": "harness_friction",
                "category_name": "Harness friction",
                "effective_enabled": false
              }
            ]
          },
          "output_hash": "c1b6b635c0bab21120657277f14ef6f839909875f307a3745fa48aee2bd6e449",
          "completed_at": "2026-07-16T14:19:50Z"
        },
        {
          "id": "bundle",
          "action": "reporting.bundle",
          "status": "completed",
          "resolved_input_hash": "aed8ebb688dc3c085dd978d7c4120572173c3cb87e75919e4a937dcca6ef9457",
          "started_at": "2026-07-16T14:19:50Z",
          "output": {
            "contract_version": 1,
            "task": "session_summary",
            "repo": "prd-plugin",
            "policy": {
              "enabled": false,
              "executor": "ai-collab",
              "contract_version": 1,
              "profile": "fast-capable",
              "tasks": [
                "report_summary",
                "session_summary",
                "wiki_synthesis",
                "triage_draft"
              ],
              "fallback": "main",
              "require_source_refs": true,
              "max_input_tokens": 12000,
              "max_output_tokens": 1500,
              "timeout_seconds": 30
            },
            "facts": {
              "requests_by_status": {
                "deferred": 1,
                "implemented": 89,
                "in_review": 1,
                "proposed": 3,
                "rejected": 1
              },
              "active_requests": [
                {
                  "id": "REQ-072",
                  "status": "proposed",
                  "severity": "low",
                  "summary": "opencode run-until-done: session.idle is a non-blocking notification, so the stop guard can't force continuation on opencode (currently degrades to a printed reminder, 0.5.95). Investigate whether opencode exposes any vetoable/continuation mechanism (a different event, a permission hook, or a 'continue' API) to enforce run-until-done, or accept the reminder as the permanent ceiling. Low priority — user rarely uses opencode."
                },
                {
                  "id": "REQ-104",
                  "status": "in_review",
                  "severity": "high",
                  "summary": "Ordinary-workspace chat has no path into the planning pipeline: owner-approved collaboration decisions land in scratchpads, room agents cannot allocate REQ/PRD/TRK ids past the parallel-worker mutation boundary, and goal-administrator grants detach when participant identity changes on runner restart"
                },
                {
                  "id": "REQ-107",
                  "status": "proposed",
                  "severity": "high",
                  "summary": "Adopt the UTCP-first tool architecture (user-directed): one UTCP manual is the source of truth for ALL prd-plugin tools including mutations, the MCP surface is generated by the official @utcp/mcp-bridge, and the 2,323-line hand-written MCP server is retired as a hand-maintained surface"
                },
                {
                  "id": "REQ-113",
                  "status": "proposed",
                  "severity": "low",
                  "summary": "Request-thread close has no validated tool: finished threads stay 'unresolved' in message_check forever unless state is hand-flipped; add a thread-close capability to the UTCP-first tool catalog (REQ-107), not as a new hand-written MCP handler"
                }
              ],
              "active_tracking": [],
              "open_health": [],
              "evidence_count": 125,
              "decision_count": 10
            },
            "findings": [],
            "source_refs": [
              ".prd_plugin/config.json",
              ".prd_plugin/state/decisions.json",
              ".prd_plugin/state/evidence.json",
              ".prd_plugin/state/health.json",
              ".prd_plugin/state/requests.json",
              ".prd_plugin/state/tracking.json",
              "REQ-072",
              "REQ-104",
              "REQ-107",
              "REQ-113"
            ],
            "constraints": {
              "max_input_tokens": 12000,
              "max_output_tokens": 1500,
              "timeout_seconds": 30,
              "require_source_refs": true,
              "no_project_state_writes": true,
              "no_secrets_or_local_session_content": true
            }
          },
          "output_hash": "1e3c2b097cfbf440bcb114e6be9886a2a6ec5d728d22160f832b484b7e1392bb",
          "completed_at": "2026-07-16T14:19:50Z"
        },
        {
          "id": "delegated",
          "action": "reporting.delegate",
          "status": "completed",
          "resolved_input_hash": "0fae08474dd6b273c8eac1063dd656e7f54bae999e800ca8a6bc0821f4994f9d",
          "started_at": "2026-07-16T14:19:50Z",
          "output": {
            "status": "fallback",
            "action": "main",
            "reason": "disabled"
          },
          "output_hash": "e6085059f197def80ae95add1f328418107bea5436c9bd002530043646a3a95c",
          "completed_at": "2026-07-16T14:19:50Z"
        }
      ],
      "completed_at": "2026-07-16T14:19:50Z"
    },
    {
      "id": "WFR-290",
      "schema_version": "1.0",
      "workflow_id": "session.start",
      "workflow_version": 1,
      "definition_hash": "d0f98da02571e6dd27fec4aed92d3c82af9db75f8b90b997bf665635c7b7f6ca",
      "plan_hash": "b5072615ca3b7e9a3bd85d50d1f069d99ef2a9816b32c03a370745ed7a205536",
      "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
      "inputs": {},
      "idempotency_key": "hook:SessionStart:019f6b4c-5a27-7f72-9ba1-1ecf12da6afd",
      "status": "completed",
      "attempt": 1,
      "created_at": "2026-07-16T14:19:57Z",
      "updated_at": "2026-07-16T14:19:59Z",
      "receipts": [
        {
          "step_id": "config",
          "action": "config.audit",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "3782ec2317c0c8ee7598634310a2804d8aae4735f557498f9d3b8fae7c45e1e5",
          "completed_at": "2026-07-16T14:19:57Z"
        },
        {
          "step_id": "services",
          "action": "services.audit",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "13dcc58bd528f3efa3e6e0fa0853a6eedc376f1f3685fbd4869cbb2b60382ee3",
          "completed_at": "2026-07-16T14:19:57Z"
        },
        {
          "step_id": "state",
          "action": "state.consistency",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "5a1c6e5246defb1b6b6b90ff734db95bece2886b408ab112ed9b8e67222d5568",
          "completed_at": "2026-07-16T14:19:58Z"
        },
        {
          "step_id": "status",
          "action": "state.query",
          "input_hash": "a15231a2142a2a9a85355a8b9cbbccffe01a9c9c2c2fd8c2bc2987cdc481564a",
          "output_hash": "e612fd24ae96a43d20bfe419de740c28c46e9e641ce9e590c5c2ca32d932b393",
          "completed_at": "2026-07-16T14:19:58Z"
        },
        {
          "step_id": "substrate",
          "action": "substrate.preflight",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "a6df426290b4549a59eecaa0519ead9bcc50b7fcb25bd2185ff6047960f19ccb",
          "completed_at": "2026-07-16T14:19:58Z"
        },
        {
          "step_id": "notices",
          "action": "substrate.notices",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "38b904a1cf83df048360fb2480571b749fd98d57e11f1afdffb5a74a78166fea",
          "completed_at": "2026-07-16T14:19:59Z"
        },
        {
          "step_id": "goals",
          "action": "substrate.goals",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "cdfd4de44a28140e686159f34f7b47975954c67e1d1efcef666e985acb136ed8",
          "completed_at": "2026-07-16T14:19:59Z"
        }
      ],
      "steps": [
        {
          "id": "config",
          "action": "config.audit",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-16T14:19:57Z",
          "output": {
            "status": "ok",
            "summary": {
              "settings": 195,
              "mutable": 186,
              "read_only_or_managed": 9,
              "unclassified": 0,
              "unknown": 0,
              "invalid": 0,
              "missing_using_defaults": 0
            },
            "unclassified_keys": [],
            "unknown_keys": [],
            "invalid_values": [],
            "missing_using_defaults": []
          },
          "output_hash": "3782ec2317c0c8ee7598634310a2804d8aae4735f557498f9d3b8fae7c45e1e5",
          "completed_at": "2026-07-16T14:19:57Z"
        },
        {
          "id": "services",
          "action": "services.audit",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-16T14:19:57Z",
          "output": {
            "status": "ok",
            "summary": {
              "critical": 0,
              "high": 0,
              "medium": 0,
              "low": 0
            },
            "findings": []
          },
          "output_hash": "13dcc58bd528f3efa3e6e0fa0853a6eedc376f1f3685fbd4869cbb2b60382ee3",
          "completed_at": "2026-07-16T14:19:57Z"
        },
        {
          "id": "state",
          "action": "state.consistency",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-16T14:19:57Z",
          "output": {
            "status": "ok",
            "repo_root": "D:\\Projects\\prd-plugin",
            "summary": {
              "errors": 0,
              "warnings": 0,
              "infos": 0
            },
            "findings": []
          },
          "output_hash": "5a1c6e5246defb1b6b6b90ff734db95bece2886b408ab112ed9b8e67222d5568",
          "completed_at": "2026-07-16T14:19:58Z"
        },
        {
          "id": "status",
          "action": "state.query",
          "status": "completed",
          "resolved_input_hash": "a15231a2142a2a9a85355a8b9cbbccffe01a9c9c2c2fd8c2bc2987cdc481564a",
          "started_at": "2026-07-16T14:19:58Z",
          "output": {
            "repo_root": "D:\\Projects\\prd-plugin",
            "autonomy_level": "autonomous",
            "requests_by_status": {
              "deferred": 1,
              "implemented": 89,
              "in_review": 1,
              "proposed": 3,
              "rejected": 1
            },
            "active_tracking": [],
            "tracking_branches": [],
            "tracking_branch_counts": {},
            "tracking_branch_errors": [],
            "open_health": [],
            "stale_count": 0,
            "skill_usage": {
              "project-decision-policy": 1,
              "project-request-intake": 1,
              "project-test-driven-implementation": 1,
              "project-verification-before-completion": 1,
              "project-llm-wiki": 1
            },
            "wiki_backfill_pending": false,
            "version_update": null
          },
          "output_hash": "e612fd24ae96a43d20bfe419de740c28c46e9e641ce9e590c5c2ca32d932b393",
          "completed_at": "2026-07-16T14:19:58Z"
        },
        {
          "id": "substrate",
          "action": "substrate.preflight",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-16T14:19:58Z",
          "output": {
            "status": "disabled",
            "services": {
              "status": "ok",
              "summary": {
                "critical": 0,
                "high": 0,
                "medium": 0,
                "low": 0
              },
              "findings": []
            },
            "policy": {
              "configured": {
                "enabled": false,
                "mode": "off",
                "capabilities": [
                  "records",
                  "graph",
                  "events"
                ],
                "contract_version": 2,
                "require_source_refs": true,
                "endpoint": "http://127.0.0.1:47124",
                "manual_url": "http://127.0.0.1:47124/utcp.json",
                "knowledge_browse_url": "http://127.0.0.1:5276",
                "auth_env": "AI_COLLAB_API_KEY",
                "timeout_seconds": 5,
                "max_result_bytes": 1048576,
                "cache_ttl_seconds": 60,
                "fallback": "local",
                "automation": {
                  "discovery_on_session_start": true,
                  "knowledge_recall": true,
                  "memory_recall": true,
                  "context_enrichment": true,
                  "notices_on_session_start": false,
                  "goals_sync": false,
                  "telemetry_on_maintenance": false,
                  "reporting_dispatch": true,
                  "judgment_dispatch": true,
                  "verification_execution": true
                }
              },
              "active": false,
              "effective_mode": "off",
              "effective_capabilities": []
            }
          },
          "output_hash": "a6df426290b4549a59eecaa0519ead9bcc50b7fcb25bd2185ff6047960f19ccb",
          "completed_at": "2026-07-16T14:19:58Z"
        },
        {
          "id": "notices",
          "action": "substrate.notices",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-16T14:19:59Z",
          "output": {
            "status": "disabled"
          },
          "output_hash": "38b904a1cf83df048360fb2480571b749fd98d57e11f1afdffb5a74a78166fea",
          "completed_at": "2026-07-16T14:19:59Z"
        },
        {
          "id": "goals",
          "action": "substrate.goals",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-16T14:19:59Z",
          "output": {
            "status": "disabled",
            "created": 0,
            "observed": 0,
            "results": []
          },
          "output_hash": "cdfd4de44a28140e686159f34f7b47975954c67e1d1efcef666e985acb136ed8",
          "completed_at": "2026-07-16T14:19:59Z"
        }
      ],
      "completed_at": "2026-07-16T14:19:59Z"
    },
    {
      "id": "WFR-291",
      "schema_version": "1.0",
      "workflow_id": "session.stop",
      "workflow_version": 1,
      "definition_hash": "0cef7bb3e28321be8f85375c154955a69310ce297e47de3f3b8dd48f77a2f07d",
      "plan_hash": "a5e1d77ac734217487fc418e29c7163f4e81178e25d171e70cd4c999d527d3e8",
      "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
      "inputs": {},
      "idempotency_key": "hook:Stop:019f6b4c-5a27-7f72-9ba1-1ecf12da6afd",
      "status": "completed",
      "attempt": 1,
      "created_at": "2026-07-16T14:20:03Z",
      "updated_at": "2026-07-16T14:20:04Z",
      "receipts": [
        {
          "step_id": "state",
          "action": "state.consistency",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "5a1c6e5246defb1b6b6b90ff734db95bece2886b408ab112ed9b8e67222d5568",
          "completed_at": "2026-07-16T14:20:04Z"
        },
        {
          "step_id": "goals",
          "action": "substrate.goals",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "cdfd4de44a28140e686159f34f7b47975954c67e1d1efcef666e985acb136ed8",
          "completed_at": "2026-07-16T14:20:04Z"
        },
        {
          "step_id": "staleness",
          "action": "staleness.audit",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "1e81cb0ffd0a4d04626920a203b38d2d23a264cd43e807a85d375d69cae8a658",
          "completed_at": "2026-07-16T14:20:04Z"
        },
        {
          "step_id": "reflections",
          "action": "reflection.list",
          "input_hash": "0172e841ab4c13b3a4061f073f9d68a716ec87a8a5d52fde41823385e0582573",
          "output_hash": "c1b6b635c0bab21120657277f14ef6f839909875f307a3745fa48aee2bd6e449",
          "completed_at": "2026-07-16T14:20:04Z"
        },
        {
          "step_id": "bundle",
          "action": "reporting.bundle",
          "input_hash": "aed8ebb688dc3c085dd978d7c4120572173c3cb87e75919e4a937dcca6ef9457",
          "output_hash": "1e3c2b097cfbf440bcb114e6be9886a2a6ec5d728d22160f832b484b7e1392bb",
          "completed_at": "2026-07-16T14:20:04Z"
        },
        {
          "step_id": "delegated",
          "action": "reporting.delegate",
          "input_hash": "0fae08474dd6b273c8eac1063dd656e7f54bae999e800ca8a6bc0821f4994f9d",
          "output_hash": "e6085059f197def80ae95add1f328418107bea5436c9bd002530043646a3a95c",
          "completed_at": "2026-07-16T14:20:04Z"
        }
      ],
      "steps": [
        {
          "id": "state",
          "action": "state.consistency",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-16T14:20:03Z",
          "output": {
            "status": "ok",
            "repo_root": "D:\\Projects\\prd-plugin",
            "summary": {
              "errors": 0,
              "warnings": 0,
              "infos": 0
            },
            "findings": []
          },
          "output_hash": "5a1c6e5246defb1b6b6b90ff734db95bece2886b408ab112ed9b8e67222d5568",
          "completed_at": "2026-07-16T14:20:04Z"
        },
        {
          "id": "goals",
          "action": "substrate.goals",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-16T14:20:04Z",
          "output": {
            "status": "disabled",
            "created": 0,
            "observed": 0,
            "results": []
          },
          "output_hash": "cdfd4de44a28140e686159f34f7b47975954c67e1d1efcef666e985acb136ed8",
          "completed_at": "2026-07-16T14:20:04Z"
        },
        {
          "id": "staleness",
          "action": "staleness.audit",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-16T14:20:04Z",
          "output": {
            "status": "ok",
            "repo_root": "D:\\Projects\\prd-plugin",
            "counts": {
              "stale": 0
            },
            "stale": []
          },
          "output_hash": "1e81cb0ffd0a4d04626920a203b38d2d23a264cd43e807a85d375d69cae8a658",
          "completed_at": "2026-07-16T14:20:04Z"
        },
        {
          "id": "reflections",
          "action": "reflection.list",
          "status": "completed",
          "resolved_input_hash": "0172e841ab4c13b3a4061f073f9d68a716ec87a8a5d52fde41823385e0582573",
          "started_at": "2026-07-16T14:20:04Z",
          "output": {
            "enabled": false,
            "on_stop": true,
            "max_questions_per_stop": 5,
            "categories": [
              {
                "id": "behaviour_quality",
                "name": "Behaviour quality",
                "enabled": true,
                "question_count": 3
              },
              {
                "id": "harness_friction",
                "name": "Harness friction",
                "enabled": true,
                "question_count": 2
              }
            ],
            "questions": [
              {
                "id": "RFQ-001",
                "text": "Based on the work you just carried out, would you classify your behaviour as good? Answer yes or no and cite observable evidence.",
                "enabled": true,
                "category_id": "behaviour_quality",
                "category_name": "Behaviour quality",
                "effective_enabled": false
              },
              {
                "id": "RFQ-002",
                "text": "If you answered no, what could you do differently to correct your behaviour?",
                "enabled": true,
                "category_id": "behaviour_quality",
                "category_name": "Behaviour quality",
                "effective_enabled": false
              },
              {
                "id": "RFQ-003",
                "text": "Would another attempt using the identified good behaviours materially improve the outcome? Answer yes or no and state the next corrective action if yes.",
                "enabled": true,
                "category_id": "behaviour_quality",
                "category_name": "Behaviour quality",
                "effective_enabled": false
              },
              {
                "id": "RFQ-004",
                "text": "What harness friction points made this work more difficult?",
                "enabled": true,
                "category_id": "harness_friction",
                "category_name": "Harness friction",
                "effective_enabled": false
              },
              {
                "id": "RFQ-005",
                "text": "What up to three changes would most improve friction in the harness?",
                "enabled": true,
                "category_id": "harness_friction",
                "category_name": "Harness friction",
                "effective_enabled": false
              }
            ]
          },
          "output_hash": "c1b6b635c0bab21120657277f14ef6f839909875f307a3745fa48aee2bd6e449",
          "completed_at": "2026-07-16T14:20:04Z"
        },
        {
          "id": "bundle",
          "action": "reporting.bundle",
          "status": "completed",
          "resolved_input_hash": "aed8ebb688dc3c085dd978d7c4120572173c3cb87e75919e4a937dcca6ef9457",
          "started_at": "2026-07-16T14:20:04Z",
          "output": {
            "contract_version": 1,
            "task": "session_summary",
            "repo": "prd-plugin",
            "policy": {
              "enabled": false,
              "executor": "ai-collab",
              "contract_version": 1,
              "profile": "fast-capable",
              "tasks": [
                "report_summary",
                "session_summary",
                "wiki_synthesis",
                "triage_draft"
              ],
              "fallback": "main",
              "require_source_refs": true,
              "max_input_tokens": 12000,
              "max_output_tokens": 1500,
              "timeout_seconds": 30
            },
            "facts": {
              "requests_by_status": {
                "deferred": 1,
                "implemented": 89,
                "in_review": 1,
                "proposed": 3,
                "rejected": 1
              },
              "active_requests": [
                {
                  "id": "REQ-072",
                  "status": "proposed",
                  "severity": "low",
                  "summary": "opencode run-until-done: session.idle is a non-blocking notification, so the stop guard can't force continuation on opencode (currently degrades to a printed reminder, 0.5.95). Investigate whether opencode exposes any vetoable/continuation mechanism (a different event, a permission hook, or a 'continue' API) to enforce run-until-done, or accept the reminder as the permanent ceiling. Low priority — user rarely uses opencode."
                },
                {
                  "id": "REQ-104",
                  "status": "in_review",
                  "severity": "high",
                  "summary": "Ordinary-workspace chat has no path into the planning pipeline: owner-approved collaboration decisions land in scratchpads, room agents cannot allocate REQ/PRD/TRK ids past the parallel-worker mutation boundary, and goal-administrator grants detach when participant identity changes on runner restart"
                },
                {
                  "id": "REQ-107",
                  "status": "proposed",
                  "severity": "high",
                  "summary": "Adopt the UTCP-first tool architecture (user-directed): one UTCP manual is the source of truth for ALL prd-plugin tools including mutations, the MCP surface is generated by the official @utcp/mcp-bridge, and the 2,323-line hand-written MCP server is retired as a hand-maintained surface"
                },
                {
                  "id": "REQ-113",
                  "status": "proposed",
                  "severity": "low",
                  "summary": "Request-thread close has no validated tool: finished threads stay 'unresolved' in message_check forever unless state is hand-flipped; add a thread-close capability to the UTCP-first tool catalog (REQ-107), not as a new hand-written MCP handler"
                }
              ],
              "active_tracking": [],
              "open_health": [],
              "evidence_count": 125,
              "decision_count": 10
            },
            "findings": [],
            "source_refs": [
              ".prd_plugin/config.json",
              ".prd_plugin/state/decisions.json",
              ".prd_plugin/state/evidence.json",
              ".prd_plugin/state/health.json",
              ".prd_plugin/state/requests.json",
              ".prd_plugin/state/tracking.json",
              "REQ-072",
              "REQ-104",
              "REQ-107",
              "REQ-113"
            ],
            "constraints": {
              "max_input_tokens": 12000,
              "max_output_tokens": 1500,
              "timeout_seconds": 30,
              "require_source_refs": true,
              "no_project_state_writes": true,
              "no_secrets_or_local_session_content": true
            }
          },
          "output_hash": "1e3c2b097cfbf440bcb114e6be9886a2a6ec5d728d22160f832b484b7e1392bb",
          "completed_at": "2026-07-16T14:20:04Z"
        },
        {
          "id": "delegated",
          "action": "reporting.delegate",
          "status": "completed",
          "resolved_input_hash": "0fae08474dd6b273c8eac1063dd656e7f54bae999e800ca8a6bc0821f4994f9d",
          "started_at": "2026-07-16T14:20:04Z",
          "output": {
            "status": "fallback",
            "action": "main",
            "reason": "disabled"
          },
          "output_hash": "e6085059f197def80ae95add1f328418107bea5436c9bd002530043646a3a95c",
          "completed_at": "2026-07-16T14:20:04Z"
        }
      ],
      "completed_at": "2026-07-16T14:20:04Z"
    },
    {
      "id": "WFR-292",
      "schema_version": "1.0",
      "workflow_id": "session.start",
      "workflow_version": 1,
      "definition_hash": "d0f98da02571e6dd27fec4aed92d3c82af9db75f8b90b997bf665635c7b7f6ca",
      "plan_hash": "b5072615ca3b7e9a3bd85d50d1f069d99ef2a9816b32c03a370745ed7a205536",
      "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
      "inputs": {},
      "idempotency_key": "hook:SessionStart:019f6b4c-92db-7511-b5e7-ec8c2792b840",
      "status": "completed",
      "attempt": 1,
      "created_at": "2026-07-16T14:20:11Z",
      "updated_at": "2026-07-16T14:20:14Z",
      "receipts": [
        {
          "step_id": "config",
          "action": "config.audit",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "3782ec2317c0c8ee7598634310a2804d8aae4735f557498f9d3b8fae7c45e1e5",
          "completed_at": "2026-07-16T14:20:12Z"
        },
        {
          "step_id": "services",
          "action": "services.audit",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "13dcc58bd528f3efa3e6e0fa0853a6eedc376f1f3685fbd4869cbb2b60382ee3",
          "completed_at": "2026-07-16T14:20:12Z"
        },
        {
          "step_id": "state",
          "action": "state.consistency",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "5a1c6e5246defb1b6b6b90ff734db95bece2886b408ab112ed9b8e67222d5568",
          "completed_at": "2026-07-16T14:20:13Z"
        },
        {
          "step_id": "status",
          "action": "state.query",
          "input_hash": "a15231a2142a2a9a85355a8b9cbbccffe01a9c9c2c2fd8c2bc2987cdc481564a",
          "output_hash": "e612fd24ae96a43d20bfe419de740c28c46e9e641ce9e590c5c2ca32d932b393",
          "completed_at": "2026-07-16T14:20:13Z"
        },
        {
          "step_id": "substrate",
          "action": "substrate.preflight",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "a6df426290b4549a59eecaa0519ead9bcc50b7fcb25bd2185ff6047960f19ccb",
          "completed_at": "2026-07-16T14:20:13Z"
        },
        {
          "step_id": "notices",
          "action": "substrate.notices",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "38b904a1cf83df048360fb2480571b749fd98d57e11f1afdffb5a74a78166fea",
          "completed_at": "2026-07-16T14:20:13Z"
        },
        {
          "step_id": "goals",
          "action": "substrate.goals",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "cdfd4de44a28140e686159f34f7b47975954c67e1d1efcef666e985acb136ed8",
          "completed_at": "2026-07-16T14:20:14Z"
        }
      ],
      "steps": [
        {
          "id": "config",
          "action": "config.audit",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-16T14:20:12Z",
          "output": {
            "status": "ok",
            "summary": {
              "settings": 195,
              "mutable": 186,
              "read_only_or_managed": 9,
              "unclassified": 0,
              "unknown": 0,
              "invalid": 0,
              "missing_using_defaults": 0
            },
            "unclassified_keys": [],
            "unknown_keys": [],
            "invalid_values": [],
            "missing_using_defaults": []
          },
          "output_hash": "3782ec2317c0c8ee7598634310a2804d8aae4735f557498f9d3b8fae7c45e1e5",
          "completed_at": "2026-07-16T14:20:12Z"
        },
        {
          "id": "services",
          "action": "services.audit",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-16T14:20:12Z",
          "output": {
            "status": "ok",
            "summary": {
              "critical": 0,
              "high": 0,
              "medium": 0,
              "low": 0
            },
            "findings": []
          },
          "output_hash": "13dcc58bd528f3efa3e6e0fa0853a6eedc376f1f3685fbd4869cbb2b60382ee3",
          "completed_at": "2026-07-16T14:20:12Z"
        },
        {
          "id": "state",
          "action": "state.consistency",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-16T14:20:12Z",
          "output": {
            "status": "ok",
            "repo_root": "D:\\Projects\\prd-plugin",
            "summary": {
              "errors": 0,
              "warnings": 0,
              "infos": 0
            },
            "findings": []
          },
          "output_hash": "5a1c6e5246defb1b6b6b90ff734db95bece2886b408ab112ed9b8e67222d5568",
          "completed_at": "2026-07-16T14:20:13Z"
        },
        {
          "id": "status",
          "action": "state.query",
          "status": "completed",
          "resolved_input_hash": "a15231a2142a2a9a85355a8b9cbbccffe01a9c9c2c2fd8c2bc2987cdc481564a",
          "started_at": "2026-07-16T14:20:13Z",
          "output": {
            "repo_root": "D:\\Projects\\prd-plugin",
            "autonomy_level": "autonomous",
            "requests_by_status": {
              "deferred": 1,
              "implemented": 89,
              "in_review": 1,
              "proposed": 3,
              "rejected": 1
            },
            "active_tracking": [],
            "tracking_branches": [],
            "tracking_branch_counts": {},
            "tracking_branch_errors": [],
            "open_health": [],
            "stale_count": 0,
            "skill_usage": {
              "project-decision-policy": 1,
              "project-request-intake": 1,
              "project-test-driven-implementation": 1,
              "project-verification-before-completion": 1,
              "project-llm-wiki": 1
            },
            "wiki_backfill_pending": false,
            "version_update": null
          },
          "output_hash": "e612fd24ae96a43d20bfe419de740c28c46e9e641ce9e590c5c2ca32d932b393",
          "completed_at": "2026-07-16T14:20:13Z"
        },
        {
          "id": "substrate",
          "action": "substrate.preflight",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-16T14:20:13Z",
          "output": {
            "status": "disabled",
            "services": {
              "status": "ok",
              "summary": {
                "critical": 0,
                "high": 0,
                "medium": 0,
                "low": 0
              },
              "findings": []
            },
            "policy": {
              "configured": {
                "enabled": false,
                "mode": "off",
                "capabilities": [
                  "records",
                  "graph",
                  "events"
                ],
                "contract_version": 2,
                "require_source_refs": true,
                "endpoint": "http://127.0.0.1:47124",
                "manual_url": "http://127.0.0.1:47124/utcp.json",
                "knowledge_browse_url": "http://127.0.0.1:5276",
                "auth_env": "AI_COLLAB_API_KEY",
                "timeout_seconds": 5,
                "max_result_bytes": 1048576,
                "cache_ttl_seconds": 60,
                "fallback": "local",
                "automation": {
                  "discovery_on_session_start": true,
                  "knowledge_recall": true,
                  "memory_recall": true,
                  "context_enrichment": true,
                  "notices_on_session_start": false,
                  "goals_sync": false,
                  "telemetry_on_maintenance": false,
                  "reporting_dispatch": true,
                  "judgment_dispatch": true,
                  "verification_execution": true
                }
              },
              "active": false,
              "effective_mode": "off",
              "effective_capabilities": []
            }
          },
          "output_hash": "a6df426290b4549a59eecaa0519ead9bcc50b7fcb25bd2185ff6047960f19ccb",
          "completed_at": "2026-07-16T14:20:13Z"
        },
        {
          "id": "notices",
          "action": "substrate.notices",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-16T14:20:13Z",
          "output": {
            "status": "disabled"
          },
          "output_hash": "38b904a1cf83df048360fb2480571b749fd98d57e11f1afdffb5a74a78166fea",
          "completed_at": "2026-07-16T14:20:13Z"
        },
        {
          "id": "goals",
          "action": "substrate.goals",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-16T14:20:14Z",
          "output": {
            "status": "disabled",
            "created": 0,
            "observed": 0,
            "results": []
          },
          "output_hash": "cdfd4de44a28140e686159f34f7b47975954c67e1d1efcef666e985acb136ed8",
          "completed_at": "2026-07-16T14:20:14Z"
        }
      ],
      "completed_at": "2026-07-16T14:20:14Z"
    },
    {
      "id": "WFR-293",
      "schema_version": "1.0",
      "workflow_id": "session.stop",
      "workflow_version": 1,
      "definition_hash": "0cef7bb3e28321be8f85375c154955a69310ce297e47de3f3b8dd48f77a2f07d",
      "plan_hash": "a5e1d77ac734217487fc418e29c7163f4e81178e25d171e70cd4c999d527d3e8",
      "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
      "inputs": {},
      "idempotency_key": "hook:Stop:019f6b4c-92db-7511-b5e7-ec8c2792b840",
      "status": "completed",
      "attempt": 1,
      "created_at": "2026-07-16T14:20:22Z",
      "updated_at": "2026-07-16T14:20:24Z",
      "receipts": [
        {
          "step_id": "state",
          "action": "state.consistency",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "5a1c6e5246defb1b6b6b90ff734db95bece2886b408ab112ed9b8e67222d5568",
          "completed_at": "2026-07-16T14:20:23Z"
        },
        {
          "step_id": "goals",
          "action": "substrate.goals",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "cdfd4de44a28140e686159f34f7b47975954c67e1d1efcef666e985acb136ed8",
          "completed_at": "2026-07-16T14:20:23Z"
        },
        {
          "step_id": "staleness",
          "action": "staleness.audit",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "1e81cb0ffd0a4d04626920a203b38d2d23a264cd43e807a85d375d69cae8a658",
          "completed_at": "2026-07-16T14:20:24Z"
        },
        {
          "step_id": "reflections",
          "action": "reflection.list",
          "input_hash": "0172e841ab4c13b3a4061f073f9d68a716ec87a8a5d52fde41823385e0582573",
          "output_hash": "c1b6b635c0bab21120657277f14ef6f839909875f307a3745fa48aee2bd6e449",
          "completed_at": "2026-07-16T14:20:24Z"
        },
        {
          "step_id": "bundle",
          "action": "reporting.bundle",
          "input_hash": "aed8ebb688dc3c085dd978d7c4120572173c3cb87e75919e4a937dcca6ef9457",
          "output_hash": "1e3c2b097cfbf440bcb114e6be9886a2a6ec5d728d22160f832b484b7e1392bb",
          "completed_at": "2026-07-16T14:20:24Z"
        },
        {
          "step_id": "delegated",
          "action": "reporting.delegate",
          "input_hash": "0fae08474dd6b273c8eac1063dd656e7f54bae999e800ca8a6bc0821f4994f9d",
          "output_hash": "e6085059f197def80ae95add1f328418107bea5436c9bd002530043646a3a95c",
          "completed_at": "2026-07-16T14:20:24Z"
        }
      ],
      "steps": [
        {
          "id": "state",
          "action": "state.consistency",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-16T14:20:23Z",
          "output": {
            "status": "ok",
            "repo_root": "D:\\Projects\\prd-plugin",
            "summary": {
              "errors": 0,
              "warnings": 0,
              "infos": 0
            },
            "findings": []
          },
          "output_hash": "5a1c6e5246defb1b6b6b90ff734db95bece2886b408ab112ed9b8e67222d5568",
          "completed_at": "2026-07-16T14:20:23Z"
        },
        {
          "id": "goals",
          "action": "substrate.goals",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-16T14:20:23Z",
          "output": {
            "status": "disabled",
            "created": 0,
            "observed": 0,
            "results": []
          },
          "output_hash": "cdfd4de44a28140e686159f34f7b47975954c67e1d1efcef666e985acb136ed8",
          "completed_at": "2026-07-16T14:20:23Z"
        },
        {
          "id": "staleness",
          "action": "staleness.audit",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-16T14:20:24Z",
          "output": {
            "status": "ok",
            "repo_root": "D:\\Projects\\prd-plugin",
            "counts": {
              "stale": 0
            },
            "stale": []
          },
          "output_hash": "1e81cb0ffd0a4d04626920a203b38d2d23a264cd43e807a85d375d69cae8a658",
          "completed_at": "2026-07-16T14:20:24Z"
        },
        {
          "id": "reflections",
          "action": "reflection.list",
          "status": "completed",
          "resolved_input_hash": "0172e841ab4c13b3a4061f073f9d68a716ec87a8a5d52fde41823385e0582573",
          "started_at": "2026-07-16T14:20:24Z",
          "output": {
            "enabled": false,
            "on_stop": true,
            "max_questions_per_stop": 5,
            "categories": [
              {
                "id": "behaviour_quality",
                "name": "Behaviour quality",
                "enabled": true,
                "question_count": 3
              },
              {
                "id": "harness_friction",
                "name": "Harness friction",
                "enabled": true,
                "question_count": 2
              }
            ],
            "questions": [
              {
                "id": "RFQ-001",
                "text": "Based on the work you just carried out, would you classify your behaviour as good? Answer yes or no and cite observable evidence.",
                "enabled": true,
                "category_id": "behaviour_quality",
                "category_name": "Behaviour quality",
                "effective_enabled": false
              },
              {
                "id": "RFQ-002",
                "text": "If you answered no, what could you do differently to correct your behaviour?",
                "enabled": true,
                "category_id": "behaviour_quality",
                "category_name": "Behaviour quality",
                "effective_enabled": false
              },
              {
                "id": "RFQ-003",
                "text": "Would another attempt using the identified good behaviours materially improve the outcome? Answer yes or no and state the next corrective action if yes.",
                "enabled": true,
                "category_id": "behaviour_quality",
                "category_name": "Behaviour quality",
                "effective_enabled": false
              },
              {
                "id": "RFQ-004",
                "text": "What harness friction points made this work more difficult?",
                "enabled": true,
                "category_id": "harness_friction",
                "category_name": "Harness friction",
                "effective_enabled": false
              },
              {
                "id": "RFQ-005",
                "text": "What up to three changes would most improve friction in the harness?",
                "enabled": true,
                "category_id": "harness_friction",
                "category_name": "Harness friction",
                "effective_enabled": false
              }
            ]
          },
          "output_hash": "c1b6b635c0bab21120657277f14ef6f839909875f307a3745fa48aee2bd6e449",
          "completed_at": "2026-07-16T14:20:24Z"
        },
        {
          "id": "bundle",
          "action": "reporting.bundle",
          "status": "completed",
          "resolved_input_hash": "aed8ebb688dc3c085dd978d7c4120572173c3cb87e75919e4a937dcca6ef9457",
          "started_at": "2026-07-16T14:20:24Z",
          "output": {
            "contract_version": 1,
            "task": "session_summary",
            "repo": "prd-plugin",
            "policy": {
              "enabled": false,
              "executor": "ai-collab",
              "contract_version": 1,
              "profile": "fast-capable",
              "tasks": [
                "report_summary",
                "session_summary",
                "wiki_synthesis",
                "triage_draft"
              ],
              "fallback": "main",
              "require_source_refs": true,
              "max_input_tokens": 12000,
              "max_output_tokens": 1500,
              "timeout_seconds": 30
            },
            "facts": {
              "requests_by_status": {
                "deferred": 1,
                "implemented": 89,
                "in_review": 1,
                "proposed": 3,
                "rejected": 1
              },
              "active_requests": [
                {
                  "id": "REQ-072",
                  "status": "proposed",
                  "severity": "low",
                  "summary": "opencode run-until-done: session.idle is a non-blocking notification, so the stop guard can't force continuation on opencode (currently degrades to a printed reminder, 0.5.95). Investigate whether opencode exposes any vetoable/continuation mechanism (a different event, a permission hook, or a 'continue' API) to enforce run-until-done, or accept the reminder as the permanent ceiling. Low priority — user rarely uses opencode."
                },
                {
                  "id": "REQ-104",
                  "status": "in_review",
                  "severity": "high",
                  "summary": "Ordinary-workspace chat has no path into the planning pipeline: owner-approved collaboration decisions land in scratchpads, room agents cannot allocate REQ/PRD/TRK ids past the parallel-worker mutation boundary, and goal-administrator grants detach when participant identity changes on runner restart"
                },
                {
                  "id": "REQ-107",
                  "status": "proposed",
                  "severity": "high",
                  "summary": "Adopt the UTCP-first tool architecture (user-directed): one UTCP manual is the source of truth for ALL prd-plugin tools including mutations, the MCP surface is generated by the official @utcp/mcp-bridge, and the 2,323-line hand-written MCP server is retired as a hand-maintained surface"
                },
                {
                  "id": "REQ-113",
                  "status": "proposed",
                  "severity": "low",
                  "summary": "Request-thread close has no validated tool: finished threads stay 'unresolved' in message_check forever unless state is hand-flipped; add a thread-close capability to the UTCP-first tool catalog (REQ-107), not as a new hand-written MCP handler"
                }
              ],
              "active_tracking": [],
              "open_health": [],
              "evidence_count": 125,
              "decision_count": 10
            },
            "findings": [],
            "source_refs": [
              ".prd_plugin/config.json",
              ".prd_plugin/state/decisions.json",
              ".prd_plugin/state/evidence.json",
              ".prd_plugin/state/health.json",
              ".prd_plugin/state/requests.json",
              ".prd_plugin/state/tracking.json",
              "REQ-072",
              "REQ-104",
              "REQ-107",
              "REQ-113"
            ],
            "constraints": {
              "max_input_tokens": 12000,
              "max_output_tokens": 1500,
              "timeout_seconds": 30,
              "require_source_refs": true,
              "no_project_state_writes": true,
              "no_secrets_or_local_session_content": true
            }
          },
          "output_hash": "1e3c2b097cfbf440bcb114e6be9886a2a6ec5d728d22160f832b484b7e1392bb",
          "completed_at": "2026-07-16T14:20:24Z"
        },
        {
          "id": "delegated",
          "action": "reporting.delegate",
          "status": "completed",
          "resolved_input_hash": "0fae08474dd6b273c8eac1063dd656e7f54bae999e800ca8a6bc0821f4994f9d",
          "started_at": "2026-07-16T14:20:24Z",
          "output": {
            "status": "fallback",
            "action": "main",
            "reason": "disabled"
          },
          "output_hash": "e6085059f197def80ae95add1f328418107bea5436c9bd002530043646a3a95c",
          "completed_at": "2026-07-16T14:20:24Z"
        }
      ],
      "completed_at": "2026-07-16T14:20:24Z"
    },
    {
      "id": "WFR-294",
      "schema_version": "1.0",
      "workflow_id": "session.start",
      "workflow_version": 1,
      "definition_hash": "d0f98da02571e6dd27fec4aed92d3c82af9db75f8b90b997bf665635c7b7f6ca",
      "plan_hash": "b5072615ca3b7e9a3bd85d50d1f069d99ef2a9816b32c03a370745ed7a205536",
      "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
      "inputs": {},
      "idempotency_key": "hook:SessionStart:019f6b4c-dcc8-7e61-92a4-54d6e1e812c9",
      "status": "completed",
      "attempt": 1,
      "created_at": "2026-07-16T14:20:31Z",
      "updated_at": "2026-07-16T14:20:33Z",
      "receipts": [
        {
          "step_id": "config",
          "action": "config.audit",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "3782ec2317c0c8ee7598634310a2804d8aae4735f557498f9d3b8fae7c45e1e5",
          "completed_at": "2026-07-16T14:20:31Z"
        },
        {
          "step_id": "services",
          "action": "services.audit",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "13dcc58bd528f3efa3e6e0fa0853a6eedc376f1f3685fbd4869cbb2b60382ee3",
          "completed_at": "2026-07-16T14:20:31Z"
        },
        {
          "step_id": "state",
          "action": "state.consistency",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "5a1c6e5246defb1b6b6b90ff734db95bece2886b408ab112ed9b8e67222d5568",
          "completed_at": "2026-07-16T14:20:32Z"
        },
        {
          "step_id": "status",
          "action": "state.query",
          "input_hash": "a15231a2142a2a9a85355a8b9cbbccffe01a9c9c2c2fd8c2bc2987cdc481564a",
          "output_hash": "e612fd24ae96a43d20bfe419de740c28c46e9e641ce9e590c5c2ca32d932b393",
          "completed_at": "2026-07-16T14:20:33Z"
        },
        {
          "step_id": "substrate",
          "action": "substrate.preflight",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "a6df426290b4549a59eecaa0519ead9bcc50b7fcb25bd2185ff6047960f19ccb",
          "completed_at": "2026-07-16T14:20:33Z"
        },
        {
          "step_id": "notices",
          "action": "substrate.notices",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "38b904a1cf83df048360fb2480571b749fd98d57e11f1afdffb5a74a78166fea",
          "completed_at": "2026-07-16T14:20:33Z"
        },
        {
          "step_id": "goals",
          "action": "substrate.goals",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "cdfd4de44a28140e686159f34f7b47975954c67e1d1efcef666e985acb136ed8",
          "completed_at": "2026-07-16T14:20:33Z"
        }
      ],
      "steps": [
        {
          "id": "config",
          "action": "config.audit",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-16T14:20:31Z",
          "output": {
            "status": "ok",
            "summary": {
              "settings": 195,
              "mutable": 186,
              "read_only_or_managed": 9,
              "unclassified": 0,
              "unknown": 0,
              "invalid": 0,
              "missing_using_defaults": 0
            },
            "unclassified_keys": [],
            "unknown_keys": [],
            "invalid_values": [],
            "missing_using_defaults": []
          },
          "output_hash": "3782ec2317c0c8ee7598634310a2804d8aae4735f557498f9d3b8fae7c45e1e5",
          "completed_at": "2026-07-16T14:20:31Z"
        },
        {
          "id": "services",
          "action": "services.audit",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-16T14:20:31Z",
          "output": {
            "status": "ok",
            "summary": {
              "critical": 0,
              "high": 0,
              "medium": 0,
              "low": 0
            },
            "findings": []
          },
          "output_hash": "13dcc58bd528f3efa3e6e0fa0853a6eedc376f1f3685fbd4869cbb2b60382ee3",
          "completed_at": "2026-07-16T14:20:31Z"
        },
        {
          "id": "state",
          "action": "state.consistency",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-16T14:20:31Z",
          "output": {
            "status": "ok",
            "repo_root": "D:\\Projects\\prd-plugin",
            "summary": {
              "errors": 0,
              "warnings": 0,
              "infos": 0
            },
            "findings": []
          },
          "output_hash": "5a1c6e5246defb1b6b6b90ff734db95bece2886b408ab112ed9b8e67222d5568",
          "completed_at": "2026-07-16T14:20:32Z"
        },
        {
          "id": "status",
          "action": "state.query",
          "status": "completed",
          "resolved_input_hash": "a15231a2142a2a9a85355a8b9cbbccffe01a9c9c2c2fd8c2bc2987cdc481564a",
          "started_at": "2026-07-16T14:20:32Z",
          "output": {
            "repo_root": "D:\\Projects\\prd-plugin",
            "autonomy_level": "autonomous",
            "requests_by_status": {
              "deferred": 1,
              "implemented": 89,
              "in_review": 1,
              "proposed": 3,
              "rejected": 1
            },
            "active_tracking": [],
            "tracking_branches": [],
            "tracking_branch_counts": {},
            "tracking_branch_errors": [],
            "open_health": [],
            "stale_count": 0,
            "skill_usage": {
              "project-decision-policy": 1,
              "project-request-intake": 1,
              "project-test-driven-implementation": 1,
              "project-verification-before-completion": 1,
              "project-llm-wiki": 1
            },
            "wiki_backfill_pending": false,
            "version_update": null
          },
          "output_hash": "e612fd24ae96a43d20bfe419de740c28c46e9e641ce9e590c5c2ca32d932b393",
          "completed_at": "2026-07-16T14:20:33Z"
        },
        {
          "id": "substrate",
          "action": "substrate.preflight",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-16T14:20:33Z",
          "output": {
            "status": "disabled",
            "services": {
              "status": "ok",
              "summary": {
                "critical": 0,
                "high": 0,
                "medium": 0,
                "low": 0
              },
              "findings": []
            },
            "policy": {
              "configured": {
                "enabled": false,
                "mode": "off",
                "capabilities": [
                  "records",
                  "graph",
                  "events"
                ],
                "contract_version": 2,
                "require_source_refs": true,
                "endpoint": "http://127.0.0.1:47124",
                "manual_url": "http://127.0.0.1:47124/utcp.json",
                "knowledge_browse_url": "http://127.0.0.1:5276",
                "auth_env": "AI_COLLAB_API_KEY",
                "timeout_seconds": 5,
                "max_result_bytes": 1048576,
                "cache_ttl_seconds": 60,
                "fallback": "local",
                "automation": {
                  "discovery_on_session_start": true,
                  "knowledge_recall": true,
                  "memory_recall": true,
                  "context_enrichment": true,
                  "notices_on_session_start": false,
                  "goals_sync": false,
                  "telemetry_on_maintenance": false,
                  "reporting_dispatch": true,
                  "judgment_dispatch": true,
                  "verification_execution": true
                }
              },
              "active": false,
              "effective_mode": "off",
              "effective_capabilities": []
            }
          },
          "output_hash": "a6df426290b4549a59eecaa0519ead9bcc50b7fcb25bd2185ff6047960f19ccb",
          "completed_at": "2026-07-16T14:20:33Z"
        },
        {
          "id": "notices",
          "action": "substrate.notices",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-16T14:20:33Z",
          "output": {
            "status": "disabled"
          },
          "output_hash": "38b904a1cf83df048360fb2480571b749fd98d57e11f1afdffb5a74a78166fea",
          "completed_at": "2026-07-16T14:20:33Z"
        },
        {
          "id": "goals",
          "action": "substrate.goals",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-16T14:20:33Z",
          "output": {
            "status": "disabled",
            "created": 0,
            "observed": 0,
            "results": []
          },
          "output_hash": "cdfd4de44a28140e686159f34f7b47975954c67e1d1efcef666e985acb136ed8",
          "completed_at": "2026-07-16T14:20:33Z"
        }
      ],
      "completed_at": "2026-07-16T14:20:33Z"
    },
    {
      "id": "WFR-295",
      "schema_version": "1.0",
      "workflow_id": "session.stop",
      "workflow_version": 1,
      "definition_hash": "0cef7bb3e28321be8f85375c154955a69310ce297e47de3f3b8dd48f77a2f07d",
      "plan_hash": "a5e1d77ac734217487fc418e29c7163f4e81178e25d171e70cd4c999d527d3e8",
      "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
      "inputs": {},
      "idempotency_key": "hook:Stop:019f6b4c-dcc8-7e61-92a4-54d6e1e812c9",
      "status": "completed",
      "attempt": 1,
      "created_at": "2026-07-16T14:20:39Z",
      "updated_at": "2026-07-16T14:20:41Z",
      "receipts": [
        {
          "step_id": "state",
          "action": "state.consistency",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "5a1c6e5246defb1b6b6b90ff734db95bece2886b408ab112ed9b8e67222d5568",
          "completed_at": "2026-07-16T14:20:40Z"
        },
        {
          "step_id": "goals",
          "action": "substrate.goals",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "cdfd4de44a28140e686159f34f7b47975954c67e1d1efcef666e985acb136ed8",
          "completed_at": "2026-07-16T14:20:40Z"
        },
        {
          "step_id": "staleness",
          "action": "staleness.audit",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "1e81cb0ffd0a4d04626920a203b38d2d23a264cd43e807a85d375d69cae8a658",
          "completed_at": "2026-07-16T14:20:40Z"
        },
        {
          "step_id": "reflections",
          "action": "reflection.list",
          "input_hash": "0172e841ab4c13b3a4061f073f9d68a716ec87a8a5d52fde41823385e0582573",
          "output_hash": "c1b6b635c0bab21120657277f14ef6f839909875f307a3745fa48aee2bd6e449",
          "completed_at": "2026-07-16T14:20:40Z"
        },
        {
          "step_id": "bundle",
          "action": "reporting.bundle",
          "input_hash": "aed8ebb688dc3c085dd978d7c4120572173c3cb87e75919e4a937dcca6ef9457",
          "output_hash": "1e3c2b097cfbf440bcb114e6be9886a2a6ec5d728d22160f832b484b7e1392bb",
          "completed_at": "2026-07-16T14:20:41Z"
        },
        {
          "step_id": "delegated",
          "action": "reporting.delegate",
          "input_hash": "0fae08474dd6b273c8eac1063dd656e7f54bae999e800ca8a6bc0821f4994f9d",
          "output_hash": "e6085059f197def80ae95add1f328418107bea5436c9bd002530043646a3a95c",
          "completed_at": "2026-07-16T14:20:41Z"
        }
      ],
      "steps": [
        {
          "id": "state",
          "action": "state.consistency",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-16T14:20:39Z",
          "output": {
            "status": "ok",
            "repo_root": "D:\\Projects\\prd-plugin",
            "summary": {
              "errors": 0,
              "warnings": 0,
              "infos": 0
            },
            "findings": []
          },
          "output_hash": "5a1c6e5246defb1b6b6b90ff734db95bece2886b408ab112ed9b8e67222d5568",
          "completed_at": "2026-07-16T14:20:40Z"
        },
        {
          "id": "goals",
          "action": "substrate.goals",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-16T14:20:40Z",
          "output": {
            "status": "disabled",
            "created": 0,
            "observed": 0,
            "results": []
          },
          "output_hash": "cdfd4de44a28140e686159f34f7b47975954c67e1d1efcef666e985acb136ed8",
          "completed_at": "2026-07-16T14:20:40Z"
        },
        {
          "id": "staleness",
          "action": "staleness.audit",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-16T14:20:40Z",
          "output": {
            "status": "ok",
            "repo_root": "D:\\Projects\\prd-plugin",
            "counts": {
              "stale": 0
            },
            "stale": []
          },
          "output_hash": "1e81cb0ffd0a4d04626920a203b38d2d23a264cd43e807a85d375d69cae8a658",
          "completed_at": "2026-07-16T14:20:40Z"
        },
        {
          "id": "reflections",
          "action": "reflection.list",
          "status": "completed",
          "resolved_input_hash": "0172e841ab4c13b3a4061f073f9d68a716ec87a8a5d52fde41823385e0582573",
          "started_at": "2026-07-16T14:20:40Z",
          "output": {
            "enabled": false,
            "on_stop": true,
            "max_questions_per_stop": 5,
            "categories": [
              {
                "id": "behaviour_quality",
                "name": "Behaviour quality",
                "enabled": true,
                "question_count": 3
              },
              {
                "id": "harness_friction",
                "name": "Harness friction",
                "enabled": true,
                "question_count": 2
              }
            ],
            "questions": [
              {
                "id": "RFQ-001",
                "text": "Based on the work you just carried out, would you classify your behaviour as good? Answer yes or no and cite observable evidence.",
                "enabled": true,
                "category_id": "behaviour_quality",
                "category_name": "Behaviour quality",
                "effective_enabled": false
              },
              {
                "id": "RFQ-002",
                "text": "If you answered no, what could you do differently to correct your behaviour?",
                "enabled": true,
                "category_id": "behaviour_quality",
                "category_name": "Behaviour quality",
                "effective_enabled": false
              },
              {
                "id": "RFQ-003",
                "text": "Would another attempt using the identified good behaviours materially improve the outcome? Answer yes or no and state the next corrective action if yes.",
                "enabled": true,
                "category_id": "behaviour_quality",
                "category_name": "Behaviour quality",
                "effective_enabled": false
              },
              {
                "id": "RFQ-004",
                "text": "What harness friction points made this work more difficult?",
                "enabled": true,
                "category_id": "harness_friction",
                "category_name": "Harness friction",
                "effective_enabled": false
              },
              {
                "id": "RFQ-005",
                "text": "What up to three changes would most improve friction in the harness?",
                "enabled": true,
                "category_id": "harness_friction",
                "category_name": "Harness friction",
                "effective_enabled": false
              }
            ]
          },
          "output_hash": "c1b6b635c0bab21120657277f14ef6f839909875f307a3745fa48aee2bd6e449",
          "completed_at": "2026-07-16T14:20:40Z"
        },
        {
          "id": "bundle",
          "action": "reporting.bundle",
          "status": "completed",
          "resolved_input_hash": "aed8ebb688dc3c085dd978d7c4120572173c3cb87e75919e4a937dcca6ef9457",
          "started_at": "2026-07-16T14:20:41Z",
          "output": {
            "contract_version": 1,
            "task": "session_summary",
            "repo": "prd-plugin",
            "policy": {
              "enabled": false,
              "executor": "ai-collab",
              "contract_version": 1,
              "profile": "fast-capable",
              "tasks": [
                "report_summary",
                "session_summary",
                "wiki_synthesis",
                "triage_draft"
              ],
              "fallback": "main",
              "require_source_refs": true,
              "max_input_tokens": 12000,
              "max_output_tokens": 1500,
              "timeout_seconds": 30
            },
            "facts": {
              "requests_by_status": {
                "deferred": 1,
                "implemented": 89,
                "in_review": 1,
                "proposed": 3,
                "rejected": 1
              },
              "active_requests": [
                {
                  "id": "REQ-072",
                  "status": "proposed",
                  "severity": "low",
                  "summary": "opencode run-until-done: session.idle is a non-blocking notification, so the stop guard can't force continuation on opencode (currently degrades to a printed reminder, 0.5.95). Investigate whether opencode exposes any vetoable/continuation mechanism (a different event, a permission hook, or a 'continue' API) to enforce run-until-done, or accept the reminder as the permanent ceiling. Low priority — user rarely uses opencode."
                },
                {
                  "id": "REQ-104",
                  "status": "in_review",
                  "severity": "high",
                  "summary": "Ordinary-workspace chat has no path into the planning pipeline: owner-approved collaboration decisions land in scratchpads, room agents cannot allocate REQ/PRD/TRK ids past the parallel-worker mutation boundary, and goal-administrator grants detach when participant identity changes on runner restart"
                },
                {
                  "id": "REQ-107",
                  "status": "proposed",
                  "severity": "high",
                  "summary": "Adopt the UTCP-first tool architecture (user-directed): one UTCP manual is the source of truth for ALL prd-plugin tools including mutations, the MCP surface is generated by the official @utcp/mcp-bridge, and the 2,323-line hand-written MCP server is retired as a hand-maintained surface"
                },
                {
                  "id": "REQ-113",
                  "status": "proposed",
                  "severity": "low",
                  "summary": "Request-thread close has no validated tool: finished threads stay 'unresolved' in message_check forever unless state is hand-flipped; add a thread-close capability to the UTCP-first tool catalog (REQ-107), not as a new hand-written MCP handler"
                }
              ],
              "active_tracking": [],
              "open_health": [],
              "evidence_count": 125,
              "decision_count": 10
            },
            "findings": [],
            "source_refs": [
              ".prd_plugin/config.json",
              ".prd_plugin/state/decisions.json",
              ".prd_plugin/state/evidence.json",
              ".prd_plugin/state/health.json",
              ".prd_plugin/state/requests.json",
              ".prd_plugin/state/tracking.json",
              "REQ-072",
              "REQ-104",
              "REQ-107",
              "REQ-113"
            ],
            "constraints": {
              "max_input_tokens": 12000,
              "max_output_tokens": 1500,
              "timeout_seconds": 30,
              "require_source_refs": true,
              "no_project_state_writes": true,
              "no_secrets_or_local_session_content": true
            }
          },
          "output_hash": "1e3c2b097cfbf440bcb114e6be9886a2a6ec5d728d22160f832b484b7e1392bb",
          "completed_at": "2026-07-16T14:20:41Z"
        },
        {
          "id": "delegated",
          "action": "reporting.delegate",
          "status": "completed",
          "resolved_input_hash": "0fae08474dd6b273c8eac1063dd656e7f54bae999e800ca8a6bc0821f4994f9d",
          "started_at": "2026-07-16T14:20:41Z",
          "output": {
            "status": "fallback",
            "action": "main",
            "reason": "disabled"
          },
          "output_hash": "e6085059f197def80ae95add1f328418107bea5436c9bd002530043646a3a95c",
          "completed_at": "2026-07-16T14:20:41Z"
        }
      ],
      "completed_at": "2026-07-16T14:20:41Z"
    },
    {
      "id": "WFR-296",
      "schema_version": "1.0",
      "workflow_id": "session.start",
      "workflow_version": 1,
      "definition_hash": "d0f98da02571e6dd27fec4aed92d3c82af9db75f8b90b997bf665635c7b7f6ca",
      "plan_hash": "b5072615ca3b7e9a3bd85d50d1f069d99ef2a9816b32c03a370745ed7a205536",
      "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
      "inputs": {},
      "idempotency_key": "hook:SessionStart:feee1cfd-8c59-4d03-a9de-0da8f111aa30",
      "status": "completed",
      "attempt": 1,
      "created_at": "2026-07-16T16:07:13Z",
      "updated_at": "2026-07-16T16:07:17Z",
      "receipts": [
        {
          "step_id": "config",
          "action": "config.audit",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "3782ec2317c0c8ee7598634310a2804d8aae4735f557498f9d3b8fae7c45e1e5",
          "completed_at": "2026-07-16T16:07:13Z"
        },
        {
          "step_id": "services",
          "action": "services.audit",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "13dcc58bd528f3efa3e6e0fa0853a6eedc376f1f3685fbd4869cbb2b60382ee3",
          "completed_at": "2026-07-16T16:07:13Z"
        },
        {
          "step_id": "state",
          "action": "state.consistency",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "5a1c6e5246defb1b6b6b90ff734db95bece2886b408ab112ed9b8e67222d5568",
          "completed_at": "2026-07-16T16:07:17Z"
        },
        {
          "step_id": "status",
          "action": "state.query",
          "input_hash": "a15231a2142a2a9a85355a8b9cbbccffe01a9c9c2c2fd8c2bc2987cdc481564a",
          "output_hash": "e612fd24ae96a43d20bfe419de740c28c46e9e641ce9e590c5c2ca32d932b393",
          "completed_at": "2026-07-16T16:07:17Z"
        },
        {
          "step_id": "substrate",
          "action": "substrate.preflight",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "a6df426290b4549a59eecaa0519ead9bcc50b7fcb25bd2185ff6047960f19ccb",
          "completed_at": "2026-07-16T16:07:17Z"
        },
        {
          "step_id": "notices",
          "action": "substrate.notices",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "38b904a1cf83df048360fb2480571b749fd98d57e11f1afdffb5a74a78166fea",
          "completed_at": "2026-07-16T16:07:17Z"
        },
        {
          "step_id": "goals",
          "action": "substrate.goals",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "cdfd4de44a28140e686159f34f7b47975954c67e1d1efcef666e985acb136ed8",
          "completed_at": "2026-07-16T16:07:17Z"
        }
      ],
      "steps": [
        {
          "id": "config",
          "action": "config.audit",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-16T16:07:13Z",
          "output": {
            "status": "ok",
            "summary": {
              "settings": 195,
              "mutable": 186,
              "read_only_or_managed": 9,
              "unclassified": 0,
              "unknown": 0,
              "invalid": 0,
              "missing_using_defaults": 0
            },
            "unclassified_keys": [],
            "unknown_keys": [],
            "invalid_values": [],
            "missing_using_defaults": []
          },
          "output_hash": "3782ec2317c0c8ee7598634310a2804d8aae4735f557498f9d3b8fae7c45e1e5",
          "completed_at": "2026-07-16T16:07:13Z"
        },
        {
          "id": "services",
          "action": "services.audit",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-16T16:07:13Z",
          "output": {
            "status": "ok",
            "summary": {
              "critical": 0,
              "high": 0,
              "medium": 0,
              "low": 0
            },
            "findings": []
          },
          "output_hash": "13dcc58bd528f3efa3e6e0fa0853a6eedc376f1f3685fbd4869cbb2b60382ee3",
          "completed_at": "2026-07-16T16:07:13Z"
        },
        {
          "id": "state",
          "action": "state.consistency",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-16T16:07:13Z",
          "output": {
            "status": "ok",
            "repo_root": "D:\\Projects\\prd-plugin",
            "summary": {
              "errors": 0,
              "warnings": 0,
              "infos": 0
            },
            "findings": []
          },
          "output_hash": "5a1c6e5246defb1b6b6b90ff734db95bece2886b408ab112ed9b8e67222d5568",
          "completed_at": "2026-07-16T16:07:17Z"
        },
        {
          "id": "status",
          "action": "state.query",
          "status": "completed",
          "resolved_input_hash": "a15231a2142a2a9a85355a8b9cbbccffe01a9c9c2c2fd8c2bc2987cdc481564a",
          "started_at": "2026-07-16T16:07:17Z",
          "output": {
            "repo_root": "D:\\Projects\\prd-plugin",
            "autonomy_level": "autonomous",
            "requests_by_status": {
              "deferred": 1,
              "implemented": 89,
              "in_review": 1,
              "proposed": 3,
              "rejected": 1
            },
            "active_tracking": [],
            "tracking_branches": [],
            "tracking_branch_counts": {},
            "tracking_branch_errors": [],
            "open_health": [],
            "stale_count": 0,
            "skill_usage": {
              "project-decision-policy": 1,
              "project-request-intake": 1,
              "project-test-driven-implementation": 1,
              "project-verification-before-completion": 1,
              "project-llm-wiki": 1
            },
            "wiki_backfill_pending": false,
            "version_update": null
          },
          "output_hash": "e612fd24ae96a43d20bfe419de740c28c46e9e641ce9e590c5c2ca32d932b393",
          "completed_at": "2026-07-16T16:07:17Z"
        },
        {
          "id": "substrate",
          "action": "substrate.preflight",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-16T16:07:17Z",
          "output": {
            "status": "disabled",
            "services": {
              "status": "ok",
              "summary": {
                "critical": 0,
                "high": 0,
                "medium": 0,
                "low": 0
              },
              "findings": []
            },
            "policy": {
              "configured": {
                "enabled": false,
                "mode": "off",
                "capabilities": [
                  "records",
                  "graph",
                  "events"
                ],
                "contract_version": 2,
                "require_source_refs": true,
                "endpoint": "http://127.0.0.1:47124",
                "manual_url": "http://127.0.0.1:47124/utcp.json",
                "knowledge_browse_url": "http://127.0.0.1:5276",
                "auth_env": "AI_COLLAB_API_KEY",
                "timeout_seconds": 5,
                "max_result_bytes": 1048576,
                "cache_ttl_seconds": 60,
                "fallback": "local",
                "automation": {
                  "discovery_on_session_start": true,
                  "knowledge_recall": true,
                  "memory_recall": true,
                  "context_enrichment": true,
                  "notices_on_session_start": false,
                  "goals_sync": false,
                  "telemetry_on_maintenance": false,
                  "reporting_dispatch": true,
                  "judgment_dispatch": true,
                  "verification_execution": true
                }
              },
              "active": false,
              "effective_mode": "off",
              "effective_capabilities": []
            }
          },
          "output_hash": "a6df426290b4549a59eecaa0519ead9bcc50b7fcb25bd2185ff6047960f19ccb",
          "completed_at": "2026-07-16T16:07:17Z"
        },
        {
          "id": "notices",
          "action": "substrate.notices",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-16T16:07:17Z",
          "output": {
            "status": "disabled"
          },
          "output_hash": "38b904a1cf83df048360fb2480571b749fd98d57e11f1afdffb5a74a78166fea",
          "completed_at": "2026-07-16T16:07:17Z"
        },
        {
          "id": "goals",
          "action": "substrate.goals",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-16T16:07:17Z",
          "output": {
            "status": "disabled",
            "created": 0,
            "observed": 0,
            "results": []
          },
          "output_hash": "cdfd4de44a28140e686159f34f7b47975954c67e1d1efcef666e985acb136ed8",
          "completed_at": "2026-07-16T16:07:17Z"
        }
      ],
      "completed_at": "2026-07-16T16:07:17Z"
    },
    {
      "id": "WFR-297",
      "schema_version": "1.0",
      "workflow_id": "session.start",
      "workflow_version": 1,
      "definition_hash": "d0f98da02571e6dd27fec4aed92d3c82af9db75f8b90b997bf665635c7b7f6ca",
      "plan_hash": "b5072615ca3b7e9a3bd85d50d1f069d99ef2a9816b32c03a370745ed7a205536",
      "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
      "inputs": {},
      "idempotency_key": "hook:SessionStart:019f6c28-746a-78e3-8af3-48b82c4d3e51",
      "status": "completed",
      "attempt": 1,
      "created_at": "2026-07-16T18:20:25Z",
      "updated_at": "2026-07-16T18:20:29Z",
      "receipts": [
        {
          "step_id": "config",
          "action": "config.audit",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "e8f5630220d3e8b26c18a52fd81e19f1b570f8f33a5daaff9c38eb8a62693c22",
          "completed_at": "2026-07-16T18:20:25Z"
        },
        {
          "step_id": "services",
          "action": "services.audit",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "13dcc58bd528f3efa3e6e0fa0853a6eedc376f1f3685fbd4869cbb2b60382ee3",
          "completed_at": "2026-07-16T18:20:25Z"
        },
        {
          "step_id": "state",
          "action": "state.consistency",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "5a1c6e5246defb1b6b6b90ff734db95bece2886b408ab112ed9b8e67222d5568",
          "completed_at": "2026-07-16T18:20:27Z"
        },
        {
          "step_id": "status",
          "action": "state.query",
          "input_hash": "a15231a2142a2a9a85355a8b9cbbccffe01a9c9c2c2fd8c2bc2987cdc481564a",
          "output_hash": "cda36b57b665a1052e4f88d6c67a65f32bca9d509dc3f34b54fcefd4b2bda2db",
          "completed_at": "2026-07-16T18:20:28Z"
        },
        {
          "step_id": "substrate",
          "action": "substrate.preflight",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "a6df426290b4549a59eecaa0519ead9bcc50b7fcb25bd2185ff6047960f19ccb",
          "completed_at": "2026-07-16T18:20:28Z"
        },
        {
          "step_id": "notices",
          "action": "substrate.notices",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "38b904a1cf83df048360fb2480571b749fd98d57e11f1afdffb5a74a78166fea",
          "completed_at": "2026-07-16T18:20:28Z"
        },
        {
          "step_id": "goals",
          "action": "substrate.goals",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "cdfd4de44a28140e686159f34f7b47975954c67e1d1efcef666e985acb136ed8",
          "completed_at": "2026-07-16T18:20:28Z"
        }
      ],
      "steps": [
        {
          "id": "config",
          "action": "config.audit",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-16T18:20:25Z",
          "output": {
            "status": "ok",
            "summary": {
              "settings": 196,
              "mutable": 187,
              "read_only_or_managed": 9,
              "unclassified": 0,
              "unknown": 0,
              "invalid": 0,
              "missing_using_defaults": 0
            },
            "unclassified_keys": [],
            "unknown_keys": [],
            "invalid_values": [],
            "missing_using_defaults": []
          },
          "output_hash": "e8f5630220d3e8b26c18a52fd81e19f1b570f8f33a5daaff9c38eb8a62693c22",
          "completed_at": "2026-07-16T18:20:25Z"
        },
        {
          "id": "services",
          "action": "services.audit",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-16T18:20:25Z",
          "output": {
            "status": "ok",
            "summary": {
              "critical": 0,
              "high": 0,
              "medium": 0,
              "low": 0
            },
            "findings": []
          },
          "output_hash": "13dcc58bd528f3efa3e6e0fa0853a6eedc376f1f3685fbd4869cbb2b60382ee3",
          "completed_at": "2026-07-16T18:20:25Z"
        },
        {
          "id": "state",
          "action": "state.consistency",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-16T18:20:26Z",
          "output": {
            "status": "ok",
            "repo_root": "D:\\Projects\\prd-plugin",
            "summary": {
              "errors": 0,
              "warnings": 0,
              "infos": 0
            },
            "findings": []
          },
          "output_hash": "5a1c6e5246defb1b6b6b90ff734db95bece2886b408ab112ed9b8e67222d5568",
          "completed_at": "2026-07-16T18:20:27Z"
        },
        {
          "id": "status",
          "action": "state.query",
          "status": "completed",
          "resolved_input_hash": "a15231a2142a2a9a85355a8b9cbbccffe01a9c9c2c2fd8c2bc2987cdc481564a",
          "started_at": "2026-07-16T18:20:27Z",
          "output": {
            "repo_root": "D:\\Projects\\prd-plugin",
            "autonomy_level": "autonomous",
            "requests_by_status": {
              "deferred": 1,
              "implemented": 90,
              "in_review": 1,
              "proposed": 3,
              "rejected": 1
            },
            "active_tracking": [],
            "tracking_branches": [],
            "tracking_branch_counts": {},
            "tracking_branch_errors": [],
            "open_health": [],
            "stale_count": 0,
            "skill_usage": {
              "project-decision-policy": 1,
              "project-request-intake": 1,
              "project-test-driven-implementation": 1,
              "project-verification-before-completion": 1,
              "project-llm-wiki": 1
            },
            "wiki_backfill_pending": false,
            "version_update": null
          },
          "output_hash": "cda36b57b665a1052e4f88d6c67a65f32bca9d509dc3f34b54fcefd4b2bda2db",
          "completed_at": "2026-07-16T18:20:28Z"
        },
        {
          "id": "substrate",
          "action": "substrate.preflight",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-16T18:20:28Z",
          "output": {
            "status": "disabled",
            "services": {
              "status": "ok",
              "summary": {
                "critical": 0,
                "high": 0,
                "medium": 0,
                "low": 0
              },
              "findings": []
            },
            "policy": {
              "configured": {
                "enabled": false,
                "mode": "off",
                "capabilities": [
                  "records",
                  "graph",
                  "events"
                ],
                "contract_version": 2,
                "require_source_refs": true,
                "endpoint": "http://127.0.0.1:47124",
                "manual_url": "http://127.0.0.1:47124/utcp.json",
                "knowledge_browse_url": "http://127.0.0.1:5276",
                "auth_env": "AI_COLLAB_API_KEY",
                "timeout_seconds": 5,
                "max_result_bytes": 1048576,
                "cache_ttl_seconds": 60,
                "fallback": "local",
                "automation": {
                  "discovery_on_session_start": true,
                  "knowledge_recall": true,
                  "memory_recall": true,
                  "context_enrichment": true,
                  "notices_on_session_start": false,
                  "goals_sync": false,
                  "telemetry_on_maintenance": false,
                  "reporting_dispatch": true,
                  "judgment_dispatch": true,
                  "verification_execution": true
                }
              },
              "active": false,
              "effective_mode": "off",
              "effective_capabilities": []
            }
          },
          "output_hash": "a6df426290b4549a59eecaa0519ead9bcc50b7fcb25bd2185ff6047960f19ccb",
          "completed_at": "2026-07-16T18:20:28Z"
        },
        {
          "id": "notices",
          "action": "substrate.notices",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-16T18:20:28Z",
          "output": {
            "status": "disabled"
          },
          "output_hash": "38b904a1cf83df048360fb2480571b749fd98d57e11f1afdffb5a74a78166fea",
          "completed_at": "2026-07-16T18:20:28Z"
        },
        {
          "id": "goals",
          "action": "substrate.goals",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-16T18:20:28Z",
          "output": {
            "status": "disabled",
            "created": 0,
            "observed": 0,
            "results": []
          },
          "output_hash": "cdfd4de44a28140e686159f34f7b47975954c67e1d1efcef666e985acb136ed8",
          "completed_at": "2026-07-16T18:20:28Z"
        }
      ],
      "completed_at": "2026-07-16T18:20:29Z"
    },
    {
      "id": "WFR-298",
      "schema_version": "1.0",
      "workflow_id": "session.stop",
      "workflow_version": 1,
      "definition_hash": "0cef7bb3e28321be8f85375c154955a69310ce297e47de3f3b8dd48f77a2f07d",
      "plan_hash": "a5e1d77ac734217487fc418e29c7163f4e81178e25d171e70cd4c999d527d3e8",
      "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
      "inputs": {},
      "idempotency_key": "hook:Stop:019f6c28-746a-78e3-8af3-48b82c4d3e51",
      "status": "completed",
      "attempt": 1,
      "created_at": "2026-07-16T18:20:34Z",
      "updated_at": "2026-07-16T18:20:37Z",
      "receipts": [
        {
          "step_id": "state",
          "action": "state.consistency",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "5a1c6e5246defb1b6b6b90ff734db95bece2886b408ab112ed9b8e67222d5568",
          "completed_at": "2026-07-16T18:20:36Z"
        },
        {
          "step_id": "goals",
          "action": "substrate.goals",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "cdfd4de44a28140e686159f34f7b47975954c67e1d1efcef666e985acb136ed8",
          "completed_at": "2026-07-16T18:20:36Z"
        },
        {
          "step_id": "staleness",
          "action": "staleness.audit",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "1e81cb0ffd0a4d04626920a203b38d2d23a264cd43e807a85d375d69cae8a658",
          "completed_at": "2026-07-16T18:20:37Z"
        },
        {
          "step_id": "reflections",
          "action": "reflection.list",
          "input_hash": "0172e841ab4c13b3a4061f073f9d68a716ec87a8a5d52fde41823385e0582573",
          "output_hash": "c1b6b635c0bab21120657277f14ef6f839909875f307a3745fa48aee2bd6e449",
          "completed_at": "2026-07-16T18:20:37Z"
        },
        {
          "step_id": "bundle",
          "action": "reporting.bundle",
          "input_hash": "aed8ebb688dc3c085dd978d7c4120572173c3cb87e75919e4a937dcca6ef9457",
          "output_hash": "a484a5456a5d407836d76b9b74f7eb427eeaa79e812e92fcba6b2d54d1cd16d6",
          "completed_at": "2026-07-16T18:20:37Z"
        },
        {
          "step_id": "delegated",
          "action": "reporting.delegate",
          "input_hash": "ad60f3077afa3f8b437928e37d543485973725e618414d08211d179e6d8473a9",
          "output_hash": "e6085059f197def80ae95add1f328418107bea5436c9bd002530043646a3a95c",
          "completed_at": "2026-07-16T18:20:37Z"
        }
      ],
      "steps": [
        {
          "id": "state",
          "action": "state.consistency",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-16T18:20:35Z",
          "output": {
            "status": "ok",
            "repo_root": "D:\\Projects\\prd-plugin",
            "summary": {
              "errors": 0,
              "warnings": 0,
              "infos": 0
            },
            "findings": []
          },
          "output_hash": "5a1c6e5246defb1b6b6b90ff734db95bece2886b408ab112ed9b8e67222d5568",
          "completed_at": "2026-07-16T18:20:36Z"
        },
        {
          "id": "goals",
          "action": "substrate.goals",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-16T18:20:36Z",
          "output": {
            "status": "disabled",
            "created": 0,
            "observed": 0,
            "results": []
          },
          "output_hash": "cdfd4de44a28140e686159f34f7b47975954c67e1d1efcef666e985acb136ed8",
          "completed_at": "2026-07-16T18:20:36Z"
        },
        {
          "id": "staleness",
          "action": "staleness.audit",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-16T18:20:37Z",
          "output": {
            "status": "ok",
            "repo_root": "D:\\Projects\\prd-plugin",
            "counts": {
              "stale": 0
            },
            "stale": []
          },
          "output_hash": "1e81cb0ffd0a4d04626920a203b38d2d23a264cd43e807a85d375d69cae8a658",
          "completed_at": "2026-07-16T18:20:37Z"
        },
        {
          "id": "reflections",
          "action": "reflection.list",
          "status": "completed",
          "resolved_input_hash": "0172e841ab4c13b3a4061f073f9d68a716ec87a8a5d52fde41823385e0582573",
          "started_at": "2026-07-16T18:20:37Z",
          "output": {
            "enabled": false,
            "on_stop": true,
            "max_questions_per_stop": 5,
            "categories": [
              {
                "id": "behaviour_quality",
                "name": "Behaviour quality",
                "enabled": true,
                "question_count": 3
              },
              {
                "id": "harness_friction",
                "name": "Harness friction",
                "enabled": true,
                "question_count": 2
              }
            ],
            "questions": [
              {
                "id": "RFQ-001",
                "text": "Based on the work you just carried out, would you classify your behaviour as good? Answer yes or no and cite observable evidence.",
                "enabled": true,
                "category_id": "behaviour_quality",
                "category_name": "Behaviour quality",
                "effective_enabled": false
              },
              {
                "id": "RFQ-002",
                "text": "If you answered no, what could you do differently to correct your behaviour?",
                "enabled": true,
                "category_id": "behaviour_quality",
                "category_name": "Behaviour quality",
                "effective_enabled": false
              },
              {
                "id": "RFQ-003",
                "text": "Would another attempt using the identified good behaviours materially improve the outcome? Answer yes or no and state the next corrective action if yes.",
                "enabled": true,
                "category_id": "behaviour_quality",
                "category_name": "Behaviour quality",
                "effective_enabled": false
              },
              {
                "id": "RFQ-004",
                "text": "What harness friction points made this work more difficult?",
                "enabled": true,
                "category_id": "harness_friction",
                "category_name": "Harness friction",
                "effective_enabled": false
              },
              {
                "id": "RFQ-005",
                "text": "What up to three changes would most improve friction in the harness?",
                "enabled": true,
                "category_id": "harness_friction",
                "category_name": "Harness friction",
                "effective_enabled": false
              }
            ]
          },
          "output_hash": "c1b6b635c0bab21120657277f14ef6f839909875f307a3745fa48aee2bd6e449",
          "completed_at": "2026-07-16T18:20:37Z"
        },
        {
          "id": "bundle",
          "action": "reporting.bundle",
          "status": "completed",
          "resolved_input_hash": "aed8ebb688dc3c085dd978d7c4120572173c3cb87e75919e4a937dcca6ef9457",
          "started_at": "2026-07-16T18:20:37Z",
          "output": {
            "contract_version": 1,
            "task": "session_summary",
            "repo": "prd-plugin",
            "policy": {
              "enabled": false,
              "executor": "ai-collab",
              "contract_version": 1,
              "profile": "fast-capable",
              "tasks": [
                "report_summary",
                "session_summary",
                "wiki_synthesis",
                "triage_draft"
              ],
              "fallback": "main",
              "require_source_refs": true,
              "max_input_tokens": 12000,
              "max_output_tokens": 1500,
              "timeout_seconds": 30
            },
            "facts": {
              "requests_by_status": {
                "deferred": 1,
                "implemented": 90,
                "in_review": 1,
                "proposed": 3,
                "rejected": 1
              },
              "active_requests": [
                {
                  "id": "REQ-072",
                  "status": "proposed",
                  "severity": "low",
                  "summary": "opencode run-until-done: session.idle is a non-blocking notification, so the stop guard can't force continuation on opencode (currently degrades to a printed reminder, 0.5.95). Investigate whether opencode exposes any vetoable/continuation mechanism (a different event, a permission hook, or a 'continue' API) to enforce run-until-done, or accept the reminder as the permanent ceiling. Low priority — user rarely uses opencode."
                },
                {
                  "id": "REQ-104",
                  "status": "in_review",
                  "severity": "high",
                  "summary": "Ordinary-workspace chat has no path into the planning pipeline: owner-approved collaboration decisions land in scratchpads, room agents cannot allocate REQ/PRD/TRK ids past the parallel-worker mutation boundary, and goal-administrator grants detach when participant identity changes on runner restart"
                },
                {
                  "id": "REQ-107",
                  "status": "proposed",
                  "severity": "high",
                  "summary": "Adopt the UTCP-first tool architecture (user-directed): one UTCP manual is the source of truth for ALL prd-plugin tools including mutations, the MCP surface is generated by the official @utcp/mcp-bridge, and the 2,323-line hand-written MCP server is retired as a hand-maintained surface"
                },
                {
                  "id": "REQ-113",
                  "status": "proposed",
                  "severity": "low",
                  "summary": "Request-thread close has no validated tool: finished threads stay 'unresolved' in message_check forever unless state is hand-flipped; add a thread-close capability to the UTCP-first tool catalog (REQ-107), not as a new hand-written MCP handler"
                }
              ],
              "active_tracking": [],
              "open_health": [],
              "evidence_count": 127,
              "decision_count": 10
            },
            "findings": [],
            "source_refs": [
              ".prd_plugin/config.json",
              ".prd_plugin/state/decisions.json",
              ".prd_plugin/state/evidence.json",
              ".prd_plugin/state/health.json",
              ".prd_plugin/state/requests.json",
              ".prd_plugin/state/tracking.json",
              "REQ-072",
              "REQ-104",
              "REQ-107",
              "REQ-113"
            ],
            "constraints": {
              "max_input_tokens": 12000,
              "max_output_tokens": 1500,
              "timeout_seconds": 30,
              "require_source_refs": true,
              "no_project_state_writes": true,
              "no_secrets_or_local_session_content": true
            }
          },
          "output_hash": "a484a5456a5d407836d76b9b74f7eb427eeaa79e812e92fcba6b2d54d1cd16d6",
          "completed_at": "2026-07-16T18:20:37Z"
        },
        {
          "id": "delegated",
          "action": "reporting.delegate",
          "status": "completed",
          "resolved_input_hash": "ad60f3077afa3f8b437928e37d543485973725e618414d08211d179e6d8473a9",
          "started_at": "2026-07-16T18:20:37Z",
          "output": {
            "status": "fallback",
            "action": "main",
            "reason": "disabled"
          },
          "output_hash": "e6085059f197def80ae95add1f328418107bea5436c9bd002530043646a3a95c",
          "completed_at": "2026-07-16T18:20:37Z"
        }
      ],
      "completed_at": "2026-07-16T18:20:37Z"
    },
    {
      "id": "WFR-299",
      "schema_version": "1.0",
      "workflow_id": "session.start",
      "workflow_version": 1,
      "definition_hash": "d0f98da02571e6dd27fec4aed92d3c82af9db75f8b90b997bf665635c7b7f6ca",
      "plan_hash": "b5072615ca3b7e9a3bd85d50d1f069d99ef2a9816b32c03a370745ed7a205536",
      "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
      "inputs": {},
      "idempotency_key": "hook:SessionStart:019f6c4d-f7f7-73d1-9499-db5186c19dbf",
      "status": "completed",
      "attempt": 1,
      "created_at": "2026-07-16T19:01:21Z",
      "updated_at": "2026-07-16T19:01:23Z",
      "receipts": [
        {
          "step_id": "config",
          "action": "config.audit",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "e8f5630220d3e8b26c18a52fd81e19f1b570f8f33a5daaff9c38eb8a62693c22",
          "completed_at": "2026-07-16T19:01:21Z"
        },
        {
          "step_id": "services",
          "action": "services.audit",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "13dcc58bd528f3efa3e6e0fa0853a6eedc376f1f3685fbd4869cbb2b60382ee3",
          "completed_at": "2026-07-16T19:01:21Z"
        },
        {
          "step_id": "state",
          "action": "state.consistency",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "5a1c6e5246defb1b6b6b90ff734db95bece2886b408ab112ed9b8e67222d5568",
          "completed_at": "2026-07-16T19:01:22Z"
        },
        {
          "step_id": "status",
          "action": "state.query",
          "input_hash": "a15231a2142a2a9a85355a8b9cbbccffe01a9c9c2c2fd8c2bc2987cdc481564a",
          "output_hash": "cda36b57b665a1052e4f88d6c67a65f32bca9d509dc3f34b54fcefd4b2bda2db",
          "completed_at": "2026-07-16T19:01:23Z"
        },
        {
          "step_id": "substrate",
          "action": "substrate.preflight",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "a6df426290b4549a59eecaa0519ead9bcc50b7fcb25bd2185ff6047960f19ccb",
          "completed_at": "2026-07-16T19:01:23Z"
        },
        {
          "step_id": "notices",
          "action": "substrate.notices",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "38b904a1cf83df048360fb2480571b749fd98d57e11f1afdffb5a74a78166fea",
          "completed_at": "2026-07-16T19:01:23Z"
        },
        {
          "step_id": "goals",
          "action": "substrate.goals",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "cdfd4de44a28140e686159f34f7b47975954c67e1d1efcef666e985acb136ed8",
          "completed_at": "2026-07-16T19:01:23Z"
        }
      ],
      "steps": [
        {
          "id": "config",
          "action": "config.audit",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-16T19:01:21Z",
          "output": {
            "status": "ok",
            "summary": {
              "settings": 196,
              "mutable": 187,
              "read_only_or_managed": 9,
              "unclassified": 0,
              "unknown": 0,
              "invalid": 0,
              "missing_using_defaults": 0
            },
            "unclassified_keys": [],
            "unknown_keys": [],
            "invalid_values": [],
            "missing_using_defaults": []
          },
          "output_hash": "e8f5630220d3e8b26c18a52fd81e19f1b570f8f33a5daaff9c38eb8a62693c22",
          "completed_at": "2026-07-16T19:01:21Z"
        },
        {
          "id": "services",
          "action": "services.audit",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-16T19:01:21Z",
          "output": {
            "status": "ok",
            "summary": {
              "critical": 0,
              "high": 0,
              "medium": 0,
              "low": 0
            },
            "findings": []
          },
          "output_hash": "13dcc58bd528f3efa3e6e0fa0853a6eedc376f1f3685fbd4869cbb2b60382ee3",
          "completed_at": "2026-07-16T19:01:21Z"
        },
        {
          "id": "state",
          "action": "state.consistency",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-16T19:01:21Z",
          "output": {
            "status": "ok",
            "repo_root": "D:\\Projects\\prd-plugin",
            "summary": {
              "errors": 0,
              "warnings": 0,
              "infos": 0
            },
            "findings": []
          },
          "output_hash": "5a1c6e5246defb1b6b6b90ff734db95bece2886b408ab112ed9b8e67222d5568",
          "completed_at": "2026-07-16T19:01:22Z"
        },
        {
          "id": "status",
          "action": "state.query",
          "status": "completed",
          "resolved_input_hash": "a15231a2142a2a9a85355a8b9cbbccffe01a9c9c2c2fd8c2bc2987cdc481564a",
          "started_at": "2026-07-16T19:01:23Z",
          "output": {
            "repo_root": "D:\\Projects\\prd-plugin",
            "autonomy_level": "autonomous",
            "requests_by_status": {
              "deferred": 1,
              "implemented": 90,
              "in_review": 1,
              "proposed": 3,
              "rejected": 1
            },
            "active_tracking": [],
            "tracking_branches": [],
            "tracking_branch_counts": {},
            "tracking_branch_errors": [],
            "open_health": [],
            "stale_count": 0,
            "skill_usage": {
              "project-decision-policy": 1,
              "project-request-intake": 1,
              "project-test-driven-implementation": 1,
              "project-verification-before-completion": 1,
              "project-llm-wiki": 1
            },
            "wiki_backfill_pending": false,
            "version_update": null
          },
          "output_hash": "cda36b57b665a1052e4f88d6c67a65f32bca9d509dc3f34b54fcefd4b2bda2db",
          "completed_at": "2026-07-16T19:01:23Z"
        },
        {
          "id": "substrate",
          "action": "substrate.preflight",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-16T19:01:23Z",
          "output": {
            "status": "disabled",
            "services": {
              "status": "ok",
              "summary": {
                "critical": 0,
                "high": 0,
                "medium": 0,
                "low": 0
              },
              "findings": []
            },
            "policy": {
              "configured": {
                "enabled": false,
                "mode": "off",
                "capabilities": [
                  "records",
                  "graph",
                  "events"
                ],
                "contract_version": 2,
                "require_source_refs": true,
                "endpoint": "http://127.0.0.1:47124",
                "manual_url": "http://127.0.0.1:47124/utcp.json",
                "knowledge_browse_url": "http://127.0.0.1:5276",
                "auth_env": "AI_COLLAB_API_KEY",
                "timeout_seconds": 5,
                "max_result_bytes": 1048576,
                "cache_ttl_seconds": 60,
                "fallback": "local",
                "automation": {
                  "discovery_on_session_start": true,
                  "knowledge_recall": true,
                  "memory_recall": true,
                  "context_enrichment": true,
                  "notices_on_session_start": false,
                  "goals_sync": false,
                  "telemetry_on_maintenance": false,
                  "reporting_dispatch": true,
                  "judgment_dispatch": true,
                  "verification_execution": true
                }
              },
              "active": false,
              "effective_mode": "off",
              "effective_capabilities": []
            }
          },
          "output_hash": "a6df426290b4549a59eecaa0519ead9bcc50b7fcb25bd2185ff6047960f19ccb",
          "completed_at": "2026-07-16T19:01:23Z"
        },
        {
          "id": "notices",
          "action": "substrate.notices",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-16T19:01:23Z",
          "output": {
            "status": "disabled"
          },
          "output_hash": "38b904a1cf83df048360fb2480571b749fd98d57e11f1afdffb5a74a78166fea",
          "completed_at": "2026-07-16T19:01:23Z"
        },
        {
          "id": "goals",
          "action": "substrate.goals",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-16T19:01:23Z",
          "output": {
            "status": "disabled",
            "created": 0,
            "observed": 0,
            "results": []
          },
          "output_hash": "cdfd4de44a28140e686159f34f7b47975954c67e1d1efcef666e985acb136ed8",
          "completed_at": "2026-07-16T19:01:23Z"
        }
      ],
      "completed_at": "2026-07-16T19:01:23Z"
    },
    {
      "id": "WFR-300",
      "schema_version": "1.0",
      "workflow_id": "session.stop",
      "workflow_version": 1,
      "definition_hash": "0cef7bb3e28321be8f85375c154955a69310ce297e47de3f3b8dd48f77a2f07d",
      "plan_hash": "a5e1d77ac734217487fc418e29c7163f4e81178e25d171e70cd4c999d527d3e8",
      "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
      "inputs": {},
      "idempotency_key": "hook:Stop:019f6c4d-f7f7-73d1-9499-db5186c19dbf",
      "status": "completed",
      "attempt": 1,
      "created_at": "2026-07-16T19:02:39Z",
      "updated_at": "2026-07-16T19:02:42Z",
      "receipts": [
        {
          "step_id": "state",
          "action": "state.consistency",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "5a1c6e5246defb1b6b6b90ff734db95bece2886b408ab112ed9b8e67222d5568",
          "completed_at": "2026-07-16T19:02:40Z"
        },
        {
          "step_id": "goals",
          "action": "substrate.goals",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "cdfd4de44a28140e686159f34f7b47975954c67e1d1efcef666e985acb136ed8",
          "completed_at": "2026-07-16T19:02:41Z"
        },
        {
          "step_id": "staleness",
          "action": "staleness.audit",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "1e81cb0ffd0a4d04626920a203b38d2d23a264cd43e807a85d375d69cae8a658",
          "completed_at": "2026-07-16T19:02:41Z"
        },
        {
          "step_id": "reflections",
          "action": "reflection.list",
          "input_hash": "0172e841ab4c13b3a4061f073f9d68a716ec87a8a5d52fde41823385e0582573",
          "output_hash": "c1b6b635c0bab21120657277f14ef6f839909875f307a3745fa48aee2bd6e449",
          "completed_at": "2026-07-16T19:02:41Z"
        },
        {
          "step_id": "bundle",
          "action": "reporting.bundle",
          "input_hash": "aed8ebb688dc3c085dd978d7c4120572173c3cb87e75919e4a937dcca6ef9457",
          "output_hash": "a484a5456a5d407836d76b9b74f7eb427eeaa79e812e92fcba6b2d54d1cd16d6",
          "completed_at": "2026-07-16T19:02:41Z"
        },
        {
          "step_id": "delegated",
          "action": "reporting.delegate",
          "input_hash": "ad60f3077afa3f8b437928e37d543485973725e618414d08211d179e6d8473a9",
          "output_hash": "e6085059f197def80ae95add1f328418107bea5436c9bd002530043646a3a95c",
          "completed_at": "2026-07-16T19:02:42Z"
        }
      ],
      "steps": [
        {
          "id": "state",
          "action": "state.consistency",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-16T19:02:39Z",
          "output": {
            "status": "ok",
            "repo_root": "D:\\Projects\\prd-plugin",
            "summary": {
              "errors": 0,
              "warnings": 0,
              "infos": 0
            },
            "findings": []
          },
          "output_hash": "5a1c6e5246defb1b6b6b90ff734db95bece2886b408ab112ed9b8e67222d5568",
          "completed_at": "2026-07-16T19:02:40Z"
        },
        {
          "id": "goals",
          "action": "substrate.goals",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-16T19:02:41Z",
          "output": {
            "status": "disabled",
            "created": 0,
            "observed": 0,
            "results": []
          },
          "output_hash": "cdfd4de44a28140e686159f34f7b47975954c67e1d1efcef666e985acb136ed8",
          "completed_at": "2026-07-16T19:02:41Z"
        },
        {
          "id": "staleness",
          "action": "staleness.audit",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-16T19:02:41Z",
          "output": {
            "status": "ok",
            "repo_root": "D:\\Projects\\prd-plugin",
            "counts": {
              "stale": 0
            },
            "stale": []
          },
          "output_hash": "1e81cb0ffd0a4d04626920a203b38d2d23a264cd43e807a85d375d69cae8a658",
          "completed_at": "2026-07-16T19:02:41Z"
        },
        {
          "id": "reflections",
          "action": "reflection.list",
          "status": "completed",
          "resolved_input_hash": "0172e841ab4c13b3a4061f073f9d68a716ec87a8a5d52fde41823385e0582573",
          "started_at": "2026-07-16T19:02:41Z",
          "output": {
            "enabled": false,
            "on_stop": true,
            "max_questions_per_stop": 5,
            "categories": [
              {
                "id": "behaviour_quality",
                "name": "Behaviour quality",
                "enabled": true,
                "question_count": 3
              },
              {
                "id": "harness_friction",
                "name": "Harness friction",
                "enabled": true,
                "question_count": 2
              }
            ],
            "questions": [
              {
                "id": "RFQ-001",
                "text": "Based on the work you just carried out, would you classify your behaviour as good? Answer yes or no and cite observable evidence.",
                "enabled": true,
                "category_id": "behaviour_quality",
                "category_name": "Behaviour quality",
                "effective_enabled": false
              },
              {
                "id": "RFQ-002",
                "text": "If you answered no, what could you do differently to correct your behaviour?",
                "enabled": true,
                "category_id": "behaviour_quality",
                "category_name": "Behaviour quality",
                "effective_enabled": false
              },
              {
                "id": "RFQ-003",
                "text": "Would another attempt using the identified good behaviours materially improve the outcome? Answer yes or no and state the next corrective action if yes.",
                "enabled": true,
                "category_id": "behaviour_quality",
                "category_name": "Behaviour quality",
                "effective_enabled": false
              },
              {
                "id": "RFQ-004",
                "text": "What harness friction points made this work more difficult?",
                "enabled": true,
                "category_id": "harness_friction",
                "category_name": "Harness friction",
                "effective_enabled": false
              },
              {
                "id": "RFQ-005",
                "text": "What up to three changes would most improve friction in the harness?",
                "enabled": true,
                "category_id": "harness_friction",
                "category_name": "Harness friction",
                "effective_enabled": false
              }
            ]
          },
          "output_hash": "c1b6b635c0bab21120657277f14ef6f839909875f307a3745fa48aee2bd6e449",
          "completed_at": "2026-07-16T19:02:41Z"
        },
        {
          "id": "bundle",
          "action": "reporting.bundle",
          "status": "completed",
          "resolved_input_hash": "aed8ebb688dc3c085dd978d7c4120572173c3cb87e75919e4a937dcca6ef9457",
          "started_at": "2026-07-16T19:02:41Z",
          "output": {
            "contract_version": 1,
            "task": "session_summary",
            "repo": "prd-plugin",
            "policy": {
              "enabled": false,
              "executor": "ai-collab",
              "contract_version": 1,
              "profile": "fast-capable",
              "tasks": [
                "report_summary",
                "session_summary",
                "wiki_synthesis",
                "triage_draft"
              ],
              "fallback": "main",
              "require_source_refs": true,
              "max_input_tokens": 12000,
              "max_output_tokens": 1500,
              "timeout_seconds": 30
            },
            "facts": {
              "requests_by_status": {
                "deferred": 1,
                "implemented": 90,
                "in_review": 1,
                "proposed": 3,
                "rejected": 1
              },
              "active_requests": [
                {
                  "id": "REQ-072",
                  "status": "proposed",
                  "severity": "low",
                  "summary": "opencode run-until-done: session.idle is a non-blocking notification, so the stop guard can't force continuation on opencode (currently degrades to a printed reminder, 0.5.95). Investigate whether opencode exposes any vetoable/continuation mechanism (a different event, a permission hook, or a 'continue' API) to enforce run-until-done, or accept the reminder as the permanent ceiling. Low priority — user rarely uses opencode."
                },
                {
                  "id": "REQ-104",
                  "status": "in_review",
                  "severity": "high",
                  "summary": "Ordinary-workspace chat has no path into the planning pipeline: owner-approved collaboration decisions land in scratchpads, room agents cannot allocate REQ/PRD/TRK ids past the parallel-worker mutation boundary, and goal-administrator grants detach when participant identity changes on runner restart"
                },
                {
                  "id": "REQ-107",
                  "status": "proposed",
                  "severity": "high",
                  "summary": "Adopt the UTCP-first tool architecture (user-directed): one UTCP manual is the source of truth for ALL prd-plugin tools including mutations, the MCP surface is generated by the official @utcp/mcp-bridge, and the 2,323-line hand-written MCP server is retired as a hand-maintained surface"
                },
                {
                  "id": "REQ-113",
                  "status": "proposed",
                  "severity": "low",
                  "summary": "Request-thread close has no validated tool: finished threads stay 'unresolved' in message_check forever unless state is hand-flipped; add a thread-close capability to the UTCP-first tool catalog (REQ-107), not as a new hand-written MCP handler"
                }
              ],
              "active_tracking": [],
              "open_health": [],
              "evidence_count": 127,
              "decision_count": 10
            },
            "findings": [],
            "source_refs": [
              ".prd_plugin/config.json",
              ".prd_plugin/state/decisions.json",
              ".prd_plugin/state/evidence.json",
              ".prd_plugin/state/health.json",
              ".prd_plugin/state/requests.json",
              ".prd_plugin/state/tracking.json",
              "REQ-072",
              "REQ-104",
              "REQ-107",
              "REQ-113"
            ],
            "constraints": {
              "max_input_tokens": 12000,
              "max_output_tokens": 1500,
              "timeout_seconds": 30,
              "require_source_refs": true,
              "no_project_state_writes": true,
              "no_secrets_or_local_session_content": true
            }
          },
          "output_hash": "a484a5456a5d407836d76b9b74f7eb427eeaa79e812e92fcba6b2d54d1cd16d6",
          "completed_at": "2026-07-16T19:02:41Z"
        },
        {
          "id": "delegated",
          "action": "reporting.delegate",
          "status": "completed",
          "resolved_input_hash": "ad60f3077afa3f8b437928e37d543485973725e618414d08211d179e6d8473a9",
          "started_at": "2026-07-16T19:02:42Z",
          "output": {
            "status": "fallback",
            "action": "main",
            "reason": "disabled"
          },
          "output_hash": "e6085059f197def80ae95add1f328418107bea5436c9bd002530043646a3a95c",
          "completed_at": "2026-07-16T19:02:42Z"
        }
      ],
      "completed_at": "2026-07-16T19:02:42Z"
    },
    {
      "id": "WFR-301",
      "schema_version": "1.0",
      "workflow_id": "session.start",
      "workflow_version": 1,
      "definition_hash": "d0f98da02571e6dd27fec4aed92d3c82af9db75f8b90b997bf665635c7b7f6ca",
      "plan_hash": "b5072615ca3b7e9a3bd85d50d1f069d99ef2a9816b32c03a370745ed7a205536",
      "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
      "inputs": {},
      "idempotency_key": "hook:SessionStart:019f6c4f-8f7b-79c3-9f44-b2c24c5cd0b3",
      "status": "completed",
      "attempt": 1,
      "created_at": "2026-07-16T19:03:05Z",
      "updated_at": "2026-07-16T19:03:07Z",
      "receipts": [
        {
          "step_id": "config",
          "action": "config.audit",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "e8f5630220d3e8b26c18a52fd81e19f1b570f8f33a5daaff9c38eb8a62693c22",
          "completed_at": "2026-07-16T19:03:05Z"
        },
        {
          "step_id": "services",
          "action": "services.audit",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "13dcc58bd528f3efa3e6e0fa0853a6eedc376f1f3685fbd4869cbb2b60382ee3",
          "completed_at": "2026-07-16T19:03:05Z"
        },
        {
          "step_id": "state",
          "action": "state.consistency",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "5a1c6e5246defb1b6b6b90ff734db95bece2886b408ab112ed9b8e67222d5568",
          "completed_at": "2026-07-16T19:03:06Z"
        },
        {
          "step_id": "status",
          "action": "state.query",
          "input_hash": "a15231a2142a2a9a85355a8b9cbbccffe01a9c9c2c2fd8c2bc2987cdc481564a",
          "output_hash": "cda36b57b665a1052e4f88d6c67a65f32bca9d509dc3f34b54fcefd4b2bda2db",
          "completed_at": "2026-07-16T19:03:06Z"
        },
        {
          "step_id": "substrate",
          "action": "substrate.preflight",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "a6df426290b4549a59eecaa0519ead9bcc50b7fcb25bd2185ff6047960f19ccb",
          "completed_at": "2026-07-16T19:03:07Z"
        },
        {
          "step_id": "notices",
          "action": "substrate.notices",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "38b904a1cf83df048360fb2480571b749fd98d57e11f1afdffb5a74a78166fea",
          "completed_at": "2026-07-16T19:03:07Z"
        },
        {
          "step_id": "goals",
          "action": "substrate.goals",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "cdfd4de44a28140e686159f34f7b47975954c67e1d1efcef666e985acb136ed8",
          "completed_at": "2026-07-16T19:03:07Z"
        }
      ],
      "steps": [
        {
          "id": "config",
          "action": "config.audit",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-16T19:03:05Z",
          "output": {
            "status": "ok",
            "summary": {
              "settings": 196,
              "mutable": 187,
              "read_only_or_managed": 9,
              "unclassified": 0,
              "unknown": 0,
              "invalid": 0,
              "missing_using_defaults": 0
            },
            "unclassified_keys": [],
            "unknown_keys": [],
            "invalid_values": [],
            "missing_using_defaults": []
          },
          "output_hash": "e8f5630220d3e8b26c18a52fd81e19f1b570f8f33a5daaff9c38eb8a62693c22",
          "completed_at": "2026-07-16T19:03:05Z"
        },
        {
          "id": "services",
          "action": "services.audit",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-16T19:03:05Z",
          "output": {
            "status": "ok",
            "summary": {
              "critical": 0,
              "high": 0,
              "medium": 0,
              "low": 0
            },
            "findings": []
          },
          "output_hash": "13dcc58bd528f3efa3e6e0fa0853a6eedc376f1f3685fbd4869cbb2b60382ee3",
          "completed_at": "2026-07-16T19:03:05Z"
        },
        {
          "id": "state",
          "action": "state.consistency",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-16T19:03:05Z",
          "output": {
            "status": "ok",
            "repo_root": "D:\\Projects\\prd-plugin",
            "summary": {
              "errors": 0,
              "warnings": 0,
              "infos": 0
            },
            "findings": []
          },
          "output_hash": "5a1c6e5246defb1b6b6b90ff734db95bece2886b408ab112ed9b8e67222d5568",
          "completed_at": "2026-07-16T19:03:06Z"
        },
        {
          "id": "status",
          "action": "state.query",
          "status": "completed",
          "resolved_input_hash": "a15231a2142a2a9a85355a8b9cbbccffe01a9c9c2c2fd8c2bc2987cdc481564a",
          "started_at": "2026-07-16T19:03:06Z",
          "output": {
            "repo_root": "D:\\Projects\\prd-plugin",
            "autonomy_level": "autonomous",
            "requests_by_status": {
              "deferred": 1,
              "implemented": 90,
              "in_review": 1,
              "proposed": 3,
              "rejected": 1
            },
            "active_tracking": [],
            "tracking_branches": [],
            "tracking_branch_counts": {},
            "tracking_branch_errors": [],
            "open_health": [],
            "stale_count": 0,
            "skill_usage": {
              "project-decision-policy": 1,
              "project-request-intake": 1,
              "project-test-driven-implementation": 1,
              "project-verification-before-completion": 1,
              "project-llm-wiki": 1
            },
            "wiki_backfill_pending": false,
            "version_update": null
          },
          "output_hash": "cda36b57b665a1052e4f88d6c67a65f32bca9d509dc3f34b54fcefd4b2bda2db",
          "completed_at": "2026-07-16T19:03:06Z"
        },
        {
          "id": "substrate",
          "action": "substrate.preflight",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-16T19:03:06Z",
          "output": {
            "status": "disabled",
            "services": {
              "status": "ok",
              "summary": {
                "critical": 0,
                "high": 0,
                "medium": 0,
                "low": 0
              },
              "findings": []
            },
            "policy": {
              "configured": {
                "enabled": false,
                "mode": "off",
                "capabilities": [
                  "records",
                  "graph",
                  "events"
                ],
                "contract_version": 2,
                "require_source_refs": true,
                "endpoint": "http://127.0.0.1:47124",
                "manual_url": "http://127.0.0.1:47124/utcp.json",
                "knowledge_browse_url": "http://127.0.0.1:5276",
                "auth_env": "AI_COLLAB_API_KEY",
                "timeout_seconds": 5,
                "max_result_bytes": 1048576,
                "cache_ttl_seconds": 60,
                "fallback": "local",
                "automation": {
                  "discovery_on_session_start": true,
                  "knowledge_recall": true,
                  "memory_recall": true,
                  "context_enrichment": true,
                  "notices_on_session_start": false,
                  "goals_sync": false,
                  "telemetry_on_maintenance": false,
                  "reporting_dispatch": true,
                  "judgment_dispatch": true,
                  "verification_execution": true
                }
              },
              "active": false,
              "effective_mode": "off",
              "effective_capabilities": []
            }
          },
          "output_hash": "a6df426290b4549a59eecaa0519ead9bcc50b7fcb25bd2185ff6047960f19ccb",
          "completed_at": "2026-07-16T19:03:07Z"
        },
        {
          "id": "notices",
          "action": "substrate.notices",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-16T19:03:07Z",
          "output": {
            "status": "disabled"
          },
          "output_hash": "38b904a1cf83df048360fb2480571b749fd98d57e11f1afdffb5a74a78166fea",
          "completed_at": "2026-07-16T19:03:07Z"
        },
        {
          "id": "goals",
          "action": "substrate.goals",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-16T19:03:07Z",
          "output": {
            "status": "disabled",
            "created": 0,
            "observed": 0,
            "results": []
          },
          "output_hash": "cdfd4de44a28140e686159f34f7b47975954c67e1d1efcef666e985acb136ed8",
          "completed_at": "2026-07-16T19:03:07Z"
        }
      ],
      "completed_at": "2026-07-16T19:03:07Z"
    },
    {
      "id": "WFR-302",
      "schema_version": "1.0",
      "workflow_id": "session.stop",
      "workflow_version": 1,
      "definition_hash": "0cef7bb3e28321be8f85375c154955a69310ce297e47de3f3b8dd48f77a2f07d",
      "plan_hash": "a5e1d77ac734217487fc418e29c7163f4e81178e25d171e70cd4c999d527d3e8",
      "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
      "inputs": {},
      "idempotency_key": "hook:Stop:019f6c4f-8f7b-79c3-9f44-b2c24c5cd0b3",
      "status": "completed",
      "attempt": 1,
      "created_at": "2026-07-16T19:03:12Z",
      "updated_at": "2026-07-16T19:03:14Z",
      "receipts": [
        {
          "step_id": "state",
          "action": "state.consistency",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "5a1c6e5246defb1b6b6b90ff734db95bece2886b408ab112ed9b8e67222d5568",
          "completed_at": "2026-07-16T19:03:13Z"
        },
        {
          "step_id": "goals",
          "action": "substrate.goals",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "cdfd4de44a28140e686159f34f7b47975954c67e1d1efcef666e985acb136ed8",
          "completed_at": "2026-07-16T19:03:14Z"
        },
        {
          "step_id": "staleness",
          "action": "staleness.audit",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "1e81cb0ffd0a4d04626920a203b38d2d23a264cd43e807a85d375d69cae8a658",
          "completed_at": "2026-07-16T19:03:14Z"
        },
        {
          "step_id": "reflections",
          "action": "reflection.list",
          "input_hash": "0172e841ab4c13b3a4061f073f9d68a716ec87a8a5d52fde41823385e0582573",
          "output_hash": "c1b6b635c0bab21120657277f14ef6f839909875f307a3745fa48aee2bd6e449",
          "completed_at": "2026-07-16T19:03:14Z"
        },
        {
          "step_id": "bundle",
          "action": "reporting.bundle",
          "input_hash": "aed8ebb688dc3c085dd978d7c4120572173c3cb87e75919e4a937dcca6ef9457",
          "output_hash": "a484a5456a5d407836d76b9b74f7eb427eeaa79e812e92fcba6b2d54d1cd16d6",
          "completed_at": "2026-07-16T19:03:14Z"
        },
        {
          "step_id": "delegated",
          "action": "reporting.delegate",
          "input_hash": "ad60f3077afa3f8b437928e37d543485973725e618414d08211d179e6d8473a9",
          "output_hash": "e6085059f197def80ae95add1f328418107bea5436c9bd002530043646a3a95c",
          "completed_at": "2026-07-16T19:03:14Z"
        }
      ],
      "steps": [
        {
          "id": "state",
          "action": "state.consistency",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-16T19:03:13Z",
          "output": {
            "status": "ok",
            "repo_root": "D:\\Projects\\prd-plugin",
            "summary": {
              "errors": 0,
              "warnings": 0,
              "infos": 0
            },
            "findings": []
          },
          "output_hash": "5a1c6e5246defb1b6b6b90ff734db95bece2886b408ab112ed9b8e67222d5568",
          "completed_at": "2026-07-16T19:03:13Z"
        },
        {
          "id": "goals",
          "action": "substrate.goals",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-16T19:03:13Z",
          "output": {
            "status": "disabled",
            "created": 0,
            "observed": 0,
            "results": []
          },
          "output_hash": "cdfd4de44a28140e686159f34f7b47975954c67e1d1efcef666e985acb136ed8",
          "completed_at": "2026-07-16T19:03:14Z"
        },
        {
          "id": "staleness",
          "action": "staleness.audit",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-16T19:03:14Z",
          "output": {
            "status": "ok",
            "repo_root": "D:\\Projects\\prd-plugin",
            "counts": {
              "stale": 0
            },
            "stale": []
          },
          "output_hash": "1e81cb0ffd0a4d04626920a203b38d2d23a264cd43e807a85d375d69cae8a658",
          "completed_at": "2026-07-16T19:03:14Z"
        },
        {
          "id": "reflections",
          "action": "reflection.list",
          "status": "completed",
          "resolved_input_hash": "0172e841ab4c13b3a4061f073f9d68a716ec87a8a5d52fde41823385e0582573",
          "started_at": "2026-07-16T19:03:14Z",
          "output": {
            "enabled": false,
            "on_stop": true,
            "max_questions_per_stop": 5,
            "categories": [
              {
                "id": "behaviour_quality",
                "name": "Behaviour quality",
                "enabled": true,
                "question_count": 3
              },
              {
                "id": "harness_friction",
                "name": "Harness friction",
                "enabled": true,
                "question_count": 2
              }
            ],
            "questions": [
              {
                "id": "RFQ-001",
                "text": "Based on the work you just carried out, would you classify your behaviour as good? Answer yes or no and cite observable evidence.",
                "enabled": true,
                "category_id": "behaviour_quality",
                "category_name": "Behaviour quality",
                "effective_enabled": false
              },
              {
                "id": "RFQ-002",
                "text": "If you answered no, what could you do differently to correct your behaviour?",
                "enabled": true,
                "category_id": "behaviour_quality",
                "category_name": "Behaviour quality",
                "effective_enabled": false
              },
              {
                "id": "RFQ-003",
                "text": "Would another attempt using the identified good behaviours materially improve the outcome? Answer yes or no and state the next corrective action if yes.",
                "enabled": true,
                "category_id": "behaviour_quality",
                "category_name": "Behaviour quality",
                "effective_enabled": false
              },
              {
                "id": "RFQ-004",
                "text": "What harness friction points made this work more difficult?",
                "enabled": true,
                "category_id": "harness_friction",
                "category_name": "Harness friction",
                "effective_enabled": false
              },
              {
                "id": "RFQ-005",
                "text": "What up to three changes would most improve friction in the harness?",
                "enabled": true,
                "category_id": "harness_friction",
                "category_name": "Harness friction",
                "effective_enabled": false
              }
            ]
          },
          "output_hash": "c1b6b635c0bab21120657277f14ef6f839909875f307a3745fa48aee2bd6e449",
          "completed_at": "2026-07-16T19:03:14Z"
        },
        {
          "id": "bundle",
          "action": "reporting.bundle",
          "status": "completed",
          "resolved_input_hash": "aed8ebb688dc3c085dd978d7c4120572173c3cb87e75919e4a937dcca6ef9457",
          "started_at": "2026-07-16T19:03:14Z",
          "output": {
            "contract_version": 1,
            "task": "session_summary",
            "repo": "prd-plugin",
            "policy": {
              "enabled": false,
              "executor": "ai-collab",
              "contract_version": 1,
              "profile": "fast-capable",
              "tasks": [
                "report_summary",
                "session_summary",
                "wiki_synthesis",
                "triage_draft"
              ],
              "fallback": "main",
              "require_source_refs": true,
              "max_input_tokens": 12000,
              "max_output_tokens": 1500,
              "timeout_seconds": 30
            },
            "facts": {
              "requests_by_status": {
                "deferred": 1,
                "implemented": 90,
                "in_review": 1,
                "proposed": 3,
                "rejected": 1
              },
              "active_requests": [
                {
                  "id": "REQ-072",
                  "status": "proposed",
                  "severity": "low",
                  "summary": "opencode run-until-done: session.idle is a non-blocking notification, so the stop guard can't force continuation on opencode (currently degrades to a printed reminder, 0.5.95). Investigate whether opencode exposes any vetoable/continuation mechanism (a different event, a permission hook, or a 'continue' API) to enforce run-until-done, or accept the reminder as the permanent ceiling. Low priority — user rarely uses opencode."
                },
                {
                  "id": "REQ-104",
                  "status": "in_review",
                  "severity": "high",
                  "summary": "Ordinary-workspace chat has no path into the planning pipeline: owner-approved collaboration decisions land in scratchpads, room agents cannot allocate REQ/PRD/TRK ids past the parallel-worker mutation boundary, and goal-administrator grants detach when participant identity changes on runner restart"
                },
                {
                  "id": "REQ-107",
                  "status": "proposed",
                  "severity": "high",
                  "summary": "Adopt the UTCP-first tool architecture (user-directed): one UTCP manual is the source of truth for ALL prd-plugin tools including mutations, the MCP surface is generated by the official @utcp/mcp-bridge, and the 2,323-line hand-written MCP server is retired as a hand-maintained surface"
                },
                {
                  "id": "REQ-113",
                  "status": "proposed",
                  "severity": "low",
                  "summary": "Request-thread close has no validated tool: finished threads stay 'unresolved' in message_check forever unless state is hand-flipped; add a thread-close capability to the UTCP-first tool catalog (REQ-107), not as a new hand-written MCP handler"
                }
              ],
              "active_tracking": [],
              "open_health": [],
              "evidence_count": 127,
              "decision_count": 10
            },
            "findings": [],
            "source_refs": [
              ".prd_plugin/config.json",
              ".prd_plugin/state/decisions.json",
              ".prd_plugin/state/evidence.json",
              ".prd_plugin/state/health.json",
              ".prd_plugin/state/requests.json",
              ".prd_plugin/state/tracking.json",
              "REQ-072",
              "REQ-104",
              "REQ-107",
              "REQ-113"
            ],
            "constraints": {
              "max_input_tokens": 12000,
              "max_output_tokens": 1500,
              "timeout_seconds": 30,
              "require_source_refs": true,
              "no_project_state_writes": true,
              "no_secrets_or_local_session_content": true
            }
          },
          "output_hash": "a484a5456a5d407836d76b9b74f7eb427eeaa79e812e92fcba6b2d54d1cd16d6",
          "completed_at": "2026-07-16T19:03:14Z"
        },
        {
          "id": "delegated",
          "action": "reporting.delegate",
          "status": "completed",
          "resolved_input_hash": "ad60f3077afa3f8b437928e37d543485973725e618414d08211d179e6d8473a9",
          "started_at": "2026-07-16T19:03:14Z",
          "output": {
            "status": "fallback",
            "action": "main",
            "reason": "disabled"
          },
          "output_hash": "e6085059f197def80ae95add1f328418107bea5436c9bd002530043646a3a95c",
          "completed_at": "2026-07-16T19:03:14Z"
        }
      ],
      "completed_at": "2026-07-16T19:03:14Z"
    },
    {
      "id": "WFR-303",
      "schema_version": "1.0",
      "workflow_id": "session.start",
      "workflow_version": 1,
      "definition_hash": "d0f98da02571e6dd27fec4aed92d3c82af9db75f8b90b997bf665635c7b7f6ca",
      "plan_hash": "b5072615ca3b7e9a3bd85d50d1f069d99ef2a9816b32c03a370745ed7a205536",
      "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
      "inputs": {},
      "idempotency_key": "hook:SessionStart:019f6c50-2721-7680-bb24-6dba0fadd76d",
      "status": "completed",
      "attempt": 1,
      "created_at": "2026-07-16T19:03:43Z",
      "updated_at": "2026-07-16T19:03:47Z",
      "receipts": [
        {
          "step_id": "config",
          "action": "config.audit",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "e8f5630220d3e8b26c18a52fd81e19f1b570f8f33a5daaff9c38eb8a62693c22",
          "completed_at": "2026-07-16T19:03:44Z"
        },
        {
          "step_id": "services",
          "action": "services.audit",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "13dcc58bd528f3efa3e6e0fa0853a6eedc376f1f3685fbd4869cbb2b60382ee3",
          "completed_at": "2026-07-16T19:03:44Z"
        },
        {
          "step_id": "state",
          "action": "state.consistency",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "5a1c6e5246defb1b6b6b90ff734db95bece2886b408ab112ed9b8e67222d5568",
          "completed_at": "2026-07-16T19:03:46Z"
        },
        {
          "step_id": "status",
          "action": "state.query",
          "input_hash": "a15231a2142a2a9a85355a8b9cbbccffe01a9c9c2c2fd8c2bc2987cdc481564a",
          "output_hash": "cda36b57b665a1052e4f88d6c67a65f32bca9d509dc3f34b54fcefd4b2bda2db",
          "completed_at": "2026-07-16T19:03:46Z"
        },
        {
          "step_id": "substrate",
          "action": "substrate.preflight",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "a6df426290b4549a59eecaa0519ead9bcc50b7fcb25bd2185ff6047960f19ccb",
          "completed_at": "2026-07-16T19:03:46Z"
        },
        {
          "step_id": "notices",
          "action": "substrate.notices",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "38b904a1cf83df048360fb2480571b749fd98d57e11f1afdffb5a74a78166fea",
          "completed_at": "2026-07-16T19:03:46Z"
        },
        {
          "step_id": "goals",
          "action": "substrate.goals",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "cdfd4de44a28140e686159f34f7b47975954c67e1d1efcef666e985acb136ed8",
          "completed_at": "2026-07-16T19:03:47Z"
        }
      ],
      "steps": [
        {
          "id": "config",
          "action": "config.audit",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-16T19:03:44Z",
          "output": {
            "status": "ok",
            "summary": {
              "settings": 196,
              "mutable": 187,
              "read_only_or_managed": 9,
              "unclassified": 0,
              "unknown": 0,
              "invalid": 0,
              "missing_using_defaults": 0
            },
            "unclassified_keys": [],
            "unknown_keys": [],
            "invalid_values": [],
            "missing_using_defaults": []
          },
          "output_hash": "e8f5630220d3e8b26c18a52fd81e19f1b570f8f33a5daaff9c38eb8a62693c22",
          "completed_at": "2026-07-16T19:03:44Z"
        },
        {
          "id": "services",
          "action": "services.audit",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-16T19:03:44Z",
          "output": {
            "status": "ok",
            "summary": {
              "critical": 0,
              "high": 0,
              "medium": 0,
              "low": 0
            },
            "findings": []
          },
          "output_hash": "13dcc58bd528f3efa3e6e0fa0853a6eedc376f1f3685fbd4869cbb2b60382ee3",
          "completed_at": "2026-07-16T19:03:44Z"
        },
        {
          "id": "state",
          "action": "state.consistency",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-16T19:03:44Z",
          "output": {
            "status": "ok",
            "repo_root": "D:\\Projects\\prd-plugin",
            "summary": {
              "errors": 0,
              "warnings": 0,
              "infos": 0
            },
            "findings": []
          },
          "output_hash": "5a1c6e5246defb1b6b6b90ff734db95bece2886b408ab112ed9b8e67222d5568",
          "completed_at": "2026-07-16T19:03:46Z"
        },
        {
          "id": "status",
          "action": "state.query",
          "status": "completed",
          "resolved_input_hash": "a15231a2142a2a9a85355a8b9cbbccffe01a9c9c2c2fd8c2bc2987cdc481564a",
          "started_at": "2026-07-16T19:03:46Z",
          "output": {
            "repo_root": "D:\\Projects\\prd-plugin",
            "autonomy_level": "autonomous",
            "requests_by_status": {
              "deferred": 1,
              "implemented": 90,
              "in_review": 1,
              "proposed": 3,
              "rejected": 1
            },
            "active_tracking": [],
            "tracking_branches": [],
            "tracking_branch_counts": {},
            "tracking_branch_errors": [],
            "open_health": [],
            "stale_count": 0,
            "skill_usage": {
              "project-decision-policy": 1,
              "project-request-intake": 1,
              "project-test-driven-implementation": 1,
              "project-verification-before-completion": 1,
              "project-llm-wiki": 1
            },
            "wiki_backfill_pending": false,
            "version_update": null
          },
          "output_hash": "cda36b57b665a1052e4f88d6c67a65f32bca9d509dc3f34b54fcefd4b2bda2db",
          "completed_at": "2026-07-16T19:03:46Z"
        },
        {
          "id": "substrate",
          "action": "substrate.preflight",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-16T19:03:46Z",
          "output": {
            "status": "disabled",
            "services": {
              "status": "ok",
              "summary": {
                "critical": 0,
                "high": 0,
                "medium": 0,
                "low": 0
              },
              "findings": []
            },
            "policy": {
              "configured": {
                "enabled": false,
                "mode": "off",
                "capabilities": [
                  "records",
                  "graph",
                  "events"
                ],
                "contract_version": 2,
                "require_source_refs": true,
                "endpoint": "http://127.0.0.1:47124",
                "manual_url": "http://127.0.0.1:47124/utcp.json",
                "knowledge_browse_url": "http://127.0.0.1:5276",
                "auth_env": "AI_COLLAB_API_KEY",
                "timeout_seconds": 5,
                "max_result_bytes": 1048576,
                "cache_ttl_seconds": 60,
                "fallback": "local",
                "automation": {
                  "discovery_on_session_start": true,
                  "knowledge_recall": true,
                  "memory_recall": true,
                  "context_enrichment": true,
                  "notices_on_session_start": false,
                  "goals_sync": false,
                  "telemetry_on_maintenance": false,
                  "reporting_dispatch": true,
                  "judgment_dispatch": true,
                  "verification_execution": true
                }
              },
              "active": false,
              "effective_mode": "off",
              "effective_capabilities": []
            }
          },
          "output_hash": "a6df426290b4549a59eecaa0519ead9bcc50b7fcb25bd2185ff6047960f19ccb",
          "completed_at": "2026-07-16T19:03:46Z"
        },
        {
          "id": "notices",
          "action": "substrate.notices",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-16T19:03:46Z",
          "output": {
            "status": "disabled"
          },
          "output_hash": "38b904a1cf83df048360fb2480571b749fd98d57e11f1afdffb5a74a78166fea",
          "completed_at": "2026-07-16T19:03:46Z"
        },
        {
          "id": "goals",
          "action": "substrate.goals",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-16T19:03:47Z",
          "output": {
            "status": "disabled",
            "created": 0,
            "observed": 0,
            "results": []
          },
          "output_hash": "cdfd4de44a28140e686159f34f7b47975954c67e1d1efcef666e985acb136ed8",
          "completed_at": "2026-07-16T19:03:47Z"
        }
      ],
      "completed_at": "2026-07-16T19:03:47Z"
    },
    {
      "id": "WFR-304",
      "schema_version": "1.0",
      "workflow_id": "session.stop",
      "workflow_version": 1,
      "definition_hash": "0cef7bb3e28321be8f85375c154955a69310ce297e47de3f3b8dd48f77a2f07d",
      "plan_hash": "a5e1d77ac734217487fc418e29c7163f4e81178e25d171e70cd4c999d527d3e8",
      "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
      "inputs": {},
      "idempotency_key": "hook:Stop:019f6c50-2721-7680-bb24-6dba0fadd76d",
      "status": "completed",
      "attempt": 1,
      "created_at": "2026-07-16T19:03:51Z",
      "updated_at": "2026-07-16T19:03:53Z",
      "receipts": [
        {
          "step_id": "state",
          "action": "state.consistency",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "5a1c6e5246defb1b6b6b90ff734db95bece2886b408ab112ed9b8e67222d5568",
          "completed_at": "2026-07-16T19:03:52Z"
        },
        {
          "step_id": "goals",
          "action": "substrate.goals",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "cdfd4de44a28140e686159f34f7b47975954c67e1d1efcef666e985acb136ed8",
          "completed_at": "2026-07-16T19:03:52Z"
        },
        {
          "step_id": "staleness",
          "action": "staleness.audit",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "1e81cb0ffd0a4d04626920a203b38d2d23a264cd43e807a85d375d69cae8a658",
          "completed_at": "2026-07-16T19:03:53Z"
        },
        {
          "step_id": "reflections",
          "action": "reflection.list",
          "input_hash": "0172e841ab4c13b3a4061f073f9d68a716ec87a8a5d52fde41823385e0582573",
          "output_hash": "c1b6b635c0bab21120657277f14ef6f839909875f307a3745fa48aee2bd6e449",
          "completed_at": "2026-07-16T19:03:53Z"
        },
        {
          "step_id": "bundle",
          "action": "reporting.bundle",
          "input_hash": "aed8ebb688dc3c085dd978d7c4120572173c3cb87e75919e4a937dcca6ef9457",
          "output_hash": "a484a5456a5d407836d76b9b74f7eb427eeaa79e812e92fcba6b2d54d1cd16d6",
          "completed_at": "2026-07-16T19:03:53Z"
        },
        {
          "step_id": "delegated",
          "action": "reporting.delegate",
          "input_hash": "ad60f3077afa3f8b437928e37d543485973725e618414d08211d179e6d8473a9",
          "output_hash": "e6085059f197def80ae95add1f328418107bea5436c9bd002530043646a3a95c",
          "completed_at": "2026-07-16T19:03:53Z"
        }
      ],
      "steps": [
        {
          "id": "state",
          "action": "state.consistency",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-16T19:03:51Z",
          "output": {
            "status": "ok",
            "repo_root": "D:\\Projects\\prd-plugin",
            "summary": {
              "errors": 0,
              "warnings": 0,
              "infos": 0
            },
            "findings": []
          },
          "output_hash": "5a1c6e5246defb1b6b6b90ff734db95bece2886b408ab112ed9b8e67222d5568",
          "completed_at": "2026-07-16T19:03:52Z"
        },
        {
          "id": "goals",
          "action": "substrate.goals",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-16T19:03:52Z",
          "output": {
            "status": "disabled",
            "created": 0,
            "observed": 0,
            "results": []
          },
          "output_hash": "cdfd4de44a28140e686159f34f7b47975954c67e1d1efcef666e985acb136ed8",
          "completed_at": "2026-07-16T19:03:52Z"
        },
        {
          "id": "staleness",
          "action": "staleness.audit",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-16T19:03:53Z",
          "output": {
            "status": "ok",
            "repo_root": "D:\\Projects\\prd-plugin",
            "counts": {
              "stale": 0
            },
            "stale": []
          },
          "output_hash": "1e81cb0ffd0a4d04626920a203b38d2d23a264cd43e807a85d375d69cae8a658",
          "completed_at": "2026-07-16T19:03:53Z"
        },
        {
          "id": "reflections",
          "action": "reflection.list",
          "status": "completed",
          "resolved_input_hash": "0172e841ab4c13b3a4061f073f9d68a716ec87a8a5d52fde41823385e0582573",
          "started_at": "2026-07-16T19:03:53Z",
          "output": {
            "enabled": false,
            "on_stop": true,
            "max_questions_per_stop": 5,
            "categories": [
              {
                "id": "behaviour_quality",
                "name": "Behaviour quality",
                "enabled": true,
                "question_count": 3
              },
              {
                "id": "harness_friction",
                "name": "Harness friction",
                "enabled": true,
                "question_count": 2
              }
            ],
            "questions": [
              {
                "id": "RFQ-001",
                "text": "Based on the work you just carried out, would you classify your behaviour as good? Answer yes or no and cite observable evidence.",
                "enabled": true,
                "category_id": "behaviour_quality",
                "category_name": "Behaviour quality",
                "effective_enabled": false
              },
              {
                "id": "RFQ-002",
                "text": "If you answered no, what could you do differently to correct your behaviour?",
                "enabled": true,
                "category_id": "behaviour_quality",
                "category_name": "Behaviour quality",
                "effective_enabled": false
              },
              {
                "id": "RFQ-003",
                "text": "Would another attempt using the identified good behaviours materially improve the outcome? Answer yes or no and state the next corrective action if yes.",
                "enabled": true,
                "category_id": "behaviour_quality",
                "category_name": "Behaviour quality",
                "effective_enabled": false
              },
              {
                "id": "RFQ-004",
                "text": "What harness friction points made this work more difficult?",
                "enabled": true,
                "category_id": "harness_friction",
                "category_name": "Harness friction",
                "effective_enabled": false
              },
              {
                "id": "RFQ-005",
                "text": "What up to three changes would most improve friction in the harness?",
                "enabled": true,
                "category_id": "harness_friction",
                "category_name": "Harness friction",
                "effective_enabled": false
              }
            ]
          },
          "output_hash": "c1b6b635c0bab21120657277f14ef6f839909875f307a3745fa48aee2bd6e449",
          "completed_at": "2026-07-16T19:03:53Z"
        },
        {
          "id": "bundle",
          "action": "reporting.bundle",
          "status": "completed",
          "resolved_input_hash": "aed8ebb688dc3c085dd978d7c4120572173c3cb87e75919e4a937dcca6ef9457",
          "started_at": "2026-07-16T19:03:53Z",
          "output": {
            "contract_version": 1,
            "task": "session_summary",
            "repo": "prd-plugin",
            "policy": {
              "enabled": false,
              "executor": "ai-collab",
              "contract_version": 1,
              "profile": "fast-capable",
              "tasks": [
                "report_summary",
                "session_summary",
                "wiki_synthesis",
                "triage_draft"
              ],
              "fallback": "main",
              "require_source_refs": true,
              "max_input_tokens": 12000,
              "max_output_tokens": 1500,
              "timeout_seconds": 30
            },
            "facts": {
              "requests_by_status": {
                "deferred": 1,
                "implemented": 90,
                "in_review": 1,
                "proposed": 3,
                "rejected": 1
              },
              "active_requests": [
                {
                  "id": "REQ-072",
                  "status": "proposed",
                  "severity": "low",
                  "summary": "opencode run-until-done: session.idle is a non-blocking notification, so the stop guard can't force continuation on opencode (currently degrades to a printed reminder, 0.5.95). Investigate whether opencode exposes any vetoable/continuation mechanism (a different event, a permission hook, or a 'continue' API) to enforce run-until-done, or accept the reminder as the permanent ceiling. Low priority — user rarely uses opencode."
                },
                {
                  "id": "REQ-104",
                  "status": "in_review",
                  "severity": "high",
                  "summary": "Ordinary-workspace chat has no path into the planning pipeline: owner-approved collaboration decisions land in scratchpads, room agents cannot allocate REQ/PRD/TRK ids past the parallel-worker mutation boundary, and goal-administrator grants detach when participant identity changes on runner restart"
                },
                {
                  "id": "REQ-107",
                  "status": "proposed",
                  "severity": "high",
                  "summary": "Adopt the UTCP-first tool architecture (user-directed): one UTCP manual is the source of truth for ALL prd-plugin tools including mutations, the MCP surface is generated by the official @utcp/mcp-bridge, and the 2,323-line hand-written MCP server is retired as a hand-maintained surface"
                },
                {
                  "id": "REQ-113",
                  "status": "proposed",
                  "severity": "low",
                  "summary": "Request-thread close has no validated tool: finished threads stay 'unresolved' in message_check forever unless state is hand-flipped; add a thread-close capability to the UTCP-first tool catalog (REQ-107), not as a new hand-written MCP handler"
                }
              ],
              "active_tracking": [],
              "open_health": [],
              "evidence_count": 127,
              "decision_count": 10
            },
            "findings": [],
            "source_refs": [
              ".prd_plugin/config.json",
              ".prd_plugin/state/decisions.json",
              ".prd_plugin/state/evidence.json",
              ".prd_plugin/state/health.json",
              ".prd_plugin/state/requests.json",
              ".prd_plugin/state/tracking.json",
              "REQ-072",
              "REQ-104",
              "REQ-107",
              "REQ-113"
            ],
            "constraints": {
              "max_input_tokens": 12000,
              "max_output_tokens": 1500,
              "timeout_seconds": 30,
              "require_source_refs": true,
              "no_project_state_writes": true,
              "no_secrets_or_local_session_content": true
            }
          },
          "output_hash": "a484a5456a5d407836d76b9b74f7eb427eeaa79e812e92fcba6b2d54d1cd16d6",
          "completed_at": "2026-07-16T19:03:53Z"
        },
        {
          "id": "delegated",
          "action": "reporting.delegate",
          "status": "completed",
          "resolved_input_hash": "ad60f3077afa3f8b437928e37d543485973725e618414d08211d179e6d8473a9",
          "started_at": "2026-07-16T19:03:53Z",
          "output": {
            "status": "fallback",
            "action": "main",
            "reason": "disabled"
          },
          "output_hash": "e6085059f197def80ae95add1f328418107bea5436c9bd002530043646a3a95c",
          "completed_at": "2026-07-16T19:03:53Z"
        }
      ],
      "completed_at": "2026-07-16T19:03:53Z"
    },
    {
      "id": "WFR-305",
      "schema_version": "1.0",
      "workflow_id": "session.start",
      "workflow_version": 1,
      "definition_hash": "d0f98da02571e6dd27fec4aed92d3c82af9db75f8b90b997bf665635c7b7f6ca",
      "plan_hash": "b5072615ca3b7e9a3bd85d50d1f069d99ef2a9816b32c03a370745ed7a205536",
      "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
      "inputs": {},
      "idempotency_key": "hook:SessionStart:019f6c5a-8dd1-7553-a6dc-1f4a0d5641c5",
      "status": "completed",
      "attempt": 1,
      "created_at": "2026-07-16T19:15:05Z",
      "updated_at": "2026-07-16T19:15:07Z",
      "receipts": [
        {
          "step_id": "config",
          "action": "config.audit",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "e8f5630220d3e8b26c18a52fd81e19f1b570f8f33a5daaff9c38eb8a62693c22",
          "completed_at": "2026-07-16T19:15:05Z"
        },
        {
          "step_id": "services",
          "action": "services.audit",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "13dcc58bd528f3efa3e6e0fa0853a6eedc376f1f3685fbd4869cbb2b60382ee3",
          "completed_at": "2026-07-16T19:15:05Z"
        },
        {
          "step_id": "state",
          "action": "state.consistency",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "5a1c6e5246defb1b6b6b90ff734db95bece2886b408ab112ed9b8e67222d5568",
          "completed_at": "2026-07-16T19:15:06Z"
        },
        {
          "step_id": "status",
          "action": "state.query",
          "input_hash": "a15231a2142a2a9a85355a8b9cbbccffe01a9c9c2c2fd8c2bc2987cdc481564a",
          "output_hash": "cda36b57b665a1052e4f88d6c67a65f32bca9d509dc3f34b54fcefd4b2bda2db",
          "completed_at": "2026-07-16T19:15:06Z"
        },
        {
          "step_id": "substrate",
          "action": "substrate.preflight",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "a6df426290b4549a59eecaa0519ead9bcc50b7fcb25bd2185ff6047960f19ccb",
          "completed_at": "2026-07-16T19:15:07Z"
        },
        {
          "step_id": "notices",
          "action": "substrate.notices",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "38b904a1cf83df048360fb2480571b749fd98d57e11f1afdffb5a74a78166fea",
          "completed_at": "2026-07-16T19:15:07Z"
        },
        {
          "step_id": "goals",
          "action": "substrate.goals",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "cdfd4de44a28140e686159f34f7b47975954c67e1d1efcef666e985acb136ed8",
          "completed_at": "2026-07-16T19:15:07Z"
        }
      ],
      "steps": [
        {
          "id": "config",
          "action": "config.audit",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-16T19:15:05Z",
          "output": {
            "status": "ok",
            "summary": {
              "settings": 196,
              "mutable": 187,
              "read_only_or_managed": 9,
              "unclassified": 0,
              "unknown": 0,
              "invalid": 0,
              "missing_using_defaults": 0
            },
            "unclassified_keys": [],
            "unknown_keys": [],
            "invalid_values": [],
            "missing_using_defaults": []
          },
          "output_hash": "e8f5630220d3e8b26c18a52fd81e19f1b570f8f33a5daaff9c38eb8a62693c22",
          "completed_at": "2026-07-16T19:15:05Z"
        },
        {
          "id": "services",
          "action": "services.audit",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-16T19:15:05Z",
          "output": {
            "status": "ok",
            "summary": {
              "critical": 0,
              "high": 0,
              "medium": 0,
              "low": 0
            },
            "findings": []
          },
          "output_hash": "13dcc58bd528f3efa3e6e0fa0853a6eedc376f1f3685fbd4869cbb2b60382ee3",
          "completed_at": "2026-07-16T19:15:05Z"
        },
        {
          "id": "state",
          "action": "state.consistency",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-16T19:15:05Z",
          "output": {
            "status": "ok",
            "repo_root": "D:\\Projects\\prd-plugin",
            "summary": {
              "errors": 0,
              "warnings": 0,
              "infos": 0
            },
            "findings": []
          },
          "output_hash": "5a1c6e5246defb1b6b6b90ff734db95bece2886b408ab112ed9b8e67222d5568",
          "completed_at": "2026-07-16T19:15:06Z"
        },
        {
          "id": "status",
          "action": "state.query",
          "status": "completed",
          "resolved_input_hash": "a15231a2142a2a9a85355a8b9cbbccffe01a9c9c2c2fd8c2bc2987cdc481564a",
          "started_at": "2026-07-16T19:15:06Z",
          "output": {
            "repo_root": "D:\\Projects\\prd-plugin",
            "autonomy_level": "autonomous",
            "requests_by_status": {
              "deferred": 1,
              "implemented": 90,
              "in_review": 1,
              "proposed": 3,
              "rejected": 1
            },
            "active_tracking": [],
            "tracking_branches": [],
            "tracking_branch_counts": {},
            "tracking_branch_errors": [],
            "open_health": [],
            "stale_count": 0,
            "skill_usage": {
              "project-decision-policy": 1,
              "project-request-intake": 1,
              "project-test-driven-implementation": 1,
              "project-verification-before-completion": 1,
              "project-llm-wiki": 1
            },
            "wiki_backfill_pending": false,
            "version_update": null
          },
          "output_hash": "cda36b57b665a1052e4f88d6c67a65f32bca9d509dc3f34b54fcefd4b2bda2db",
          "completed_at": "2026-07-16T19:15:06Z"
        },
        {
          "id": "substrate",
          "action": "substrate.preflight",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-16T19:15:07Z",
          "output": {
            "status": "disabled",
            "services": {
              "status": "ok",
              "summary": {
                "critical": 0,
                "high": 0,
                "medium": 0,
                "low": 0
              },
              "findings": []
            },
            "policy": {
              "configured": {
                "enabled": false,
                "mode": "off",
                "capabilities": [
                  "records",
                  "graph",
                  "events"
                ],
                "contract_version": 2,
                "require_source_refs": true,
                "endpoint": "http://127.0.0.1:47124",
                "manual_url": "http://127.0.0.1:47124/utcp.json",
                "knowledge_browse_url": "http://127.0.0.1:5276",
                "auth_env": "AI_COLLAB_API_KEY",
                "timeout_seconds": 5,
                "max_result_bytes": 1048576,
                "cache_ttl_seconds": 60,
                "fallback": "local",
                "automation": {
                  "discovery_on_session_start": true,
                  "knowledge_recall": true,
                  "memory_recall": true,
                  "context_enrichment": true,
                  "notices_on_session_start": false,
                  "goals_sync": false,
                  "telemetry_on_maintenance": false,
                  "reporting_dispatch": true,
                  "judgment_dispatch": true,
                  "verification_execution": true
                }
              },
              "active": false,
              "effective_mode": "off",
              "effective_capabilities": []
            }
          },
          "output_hash": "a6df426290b4549a59eecaa0519ead9bcc50b7fcb25bd2185ff6047960f19ccb",
          "completed_at": "2026-07-16T19:15:07Z"
        },
        {
          "id": "notices",
          "action": "substrate.notices",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-16T19:15:07Z",
          "output": {
            "status": "disabled"
          },
          "output_hash": "38b904a1cf83df048360fb2480571b749fd98d57e11f1afdffb5a74a78166fea",
          "completed_at": "2026-07-16T19:15:07Z"
        },
        {
          "id": "goals",
          "action": "substrate.goals",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-16T19:15:07Z",
          "output": {
            "status": "disabled",
            "created": 0,
            "observed": 0,
            "results": []
          },
          "output_hash": "cdfd4de44a28140e686159f34f7b47975954c67e1d1efcef666e985acb136ed8",
          "completed_at": "2026-07-16T19:15:07Z"
        }
      ],
      "completed_at": "2026-07-16T19:15:07Z"
    },
    {
      "id": "WFR-306",
      "schema_version": "1.0",
      "workflow_id": "session.stop",
      "workflow_version": 1,
      "definition_hash": "0cef7bb3e28321be8f85375c154955a69310ce297e47de3f3b8dd48f77a2f07d",
      "plan_hash": "a5e1d77ac734217487fc418e29c7163f4e81178e25d171e70cd4c999d527d3e8",
      "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
      "inputs": {},
      "idempotency_key": "hook:Stop:019f6c5a-8dd1-7553-a6dc-1f4a0d5641c5",
      "status": "completed",
      "attempt": 1,
      "created_at": "2026-07-16T19:15:29Z",
      "updated_at": "2026-07-16T19:15:31Z",
      "receipts": [
        {
          "step_id": "state",
          "action": "state.consistency",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "5a1c6e5246defb1b6b6b90ff734db95bece2886b408ab112ed9b8e67222d5568",
          "completed_at": "2026-07-16T19:15:30Z"
        },
        {
          "step_id": "goals",
          "action": "substrate.goals",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "cdfd4de44a28140e686159f34f7b47975954c67e1d1efcef666e985acb136ed8",
          "completed_at": "2026-07-16T19:15:30Z"
        },
        {
          "step_id": "staleness",
          "action": "staleness.audit",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "1e81cb0ffd0a4d04626920a203b38d2d23a264cd43e807a85d375d69cae8a658",
          "completed_at": "2026-07-16T19:15:30Z"
        },
        {
          "step_id": "reflections",
          "action": "reflection.list",
          "input_hash": "0172e841ab4c13b3a4061f073f9d68a716ec87a8a5d52fde41823385e0582573",
          "output_hash": "c1b6b635c0bab21120657277f14ef6f839909875f307a3745fa48aee2bd6e449",
          "completed_at": "2026-07-16T19:15:30Z"
        },
        {
          "step_id": "bundle",
          "action": "reporting.bundle",
          "input_hash": "aed8ebb688dc3c085dd978d7c4120572173c3cb87e75919e4a937dcca6ef9457",
          "output_hash": "a484a5456a5d407836d76b9b74f7eb427eeaa79e812e92fcba6b2d54d1cd16d6",
          "completed_at": "2026-07-16T19:15:31Z"
        },
        {
          "step_id": "delegated",
          "action": "reporting.delegate",
          "input_hash": "ad60f3077afa3f8b437928e37d543485973725e618414d08211d179e6d8473a9",
          "output_hash": "e6085059f197def80ae95add1f328418107bea5436c9bd002530043646a3a95c",
          "completed_at": "2026-07-16T19:15:31Z"
        }
      ],
      "steps": [
        {
          "id": "state",
          "action": "state.consistency",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-16T19:15:29Z",
          "output": {
            "status": "ok",
            "repo_root": "D:\\Projects\\prd-plugin",
            "summary": {
              "errors": 0,
              "warnings": 0,
              "infos": 0
            },
            "findings": []
          },
          "output_hash": "5a1c6e5246defb1b6b6b90ff734db95bece2886b408ab112ed9b8e67222d5568",
          "completed_at": "2026-07-16T19:15:30Z"
        },
        {
          "id": "goals",
          "action": "substrate.goals",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-16T19:15:30Z",
          "output": {
            "status": "disabled",
            "created": 0,
            "observed": 0,
            "results": []
          },
          "output_hash": "cdfd4de44a28140e686159f34f7b47975954c67e1d1efcef666e985acb136ed8",
          "completed_at": "2026-07-16T19:15:30Z"
        },
        {
          "id": "staleness",
          "action": "staleness.audit",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-16T19:15:30Z",
          "output": {
            "status": "ok",
            "repo_root": "D:\\Projects\\prd-plugin",
            "counts": {
              "stale": 0
            },
            "stale": []
          },
          "output_hash": "1e81cb0ffd0a4d04626920a203b38d2d23a264cd43e807a85d375d69cae8a658",
          "completed_at": "2026-07-16T19:15:30Z"
        },
        {
          "id": "reflections",
          "action": "reflection.list",
          "status": "completed",
          "resolved_input_hash": "0172e841ab4c13b3a4061f073f9d68a716ec87a8a5d52fde41823385e0582573",
          "started_at": "2026-07-16T19:15:30Z",
          "output": {
            "enabled": false,
            "on_stop": true,
            "max_questions_per_stop": 5,
            "categories": [
              {
                "id": "behaviour_quality",
                "name": "Behaviour quality",
                "enabled": true,
                "question_count": 3
              },
              {
                "id": "harness_friction",
                "name": "Harness friction",
                "enabled": true,
                "question_count": 2
              }
            ],
            "questions": [
              {
                "id": "RFQ-001",
                "text": "Based on the work you just carried out, would you classify your behaviour as good? Answer yes or no and cite observable evidence.",
                "enabled": true,
                "category_id": "behaviour_quality",
                "category_name": "Behaviour quality",
                "effective_enabled": false
              },
              {
                "id": "RFQ-002",
                "text": "If you answered no, what could you do differently to correct your behaviour?",
                "enabled": true,
                "category_id": "behaviour_quality",
                "category_name": "Behaviour quality",
                "effective_enabled": false
              },
              {
                "id": "RFQ-003",
                "text": "Would another attempt using the identified good behaviours materially improve the outcome? Answer yes or no and state the next corrective action if yes.",
                "enabled": true,
                "category_id": "behaviour_quality",
                "category_name": "Behaviour quality",
                "effective_enabled": false
              },
              {
                "id": "RFQ-004",
                "text": "What harness friction points made this work more difficult?",
                "enabled": true,
                "category_id": "harness_friction",
                "category_name": "Harness friction",
                "effective_enabled": false
              },
              {
                "id": "RFQ-005",
                "text": "What up to three changes would most improve friction in the harness?",
                "enabled": true,
                "category_id": "harness_friction",
                "category_name": "Harness friction",
                "effective_enabled": false
              }
            ]
          },
          "output_hash": "c1b6b635c0bab21120657277f14ef6f839909875f307a3745fa48aee2bd6e449",
          "completed_at": "2026-07-16T19:15:30Z"
        },
        {
          "id": "bundle",
          "action": "reporting.bundle",
          "status": "completed",
          "resolved_input_hash": "aed8ebb688dc3c085dd978d7c4120572173c3cb87e75919e4a937dcca6ef9457",
          "started_at": "2026-07-16T19:15:31Z",
          "output": {
            "contract_version": 1,
            "task": "session_summary",
            "repo": "prd-plugin",
            "policy": {
              "enabled": false,
              "executor": "ai-collab",
              "contract_version": 1,
              "profile": "fast-capable",
              "tasks": [
                "report_summary",
                "session_summary",
                "wiki_synthesis",
                "triage_draft"
              ],
              "fallback": "main",
              "require_source_refs": true,
              "max_input_tokens": 12000,
              "max_output_tokens": 1500,
              "timeout_seconds": 30
            },
            "facts": {
              "requests_by_status": {
                "deferred": 1,
                "implemented": 90,
                "in_review": 1,
                "proposed": 3,
                "rejected": 1
              },
              "active_requests": [
                {
                  "id": "REQ-072",
                  "status": "proposed",
                  "severity": "low",
                  "summary": "opencode run-until-done: session.idle is a non-blocking notification, so the stop guard can't force continuation on opencode (currently degrades to a printed reminder, 0.5.95). Investigate whether opencode exposes any vetoable/continuation mechanism (a different event, a permission hook, or a 'continue' API) to enforce run-until-done, or accept the reminder as the permanent ceiling. Low priority — user rarely uses opencode."
                },
                {
                  "id": "REQ-104",
                  "status": "in_review",
                  "severity": "high",
                  "summary": "Ordinary-workspace chat has no path into the planning pipeline: owner-approved collaboration decisions land in scratchpads, room agents cannot allocate REQ/PRD/TRK ids past the parallel-worker mutation boundary, and goal-administrator grants detach when participant identity changes on runner restart"
                },
                {
                  "id": "REQ-107",
                  "status": "proposed",
                  "severity": "high",
                  "summary": "Adopt the UTCP-first tool architecture (user-directed): one UTCP manual is the source of truth for ALL prd-plugin tools including mutations, the MCP surface is generated by the official @utcp/mcp-bridge, and the 2,323-line hand-written MCP server is retired as a hand-maintained surface"
                },
                {
                  "id": "REQ-113",
                  "status": "proposed",
                  "severity": "low",
                  "summary": "Request-thread close has no validated tool: finished threads stay 'unresolved' in message_check forever unless state is hand-flipped; add a thread-close capability to the UTCP-first tool catalog (REQ-107), not as a new hand-written MCP handler"
                }
              ],
              "active_tracking": [],
              "open_health": [],
              "evidence_count": 127,
              "decision_count": 10
            },
            "findings": [],
            "source_refs": [
              ".prd_plugin/config.json",
              ".prd_plugin/state/decisions.json",
              ".prd_plugin/state/evidence.json",
              ".prd_plugin/state/health.json",
              ".prd_plugin/state/requests.json",
              ".prd_plugin/state/tracking.json",
              "REQ-072",
              "REQ-104",
              "REQ-107",
              "REQ-113"
            ],
            "constraints": {
              "max_input_tokens": 12000,
              "max_output_tokens": 1500,
              "timeout_seconds": 30,
              "require_source_refs": true,
              "no_project_state_writes": true,
              "no_secrets_or_local_session_content": true
            }
          },
          "output_hash": "a484a5456a5d407836d76b9b74f7eb427eeaa79e812e92fcba6b2d54d1cd16d6",
          "completed_at": "2026-07-16T19:15:31Z"
        },
        {
          "id": "delegated",
          "action": "reporting.delegate",
          "status": "completed",
          "resolved_input_hash": "ad60f3077afa3f8b437928e37d543485973725e618414d08211d179e6d8473a9",
          "started_at": "2026-07-16T19:15:31Z",
          "output": {
            "status": "fallback",
            "action": "main",
            "reason": "disabled"
          },
          "output_hash": "e6085059f197def80ae95add1f328418107bea5436c9bd002530043646a3a95c",
          "completed_at": "2026-07-16T19:15:31Z"
        }
      ],
      "completed_at": "2026-07-16T19:15:31Z"
    },
    {
      "id": "WFR-307",
      "schema_version": "1.0",
      "workflow_id": "session.start",
      "workflow_version": 1,
      "definition_hash": "d0f98da02571e6dd27fec4aed92d3c82af9db75f8b90b997bf665635c7b7f6ca",
      "plan_hash": "b5072615ca3b7e9a3bd85d50d1f069d99ef2a9816b32c03a370745ed7a205536",
      "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
      "inputs": {},
      "idempotency_key": "hook:SessionStart:019f6c5b-bca0-70e3-adcd-d69f6d9d1597",
      "status": "completed",
      "attempt": 1,
      "created_at": "2026-07-16T19:16:22Z",
      "updated_at": "2026-07-16T19:16:25Z",
      "receipts": [
        {
          "step_id": "config",
          "action": "config.audit",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "e8f5630220d3e8b26c18a52fd81e19f1b570f8f33a5daaff9c38eb8a62693c22",
          "completed_at": "2026-07-16T19:16:23Z"
        },
        {
          "step_id": "services",
          "action": "services.audit",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "13dcc58bd528f3efa3e6e0fa0853a6eedc376f1f3685fbd4869cbb2b60382ee3",
          "completed_at": "2026-07-16T19:16:23Z"
        },
        {
          "step_id": "state",
          "action": "state.consistency",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "5a1c6e5246defb1b6b6b90ff734db95bece2886b408ab112ed9b8e67222d5568",
          "completed_at": "2026-07-16T19:16:24Z"
        },
        {
          "step_id": "status",
          "action": "state.query",
          "input_hash": "a15231a2142a2a9a85355a8b9cbbccffe01a9c9c2c2fd8c2bc2987cdc481564a",
          "output_hash": "cda36b57b665a1052e4f88d6c67a65f32bca9d509dc3f34b54fcefd4b2bda2db",
          "completed_at": "2026-07-16T19:16:24Z"
        },
        {
          "step_id": "substrate",
          "action": "substrate.preflight",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "a6df426290b4549a59eecaa0519ead9bcc50b7fcb25bd2185ff6047960f19ccb",
          "completed_at": "2026-07-16T19:16:24Z"
        },
        {
          "step_id": "notices",
          "action": "substrate.notices",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "38b904a1cf83df048360fb2480571b749fd98d57e11f1afdffb5a74a78166fea",
          "completed_at": "2026-07-16T19:16:24Z"
        },
        {
          "step_id": "goals",
          "action": "substrate.goals",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "cdfd4de44a28140e686159f34f7b47975954c67e1d1efcef666e985acb136ed8",
          "completed_at": "2026-07-16T19:16:25Z"
        }
      ],
      "steps": [
        {
          "id": "config",
          "action": "config.audit",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-16T19:16:23Z",
          "output": {
            "status": "ok",
            "summary": {
              "settings": 196,
              "mutable": 187,
              "read_only_or_managed": 9,
              "unclassified": 0,
              "unknown": 0,
              "invalid": 0,
              "missing_using_defaults": 0
            },
            "unclassified_keys": [],
            "unknown_keys": [],
            "invalid_values": [],
            "missing_using_defaults": []
          },
          "output_hash": "e8f5630220d3e8b26c18a52fd81e19f1b570f8f33a5daaff9c38eb8a62693c22",
          "completed_at": "2026-07-16T19:16:23Z"
        },
        {
          "id": "services",
          "action": "services.audit",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-16T19:16:23Z",
          "output": {
            "status": "ok",
            "summary": {
              "critical": 0,
              "high": 0,
              "medium": 0,
              "low": 0
            },
            "findings": []
          },
          "output_hash": "13dcc58bd528f3efa3e6e0fa0853a6eedc376f1f3685fbd4869cbb2b60382ee3",
          "completed_at": "2026-07-16T19:16:23Z"
        },
        {
          "id": "state",
          "action": "state.consistency",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-16T19:16:23Z",
          "output": {
            "status": "ok",
            "repo_root": "D:\\Projects\\prd-plugin",
            "summary": {
              "errors": 0,
              "warnings": 0,
              "infos": 0
            },
            "findings": []
          },
          "output_hash": "5a1c6e5246defb1b6b6b90ff734db95bece2886b408ab112ed9b8e67222d5568",
          "completed_at": "2026-07-16T19:16:24Z"
        },
        {
          "id": "status",
          "action": "state.query",
          "status": "completed",
          "resolved_input_hash": "a15231a2142a2a9a85355a8b9cbbccffe01a9c9c2c2fd8c2bc2987cdc481564a",
          "started_at": "2026-07-16T19:16:24Z",
          "output": {
            "repo_root": "D:\\Projects\\prd-plugin",
            "autonomy_level": "autonomous",
            "requests_by_status": {
              "deferred": 1,
              "implemented": 90,
              "in_review": 1,
              "proposed": 3,
              "rejected": 1
            },
            "active_tracking": [],
            "tracking_branches": [],
            "tracking_branch_counts": {},
            "tracking_branch_errors": [],
            "open_health": [],
            "stale_count": 0,
            "skill_usage": {
              "project-decision-policy": 1,
              "project-request-intake": 1,
              "project-test-driven-implementation": 1,
              "project-verification-before-completion": 1,
              "project-llm-wiki": 1
            },
            "wiki_backfill_pending": false,
            "version_update": null
          },
          "output_hash": "cda36b57b665a1052e4f88d6c67a65f32bca9d509dc3f34b54fcefd4b2bda2db",
          "completed_at": "2026-07-16T19:16:24Z"
        },
        {
          "id": "substrate",
          "action": "substrate.preflight",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-16T19:16:24Z",
          "output": {
            "status": "disabled",
            "services": {
              "status": "ok",
              "summary": {
                "critical": 0,
                "high": 0,
                "medium": 0,
                "low": 0
              },
              "findings": []
            },
            "policy": {
              "configured": {
                "enabled": false,
                "mode": "off",
                "capabilities": [
                  "records",
                  "graph",
                  "events"
                ],
                "contract_version": 2,
                "require_source_refs": true,
                "endpoint": "http://127.0.0.1:47124",
                "manual_url": "http://127.0.0.1:47124/utcp.json",
                "knowledge_browse_url": "http://127.0.0.1:5276",
                "auth_env": "AI_COLLAB_API_KEY",
                "timeout_seconds": 5,
                "max_result_bytes": 1048576,
                "cache_ttl_seconds": 60,
                "fallback": "local",
                "automation": {
                  "discovery_on_session_start": true,
                  "knowledge_recall": true,
                  "memory_recall": true,
                  "context_enrichment": true,
                  "notices_on_session_start": false,
                  "goals_sync": false,
                  "telemetry_on_maintenance": false,
                  "reporting_dispatch": true,
                  "judgment_dispatch": true,
                  "verification_execution": true
                }
              },
              "active": false,
              "effective_mode": "off",
              "effective_capabilities": []
            }
          },
          "output_hash": "a6df426290b4549a59eecaa0519ead9bcc50b7fcb25bd2185ff6047960f19ccb",
          "completed_at": "2026-07-16T19:16:24Z"
        },
        {
          "id": "notices",
          "action": "substrate.notices",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-16T19:16:24Z",
          "output": {
            "status": "disabled"
          },
          "output_hash": "38b904a1cf83df048360fb2480571b749fd98d57e11f1afdffb5a74a78166fea",
          "completed_at": "2026-07-16T19:16:24Z"
        },
        {
          "id": "goals",
          "action": "substrate.goals",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-16T19:16:25Z",
          "output": {
            "status": "disabled",
            "created": 0,
            "observed": 0,
            "results": []
          },
          "output_hash": "cdfd4de44a28140e686159f34f7b47975954c67e1d1efcef666e985acb136ed8",
          "completed_at": "2026-07-16T19:16:25Z"
        }
      ],
      "completed_at": "2026-07-16T19:16:25Z"
    },
    {
      "id": "WFR-308",
      "schema_version": "1.0",
      "workflow_id": "session.stop",
      "workflow_version": 1,
      "definition_hash": "0cef7bb3e28321be8f85375c154955a69310ce297e47de3f3b8dd48f77a2f07d",
      "plan_hash": "a5e1d77ac734217487fc418e29c7163f4e81178e25d171e70cd4c999d527d3e8",
      "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
      "inputs": {},
      "idempotency_key": "hook:Stop:019f6c5b-bca0-70e3-adcd-d69f6d9d1597",
      "status": "completed",
      "attempt": 1,
      "created_at": "2026-07-16T19:16:30Z",
      "updated_at": "2026-07-16T19:16:32Z",
      "receipts": [
        {
          "step_id": "state",
          "action": "state.consistency",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "5a1c6e5246defb1b6b6b90ff734db95bece2886b408ab112ed9b8e67222d5568",
          "completed_at": "2026-07-16T19:16:31Z"
        },
        {
          "step_id": "goals",
          "action": "substrate.goals",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "cdfd4de44a28140e686159f34f7b47975954c67e1d1efcef666e985acb136ed8",
          "completed_at": "2026-07-16T19:16:31Z"
        },
        {
          "step_id": "staleness",
          "action": "staleness.audit",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "1e81cb0ffd0a4d04626920a203b38d2d23a264cd43e807a85d375d69cae8a658",
          "completed_at": "2026-07-16T19:16:31Z"
        },
        {
          "step_id": "reflections",
          "action": "reflection.list",
          "input_hash": "0172e841ab4c13b3a4061f073f9d68a716ec87a8a5d52fde41823385e0582573",
          "output_hash": "c1b6b635c0bab21120657277f14ef6f839909875f307a3745fa48aee2bd6e449",
          "completed_at": "2026-07-16T19:16:31Z"
        },
        {
          "step_id": "bundle",
          "action": "reporting.bundle",
          "input_hash": "aed8ebb688dc3c085dd978d7c4120572173c3cb87e75919e4a937dcca6ef9457",
          "output_hash": "a484a5456a5d407836d76b9b74f7eb427eeaa79e812e92fcba6b2d54d1cd16d6",
          "completed_at": "2026-07-16T19:16:31Z"
        },
        {
          "step_id": "delegated",
          "action": "reporting.delegate",
          "input_hash": "ad60f3077afa3f8b437928e37d543485973725e618414d08211d179e6d8473a9",
          "output_hash": "e6085059f197def80ae95add1f328418107bea5436c9bd002530043646a3a95c",
          "completed_at": "2026-07-16T19:16:32Z"
        }
      ],
      "steps": [
        {
          "id": "state",
          "action": "state.consistency",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-16T19:16:30Z",
          "output": {
            "status": "ok",
            "repo_root": "D:\\Projects\\prd-plugin",
            "summary": {
              "errors": 0,
              "warnings": 0,
              "infos": 0
            },
            "findings": []
          },
          "output_hash": "5a1c6e5246defb1b6b6b90ff734db95bece2886b408ab112ed9b8e67222d5568",
          "completed_at": "2026-07-16T19:16:31Z"
        },
        {
          "id": "goals",
          "action": "substrate.goals",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-16T19:16:31Z",
          "output": {
            "status": "disabled",
            "created": 0,
            "observed": 0,
            "results": []
          },
          "output_hash": "cdfd4de44a28140e686159f34f7b47975954c67e1d1efcef666e985acb136ed8",
          "completed_at": "2026-07-16T19:16:31Z"
        },
        {
          "id": "staleness",
          "action": "staleness.audit",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-16T19:16:31Z",
          "output": {
            "status": "ok",
            "repo_root": "D:\\Projects\\prd-plugin",
            "counts": {
              "stale": 0
            },
            "stale": []
          },
          "output_hash": "1e81cb0ffd0a4d04626920a203b38d2d23a264cd43e807a85d375d69cae8a658",
          "completed_at": "2026-07-16T19:16:31Z"
        },
        {
          "id": "reflections",
          "action": "reflection.list",
          "status": "completed",
          "resolved_input_hash": "0172e841ab4c13b3a4061f073f9d68a716ec87a8a5d52fde41823385e0582573",
          "started_at": "2026-07-16T19:16:31Z",
          "output": {
            "enabled": false,
            "on_stop": true,
            "max_questions_per_stop": 5,
            "categories": [
              {
                "id": "behaviour_quality",
                "name": "Behaviour quality",
                "enabled": true,
                "question_count": 3
              },
              {
                "id": "harness_friction",
                "name": "Harness friction",
                "enabled": true,
                "question_count": 2
              }
            ],
            "questions": [
              {
                "id": "RFQ-001",
                "text": "Based on the work you just carried out, would you classify your behaviour as good? Answer yes or no and cite observable evidence.",
                "enabled": true,
                "category_id": "behaviour_quality",
                "category_name": "Behaviour quality",
                "effective_enabled": false
              },
              {
                "id": "RFQ-002",
                "text": "If you answered no, what could you do differently to correct your behaviour?",
                "enabled": true,
                "category_id": "behaviour_quality",
                "category_name": "Behaviour quality",
                "effective_enabled": false
              },
              {
                "id": "RFQ-003",
                "text": "Would another attempt using the identified good behaviours materially improve the outcome? Answer yes or no and state the next corrective action if yes.",
                "enabled": true,
                "category_id": "behaviour_quality",
                "category_name": "Behaviour quality",
                "effective_enabled": false
              },
              {
                "id": "RFQ-004",
                "text": "What harness friction points made this work more difficult?",
                "enabled": true,
                "category_id": "harness_friction",
                "category_name": "Harness friction",
                "effective_enabled": false
              },
              {
                "id": "RFQ-005",
                "text": "What up to three changes would most improve friction in the harness?",
                "enabled": true,
                "category_id": "harness_friction",
                "category_name": "Harness friction",
                "effective_enabled": false
              }
            ]
          },
          "output_hash": "c1b6b635c0bab21120657277f14ef6f839909875f307a3745fa48aee2bd6e449",
          "completed_at": "2026-07-16T19:16:31Z"
        },
        {
          "id": "bundle",
          "action": "reporting.bundle",
          "status": "completed",
          "resolved_input_hash": "aed8ebb688dc3c085dd978d7c4120572173c3cb87e75919e4a937dcca6ef9457",
          "started_at": "2026-07-16T19:16:31Z",
          "output": {
            "contract_version": 1,
            "task": "session_summary",
            "repo": "prd-plugin",
            "policy": {
              "enabled": false,
              "executor": "ai-collab",
              "contract_version": 1,
              "profile": "fast-capable",
              "tasks": [
                "report_summary",
                "session_summary",
                "wiki_synthesis",
                "triage_draft"
              ],
              "fallback": "main",
              "require_source_refs": true,
              "max_input_tokens": 12000,
              "max_output_tokens": 1500,
              "timeout_seconds": 30
            },
            "facts": {
              "requests_by_status": {
                "deferred": 1,
                "implemented": 90,
                "in_review": 1,
                "proposed": 3,
                "rejected": 1
              },
              "active_requests": [
                {
                  "id": "REQ-072",
                  "status": "proposed",
                  "severity": "low",
                  "summary": "opencode run-until-done: session.idle is a non-blocking notification, so the stop guard can't force continuation on opencode (currently degrades to a printed reminder, 0.5.95). Investigate whether opencode exposes any vetoable/continuation mechanism (a different event, a permission hook, or a 'continue' API) to enforce run-until-done, or accept the reminder as the permanent ceiling. Low priority — user rarely uses opencode."
                },
                {
                  "id": "REQ-104",
                  "status": "in_review",
                  "severity": "high",
                  "summary": "Ordinary-workspace chat has no path into the planning pipeline: owner-approved collaboration decisions land in scratchpads, room agents cannot allocate REQ/PRD/TRK ids past the parallel-worker mutation boundary, and goal-administrator grants detach when participant identity changes on runner restart"
                },
                {
                  "id": "REQ-107",
                  "status": "proposed",
                  "severity": "high",
                  "summary": "Adopt the UTCP-first tool architecture (user-directed): one UTCP manual is the source of truth for ALL prd-plugin tools including mutations, the MCP surface is generated by the official @utcp/mcp-bridge, and the 2,323-line hand-written MCP server is retired as a hand-maintained surface"
                },
                {
                  "id": "REQ-113",
                  "status": "proposed",
                  "severity": "low",
                  "summary": "Request-thread close has no validated tool: finished threads stay 'unresolved' in message_check forever unless state is hand-flipped; add a thread-close capability to the UTCP-first tool catalog (REQ-107), not as a new hand-written MCP handler"
                }
              ],
              "active_tracking": [],
              "open_health": [],
              "evidence_count": 127,
              "decision_count": 10
            },
            "findings": [],
            "source_refs": [
              ".prd_plugin/config.json",
              ".prd_plugin/state/decisions.json",
              ".prd_plugin/state/evidence.json",
              ".prd_plugin/state/health.json",
              ".prd_plugin/state/requests.json",
              ".prd_plugin/state/tracking.json",
              "REQ-072",
              "REQ-104",
              "REQ-107",
              "REQ-113"
            ],
            "constraints": {
              "max_input_tokens": 12000,
              "max_output_tokens": 1500,
              "timeout_seconds": 30,
              "require_source_refs": true,
              "no_project_state_writes": true,
              "no_secrets_or_local_session_content": true
            }
          },
          "output_hash": "a484a5456a5d407836d76b9b74f7eb427eeaa79e812e92fcba6b2d54d1cd16d6",
          "completed_at": "2026-07-16T19:16:31Z"
        },
        {
          "id": "delegated",
          "action": "reporting.delegate",
          "status": "completed",
          "resolved_input_hash": "ad60f3077afa3f8b437928e37d543485973725e618414d08211d179e6d8473a9",
          "started_at": "2026-07-16T19:16:32Z",
          "output": {
            "status": "fallback",
            "action": "main",
            "reason": "disabled"
          },
          "output_hash": "e6085059f197def80ae95add1f328418107bea5436c9bd002530043646a3a95c",
          "completed_at": "2026-07-16T19:16:32Z"
        }
      ],
      "completed_at": "2026-07-16T19:16:32Z"
    },
    {
      "id": "WFR-309",
      "schema_version": "1.0",
      "workflow_id": "session.start",
      "workflow_version": 1,
      "definition_hash": "d0f98da02571e6dd27fec4aed92d3c82af9db75f8b90b997bf665635c7b7f6ca",
      "plan_hash": "b5072615ca3b7e9a3bd85d50d1f069d99ef2a9816b32c03a370745ed7a205536",
      "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
      "inputs": {},
      "idempotency_key": "hook:SessionStart:019f6c5c-cec7-7a60-a2db-f14e80feb3f9",
      "status": "completed",
      "attempt": 1,
      "created_at": "2026-07-16T19:17:33Z",
      "updated_at": "2026-07-16T19:17:35Z",
      "receipts": [
        {
          "step_id": "config",
          "action": "config.audit",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "e8f5630220d3e8b26c18a52fd81e19f1b570f8f33a5daaff9c38eb8a62693c22",
          "completed_at": "2026-07-16T19:17:33Z"
        },
        {
          "step_id": "services",
          "action": "services.audit",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "13dcc58bd528f3efa3e6e0fa0853a6eedc376f1f3685fbd4869cbb2b60382ee3",
          "completed_at": "2026-07-16T19:17:33Z"
        },
        {
          "step_id": "state",
          "action": "state.consistency",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "5a1c6e5246defb1b6b6b90ff734db95bece2886b408ab112ed9b8e67222d5568",
          "completed_at": "2026-07-16T19:17:34Z"
        },
        {
          "step_id": "status",
          "action": "state.query",
          "input_hash": "a15231a2142a2a9a85355a8b9cbbccffe01a9c9c2c2fd8c2bc2987cdc481564a",
          "output_hash": "cda36b57b665a1052e4f88d6c67a65f32bca9d509dc3f34b54fcefd4b2bda2db",
          "completed_at": "2026-07-16T19:17:34Z"
        },
        {
          "step_id": "substrate",
          "action": "substrate.preflight",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "a6df426290b4549a59eecaa0519ead9bcc50b7fcb25bd2185ff6047960f19ccb",
          "completed_at": "2026-07-16T19:17:35Z"
        },
        {
          "step_id": "notices",
          "action": "substrate.notices",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "38b904a1cf83df048360fb2480571b749fd98d57e11f1afdffb5a74a78166fea",
          "completed_at": "2026-07-16T19:17:35Z"
        },
        {
          "step_id": "goals",
          "action": "substrate.goals",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "cdfd4de44a28140e686159f34f7b47975954c67e1d1efcef666e985acb136ed8",
          "completed_at": "2026-07-16T19:17:35Z"
        }
      ],
      "steps": [
        {
          "id": "config",
          "action": "config.audit",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-16T19:17:33Z",
          "output": {
            "status": "ok",
            "summary": {
              "settings": 196,
              "mutable": 187,
              "read_only_or_managed": 9,
              "unclassified": 0,
              "unknown": 0,
              "invalid": 0,
              "missing_using_defaults": 0
            },
            "unclassified_keys": [],
            "unknown_keys": [],
            "invalid_values": [],
            "missing_using_defaults": []
          },
          "output_hash": "e8f5630220d3e8b26c18a52fd81e19f1b570f8f33a5daaff9c38eb8a62693c22",
          "completed_at": "2026-07-16T19:17:33Z"
        },
        {
          "id": "services",
          "action": "services.audit",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-16T19:17:33Z",
          "output": {
            "status": "ok",
            "summary": {
              "critical": 0,
              "high": 0,
              "medium": 0,
              "low": 0
            },
            "findings": []
          },
          "output_hash": "13dcc58bd528f3efa3e6e0fa0853a6eedc376f1f3685fbd4869cbb2b60382ee3",
          "completed_at": "2026-07-16T19:17:33Z"
        },
        {
          "id": "state",
          "action": "state.consistency",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-16T19:17:33Z",
          "output": {
            "status": "ok",
            "repo_root": "D:\\Projects\\prd-plugin",
            "summary": {
              "errors": 0,
              "warnings": 0,
              "infos": 0
            },
            "findings": []
          },
          "output_hash": "5a1c6e5246defb1b6b6b90ff734db95bece2886b408ab112ed9b8e67222d5568",
          "completed_at": "2026-07-16T19:17:34Z"
        },
        {
          "id": "status",
          "action": "state.query",
          "status": "completed",
          "resolved_input_hash": "a15231a2142a2a9a85355a8b9cbbccffe01a9c9c2c2fd8c2bc2987cdc481564a",
          "started_at": "2026-07-16T19:17:34Z",
          "output": {
            "repo_root": "D:\\Projects\\prd-plugin",
            "autonomy_level": "autonomous",
            "requests_by_status": {
              "deferred": 1,
              "implemented": 90,
              "in_review": 1,
              "proposed": 3,
              "rejected": 1
            },
            "active_tracking": [],
            "tracking_branches": [],
            "tracking_branch_counts": {},
            "tracking_branch_errors": [],
            "open_health": [],
            "stale_count": 0,
            "skill_usage": {
              "project-decision-policy": 1,
              "project-request-intake": 1,
              "project-test-driven-implementation": 1,
              "project-verification-before-completion": 1,
              "project-llm-wiki": 1
            },
            "wiki_backfill_pending": false,
            "version_update": null
          },
          "output_hash": "cda36b57b665a1052e4f88d6c67a65f32bca9d509dc3f34b54fcefd4b2bda2db",
          "completed_at": "2026-07-16T19:17:34Z"
        },
        {
          "id": "substrate",
          "action": "substrate.preflight",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-16T19:17:35Z",
          "output": {
            "status": "disabled",
            "services": {
              "status": "ok",
              "summary": {
                "critical": 0,
                "high": 0,
                "medium": 0,
                "low": 0
              },
              "findings": []
            },
            "policy": {
              "configured": {
                "enabled": false,
                "mode": "off",
                "capabilities": [
                  "records",
                  "graph",
                  "events"
                ],
                "contract_version": 2,
                "require_source_refs": true,
                "endpoint": "http://127.0.0.1:47124",
                "manual_url": "http://127.0.0.1:47124/utcp.json",
                "knowledge_browse_url": "http://127.0.0.1:5276",
                "auth_env": "AI_COLLAB_API_KEY",
                "timeout_seconds": 5,
                "max_result_bytes": 1048576,
                "cache_ttl_seconds": 60,
                "fallback": "local",
                "automation": {
                  "discovery_on_session_start": true,
                  "knowledge_recall": true,
                  "memory_recall": true,
                  "context_enrichment": true,
                  "notices_on_session_start": false,
                  "goals_sync": false,
                  "telemetry_on_maintenance": false,
                  "reporting_dispatch": true,
                  "judgment_dispatch": true,
                  "verification_execution": true
                }
              },
              "active": false,
              "effective_mode": "off",
              "effective_capabilities": []
            }
          },
          "output_hash": "a6df426290b4549a59eecaa0519ead9bcc50b7fcb25bd2185ff6047960f19ccb",
          "completed_at": "2026-07-16T19:17:35Z"
        },
        {
          "id": "notices",
          "action": "substrate.notices",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-16T19:17:35Z",
          "output": {
            "status": "disabled"
          },
          "output_hash": "38b904a1cf83df048360fb2480571b749fd98d57e11f1afdffb5a74a78166fea",
          "completed_at": "2026-07-16T19:17:35Z"
        },
        {
          "id": "goals",
          "action": "substrate.goals",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-16T19:17:35Z",
          "output": {
            "status": "disabled",
            "created": 0,
            "observed": 0,
            "results": []
          },
          "output_hash": "cdfd4de44a28140e686159f34f7b47975954c67e1d1efcef666e985acb136ed8",
          "completed_at": "2026-07-16T19:17:35Z"
        }
      ],
      "completed_at": "2026-07-16T19:17:35Z"
    },
    {
      "id": "WFR-310",
      "schema_version": "1.0",
      "workflow_id": "session.stop",
      "workflow_version": 1,
      "definition_hash": "0cef7bb3e28321be8f85375c154955a69310ce297e47de3f3b8dd48f77a2f07d",
      "plan_hash": "a5e1d77ac734217487fc418e29c7163f4e81178e25d171e70cd4c999d527d3e8",
      "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
      "inputs": {},
      "idempotency_key": "hook:Stop:019f6c5c-cec7-7a60-a2db-f14e80feb3f9",
      "status": "completed",
      "attempt": 1,
      "created_at": "2026-07-16T19:17:40Z",
      "updated_at": "2026-07-16T19:17:43Z",
      "receipts": [
        {
          "step_id": "state",
          "action": "state.consistency",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "5a1c6e5246defb1b6b6b90ff734db95bece2886b408ab112ed9b8e67222d5568",
          "completed_at": "2026-07-16T19:17:42Z"
        },
        {
          "step_id": "goals",
          "action": "substrate.goals",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "cdfd4de44a28140e686159f34f7b47975954c67e1d1efcef666e985acb136ed8",
          "completed_at": "2026-07-16T19:17:42Z"
        },
        {
          "step_id": "staleness",
          "action": "staleness.audit",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "1e81cb0ffd0a4d04626920a203b38d2d23a264cd43e807a85d375d69cae8a658",
          "completed_at": "2026-07-16T19:17:42Z"
        },
        {
          "step_id": "reflections",
          "action": "reflection.list",
          "input_hash": "0172e841ab4c13b3a4061f073f9d68a716ec87a8a5d52fde41823385e0582573",
          "output_hash": "c1b6b635c0bab21120657277f14ef6f839909875f307a3745fa48aee2bd6e449",
          "completed_at": "2026-07-16T19:17:42Z"
        },
        {
          "step_id": "bundle",
          "action": "reporting.bundle",
          "input_hash": "aed8ebb688dc3c085dd978d7c4120572173c3cb87e75919e4a937dcca6ef9457",
          "output_hash": "a484a5456a5d407836d76b9b74f7eb427eeaa79e812e92fcba6b2d54d1cd16d6",
          "completed_at": "2026-07-16T19:17:43Z"
        },
        {
          "step_id": "delegated",
          "action": "reporting.delegate",
          "input_hash": "ad60f3077afa3f8b437928e37d543485973725e618414d08211d179e6d8473a9",
          "output_hash": "e6085059f197def80ae95add1f328418107bea5436c9bd002530043646a3a95c",
          "completed_at": "2026-07-16T19:17:43Z"
        }
      ],
      "steps": [
        {
          "id": "state",
          "action": "state.consistency",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-16T19:17:41Z",
          "output": {
            "status": "ok",
            "repo_root": "D:\\Projects\\prd-plugin",
            "summary": {
              "errors": 0,
              "warnings": 0,
              "infos": 0
            },
            "findings": []
          },
          "output_hash": "5a1c6e5246defb1b6b6b90ff734db95bece2886b408ab112ed9b8e67222d5568",
          "completed_at": "2026-07-16T19:17:42Z"
        },
        {
          "id": "goals",
          "action": "substrate.goals",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-16T19:17:42Z",
          "output": {
            "status": "disabled",
            "created": 0,
            "observed": 0,
            "results": []
          },
          "output_hash": "cdfd4de44a28140e686159f34f7b47975954c67e1d1efcef666e985acb136ed8",
          "completed_at": "2026-07-16T19:17:42Z"
        },
        {
          "id": "staleness",
          "action": "staleness.audit",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-16T19:17:42Z",
          "output": {
            "status": "ok",
            "repo_root": "D:\\Projects\\prd-plugin",
            "counts": {
              "stale": 0
            },
            "stale": []
          },
          "output_hash": "1e81cb0ffd0a4d04626920a203b38d2d23a264cd43e807a85d375d69cae8a658",
          "completed_at": "2026-07-16T19:17:42Z"
        },
        {
          "id": "reflections",
          "action": "reflection.list",
          "status": "completed",
          "resolved_input_hash": "0172e841ab4c13b3a4061f073f9d68a716ec87a8a5d52fde41823385e0582573",
          "started_at": "2026-07-16T19:17:42Z",
          "output": {
            "enabled": false,
            "on_stop": true,
            "max_questions_per_stop": 5,
            "categories": [
              {
                "id": "behaviour_quality",
                "name": "Behaviour quality",
                "enabled": true,
                "question_count": 3
              },
              {
                "id": "harness_friction",
                "name": "Harness friction",
                "enabled": true,
                "question_count": 2
              }
            ],
            "questions": [
              {
                "id": "RFQ-001",
                "text": "Based on the work you just carried out, would you classify your behaviour as good? Answer yes or no and cite observable evidence.",
                "enabled": true,
                "category_id": "behaviour_quality",
                "category_name": "Behaviour quality",
                "effective_enabled": false
              },
              {
                "id": "RFQ-002",
                "text": "If you answered no, what could you do differently to correct your behaviour?",
                "enabled": true,
                "category_id": "behaviour_quality",
                "category_name": "Behaviour quality",
                "effective_enabled": false
              },
              {
                "id": "RFQ-003",
                "text": "Would another attempt using the identified good behaviours materially improve the outcome? Answer yes or no and state the next corrective action if yes.",
                "enabled": true,
                "category_id": "behaviour_quality",
                "category_name": "Behaviour quality",
                "effective_enabled": false
              },
              {
                "id": "RFQ-004",
                "text": "What harness friction points made this work more difficult?",
                "enabled": true,
                "category_id": "harness_friction",
                "category_name": "Harness friction",
                "effective_enabled": false
              },
              {
                "id": "RFQ-005",
                "text": "What up to three changes would most improve friction in the harness?",
                "enabled": true,
                "category_id": "harness_friction",
                "category_name": "Harness friction",
                "effective_enabled": false
              }
            ]
          },
          "output_hash": "c1b6b635c0bab21120657277f14ef6f839909875f307a3745fa48aee2bd6e449",
          "completed_at": "2026-07-16T19:17:42Z"
        },
        {
          "id": "bundle",
          "action": "reporting.bundle",
          "status": "completed",
          "resolved_input_hash": "aed8ebb688dc3c085dd978d7c4120572173c3cb87e75919e4a937dcca6ef9457",
          "started_at": "2026-07-16T19:17:43Z",
          "output": {
            "contract_version": 1,
            "task": "session_summary",
            "repo": "prd-plugin",
            "policy": {
              "enabled": false,
              "executor": "ai-collab",
              "contract_version": 1,
              "profile": "fast-capable",
              "tasks": [
                "report_summary",
                "session_summary",
                "wiki_synthesis",
                "triage_draft"
              ],
              "fallback": "main",
              "require_source_refs": true,
              "max_input_tokens": 12000,
              "max_output_tokens": 1500,
              "timeout_seconds": 30
            },
            "facts": {
              "requests_by_status": {
                "deferred": 1,
                "implemented": 90,
                "in_review": 1,
                "proposed": 3,
                "rejected": 1
              },
              "active_requests": [
                {
                  "id": "REQ-072",
                  "status": "proposed",
                  "severity": "low",
                  "summary": "opencode run-until-done: session.idle is a non-blocking notification, so the stop guard can't force continuation on opencode (currently degrades to a printed reminder, 0.5.95). Investigate whether opencode exposes any vetoable/continuation mechanism (a different event, a permission hook, or a 'continue' API) to enforce run-until-done, or accept the reminder as the permanent ceiling. Low priority — user rarely uses opencode."
                },
                {
                  "id": "REQ-104",
                  "status": "in_review",
                  "severity": "high",
                  "summary": "Ordinary-workspace chat has no path into the planning pipeline: owner-approved collaboration decisions land in scratchpads, room agents cannot allocate REQ/PRD/TRK ids past the parallel-worker mutation boundary, and goal-administrator grants detach when participant identity changes on runner restart"
                },
                {
                  "id": "REQ-107",
                  "status": "proposed",
                  "severity": "high",
                  "summary": "Adopt the UTCP-first tool architecture (user-directed): one UTCP manual is the source of truth for ALL prd-plugin tools including mutations, the MCP surface is generated by the official @utcp/mcp-bridge, and the 2,323-line hand-written MCP server is retired as a hand-maintained surface"
                },
                {
                  "id": "REQ-113",
                  "status": "proposed",
                  "severity": "low",
                  "summary": "Request-thread close has no validated tool: finished threads stay 'unresolved' in message_check forever unless state is hand-flipped; add a thread-close capability to the UTCP-first tool catalog (REQ-107), not as a new hand-written MCP handler"
                }
              ],
              "active_tracking": [],
              "open_health": [],
              "evidence_count": 127,
              "decision_count": 10
            },
            "findings": [],
            "source_refs": [
              ".prd_plugin/config.json",
              ".prd_plugin/state/decisions.json",
              ".prd_plugin/state/evidence.json",
              ".prd_plugin/state/health.json",
              ".prd_plugin/state/requests.json",
              ".prd_plugin/state/tracking.json",
              "REQ-072",
              "REQ-104",
              "REQ-107",
              "REQ-113"
            ],
            "constraints": {
              "max_input_tokens": 12000,
              "max_output_tokens": 1500,
              "timeout_seconds": 30,
              "require_source_refs": true,
              "no_project_state_writes": true,
              "no_secrets_or_local_session_content": true
            }
          },
          "output_hash": "a484a5456a5d407836d76b9b74f7eb427eeaa79e812e92fcba6b2d54d1cd16d6",
          "completed_at": "2026-07-16T19:17:43Z"
        },
        {
          "id": "delegated",
          "action": "reporting.delegate",
          "status": "completed",
          "resolved_input_hash": "ad60f3077afa3f8b437928e37d543485973725e618414d08211d179e6d8473a9",
          "started_at": "2026-07-16T19:17:43Z",
          "output": {
            "status": "fallback",
            "action": "main",
            "reason": "disabled"
          },
          "output_hash": "e6085059f197def80ae95add1f328418107bea5436c9bd002530043646a3a95c",
          "completed_at": "2026-07-16T19:17:43Z"
        }
      ],
      "completed_at": "2026-07-16T19:17:43Z"
    },
    {
      "id": "WFR-311",
      "schema_version": "1.0",
      "workflow_id": "session.start",
      "workflow_version": 1,
      "definition_hash": "d0f98da02571e6dd27fec4aed92d3c82af9db75f8b90b997bf665635c7b7f6ca",
      "plan_hash": "b5072615ca3b7e9a3bd85d50d1f069d99ef2a9816b32c03a370745ed7a205536",
      "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
      "inputs": {},
      "idempotency_key": "hook:SessionStart:019f6c73-0041-7ac2-85a5-f45d9ad6f09e",
      "status": "completed",
      "attempt": 1,
      "created_at": "2026-07-16T19:41:47Z",
      "updated_at": "2026-07-16T19:41:51Z",
      "receipts": [
        {
          "step_id": "config",
          "action": "config.audit",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "e8f5630220d3e8b26c18a52fd81e19f1b570f8f33a5daaff9c38eb8a62693c22",
          "completed_at": "2026-07-16T19:41:47Z"
        },
        {
          "step_id": "services",
          "action": "services.audit",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "13dcc58bd528f3efa3e6e0fa0853a6eedc376f1f3685fbd4869cbb2b60382ee3",
          "completed_at": "2026-07-16T19:41:47Z"
        },
        {
          "step_id": "state",
          "action": "state.consistency",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "5a1c6e5246defb1b6b6b90ff734db95bece2886b408ab112ed9b8e67222d5568",
          "completed_at": "2026-07-16T19:41:50Z"
        },
        {
          "step_id": "status",
          "action": "state.query",
          "input_hash": "a15231a2142a2a9a85355a8b9cbbccffe01a9c9c2c2fd8c2bc2987cdc481564a",
          "output_hash": "cda36b57b665a1052e4f88d6c67a65f32bca9d509dc3f34b54fcefd4b2bda2db",
          "completed_at": "2026-07-16T19:41:51Z"
        },
        {
          "step_id": "substrate",
          "action": "substrate.preflight",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "a6df426290b4549a59eecaa0519ead9bcc50b7fcb25bd2185ff6047960f19ccb",
          "completed_at": "2026-07-16T19:41:51Z"
        },
        {
          "step_id": "notices",
          "action": "substrate.notices",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "38b904a1cf83df048360fb2480571b749fd98d57e11f1afdffb5a74a78166fea",
          "completed_at": "2026-07-16T19:41:51Z"
        },
        {
          "step_id": "goals",
          "action": "substrate.goals",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "cdfd4de44a28140e686159f34f7b47975954c67e1d1efcef666e985acb136ed8",
          "completed_at": "2026-07-16T19:41:51Z"
        }
      ],
      "steps": [
        {
          "id": "config",
          "action": "config.audit",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-16T19:41:47Z",
          "output": {
            "status": "ok",
            "summary": {
              "settings": 196,
              "mutable": 187,
              "read_only_or_managed": 9,
              "unclassified": 0,
              "unknown": 0,
              "invalid": 0,
              "missing_using_defaults": 0
            },
            "unclassified_keys": [],
            "unknown_keys": [],
            "invalid_values": [],
            "missing_using_defaults": []
          },
          "output_hash": "e8f5630220d3e8b26c18a52fd81e19f1b570f8f33a5daaff9c38eb8a62693c22",
          "completed_at": "2026-07-16T19:41:47Z"
        },
        {
          "id": "services",
          "action": "services.audit",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-16T19:41:47Z",
          "output": {
            "status": "ok",
            "summary": {
              "critical": 0,
              "high": 0,
              "medium": 0,
              "low": 0
            },
            "findings": []
          },
          "output_hash": "13dcc58bd528f3efa3e6e0fa0853a6eedc376f1f3685fbd4869cbb2b60382ee3",
          "completed_at": "2026-07-16T19:41:47Z"
        },
        {
          "id": "state",
          "action": "state.consistency",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-16T19:41:48Z",
          "output": {
            "status": "ok",
            "repo_root": "D:\\Projects\\prd-plugin",
            "summary": {
              "errors": 0,
              "warnings": 0,
              "infos": 0
            },
            "findings": []
          },
          "output_hash": "5a1c6e5246defb1b6b6b90ff734db95bece2886b408ab112ed9b8e67222d5568",
          "completed_at": "2026-07-16T19:41:50Z"
        },
        {
          "id": "status",
          "action": "state.query",
          "status": "completed",
          "resolved_input_hash": "a15231a2142a2a9a85355a8b9cbbccffe01a9c9c2c2fd8c2bc2987cdc481564a",
          "started_at": "2026-07-16T19:41:50Z",
          "output": {
            "repo_root": "D:\\Projects\\prd-plugin",
            "autonomy_level": "autonomous",
            "requests_by_status": {
              "deferred": 1,
              "implemented": 90,
              "in_review": 1,
              "proposed": 3,
              "rejected": 1
            },
            "active_tracking": [],
            "tracking_branches": [],
            "tracking_branch_counts": {},
            "tracking_branch_errors": [],
            "open_health": [],
            "stale_count": 0,
            "skill_usage": {
              "project-decision-policy": 1,
              "project-request-intake": 1,
              "project-test-driven-implementation": 1,
              "project-verification-before-completion": 1,
              "project-llm-wiki": 1
            },
            "wiki_backfill_pending": false,
            "version_update": null
          },
          "output_hash": "cda36b57b665a1052e4f88d6c67a65f32bca9d509dc3f34b54fcefd4b2bda2db",
          "completed_at": "2026-07-16T19:41:51Z"
        },
        {
          "id": "substrate",
          "action": "substrate.preflight",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-16T19:41:51Z",
          "output": {
            "status": "disabled",
            "services": {
              "status": "ok",
              "summary": {
                "critical": 0,
                "high": 0,
                "medium": 0,
                "low": 0
              },
              "findings": []
            },
            "policy": {
              "configured": {
                "enabled": false,
                "mode": "off",
                "capabilities": [
                  "records",
                  "graph",
                  "events"
                ],
                "contract_version": 2,
                "require_source_refs": true,
                "endpoint": "http://127.0.0.1:47124",
                "manual_url": "http://127.0.0.1:47124/utcp.json",
                "knowledge_browse_url": "http://127.0.0.1:5276",
                "auth_env": "AI_COLLAB_API_KEY",
                "timeout_seconds": 5,
                "max_result_bytes": 1048576,
                "cache_ttl_seconds": 60,
                "fallback": "local",
                "automation": {
                  "discovery_on_session_start": true,
                  "knowledge_recall": true,
                  "memory_recall": true,
                  "context_enrichment": true,
                  "notices_on_session_start": false,
                  "goals_sync": false,
                  "telemetry_on_maintenance": false,
                  "reporting_dispatch": true,
                  "judgment_dispatch": true,
                  "verification_execution": true
                }
              },
              "active": false,
              "effective_mode": "off",
              "effective_capabilities": []
            }
          },
          "output_hash": "a6df426290b4549a59eecaa0519ead9bcc50b7fcb25bd2185ff6047960f19ccb",
          "completed_at": "2026-07-16T19:41:51Z"
        },
        {
          "id": "notices",
          "action": "substrate.notices",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-16T19:41:51Z",
          "output": {
            "status": "disabled"
          },
          "output_hash": "38b904a1cf83df048360fb2480571b749fd98d57e11f1afdffb5a74a78166fea",
          "completed_at": "2026-07-16T19:41:51Z"
        },
        {
          "id": "goals",
          "action": "substrate.goals",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-16T19:41:51Z",
          "output": {
            "status": "disabled",
            "created": 0,
            "observed": 0,
            "results": []
          },
          "output_hash": "cdfd4de44a28140e686159f34f7b47975954c67e1d1efcef666e985acb136ed8",
          "completed_at": "2026-07-16T19:41:51Z"
        }
      ],
      "completed_at": "2026-07-16T19:41:51Z"
    },
    {
      "id": "WFR-312",
      "schema_version": "1.0",
      "workflow_id": "session.stop",
      "workflow_version": 1,
      "definition_hash": "0cef7bb3e28321be8f85375c154955a69310ce297e47de3f3b8dd48f77a2f07d",
      "plan_hash": "a5e1d77ac734217487fc418e29c7163f4e81178e25d171e70cd4c999d527d3e8",
      "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
      "inputs": {},
      "idempotency_key": "hook:Stop:019f6c73-0041-7ac2-85a5-f45d9ad6f09e",
      "status": "completed",
      "attempt": 1,
      "created_at": "2026-07-16T19:43:11Z",
      "updated_at": "2026-07-16T19:43:13Z",
      "receipts": [
        {
          "step_id": "state",
          "action": "state.consistency",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "5a1c6e5246defb1b6b6b90ff734db95bece2886b408ab112ed9b8e67222d5568",
          "completed_at": "2026-07-16T19:43:12Z"
        },
        {
          "step_id": "goals",
          "action": "substrate.goals",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "cdfd4de44a28140e686159f34f7b47975954c67e1d1efcef666e985acb136ed8",
          "completed_at": "2026-07-16T19:43:12Z"
        },
        {
          "step_id": "staleness",
          "action": "staleness.audit",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "1e81cb0ffd0a4d04626920a203b38d2d23a264cd43e807a85d375d69cae8a658",
          "completed_at": "2026-07-16T19:43:13Z"
        },
        {
          "step_id": "reflections",
          "action": "reflection.list",
          "input_hash": "0172e841ab4c13b3a4061f073f9d68a716ec87a8a5d52fde41823385e0582573",
          "output_hash": "c1b6b635c0bab21120657277f14ef6f839909875f307a3745fa48aee2bd6e449",
          "completed_at": "2026-07-16T19:43:13Z"
        },
        {
          "step_id": "bundle",
          "action": "reporting.bundle",
          "input_hash": "aed8ebb688dc3c085dd978d7c4120572173c3cb87e75919e4a937dcca6ef9457",
          "output_hash": "a484a5456a5d407836d76b9b74f7eb427eeaa79e812e92fcba6b2d54d1cd16d6",
          "completed_at": "2026-07-16T19:43:13Z"
        },
        {
          "step_id": "delegated",
          "action": "reporting.delegate",
          "input_hash": "ad60f3077afa3f8b437928e37d543485973725e618414d08211d179e6d8473a9",
          "output_hash": "e6085059f197def80ae95add1f328418107bea5436c9bd002530043646a3a95c",
          "completed_at": "2026-07-16T19:43:13Z"
        }
      ],
      "steps": [
        {
          "id": "state",
          "action": "state.consistency",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-16T19:43:11Z",
          "output": {
            "status": "ok",
            "repo_root": "D:\\Projects\\prd-plugin",
            "summary": {
              "errors": 0,
              "warnings": 0,
              "infos": 0
            },
            "findings": []
          },
          "output_hash": "5a1c6e5246defb1b6b6b90ff734db95bece2886b408ab112ed9b8e67222d5568",
          "completed_at": "2026-07-16T19:43:12Z"
        },
        {
          "id": "goals",
          "action": "substrate.goals",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-16T19:43:12Z",
          "output": {
            "status": "disabled",
            "created": 0,
            "observed": 0,
            "results": []
          },
          "output_hash": "cdfd4de44a28140e686159f34f7b47975954c67e1d1efcef666e985acb136ed8",
          "completed_at": "2026-07-16T19:43:12Z"
        },
        {
          "id": "staleness",
          "action": "staleness.audit",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-16T19:43:13Z",
          "output": {
            "status": "ok",
            "repo_root": "D:\\Projects\\prd-plugin",
            "counts": {
              "stale": 0
            },
            "stale": []
          },
          "output_hash": "1e81cb0ffd0a4d04626920a203b38d2d23a264cd43e807a85d375d69cae8a658",
          "completed_at": "2026-07-16T19:43:13Z"
        },
        {
          "id": "reflections",
          "action": "reflection.list",
          "status": "completed",
          "resolved_input_hash": "0172e841ab4c13b3a4061f073f9d68a716ec87a8a5d52fde41823385e0582573",
          "started_at": "2026-07-16T19:43:13Z",
          "output": {
            "enabled": false,
            "on_stop": true,
            "max_questions_per_stop": 5,
            "categories": [
              {
                "id": "behaviour_quality",
                "name": "Behaviour quality",
                "enabled": true,
                "question_count": 3
              },
              {
                "id": "harness_friction",
                "name": "Harness friction",
                "enabled": true,
                "question_count": 2
              }
            ],
            "questions": [
              {
                "id": "RFQ-001",
                "text": "Based on the work you just carried out, would you classify your behaviour as good? Answer yes or no and cite observable evidence.",
                "enabled": true,
                "category_id": "behaviour_quality",
                "category_name": "Behaviour quality",
                "effective_enabled": false
              },
              {
                "id": "RFQ-002",
                "text": "If you answered no, what could you do differently to correct your behaviour?",
                "enabled": true,
                "category_id": "behaviour_quality",
                "category_name": "Behaviour quality",
                "effective_enabled": false
              },
              {
                "id": "RFQ-003",
                "text": "Would another attempt using the identified good behaviours materially improve the outcome? Answer yes or no and state the next corrective action if yes.",
                "enabled": true,
                "category_id": "behaviour_quality",
                "category_name": "Behaviour quality",
                "effective_enabled": false
              },
              {
                "id": "RFQ-004",
                "text": "What harness friction points made this work more difficult?",
                "enabled": true,
                "category_id": "harness_friction",
                "category_name": "Harness friction",
                "effective_enabled": false
              },
              {
                "id": "RFQ-005",
                "text": "What up to three changes would most improve friction in the harness?",
                "enabled": true,
                "category_id": "harness_friction",
                "category_name": "Harness friction",
                "effective_enabled": false
              }
            ]
          },
          "output_hash": "c1b6b635c0bab21120657277f14ef6f839909875f307a3745fa48aee2bd6e449",
          "completed_at": "2026-07-16T19:43:13Z"
        },
        {
          "id": "bundle",
          "action": "reporting.bundle",
          "status": "completed",
          "resolved_input_hash": "aed8ebb688dc3c085dd978d7c4120572173c3cb87e75919e4a937dcca6ef9457",
          "started_at": "2026-07-16T19:43:13Z",
          "output": {
            "contract_version": 1,
            "task": "session_summary",
            "repo": "prd-plugin",
            "policy": {
              "enabled": false,
              "executor": "ai-collab",
              "contract_version": 1,
              "profile": "fast-capable",
              "tasks": [
                "report_summary",
                "session_summary",
                "wiki_synthesis",
                "triage_draft"
              ],
              "fallback": "main",
              "require_source_refs": true,
              "max_input_tokens": 12000,
              "max_output_tokens": 1500,
              "timeout_seconds": 30
            },
            "facts": {
              "requests_by_status": {
                "deferred": 1,
                "implemented": 90,
                "in_review": 1,
                "proposed": 3,
                "rejected": 1
              },
              "active_requests": [
                {
                  "id": "REQ-072",
                  "status": "proposed",
                  "severity": "low",
                  "summary": "opencode run-until-done: session.idle is a non-blocking notification, so the stop guard can't force continuation on opencode (currently degrades to a printed reminder, 0.5.95). Investigate whether opencode exposes any vetoable/continuation mechanism (a different event, a permission hook, or a 'continue' API) to enforce run-until-done, or accept the reminder as the permanent ceiling. Low priority — user rarely uses opencode."
                },
                {
                  "id": "REQ-104",
                  "status": "in_review",
                  "severity": "high",
                  "summary": "Ordinary-workspace chat has no path into the planning pipeline: owner-approved collaboration decisions land in scratchpads, room agents cannot allocate REQ/PRD/TRK ids past the parallel-worker mutation boundary, and goal-administrator grants detach when participant identity changes on runner restart"
                },
                {
                  "id": "REQ-107",
                  "status": "proposed",
                  "severity": "high",
                  "summary": "Adopt the UTCP-first tool architecture (user-directed): one UTCP manual is the source of truth for ALL prd-plugin tools including mutations, the MCP surface is generated by the official @utcp/mcp-bridge, and the 2,323-line hand-written MCP server is retired as a hand-maintained surface"
                },
                {
                  "id": "REQ-113",
                  "status": "proposed",
                  "severity": "low",
                  "summary": "Request-thread close has no validated tool: finished threads stay 'unresolved' in message_check forever unless state is hand-flipped; add a thread-close capability to the UTCP-first tool catalog (REQ-107), not as a new hand-written MCP handler"
                }
              ],
              "active_tracking": [],
              "open_health": [],
              "evidence_count": 127,
              "decision_count": 10
            },
            "findings": [],
            "source_refs": [
              ".prd_plugin/config.json",
              ".prd_plugin/state/decisions.json",
              ".prd_plugin/state/evidence.json",
              ".prd_plugin/state/health.json",
              ".prd_plugin/state/requests.json",
              ".prd_plugin/state/tracking.json",
              "REQ-072",
              "REQ-104",
              "REQ-107",
              "REQ-113"
            ],
            "constraints": {
              "max_input_tokens": 12000,
              "max_output_tokens": 1500,
              "timeout_seconds": 30,
              "require_source_refs": true,
              "no_project_state_writes": true,
              "no_secrets_or_local_session_content": true
            }
          },
          "output_hash": "a484a5456a5d407836d76b9b74f7eb427eeaa79e812e92fcba6b2d54d1cd16d6",
          "completed_at": "2026-07-16T19:43:13Z"
        },
        {
          "id": "delegated",
          "action": "reporting.delegate",
          "status": "completed",
          "resolved_input_hash": "ad60f3077afa3f8b437928e37d543485973725e618414d08211d179e6d8473a9",
          "started_at": "2026-07-16T19:43:13Z",
          "output": {
            "status": "fallback",
            "action": "main",
            "reason": "disabled"
          },
          "output_hash": "e6085059f197def80ae95add1f328418107bea5436c9bd002530043646a3a95c",
          "completed_at": "2026-07-16T19:43:13Z"
        }
      ],
      "completed_at": "2026-07-16T19:43:13Z"
    },
    {
      "id": "WFR-313",
      "schema_version": "1.0",
      "workflow_id": "session.start",
      "workflow_version": 1,
      "definition_hash": "d0f98da02571e6dd27fec4aed92d3c82af9db75f8b90b997bf665635c7b7f6ca",
      "plan_hash": "b5072615ca3b7e9a3bd85d50d1f069d99ef2a9816b32c03a370745ed7a205536",
      "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
      "inputs": {},
      "idempotency_key": "hook:SessionStart:019f6c74-a477-7013-a338-910fc51a3c20",
      "status": "completed",
      "attempt": 1,
      "created_at": "2026-07-16T19:43:35Z",
      "updated_at": "2026-07-16T19:43:38Z",
      "receipts": [
        {
          "step_id": "config",
          "action": "config.audit",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "e8f5630220d3e8b26c18a52fd81e19f1b570f8f33a5daaff9c38eb8a62693c22",
          "completed_at": "2026-07-16T19:43:36Z"
        },
        {
          "step_id": "services",
          "action": "services.audit",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "13dcc58bd528f3efa3e6e0fa0853a6eedc376f1f3685fbd4869cbb2b60382ee3",
          "completed_at": "2026-07-16T19:43:36Z"
        },
        {
          "step_id": "state",
          "action": "state.consistency",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "5a1c6e5246defb1b6b6b90ff734db95bece2886b408ab112ed9b8e67222d5568",
          "completed_at": "2026-07-16T19:43:37Z"
        },
        {
          "step_id": "status",
          "action": "state.query",
          "input_hash": "a15231a2142a2a9a85355a8b9cbbccffe01a9c9c2c2fd8c2bc2987cdc481564a",
          "output_hash": "cda36b57b665a1052e4f88d6c67a65f32bca9d509dc3f34b54fcefd4b2bda2db",
          "completed_at": "2026-07-16T19:43:37Z"
        },
        {
          "step_id": "substrate",
          "action": "substrate.preflight",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "a6df426290b4549a59eecaa0519ead9bcc50b7fcb25bd2185ff6047960f19ccb",
          "completed_at": "2026-07-16T19:43:37Z"
        },
        {
          "step_id": "notices",
          "action": "substrate.notices",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "38b904a1cf83df048360fb2480571b749fd98d57e11f1afdffb5a74a78166fea",
          "completed_at": "2026-07-16T19:43:37Z"
        },
        {
          "step_id": "goals",
          "action": "substrate.goals",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "cdfd4de44a28140e686159f34f7b47975954c67e1d1efcef666e985acb136ed8",
          "completed_at": "2026-07-16T19:43:37Z"
        }
      ],
      "steps": [
        {
          "id": "config",
          "action": "config.audit",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-16T19:43:36Z",
          "output": {
            "status": "ok",
            "summary": {
              "settings": 196,
              "mutable": 187,
              "read_only_or_managed": 9,
              "unclassified": 0,
              "unknown": 0,
              "invalid": 0,
              "missing_using_defaults": 0
            },
            "unclassified_keys": [],
            "unknown_keys": [],
            "invalid_values": [],
            "missing_using_defaults": []
          },
          "output_hash": "e8f5630220d3e8b26c18a52fd81e19f1b570f8f33a5daaff9c38eb8a62693c22",
          "completed_at": "2026-07-16T19:43:36Z"
        },
        {
          "id": "services",
          "action": "services.audit",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-16T19:43:36Z",
          "output": {
            "status": "ok",
            "summary": {
              "critical": 0,
              "high": 0,
              "medium": 0,
              "low": 0
            },
            "findings": []
          },
          "output_hash": "13dcc58bd528f3efa3e6e0fa0853a6eedc376f1f3685fbd4869cbb2b60382ee3",
          "completed_at": "2026-07-16T19:43:36Z"
        },
        {
          "id": "state",
          "action": "state.consistency",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-16T19:43:36Z",
          "output": {
            "status": "ok",
            "repo_root": "D:\\Projects\\prd-plugin",
            "summary": {
              "errors": 0,
              "warnings": 0,
              "infos": 0
            },
            "findings": []
          },
          "output_hash": "5a1c6e5246defb1b6b6b90ff734db95bece2886b408ab112ed9b8e67222d5568",
          "completed_at": "2026-07-16T19:43:37Z"
        },
        {
          "id": "status",
          "action": "state.query",
          "status": "completed",
          "resolved_input_hash": "a15231a2142a2a9a85355a8b9cbbccffe01a9c9c2c2fd8c2bc2987cdc481564a",
          "started_at": "2026-07-16T19:43:37Z",
          "output": {
            "repo_root": "D:\\Projects\\prd-plugin",
            "autonomy_level": "autonomous",
            "requests_by_status": {
              "deferred": 1,
              "implemented": 90,
              "in_review": 1,
              "proposed": 3,
              "rejected": 1
            },
            "active_tracking": [],
            "tracking_branches": [],
            "tracking_branch_counts": {},
            "tracking_branch_errors": [],
            "open_health": [],
            "stale_count": 0,
            "skill_usage": {
              "project-decision-policy": 1,
              "project-request-intake": 1,
              "project-test-driven-implementation": 1,
              "project-verification-before-completion": 1,
              "project-llm-wiki": 1
            },
            "wiki_backfill_pending": false,
            "version_update": null
          },
          "output_hash": "cda36b57b665a1052e4f88d6c67a65f32bca9d509dc3f34b54fcefd4b2bda2db",
          "completed_at": "2026-07-16T19:43:37Z"
        },
        {
          "id": "substrate",
          "action": "substrate.preflight",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-16T19:43:37Z",
          "output": {
            "status": "disabled",
            "services": {
              "status": "ok",
              "summary": {
                "critical": 0,
                "high": 0,
                "medium": 0,
                "low": 0
              },
              "findings": []
            },
            "policy": {
              "configured": {
                "enabled": false,
                "mode": "off",
                "capabilities": [
                  "records",
                  "graph",
                  "events"
                ],
                "contract_version": 2,
                "require_source_refs": true,
                "endpoint": "http://127.0.0.1:47124",
                "manual_url": "http://127.0.0.1:47124/utcp.json",
                "knowledge_browse_url": "http://127.0.0.1:5276",
                "auth_env": "AI_COLLAB_API_KEY",
                "timeout_seconds": 5,
                "max_result_bytes": 1048576,
                "cache_ttl_seconds": 60,
                "fallback": "local",
                "automation": {
                  "discovery_on_session_start": true,
                  "knowledge_recall": true,
                  "memory_recall": true,
                  "context_enrichment": true,
                  "notices_on_session_start": false,
                  "goals_sync": false,
                  "telemetry_on_maintenance": false,
                  "reporting_dispatch": true,
                  "judgment_dispatch": true,
                  "verification_execution": true
                }
              },
              "active": false,
              "effective_mode": "off",
              "effective_capabilities": []
            }
          },
          "output_hash": "a6df426290b4549a59eecaa0519ead9bcc50b7fcb25bd2185ff6047960f19ccb",
          "completed_at": "2026-07-16T19:43:37Z"
        },
        {
          "id": "notices",
          "action": "substrate.notices",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-16T19:43:37Z",
          "output": {
            "status": "disabled"
          },
          "output_hash": "38b904a1cf83df048360fb2480571b749fd98d57e11f1afdffb5a74a78166fea",
          "completed_at": "2026-07-16T19:43:37Z"
        },
        {
          "id": "goals",
          "action": "substrate.goals",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-16T19:43:37Z",
          "output": {
            "status": "disabled",
            "created": 0,
            "observed": 0,
            "results": []
          },
          "output_hash": "cdfd4de44a28140e686159f34f7b47975954c67e1d1efcef666e985acb136ed8",
          "completed_at": "2026-07-16T19:43:37Z"
        }
      ],
      "completed_at": "2026-07-16T19:43:38Z"
    },
    {
      "id": "WFR-314",
      "schema_version": "1.0",
      "workflow_id": "session.stop",
      "workflow_version": 1,
      "definition_hash": "0cef7bb3e28321be8f85375c154955a69310ce297e47de3f3b8dd48f77a2f07d",
      "plan_hash": "a5e1d77ac734217487fc418e29c7163f4e81178e25d171e70cd4c999d527d3e8",
      "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
      "inputs": {},
      "idempotency_key": "hook:Stop:019f6c74-a477-7013-a338-910fc51a3c20",
      "status": "completed",
      "attempt": 1,
      "created_at": "2026-07-16T19:43:47Z",
      "updated_at": "2026-07-16T19:43:49Z",
      "receipts": [
        {
          "step_id": "state",
          "action": "state.consistency",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "5a1c6e5246defb1b6b6b90ff734db95bece2886b408ab112ed9b8e67222d5568",
          "completed_at": "2026-07-16T19:43:48Z"
        },
        {
          "step_id": "goals",
          "action": "substrate.goals",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "cdfd4de44a28140e686159f34f7b47975954c67e1d1efcef666e985acb136ed8",
          "completed_at": "2026-07-16T19:43:48Z"
        },
        {
          "step_id": "staleness",
          "action": "staleness.audit",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "1e81cb0ffd0a4d04626920a203b38d2d23a264cd43e807a85d375d69cae8a658",
          "completed_at": "2026-07-16T19:43:48Z"
        },
        {
          "step_id": "reflections",
          "action": "reflection.list",
          "input_hash": "0172e841ab4c13b3a4061f073f9d68a716ec87a8a5d52fde41823385e0582573",
          "output_hash": "c1b6b635c0bab21120657277f14ef6f839909875f307a3745fa48aee2bd6e449",
          "completed_at": "2026-07-16T19:43:48Z"
        },
        {
          "step_id": "bundle",
          "action": "reporting.bundle",
          "input_hash": "aed8ebb688dc3c085dd978d7c4120572173c3cb87e75919e4a937dcca6ef9457",
          "output_hash": "a484a5456a5d407836d76b9b74f7eb427eeaa79e812e92fcba6b2d54d1cd16d6",
          "completed_at": "2026-07-16T19:43:48Z"
        },
        {
          "step_id": "delegated",
          "action": "reporting.delegate",
          "input_hash": "ad60f3077afa3f8b437928e37d543485973725e618414d08211d179e6d8473a9",
          "output_hash": "e6085059f197def80ae95add1f328418107bea5436c9bd002530043646a3a95c",
          "completed_at": "2026-07-16T19:43:49Z"
        }
      ],
      "steps": [
        {
          "id": "state",
          "action": "state.consistency",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-16T19:43:47Z",
          "output": {
            "status": "ok",
            "repo_root": "D:\\Projects\\prd-plugin",
            "summary": {
              "errors": 0,
              "warnings": 0,
              "infos": 0
            },
            "findings": []
          },
          "output_hash": "5a1c6e5246defb1b6b6b90ff734db95bece2886b408ab112ed9b8e67222d5568",
          "completed_at": "2026-07-16T19:43:48Z"
        },
        {
          "id": "goals",
          "action": "substrate.goals",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-16T19:43:48Z",
          "output": {
            "status": "disabled",
            "created": 0,
            "observed": 0,
            "results": []
          },
          "output_hash": "cdfd4de44a28140e686159f34f7b47975954c67e1d1efcef666e985acb136ed8",
          "completed_at": "2026-07-16T19:43:48Z"
        },
        {
          "id": "staleness",
          "action": "staleness.audit",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-16T19:43:48Z",
          "output": {
            "status": "ok",
            "repo_root": "D:\\Projects\\prd-plugin",
            "counts": {
              "stale": 0
            },
            "stale": []
          },
          "output_hash": "1e81cb0ffd0a4d04626920a203b38d2d23a264cd43e807a85d375d69cae8a658",
          "completed_at": "2026-07-16T19:43:48Z"
        },
        {
          "id": "reflections",
          "action": "reflection.list",
          "status": "completed",
          "resolved_input_hash": "0172e841ab4c13b3a4061f073f9d68a716ec87a8a5d52fde41823385e0582573",
          "started_at": "2026-07-16T19:43:48Z",
          "output": {
            "enabled": false,
            "on_stop": true,
            "max_questions_per_stop": 5,
            "categories": [
              {
                "id": "behaviour_quality",
                "name": "Behaviour quality",
                "enabled": true,
                "question_count": 3
              },
              {
                "id": "harness_friction",
                "name": "Harness friction",
                "enabled": true,
                "question_count": 2
              }
            ],
            "questions": [
              {
                "id": "RFQ-001",
                "text": "Based on the work you just carried out, would you classify your behaviour as good? Answer yes or no and cite observable evidence.",
                "enabled": true,
                "category_id": "behaviour_quality",
                "category_name": "Behaviour quality",
                "effective_enabled": false
              },
              {
                "id": "RFQ-002",
                "text": "If you answered no, what could you do differently to correct your behaviour?",
                "enabled": true,
                "category_id": "behaviour_quality",
                "category_name": "Behaviour quality",
                "effective_enabled": false
              },
              {
                "id": "RFQ-003",
                "text": "Would another attempt using the identified good behaviours materially improve the outcome? Answer yes or no and state the next corrective action if yes.",
                "enabled": true,
                "category_id": "behaviour_quality",
                "category_name": "Behaviour quality",
                "effective_enabled": false
              },
              {
                "id": "RFQ-004",
                "text": "What harness friction points made this work more difficult?",
                "enabled": true,
                "category_id": "harness_friction",
                "category_name": "Harness friction",
                "effective_enabled": false
              },
              {
                "id": "RFQ-005",
                "text": "What up to three changes would most improve friction in the harness?",
                "enabled": true,
                "category_id": "harness_friction",
                "category_name": "Harness friction",
                "effective_enabled": false
              }
            ]
          },
          "output_hash": "c1b6b635c0bab21120657277f14ef6f839909875f307a3745fa48aee2bd6e449",
          "completed_at": "2026-07-16T19:43:48Z"
        },
        {
          "id": "bundle",
          "action": "reporting.bundle",
          "status": "completed",
          "resolved_input_hash": "aed8ebb688dc3c085dd978d7c4120572173c3cb87e75919e4a937dcca6ef9457",
          "started_at": "2026-07-16T19:43:48Z",
          "output": {
            "contract_version": 1,
            "task": "session_summary",
            "repo": "prd-plugin",
            "policy": {
              "enabled": false,
              "executor": "ai-collab",
              "contract_version": 1,
              "profile": "fast-capable",
              "tasks": [
                "report_summary",
                "session_summary",
                "wiki_synthesis",
                "triage_draft"
              ],
              "fallback": "main",
              "require_source_refs": true,
              "max_input_tokens": 12000,
              "max_output_tokens": 1500,
              "timeout_seconds": 30
            },
            "facts": {
              "requests_by_status": {
                "deferred": 1,
                "implemented": 90,
                "in_review": 1,
                "proposed": 3,
                "rejected": 1
              },
              "active_requests": [
                {
                  "id": "REQ-072",
                  "status": "proposed",
                  "severity": "low",
                  "summary": "opencode run-until-done: session.idle is a non-blocking notification, so the stop guard can't force continuation on opencode (currently degrades to a printed reminder, 0.5.95). Investigate whether opencode exposes any vetoable/continuation mechanism (a different event, a permission hook, or a 'continue' API) to enforce run-until-done, or accept the reminder as the permanent ceiling. Low priority — user rarely uses opencode."
                },
                {
                  "id": "REQ-104",
                  "status": "in_review",
                  "severity": "high",
                  "summary": "Ordinary-workspace chat has no path into the planning pipeline: owner-approved collaboration decisions land in scratchpads, room agents cannot allocate REQ/PRD/TRK ids past the parallel-worker mutation boundary, and goal-administrator grants detach when participant identity changes on runner restart"
                },
                {
                  "id": "REQ-107",
                  "status": "proposed",
                  "severity": "high",
                  "summary": "Adopt the UTCP-first tool architecture (user-directed): one UTCP manual is the source of truth for ALL prd-plugin tools including mutations, the MCP surface is generated by the official @utcp/mcp-bridge, and the 2,323-line hand-written MCP server is retired as a hand-maintained surface"
                },
                {
                  "id": "REQ-113",
                  "status": "proposed",
                  "severity": "low",
                  "summary": "Request-thread close has no validated tool: finished threads stay 'unresolved' in message_check forever unless state is hand-flipped; add a thread-close capability to the UTCP-first tool catalog (REQ-107), not as a new hand-written MCP handler"
                }
              ],
              "active_tracking": [],
              "open_health": [],
              "evidence_count": 127,
              "decision_count": 10
            },
            "findings": [],
            "source_refs": [
              ".prd_plugin/config.json",
              ".prd_plugin/state/decisions.json",
              ".prd_plugin/state/evidence.json",
              ".prd_plugin/state/health.json",
              ".prd_plugin/state/requests.json",
              ".prd_plugin/state/tracking.json",
              "REQ-072",
              "REQ-104",
              "REQ-107",
              "REQ-113"
            ],
            "constraints": {
              "max_input_tokens": 12000,
              "max_output_tokens": 1500,
              "timeout_seconds": 30,
              "require_source_refs": true,
              "no_project_state_writes": true,
              "no_secrets_or_local_session_content": true
            }
          },
          "output_hash": "a484a5456a5d407836d76b9b74f7eb427eeaa79e812e92fcba6b2d54d1cd16d6",
          "completed_at": "2026-07-16T19:43:48Z"
        },
        {
          "id": "delegated",
          "action": "reporting.delegate",
          "status": "completed",
          "resolved_input_hash": "ad60f3077afa3f8b437928e37d543485973725e618414d08211d179e6d8473a9",
          "started_at": "2026-07-16T19:43:49Z",
          "output": {
            "status": "fallback",
            "action": "main",
            "reason": "disabled"
          },
          "output_hash": "e6085059f197def80ae95add1f328418107bea5436c9bd002530043646a3a95c",
          "completed_at": "2026-07-16T19:43:49Z"
        }
      ],
      "completed_at": "2026-07-16T19:43:49Z"
    },
    {
      "id": "WFR-315",
      "schema_version": "1.0",
      "workflow_id": "session.start",
      "workflow_version": 1,
      "definition_hash": "d0f98da02571e6dd27fec4aed92d3c82af9db75f8b90b997bf665635c7b7f6ca",
      "plan_hash": "b5072615ca3b7e9a3bd85d50d1f069d99ef2a9816b32c03a370745ed7a205536",
      "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
      "inputs": {},
      "idempotency_key": "hook:SessionStart:019f6c75-22f8-7741-8b98-df8e8b022b63",
      "status": "completed",
      "attempt": 1,
      "created_at": "2026-07-16T19:44:07Z",
      "updated_at": "2026-07-16T19:44:09Z",
      "receipts": [
        {
          "step_id": "config",
          "action": "config.audit",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "e8f5630220d3e8b26c18a52fd81e19f1b570f8f33a5daaff9c38eb8a62693c22",
          "completed_at": "2026-07-16T19:44:07Z"
        },
        {
          "step_id": "services",
          "action": "services.audit",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "13dcc58bd528f3efa3e6e0fa0853a6eedc376f1f3685fbd4869cbb2b60382ee3",
          "completed_at": "2026-07-16T19:44:08Z"
        },
        {
          "step_id": "state",
          "action": "state.consistency",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "5a1c6e5246defb1b6b6b90ff734db95bece2886b408ab112ed9b8e67222d5568",
          "completed_at": "2026-07-16T19:44:08Z"
        },
        {
          "step_id": "status",
          "action": "state.query",
          "input_hash": "a15231a2142a2a9a85355a8b9cbbccffe01a9c9c2c2fd8c2bc2987cdc481564a",
          "output_hash": "cda36b57b665a1052e4f88d6c67a65f32bca9d509dc3f34b54fcefd4b2bda2db",
          "completed_at": "2026-07-16T19:44:09Z"
        },
        {
          "step_id": "substrate",
          "action": "substrate.preflight",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "a6df426290b4549a59eecaa0519ead9bcc50b7fcb25bd2185ff6047960f19ccb",
          "completed_at": "2026-07-16T19:44:09Z"
        },
        {
          "step_id": "notices",
          "action": "substrate.notices",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "38b904a1cf83df048360fb2480571b749fd98d57e11f1afdffb5a74a78166fea",
          "completed_at": "2026-07-16T19:44:09Z"
        },
        {
          "step_id": "goals",
          "action": "substrate.goals",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "cdfd4de44a28140e686159f34f7b47975954c67e1d1efcef666e985acb136ed8",
          "completed_at": "2026-07-16T19:44:09Z"
        }
      ],
      "steps": [
        {
          "id": "config",
          "action": "config.audit",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-16T19:44:07Z",
          "output": {
            "status": "ok",
            "summary": {
              "settings": 196,
              "mutable": 187,
              "read_only_or_managed": 9,
              "unclassified": 0,
              "unknown": 0,
              "invalid": 0,
              "missing_using_defaults": 0
            },
            "unclassified_keys": [],
            "unknown_keys": [],
            "invalid_values": [],
            "missing_using_defaults": []
          },
          "output_hash": "e8f5630220d3e8b26c18a52fd81e19f1b570f8f33a5daaff9c38eb8a62693c22",
          "completed_at": "2026-07-16T19:44:07Z"
        },
        {
          "id": "services",
          "action": "services.audit",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-16T19:44:08Z",
          "output": {
            "status": "ok",
            "summary": {
              "critical": 0,
              "high": 0,
              "medium": 0,
              "low": 0
            },
            "findings": []
          },
          "output_hash": "13dcc58bd528f3efa3e6e0fa0853a6eedc376f1f3685fbd4869cbb2b60382ee3",
          "completed_at": "2026-07-16T19:44:08Z"
        },
        {
          "id": "state",
          "action": "state.consistency",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-16T19:44:08Z",
          "output": {
            "status": "ok",
            "repo_root": "D:\\Projects\\prd-plugin",
            "summary": {
              "errors": 0,
              "warnings": 0,
              "infos": 0
            },
            "findings": []
          },
          "output_hash": "5a1c6e5246defb1b6b6b90ff734db95bece2886b408ab112ed9b8e67222d5568",
          "completed_at": "2026-07-16T19:44:08Z"
        },
        {
          "id": "status",
          "action": "state.query",
          "status": "completed",
          "resolved_input_hash": "a15231a2142a2a9a85355a8b9cbbccffe01a9c9c2c2fd8c2bc2987cdc481564a",
          "started_at": "2026-07-16T19:44:08Z",
          "output": {
            "repo_root": "D:\\Projects\\prd-plugin",
            "autonomy_level": "autonomous",
            "requests_by_status": {
              "deferred": 1,
              "implemented": 90,
              "in_review": 1,
              "proposed": 3,
              "rejected": 1
            },
            "active_tracking": [],
            "tracking_branches": [],
            "tracking_branch_counts": {},
            "tracking_branch_errors": [],
            "open_health": [],
            "stale_count": 0,
            "skill_usage": {
              "project-decision-policy": 1,
              "project-request-intake": 1,
              "project-test-driven-implementation": 1,
              "project-verification-before-completion": 1,
              "project-llm-wiki": 1
            },
            "wiki_backfill_pending": false,
            "version_update": null
          },
          "output_hash": "cda36b57b665a1052e4f88d6c67a65f32bca9d509dc3f34b54fcefd4b2bda2db",
          "completed_at": "2026-07-16T19:44:09Z"
        },
        {
          "id": "substrate",
          "action": "substrate.preflight",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-16T19:44:09Z",
          "output": {
            "status": "disabled",
            "services": {
              "status": "ok",
              "summary": {
                "critical": 0,
                "high": 0,
                "medium": 0,
                "low": 0
              },
              "findings": []
            },
            "policy": {
              "configured": {
                "enabled": false,
                "mode": "off",
                "capabilities": [
                  "records",
                  "graph",
                  "events"
                ],
                "contract_version": 2,
                "require_source_refs": true,
                "endpoint": "http://127.0.0.1:47124",
                "manual_url": "http://127.0.0.1:47124/utcp.json",
                "knowledge_browse_url": "http://127.0.0.1:5276",
                "auth_env": "AI_COLLAB_API_KEY",
                "timeout_seconds": 5,
                "max_result_bytes": 1048576,
                "cache_ttl_seconds": 60,
                "fallback": "local",
                "automation": {
                  "discovery_on_session_start": true,
                  "knowledge_recall": true,
                  "memory_recall": true,
                  "context_enrichment": true,
                  "notices_on_session_start": false,
                  "goals_sync": false,
                  "telemetry_on_maintenance": false,
                  "reporting_dispatch": true,
                  "judgment_dispatch": true,
                  "verification_execution": true
                }
              },
              "active": false,
              "effective_mode": "off",
              "effective_capabilities": []
            }
          },
          "output_hash": "a6df426290b4549a59eecaa0519ead9bcc50b7fcb25bd2185ff6047960f19ccb",
          "completed_at": "2026-07-16T19:44:09Z"
        },
        {
          "id": "notices",
          "action": "substrate.notices",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-16T19:44:09Z",
          "output": {
            "status": "disabled"
          },
          "output_hash": "38b904a1cf83df048360fb2480571b749fd98d57e11f1afdffb5a74a78166fea",
          "completed_at": "2026-07-16T19:44:09Z"
        },
        {
          "id": "goals",
          "action": "substrate.goals",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-16T19:44:09Z",
          "output": {
            "status": "disabled",
            "created": 0,
            "observed": 0,
            "results": []
          },
          "output_hash": "cdfd4de44a28140e686159f34f7b47975954c67e1d1efcef666e985acb136ed8",
          "completed_at": "2026-07-16T19:44:09Z"
        }
      ],
      "completed_at": "2026-07-16T19:44:09Z"
    },
    {
      "id": "WFR-316",
      "schema_version": "1.0",
      "workflow_id": "session.stop",
      "workflow_version": 1,
      "definition_hash": "0cef7bb3e28321be8f85375c154955a69310ce297e47de3f3b8dd48f77a2f07d",
      "plan_hash": "a5e1d77ac734217487fc418e29c7163f4e81178e25d171e70cd4c999d527d3e8",
      "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
      "inputs": {},
      "idempotency_key": "hook:Stop:019f6c75-22f8-7741-8b98-df8e8b022b63",
      "status": "completed",
      "attempt": 1,
      "created_at": "2026-07-16T19:44:13Z",
      "updated_at": "2026-07-16T19:44:15Z",
      "receipts": [
        {
          "step_id": "state",
          "action": "state.consistency",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "5a1c6e5246defb1b6b6b90ff734db95bece2886b408ab112ed9b8e67222d5568",
          "completed_at": "2026-07-16T19:44:14Z"
        },
        {
          "step_id": "goals",
          "action": "substrate.goals",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "cdfd4de44a28140e686159f34f7b47975954c67e1d1efcef666e985acb136ed8",
          "completed_at": "2026-07-16T19:44:14Z"
        },
        {
          "step_id": "staleness",
          "action": "staleness.audit",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "1e81cb0ffd0a4d04626920a203b38d2d23a264cd43e807a85d375d69cae8a658",
          "completed_at": "2026-07-16T19:44:14Z"
        },
        {
          "step_id": "reflections",
          "action": "reflection.list",
          "input_hash": "0172e841ab4c13b3a4061f073f9d68a716ec87a8a5d52fde41823385e0582573",
          "output_hash": "c1b6b635c0bab21120657277f14ef6f839909875f307a3745fa48aee2bd6e449",
          "completed_at": "2026-07-16T19:44:15Z"
        },
        {
          "step_id": "bundle",
          "action": "reporting.bundle",
          "input_hash": "aed8ebb688dc3c085dd978d7c4120572173c3cb87e75919e4a937dcca6ef9457",
          "output_hash": "a484a5456a5d407836d76b9b74f7eb427eeaa79e812e92fcba6b2d54d1cd16d6",
          "completed_at": "2026-07-16T19:44:15Z"
        },
        {
          "step_id": "delegated",
          "action": "reporting.delegate",
          "input_hash": "ad60f3077afa3f8b437928e37d543485973725e618414d08211d179e6d8473a9",
          "output_hash": "e6085059f197def80ae95add1f328418107bea5436c9bd002530043646a3a95c",
          "completed_at": "2026-07-16T19:44:15Z"
        }
      ],
      "steps": [
        {
          "id": "state",
          "action": "state.consistency",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-16T19:44:13Z",
          "output": {
            "status": "ok",
            "repo_root": "D:\\Projects\\prd-plugin",
            "summary": {
              "errors": 0,
              "warnings": 0,
              "infos": 0
            },
            "findings": []
          },
          "output_hash": "5a1c6e5246defb1b6b6b90ff734db95bece2886b408ab112ed9b8e67222d5568",
          "completed_at": "2026-07-16T19:44:14Z"
        },
        {
          "id": "goals",
          "action": "substrate.goals",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-16T19:44:14Z",
          "output": {
            "status": "disabled",
            "created": 0,
            "observed": 0,
            "results": []
          },
          "output_hash": "cdfd4de44a28140e686159f34f7b47975954c67e1d1efcef666e985acb136ed8",
          "completed_at": "2026-07-16T19:44:14Z"
        },
        {
          "id": "staleness",
          "action": "staleness.audit",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-16T19:44:14Z",
          "output": {
            "status": "ok",
            "repo_root": "D:\\Projects\\prd-plugin",
            "counts": {
              "stale": 0
            },
            "stale": []
          },
          "output_hash": "1e81cb0ffd0a4d04626920a203b38d2d23a264cd43e807a85d375d69cae8a658",
          "completed_at": "2026-07-16T19:44:14Z"
        },
        {
          "id": "reflections",
          "action": "reflection.list",
          "status": "completed",
          "resolved_input_hash": "0172e841ab4c13b3a4061f073f9d68a716ec87a8a5d52fde41823385e0582573",
          "started_at": "2026-07-16T19:44:15Z",
          "output": {
            "enabled": false,
            "on_stop": true,
            "max_questions_per_stop": 5,
            "categories": [
              {
                "id": "behaviour_quality",
                "name": "Behaviour quality",
                "enabled": true,
                "question_count": 3
              },
              {
                "id": "harness_friction",
                "name": "Harness friction",
                "enabled": true,
                "question_count": 2
              }
            ],
            "questions": [
              {
                "id": "RFQ-001",
                "text": "Based on the work you just carried out, would you classify your behaviour as good? Answer yes or no and cite observable evidence.",
                "enabled": true,
                "category_id": "behaviour_quality",
                "category_name": "Behaviour quality",
                "effective_enabled": false
              },
              {
                "id": "RFQ-002",
                "text": "If you answered no, what could you do differently to correct your behaviour?",
                "enabled": true,
                "category_id": "behaviour_quality",
                "category_name": "Behaviour quality",
                "effective_enabled": false
              },
              {
                "id": "RFQ-003",
                "text": "Would another attempt using the identified good behaviours materially improve the outcome? Answer yes or no and state the next corrective action if yes.",
                "enabled": true,
                "category_id": "behaviour_quality",
                "category_name": "Behaviour quality",
                "effective_enabled": false
              },
              {
                "id": "RFQ-004",
                "text": "What harness friction points made this work more difficult?",
                "enabled": true,
                "category_id": "harness_friction",
                "category_name": "Harness friction",
                "effective_enabled": false
              },
              {
                "id": "RFQ-005",
                "text": "What up to three changes would most improve friction in the harness?",
                "enabled": true,
                "category_id": "harness_friction",
                "category_name": "Harness friction",
                "effective_enabled": false
              }
            ]
          },
          "output_hash": "c1b6b635c0bab21120657277f14ef6f839909875f307a3745fa48aee2bd6e449",
          "completed_at": "2026-07-16T19:44:15Z"
        },
        {
          "id": "bundle",
          "action": "reporting.bundle",
          "status": "completed",
          "resolved_input_hash": "aed8ebb688dc3c085dd978d7c4120572173c3cb87e75919e4a937dcca6ef9457",
          "started_at": "2026-07-16T19:44:15Z",
          "output": {
            "contract_version": 1,
            "task": "session_summary",
            "repo": "prd-plugin",
            "policy": {
              "enabled": false,
              "executor": "ai-collab",
              "contract_version": 1,
              "profile": "fast-capable",
              "tasks": [
                "report_summary",
                "session_summary",
                "wiki_synthesis",
                "triage_draft"
              ],
              "fallback": "main",
              "require_source_refs": true,
              "max_input_tokens": 12000,
              "max_output_tokens": 1500,
              "timeout_seconds": 30
            },
            "facts": {
              "requests_by_status": {
                "deferred": 1,
                "implemented": 90,
                "in_review": 1,
                "proposed": 3,
                "rejected": 1
              },
              "active_requests": [
                {
                  "id": "REQ-072",
                  "status": "proposed",
                  "severity": "low",
                  "summary": "opencode run-until-done: session.idle is a non-blocking notification, so the stop guard can't force continuation on opencode (currently degrades to a printed reminder, 0.5.95). Investigate whether opencode exposes any vetoable/continuation mechanism (a different event, a permission hook, or a 'continue' API) to enforce run-until-done, or accept the reminder as the permanent ceiling. Low priority — user rarely uses opencode."
                },
                {
                  "id": "REQ-104",
                  "status": "in_review",
                  "severity": "high",
                  "summary": "Ordinary-workspace chat has no path into the planning pipeline: owner-approved collaboration decisions land in scratchpads, room agents cannot allocate REQ/PRD/TRK ids past the parallel-worker mutation boundary, and goal-administrator grants detach when participant identity changes on runner restart"
                },
                {
                  "id": "REQ-107",
                  "status": "proposed",
                  "severity": "high",
                  "summary": "Adopt the UTCP-first tool architecture (user-directed): one UTCP manual is the source of truth for ALL prd-plugin tools including mutations, the MCP surface is generated by the official @utcp/mcp-bridge, and the 2,323-line hand-written MCP server is retired as a hand-maintained surface"
                },
                {
                  "id": "REQ-113",
                  "status": "proposed",
                  "severity": "low",
                  "summary": "Request-thread close has no validated tool: finished threads stay 'unresolved' in message_check forever unless state is hand-flipped; add a thread-close capability to the UTCP-first tool catalog (REQ-107), not as a new hand-written MCP handler"
                }
              ],
              "active_tracking": [],
              "open_health": [],
              "evidence_count": 127,
              "decision_count": 10
            },
            "findings": [],
            "source_refs": [
              ".prd_plugin/config.json",
              ".prd_plugin/state/decisions.json",
              ".prd_plugin/state/evidence.json",
              ".prd_plugin/state/health.json",
              ".prd_plugin/state/requests.json",
              ".prd_plugin/state/tracking.json",
              "REQ-072",
              "REQ-104",
              "REQ-107",
              "REQ-113"
            ],
            "constraints": {
              "max_input_tokens": 12000,
              "max_output_tokens": 1500,
              "timeout_seconds": 30,
              "require_source_refs": true,
              "no_project_state_writes": true,
              "no_secrets_or_local_session_content": true
            }
          },
          "output_hash": "a484a5456a5d407836d76b9b74f7eb427eeaa79e812e92fcba6b2d54d1cd16d6",
          "completed_at": "2026-07-16T19:44:15Z"
        },
        {
          "id": "delegated",
          "action": "reporting.delegate",
          "status": "completed",
          "resolved_input_hash": "ad60f3077afa3f8b437928e37d543485973725e618414d08211d179e6d8473a9",
          "started_at": "2026-07-16T19:44:15Z",
          "output": {
            "status": "fallback",
            "action": "main",
            "reason": "disabled"
          },
          "output_hash": "e6085059f197def80ae95add1f328418107bea5436c9bd002530043646a3a95c",
          "completed_at": "2026-07-16T19:44:15Z"
        }
      ],
      "completed_at": "2026-07-16T19:44:15Z"
    },
    {
      "id": "WFR-317",
      "schema_version": "1.0",
      "workflow_id": "session.start",
      "workflow_version": 1,
      "definition_hash": "d0f98da02571e6dd27fec4aed92d3c82af9db75f8b90b997bf665635c7b7f6ca",
      "plan_hash": "b5072615ca3b7e9a3bd85d50d1f069d99ef2a9816b32c03a370745ed7a205536",
      "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
      "inputs": {},
      "idempotency_key": "hook:SessionStart:019f6c75-ddd4-7722-9d26-b92899c9f5fa",
      "status": "completed",
      "attempt": 1,
      "created_at": "2026-07-16T19:44:55Z",
      "updated_at": "2026-07-16T19:44:58Z",
      "receipts": [
        {
          "step_id": "config",
          "action": "config.audit",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "e8f5630220d3e8b26c18a52fd81e19f1b570f8f33a5daaff9c38eb8a62693c22",
          "completed_at": "2026-07-16T19:44:55Z"
        },
        {
          "step_id": "services",
          "action": "services.audit",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "13dcc58bd528f3efa3e6e0fa0853a6eedc376f1f3685fbd4869cbb2b60382ee3",
          "completed_at": "2026-07-16T19:44:55Z"
        },
        {
          "step_id": "state",
          "action": "state.consistency",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "5a1c6e5246defb1b6b6b90ff734db95bece2886b408ab112ed9b8e67222d5568",
          "completed_at": "2026-07-16T19:44:57Z"
        },
        {
          "step_id": "status",
          "action": "state.query",
          "input_hash": "a15231a2142a2a9a85355a8b9cbbccffe01a9c9c2c2fd8c2bc2987cdc481564a",
          "output_hash": "cda36b57b665a1052e4f88d6c67a65f32bca9d509dc3f34b54fcefd4b2bda2db",
          "completed_at": "2026-07-16T19:44:57Z"
        },
        {
          "step_id": "substrate",
          "action": "substrate.preflight",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "a6df426290b4549a59eecaa0519ead9bcc50b7fcb25bd2185ff6047960f19ccb",
          "completed_at": "2026-07-16T19:44:57Z"
        },
        {
          "step_id": "notices",
          "action": "substrate.notices",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "38b904a1cf83df048360fb2480571b749fd98d57e11f1afdffb5a74a78166fea",
          "completed_at": "2026-07-16T19:44:57Z"
        },
        {
          "step_id": "goals",
          "action": "substrate.goals",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "cdfd4de44a28140e686159f34f7b47975954c67e1d1efcef666e985acb136ed8",
          "completed_at": "2026-07-16T19:44:58Z"
        }
      ],
      "steps": [
        {
          "id": "config",
          "action": "config.audit",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-16T19:44:55Z",
          "output": {
            "status": "ok",
            "summary": {
              "settings": 196,
              "mutable": 187,
              "read_only_or_managed": 9,
              "unclassified": 0,
              "unknown": 0,
              "invalid": 0,
              "missing_using_defaults": 0
            },
            "unclassified_keys": [],
            "unknown_keys": [],
            "invalid_values": [],
            "missing_using_defaults": []
          },
          "output_hash": "e8f5630220d3e8b26c18a52fd81e19f1b570f8f33a5daaff9c38eb8a62693c22",
          "completed_at": "2026-07-16T19:44:55Z"
        },
        {
          "id": "services",
          "action": "services.audit",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-16T19:44:55Z",
          "output": {
            "status": "ok",
            "summary": {
              "critical": 0,
              "high": 0,
              "medium": 0,
              "low": 0
            },
            "findings": []
          },
          "output_hash": "13dcc58bd528f3efa3e6e0fa0853a6eedc376f1f3685fbd4869cbb2b60382ee3",
          "completed_at": "2026-07-16T19:44:55Z"
        },
        {
          "id": "state",
          "action": "state.consistency",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-16T19:44:55Z",
          "output": {
            "status": "ok",
            "repo_root": "D:\\Projects\\prd-plugin",
            "summary": {
              "errors": 0,
              "warnings": 0,
              "infos": 0
            },
            "findings": []
          },
          "output_hash": "5a1c6e5246defb1b6b6b90ff734db95bece2886b408ab112ed9b8e67222d5568",
          "completed_at": "2026-07-16T19:44:57Z"
        },
        {
          "id": "status",
          "action": "state.query",
          "status": "completed",
          "resolved_input_hash": "a15231a2142a2a9a85355a8b9cbbccffe01a9c9c2c2fd8c2bc2987cdc481564a",
          "started_at": "2026-07-16T19:44:57Z",
          "output": {
            "repo_root": "D:\\Projects\\prd-plugin",
            "autonomy_level": "autonomous",
            "requests_by_status": {
              "deferred": 1,
              "implemented": 90,
              "in_review": 1,
              "proposed": 3,
              "rejected": 1
            },
            "active_tracking": [],
            "tracking_branches": [],
            "tracking_branch_counts": {},
            "tracking_branch_errors": [],
            "open_health": [],
            "stale_count": 0,
            "skill_usage": {
              "project-decision-policy": 1,
              "project-request-intake": 1,
              "project-test-driven-implementation": 1,
              "project-verification-before-completion": 1,
              "project-llm-wiki": 1
            },
            "wiki_backfill_pending": false,
            "version_update": null
          },
          "output_hash": "cda36b57b665a1052e4f88d6c67a65f32bca9d509dc3f34b54fcefd4b2bda2db",
          "completed_at": "2026-07-16T19:44:57Z"
        },
        {
          "id": "substrate",
          "action": "substrate.preflight",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-16T19:44:57Z",
          "output": {
            "status": "disabled",
            "services": {
              "status": "ok",
              "summary": {
                "critical": 0,
                "high": 0,
                "medium": 0,
                "low": 0
              },
              "findings": []
            },
            "policy": {
              "configured": {
                "enabled": false,
                "mode": "off",
                "capabilities": [
                  "records",
                  "graph",
                  "events"
                ],
                "contract_version": 2,
                "require_source_refs": true,
                "endpoint": "http://127.0.0.1:47124",
                "manual_url": "http://127.0.0.1:47124/utcp.json",
                "knowledge_browse_url": "http://127.0.0.1:5276",
                "auth_env": "AI_COLLAB_API_KEY",
                "timeout_seconds": 5,
                "max_result_bytes": 1048576,
                "cache_ttl_seconds": 60,
                "fallback": "local",
                "automation": {
                  "discovery_on_session_start": true,
                  "knowledge_recall": true,
                  "memory_recall": true,
                  "context_enrichment": true,
                  "notices_on_session_start": false,
                  "goals_sync": false,
                  "telemetry_on_maintenance": false,
                  "reporting_dispatch": true,
                  "judgment_dispatch": true,
                  "verification_execution": true
                }
              },
              "active": false,
              "effective_mode": "off",
              "effective_capabilities": []
            }
          },
          "output_hash": "a6df426290b4549a59eecaa0519ead9bcc50b7fcb25bd2185ff6047960f19ccb",
          "completed_at": "2026-07-16T19:44:57Z"
        },
        {
          "id": "notices",
          "action": "substrate.notices",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-16T19:44:57Z",
          "output": {
            "status": "disabled"
          },
          "output_hash": "38b904a1cf83df048360fb2480571b749fd98d57e11f1afdffb5a74a78166fea",
          "completed_at": "2026-07-16T19:44:57Z"
        },
        {
          "id": "goals",
          "action": "substrate.goals",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-16T19:44:58Z",
          "output": {
            "status": "disabled",
            "created": 0,
            "observed": 0,
            "results": []
          },
          "output_hash": "cdfd4de44a28140e686159f34f7b47975954c67e1d1efcef666e985acb136ed8",
          "completed_at": "2026-07-16T19:44:58Z"
        }
      ],
      "completed_at": "2026-07-16T19:44:58Z"
    },
    {
      "id": "WFR-318",
      "schema_version": "1.0",
      "workflow_id": "session.stop",
      "workflow_version": 1,
      "definition_hash": "0cef7bb3e28321be8f85375c154955a69310ce297e47de3f3b8dd48f77a2f07d",
      "plan_hash": "a5e1d77ac734217487fc418e29c7163f4e81178e25d171e70cd4c999d527d3e8",
      "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
      "inputs": {},
      "idempotency_key": "hook:Stop:019f6c75-ddd4-7722-9d26-b92899c9f5fa",
      "status": "completed",
      "attempt": 1,
      "created_at": "2026-07-16T19:45:03Z",
      "updated_at": "2026-07-16T19:45:05Z",
      "receipts": [
        {
          "step_id": "state",
          "action": "state.consistency",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "5a1c6e5246defb1b6b6b90ff734db95bece2886b408ab112ed9b8e67222d5568",
          "completed_at": "2026-07-16T19:45:04Z"
        },
        {
          "step_id": "goals",
          "action": "substrate.goals",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "cdfd4de44a28140e686159f34f7b47975954c67e1d1efcef666e985acb136ed8",
          "completed_at": "2026-07-16T19:45:04Z"
        },
        {
          "step_id": "staleness",
          "action": "staleness.audit",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "1e81cb0ffd0a4d04626920a203b38d2d23a264cd43e807a85d375d69cae8a658",
          "completed_at": "2026-07-16T19:45:04Z"
        },
        {
          "step_id": "reflections",
          "action": "reflection.list",
          "input_hash": "0172e841ab4c13b3a4061f073f9d68a716ec87a8a5d52fde41823385e0582573",
          "output_hash": "c1b6b635c0bab21120657277f14ef6f839909875f307a3745fa48aee2bd6e449",
          "completed_at": "2026-07-16T19:45:04Z"
        },
        {
          "step_id": "bundle",
          "action": "reporting.bundle",
          "input_hash": "aed8ebb688dc3c085dd978d7c4120572173c3cb87e75919e4a937dcca6ef9457",
          "output_hash": "a484a5456a5d407836d76b9b74f7eb427eeaa79e812e92fcba6b2d54d1cd16d6",
          "completed_at": "2026-07-16T19:45:04Z"
        },
        {
          "step_id": "delegated",
          "action": "reporting.delegate",
          "input_hash": "ad60f3077afa3f8b437928e37d543485973725e618414d08211d179e6d8473a9",
          "output_hash": "e6085059f197def80ae95add1f328418107bea5436c9bd002530043646a3a95c",
          "completed_at": "2026-07-16T19:45:04Z"
        }
      ],
      "steps": [
        {
          "id": "state",
          "action": "state.consistency",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-16T19:45:03Z",
          "output": {
            "status": "ok",
            "repo_root": "D:\\Projects\\prd-plugin",
            "summary": {
              "errors": 0,
              "warnings": 0,
              "infos": 0
            },
            "findings": []
          },
          "output_hash": "5a1c6e5246defb1b6b6b90ff734db95bece2886b408ab112ed9b8e67222d5568",
          "completed_at": "2026-07-16T19:45:04Z"
        },
        {
          "id": "goals",
          "action": "substrate.goals",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-16T19:45:04Z",
          "output": {
            "status": "disabled",
            "created": 0,
            "observed": 0,
            "results": []
          },
          "output_hash": "cdfd4de44a28140e686159f34f7b47975954c67e1d1efcef666e985acb136ed8",
          "completed_at": "2026-07-16T19:45:04Z"
        },
        {
          "id": "staleness",
          "action": "staleness.audit",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-16T19:45:04Z",
          "output": {
            "status": "ok",
            "repo_root": "D:\\Projects\\prd-plugin",
            "counts": {
              "stale": 0
            },
            "stale": []
          },
          "output_hash": "1e81cb0ffd0a4d04626920a203b38d2d23a264cd43e807a85d375d69cae8a658",
          "completed_at": "2026-07-16T19:45:04Z"
        },
        {
          "id": "reflections",
          "action": "reflection.list",
          "status": "completed",
          "resolved_input_hash": "0172e841ab4c13b3a4061f073f9d68a716ec87a8a5d52fde41823385e0582573",
          "started_at": "2026-07-16T19:45:04Z",
          "output": {
            "enabled": false,
            "on_stop": true,
            "max_questions_per_stop": 5,
            "categories": [
              {
                "id": "behaviour_quality",
                "name": "Behaviour quality",
                "enabled": true,
                "question_count": 3
              },
              {
                "id": "harness_friction",
                "name": "Harness friction",
                "enabled": true,
                "question_count": 2
              }
            ],
            "questions": [
              {
                "id": "RFQ-001",
                "text": "Based on the work you just carried out, would you classify your behaviour as good? Answer yes or no and cite observable evidence.",
                "enabled": true,
                "category_id": "behaviour_quality",
                "category_name": "Behaviour quality",
                "effective_enabled": false
              },
              {
                "id": "RFQ-002",
                "text": "If you answered no, what could you do differently to correct your behaviour?",
                "enabled": true,
                "category_id": "behaviour_quality",
                "category_name": "Behaviour quality",
                "effective_enabled": false
              },
              {
                "id": "RFQ-003",
                "text": "Would another attempt using the identified good behaviours materially improve the outcome? Answer yes or no and state the next corrective action if yes.",
                "enabled": true,
                "category_id": "behaviour_quality",
                "category_name": "Behaviour quality",
                "effective_enabled": false
              },
              {
                "id": "RFQ-004",
                "text": "What harness friction points made this work more difficult?",
                "enabled": true,
                "category_id": "harness_friction",
                "category_name": "Harness friction",
                "effective_enabled": false
              },
              {
                "id": "RFQ-005",
                "text": "What up to three changes would most improve friction in the harness?",
                "enabled": true,
                "category_id": "harness_friction",
                "category_name": "Harness friction",
                "effective_enabled": false
              }
            ]
          },
          "output_hash": "c1b6b635c0bab21120657277f14ef6f839909875f307a3745fa48aee2bd6e449",
          "completed_at": "2026-07-16T19:45:04Z"
        },
        {
          "id": "bundle",
          "action": "reporting.bundle",
          "status": "completed",
          "resolved_input_hash": "aed8ebb688dc3c085dd978d7c4120572173c3cb87e75919e4a937dcca6ef9457",
          "started_at": "2026-07-16T19:45:04Z",
          "output": {
            "contract_version": 1,
            "task": "session_summary",
            "repo": "prd-plugin",
            "policy": {
              "enabled": false,
              "executor": "ai-collab",
              "contract_version": 1,
              "profile": "fast-capable",
              "tasks": [
                "report_summary",
                "session_summary",
                "wiki_synthesis",
                "triage_draft"
              ],
              "fallback": "main",
              "require_source_refs": true,
              "max_input_tokens": 12000,
              "max_output_tokens": 1500,
              "timeout_seconds": 30
            },
            "facts": {
              "requests_by_status": {
                "deferred": 1,
                "implemented": 90,
                "in_review": 1,
                "proposed": 3,
                "rejected": 1
              },
              "active_requests": [
                {
                  "id": "REQ-072",
                  "status": "proposed",
                  "severity": "low",
                  "summary": "opencode run-until-done: session.idle is a non-blocking notification, so the stop guard can't force continuation on opencode (currently degrades to a printed reminder, 0.5.95). Investigate whether opencode exposes any vetoable/continuation mechanism (a different event, a permission hook, or a 'continue' API) to enforce run-until-done, or accept the reminder as the permanent ceiling. Low priority — user rarely uses opencode."
                },
                {
                  "id": "REQ-104",
                  "status": "in_review",
                  "severity": "high",
                  "summary": "Ordinary-workspace chat has no path into the planning pipeline: owner-approved collaboration decisions land in scratchpads, room agents cannot allocate REQ/PRD/TRK ids past the parallel-worker mutation boundary, and goal-administrator grants detach when participant identity changes on runner restart"
                },
                {
                  "id": "REQ-107",
                  "status": "proposed",
                  "severity": "high",
                  "summary": "Adopt the UTCP-first tool architecture (user-directed): one UTCP manual is the source of truth for ALL prd-plugin tools including mutations, the MCP surface is generated by the official @utcp/mcp-bridge, and the 2,323-line hand-written MCP server is retired as a hand-maintained surface"
                },
                {
                  "id": "REQ-113",
                  "status": "proposed",
                  "severity": "low",
                  "summary": "Request-thread close has no validated tool: finished threads stay 'unresolved' in message_check forever unless state is hand-flipped; add a thread-close capability to the UTCP-first tool catalog (REQ-107), not as a new hand-written MCP handler"
                }
              ],
              "active_tracking": [],
              "open_health": [],
              "evidence_count": 127,
              "decision_count": 10
            },
            "findings": [],
            "source_refs": [
              ".prd_plugin/config.json",
              ".prd_plugin/state/decisions.json",
              ".prd_plugin/state/evidence.json",
              ".prd_plugin/state/health.json",
              ".prd_plugin/state/requests.json",
              ".prd_plugin/state/tracking.json",
              "REQ-072",
              "REQ-104",
              "REQ-107",
              "REQ-113"
            ],
            "constraints": {
              "max_input_tokens": 12000,
              "max_output_tokens": 1500,
              "timeout_seconds": 30,
              "require_source_refs": true,
              "no_project_state_writes": true,
              "no_secrets_or_local_session_content": true
            }
          },
          "output_hash": "a484a5456a5d407836d76b9b74f7eb427eeaa79e812e92fcba6b2d54d1cd16d6",
          "completed_at": "2026-07-16T19:45:04Z"
        },
        {
          "id": "delegated",
          "action": "reporting.delegate",
          "status": "completed",
          "resolved_input_hash": "ad60f3077afa3f8b437928e37d543485973725e618414d08211d179e6d8473a9",
          "started_at": "2026-07-16T19:45:04Z",
          "output": {
            "status": "fallback",
            "action": "main",
            "reason": "disabled"
          },
          "output_hash": "e6085059f197def80ae95add1f328418107bea5436c9bd002530043646a3a95c",
          "completed_at": "2026-07-16T19:45:04Z"
        }
      ],
      "completed_at": "2026-07-16T19:45:05Z"
    },
    {
      "id": "WFR-319",
      "schema_version": "1.0",
      "workflow_id": "session.start",
      "workflow_version": 1,
      "definition_hash": "d0f98da02571e6dd27fec4aed92d3c82af9db75f8b90b997bf665635c7b7f6ca",
      "plan_hash": "b5072615ca3b7e9a3bd85d50d1f069d99ef2a9816b32c03a370745ed7a205536",
      "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
      "inputs": {},
      "idempotency_key": "hook:SessionStart:073bae61-3e9a-4505-be65-ab34f9e23ee7",
      "status": "completed",
      "attempt": 1,
      "created_at": "2026-07-17T02:09:55Z",
      "updated_at": "2026-07-17T02:10:00Z",
      "receipts": [
        {
          "step_id": "config",
          "action": "config.audit",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "e8f5630220d3e8b26c18a52fd81e19f1b570f8f33a5daaff9c38eb8a62693c22",
          "completed_at": "2026-07-17T02:09:56Z"
        },
        {
          "step_id": "services",
          "action": "services.audit",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "13dcc58bd528f3efa3e6e0fa0853a6eedc376f1f3685fbd4869cbb2b60382ee3",
          "completed_at": "2026-07-17T02:09:56Z"
        },
        {
          "step_id": "state",
          "action": "state.consistency",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "5a1c6e5246defb1b6b6b90ff734db95bece2886b408ab112ed9b8e67222d5568",
          "completed_at": "2026-07-17T02:09:59Z"
        },
        {
          "step_id": "status",
          "action": "state.query",
          "input_hash": "a15231a2142a2a9a85355a8b9cbbccffe01a9c9c2c2fd8c2bc2987cdc481564a",
          "output_hash": "ce181007be67be75d9a4df009f99a1b7634b3a4f10cd221b7efe461eb06a0b28",
          "completed_at": "2026-07-17T02:09:59Z"
        },
        {
          "step_id": "substrate",
          "action": "substrate.preflight",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "a6df426290b4549a59eecaa0519ead9bcc50b7fcb25bd2185ff6047960f19ccb",
          "completed_at": "2026-07-17T02:09:59Z"
        },
        {
          "step_id": "notices",
          "action": "substrate.notices",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "38b904a1cf83df048360fb2480571b749fd98d57e11f1afdffb5a74a78166fea",
          "completed_at": "2026-07-17T02:10:00Z"
        },
        {
          "step_id": "goals",
          "action": "substrate.goals",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "cdfd4de44a28140e686159f34f7b47975954c67e1d1efcef666e985acb136ed8",
          "completed_at": "2026-07-17T02:10:00Z"
        }
      ],
      "steps": [
        {
          "id": "config",
          "action": "config.audit",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-17T02:09:56Z",
          "output": {
            "status": "ok",
            "summary": {
              "settings": 196,
              "mutable": 187,
              "read_only_or_managed": 9,
              "unclassified": 0,
              "unknown": 0,
              "invalid": 0,
              "missing_using_defaults": 0
            },
            "unclassified_keys": [],
            "unknown_keys": [],
            "invalid_values": [],
            "missing_using_defaults": []
          },
          "output_hash": "e8f5630220d3e8b26c18a52fd81e19f1b570f8f33a5daaff9c38eb8a62693c22",
          "completed_at": "2026-07-17T02:09:56Z"
        },
        {
          "id": "services",
          "action": "services.audit",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-17T02:09:56Z",
          "output": {
            "status": "ok",
            "summary": {
              "critical": 0,
              "high": 0,
              "medium": 0,
              "low": 0
            },
            "findings": []
          },
          "output_hash": "13dcc58bd528f3efa3e6e0fa0853a6eedc376f1f3685fbd4869cbb2b60382ee3",
          "completed_at": "2026-07-17T02:09:56Z"
        },
        {
          "id": "state",
          "action": "state.consistency",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-17T02:09:56Z",
          "output": {
            "status": "ok",
            "repo_root": "D:\\Projects\\prd-plugin",
            "summary": {
              "errors": 0,
              "warnings": 0,
              "infos": 0
            },
            "findings": []
          },
          "output_hash": "5a1c6e5246defb1b6b6b90ff734db95bece2886b408ab112ed9b8e67222d5568",
          "completed_at": "2026-07-17T02:09:59Z"
        },
        {
          "id": "status",
          "action": "state.query",
          "status": "completed",
          "resolved_input_hash": "a15231a2142a2a9a85355a8b9cbbccffe01a9c9c2c2fd8c2bc2987cdc481564a",
          "started_at": "2026-07-17T02:09:59Z",
          "output": {
            "repo_root": "D:\\Projects\\prd-plugin",
            "autonomy_level": "autonomous",
            "requests_by_status": {
              "deferred": 1,
              "implemented": 91,
              "in_review": 1,
              "proposed": 3,
              "rejected": 1
            },
            "active_tracking": [],
            "tracking_branches": [],
            "tracking_branch_counts": {},
            "tracking_branch_errors": [],
            "open_health": [],
            "stale_count": 0,
            "skill_usage": {
              "project-decision-policy": 1,
              "project-request-intake": 1,
              "project-test-driven-implementation": 1,
              "project-verification-before-completion": 1,
              "project-llm-wiki": 1
            },
            "wiki_backfill_pending": false,
            "version_update": null
          },
          "output_hash": "ce181007be67be75d9a4df009f99a1b7634b3a4f10cd221b7efe461eb06a0b28",
          "completed_at": "2026-07-17T02:09:59Z"
        },
        {
          "id": "substrate",
          "action": "substrate.preflight",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-17T02:09:59Z",
          "output": {
            "status": "disabled",
            "services": {
              "status": "ok",
              "summary": {
                "critical": 0,
                "high": 0,
                "medium": 0,
                "low": 0
              },
              "findings": []
            },
            "policy": {
              "configured": {
                "enabled": false,
                "mode": "off",
                "capabilities": [
                  "records",
                  "graph",
                  "events"
                ],
                "contract_version": 2,
                "require_source_refs": true,
                "endpoint": "http://127.0.0.1:47124",
                "manual_url": "http://127.0.0.1:47124/utcp.json",
                "knowledge_browse_url": "http://127.0.0.1:5276",
                "auth_env": "AI_COLLAB_API_KEY",
                "timeout_seconds": 5,
                "max_result_bytes": 1048576,
                "cache_ttl_seconds": 60,
                "fallback": "local",
                "automation": {
                  "discovery_on_session_start": true,
                  "knowledge_recall": true,
                  "memory_recall": true,
                  "context_enrichment": true,
                  "notices_on_session_start": false,
                  "goals_sync": false,
                  "telemetry_on_maintenance": false,
                  "reporting_dispatch": true,
                  "judgment_dispatch": true,
                  "verification_execution": true
                }
              },
              "active": false,
              "effective_mode": "off",
              "effective_capabilities": []
            }
          },
          "output_hash": "a6df426290b4549a59eecaa0519ead9bcc50b7fcb25bd2185ff6047960f19ccb",
          "completed_at": "2026-07-17T02:09:59Z"
        },
        {
          "id": "notices",
          "action": "substrate.notices",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-17T02:10:00Z",
          "output": {
            "status": "disabled"
          },
          "output_hash": "38b904a1cf83df048360fb2480571b749fd98d57e11f1afdffb5a74a78166fea",
          "completed_at": "2026-07-17T02:10:00Z"
        },
        {
          "id": "goals",
          "action": "substrate.goals",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-17T02:10:00Z",
          "output": {
            "status": "disabled",
            "created": 0,
            "observed": 0,
            "results": []
          },
          "output_hash": "cdfd4de44a28140e686159f34f7b47975954c67e1d1efcef666e985acb136ed8",
          "completed_at": "2026-07-17T02:10:00Z"
        }
      ],
      "completed_at": "2026-07-17T02:10:00Z"
    },
    {
      "id": "WFR-320",
      "schema_version": "1.0",
      "workflow_id": "session.start",
      "workflow_version": 1,
      "definition_hash": "d0f98da02571e6dd27fec4aed92d3c82af9db75f8b90b997bf665635c7b7f6ca",
      "plan_hash": "b5072615ca3b7e9a3bd85d50d1f069d99ef2a9816b32c03a370745ed7a205536",
      "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
      "inputs": {},
      "idempotency_key": "hook:SessionStart:019f6de9-8b8e-7cb2-aaa5-d67d85099f1f",
      "status": "completed",
      "attempt": 1,
      "created_at": "2026-07-17T02:30:53Z",
      "updated_at": "2026-07-17T02:30:58Z",
      "receipts": [
        {
          "step_id": "config",
          "action": "config.audit",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "e8f5630220d3e8b26c18a52fd81e19f1b570f8f33a5daaff9c38eb8a62693c22",
          "completed_at": "2026-07-17T02:30:54Z"
        },
        {
          "step_id": "services",
          "action": "services.audit",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "13dcc58bd528f3efa3e6e0fa0853a6eedc376f1f3685fbd4869cbb2b60382ee3",
          "completed_at": "2026-07-17T02:30:54Z"
        },
        {
          "step_id": "state",
          "action": "state.consistency",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "5a1c6e5246defb1b6b6b90ff734db95bece2886b408ab112ed9b8e67222d5568",
          "completed_at": "2026-07-17T02:30:57Z"
        },
        {
          "step_id": "status",
          "action": "state.query",
          "input_hash": "a15231a2142a2a9a85355a8b9cbbccffe01a9c9c2c2fd8c2bc2987cdc481564a",
          "output_hash": "ce181007be67be75d9a4df009f99a1b7634b3a4f10cd221b7efe461eb06a0b28",
          "completed_at": "2026-07-17T02:30:58Z"
        },
        {
          "step_id": "substrate",
          "action": "substrate.preflight",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "a6df426290b4549a59eecaa0519ead9bcc50b7fcb25bd2185ff6047960f19ccb",
          "completed_at": "2026-07-17T02:30:58Z"
        },
        {
          "step_id": "notices",
          "action": "substrate.notices",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "38b904a1cf83df048360fb2480571b749fd98d57e11f1afdffb5a74a78166fea",
          "completed_at": "2026-07-17T02:30:58Z"
        },
        {
          "step_id": "goals",
          "action": "substrate.goals",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "cdfd4de44a28140e686159f34f7b47975954c67e1d1efcef666e985acb136ed8",
          "completed_at": "2026-07-17T02:30:58Z"
        }
      ],
      "steps": [
        {
          "id": "config",
          "action": "config.audit",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-17T02:30:54Z",
          "output": {
            "status": "ok",
            "summary": {
              "settings": 196,
              "mutable": 187,
              "read_only_or_managed": 9,
              "unclassified": 0,
              "unknown": 0,
              "invalid": 0,
              "missing_using_defaults": 0
            },
            "unclassified_keys": [],
            "unknown_keys": [],
            "invalid_values": [],
            "missing_using_defaults": []
          },
          "output_hash": "e8f5630220d3e8b26c18a52fd81e19f1b570f8f33a5daaff9c38eb8a62693c22",
          "completed_at": "2026-07-17T02:30:54Z"
        },
        {
          "id": "services",
          "action": "services.audit",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-17T02:30:54Z",
          "output": {
            "status": "ok",
            "summary": {
              "critical": 0,
              "high": 0,
              "medium": 0,
              "low": 0
            },
            "findings": []
          },
          "output_hash": "13dcc58bd528f3efa3e6e0fa0853a6eedc376f1f3685fbd4869cbb2b60382ee3",
          "completed_at": "2026-07-17T02:30:54Z"
        },
        {
          "id": "state",
          "action": "state.consistency",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-17T02:30:54Z",
          "output": {
            "status": "ok",
            "repo_root": "D:\\Projects\\prd-plugin",
            "summary": {
              "errors": 0,
              "warnings": 0,
              "infos": 0
            },
            "findings": []
          },
          "output_hash": "5a1c6e5246defb1b6b6b90ff734db95bece2886b408ab112ed9b8e67222d5568",
          "completed_at": "2026-07-17T02:30:57Z"
        },
        {
          "id": "status",
          "action": "state.query",
          "status": "completed",
          "resolved_input_hash": "a15231a2142a2a9a85355a8b9cbbccffe01a9c9c2c2fd8c2bc2987cdc481564a",
          "started_at": "2026-07-17T02:30:57Z",
          "output": {
            "repo_root": "D:\\Projects\\prd-plugin",
            "autonomy_level": "autonomous",
            "requests_by_status": {
              "deferred": 1,
              "implemented": 91,
              "in_review": 1,
              "proposed": 3,
              "rejected": 1
            },
            "active_tracking": [],
            "tracking_branches": [],
            "tracking_branch_counts": {},
            "tracking_branch_errors": [],
            "open_health": [],
            "stale_count": 0,
            "skill_usage": {
              "project-decision-policy": 1,
              "project-request-intake": 1,
              "project-test-driven-implementation": 1,
              "project-verification-before-completion": 1,
              "project-llm-wiki": 1
            },
            "wiki_backfill_pending": false,
            "version_update": null
          },
          "output_hash": "ce181007be67be75d9a4df009f99a1b7634b3a4f10cd221b7efe461eb06a0b28",
          "completed_at": "2026-07-17T02:30:58Z"
        },
        {
          "id": "substrate",
          "action": "substrate.preflight",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-17T02:30:58Z",
          "output": {
            "status": "disabled",
            "services": {
              "status": "ok",
              "summary": {
                "critical": 0,
                "high": 0,
                "medium": 0,
                "low": 0
              },
              "findings": []
            },
            "policy": {
              "configured": {
                "enabled": false,
                "mode": "off",
                "capabilities": [
                  "records",
                  "graph",
                  "events"
                ],
                "contract_version": 2,
                "require_source_refs": true,
                "endpoint": "http://127.0.0.1:47124",
                "manual_url": "http://127.0.0.1:47124/utcp.json",
                "knowledge_browse_url": "http://127.0.0.1:5276",
                "auth_env": "AI_COLLAB_API_KEY",
                "timeout_seconds": 5,
                "max_result_bytes": 1048576,
                "cache_ttl_seconds": 60,
                "fallback": "local",
                "automation": {
                  "discovery_on_session_start": true,
                  "knowledge_recall": true,
                  "memory_recall": true,
                  "context_enrichment": true,
                  "notices_on_session_start": false,
                  "goals_sync": false,
                  "telemetry_on_maintenance": false,
                  "reporting_dispatch": true,
                  "judgment_dispatch": true,
                  "verification_execution": true
                }
              },
              "active": false,
              "effective_mode": "off",
              "effective_capabilities": []
            }
          },
          "output_hash": "a6df426290b4549a59eecaa0519ead9bcc50b7fcb25bd2185ff6047960f19ccb",
          "completed_at": "2026-07-17T02:30:58Z"
        },
        {
          "id": "notices",
          "action": "substrate.notices",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-17T02:30:58Z",
          "output": {
            "status": "disabled"
          },
          "output_hash": "38b904a1cf83df048360fb2480571b749fd98d57e11f1afdffb5a74a78166fea",
          "completed_at": "2026-07-17T02:30:58Z"
        },
        {
          "id": "goals",
          "action": "substrate.goals",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-17T02:30:58Z",
          "output": {
            "status": "disabled",
            "created": 0,
            "observed": 0,
            "results": []
          },
          "output_hash": "cdfd4de44a28140e686159f34f7b47975954c67e1d1efcef666e985acb136ed8",
          "completed_at": "2026-07-17T02:30:58Z"
        }
      ],
      "completed_at": "2026-07-17T02:30:58Z"
    },
    {
      "id": "WFR-321",
      "schema_version": "1.0",
      "workflow_id": "session.stop",
      "workflow_version": 1,
      "definition_hash": "0cef7bb3e28321be8f85375c154955a69310ce297e47de3f3b8dd48f77a2f07d",
      "plan_hash": "a5e1d77ac734217487fc418e29c7163f4e81178e25d171e70cd4c999d527d3e8",
      "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
      "inputs": {},
      "idempotency_key": "hook:Stop:019f6de9-8b8e-7cb2-aaa5-d67d85099f1f",
      "status": "completed",
      "attempt": 1,
      "created_at": "2026-07-17T02:31:04Z",
      "updated_at": "2026-07-17T02:31:06Z",
      "receipts": [
        {
          "step_id": "state",
          "action": "state.consistency",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "5a1c6e5246defb1b6b6b90ff734db95bece2886b408ab112ed9b8e67222d5568",
          "completed_at": "2026-07-17T02:31:05Z"
        },
        {
          "step_id": "goals",
          "action": "substrate.goals",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "cdfd4de44a28140e686159f34f7b47975954c67e1d1efcef666e985acb136ed8",
          "completed_at": "2026-07-17T02:31:05Z"
        },
        {
          "step_id": "staleness",
          "action": "staleness.audit",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "1e81cb0ffd0a4d04626920a203b38d2d23a264cd43e807a85d375d69cae8a658",
          "completed_at": "2026-07-17T02:31:05Z"
        },
        {
          "step_id": "reflections",
          "action": "reflection.list",
          "input_hash": "0172e841ab4c13b3a4061f073f9d68a716ec87a8a5d52fde41823385e0582573",
          "output_hash": "c1b6b635c0bab21120657277f14ef6f839909875f307a3745fa48aee2bd6e449",
          "completed_at": "2026-07-17T02:31:05Z"
        },
        {
          "step_id": "bundle",
          "action": "reporting.bundle",
          "input_hash": "aed8ebb688dc3c085dd978d7c4120572173c3cb87e75919e4a937dcca6ef9457",
          "output_hash": "b624a23b5cbbf44d4129cca2a1d552cc4ce5234cffc9f9ff10fbbd86b76eadfc",
          "completed_at": "2026-07-17T02:31:05Z"
        },
        {
          "step_id": "delegated",
          "action": "reporting.delegate",
          "input_hash": "6fa25e3e449efcc682a85e04bd1fdc15701861336c972e2a2e7a0703497201f2",
          "output_hash": "e6085059f197def80ae95add1f328418107bea5436c9bd002530043646a3a95c",
          "completed_at": "2026-07-17T02:31:06Z"
        }
      ],
      "steps": [
        {
          "id": "state",
          "action": "state.consistency",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-17T02:31:04Z",
          "output": {
            "status": "ok",
            "repo_root": "D:\\Projects\\prd-plugin",
            "summary": {
              "errors": 0,
              "warnings": 0,
              "infos": 0
            },
            "findings": []
          },
          "output_hash": "5a1c6e5246defb1b6b6b90ff734db95bece2886b408ab112ed9b8e67222d5568",
          "completed_at": "2026-07-17T02:31:05Z"
        },
        {
          "id": "goals",
          "action": "substrate.goals",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-17T02:31:05Z",
          "output": {
            "status": "disabled",
            "created": 0,
            "observed": 0,
            "results": []
          },
          "output_hash": "cdfd4de44a28140e686159f34f7b47975954c67e1d1efcef666e985acb136ed8",
          "completed_at": "2026-07-17T02:31:05Z"
        },
        {
          "id": "staleness",
          "action": "staleness.audit",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-17T02:31:05Z",
          "output": {
            "status": "ok",
            "repo_root": "D:\\Projects\\prd-plugin",
            "counts": {
              "stale": 0
            },
            "stale": []
          },
          "output_hash": "1e81cb0ffd0a4d04626920a203b38d2d23a264cd43e807a85d375d69cae8a658",
          "completed_at": "2026-07-17T02:31:05Z"
        },
        {
          "id": "reflections",
          "action": "reflection.list",
          "status": "completed",
          "resolved_input_hash": "0172e841ab4c13b3a4061f073f9d68a716ec87a8a5d52fde41823385e0582573",
          "started_at": "2026-07-17T02:31:05Z",
          "output": {
            "enabled": false,
            "on_stop": true,
            "max_questions_per_stop": 5,
            "categories": [
              {
                "id": "behaviour_quality",
                "name": "Behaviour quality",
                "enabled": true,
                "question_count": 3
              },
              {
                "id": "harness_friction",
                "name": "Harness friction",
                "enabled": true,
                "question_count": 2
              }
            ],
            "questions": [
              {
                "id": "RFQ-001",
                "text": "Based on the work you just carried out, would you classify your behaviour as good? Answer yes or no and cite observable evidence.",
                "enabled": true,
                "category_id": "behaviour_quality",
                "category_name": "Behaviour quality",
                "effective_enabled": false
              },
              {
                "id": "RFQ-002",
                "text": "If you answered no, what could you do differently to correct your behaviour?",
                "enabled": true,
                "category_id": "behaviour_quality",
                "category_name": "Behaviour quality",
                "effective_enabled": false
              },
              {
                "id": "RFQ-003",
                "text": "Would another attempt using the identified good behaviours materially improve the outcome? Answer yes or no and state the next corrective action if yes.",
                "enabled": true,
                "category_id": "behaviour_quality",
                "category_name": "Behaviour quality",
                "effective_enabled": false
              },
              {
                "id": "RFQ-004",
                "text": "What harness friction points made this work more difficult?",
                "enabled": true,
                "category_id": "harness_friction",
                "category_name": "Harness friction",
                "effective_enabled": false
              },
              {
                "id": "RFQ-005",
                "text": "What up to three changes would most improve friction in the harness?",
                "enabled": true,
                "category_id": "harness_friction",
                "category_name": "Harness friction",
                "effective_enabled": false
              }
            ]
          },
          "output_hash": "c1b6b635c0bab21120657277f14ef6f839909875f307a3745fa48aee2bd6e449",
          "completed_at": "2026-07-17T02:31:05Z"
        },
        {
          "id": "bundle",
          "action": "reporting.bundle",
          "status": "completed",
          "resolved_input_hash": "aed8ebb688dc3c085dd978d7c4120572173c3cb87e75919e4a937dcca6ef9457",
          "started_at": "2026-07-17T02:31:05Z",
          "output": {
            "contract_version": 1,
            "task": "session_summary",
            "repo": "prd-plugin",
            "policy": {
              "enabled": false,
              "executor": "ai-collab",
              "contract_version": 1,
              "profile": "fast-capable",
              "tasks": [
                "report_summary",
                "session_summary",
                "wiki_synthesis",
                "triage_draft"
              ],
              "fallback": "main",
              "require_source_refs": true,
              "max_input_tokens": 12000,
              "max_output_tokens": 1500,
              "timeout_seconds": 30
            },
            "facts": {
              "requests_by_status": {
                "deferred": 1,
                "implemented": 91,
                "in_review": 1,
                "proposed": 3,
                "rejected": 1
              },
              "active_requests": [
                {
                  "id": "REQ-072",
                  "status": "proposed",
                  "severity": "low",
                  "summary": "opencode run-until-done: session.idle is a non-blocking notification, so the stop guard can't force continuation on opencode (currently degrades to a printed reminder, 0.5.95). Investigate whether opencode exposes any vetoable/continuation mechanism (a different event, a permission hook, or a 'continue' API) to enforce run-until-done, or accept the reminder as the permanent ceiling. Low priority — user rarely uses opencode."
                },
                {
                  "id": "REQ-104",
                  "status": "in_review",
                  "severity": "high",
                  "summary": "Ordinary-workspace chat has no path into the planning pipeline: owner-approved collaboration decisions land in scratchpads, room agents cannot allocate REQ/PRD/TRK ids past the parallel-worker mutation boundary, and goal-administrator grants detach when participant identity changes on runner restart"
                },
                {
                  "id": "REQ-107",
                  "status": "proposed",
                  "severity": "high",
                  "summary": "Adopt the UTCP-first tool architecture (user-directed): one UTCP manual is the source of truth for ALL prd-plugin tools including mutations, the MCP surface is generated by the official @utcp/mcp-bridge, and the 2,323-line hand-written MCP server is retired as a hand-maintained surface"
                },
                {
                  "id": "REQ-113",
                  "status": "proposed",
                  "severity": "low",
                  "summary": "Request-thread close has no validated tool: finished threads stay 'unresolved' in message_check forever unless state is hand-flipped; add a thread-close capability to the UTCP-first tool catalog (REQ-107), not as a new hand-written MCP handler"
                }
              ],
              "active_tracking": [],
              "open_health": [],
              "evidence_count": 129,
              "decision_count": 10
            },
            "findings": [],
            "source_refs": [
              ".prd_plugin/config.json",
              ".prd_plugin/state/decisions.json",
              ".prd_plugin/state/evidence.json",
              ".prd_plugin/state/health.json",
              ".prd_plugin/state/requests.json",
              ".prd_plugin/state/tracking.json",
              "REQ-072",
              "REQ-104",
              "REQ-107",
              "REQ-113"
            ],
            "constraints": {
              "max_input_tokens": 12000,
              "max_output_tokens": 1500,
              "timeout_seconds": 30,
              "require_source_refs": true,
              "no_project_state_writes": true,
              "no_secrets_or_local_session_content": true
            }
          },
          "output_hash": "b624a23b5cbbf44d4129cca2a1d552cc4ce5234cffc9f9ff10fbbd86b76eadfc",
          "completed_at": "2026-07-17T02:31:05Z"
        },
        {
          "id": "delegated",
          "action": "reporting.delegate",
          "status": "completed",
          "resolved_input_hash": "6fa25e3e449efcc682a85e04bd1fdc15701861336c972e2a2e7a0703497201f2",
          "started_at": "2026-07-17T02:31:06Z",
          "output": {
            "status": "fallback",
            "action": "main",
            "reason": "disabled"
          },
          "output_hash": "e6085059f197def80ae95add1f328418107bea5436c9bd002530043646a3a95c",
          "completed_at": "2026-07-17T02:31:06Z"
        }
      ],
      "completed_at": "2026-07-17T02:31:06Z"
    },
    {
      "id": "WFR-322",
      "schema_version": "1.0",
      "workflow_id": "session.start",
      "workflow_version": 1,
      "definition_hash": "d0f98da02571e6dd27fec4aed92d3c82af9db75f8b90b997bf665635c7b7f6ca",
      "plan_hash": "b5072615ca3b7e9a3bd85d50d1f069d99ef2a9816b32c03a370745ed7a205536",
      "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
      "inputs": {},
      "idempotency_key": "hook:SessionStart:b3a6b680-eb1d-400a-b3eb-f78618633629",
      "status": "completed",
      "attempt": 1,
      "created_at": "2026-07-17T02:35:19Z",
      "updated_at": "2026-07-17T02:35:21Z",
      "receipts": [
        {
          "step_id": "config",
          "action": "config.audit",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "e8f5630220d3e8b26c18a52fd81e19f1b570f8f33a5daaff9c38eb8a62693c22",
          "completed_at": "2026-07-17T02:35:19Z"
        },
        {
          "step_id": "services",
          "action": "services.audit",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "13dcc58bd528f3efa3e6e0fa0853a6eedc376f1f3685fbd4869cbb2b60382ee3",
          "completed_at": "2026-07-17T02:35:19Z"
        },
        {
          "step_id": "state",
          "action": "state.consistency",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "5a1c6e5246defb1b6b6b90ff734db95bece2886b408ab112ed9b8e67222d5568",
          "completed_at": "2026-07-17T02:35:20Z"
        },
        {
          "step_id": "status",
          "action": "state.query",
          "input_hash": "a15231a2142a2a9a85355a8b9cbbccffe01a9c9c2c2fd8c2bc2987cdc481564a",
          "output_hash": "ce181007be67be75d9a4df009f99a1b7634b3a4f10cd221b7efe461eb06a0b28",
          "completed_at": "2026-07-17T02:35:21Z"
        },
        {
          "step_id": "substrate",
          "action": "substrate.preflight",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "a6df426290b4549a59eecaa0519ead9bcc50b7fcb25bd2185ff6047960f19ccb",
          "completed_at": "2026-07-17T02:35:21Z"
        },
        {
          "step_id": "notices",
          "action": "substrate.notices",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "38b904a1cf83df048360fb2480571b749fd98d57e11f1afdffb5a74a78166fea",
          "completed_at": "2026-07-17T02:35:21Z"
        },
        {
          "step_id": "goals",
          "action": "substrate.goals",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "cdfd4de44a28140e686159f34f7b47975954c67e1d1efcef666e985acb136ed8",
          "completed_at": "2026-07-17T02:35:21Z"
        }
      ],
      "steps": [
        {
          "id": "config",
          "action": "config.audit",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-17T02:35:19Z",
          "output": {
            "status": "ok",
            "summary": {
              "settings": 196,
              "mutable": 187,
              "read_only_or_managed": 9,
              "unclassified": 0,
              "unknown": 0,
              "invalid": 0,
              "missing_using_defaults": 0
            },
            "unclassified_keys": [],
            "unknown_keys": [],
            "invalid_values": [],
            "missing_using_defaults": []
          },
          "output_hash": "e8f5630220d3e8b26c18a52fd81e19f1b570f8f33a5daaff9c38eb8a62693c22",
          "completed_at": "2026-07-17T02:35:19Z"
        },
        {
          "id": "services",
          "action": "services.audit",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-17T02:35:19Z",
          "output": {
            "status": "ok",
            "summary": {
              "critical": 0,
              "high": 0,
              "medium": 0,
              "low": 0
            },
            "findings": []
          },
          "output_hash": "13dcc58bd528f3efa3e6e0fa0853a6eedc376f1f3685fbd4869cbb2b60382ee3",
          "completed_at": "2026-07-17T02:35:19Z"
        },
        {
          "id": "state",
          "action": "state.consistency",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-17T02:35:19Z",
          "output": {
            "status": "ok",
            "repo_root": "D:\\Projects\\prd-plugin",
            "summary": {
              "errors": 0,
              "warnings": 0,
              "infos": 0
            },
            "findings": []
          },
          "output_hash": "5a1c6e5246defb1b6b6b90ff734db95bece2886b408ab112ed9b8e67222d5568",
          "completed_at": "2026-07-17T02:35:20Z"
        },
        {
          "id": "status",
          "action": "state.query",
          "status": "completed",
          "resolved_input_hash": "a15231a2142a2a9a85355a8b9cbbccffe01a9c9c2c2fd8c2bc2987cdc481564a",
          "started_at": "2026-07-17T02:35:20Z",
          "output": {
            "repo_root": "D:\\Projects\\prd-plugin",
            "autonomy_level": "autonomous",
            "requests_by_status": {
              "deferred": 1,
              "implemented": 91,
              "in_review": 1,
              "proposed": 3,
              "rejected": 1
            },
            "active_tracking": [],
            "tracking_branches": [],
            "tracking_branch_counts": {},
            "tracking_branch_errors": [],
            "open_health": [],
            "stale_count": 0,
            "skill_usage": {
              "project-decision-policy": 1,
              "project-request-intake": 1,
              "project-test-driven-implementation": 1,
              "project-verification-before-completion": 1,
              "project-llm-wiki": 1
            },
            "wiki_backfill_pending": false,
            "version_update": null
          },
          "output_hash": "ce181007be67be75d9a4df009f99a1b7634b3a4f10cd221b7efe461eb06a0b28",
          "completed_at": "2026-07-17T02:35:21Z"
        },
        {
          "id": "substrate",
          "action": "substrate.preflight",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-17T02:35:21Z",
          "output": {
            "status": "disabled",
            "services": {
              "status": "ok",
              "summary": {
                "critical": 0,
                "high": 0,
                "medium": 0,
                "low": 0
              },
              "findings": []
            },
            "policy": {
              "configured": {
                "enabled": false,
                "mode": "off",
                "capabilities": [
                  "records",
                  "graph",
                  "events"
                ],
                "contract_version": 2,
                "require_source_refs": true,
                "endpoint": "http://127.0.0.1:47124",
                "manual_url": "http://127.0.0.1:47124/utcp.json",
                "knowledge_browse_url": "http://127.0.0.1:5276",
                "auth_env": "AI_COLLAB_API_KEY",
                "timeout_seconds": 5,
                "max_result_bytes": 1048576,
                "cache_ttl_seconds": 60,
                "fallback": "local",
                "automation": {
                  "discovery_on_session_start": true,
                  "knowledge_recall": true,
                  "memory_recall": true,
                  "context_enrichment": true,
                  "notices_on_session_start": false,
                  "goals_sync": false,
                  "telemetry_on_maintenance": false,
                  "reporting_dispatch": true,
                  "judgment_dispatch": true,
                  "verification_execution": true
                }
              },
              "active": false,
              "effective_mode": "off",
              "effective_capabilities": []
            }
          },
          "output_hash": "a6df426290b4549a59eecaa0519ead9bcc50b7fcb25bd2185ff6047960f19ccb",
          "completed_at": "2026-07-17T02:35:21Z"
        },
        {
          "id": "notices",
          "action": "substrate.notices",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-17T02:35:21Z",
          "output": {
            "status": "disabled"
          },
          "output_hash": "38b904a1cf83df048360fb2480571b749fd98d57e11f1afdffb5a74a78166fea",
          "completed_at": "2026-07-17T02:35:21Z"
        },
        {
          "id": "goals",
          "action": "substrate.goals",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-17T02:35:21Z",
          "output": {
            "status": "disabled",
            "created": 0,
            "observed": 0,
            "results": []
          },
          "output_hash": "cdfd4de44a28140e686159f34f7b47975954c67e1d1efcef666e985acb136ed8",
          "completed_at": "2026-07-17T02:35:21Z"
        }
      ],
      "completed_at": "2026-07-17T02:35:21Z"
    },
    {
      "id": "WFR-323",
      "schema_version": "1.0",
      "workflow_id": "session.start",
      "workflow_version": 1,
      "definition_hash": "d0f98da02571e6dd27fec4aed92d3c82af9db75f8b90b997bf665635c7b7f6ca",
      "plan_hash": "b5072615ca3b7e9a3bd85d50d1f069d99ef2a9816b32c03a370745ed7a205536",
      "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
      "inputs": {},
      "idempotency_key": "hook:SessionStart:019f6df9-768b-70e2-8455-2213031be8ad",
      "status": "completed",
      "attempt": 1,
      "created_at": "2026-07-17T02:48:17Z",
      "updated_at": "2026-07-17T02:48:19Z",
      "receipts": [
        {
          "step_id": "config",
          "action": "config.audit",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "e8f5630220d3e8b26c18a52fd81e19f1b570f8f33a5daaff9c38eb8a62693c22",
          "completed_at": "2026-07-17T02:48:17Z"
        },
        {
          "step_id": "services",
          "action": "services.audit",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "13dcc58bd528f3efa3e6e0fa0853a6eedc376f1f3685fbd4869cbb2b60382ee3",
          "completed_at": "2026-07-17T02:48:17Z"
        },
        {
          "step_id": "state",
          "action": "state.consistency",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "5a1c6e5246defb1b6b6b90ff734db95bece2886b408ab112ed9b8e67222d5568",
          "completed_at": "2026-07-17T02:48:18Z"
        },
        {
          "step_id": "status",
          "action": "state.query",
          "input_hash": "a15231a2142a2a9a85355a8b9cbbccffe01a9c9c2c2fd8c2bc2987cdc481564a",
          "output_hash": "ce181007be67be75d9a4df009f99a1b7634b3a4f10cd221b7efe461eb06a0b28",
          "completed_at": "2026-07-17T02:48:18Z"
        },
        {
          "step_id": "substrate",
          "action": "substrate.preflight",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "a6df426290b4549a59eecaa0519ead9bcc50b7fcb25bd2185ff6047960f19ccb",
          "completed_at": "2026-07-17T02:48:18Z"
        },
        {
          "step_id": "notices",
          "action": "substrate.notices",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "38b904a1cf83df048360fb2480571b749fd98d57e11f1afdffb5a74a78166fea",
          "completed_at": "2026-07-17T02:48:19Z"
        },
        {
          "step_id": "goals",
          "action": "substrate.goals",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "cdfd4de44a28140e686159f34f7b47975954c67e1d1efcef666e985acb136ed8",
          "completed_at": "2026-07-17T02:48:19Z"
        }
      ],
      "steps": [
        {
          "id": "config",
          "action": "config.audit",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-17T02:48:17Z",
          "output": {
            "status": "ok",
            "summary": {
              "settings": 196,
              "mutable": 187,
              "read_only_or_managed": 9,
              "unclassified": 0,
              "unknown": 0,
              "invalid": 0,
              "missing_using_defaults": 0
            },
            "unclassified_keys": [],
            "unknown_keys": [],
            "invalid_values": [],
            "missing_using_defaults": []
          },
          "output_hash": "e8f5630220d3e8b26c18a52fd81e19f1b570f8f33a5daaff9c38eb8a62693c22",
          "completed_at": "2026-07-17T02:48:17Z"
        },
        {
          "id": "services",
          "action": "services.audit",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-17T02:48:17Z",
          "output": {
            "status": "ok",
            "summary": {
              "critical": 0,
              "high": 0,
              "medium": 0,
              "low": 0
            },
            "findings": []
          },
          "output_hash": "13dcc58bd528f3efa3e6e0fa0853a6eedc376f1f3685fbd4869cbb2b60382ee3",
          "completed_at": "2026-07-17T02:48:17Z"
        },
        {
          "id": "state",
          "action": "state.consistency",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-17T02:48:17Z",
          "output": {
            "status": "ok",
            "repo_root": "D:\\Projects\\prd-plugin",
            "summary": {
              "errors": 0,
              "warnings": 0,
              "infos": 0
            },
            "findings": []
          },
          "output_hash": "5a1c6e5246defb1b6b6b90ff734db95bece2886b408ab112ed9b8e67222d5568",
          "completed_at": "2026-07-17T02:48:18Z"
        },
        {
          "id": "status",
          "action": "state.query",
          "status": "completed",
          "resolved_input_hash": "a15231a2142a2a9a85355a8b9cbbccffe01a9c9c2c2fd8c2bc2987cdc481564a",
          "started_at": "2026-07-17T02:48:18Z",
          "output": {
            "repo_root": "D:\\Projects\\prd-plugin",
            "autonomy_level": "autonomous",
            "requests_by_status": {
              "deferred": 1,
              "implemented": 91,
              "in_review": 1,
              "proposed": 3,
              "rejected": 1
            },
            "active_tracking": [],
            "tracking_branches": [],
            "tracking_branch_counts": {},
            "tracking_branch_errors": [],
            "open_health": [],
            "stale_count": 0,
            "skill_usage": {
              "project-decision-policy": 1,
              "project-request-intake": 1,
              "project-test-driven-implementation": 1,
              "project-verification-before-completion": 1,
              "project-llm-wiki": 1
            },
            "wiki_backfill_pending": false,
            "version_update": null
          },
          "output_hash": "ce181007be67be75d9a4df009f99a1b7634b3a4f10cd221b7efe461eb06a0b28",
          "completed_at": "2026-07-17T02:48:18Z"
        },
        {
          "id": "substrate",
          "action": "substrate.preflight",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-17T02:48:18Z",
          "output": {
            "status": "disabled",
            "services": {
              "status": "ok",
              "summary": {
                "critical": 0,
                "high": 0,
                "medium": 0,
                "low": 0
              },
              "findings": []
            },
            "policy": {
              "configured": {
                "enabled": false,
                "mode": "off",
                "capabilities": [
                  "records",
                  "graph",
                  "events"
                ],
                "contract_version": 2,
                "require_source_refs": true,
                "endpoint": "http://127.0.0.1:47124",
                "manual_url": "http://127.0.0.1:47124/utcp.json",
                "knowledge_browse_url": "http://127.0.0.1:5276",
                "auth_env": "AI_COLLAB_API_KEY",
                "timeout_seconds": 5,
                "max_result_bytes": 1048576,
                "cache_ttl_seconds": 60,
                "fallback": "local",
                "automation": {
                  "discovery_on_session_start": true,
                  "knowledge_recall": true,
                  "memory_recall": true,
                  "context_enrichment": true,
                  "notices_on_session_start": false,
                  "goals_sync": false,
                  "telemetry_on_maintenance": false,
                  "reporting_dispatch": true,
                  "judgment_dispatch": true,
                  "verification_execution": true
                }
              },
              "active": false,
              "effective_mode": "off",
              "effective_capabilities": []
            }
          },
          "output_hash": "a6df426290b4549a59eecaa0519ead9bcc50b7fcb25bd2185ff6047960f19ccb",
          "completed_at": "2026-07-17T02:48:18Z"
        },
        {
          "id": "notices",
          "action": "substrate.notices",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-17T02:48:19Z",
          "output": {
            "status": "disabled"
          },
          "output_hash": "38b904a1cf83df048360fb2480571b749fd98d57e11f1afdffb5a74a78166fea",
          "completed_at": "2026-07-17T02:48:19Z"
        },
        {
          "id": "goals",
          "action": "substrate.goals",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-17T02:48:19Z",
          "output": {
            "status": "disabled",
            "created": 0,
            "observed": 0,
            "results": []
          },
          "output_hash": "cdfd4de44a28140e686159f34f7b47975954c67e1d1efcef666e985acb136ed8",
          "completed_at": "2026-07-17T02:48:19Z"
        }
      ],
      "completed_at": "2026-07-17T02:48:19Z"
    },
    {
      "id": "WFR-324",
      "schema_version": "1.0",
      "workflow_id": "session.stop",
      "workflow_version": 1,
      "definition_hash": "0cef7bb3e28321be8f85375c154955a69310ce297e47de3f3b8dd48f77a2f07d",
      "plan_hash": "a5e1d77ac734217487fc418e29c7163f4e81178e25d171e70cd4c999d527d3e8",
      "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
      "inputs": {},
      "idempotency_key": "hook:Stop:019f6df9-768b-70e2-8455-2213031be8ad",
      "status": "completed",
      "attempt": 1,
      "created_at": "2026-07-17T02:48:26Z",
      "updated_at": "2026-07-17T02:48:28Z",
      "receipts": [
        {
          "step_id": "state",
          "action": "state.consistency",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "5a1c6e5246defb1b6b6b90ff734db95bece2886b408ab112ed9b8e67222d5568",
          "completed_at": "2026-07-17T02:48:27Z"
        },
        {
          "step_id": "goals",
          "action": "substrate.goals",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "cdfd4de44a28140e686159f34f7b47975954c67e1d1efcef666e985acb136ed8",
          "completed_at": "2026-07-17T02:48:27Z"
        },
        {
          "step_id": "staleness",
          "action": "staleness.audit",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "1e81cb0ffd0a4d04626920a203b38d2d23a264cd43e807a85d375d69cae8a658",
          "completed_at": "2026-07-17T02:48:27Z"
        },
        {
          "step_id": "reflections",
          "action": "reflection.list",
          "input_hash": "0172e841ab4c13b3a4061f073f9d68a716ec87a8a5d52fde41823385e0582573",
          "output_hash": "c1b6b635c0bab21120657277f14ef6f839909875f307a3745fa48aee2bd6e449",
          "completed_at": "2026-07-17T02:48:27Z"
        },
        {
          "step_id": "bundle",
          "action": "reporting.bundle",
          "input_hash": "aed8ebb688dc3c085dd978d7c4120572173c3cb87e75919e4a937dcca6ef9457",
          "output_hash": "b624a23b5cbbf44d4129cca2a1d552cc4ce5234cffc9f9ff10fbbd86b76eadfc",
          "completed_at": "2026-07-17T02:48:27Z"
        },
        {
          "step_id": "delegated",
          "action": "reporting.delegate",
          "input_hash": "6fa25e3e449efcc682a85e04bd1fdc15701861336c972e2a2e7a0703497201f2",
          "output_hash": "e6085059f197def80ae95add1f328418107bea5436c9bd002530043646a3a95c",
          "completed_at": "2026-07-17T02:48:27Z"
        }
      ],
      "steps": [
        {
          "id": "state",
          "action": "state.consistency",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-17T02:48:26Z",
          "output": {
            "status": "ok",
            "repo_root": "D:\\Projects\\prd-plugin",
            "summary": {
              "errors": 0,
              "warnings": 0,
              "infos": 0
            },
            "findings": []
          },
          "output_hash": "5a1c6e5246defb1b6b6b90ff734db95bece2886b408ab112ed9b8e67222d5568",
          "completed_at": "2026-07-17T02:48:27Z"
        },
        {
          "id": "goals",
          "action": "substrate.goals",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-17T02:48:27Z",
          "output": {
            "status": "disabled",
            "created": 0,
            "observed": 0,
            "results": []
          },
          "output_hash": "cdfd4de44a28140e686159f34f7b47975954c67e1d1efcef666e985acb136ed8",
          "completed_at": "2026-07-17T02:48:27Z"
        },
        {
          "id": "staleness",
          "action": "staleness.audit",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-17T02:48:27Z",
          "output": {
            "status": "ok",
            "repo_root": "D:\\Projects\\prd-plugin",
            "counts": {
              "stale": 0
            },
            "stale": []
          },
          "output_hash": "1e81cb0ffd0a4d04626920a203b38d2d23a264cd43e807a85d375d69cae8a658",
          "completed_at": "2026-07-17T02:48:27Z"
        },
        {
          "id": "reflections",
          "action": "reflection.list",
          "status": "completed",
          "resolved_input_hash": "0172e841ab4c13b3a4061f073f9d68a716ec87a8a5d52fde41823385e0582573",
          "started_at": "2026-07-17T02:48:27Z",
          "output": {
            "enabled": false,
            "on_stop": true,
            "max_questions_per_stop": 5,
            "categories": [
              {
                "id": "behaviour_quality",
                "name": "Behaviour quality",
                "enabled": true,
                "question_count": 3
              },
              {
                "id": "harness_friction",
                "name": "Harness friction",
                "enabled": true,
                "question_count": 2
              }
            ],
            "questions": [
              {
                "id": "RFQ-001",
                "text": "Based on the work you just carried out, would you classify your behaviour as good? Answer yes or no and cite observable evidence.",
                "enabled": true,
                "category_id": "behaviour_quality",
                "category_name": "Behaviour quality",
                "effective_enabled": false
              },
              {
                "id": "RFQ-002",
                "text": "If you answered no, what could you do differently to correct your behaviour?",
                "enabled": true,
                "category_id": "behaviour_quality",
                "category_name": "Behaviour quality",
                "effective_enabled": false
              },
              {
                "id": "RFQ-003",
                "text": "Would another attempt using the identified good behaviours materially improve the outcome? Answer yes or no and state the next corrective action if yes.",
                "enabled": true,
                "category_id": "behaviour_quality",
                "category_name": "Behaviour quality",
                "effective_enabled": false
              },
              {
                "id": "RFQ-004",
                "text": "What harness friction points made this work more difficult?",
                "enabled": true,
                "category_id": "harness_friction",
                "category_name": "Harness friction",
                "effective_enabled": false
              },
              {
                "id": "RFQ-005",
                "text": "What up to three changes would most improve friction in the harness?",
                "enabled": true,
                "category_id": "harness_friction",
                "category_name": "Harness friction",
                "effective_enabled": false
              }
            ]
          },
          "output_hash": "c1b6b635c0bab21120657277f14ef6f839909875f307a3745fa48aee2bd6e449",
          "completed_at": "2026-07-17T02:48:27Z"
        },
        {
          "id": "bundle",
          "action": "reporting.bundle",
          "status": "completed",
          "resolved_input_hash": "aed8ebb688dc3c085dd978d7c4120572173c3cb87e75919e4a937dcca6ef9457",
          "started_at": "2026-07-17T02:48:27Z",
          "output": {
            "contract_version": 1,
            "task": "session_summary",
            "repo": "prd-plugin",
            "policy": {
              "enabled": false,
              "executor": "ai-collab",
              "contract_version": 1,
              "profile": "fast-capable",
              "tasks": [
                "report_summary",
                "session_summary",
                "wiki_synthesis",
                "triage_draft"
              ],
              "fallback": "main",
              "require_source_refs": true,
              "max_input_tokens": 12000,
              "max_output_tokens": 1500,
              "timeout_seconds": 30
            },
            "facts": {
              "requests_by_status": {
                "deferred": 1,
                "implemented": 91,
                "in_review": 1,
                "proposed": 3,
                "rejected": 1
              },
              "active_requests": [
                {
                  "id": "REQ-072",
                  "status": "proposed",
                  "severity": "low",
                  "summary": "opencode run-until-done: session.idle is a non-blocking notification, so the stop guard can't force continuation on opencode (currently degrades to a printed reminder, 0.5.95). Investigate whether opencode exposes any vetoable/continuation mechanism (a different event, a permission hook, or a 'continue' API) to enforce run-until-done, or accept the reminder as the permanent ceiling. Low priority — user rarely uses opencode."
                },
                {
                  "id": "REQ-104",
                  "status": "in_review",
                  "severity": "high",
                  "summary": "Ordinary-workspace chat has no path into the planning pipeline: owner-approved collaboration decisions land in scratchpads, room agents cannot allocate REQ/PRD/TRK ids past the parallel-worker mutation boundary, and goal-administrator grants detach when participant identity changes on runner restart"
                },
                {
                  "id": "REQ-107",
                  "status": "proposed",
                  "severity": "high",
                  "summary": "Adopt the UTCP-first tool architecture (user-directed): one UTCP manual is the source of truth for ALL prd-plugin tools including mutations, the MCP surface is generated by the official @utcp/mcp-bridge, and the 2,323-line hand-written MCP server is retired as a hand-maintained surface"
                },
                {
                  "id": "REQ-113",
                  "status": "proposed",
                  "severity": "low",
                  "summary": "Request-thread close has no validated tool: finished threads stay 'unresolved' in message_check forever unless state is hand-flipped; add a thread-close capability to the UTCP-first tool catalog (REQ-107), not as a new hand-written MCP handler"
                }
              ],
              "active_tracking": [],
              "open_health": [],
              "evidence_count": 129,
              "decision_count": 10
            },
            "findings": [],
            "source_refs": [
              ".prd_plugin/config.json",
              ".prd_plugin/state/decisions.json",
              ".prd_plugin/state/evidence.json",
              ".prd_plugin/state/health.json",
              ".prd_plugin/state/requests.json",
              ".prd_plugin/state/tracking.json",
              "REQ-072",
              "REQ-104",
              "REQ-107",
              "REQ-113"
            ],
            "constraints": {
              "max_input_tokens": 12000,
              "max_output_tokens": 1500,
              "timeout_seconds": 30,
              "require_source_refs": true,
              "no_project_state_writes": true,
              "no_secrets_or_local_session_content": true
            }
          },
          "output_hash": "b624a23b5cbbf44d4129cca2a1d552cc4ce5234cffc9f9ff10fbbd86b76eadfc",
          "completed_at": "2026-07-17T02:48:27Z"
        },
        {
          "id": "delegated",
          "action": "reporting.delegate",
          "status": "completed",
          "resolved_input_hash": "6fa25e3e449efcc682a85e04bd1fdc15701861336c972e2a2e7a0703497201f2",
          "started_at": "2026-07-17T02:48:27Z",
          "output": {
            "status": "fallback",
            "action": "main",
            "reason": "disabled"
          },
          "output_hash": "e6085059f197def80ae95add1f328418107bea5436c9bd002530043646a3a95c",
          "completed_at": "2026-07-17T02:48:27Z"
        }
      ],
      "completed_at": "2026-07-17T02:48:28Z"
    },
    {
      "id": "WFR-325",
      "schema_version": "1.0",
      "workflow_id": "session.start",
      "workflow_version": 1,
      "definition_hash": "d0f98da02571e6dd27fec4aed92d3c82af9db75f8b90b997bf665635c7b7f6ca",
      "plan_hash": "b5072615ca3b7e9a3bd85d50d1f069d99ef2a9816b32c03a370745ed7a205536",
      "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
      "inputs": {},
      "idempotency_key": "hook:SessionStart:191b72e5-181d-4e8d-b7d3-d3f712911ef6",
      "status": "completed",
      "attempt": 1,
      "created_at": "2026-07-17T04:01:20Z",
      "updated_at": "2026-07-17T04:01:23Z",
      "receipts": [
        {
          "step_id": "config",
          "action": "config.audit",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "e8f5630220d3e8b26c18a52fd81e19f1b570f8f33a5daaff9c38eb8a62693c22",
          "completed_at": "2026-07-17T04:01:20Z"
        },
        {
          "step_id": "services",
          "action": "services.audit",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "13dcc58bd528f3efa3e6e0fa0853a6eedc376f1f3685fbd4869cbb2b60382ee3",
          "completed_at": "2026-07-17T04:01:20Z"
        },
        {
          "step_id": "state",
          "action": "state.consistency",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "5a1c6e5246defb1b6b6b90ff734db95bece2886b408ab112ed9b8e67222d5568",
          "completed_at": "2026-07-17T04:01:22Z"
        },
        {
          "step_id": "status",
          "action": "state.query",
          "input_hash": "a15231a2142a2a9a85355a8b9cbbccffe01a9c9c2c2fd8c2bc2987cdc481564a",
          "output_hash": "ce181007be67be75d9a4df009f99a1b7634b3a4f10cd221b7efe461eb06a0b28",
          "completed_at": "2026-07-17T04:01:22Z"
        },
        {
          "step_id": "substrate",
          "action": "substrate.preflight",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "a6df426290b4549a59eecaa0519ead9bcc50b7fcb25bd2185ff6047960f19ccb",
          "completed_at": "2026-07-17T04:01:22Z"
        },
        {
          "step_id": "notices",
          "action": "substrate.notices",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "38b904a1cf83df048360fb2480571b749fd98d57e11f1afdffb5a74a78166fea",
          "completed_at": "2026-07-17T04:01:22Z"
        },
        {
          "step_id": "goals",
          "action": "substrate.goals",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "cdfd4de44a28140e686159f34f7b47975954c67e1d1efcef666e985acb136ed8",
          "completed_at": "2026-07-17T04:01:22Z"
        }
      ],
      "steps": [
        {
          "id": "config",
          "action": "config.audit",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-17T04:01:20Z",
          "output": {
            "status": "ok",
            "summary": {
              "settings": 196,
              "mutable": 187,
              "read_only_or_managed": 9,
              "unclassified": 0,
              "unknown": 0,
              "invalid": 0,
              "missing_using_defaults": 0
            },
            "unclassified_keys": [],
            "unknown_keys": [],
            "invalid_values": [],
            "missing_using_defaults": []
          },
          "output_hash": "e8f5630220d3e8b26c18a52fd81e19f1b570f8f33a5daaff9c38eb8a62693c22",
          "completed_at": "2026-07-17T04:01:20Z"
        },
        {
          "id": "services",
          "action": "services.audit",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-17T04:01:20Z",
          "output": {
            "status": "ok",
            "summary": {
              "critical": 0,
              "high": 0,
              "medium": 0,
              "low": 0
            },
            "findings": []
          },
          "output_hash": "13dcc58bd528f3efa3e6e0fa0853a6eedc376f1f3685fbd4869cbb2b60382ee3",
          "completed_at": "2026-07-17T04:01:20Z"
        },
        {
          "id": "state",
          "action": "state.consistency",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-17T04:01:21Z",
          "output": {
            "status": "ok",
            "repo_root": "D:\\Projects\\prd-plugin",
            "summary": {
              "errors": 0,
              "warnings": 0,
              "infos": 0
            },
            "findings": []
          },
          "output_hash": "5a1c6e5246defb1b6b6b90ff734db95bece2886b408ab112ed9b8e67222d5568",
          "completed_at": "2026-07-17T04:01:22Z"
        },
        {
          "id": "status",
          "action": "state.query",
          "status": "completed",
          "resolved_input_hash": "a15231a2142a2a9a85355a8b9cbbccffe01a9c9c2c2fd8c2bc2987cdc481564a",
          "started_at": "2026-07-17T04:01:22Z",
          "output": {
            "repo_root": "D:\\Projects\\prd-plugin",
            "autonomy_level": "autonomous",
            "requests_by_status": {
              "deferred": 1,
              "implemented": 91,
              "in_review": 1,
              "proposed": 3,
              "rejected": 1
            },
            "active_tracking": [],
            "tracking_branches": [],
            "tracking_branch_counts": {},
            "tracking_branch_errors": [],
            "open_health": [],
            "stale_count": 0,
            "skill_usage": {
              "project-decision-policy": 1,
              "project-request-intake": 1,
              "project-test-driven-implementation": 1,
              "project-verification-before-completion": 1,
              "project-llm-wiki": 1
            },
            "wiki_backfill_pending": false,
            "version_update": null
          },
          "output_hash": "ce181007be67be75d9a4df009f99a1b7634b3a4f10cd221b7efe461eb06a0b28",
          "completed_at": "2026-07-17T04:01:22Z"
        },
        {
          "id": "substrate",
          "action": "substrate.preflight",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-17T04:01:22Z",
          "output": {
            "status": "disabled",
            "services": {
              "status": "ok",
              "summary": {
                "critical": 0,
                "high": 0,
                "medium": 0,
                "low": 0
              },
              "findings": []
            },
            "policy": {
              "configured": {
                "enabled": false,
                "mode": "off",
                "capabilities": [
                  "records",
                  "graph",
                  "events"
                ],
                "contract_version": 2,
                "require_source_refs": true,
                "endpoint": "http://127.0.0.1:47124",
                "manual_url": "http://127.0.0.1:47124/utcp.json",
                "knowledge_browse_url": "http://127.0.0.1:5276",
                "auth_env": "AI_COLLAB_API_KEY",
                "timeout_seconds": 5,
                "max_result_bytes": 1048576,
                "cache_ttl_seconds": 60,
                "fallback": "local",
                "automation": {
                  "discovery_on_session_start": true,
                  "knowledge_recall": true,
                  "memory_recall": true,
                  "context_enrichment": true,
                  "notices_on_session_start": false,
                  "goals_sync": false,
                  "telemetry_on_maintenance": false,
                  "reporting_dispatch": true,
                  "judgment_dispatch": true,
                  "verification_execution": true
                }
              },
              "active": false,
              "effective_mode": "off",
              "effective_capabilities": []
            }
          },
          "output_hash": "a6df426290b4549a59eecaa0519ead9bcc50b7fcb25bd2185ff6047960f19ccb",
          "completed_at": "2026-07-17T04:01:22Z"
        },
        {
          "id": "notices",
          "action": "substrate.notices",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-17T04:01:22Z",
          "output": {
            "status": "disabled"
          },
          "output_hash": "38b904a1cf83df048360fb2480571b749fd98d57e11f1afdffb5a74a78166fea",
          "completed_at": "2026-07-17T04:01:22Z"
        },
        {
          "id": "goals",
          "action": "substrate.goals",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-17T04:01:22Z",
          "output": {
            "status": "disabled",
            "created": 0,
            "observed": 0,
            "results": []
          },
          "output_hash": "cdfd4de44a28140e686159f34f7b47975954c67e1d1efcef666e985acb136ed8",
          "completed_at": "2026-07-17T04:01:22Z"
        }
      ],
      "completed_at": "2026-07-17T04:01:23Z"
    },
    {
      "id": "WFR-326",
      "schema_version": "1.0",
      "workflow_id": "session.start",
      "workflow_version": 1,
      "definition_hash": "d0f98da02571e6dd27fec4aed92d3c82af9db75f8b90b997bf665635c7b7f6ca",
      "plan_hash": "b5072615ca3b7e9a3bd85d50d1f069d99ef2a9816b32c03a370745ed7a205536",
      "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
      "inputs": {},
      "idempotency_key": "hook:SessionStart:fe082ede-2bdf-4cd0-9de3-7cbd3d64373b",
      "status": "completed",
      "attempt": 1,
      "created_at": "2026-07-17T07:31:45Z",
      "updated_at": "2026-07-17T07:31:53Z",
      "receipts": [
        {
          "step_id": "config",
          "action": "config.audit",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "e8f5630220d3e8b26c18a52fd81e19f1b570f8f33a5daaff9c38eb8a62693c22",
          "completed_at": "2026-07-17T07:31:46Z"
        },
        {
          "step_id": "services",
          "action": "services.audit",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "13dcc58bd528f3efa3e6e0fa0853a6eedc376f1f3685fbd4869cbb2b60382ee3",
          "completed_at": "2026-07-17T07:31:46Z"
        },
        {
          "step_id": "state",
          "action": "state.consistency",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "5a1c6e5246defb1b6b6b90ff734db95bece2886b408ab112ed9b8e67222d5568",
          "completed_at": "2026-07-17T07:31:51Z"
        },
        {
          "step_id": "status",
          "action": "state.query",
          "input_hash": "a15231a2142a2a9a85355a8b9cbbccffe01a9c9c2c2fd8c2bc2987cdc481564a",
          "output_hash": "ce181007be67be75d9a4df009f99a1b7634b3a4f10cd221b7efe461eb06a0b28",
          "completed_at": "2026-07-17T07:31:52Z"
        },
        {
          "step_id": "substrate",
          "action": "substrate.preflight",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "a6df426290b4549a59eecaa0519ead9bcc50b7fcb25bd2185ff6047960f19ccb",
          "completed_at": "2026-07-17T07:31:52Z"
        },
        {
          "step_id": "notices",
          "action": "substrate.notices",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "38b904a1cf83df048360fb2480571b749fd98d57e11f1afdffb5a74a78166fea",
          "completed_at": "2026-07-17T07:31:52Z"
        },
        {
          "step_id": "goals",
          "action": "substrate.goals",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "cdfd4de44a28140e686159f34f7b47975954c67e1d1efcef666e985acb136ed8",
          "completed_at": "2026-07-17T07:31:53Z"
        }
      ],
      "steps": [
        {
          "id": "config",
          "action": "config.audit",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-17T07:31:46Z",
          "output": {
            "status": "ok",
            "summary": {
              "settings": 196,
              "mutable": 187,
              "read_only_or_managed": 9,
              "unclassified": 0,
              "unknown": 0,
              "invalid": 0,
              "missing_using_defaults": 0
            },
            "unclassified_keys": [],
            "unknown_keys": [],
            "invalid_values": [],
            "missing_using_defaults": []
          },
          "output_hash": "e8f5630220d3e8b26c18a52fd81e19f1b570f8f33a5daaff9c38eb8a62693c22",
          "completed_at": "2026-07-17T07:31:46Z"
        },
        {
          "id": "services",
          "action": "services.audit",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-17T07:31:46Z",
          "output": {
            "status": "ok",
            "summary": {
              "critical": 0,
              "high": 0,
              "medium": 0,
              "low": 0
            },
            "findings": []
          },
          "output_hash": "13dcc58bd528f3efa3e6e0fa0853a6eedc376f1f3685fbd4869cbb2b60382ee3",
          "completed_at": "2026-07-17T07:31:46Z"
        },
        {
          "id": "state",
          "action": "state.consistency",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-17T07:31:46Z",
          "output": {
            "status": "ok",
            "repo_root": "D:\\Projects\\prd-plugin",
            "summary": {
              "errors": 0,
              "warnings": 0,
              "infos": 0
            },
            "findings": []
          },
          "output_hash": "5a1c6e5246defb1b6b6b90ff734db95bece2886b408ab112ed9b8e67222d5568",
          "completed_at": "2026-07-17T07:31:51Z"
        },
        {
          "id": "status",
          "action": "state.query",
          "status": "completed",
          "resolved_input_hash": "a15231a2142a2a9a85355a8b9cbbccffe01a9c9c2c2fd8c2bc2987cdc481564a",
          "started_at": "2026-07-17T07:31:51Z",
          "output": {
            "repo_root": "D:\\Projects\\prd-plugin",
            "autonomy_level": "autonomous",
            "requests_by_status": {
              "deferred": 1,
              "implemented": 91,
              "in_review": 1,
              "proposed": 3,
              "rejected": 1
            },
            "active_tracking": [],
            "tracking_branches": [],
            "tracking_branch_counts": {},
            "tracking_branch_errors": [],
            "open_health": [],
            "stale_count": 0,
            "skill_usage": {
              "project-decision-policy": 1,
              "project-request-intake": 1,
              "project-test-driven-implementation": 1,
              "project-verification-before-completion": 1,
              "project-llm-wiki": 1
            },
            "wiki_backfill_pending": false,
            "version_update": null
          },
          "output_hash": "ce181007be67be75d9a4df009f99a1b7634b3a4f10cd221b7efe461eb06a0b28",
          "completed_at": "2026-07-17T07:31:52Z"
        },
        {
          "id": "substrate",
          "action": "substrate.preflight",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-17T07:31:52Z",
          "output": {
            "status": "disabled",
            "services": {
              "status": "ok",
              "summary": {
                "critical": 0,
                "high": 0,
                "medium": 0,
                "low": 0
              },
              "findings": []
            },
            "policy": {
              "configured": {
                "enabled": false,
                "mode": "off",
                "capabilities": [
                  "records",
                  "graph",
                  "events"
                ],
                "contract_version": 2,
                "require_source_refs": true,
                "endpoint": "http://127.0.0.1:47124",
                "manual_url": "http://127.0.0.1:47124/utcp.json",
                "knowledge_browse_url": "http://127.0.0.1:5276",
                "auth_env": "AI_COLLAB_API_KEY",
                "timeout_seconds": 5,
                "max_result_bytes": 1048576,
                "cache_ttl_seconds": 60,
                "fallback": "local",
                "automation": {
                  "discovery_on_session_start": true,
                  "knowledge_recall": true,
                  "memory_recall": true,
                  "context_enrichment": true,
                  "notices_on_session_start": false,
                  "goals_sync": false,
                  "telemetry_on_maintenance": false,
                  "reporting_dispatch": true,
                  "judgment_dispatch": true,
                  "verification_execution": true
                }
              },
              "active": false,
              "effective_mode": "off",
              "effective_capabilities": []
            }
          },
          "output_hash": "a6df426290b4549a59eecaa0519ead9bcc50b7fcb25bd2185ff6047960f19ccb",
          "completed_at": "2026-07-17T07:31:52Z"
        },
        {
          "id": "notices",
          "action": "substrate.notices",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-17T07:31:52Z",
          "output": {
            "status": "disabled"
          },
          "output_hash": "38b904a1cf83df048360fb2480571b749fd98d57e11f1afdffb5a74a78166fea",
          "completed_at": "2026-07-17T07:31:52Z"
        },
        {
          "id": "goals",
          "action": "substrate.goals",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-17T07:31:53Z",
          "output": {
            "status": "disabled",
            "created": 0,
            "observed": 0,
            "results": []
          },
          "output_hash": "cdfd4de44a28140e686159f34f7b47975954c67e1d1efcef666e985acb136ed8",
          "completed_at": "2026-07-17T07:31:53Z"
        }
      ],
      "completed_at": "2026-07-17T07:31:53Z"
    },
    {
      "id": "WFR-327",
      "schema_version": "1.0",
      "workflow_id": "session.start",
      "workflow_version": 1,
      "definition_hash": "d0f98da02571e6dd27fec4aed92d3c82af9db75f8b90b997bf665635c7b7f6ca",
      "plan_hash": "b5072615ca3b7e9a3bd85d50d1f069d99ef2a9816b32c03a370745ed7a205536",
      "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
      "inputs": {},
      "idempotency_key": "hook:SessionStart:6524036d-a4eb-45f7-afa7-130d4f24472e",
      "status": "completed",
      "attempt": 1,
      "created_at": "2026-07-17T09:02:28Z",
      "updated_at": "2026-07-17T09:02:32Z",
      "receipts": [
        {
          "step_id": "config",
          "action": "config.audit",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "e8f5630220d3e8b26c18a52fd81e19f1b570f8f33a5daaff9c38eb8a62693c22",
          "completed_at": "2026-07-17T09:02:29Z"
        },
        {
          "step_id": "services",
          "action": "services.audit",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "13dcc58bd528f3efa3e6e0fa0853a6eedc376f1f3685fbd4869cbb2b60382ee3",
          "completed_at": "2026-07-17T09:02:29Z"
        },
        {
          "step_id": "state",
          "action": "state.consistency",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "5a1c6e5246defb1b6b6b90ff734db95bece2886b408ab112ed9b8e67222d5568",
          "completed_at": "2026-07-17T09:02:31Z"
        },
        {
          "step_id": "status",
          "action": "state.query",
          "input_hash": "a15231a2142a2a9a85355a8b9cbbccffe01a9c9c2c2fd8c2bc2987cdc481564a",
          "output_hash": "ce181007be67be75d9a4df009f99a1b7634b3a4f10cd221b7efe461eb06a0b28",
          "completed_at": "2026-07-17T09:02:31Z"
        },
        {
          "step_id": "substrate",
          "action": "substrate.preflight",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "a6df426290b4549a59eecaa0519ead9bcc50b7fcb25bd2185ff6047960f19ccb",
          "completed_at": "2026-07-17T09:02:32Z"
        },
        {
          "step_id": "notices",
          "action": "substrate.notices",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "38b904a1cf83df048360fb2480571b749fd98d57e11f1afdffb5a74a78166fea",
          "completed_at": "2026-07-17T09:02:32Z"
        },
        {
          "step_id": "goals",
          "action": "substrate.goals",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "cdfd4de44a28140e686159f34f7b47975954c67e1d1efcef666e985acb136ed8",
          "completed_at": "2026-07-17T09:02:32Z"
        }
      ],
      "steps": [
        {
          "id": "config",
          "action": "config.audit",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-17T09:02:29Z",
          "output": {
            "status": "ok",
            "summary": {
              "settings": 196,
              "mutable": 187,
              "read_only_or_managed": 9,
              "unclassified": 0,
              "unknown": 0,
              "invalid": 0,
              "missing_using_defaults": 0
            },
            "unclassified_keys": [],
            "unknown_keys": [],
            "invalid_values": [],
            "missing_using_defaults": []
          },
          "output_hash": "e8f5630220d3e8b26c18a52fd81e19f1b570f8f33a5daaff9c38eb8a62693c22",
          "completed_at": "2026-07-17T09:02:29Z"
        },
        {
          "id": "services",
          "action": "services.audit",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-17T09:02:29Z",
          "output": {
            "status": "ok",
            "summary": {
              "critical": 0,
              "high": 0,
              "medium": 0,
              "low": 0
            },
            "findings": []
          },
          "output_hash": "13dcc58bd528f3efa3e6e0fa0853a6eedc376f1f3685fbd4869cbb2b60382ee3",
          "completed_at": "2026-07-17T09:02:29Z"
        },
        {
          "id": "state",
          "action": "state.consistency",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-17T09:02:29Z",
          "output": {
            "status": "ok",
            "repo_root": "D:\\Projects\\prd-plugin",
            "summary": {
              "errors": 0,
              "warnings": 0,
              "infos": 0
            },
            "findings": []
          },
          "output_hash": "5a1c6e5246defb1b6b6b90ff734db95bece2886b408ab112ed9b8e67222d5568",
          "completed_at": "2026-07-17T09:02:31Z"
        },
        {
          "id": "status",
          "action": "state.query",
          "status": "completed",
          "resolved_input_hash": "a15231a2142a2a9a85355a8b9cbbccffe01a9c9c2c2fd8c2bc2987cdc481564a",
          "started_at": "2026-07-17T09:02:31Z",
          "output": {
            "repo_root": "D:\\Projects\\prd-plugin",
            "autonomy_level": "autonomous",
            "requests_by_status": {
              "deferred": 1,
              "implemented": 91,
              "in_review": 1,
              "proposed": 3,
              "rejected": 1
            },
            "active_tracking": [],
            "tracking_branches": [],
            "tracking_branch_counts": {},
            "tracking_branch_errors": [],
            "open_health": [],
            "stale_count": 0,
            "skill_usage": {
              "project-decision-policy": 1,
              "project-request-intake": 1,
              "project-test-driven-implementation": 1,
              "project-verification-before-completion": 1,
              "project-llm-wiki": 1
            },
            "wiki_backfill_pending": false,
            "version_update": null
          },
          "output_hash": "ce181007be67be75d9a4df009f99a1b7634b3a4f10cd221b7efe461eb06a0b28",
          "completed_at": "2026-07-17T09:02:31Z"
        },
        {
          "id": "substrate",
          "action": "substrate.preflight",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-17T09:02:31Z",
          "output": {
            "status": "disabled",
            "services": {
              "status": "ok",
              "summary": {
                "critical": 0,
                "high": 0,
                "medium": 0,
                "low": 0
              },
              "findings": []
            },
            "policy": {
              "configured": {
                "enabled": false,
                "mode": "off",
                "capabilities": [
                  "records",
                  "graph",
                  "events"
                ],
                "contract_version": 2,
                "require_source_refs": true,
                "endpoint": "http://127.0.0.1:47124",
                "manual_url": "http://127.0.0.1:47124/utcp.json",
                "knowledge_browse_url": "http://127.0.0.1:5276",
                "auth_env": "AI_COLLAB_API_KEY",
                "timeout_seconds": 5,
                "max_result_bytes": 1048576,
                "cache_ttl_seconds": 60,
                "fallback": "local",
                "automation": {
                  "discovery_on_session_start": true,
                  "knowledge_recall": true,
                  "memory_recall": true,
                  "context_enrichment": true,
                  "notices_on_session_start": false,
                  "goals_sync": false,
                  "telemetry_on_maintenance": false,
                  "reporting_dispatch": true,
                  "judgment_dispatch": true,
                  "verification_execution": true
                }
              },
              "active": false,
              "effective_mode": "off",
              "effective_capabilities": []
            }
          },
          "output_hash": "a6df426290b4549a59eecaa0519ead9bcc50b7fcb25bd2185ff6047960f19ccb",
          "completed_at": "2026-07-17T09:02:32Z"
        },
        {
          "id": "notices",
          "action": "substrate.notices",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-17T09:02:32Z",
          "output": {
            "status": "disabled"
          },
          "output_hash": "38b904a1cf83df048360fb2480571b749fd98d57e11f1afdffb5a74a78166fea",
          "completed_at": "2026-07-17T09:02:32Z"
        },
        {
          "id": "goals",
          "action": "substrate.goals",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-17T09:02:32Z",
          "output": {
            "status": "disabled",
            "created": 0,
            "observed": 0,
            "results": []
          },
          "output_hash": "cdfd4de44a28140e686159f34f7b47975954c67e1d1efcef666e985acb136ed8",
          "completed_at": "2026-07-17T09:02:32Z"
        }
      ],
      "completed_at": "2026-07-17T09:02:32Z"
    },
    {
      "id": "WFR-328",
      "schema_version": "1.0",
      "workflow_id": "request.import",
      "workflow_version": 1,
      "definition_hash": "8e5c3f934b131b2397ebcc835b779a634c269fe55fd1be6ed5b8ea8d1f147307",
      "plan_hash": "8b3a972737b194b186197d31c307dd25f41886f3558a887d59ef0390914291fe",
      "input_hash": "bf871f7162e01b63008ef40b90b72f1144966bc0de8cb109540c8f30c02adc44",
      "inputs": {
        "package_path": ".prd_plugin/inbox/AI-Collab-v3/incoming/REQ-079.json",
        "agent": "Codex"
      },
      "idempotency_key": "ai-collab-v3-REQ-079",
      "status": "completed",
      "attempt": 1,
      "created_at": "2026-07-17T09:03:59Z",
      "updated_at": "2026-07-17T09:04:01Z",
      "receipts": [
        {
          "step_id": "import",
          "action": "state.mutate",
          "input_hash": "9a1bbbdf1668ef8f7c1c706fe487ac45497872972c35c6ffb060bc7ef3d0bdf0",
          "output_hash": "e1cd3c972c23f71c0d11727e8ed89face6d3666f48607f40c7bd94ee3d1b4b4a",
          "completed_at": "2026-07-17T09:04:00Z"
        },
        {
          "step_id": "confirm",
          "action": "state.query",
          "input_hash": "bffcd70037bd764286ab00dedd41a9a45eed3f8f12e1dffce327f698f67a269b",
          "output_hash": "43a74769c87da8daf4fe98f752fc9b457f854c8c9d7358878a734a9544185b9a",
          "completed_at": "2026-07-17T09:04:00Z"
        }
      ],
      "steps": [
        {
          "id": "import",
          "action": "state.mutate",
          "status": "completed",
          "resolved_input_hash": "9a1bbbdf1668ef8f7c1c706fe487ac45497872972c35c6ffb060bc7ef3d0bdf0",
          "started_at": "2026-07-17T09:04:00Z",
          "execution_token": "144148796115d0d8aa03b6d3dc674d2714c99e38220a3a0e22089308e79b97e3",
          "output": {
            "id": "REQ-116",
            "origin_repo": "AI-Collab-v3",
            "source_request_id": "REQ-079",
            "status": "proposed"
          },
          "output_hash": "e1cd3c972c23f71c0d11727e8ed89face6d3666f48607f40c7bd94ee3d1b4b4a",
          "completed_at": "2026-07-17T09:04:00Z"
        },
        {
          "id": "confirm",
          "action": "state.query",
          "status": "completed",
          "resolved_input_hash": "bffcd70037bd764286ab00dedd41a9a45eed3f8f12e1dffce327f698f67a269b",
          "started_at": "2026-07-17T09:04:00Z",
          "output": {
            "kind": "REQ",
            "record": {
              "id": "REQ-116",
              "status": "proposed",
              "request_type": "bug",
              "scope": "upstream",
              "origin_repo": "AI-Collab-v3",
              "visibility": "repo",
              "upstream_submission": true,
              "upstream_request_id": "REQ-116",
              "source_request_id": "REQ-079",
              "summary": "PRD Plugin 0.16.1 installs a session.stop workflow that imports staleness_audit but omits staleness_audit.py from downstream delivery, so Codex Stop workflows fail.",
              "severity": "high",
              "requested_by_agent": "Codex",
              "created_at": "2026-07-17",
              "rationale": "A safe prd-install --force refresh confirms the helper is absent from the downstream installed-script list and script-install-scope while workflows.json and prd_workflows.py require staleness.audit. WFR-096, WFR-098 attempt 1, and WFR-100 reproduce ModuleNotFoundError; WFR-098 succeeds only with node_modules/prd-plugin/scripts added to PYTHONPATH.",
              "affected_areas": [
                "installer script-install scope",
                "prd_workflows.py staleness.audit action",
                "session.stop deterministic workflow",
                "prd_hook_dispatch.py runtime import path"
              ],
              "expected_behavior": "Every enabled downstream workflow dependency is delivered or resolved from the installed npm package automatically, and session.stop completes without an ambient PYTHONPATH workaround."
            }
          },
          "output_hash": "43a74769c87da8daf4fe98f752fc9b457f854c8c9d7358878a734a9544185b9a",
          "completed_at": "2026-07-17T09:04:00Z"
        }
      ],
      "completed_at": "2026-07-17T09:04:01Z"
    },
    {
      "id": "WFR-329",
      "schema_version": "1.0",
      "workflow_id": "request.import",
      "workflow_version": 1,
      "definition_hash": "8e5c3f934b131b2397ebcc835b779a634c269fe55fd1be6ed5b8ea8d1f147307",
      "plan_hash": "9e5869dfdcb1dbb25e8c7b445aca6ab052ba443ec079dc3d2ecffc2d33212b37",
      "input_hash": "d4a7ff5b96cf6776a0be049c8231b2b39108c68624fadcff1cec6de2ea148522",
      "inputs": {
        "package_path": ".prd_plugin/inbox/AI-Collab-v3/incoming/REQ-080.json",
        "agent": "Codex"
      },
      "idempotency_key": "ai-collab-v3-REQ-080",
      "status": "completed",
      "attempt": 1,
      "created_at": "2026-07-17T09:04:01Z",
      "updated_at": "2026-07-17T09:04:02Z",
      "receipts": [
        {
          "step_id": "import",
          "action": "state.mutate",
          "input_hash": "911bea163c4afb9e86c43113a9c6f6d2a75ba4b432cfa453b16e46dd4921593d",
          "output_hash": "2f0a2fddf347fe9871f1a32695e1e29b44eb52da813f417339a21a85ee1f856a",
          "completed_at": "2026-07-17T09:04:02Z"
        },
        {
          "step_id": "confirm",
          "action": "state.query",
          "input_hash": "824acfdaf02590db2289dba065060beca491fe0117f88cd2f7f2fcacf5824224",
          "output_hash": "7feb5c8661d9990960979a50f7da92e7ea9ed8423b7c11d675698b43258bbdc4",
          "completed_at": "2026-07-17T09:04:02Z"
        }
      ],
      "steps": [
        {
          "id": "import",
          "action": "state.mutate",
          "status": "completed",
          "resolved_input_hash": "911bea163c4afb9e86c43113a9c6f6d2a75ba4b432cfa453b16e46dd4921593d",
          "started_at": "2026-07-17T09:04:01Z",
          "execution_token": "ef0f68a45f1c0f648f6fbbb5471475a0890056d0e9abe7c46b722b9f688693d4",
          "output": {
            "id": "REQ-117",
            "origin_repo": "AI-Collab-v3",
            "source_request_id": "REQ-080",
            "status": "proposed"
          },
          "output_hash": "2f0a2fddf347fe9871f1a32695e1e29b44eb52da813f417339a21a85ee1f856a",
          "completed_at": "2026-07-17T09:04:02Z"
        },
        {
          "id": "confirm",
          "action": "state.query",
          "status": "completed",
          "resolved_input_hash": "824acfdaf02590db2289dba065060beca491fe0117f88cd2f7f2fcacf5824224",
          "started_at": "2026-07-17T09:04:02Z",
          "output": {
            "kind": "REQ",
            "record": {
              "id": "REQ-117",
              "status": "proposed",
              "request_type": "bug",
              "scope": "upstream",
              "origin_repo": "AI-Collab-v3",
              "visibility": "repo",
              "upstream_submission": true,
              "upstream_request_id": "REQ-117",
              "source_request_id": "REQ-080",
              "summary": "UTCP/MCP tool surfaces are split inconsistently instead of exposing one canonical tool surface",
              "severity": "medium",
              "requested_by_agent": "Codex",
              "created_at": "2026-07-17",
              "rationale": "The owner identified the current 12 UTCP / 45 MCP split as the real defect behind the failed upstream filing. This creates confusion for downstream AI-Collab integration because tools that should appear as one plugin-owned capability set are exposed differently depending on transport.",
              "risk": "medium",
              "affected_areas": [
                ".prd_plugin/scripts/prd_tools.py",
                ".prd_plugin/mcp/server.cjs",
                "UTCP manual generation",
                "MCP tool registration",
                "downstream PRD Plugin request filing"
              ],
              "expected_behavior": "PRD Plugin should expose a coherent canonical tool surface so downstream repos do not see an arbitrary UTCP/MCP split. If both transports remain, their generated manuals and MCP registration should be reconciled from the same capability catalog, with tests proving parity or documenting intentional transport-only differences."
            }
          },
          "output_hash": "7feb5c8661d9990960979a50f7da92e7ea9ed8423b7c11d675698b43258bbdc4",
          "completed_at": "2026-07-17T09:04:02Z"
        }
      ],
      "completed_at": "2026-07-17T09:04:02Z"
    },
    {
      "id": "WFR-330",
      "schema_version": "1.0",
      "workflow_id": "request.import",
      "workflow_version": 1,
      "definition_hash": "8e5c3f934b131b2397ebcc835b779a634c269fe55fd1be6ed5b8ea8d1f147307",
      "plan_hash": "9511052856070bc9fda29e02b51744ad2fdcf9b3050d3391bd7dc6ab84a55598",
      "input_hash": "de29acb3dc639bb7f2382f41c4f67a67c8da3cb1436059e423599c3c43f19768",
      "inputs": {
        "package_path": ".prd_plugin/inbox/AI-Collab-v3/incoming/REQ-123.json",
        "agent": "Codex"
      },
      "idempotency_key": "ai-collab-v3-REQ-123",
      "status": "completed",
      "attempt": 1,
      "created_at": "2026-07-17T09:04:02Z",
      "updated_at": "2026-07-17T09:04:03Z",
      "receipts": [
        {
          "step_id": "import",
          "action": "state.mutate",
          "input_hash": "6120f35241281203cf2882938c359be3caea22834e3b17350c20fd6169363e83",
          "output_hash": "d80210f95cacdfa994063ebb10d4536baaa9569457b559cbb3b5ff5f78f82419",
          "completed_at": "2026-07-17T09:04:03Z"
        },
        {
          "step_id": "confirm",
          "action": "state.query",
          "input_hash": "1b8e2cdc147c7e7d7974c47f23b19fb34d822e1213f20cb463173465d27aff39",
          "output_hash": "8758d9fc0162cda05b5c41e65b1fe415bfa967c838fd78dfac98abfacfe30f90",
          "completed_at": "2026-07-17T09:04:03Z"
        }
      ],
      "steps": [
        {
          "id": "import",
          "action": "state.mutate",
          "status": "completed",
          "resolved_input_hash": "6120f35241281203cf2882938c359be3caea22834e3b17350c20fd6169363e83",
          "started_at": "2026-07-17T09:04:02Z",
          "execution_token": "89a76cff474a0d9aba7238959e3de5c8efe813dcd8bcf144390948969c0dc1e8",
          "output": {
            "id": "REQ-118",
            "origin_repo": "AI-Collab-v3",
            "source_request_id": "REQ-123",
            "status": "proposed"
          },
          "output_hash": "d80210f95cacdfa994063ebb10d4536baaa9569457b559cbb3b5ff5f78f82419",
          "completed_at": "2026-07-17T09:04:03Z"
        },
        {
          "id": "confirm",
          "action": "state.query",
          "status": "completed",
          "resolved_input_hash": "1b8e2cdc147c7e7d7974c47f23b19fb34d822e1213f20cb463173465d27aff39",
          "started_at": "2026-07-17T09:04:03Z",
          "output": {
            "kind": "REQ",
            "record": {
              "id": "REQ-118",
              "status": "proposed",
              "request_type": "bug",
              "scope": "upstream",
              "origin_repo": "AI-Collab-v3",
              "visibility": "repo",
              "upstream_submission": true,
              "upstream_request_id": "REQ-118",
              "source_request_id": "REQ-123",
              "summary": "Complete the upstream-request acknowledgement and reconciliation loop so imported or terminal hub requests update their downstream source record and no longer remain as stranded-outbox warnings; explicit local requests must never be auto-classified as unsubmitted plugin requests.",
              "severity": "high",
              "requested_by_agent": "Codex",
              "created_at": "2026-07-17",
              "rationale": "AI-Collab-v3 currently has seven outbox warnings. Five packages were already imported by the PRD Plugin hub as new canonical requests (source REQ-085/090/092/095/116 became hub REQ-104/105/108/109/115), but downstream still has upstream_request_id=null and the original outbox files because no acknowledgement is returned. Two older packages (REQ-079/080) were never delivered, while request_autosubmit refuses to retry any record already marked upstream_submission. Separately, explicit local requests REQ-096 and REQ-109 are falsely flagged because PLUGIN_SURFACE_RE scans all prose and ignores scope=local. The result is permanent warnings after successful import, no reliable retry after partial delivery, and false warnings for legitimate local work.",
              "risk": "medium",
              "affected_areas": [
                "scripts/request_autosubmit.py",
                "scripts/request_import.py",
                "scripts/request_mailbox.py",
                "scripts/request_pull.py",
                "scripts/message_check.py",
                "scripts/prd_gate.py",
                "MCP prd_file_request and prd_import_request transport",
                "request transport tests and downstream installer"
              ],
              "expected_behavior": "Upstream submission is an idempotent end-to-end transaction. Export may create an outbox package, but successful delivery/import must assign and return the hub request ID, update the downstream source record with upstream_request_id and reconciled delivery state, and archive or remove the transient outbox package only after verified arrival. Hub status changes—including implemented/resolved/terminal completion—must be publishable through the scoped mailbox and reconcile onto the original downstream request by origin_repo + source_request_id, never append a duplicate hub-ID request. The downstream gate must warn only for unresolved delivery/reconciliation, not every historical outbox file. Autosubmit must retry an upstream_submission record that lacks verified hub acknowledgement. Explicit scope=local must override prose classification and never trigger unsubmitted_plugin_request. Add tests for successful acknowledgement, partial-delivery retry, duplicate-safe import, hub terminal-status round-trip, stale outbox cleanup, and explicit-local false-positive prevention."
            }
          },
          "output_hash": "8758d9fc0162cda05b5c41e65b1fe415bfa967c838fd78dfac98abfacfe30f90",
          "completed_at": "2026-07-17T09:04:03Z"
        }
      ],
      "completed_at": "2026-07-17T09:04:03Z"
    },
    {
      "id": "WFR-331",
      "schema_version": "1.0",
      "workflow_id": "session.start",
      "workflow_version": 1,
      "definition_hash": "d0f98da02571e6dd27fec4aed92d3c82af9db75f8b90b997bf665635c7b7f6ca",
      "plan_hash": "b5072615ca3b7e9a3bd85d50d1f069d99ef2a9816b32c03a370745ed7a205536",
      "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
      "inputs": {},
      "idempotency_key": "hook:SessionStart:019f711a-c14e-7e11-9373-53f87a5a3530",
      "status": "completed",
      "attempt": 1,
      "created_at": "2026-07-17T17:23:30Z",
      "updated_at": "2026-07-17T17:23:35Z",
      "receipts": [
        {
          "step_id": "config",
          "action": "config.audit",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "e8f5630220d3e8b26c18a52fd81e19f1b570f8f33a5daaff9c38eb8a62693c22",
          "completed_at": "2026-07-17T17:23:30Z"
        },
        {
          "step_id": "services",
          "action": "services.audit",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "13dcc58bd528f3efa3e6e0fa0853a6eedc376f1f3685fbd4869cbb2b60382ee3",
          "completed_at": "2026-07-17T17:23:30Z"
        },
        {
          "step_id": "state",
          "action": "state.consistency",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "5a1c6e5246defb1b6b6b90ff734db95bece2886b408ab112ed9b8e67222d5568",
          "completed_at": "2026-07-17T17:23:34Z"
        },
        {
          "step_id": "status",
          "action": "state.query",
          "input_hash": "a15231a2142a2a9a85355a8b9cbbccffe01a9c9c2c2fd8c2bc2987cdc481564a",
          "output_hash": "a22314718980c1164f6f79c603e6f8b96f5a4ff6875e863e7276e5a00c9ee317",
          "completed_at": "2026-07-17T17:23:34Z"
        },
        {
          "step_id": "substrate",
          "action": "substrate.preflight",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "a6df426290b4549a59eecaa0519ead9bcc50b7fcb25bd2185ff6047960f19ccb",
          "completed_at": "2026-07-17T17:23:35Z"
        },
        {
          "step_id": "notices",
          "action": "substrate.notices",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "38b904a1cf83df048360fb2480571b749fd98d57e11f1afdffb5a74a78166fea",
          "completed_at": "2026-07-17T17:23:35Z"
        },
        {
          "step_id": "goals",
          "action": "substrate.goals",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "cdfd4de44a28140e686159f34f7b47975954c67e1d1efcef666e985acb136ed8",
          "completed_at": "2026-07-17T17:23:35Z"
        }
      ],
      "steps": [
        {
          "id": "config",
          "action": "config.audit",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-17T17:23:30Z",
          "output": {
            "status": "ok",
            "summary": {
              "settings": 196,
              "mutable": 187,
              "read_only_or_managed": 9,
              "unclassified": 0,
              "unknown": 0,
              "invalid": 0,
              "missing_using_defaults": 0
            },
            "unclassified_keys": [],
            "unknown_keys": [],
            "invalid_values": [],
            "missing_using_defaults": []
          },
          "output_hash": "e8f5630220d3e8b26c18a52fd81e19f1b570f8f33a5daaff9c38eb8a62693c22",
          "completed_at": "2026-07-17T17:23:30Z"
        },
        {
          "id": "services",
          "action": "services.audit",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-17T17:23:30Z",
          "output": {
            "status": "ok",
            "summary": {
              "critical": 0,
              "high": 0,
              "medium": 0,
              "low": 0
            },
            "findings": []
          },
          "output_hash": "13dcc58bd528f3efa3e6e0fa0853a6eedc376f1f3685fbd4869cbb2b60382ee3",
          "completed_at": "2026-07-17T17:23:30Z"
        },
        {
          "id": "state",
          "action": "state.consistency",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-17T17:23:30Z",
          "output": {
            "status": "ok",
            "repo_root": "D:\\Projects\\prd-plugin",
            "summary": {
              "errors": 0,
              "warnings": 0,
              "infos": 0
            },
            "findings": []
          },
          "output_hash": "5a1c6e5246defb1b6b6b90ff734db95bece2886b408ab112ed9b8e67222d5568",
          "completed_at": "2026-07-17T17:23:34Z"
        },
        {
          "id": "status",
          "action": "state.query",
          "status": "completed",
          "resolved_input_hash": "a15231a2142a2a9a85355a8b9cbbccffe01a9c9c2c2fd8c2bc2987cdc481564a",
          "started_at": "2026-07-17T17:23:34Z",
          "output": {
            "repo_root": "D:\\Projects\\prd-plugin",
            "autonomy_level": "autonomous",
            "requests_by_status": {
              "deferred": 1,
              "implemented": 91,
              "in_review": 1,
              "proposed": 6,
              "rejected": 1
            },
            "active_tracking": [],
            "tracking_branches": [],
            "tracking_branch_counts": {},
            "tracking_branch_errors": [],
            "open_health": [],
            "stale_count": 0,
            "skill_usage": {
              "project-decision-policy": 1,
              "project-request-intake": 1,
              "project-test-driven-implementation": 1,
              "project-verification-before-completion": 1,
              "project-llm-wiki": 1
            },
            "wiki_backfill_pending": false,
            "version_update": null
          },
          "output_hash": "a22314718980c1164f6f79c603e6f8b96f5a4ff6875e863e7276e5a00c9ee317",
          "completed_at": "2026-07-17T17:23:34Z"
        },
        {
          "id": "substrate",
          "action": "substrate.preflight",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-17T17:23:35Z",
          "output": {
            "status": "disabled",
            "services": {
              "status": "ok",
              "summary": {
                "critical": 0,
                "high": 0,
                "medium": 0,
                "low": 0
              },
              "findings": []
            },
            "policy": {
              "configured": {
                "enabled": false,
                "mode": "off",
                "capabilities": [
                  "records",
                  "graph",
                  "events"
                ],
                "contract_version": 2,
                "require_source_refs": true,
                "endpoint": "http://127.0.0.1:47124",
                "manual_url": "http://127.0.0.1:47124/utcp.json",
                "knowledge_browse_url": "http://127.0.0.1:5276",
                "auth_env": "AI_COLLAB_API_KEY",
                "timeout_seconds": 5,
                "max_result_bytes": 1048576,
                "cache_ttl_seconds": 60,
                "fallback": "local",
                "automation": {
                  "discovery_on_session_start": true,
                  "knowledge_recall": true,
                  "memory_recall": true,
                  "context_enrichment": true,
                  "notices_on_session_start": false,
                  "goals_sync": false,
                  "telemetry_on_maintenance": false,
                  "reporting_dispatch": true,
                  "judgment_dispatch": true,
                  "verification_execution": true
                }
              },
              "active": false,
              "effective_mode": "off",
              "effective_capabilities": []
            }
          },
          "output_hash": "a6df426290b4549a59eecaa0519ead9bcc50b7fcb25bd2185ff6047960f19ccb",
          "completed_at": "2026-07-17T17:23:35Z"
        },
        {
          "id": "notices",
          "action": "substrate.notices",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-17T17:23:35Z",
          "output": {
            "status": "disabled"
          },
          "output_hash": "38b904a1cf83df048360fb2480571b749fd98d57e11f1afdffb5a74a78166fea",
          "completed_at": "2026-07-17T17:23:35Z"
        },
        {
          "id": "goals",
          "action": "substrate.goals",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-17T17:23:35Z",
          "output": {
            "status": "disabled",
            "created": 0,
            "observed": 0,
            "results": []
          },
          "output_hash": "cdfd4de44a28140e686159f34f7b47975954c67e1d1efcef666e985acb136ed8",
          "completed_at": "2026-07-17T17:23:35Z"
        }
      ],
      "completed_at": "2026-07-17T17:23:35Z"
    },
    {
      "id": "WFR-332",
      "schema_version": "1.0",
      "workflow_id": "session.stop",
      "workflow_version": 1,
      "definition_hash": "0cef7bb3e28321be8f85375c154955a69310ce297e47de3f3b8dd48f77a2f07d",
      "plan_hash": "a5e1d77ac734217487fc418e29c7163f4e81178e25d171e70cd4c999d527d3e8",
      "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
      "inputs": {},
      "idempotency_key": "hook:Stop:019f711a-c14e-7e11-9373-53f87a5a3530",
      "status": "completed",
      "attempt": 1,
      "created_at": "2026-07-17T17:23:40Z",
      "updated_at": "2026-07-17T17:23:41Z",
      "receipts": [
        {
          "step_id": "state",
          "action": "state.consistency",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "5a1c6e5246defb1b6b6b90ff734db95bece2886b408ab112ed9b8e67222d5568",
          "completed_at": "2026-07-17T17:23:41Z"
        },
        {
          "step_id": "goals",
          "action": "substrate.goals",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "cdfd4de44a28140e686159f34f7b47975954c67e1d1efcef666e985acb136ed8",
          "completed_at": "2026-07-17T17:23:41Z"
        },
        {
          "step_id": "staleness",
          "action": "staleness.audit",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "1e81cb0ffd0a4d04626920a203b38d2d23a264cd43e807a85d375d69cae8a658",
          "completed_at": "2026-07-17T17:23:41Z"
        },
        {
          "step_id": "reflections",
          "action": "reflection.list",
          "input_hash": "0172e841ab4c13b3a4061f073f9d68a716ec87a8a5d52fde41823385e0582573",
          "output_hash": "c1b6b635c0bab21120657277f14ef6f839909875f307a3745fa48aee2bd6e449",
          "completed_at": "2026-07-17T17:23:41Z"
        },
        {
          "step_id": "bundle",
          "action": "reporting.bundle",
          "input_hash": "aed8ebb688dc3c085dd978d7c4120572173c3cb87e75919e4a937dcca6ef9457",
          "output_hash": "64b7bf208401620f13c524f2d330f2fe8c4a2a99b6e3889b87c4a4094602f5f1",
          "completed_at": "2026-07-17T17:23:41Z"
        },
        {
          "step_id": "delegated",
          "action": "reporting.delegate",
          "input_hash": "7230e6297c3c861eadebbf767293b062f4f55cb3094e1f6af215bc4d4019f5b5",
          "output_hash": "e6085059f197def80ae95add1f328418107bea5436c9bd002530043646a3a95c",
          "completed_at": "2026-07-17T17:23:41Z"
        }
      ],
      "steps": [
        {
          "id": "state",
          "action": "state.consistency",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-17T17:23:40Z",
          "output": {
            "status": "ok",
            "repo_root": "D:\\Projects\\prd-plugin",
            "summary": {
              "errors": 0,
              "warnings": 0,
              "infos": 0
            },
            "findings": []
          },
          "output_hash": "5a1c6e5246defb1b6b6b90ff734db95bece2886b408ab112ed9b8e67222d5568",
          "completed_at": "2026-07-17T17:23:41Z"
        },
        {
          "id": "goals",
          "action": "substrate.goals",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-17T17:23:41Z",
          "output": {
            "status": "disabled",
            "created": 0,
            "observed": 0,
            "results": []
          },
          "output_hash": "cdfd4de44a28140e686159f34f7b47975954c67e1d1efcef666e985acb136ed8",
          "completed_at": "2026-07-17T17:23:41Z"
        },
        {
          "id": "staleness",
          "action": "staleness.audit",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-17T17:23:41Z",
          "output": {
            "status": "ok",
            "repo_root": "D:\\Projects\\prd-plugin",
            "counts": {
              "stale": 0
            },
            "stale": []
          },
          "output_hash": "1e81cb0ffd0a4d04626920a203b38d2d23a264cd43e807a85d375d69cae8a658",
          "completed_at": "2026-07-17T17:23:41Z"
        },
        {
          "id": "reflections",
          "action": "reflection.list",
          "status": "completed",
          "resolved_input_hash": "0172e841ab4c13b3a4061f073f9d68a716ec87a8a5d52fde41823385e0582573",
          "started_at": "2026-07-17T17:23:41Z",
          "output": {
            "enabled": false,
            "on_stop": true,
            "max_questions_per_stop": 5,
            "categories": [
              {
                "id": "behaviour_quality",
                "name": "Behaviour quality",
                "enabled": true,
                "question_count": 3
              },
              {
                "id": "harness_friction",
                "name": "Harness friction",
                "enabled": true,
                "question_count": 2
              }
            ],
            "questions": [
              {
                "id": "RFQ-001",
                "text": "Based on the work you just carried out, would you classify your behaviour as good? Answer yes or no and cite observable evidence.",
                "enabled": true,
                "category_id": "behaviour_quality",
                "category_name": "Behaviour quality",
                "effective_enabled": false
              },
              {
                "id": "RFQ-002",
                "text": "If you answered no, what could you do differently to correct your behaviour?",
                "enabled": true,
                "category_id": "behaviour_quality",
                "category_name": "Behaviour quality",
                "effective_enabled": false
              },
              {
                "id": "RFQ-003",
                "text": "Would another attempt using the identified good behaviours materially improve the outcome? Answer yes or no and state the next corrective action if yes.",
                "enabled": true,
                "category_id": "behaviour_quality",
                "category_name": "Behaviour quality",
                "effective_enabled": false
              },
              {
                "id": "RFQ-004",
                "text": "What harness friction points made this work more difficult?",
                "enabled": true,
                "category_id": "harness_friction",
                "category_name": "Harness friction",
                "effective_enabled": false
              },
              {
                "id": "RFQ-005",
                "text": "What up to three changes would most improve friction in the harness?",
                "enabled": true,
                "category_id": "harness_friction",
                "category_name": "Harness friction",
                "effective_enabled": false
              }
            ]
          },
          "output_hash": "c1b6b635c0bab21120657277f14ef6f839909875f307a3745fa48aee2bd6e449",
          "completed_at": "2026-07-17T17:23:41Z"
        },
        {
          "id": "bundle",
          "action": "reporting.bundle",
          "status": "completed",
          "resolved_input_hash": "aed8ebb688dc3c085dd978d7c4120572173c3cb87e75919e4a937dcca6ef9457",
          "started_at": "2026-07-17T17:23:41Z",
          "output": {
            "contract_version": 1,
            "task": "session_summary",
            "repo": "prd-plugin",
            "policy": {
              "enabled": false,
              "executor": "ai-collab",
              "contract_version": 1,
              "profile": "fast-capable",
              "tasks": [
                "report_summary",
                "session_summary",
                "wiki_synthesis",
                "triage_draft"
              ],
              "fallback": "main",
              "require_source_refs": true,
              "max_input_tokens": 12000,
              "max_output_tokens": 1500,
              "timeout_seconds": 30
            },
            "facts": {
              "requests_by_status": {
                "deferred": 1,
                "implemented": 91,
                "in_review": 1,
                "proposed": 6,
                "rejected": 1
              },
              "active_requests": [
                {
                  "id": "REQ-072",
                  "status": "proposed",
                  "severity": "low",
                  "summary": "opencode run-until-done: session.idle is a non-blocking notification, so the stop guard can't force continuation on opencode (currently degrades to a printed reminder, 0.5.95). Investigate whether opencode exposes any vetoable/continuation mechanism (a different event, a permission hook, or a 'continue' API) to enforce run-until-done, or accept the reminder as the permanent ceiling. Low priority — user rarely uses opencode."
                },
                {
                  "id": "REQ-104",
                  "status": "in_review",
                  "severity": "high",
                  "summary": "Ordinary-workspace chat has no path into the planning pipeline: owner-approved collaboration decisions land in scratchpads, room agents cannot allocate REQ/PRD/TRK ids past the parallel-worker mutation boundary, and goal-administrator grants detach when participant identity changes on runner restart"
                },
                {
                  "id": "REQ-107",
                  "status": "proposed",
                  "severity": "high",
                  "summary": "Adopt the UTCP-first tool architecture (user-directed): one UTCP manual is the source of truth for ALL prd-plugin tools including mutations, the MCP surface is generated by the official @utcp/mcp-bridge, and the 2,323-line hand-written MCP server is retired as a hand-maintained surface"
                },
                {
                  "id": "REQ-113",
                  "status": "proposed",
                  "severity": "low",
                  "summary": "Request-thread close has no validated tool: finished threads stay 'unresolved' in message_check forever unless state is hand-flipped; add a thread-close capability to the UTCP-first tool catalog (REQ-107), not as a new hand-written MCP handler"
                },
                {
                  "id": "REQ-116",
                  "status": "proposed",
                  "severity": "high",
                  "summary": "PRD Plugin 0.16.1 installs a session.stop workflow that imports staleness_audit but omits staleness_audit.py from downstream delivery, so Codex Stop workflows fail."
                },
                {
                  "id": "REQ-117",
                  "status": "proposed",
                  "severity": "medium",
                  "summary": "UTCP/MCP tool surfaces are split inconsistently instead of exposing one canonical tool surface"
                },
                {
                  "id": "REQ-118",
                  "status": "proposed",
                  "severity": "high",
                  "summary": "Complete the upstream-request acknowledgement and reconciliation loop so imported or terminal hub requests update their downstream source record and no longer remain as stranded-outbox warnings; explicit local requests must never be auto-classified as unsubmitted plugin requests."
                }
              ],
              "active_tracking": [],
              "open_health": [],
              "evidence_count": 130,
              "decision_count": 10
            },
            "findings": [],
            "source_refs": [
              ".prd_plugin/config.json",
              ".prd_plugin/state/decisions.json",
              ".prd_plugin/state/evidence.json",
              ".prd_plugin/state/health.json",
              ".prd_plugin/state/requests.json",
              ".prd_plugin/state/tracking.json",
              "REQ-072",
              "REQ-104",
              "REQ-107",
              "REQ-113",
              "REQ-116",
              "REQ-117",
              "REQ-118"
            ],
            "constraints": {
              "max_input_tokens": 12000,
              "max_output_tokens": 1500,
              "timeout_seconds": 30,
              "require_source_refs": true,
              "no_project_state_writes": true,
              "no_secrets_or_local_session_content": true
            }
          },
          "output_hash": "64b7bf208401620f13c524f2d330f2fe8c4a2a99b6e3889b87c4a4094602f5f1",
          "completed_at": "2026-07-17T17:23:41Z"
        },
        {
          "id": "delegated",
          "action": "reporting.delegate",
          "status": "completed",
          "resolved_input_hash": "7230e6297c3c861eadebbf767293b062f4f55cb3094e1f6af215bc4d4019f5b5",
          "started_at": "2026-07-17T17:23:41Z",
          "output": {
            "status": "fallback",
            "action": "main",
            "reason": "disabled"
          },
          "output_hash": "e6085059f197def80ae95add1f328418107bea5436c9bd002530043646a3a95c",
          "completed_at": "2026-07-17T17:23:41Z"
        }
      ],
      "completed_at": "2026-07-17T17:23:41Z"
    },
    {
      "id": "WFR-333",
      "schema_version": "1.0",
      "workflow_id": "session.start",
      "workflow_version": 1,
      "definition_hash": "d0f98da02571e6dd27fec4aed92d3c82af9db75f8b90b997bf665635c7b7f6ca",
      "plan_hash": "b5072615ca3b7e9a3bd85d50d1f069d99ef2a9816b32c03a370745ed7a205536",
      "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
      "inputs": {},
      "idempotency_key": "hook:SessionStart:d64fedc4-9bbd-49c9-a9c0-fdb324b1778e",
      "status": "completed",
      "attempt": 1,
      "created_at": "2026-07-17T22:09:30Z",
      "updated_at": "2026-07-17T22:09:32Z",
      "receipts": [
        {
          "step_id": "config",
          "action": "config.audit",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "e8f5630220d3e8b26c18a52fd81e19f1b570f8f33a5daaff9c38eb8a62693c22",
          "completed_at": "2026-07-17T22:09:30Z"
        },
        {
          "step_id": "services",
          "action": "services.audit",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "13dcc58bd528f3efa3e6e0fa0853a6eedc376f1f3685fbd4869cbb2b60382ee3",
          "completed_at": "2026-07-17T22:09:30Z"
        },
        {
          "step_id": "state",
          "action": "state.consistency",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "5a1c6e5246defb1b6b6b90ff734db95bece2886b408ab112ed9b8e67222d5568",
          "completed_at": "2026-07-17T22:09:31Z"
        },
        {
          "step_id": "status",
          "action": "state.query",
          "input_hash": "a15231a2142a2a9a85355a8b9cbbccffe01a9c9c2c2fd8c2bc2987cdc481564a",
          "output_hash": "a22314718980c1164f6f79c603e6f8b96f5a4ff6875e863e7276e5a00c9ee317",
          "completed_at": "2026-07-17T22:09:32Z"
        },
        {
          "step_id": "substrate",
          "action": "substrate.preflight",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "a6df426290b4549a59eecaa0519ead9bcc50b7fcb25bd2185ff6047960f19ccb",
          "completed_at": "2026-07-17T22:09:32Z"
        },
        {
          "step_id": "notices",
          "action": "substrate.notices",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "38b904a1cf83df048360fb2480571b749fd98d57e11f1afdffb5a74a78166fea",
          "completed_at": "2026-07-17T22:09:32Z"
        },
        {
          "step_id": "goals",
          "action": "substrate.goals",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "cdfd4de44a28140e686159f34f7b47975954c67e1d1efcef666e985acb136ed8",
          "completed_at": "2026-07-17T22:09:32Z"
        }
      ],
      "steps": [
        {
          "id": "config",
          "action": "config.audit",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-17T22:09:30Z",
          "output": {
            "status": "ok",
            "summary": {
              "settings": 196,
              "mutable": 187,
              "read_only_or_managed": 9,
              "unclassified": 0,
              "unknown": 0,
              "invalid": 0,
              "missing_using_defaults": 0
            },
            "unclassified_keys": [],
            "unknown_keys": [],
            "invalid_values": [],
            "missing_using_defaults": []
          },
          "output_hash": "e8f5630220d3e8b26c18a52fd81e19f1b570f8f33a5daaff9c38eb8a62693c22",
          "completed_at": "2026-07-17T22:09:30Z"
        },
        {
          "id": "services",
          "action": "services.audit",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-17T22:09:30Z",
          "output": {
            "status": "ok",
            "summary": {
              "critical": 0,
              "high": 0,
              "medium": 0,
              "low": 0
            },
            "findings": []
          },
          "output_hash": "13dcc58bd528f3efa3e6e0fa0853a6eedc376f1f3685fbd4869cbb2b60382ee3",
          "completed_at": "2026-07-17T22:09:30Z"
        },
        {
          "id": "state",
          "action": "state.consistency",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-17T22:09:30Z",
          "output": {
            "status": "ok",
            "repo_root": "D:\\Projects\\prd-plugin",
            "summary": {
              "errors": 0,
              "warnings": 0,
              "infos": 0
            },
            "findings": []
          },
          "output_hash": "5a1c6e5246defb1b6b6b90ff734db95bece2886b408ab112ed9b8e67222d5568",
          "completed_at": "2026-07-17T22:09:31Z"
        },
        {
          "id": "status",
          "action": "state.query",
          "status": "completed",
          "resolved_input_hash": "a15231a2142a2a9a85355a8b9cbbccffe01a9c9c2c2fd8c2bc2987cdc481564a",
          "started_at": "2026-07-17T22:09:32Z",
          "output": {
            "repo_root": "D:\\Projects\\prd-plugin",
            "autonomy_level": "autonomous",
            "requests_by_status": {
              "deferred": 1,
              "implemented": 91,
              "in_review": 1,
              "proposed": 6,
              "rejected": 1
            },
            "active_tracking": [],
            "tracking_branches": [],
            "tracking_branch_counts": {},
            "tracking_branch_errors": [],
            "open_health": [],
            "stale_count": 0,
            "skill_usage": {
              "project-decision-policy": 1,
              "project-request-intake": 1,
              "project-test-driven-implementation": 1,
              "project-verification-before-completion": 1,
              "project-llm-wiki": 1
            },
            "wiki_backfill_pending": false,
            "version_update": null
          },
          "output_hash": "a22314718980c1164f6f79c603e6f8b96f5a4ff6875e863e7276e5a00c9ee317",
          "completed_at": "2026-07-17T22:09:32Z"
        },
        {
          "id": "substrate",
          "action": "substrate.preflight",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-17T22:09:32Z",
          "output": {
            "status": "disabled",
            "services": {
              "status": "ok",
              "summary": {
                "critical": 0,
                "high": 0,
                "medium": 0,
                "low": 0
              },
              "findings": []
            },
            "policy": {
              "configured": {
                "enabled": false,
                "mode": "off",
                "capabilities": [
                  "records",
                  "graph",
                  "events"
                ],
                "contract_version": 2,
                "require_source_refs": true,
                "endpoint": "http://127.0.0.1:47124",
                "manual_url": "http://127.0.0.1:47124/utcp.json",
                "knowledge_browse_url": "http://127.0.0.1:5276",
                "auth_env": "AI_COLLAB_API_KEY",
                "timeout_seconds": 5,
                "max_result_bytes": 1048576,
                "cache_ttl_seconds": 60,
                "fallback": "local",
                "automation": {
                  "discovery_on_session_start": true,
                  "knowledge_recall": true,
                  "memory_recall": true,
                  "context_enrichment": true,
                  "notices_on_session_start": false,
                  "goals_sync": false,
                  "telemetry_on_maintenance": false,
                  "reporting_dispatch": true,
                  "judgment_dispatch": true,
                  "verification_execution": true
                }
              },
              "active": false,
              "effective_mode": "off",
              "effective_capabilities": []
            }
          },
          "output_hash": "a6df426290b4549a59eecaa0519ead9bcc50b7fcb25bd2185ff6047960f19ccb",
          "completed_at": "2026-07-17T22:09:32Z"
        },
        {
          "id": "notices",
          "action": "substrate.notices",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-17T22:09:32Z",
          "output": {
            "status": "disabled"
          },
          "output_hash": "38b904a1cf83df048360fb2480571b749fd98d57e11f1afdffb5a74a78166fea",
          "completed_at": "2026-07-17T22:09:32Z"
        },
        {
          "id": "goals",
          "action": "substrate.goals",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-17T22:09:32Z",
          "output": {
            "status": "disabled",
            "created": 0,
            "observed": 0,
            "results": []
          },
          "output_hash": "cdfd4de44a28140e686159f34f7b47975954c67e1d1efcef666e985acb136ed8",
          "completed_at": "2026-07-17T22:09:32Z"
        }
      ],
      "completed_at": "2026-07-17T22:09:32Z"
    },
    {
      "id": "WFR-334",
      "schema_version": "1.0",
      "workflow_id": "session.start",
      "workflow_version": 1,
      "definition_hash": "d0f98da02571e6dd27fec4aed92d3c82af9db75f8b90b997bf665635c7b7f6ca",
      "plan_hash": "b5072615ca3b7e9a3bd85d50d1f069d99ef2a9816b32c03a370745ed7a205536",
      "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
      "inputs": {},
      "idempotency_key": "hook:SessionStart:be615ca0-78c5-46e7-a961-0c339b1e3227",
      "status": "completed",
      "attempt": 1,
      "created_at": "2026-07-17T23:55:59Z",
      "updated_at": "2026-07-17T23:56:04Z",
      "receipts": [
        {
          "step_id": "config",
          "action": "config.audit",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "e8f5630220d3e8b26c18a52fd81e19f1b570f8f33a5daaff9c38eb8a62693c22",
          "completed_at": "2026-07-17T23:56:00Z"
        },
        {
          "step_id": "services",
          "action": "services.audit",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "13dcc58bd528f3efa3e6e0fa0853a6eedc376f1f3685fbd4869cbb2b60382ee3",
          "completed_at": "2026-07-17T23:56:00Z"
        },
        {
          "step_id": "state",
          "action": "state.consistency",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "5a1c6e5246defb1b6b6b90ff734db95bece2886b408ab112ed9b8e67222d5568",
          "completed_at": "2026-07-17T23:56:03Z"
        },
        {
          "step_id": "status",
          "action": "state.query",
          "input_hash": "a15231a2142a2a9a85355a8b9cbbccffe01a9c9c2c2fd8c2bc2987cdc481564a",
          "output_hash": "a22314718980c1164f6f79c603e6f8b96f5a4ff6875e863e7276e5a00c9ee317",
          "completed_at": "2026-07-17T23:56:04Z"
        },
        {
          "step_id": "substrate",
          "action": "substrate.preflight",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "a6df426290b4549a59eecaa0519ead9bcc50b7fcb25bd2185ff6047960f19ccb",
          "completed_at": "2026-07-17T23:56:04Z"
        },
        {
          "step_id": "notices",
          "action": "substrate.notices",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "38b904a1cf83df048360fb2480571b749fd98d57e11f1afdffb5a74a78166fea",
          "completed_at": "2026-07-17T23:56:04Z"
        },
        {
          "step_id": "goals",
          "action": "substrate.goals",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "cdfd4de44a28140e686159f34f7b47975954c67e1d1efcef666e985acb136ed8",
          "completed_at": "2026-07-17T23:56:04Z"
        }
      ],
      "steps": [
        {
          "id": "config",
          "action": "config.audit",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-17T23:56:00Z",
          "output": {
            "status": "ok",
            "summary": {
              "settings": 196,
              "mutable": 187,
              "read_only_or_managed": 9,
              "unclassified": 0,
              "unknown": 0,
              "invalid": 0,
              "missing_using_defaults": 0
            },
            "unclassified_keys": [],
            "unknown_keys": [],
            "invalid_values": [],
            "missing_using_defaults": []
          },
          "output_hash": "e8f5630220d3e8b26c18a52fd81e19f1b570f8f33a5daaff9c38eb8a62693c22",
          "completed_at": "2026-07-17T23:56:00Z"
        },
        {
          "id": "services",
          "action": "services.audit",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-17T23:56:00Z",
          "output": {
            "status": "ok",
            "summary": {
              "critical": 0,
              "high": 0,
              "medium": 0,
              "low": 0
            },
            "findings": []
          },
          "output_hash": "13dcc58bd528f3efa3e6e0fa0853a6eedc376f1f3685fbd4869cbb2b60382ee3",
          "completed_at": "2026-07-17T23:56:00Z"
        },
        {
          "id": "state",
          "action": "state.consistency",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-17T23:56:00Z",
          "output": {
            "status": "ok",
            "repo_root": "D:\\Projects\\prd-plugin",
            "summary": {
              "errors": 0,
              "warnings": 0,
              "infos": 0
            },
            "findings": []
          },
          "output_hash": "5a1c6e5246defb1b6b6b90ff734db95bece2886b408ab112ed9b8e67222d5568",
          "completed_at": "2026-07-17T23:56:03Z"
        },
        {
          "id": "status",
          "action": "state.query",
          "status": "completed",
          "resolved_input_hash": "a15231a2142a2a9a85355a8b9cbbccffe01a9c9c2c2fd8c2bc2987cdc481564a",
          "started_at": "2026-07-17T23:56:03Z",
          "output": {
            "repo_root": "D:\\Projects\\prd-plugin",
            "autonomy_level": "autonomous",
            "requests_by_status": {
              "deferred": 1,
              "implemented": 91,
              "in_review": 1,
              "proposed": 6,
              "rejected": 1
            },
            "active_tracking": [],
            "tracking_branches": [],
            "tracking_branch_counts": {},
            "tracking_branch_errors": [],
            "open_health": [],
            "stale_count": 0,
            "skill_usage": {
              "project-decision-policy": 1,
              "project-request-intake": 1,
              "project-test-driven-implementation": 1,
              "project-verification-before-completion": 1,
              "project-llm-wiki": 1
            },
            "wiki_backfill_pending": false,
            "version_update": null
          },
          "output_hash": "a22314718980c1164f6f79c603e6f8b96f5a4ff6875e863e7276e5a00c9ee317",
          "completed_at": "2026-07-17T23:56:04Z"
        },
        {
          "id": "substrate",
          "action": "substrate.preflight",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-17T23:56:04Z",
          "output": {
            "status": "disabled",
            "services": {
              "status": "ok",
              "summary": {
                "critical": 0,
                "high": 0,
                "medium": 0,
                "low": 0
              },
              "findings": []
            },
            "policy": {
              "configured": {
                "enabled": false,
                "mode": "off",
                "capabilities": [
                  "records",
                  "graph",
                  "events"
                ],
                "contract_version": 2,
                "require_source_refs": true,
                "endpoint": "http://127.0.0.1:47124",
                "manual_url": "http://127.0.0.1:47124/utcp.json",
                "knowledge_browse_url": "http://127.0.0.1:5276",
                "auth_env": "AI_COLLAB_API_KEY",
                "timeout_seconds": 5,
                "max_result_bytes": 1048576,
                "cache_ttl_seconds": 60,
                "fallback": "local",
                "automation": {
                  "discovery_on_session_start": true,
                  "knowledge_recall": true,
                  "memory_recall": true,
                  "context_enrichment": true,
                  "notices_on_session_start": false,
                  "goals_sync": false,
                  "telemetry_on_maintenance": false,
                  "reporting_dispatch": true,
                  "judgment_dispatch": true,
                  "verification_execution": true
                }
              },
              "active": false,
              "effective_mode": "off",
              "effective_capabilities": []
            }
          },
          "output_hash": "a6df426290b4549a59eecaa0519ead9bcc50b7fcb25bd2185ff6047960f19ccb",
          "completed_at": "2026-07-17T23:56:04Z"
        },
        {
          "id": "notices",
          "action": "substrate.notices",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-17T23:56:04Z",
          "output": {
            "status": "disabled"
          },
          "output_hash": "38b904a1cf83df048360fb2480571b749fd98d57e11f1afdffb5a74a78166fea",
          "completed_at": "2026-07-17T23:56:04Z"
        },
        {
          "id": "goals",
          "action": "substrate.goals",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-17T23:56:04Z",
          "output": {
            "status": "disabled",
            "created": 0,
            "observed": 0,
            "results": []
          },
          "output_hash": "cdfd4de44a28140e686159f34f7b47975954c67e1d1efcef666e985acb136ed8",
          "completed_at": "2026-07-17T23:56:04Z"
        }
      ],
      "completed_at": "2026-07-17T23:56:04Z"
    },
    {
      "id": "WFR-335",
      "schema_version": "1.0",
      "workflow_id": "session.start",
      "workflow_version": 1,
      "definition_hash": "d0f98da02571e6dd27fec4aed92d3c82af9db75f8b90b997bf665635c7b7f6ca",
      "plan_hash": "b5072615ca3b7e9a3bd85d50d1f069d99ef2a9816b32c03a370745ed7a205536",
      "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
      "inputs": {},
      "idempotency_key": "hook:SessionStart:99a28c5e-7f6f-41f4-b335-36e4eff13ab4",
      "status": "completed",
      "attempt": 1,
      "created_at": "2026-07-18T00:52:11Z",
      "updated_at": "2026-07-18T00:52:15Z",
      "receipts": [
        {
          "step_id": "config",
          "action": "config.audit",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "e8f5630220d3e8b26c18a52fd81e19f1b570f8f33a5daaff9c38eb8a62693c22",
          "completed_at": "2026-07-18T00:52:12Z"
        },
        {
          "step_id": "services",
          "action": "services.audit",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "13dcc58bd528f3efa3e6e0fa0853a6eedc376f1f3685fbd4869cbb2b60382ee3",
          "completed_at": "2026-07-18T00:52:12Z"
        },
        {
          "step_id": "state",
          "action": "state.consistency",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "5a1c6e5246defb1b6b6b90ff734db95bece2886b408ab112ed9b8e67222d5568",
          "completed_at": "2026-07-18T00:52:13Z"
        },
        {
          "step_id": "status",
          "action": "state.query",
          "input_hash": "a15231a2142a2a9a85355a8b9cbbccffe01a9c9c2c2fd8c2bc2987cdc481564a",
          "output_hash": "a22314718980c1164f6f79c603e6f8b96f5a4ff6875e863e7276e5a00c9ee317",
          "completed_at": "2026-07-18T00:52:14Z"
        },
        {
          "step_id": "substrate",
          "action": "substrate.preflight",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "a6df426290b4549a59eecaa0519ead9bcc50b7fcb25bd2185ff6047960f19ccb",
          "completed_at": "2026-07-18T00:52:14Z"
        },
        {
          "step_id": "notices",
          "action": "substrate.notices",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "38b904a1cf83df048360fb2480571b749fd98d57e11f1afdffb5a74a78166fea",
          "completed_at": "2026-07-18T00:52:14Z"
        },
        {
          "step_id": "goals",
          "action": "substrate.goals",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "cdfd4de44a28140e686159f34f7b47975954c67e1d1efcef666e985acb136ed8",
          "completed_at": "2026-07-18T00:52:15Z"
        }
      ],
      "steps": [
        {
          "id": "config",
          "action": "config.audit",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-18T00:52:12Z",
          "output": {
            "status": "ok",
            "summary": {
              "settings": 196,
              "mutable": 187,
              "read_only_or_managed": 9,
              "unclassified": 0,
              "unknown": 0,
              "invalid": 0,
              "missing_using_defaults": 0
            },
            "unclassified_keys": [],
            "unknown_keys": [],
            "invalid_values": [],
            "missing_using_defaults": []
          },
          "output_hash": "e8f5630220d3e8b26c18a52fd81e19f1b570f8f33a5daaff9c38eb8a62693c22",
          "completed_at": "2026-07-18T00:52:12Z"
        },
        {
          "id": "services",
          "action": "services.audit",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-18T00:52:12Z",
          "output": {
            "status": "ok",
            "summary": {
              "critical": 0,
              "high": 0,
              "medium": 0,
              "low": 0
            },
            "findings": []
          },
          "output_hash": "13dcc58bd528f3efa3e6e0fa0853a6eedc376f1f3685fbd4869cbb2b60382ee3",
          "completed_at": "2026-07-18T00:52:12Z"
        },
        {
          "id": "state",
          "action": "state.consistency",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-18T00:52:12Z",
          "output": {
            "status": "ok",
            "repo_root": "D:\\Projects\\prd-plugin",
            "summary": {
              "errors": 0,
              "warnings": 0,
              "infos": 0
            },
            "findings": []
          },
          "output_hash": "5a1c6e5246defb1b6b6b90ff734db95bece2886b408ab112ed9b8e67222d5568",
          "completed_at": "2026-07-18T00:52:13Z"
        },
        {
          "id": "status",
          "action": "state.query",
          "status": "completed",
          "resolved_input_hash": "a15231a2142a2a9a85355a8b9cbbccffe01a9c9c2c2fd8c2bc2987cdc481564a",
          "started_at": "2026-07-18T00:52:14Z",
          "output": {
            "repo_root": "D:\\Projects\\prd-plugin",
            "autonomy_level": "autonomous",
            "requests_by_status": {
              "deferred": 1,
              "implemented": 91,
              "in_review": 1,
              "proposed": 6,
              "rejected": 1
            },
            "active_tracking": [],
            "tracking_branches": [],
            "tracking_branch_counts": {},
            "tracking_branch_errors": [],
            "open_health": [],
            "stale_count": 0,
            "skill_usage": {
              "project-decision-policy": 1,
              "project-request-intake": 1,
              "project-test-driven-implementation": 1,
              "project-verification-before-completion": 1,
              "project-llm-wiki": 1
            },
            "wiki_backfill_pending": false,
            "version_update": null
          },
          "output_hash": "a22314718980c1164f6f79c603e6f8b96f5a4ff6875e863e7276e5a00c9ee317",
          "completed_at": "2026-07-18T00:52:14Z"
        },
        {
          "id": "substrate",
          "action": "substrate.preflight",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-18T00:52:14Z",
          "output": {
            "status": "disabled",
            "services": {
              "status": "ok",
              "summary": {
                "critical": 0,
                "high": 0,
                "medium": 0,
                "low": 0
              },
              "findings": []
            },
            "policy": {
              "configured": {
                "enabled": false,
                "mode": "off",
                "capabilities": [
                  "records",
                  "graph",
                  "events"
                ],
                "contract_version": 2,
                "require_source_refs": true,
                "endpoint": "http://127.0.0.1:47124",
                "manual_url": "http://127.0.0.1:47124/utcp.json",
                "knowledge_browse_url": "http://127.0.0.1:5276",
                "auth_env": "AI_COLLAB_API_KEY",
                "timeout_seconds": 5,
                "max_result_bytes": 1048576,
                "cache_ttl_seconds": 60,
                "fallback": "local",
                "automation": {
                  "discovery_on_session_start": true,
                  "knowledge_recall": true,
                  "memory_recall": true,
                  "context_enrichment": true,
                  "notices_on_session_start": false,
                  "goals_sync": false,
                  "telemetry_on_maintenance": false,
                  "reporting_dispatch": true,
                  "judgment_dispatch": true,
                  "verification_execution": true
                }
              },
              "active": false,
              "effective_mode": "off",
              "effective_capabilities": []
            }
          },
          "output_hash": "a6df426290b4549a59eecaa0519ead9bcc50b7fcb25bd2185ff6047960f19ccb",
          "completed_at": "2026-07-18T00:52:14Z"
        },
        {
          "id": "notices",
          "action": "substrate.notices",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-18T00:52:14Z",
          "output": {
            "status": "disabled"
          },
          "output_hash": "38b904a1cf83df048360fb2480571b749fd98d57e11f1afdffb5a74a78166fea",
          "completed_at": "2026-07-18T00:52:14Z"
        },
        {
          "id": "goals",
          "action": "substrate.goals",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-18T00:52:14Z",
          "output": {
            "status": "disabled",
            "created": 0,
            "observed": 0,
            "results": []
          },
          "output_hash": "cdfd4de44a28140e686159f34f7b47975954c67e1d1efcef666e985acb136ed8",
          "completed_at": "2026-07-18T00:52:15Z"
        }
      ],
      "completed_at": "2026-07-18T00:52:15Z"
    },
    {
      "id": "WFR-336",
      "schema_version": "1.0",
      "workflow_id": "session.start",
      "workflow_version": 1,
      "definition_hash": "d0f98da02571e6dd27fec4aed92d3c82af9db75f8b90b997bf665635c7b7f6ca",
      "plan_hash": "b5072615ca3b7e9a3bd85d50d1f069d99ef2a9816b32c03a370745ed7a205536",
      "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
      "inputs": {},
      "idempotency_key": "hook:SessionStart:b3e1ab1f-aa91-441d-9aba-1fca7d7656a2",
      "status": "completed",
      "attempt": 1,
      "created_at": "2026-07-18T02:22:50Z",
      "updated_at": "2026-07-18T02:22:55Z",
      "receipts": [
        {
          "step_id": "config",
          "action": "config.audit",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "e8f5630220d3e8b26c18a52fd81e19f1b570f8f33a5daaff9c38eb8a62693c22",
          "completed_at": "2026-07-18T02:22:50Z"
        },
        {
          "step_id": "services",
          "action": "services.audit",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "13dcc58bd528f3efa3e6e0fa0853a6eedc376f1f3685fbd4869cbb2b60382ee3",
          "completed_at": "2026-07-18T02:22:50Z"
        },
        {
          "step_id": "state",
          "action": "state.consistency",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "5a1c6e5246defb1b6b6b90ff734db95bece2886b408ab112ed9b8e67222d5568",
          "completed_at": "2026-07-18T02:22:54Z"
        },
        {
          "step_id": "status",
          "action": "state.query",
          "input_hash": "a15231a2142a2a9a85355a8b9cbbccffe01a9c9c2c2fd8c2bc2987cdc481564a",
          "output_hash": "9c68fedc2cda53480f7e786c4385e43a5c449e62f478a2eba9332b16a2b3135e",
          "completed_at": "2026-07-18T02:22:54Z"
        },
        {
          "step_id": "substrate",
          "action": "substrate.preflight",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "a6df426290b4549a59eecaa0519ead9bcc50b7fcb25bd2185ff6047960f19ccb",
          "completed_at": "2026-07-18T02:22:54Z"
        },
        {
          "step_id": "notices",
          "action": "substrate.notices",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "38b904a1cf83df048360fb2480571b749fd98d57e11f1afdffb5a74a78166fea",
          "completed_at": "2026-07-18T02:22:54Z"
        },
        {
          "step_id": "goals",
          "action": "substrate.goals",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "cdfd4de44a28140e686159f34f7b47975954c67e1d1efcef666e985acb136ed8",
          "completed_at": "2026-07-18T02:22:55Z"
        }
      ],
      "steps": [
        {
          "id": "config",
          "action": "config.audit",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-18T02:22:50Z",
          "output": {
            "status": "ok",
            "summary": {
              "settings": 196,
              "mutable": 187,
              "read_only_or_managed": 9,
              "unclassified": 0,
              "unknown": 0,
              "invalid": 0,
              "missing_using_defaults": 0
            },
            "unclassified_keys": [],
            "unknown_keys": [],
            "invalid_values": [],
            "missing_using_defaults": []
          },
          "output_hash": "e8f5630220d3e8b26c18a52fd81e19f1b570f8f33a5daaff9c38eb8a62693c22",
          "completed_at": "2026-07-18T02:22:50Z"
        },
        {
          "id": "services",
          "action": "services.audit",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-18T02:22:50Z",
          "output": {
            "status": "ok",
            "summary": {
              "critical": 0,
              "high": 0,
              "medium": 0,
              "low": 0
            },
            "findings": []
          },
          "output_hash": "13dcc58bd528f3efa3e6e0fa0853a6eedc376f1f3685fbd4869cbb2b60382ee3",
          "completed_at": "2026-07-18T02:22:50Z"
        },
        {
          "id": "state",
          "action": "state.consistency",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-18T02:22:50Z",
          "output": {
            "status": "ok",
            "repo_root": "D:\\Projects\\prd-plugin",
            "summary": {
              "errors": 0,
              "warnings": 0,
              "infos": 0
            },
            "findings": []
          },
          "output_hash": "5a1c6e5246defb1b6b6b90ff734db95bece2886b408ab112ed9b8e67222d5568",
          "completed_at": "2026-07-18T02:22:54Z"
        },
        {
          "id": "status",
          "action": "state.query",
          "status": "completed",
          "resolved_input_hash": "a15231a2142a2a9a85355a8b9cbbccffe01a9c9c2c2fd8c2bc2987cdc481564a",
          "started_at": "2026-07-18T02:22:54Z",
          "output": {
            "repo_root": "D:\\Projects\\prd-plugin",
            "autonomy_level": "autonomous",
            "requests_by_status": {
              "deferred": 1,
              "implemented": 92,
              "in_review": 1,
              "proposed": 6,
              "rejected": 1
            },
            "active_tracking": [],
            "tracking_branches": [],
            "tracking_branch_counts": {},
            "tracking_branch_errors": [],
            "open_health": [],
            "stale_count": 0,
            "skill_usage": {
              "project-decision-policy": 1,
              "project-request-intake": 1,
              "project-test-driven-implementation": 1,
              "project-verification-before-completion": 1,
              "project-llm-wiki": 1
            },
            "wiki_backfill_pending": false,
            "version_update": null
          },
          "output_hash": "9c68fedc2cda53480f7e786c4385e43a5c449e62f478a2eba9332b16a2b3135e",
          "completed_at": "2026-07-18T02:22:54Z"
        },
        {
          "id": "substrate",
          "action": "substrate.preflight",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-18T02:22:54Z",
          "output": {
            "status": "disabled",
            "services": {
              "status": "ok",
              "summary": {
                "critical": 0,
                "high": 0,
                "medium": 0,
                "low": 0
              },
              "findings": []
            },
            "policy": {
              "configured": {
                "enabled": false,
                "mode": "off",
                "capabilities": [
                  "records",
                  "graph",
                  "events"
                ],
                "contract_version": 2,
                "require_source_refs": true,
                "endpoint": "http://127.0.0.1:47124",
                "manual_url": "http://127.0.0.1:47124/utcp.json",
                "knowledge_browse_url": "http://127.0.0.1:5276",
                "auth_env": "AI_COLLAB_API_KEY",
                "timeout_seconds": 5,
                "max_result_bytes": 1048576,
                "cache_ttl_seconds": 60,
                "fallback": "local",
                "automation": {
                  "discovery_on_session_start": true,
                  "knowledge_recall": true,
                  "memory_recall": true,
                  "context_enrichment": true,
                  "notices_on_session_start": false,
                  "goals_sync": false,
                  "telemetry_on_maintenance": false,
                  "reporting_dispatch": true,
                  "judgment_dispatch": true,
                  "verification_execution": true
                }
              },
              "active": false,
              "effective_mode": "off",
              "effective_capabilities": []
            }
          },
          "output_hash": "a6df426290b4549a59eecaa0519ead9bcc50b7fcb25bd2185ff6047960f19ccb",
          "completed_at": "2026-07-18T02:22:54Z"
        },
        {
          "id": "notices",
          "action": "substrate.notices",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-18T02:22:54Z",
          "output": {
            "status": "disabled"
          },
          "output_hash": "38b904a1cf83df048360fb2480571b749fd98d57e11f1afdffb5a74a78166fea",
          "completed_at": "2026-07-18T02:22:54Z"
        },
        {
          "id": "goals",
          "action": "substrate.goals",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-18T02:22:55Z",
          "output": {
            "status": "disabled",
            "created": 0,
            "observed": 0,
            "results": []
          },
          "output_hash": "cdfd4de44a28140e686159f34f7b47975954c67e1d1efcef666e985acb136ed8",
          "completed_at": "2026-07-18T02:22:55Z"
        }
      ],
      "completed_at": "2026-07-18T02:22:55Z"
    },
    {
      "id": "WFR-337",
      "schema_version": "1.0",
      "workflow_id": "session.start",
      "workflow_version": 1,
      "definition_hash": "d0f98da02571e6dd27fec4aed92d3c82af9db75f8b90b997bf665635c7b7f6ca",
      "plan_hash": "b5072615ca3b7e9a3bd85d50d1f069d99ef2a9816b32c03a370745ed7a205536",
      "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
      "inputs": {},
      "idempotency_key": "hook:SessionStart:aee21aa5-e617-489f-8b37-4bcd390859b4",
      "status": "completed",
      "attempt": 1,
      "created_at": "2026-07-18T09:29:47Z",
      "updated_at": "2026-07-18T09:29:52Z",
      "receipts": [
        {
          "step_id": "config",
          "action": "config.audit",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "e8f5630220d3e8b26c18a52fd81e19f1b570f8f33a5daaff9c38eb8a62693c22",
          "completed_at": "2026-07-18T09:29:48Z"
        },
        {
          "step_id": "services",
          "action": "services.audit",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "13dcc58bd528f3efa3e6e0fa0853a6eedc376f1f3685fbd4869cbb2b60382ee3",
          "completed_at": "2026-07-18T09:29:48Z"
        },
        {
          "step_id": "state",
          "action": "state.consistency",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "5a1c6e5246defb1b6b6b90ff734db95bece2886b408ab112ed9b8e67222d5568",
          "completed_at": "2026-07-18T09:29:51Z"
        },
        {
          "step_id": "status",
          "action": "state.query",
          "input_hash": "a15231a2142a2a9a85355a8b9cbbccffe01a9c9c2c2fd8c2bc2987cdc481564a",
          "output_hash": "9c68fedc2cda53480f7e786c4385e43a5c449e62f478a2eba9332b16a2b3135e",
          "completed_at": "2026-07-18T09:29:52Z"
        },
        {
          "step_id": "substrate",
          "action": "substrate.preflight",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "a6df426290b4549a59eecaa0519ead9bcc50b7fcb25bd2185ff6047960f19ccb",
          "completed_at": "2026-07-18T09:29:52Z"
        },
        {
          "step_id": "notices",
          "action": "substrate.notices",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "38b904a1cf83df048360fb2480571b749fd98d57e11f1afdffb5a74a78166fea",
          "completed_at": "2026-07-18T09:29:52Z"
        },
        {
          "step_id": "goals",
          "action": "substrate.goals",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "cdfd4de44a28140e686159f34f7b47975954c67e1d1efcef666e985acb136ed8",
          "completed_at": "2026-07-18T09:29:52Z"
        }
      ],
      "steps": [
        {
          "id": "config",
          "action": "config.audit",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-18T09:29:48Z",
          "output": {
            "status": "ok",
            "summary": {
              "settings": 196,
              "mutable": 187,
              "read_only_or_managed": 9,
              "unclassified": 0,
              "unknown": 0,
              "invalid": 0,
              "missing_using_defaults": 0
            },
            "unclassified_keys": [],
            "unknown_keys": [],
            "invalid_values": [],
            "missing_using_defaults": []
          },
          "output_hash": "e8f5630220d3e8b26c18a52fd81e19f1b570f8f33a5daaff9c38eb8a62693c22",
          "completed_at": "2026-07-18T09:29:48Z"
        },
        {
          "id": "services",
          "action": "services.audit",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-18T09:29:48Z",
          "output": {
            "status": "ok",
            "summary": {
              "critical": 0,
              "high": 0,
              "medium": 0,
              "low": 0
            },
            "findings": []
          },
          "output_hash": "13dcc58bd528f3efa3e6e0fa0853a6eedc376f1f3685fbd4869cbb2b60382ee3",
          "completed_at": "2026-07-18T09:29:48Z"
        },
        {
          "id": "state",
          "action": "state.consistency",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-18T09:29:48Z",
          "output": {
            "status": "ok",
            "repo_root": "D:\\Projects\\prd-plugin",
            "summary": {
              "errors": 0,
              "warnings": 0,
              "infos": 0
            },
            "findings": []
          },
          "output_hash": "5a1c6e5246defb1b6b6b90ff734db95bece2886b408ab112ed9b8e67222d5568",
          "completed_at": "2026-07-18T09:29:51Z"
        },
        {
          "id": "status",
          "action": "state.query",
          "status": "completed",
          "resolved_input_hash": "a15231a2142a2a9a85355a8b9cbbccffe01a9c9c2c2fd8c2bc2987cdc481564a",
          "started_at": "2026-07-18T09:29:51Z",
          "output": {
            "repo_root": "D:\\Projects\\prd-plugin",
            "autonomy_level": "autonomous",
            "requests_by_status": {
              "deferred": 1,
              "implemented": 92,
              "in_review": 1,
              "proposed": 6,
              "rejected": 1
            },
            "active_tracking": [],
            "tracking_branches": [],
            "tracking_branch_counts": {},
            "tracking_branch_errors": [],
            "open_health": [],
            "stale_count": 0,
            "skill_usage": {
              "project-decision-policy": 1,
              "project-request-intake": 1,
              "project-test-driven-implementation": 1,
              "project-verification-before-completion": 1,
              "project-llm-wiki": 1
            },
            "wiki_backfill_pending": false,
            "version_update": null
          },
          "output_hash": "9c68fedc2cda53480f7e786c4385e43a5c449e62f478a2eba9332b16a2b3135e",
          "completed_at": "2026-07-18T09:29:52Z"
        },
        {
          "id": "substrate",
          "action": "substrate.preflight",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-18T09:29:52Z",
          "output": {
            "status": "disabled",
            "services": {
              "status": "ok",
              "summary": {
                "critical": 0,
                "high": 0,
                "medium": 0,
                "low": 0
              },
              "findings": []
            },
            "policy": {
              "configured": {
                "enabled": false,
                "mode": "off",
                "capabilities": [
                  "records",
                  "graph",
                  "events"
                ],
                "contract_version": 2,
                "require_source_refs": true,
                "endpoint": "http://127.0.0.1:47124",
                "manual_url": "http://127.0.0.1:47124/utcp.json",
                "knowledge_browse_url": "http://127.0.0.1:5276",
                "auth_env": "AI_COLLAB_API_KEY",
                "timeout_seconds": 5,
                "max_result_bytes": 1048576,
                "cache_ttl_seconds": 60,
                "fallback": "local",
                "automation": {
                  "discovery_on_session_start": true,
                  "knowledge_recall": true,
                  "memory_recall": true,
                  "context_enrichment": true,
                  "notices_on_session_start": false,
                  "goals_sync": false,
                  "telemetry_on_maintenance": false,
                  "reporting_dispatch": true,
                  "judgment_dispatch": true,
                  "verification_execution": true
                }
              },
              "active": false,
              "effective_mode": "off",
              "effective_capabilities": []
            }
          },
          "output_hash": "a6df426290b4549a59eecaa0519ead9bcc50b7fcb25bd2185ff6047960f19ccb",
          "completed_at": "2026-07-18T09:29:52Z"
        },
        {
          "id": "notices",
          "action": "substrate.notices",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-18T09:29:52Z",
          "output": {
            "status": "disabled"
          },
          "output_hash": "38b904a1cf83df048360fb2480571b749fd98d57e11f1afdffb5a74a78166fea",
          "completed_at": "2026-07-18T09:29:52Z"
        },
        {
          "id": "goals",
          "action": "substrate.goals",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-18T09:29:52Z",
          "output": {
            "status": "disabled",
            "created": 0,
            "observed": 0,
            "results": []
          },
          "output_hash": "cdfd4de44a28140e686159f34f7b47975954c67e1d1efcef666e985acb136ed8",
          "completed_at": "2026-07-18T09:29:52Z"
        }
      ],
      "completed_at": "2026-07-18T09:29:52Z"
    },
    {
      "id": "WFR-338",
      "schema_version": "1.0",
      "workflow_id": "session.start",
      "workflow_version": 1,
      "definition_hash": "d0f98da02571e6dd27fec4aed92d3c82af9db75f8b90b997bf665635c7b7f6ca",
      "plan_hash": "b5072615ca3b7e9a3bd85d50d1f069d99ef2a9816b32c03a370745ed7a205536",
      "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
      "inputs": {},
      "idempotency_key": "hook:SessionStart:ebe71ad7-892a-41b1-b4a9-39545abbcc7b",
      "status": "completed",
      "attempt": 1,
      "created_at": "2026-07-18T10:26:00Z",
      "updated_at": "2026-07-18T10:26:03Z",
      "receipts": [
        {
          "step_id": "config",
          "action": "config.audit",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "ee3e0d0b20c1ae60964882182bf120738d03ffcfa7f440b4b701a344574f9122",
          "completed_at": "2026-07-18T10:26:01Z"
        },
        {
          "step_id": "services",
          "action": "services.audit",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "13dcc58bd528f3efa3e6e0fa0853a6eedc376f1f3685fbd4869cbb2b60382ee3",
          "completed_at": "2026-07-18T10:26:01Z"
        },
        {
          "step_id": "state",
          "action": "state.consistency",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "5a1c6e5246defb1b6b6b90ff734db95bece2886b408ab112ed9b8e67222d5568",
          "completed_at": "2026-07-18T10:26:02Z"
        },
        {
          "step_id": "status",
          "action": "state.query",
          "input_hash": "a15231a2142a2a9a85355a8b9cbbccffe01a9c9c2c2fd8c2bc2987cdc481564a",
          "output_hash": "3f5f1f1b697355ba98c49da021057f59bf2c3a20c6c0ec551be6ac209dda7ea2",
          "completed_at": "2026-07-18T10:26:02Z"
        },
        {
          "step_id": "substrate",
          "action": "substrate.preflight",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "a6df426290b4549a59eecaa0519ead9bcc50b7fcb25bd2185ff6047960f19ccb",
          "completed_at": "2026-07-18T10:26:03Z"
        },
        {
          "step_id": "notices",
          "action": "substrate.notices",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "38b904a1cf83df048360fb2480571b749fd98d57e11f1afdffb5a74a78166fea",
          "completed_at": "2026-07-18T10:26:03Z"
        },
        {
          "step_id": "goals",
          "action": "substrate.goals",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "cdfd4de44a28140e686159f34f7b47975954c67e1d1efcef666e985acb136ed8",
          "completed_at": "2026-07-18T10:26:03Z"
        }
      ],
      "steps": [
        {
          "id": "config",
          "action": "config.audit",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-18T10:26:01Z",
          "output": {
            "status": "ok",
            "summary": {
              "settings": 199,
              "mutable": 189,
              "read_only_or_managed": 10,
              "unclassified": 0,
              "unknown": 0,
              "invalid": 0,
              "missing_using_defaults": 0
            },
            "unclassified_keys": [],
            "unknown_keys": [],
            "invalid_values": [],
            "missing_using_defaults": []
          },
          "output_hash": "ee3e0d0b20c1ae60964882182bf120738d03ffcfa7f440b4b701a344574f9122",
          "completed_at": "2026-07-18T10:26:01Z"
        },
        {
          "id": "services",
          "action": "services.audit",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-18T10:26:01Z",
          "output": {
            "status": "ok",
            "summary": {
              "critical": 0,
              "high": 0,
              "medium": 0,
              "low": 0
            },
            "findings": []
          },
          "output_hash": "13dcc58bd528f3efa3e6e0fa0853a6eedc376f1f3685fbd4869cbb2b60382ee3",
          "completed_at": "2026-07-18T10:26:01Z"
        },
        {
          "id": "state",
          "action": "state.consistency",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-18T10:26:01Z",
          "output": {
            "status": "ok",
            "repo_root": "D:\\Projects\\prd-plugin",
            "summary": {
              "errors": 0,
              "warnings": 0,
              "infos": 0
            },
            "findings": []
          },
          "output_hash": "5a1c6e5246defb1b6b6b90ff734db95bece2886b408ab112ed9b8e67222d5568",
          "completed_at": "2026-07-18T10:26:02Z"
        },
        {
          "id": "status",
          "action": "state.query",
          "status": "completed",
          "resolved_input_hash": "a15231a2142a2a9a85355a8b9cbbccffe01a9c9c2c2fd8c2bc2987cdc481564a",
          "started_at": "2026-07-18T10:26:02Z",
          "output": {
            "repo_root": "D:\\Projects\\prd-plugin",
            "autonomy_level": "autonomous",
            "requests_by_status": {
              "deferred": 1,
              "implemented": 93,
              "in_review": 1,
              "proposed": 6,
              "rejected": 1
            },
            "active_tracking": [],
            "tracking_branches": [],
            "tracking_branch_counts": {},
            "tracking_branch_errors": [],
            "open_health": [],
            "stale_count": 0,
            "skill_usage": {
              "project-decision-policy": 1,
              "project-request-intake": 1,
              "project-test-driven-implementation": 1,
              "project-verification-before-completion": 1,
              "project-llm-wiki": 1
            },
            "wiki_backfill_pending": false,
            "version_update": null
          },
          "output_hash": "3f5f1f1b697355ba98c49da021057f59bf2c3a20c6c0ec551be6ac209dda7ea2",
          "completed_at": "2026-07-18T10:26:02Z"
        },
        {
          "id": "substrate",
          "action": "substrate.preflight",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-18T10:26:03Z",
          "output": {
            "status": "disabled",
            "services": {
              "status": "ok",
              "summary": {
                "critical": 0,
                "high": 0,
                "medium": 0,
                "low": 0
              },
              "findings": []
            },
            "policy": {
              "configured": {
                "enabled": false,
                "mode": "off",
                "capabilities": [
                  "records",
                  "graph",
                  "events"
                ],
                "contract_version": 2,
                "require_source_refs": true,
                "endpoint": "http://127.0.0.1:47124",
                "manual_url": "http://127.0.0.1:47124/utcp.json",
                "knowledge_browse_url": "http://127.0.0.1:5276",
                "auth_env": "AI_COLLAB_API_KEY",
                "timeout_seconds": 5,
                "max_result_bytes": 1048576,
                "cache_ttl_seconds": 60,
                "fallback": "local",
                "automation": {
                  "discovery_on_session_start": true,
                  "knowledge_recall": true,
                  "memory_recall": true,
                  "context_enrichment": true,
                  "notices_on_session_start": false,
                  "goals_sync": false,
                  "telemetry_on_maintenance": false,
                  "reporting_dispatch": true,
                  "judgment_dispatch": true,
                  "verification_execution": true
                }
              },
              "active": false,
              "effective_mode": "off",
              "effective_capabilities": []
            }
          },
          "output_hash": "a6df426290b4549a59eecaa0519ead9bcc50b7fcb25bd2185ff6047960f19ccb",
          "completed_at": "2026-07-18T10:26:03Z"
        },
        {
          "id": "notices",
          "action": "substrate.notices",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-18T10:26:03Z",
          "output": {
            "status": "disabled"
          },
          "output_hash": "38b904a1cf83df048360fb2480571b749fd98d57e11f1afdffb5a74a78166fea",
          "completed_at": "2026-07-18T10:26:03Z"
        },
        {
          "id": "goals",
          "action": "substrate.goals",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-18T10:26:03Z",
          "output": {
            "status": "disabled",
            "created": 0,
            "observed": 0,
            "results": []
          },
          "output_hash": "cdfd4de44a28140e686159f34f7b47975954c67e1d1efcef666e985acb136ed8",
          "completed_at": "2026-07-18T10:26:03Z"
        }
      ],
      "completed_at": "2026-07-18T10:26:03Z"
    },
    {
      "id": "WFR-339",
      "schema_version": "1.0",
      "workflow_id": "session.start",
      "workflow_version": 1,
      "definition_hash": "d0f98da02571e6dd27fec4aed92d3c82af9db75f8b90b997bf665635c7b7f6ca",
      "plan_hash": "b5072615ca3b7e9a3bd85d50d1f069d99ef2a9816b32c03a370745ed7a205536",
      "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
      "inputs": {},
      "idempotency_key": "hook:SessionStart:02e43239-7d6e-40be-ae9f-00a5f67a61e8",
      "status": "completed",
      "attempt": 1,
      "created_at": "2026-07-18T12:02:56Z",
      "updated_at": "2026-07-18T12:03:00Z",
      "receipts": [
        {
          "step_id": "config",
          "action": "config.audit",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "ee3e0d0b20c1ae60964882182bf120738d03ffcfa7f440b4b701a344574f9122",
          "completed_at": "2026-07-18T12:02:56Z"
        },
        {
          "step_id": "services",
          "action": "services.audit",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "13dcc58bd528f3efa3e6e0fa0853a6eedc376f1f3685fbd4869cbb2b60382ee3",
          "completed_at": "2026-07-18T12:02:56Z"
        },
        {
          "step_id": "state",
          "action": "state.consistency",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "5a1c6e5246defb1b6b6b90ff734db95bece2886b408ab112ed9b8e67222d5568",
          "completed_at": "2026-07-18T12:02:59Z"
        },
        {
          "step_id": "status",
          "action": "state.query",
          "input_hash": "a15231a2142a2a9a85355a8b9cbbccffe01a9c9c2c2fd8c2bc2987cdc481564a",
          "output_hash": "677bac9d0295b50d398c07efb8f1bc8ac5573fbaac4b1447f35b63cc9718f747",
          "completed_at": "2026-07-18T12:02:59Z"
        },
        {
          "step_id": "substrate",
          "action": "substrate.preflight",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "a6df426290b4549a59eecaa0519ead9bcc50b7fcb25bd2185ff6047960f19ccb",
          "completed_at": "2026-07-18T12:03:00Z"
        },
        {
          "step_id": "notices",
          "action": "substrate.notices",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "38b904a1cf83df048360fb2480571b749fd98d57e11f1afdffb5a74a78166fea",
          "completed_at": "2026-07-18T12:03:00Z"
        },
        {
          "step_id": "goals",
          "action": "substrate.goals",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "cdfd4de44a28140e686159f34f7b47975954c67e1d1efcef666e985acb136ed8",
          "completed_at": "2026-07-18T12:03:00Z"
        }
      ],
      "steps": [
        {
          "id": "config",
          "action": "config.audit",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-18T12:02:56Z",
          "output": {
            "status": "ok",
            "summary": {
              "settings": 199,
              "mutable": 189,
              "read_only_or_managed": 10,
              "unclassified": 0,
              "unknown": 0,
              "invalid": 0,
              "missing_using_defaults": 0
            },
            "unclassified_keys": [],
            "unknown_keys": [],
            "invalid_values": [],
            "missing_using_defaults": []
          },
          "output_hash": "ee3e0d0b20c1ae60964882182bf120738d03ffcfa7f440b4b701a344574f9122",
          "completed_at": "2026-07-18T12:02:56Z"
        },
        {
          "id": "services",
          "action": "services.audit",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-18T12:02:56Z",
          "output": {
            "status": "ok",
            "summary": {
              "critical": 0,
              "high": 0,
              "medium": 0,
              "low": 0
            },
            "findings": []
          },
          "output_hash": "13dcc58bd528f3efa3e6e0fa0853a6eedc376f1f3685fbd4869cbb2b60382ee3",
          "completed_at": "2026-07-18T12:02:56Z"
        },
        {
          "id": "state",
          "action": "state.consistency",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-18T12:02:56Z",
          "output": {
            "status": "ok",
            "repo_root": "D:\\Projects\\prd-plugin",
            "summary": {
              "errors": 0,
              "warnings": 0,
              "infos": 0
            },
            "findings": []
          },
          "output_hash": "5a1c6e5246defb1b6b6b90ff734db95bece2886b408ab112ed9b8e67222d5568",
          "completed_at": "2026-07-18T12:02:59Z"
        },
        {
          "id": "status",
          "action": "state.query",
          "status": "completed",
          "resolved_input_hash": "a15231a2142a2a9a85355a8b9cbbccffe01a9c9c2c2fd8c2bc2987cdc481564a",
          "started_at": "2026-07-18T12:02:59Z",
          "output": {
            "repo_root": "D:\\Projects\\prd-plugin",
            "autonomy_level": "autonomous",
            "requests_by_status": {
              "deferred": 1,
              "implemented": 94,
              "in_review": 1,
              "proposed": 6,
              "rejected": 1
            },
            "active_tracking": [],
            "tracking_branches": [],
            "tracking_branch_counts": {},
            "tracking_branch_errors": [],
            "open_health": [],
            "stale_count": 0,
            "skill_usage": {
              "project-decision-policy": 1,
              "project-request-intake": 1,
              "project-test-driven-implementation": 1,
              "project-verification-before-completion": 1,
              "project-llm-wiki": 1
            },
            "wiki_backfill_pending": false,
            "version_update": null
          },
          "output_hash": "677bac9d0295b50d398c07efb8f1bc8ac5573fbaac4b1447f35b63cc9718f747",
          "completed_at": "2026-07-18T12:02:59Z"
        },
        {
          "id": "substrate",
          "action": "substrate.preflight",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-18T12:03:00Z",
          "output": {
            "status": "disabled",
            "services": {
              "status": "ok",
              "summary": {
                "critical": 0,
                "high": 0,
                "medium": 0,
                "low": 0
              },
              "findings": []
            },
            "policy": {
              "configured": {
                "enabled": false,
                "mode": "off",
                "capabilities": [
                  "records",
                  "graph",
                  "events"
                ],
                "contract_version": 2,
                "require_source_refs": true,
                "endpoint": "http://127.0.0.1:47124",
                "manual_url": "http://127.0.0.1:47124/utcp.json",
                "knowledge_browse_url": "http://127.0.0.1:5276",
                "auth_env": "AI_COLLAB_API_KEY",
                "timeout_seconds": 5,
                "max_result_bytes": 1048576,
                "cache_ttl_seconds": 60,
                "fallback": "local",
                "automation": {
                  "discovery_on_session_start": true,
                  "knowledge_recall": true,
                  "memory_recall": true,
                  "context_enrichment": true,
                  "notices_on_session_start": false,
                  "goals_sync": false,
                  "telemetry_on_maintenance": false,
                  "reporting_dispatch": true,
                  "judgment_dispatch": true,
                  "verification_execution": true
                }
              },
              "active": false,
              "effective_mode": "off",
              "effective_capabilities": []
            }
          },
          "output_hash": "a6df426290b4549a59eecaa0519ead9bcc50b7fcb25bd2185ff6047960f19ccb",
          "completed_at": "2026-07-18T12:03:00Z"
        },
        {
          "id": "notices",
          "action": "substrate.notices",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-18T12:03:00Z",
          "output": {
            "status": "disabled"
          },
          "output_hash": "38b904a1cf83df048360fb2480571b749fd98d57e11f1afdffb5a74a78166fea",
          "completed_at": "2026-07-18T12:03:00Z"
        },
        {
          "id": "goals",
          "action": "substrate.goals",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-18T12:03:00Z",
          "output": {
            "status": "disabled",
            "created": 0,
            "observed": 0,
            "results": []
          },
          "output_hash": "cdfd4de44a28140e686159f34f7b47975954c67e1d1efcef666e985acb136ed8",
          "completed_at": "2026-07-18T12:03:00Z"
        }
      ],
      "completed_at": "2026-07-18T12:03:00Z"
    },
    {
      "id": "WFR-340",
      "schema_version": "1.0",
      "workflow_id": "session.start",
      "workflow_version": 1,
      "definition_hash": "d0f98da02571e6dd27fec4aed92d3c82af9db75f8b90b997bf665635c7b7f6ca",
      "plan_hash": "b5072615ca3b7e9a3bd85d50d1f069d99ef2a9816b32c03a370745ed7a205536",
      "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
      "inputs": {},
      "idempotency_key": "hook:SessionStart:5ec613a0-5eed-49f2-972a-8308fb6e5e62",
      "status": "completed",
      "attempt": 1,
      "created_at": "2026-07-18T12:42:34Z",
      "updated_at": "2026-07-18T12:42:36Z",
      "receipts": [
        {
          "step_id": "config",
          "action": "config.audit",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "ee3e0d0b20c1ae60964882182bf120738d03ffcfa7f440b4b701a344574f9122",
          "completed_at": "2026-07-18T12:42:34Z"
        },
        {
          "step_id": "services",
          "action": "services.audit",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "13dcc58bd528f3efa3e6e0fa0853a6eedc376f1f3685fbd4869cbb2b60382ee3",
          "completed_at": "2026-07-18T12:42:34Z"
        },
        {
          "step_id": "state",
          "action": "state.consistency",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "5a1c6e5246defb1b6b6b90ff734db95bece2886b408ab112ed9b8e67222d5568",
          "completed_at": "2026-07-18T12:42:35Z"
        },
        {
          "step_id": "status",
          "action": "state.query",
          "input_hash": "a15231a2142a2a9a85355a8b9cbbccffe01a9c9c2c2fd8c2bc2987cdc481564a",
          "output_hash": "677bac9d0295b50d398c07efb8f1bc8ac5573fbaac4b1447f35b63cc9718f747",
          "completed_at": "2026-07-18T12:42:35Z"
        },
        {
          "step_id": "substrate",
          "action": "substrate.preflight",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "a6df426290b4549a59eecaa0519ead9bcc50b7fcb25bd2185ff6047960f19ccb",
          "completed_at": "2026-07-18T12:42:35Z"
        },
        {
          "step_id": "notices",
          "action": "substrate.notices",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "38b904a1cf83df048360fb2480571b749fd98d57e11f1afdffb5a74a78166fea",
          "completed_at": "2026-07-18T12:42:36Z"
        },
        {
          "step_id": "goals",
          "action": "substrate.goals",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "cdfd4de44a28140e686159f34f7b47975954c67e1d1efcef666e985acb136ed8",
          "completed_at": "2026-07-18T12:42:36Z"
        }
      ],
      "steps": [
        {
          "id": "config",
          "action": "config.audit",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-18T12:42:34Z",
          "output": {
            "status": "ok",
            "summary": {
              "settings": 199,
              "mutable": 189,
              "read_only_or_managed": 10,
              "unclassified": 0,
              "unknown": 0,
              "invalid": 0,
              "missing_using_defaults": 0
            },
            "unclassified_keys": [],
            "unknown_keys": [],
            "invalid_values": [],
            "missing_using_defaults": []
          },
          "output_hash": "ee3e0d0b20c1ae60964882182bf120738d03ffcfa7f440b4b701a344574f9122",
          "completed_at": "2026-07-18T12:42:34Z"
        },
        {
          "id": "services",
          "action": "services.audit",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-18T12:42:34Z",
          "output": {
            "status": "ok",
            "summary": {
              "critical": 0,
              "high": 0,
              "medium": 0,
              "low": 0
            },
            "findings": []
          },
          "output_hash": "13dcc58bd528f3efa3e6e0fa0853a6eedc376f1f3685fbd4869cbb2b60382ee3",
          "completed_at": "2026-07-18T12:42:34Z"
        },
        {
          "id": "state",
          "action": "state.consistency",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-18T12:42:34Z",
          "output": {
            "status": "ok",
            "repo_root": "D:\\Projects\\prd-plugin",
            "summary": {
              "errors": 0,
              "warnings": 0,
              "infos": 0
            },
            "findings": []
          },
          "output_hash": "5a1c6e5246defb1b6b6b90ff734db95bece2886b408ab112ed9b8e67222d5568",
          "completed_at": "2026-07-18T12:42:35Z"
        },
        {
          "id": "status",
          "action": "state.query",
          "status": "completed",
          "resolved_input_hash": "a15231a2142a2a9a85355a8b9cbbccffe01a9c9c2c2fd8c2bc2987cdc481564a",
          "started_at": "2026-07-18T12:42:35Z",
          "output": {
            "repo_root": "D:\\Projects\\prd-plugin",
            "autonomy_level": "autonomous",
            "requests_by_status": {
              "deferred": 1,
              "implemented": 94,
              "in_review": 1,
              "proposed": 6,
              "rejected": 1
            },
            "active_tracking": [],
            "tracking_branches": [],
            "tracking_branch_counts": {},
            "tracking_branch_errors": [],
            "open_health": [],
            "stale_count": 0,
            "skill_usage": {
              "project-decision-policy": 1,
              "project-request-intake": 1,
              "project-test-driven-implementation": 1,
              "project-verification-before-completion": 1,
              "project-llm-wiki": 1
            },
            "wiki_backfill_pending": false,
            "version_update": null
          },
          "output_hash": "677bac9d0295b50d398c07efb8f1bc8ac5573fbaac4b1447f35b63cc9718f747",
          "completed_at": "2026-07-18T12:42:35Z"
        },
        {
          "id": "substrate",
          "action": "substrate.preflight",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-18T12:42:35Z",
          "output": {
            "status": "disabled",
            "services": {
              "status": "ok",
              "summary": {
                "critical": 0,
                "high": 0,
                "medium": 0,
                "low": 0
              },
              "findings": []
            },
            "policy": {
              "configured": {
                "enabled": false,
                "mode": "off",
                "capabilities": [
                  "records",
                  "graph",
                  "events"
                ],
                "contract_version": 2,
                "require_source_refs": true,
                "endpoint": "http://127.0.0.1:47124",
                "manual_url": "http://127.0.0.1:47124/utcp.json",
                "knowledge_browse_url": "http://127.0.0.1:5276",
                "auth_env": "AI_COLLAB_API_KEY",
                "timeout_seconds": 5,
                "max_result_bytes": 1048576,
                "cache_ttl_seconds": 60,
                "fallback": "local",
                "automation": {
                  "discovery_on_session_start": true,
                  "knowledge_recall": true,
                  "memory_recall": true,
                  "context_enrichment": true,
                  "notices_on_session_start": false,
                  "goals_sync": false,
                  "telemetry_on_maintenance": false,
                  "reporting_dispatch": true,
                  "judgment_dispatch": true,
                  "verification_execution": true
                }
              },
              "active": false,
              "effective_mode": "off",
              "effective_capabilities": []
            }
          },
          "output_hash": "a6df426290b4549a59eecaa0519ead9bcc50b7fcb25bd2185ff6047960f19ccb",
          "completed_at": "2026-07-18T12:42:35Z"
        },
        {
          "id": "notices",
          "action": "substrate.notices",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-18T12:42:36Z",
          "output": {
            "status": "disabled"
          },
          "output_hash": "38b904a1cf83df048360fb2480571b749fd98d57e11f1afdffb5a74a78166fea",
          "completed_at": "2026-07-18T12:42:36Z"
        },
        {
          "id": "goals",
          "action": "substrate.goals",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-18T12:42:36Z",
          "output": {
            "status": "disabled",
            "created": 0,
            "observed": 0,
            "results": []
          },
          "output_hash": "cdfd4de44a28140e686159f34f7b47975954c67e1d1efcef666e985acb136ed8",
          "completed_at": "2026-07-18T12:42:36Z"
        }
      ],
      "completed_at": "2026-07-18T12:42:36Z"
    },
    {
      "id": "WFR-341",
      "schema_version": "1.0",
      "workflow_id": "session.start",
      "workflow_version": 1,
      "definition_hash": "d0f98da02571e6dd27fec4aed92d3c82af9db75f8b90b997bf665635c7b7f6ca",
      "plan_hash": "b5072615ca3b7e9a3bd85d50d1f069d99ef2a9816b32c03a370745ed7a205536",
      "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
      "inputs": {},
      "idempotency_key": "hook:SessionStart:fbe72428-23c8-4f0f-9715-8dc02327d0ab",
      "status": "completed",
      "attempt": 1,
      "created_at": "2026-07-18T16:28:08Z",
      "updated_at": "2026-07-18T16:28:32Z",
      "receipts": [
        {
          "step_id": "config",
          "action": "config.audit",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "ee3e0d0b20c1ae60964882182bf120738d03ffcfa7f440b4b701a344574f9122",
          "completed_at": "2026-07-18T16:28:09Z"
        },
        {
          "step_id": "services",
          "action": "services.audit",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "13dcc58bd528f3efa3e6e0fa0853a6eedc376f1f3685fbd4869cbb2b60382ee3",
          "completed_at": "2026-07-18T16:28:09Z"
        },
        {
          "step_id": "state",
          "action": "state.consistency",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "5a1c6e5246defb1b6b6b90ff734db95bece2886b408ab112ed9b8e67222d5568",
          "completed_at": "2026-07-18T16:28:28Z"
        },
        {
          "step_id": "status",
          "action": "state.query",
          "input_hash": "a15231a2142a2a9a85355a8b9cbbccffe01a9c9c2c2fd8c2bc2987cdc481564a",
          "output_hash": "677bac9d0295b50d398c07efb8f1bc8ac5573fbaac4b1447f35b63cc9718f747",
          "completed_at": "2026-07-18T16:28:30Z"
        },
        {
          "step_id": "substrate",
          "action": "substrate.preflight",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "a6df426290b4549a59eecaa0519ead9bcc50b7fcb25bd2185ff6047960f19ccb",
          "completed_at": "2026-07-18T16:28:31Z"
        },
        {
          "step_id": "notices",
          "action": "substrate.notices",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "38b904a1cf83df048360fb2480571b749fd98d57e11f1afdffb5a74a78166fea",
          "completed_at": "2026-07-18T16:28:31Z"
        },
        {
          "step_id": "goals",
          "action": "substrate.goals",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "cdfd4de44a28140e686159f34f7b47975954c67e1d1efcef666e985acb136ed8",
          "completed_at": "2026-07-18T16:28:31Z"
        }
      ],
      "steps": [
        {
          "id": "config",
          "action": "config.audit",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-18T16:28:09Z",
          "output": {
            "status": "ok",
            "summary": {
              "settings": 199,
              "mutable": 189,
              "read_only_or_managed": 10,
              "unclassified": 0,
              "unknown": 0,
              "invalid": 0,
              "missing_using_defaults": 0
            },
            "unclassified_keys": [],
            "unknown_keys": [],
            "invalid_values": [],
            "missing_using_defaults": []
          },
          "output_hash": "ee3e0d0b20c1ae60964882182bf120738d03ffcfa7f440b4b701a344574f9122",
          "completed_at": "2026-07-18T16:28:09Z"
        },
        {
          "id": "services",
          "action": "services.audit",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-18T16:28:09Z",
          "output": {
            "status": "ok",
            "summary": {
              "critical": 0,
              "high": 0,
              "medium": 0,
              "low": 0
            },
            "findings": []
          },
          "output_hash": "13dcc58bd528f3efa3e6e0fa0853a6eedc376f1f3685fbd4869cbb2b60382ee3",
          "completed_at": "2026-07-18T16:28:09Z"
        },
        {
          "id": "state",
          "action": "state.consistency",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-18T16:28:10Z",
          "output": {
            "status": "ok",
            "repo_root": "D:\\Projects\\prd-plugin",
            "summary": {
              "errors": 0,
              "warnings": 0,
              "infos": 0
            },
            "findings": []
          },
          "output_hash": "5a1c6e5246defb1b6b6b90ff734db95bece2886b408ab112ed9b8e67222d5568",
          "completed_at": "2026-07-18T16:28:28Z"
        },
        {
          "id": "status",
          "action": "state.query",
          "status": "completed",
          "resolved_input_hash": "a15231a2142a2a9a85355a8b9cbbccffe01a9c9c2c2fd8c2bc2987cdc481564a",
          "started_at": "2026-07-18T16:28:28Z",
          "output": {
            "repo_root": "D:\\Projects\\prd-plugin",
            "autonomy_level": "autonomous",
            "requests_by_status": {
              "deferred": 1,
              "implemented": 94,
              "in_review": 1,
              "proposed": 6,
              "rejected": 1
            },
            "active_tracking": [],
            "tracking_branches": [],
            "tracking_branch_counts": {},
            "tracking_branch_errors": [],
            "open_health": [],
            "stale_count": 0,
            "skill_usage": {
              "project-decision-policy": 1,
              "project-request-intake": 1,
              "project-test-driven-implementation": 1,
              "project-verification-before-completion": 1,
              "project-llm-wiki": 1
            },
            "wiki_backfill_pending": false,
            "version_update": null
          },
          "output_hash": "677bac9d0295b50d398c07efb8f1bc8ac5573fbaac4b1447f35b63cc9718f747",
          "completed_at": "2026-07-18T16:28:30Z"
        },
        {
          "id": "substrate",
          "action": "substrate.preflight",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-18T16:28:30Z",
          "output": {
            "status": "disabled",
            "services": {
              "status": "ok",
              "summary": {
                "critical": 0,
                "high": 0,
                "medium": 0,
                "low": 0
              },
              "findings": []
            },
            "policy": {
              "configured": {
                "enabled": false,
                "mode": "off",
                "capabilities": [
                  "records",
                  "graph",
                  "events"
                ],
                "contract_version": 2,
                "require_source_refs": true,
                "endpoint": "http://127.0.0.1:47124",
                "manual_url": "http://127.0.0.1:47124/utcp.json",
                "knowledge_browse_url": "http://127.0.0.1:5276",
                "auth_env": "AI_COLLAB_API_KEY",
                "timeout_seconds": 5,
                "max_result_bytes": 1048576,
                "cache_ttl_seconds": 60,
                "fallback": "local",
                "automation": {
                  "discovery_on_session_start": true,
                  "knowledge_recall": true,
                  "memory_recall": true,
                  "context_enrichment": true,
                  "notices_on_session_start": false,
                  "goals_sync": false,
                  "telemetry_on_maintenance": false,
                  "reporting_dispatch": true,
                  "judgment_dispatch": true,
                  "verification_execution": true
                }
              },
              "active": false,
              "effective_mode": "off",
              "effective_capabilities": []
            }
          },
          "output_hash": "a6df426290b4549a59eecaa0519ead9bcc50b7fcb25bd2185ff6047960f19ccb",
          "completed_at": "2026-07-18T16:28:31Z"
        },
        {
          "id": "notices",
          "action": "substrate.notices",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-18T16:28:31Z",
          "output": {
            "status": "disabled"
          },
          "output_hash": "38b904a1cf83df048360fb2480571b749fd98d57e11f1afdffb5a74a78166fea",
          "completed_at": "2026-07-18T16:28:31Z"
        },
        {
          "id": "goals",
          "action": "substrate.goals",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-18T16:28:31Z",
          "output": {
            "status": "disabled",
            "created": 0,
            "observed": 0,
            "results": []
          },
          "output_hash": "cdfd4de44a28140e686159f34f7b47975954c67e1d1efcef666e985acb136ed8",
          "completed_at": "2026-07-18T16:28:31Z"
        }
      ],
      "completed_at": "2026-07-18T16:28:32Z"
    },
    {
      "id": "WFR-342",
      "schema_version": "1.0",
      "workflow_id": "session.start",
      "workflow_version": 1,
      "definition_hash": "d0f98da02571e6dd27fec4aed92d3c82af9db75f8b90b997bf665635c7b7f6ca",
      "plan_hash": "b5072615ca3b7e9a3bd85d50d1f069d99ef2a9816b32c03a370745ed7a205536",
      "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
      "inputs": {},
      "idempotency_key": "hook:SessionStart:07be691f-46d6-49c0-828f-c25ac64578d5",
      "status": "completed",
      "attempt": 1,
      "created_at": "2026-07-18T17:28:25Z",
      "updated_at": "2026-07-18T17:28:30Z",
      "receipts": [
        {
          "step_id": "config",
          "action": "config.audit",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "ee3e0d0b20c1ae60964882182bf120738d03ffcfa7f440b4b701a344574f9122",
          "completed_at": "2026-07-18T17:28:26Z"
        },
        {
          "step_id": "services",
          "action": "services.audit",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "13dcc58bd528f3efa3e6e0fa0853a6eedc376f1f3685fbd4869cbb2b60382ee3",
          "completed_at": "2026-07-18T17:28:26Z"
        },
        {
          "step_id": "state",
          "action": "state.consistency",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "5a1c6e5246defb1b6b6b90ff734db95bece2886b408ab112ed9b8e67222d5568",
          "completed_at": "2026-07-18T17:28:28Z"
        },
        {
          "step_id": "status",
          "action": "state.query",
          "input_hash": "a15231a2142a2a9a85355a8b9cbbccffe01a9c9c2c2fd8c2bc2987cdc481564a",
          "output_hash": "c578c85441fd50db2c760b3172e04c7e849a40fdf338d3476aedc4ed617c5177",
          "completed_at": "2026-07-18T17:28:29Z"
        },
        {
          "step_id": "substrate",
          "action": "substrate.preflight",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "a6df426290b4549a59eecaa0519ead9bcc50b7fcb25bd2185ff6047960f19ccb",
          "completed_at": "2026-07-18T17:28:29Z"
        },
        {
          "step_id": "notices",
          "action": "substrate.notices",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "38b904a1cf83df048360fb2480571b749fd98d57e11f1afdffb5a74a78166fea",
          "completed_at": "2026-07-18T17:28:29Z"
        },
        {
          "step_id": "goals",
          "action": "substrate.goals",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "cdfd4de44a28140e686159f34f7b47975954c67e1d1efcef666e985acb136ed8",
          "completed_at": "2026-07-18T17:28:30Z"
        }
      ],
      "steps": [
        {
          "id": "config",
          "action": "config.audit",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-18T17:28:26Z",
          "output": {
            "status": "ok",
            "summary": {
              "settings": 199,
              "mutable": 189,
              "read_only_or_managed": 10,
              "unclassified": 0,
              "unknown": 0,
              "invalid": 0,
              "missing_using_defaults": 0
            },
            "unclassified_keys": [],
            "unknown_keys": [],
            "invalid_values": [],
            "missing_using_defaults": []
          },
          "output_hash": "ee3e0d0b20c1ae60964882182bf120738d03ffcfa7f440b4b701a344574f9122",
          "completed_at": "2026-07-18T17:28:26Z"
        },
        {
          "id": "services",
          "action": "services.audit",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-18T17:28:26Z",
          "output": {
            "status": "ok",
            "summary": {
              "critical": 0,
              "high": 0,
              "medium": 0,
              "low": 0
            },
            "findings": []
          },
          "output_hash": "13dcc58bd528f3efa3e6e0fa0853a6eedc376f1f3685fbd4869cbb2b60382ee3",
          "completed_at": "2026-07-18T17:28:26Z"
        },
        {
          "id": "state",
          "action": "state.consistency",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-18T17:28:26Z",
          "output": {
            "status": "ok",
            "repo_root": "D:\\Projects\\prd-plugin",
            "summary": {
              "errors": 0,
              "warnings": 0,
              "infos": 0
            },
            "findings": []
          },
          "output_hash": "5a1c6e5246defb1b6b6b90ff734db95bece2886b408ab112ed9b8e67222d5568",
          "completed_at": "2026-07-18T17:28:28Z"
        },
        {
          "id": "status",
          "action": "state.query",
          "status": "completed",
          "resolved_input_hash": "a15231a2142a2a9a85355a8b9cbbccffe01a9c9c2c2fd8c2bc2987cdc481564a",
          "started_at": "2026-07-18T17:28:28Z",
          "output": {
            "repo_root": "D:\\Projects\\prd-plugin",
            "autonomy_level": "autonomous",
            "requests_by_status": {
              "deferred": 1,
              "implemented": 95,
              "in_review": 1,
              "proposed": 6,
              "rejected": 1
            },
            "active_tracking": [],
            "tracking_branches": [],
            "tracking_branch_counts": {},
            "tracking_branch_errors": [],
            "open_health": [],
            "stale_count": 0,
            "skill_usage": {
              "project-decision-policy": 1,
              "project-request-intake": 1,
              "project-test-driven-implementation": 1,
              "project-verification-before-completion": 1,
              "project-llm-wiki": 1
            },
            "wiki_backfill_pending": false,
            "version_update": null
          },
          "output_hash": "c578c85441fd50db2c760b3172e04c7e849a40fdf338d3476aedc4ed617c5177",
          "completed_at": "2026-07-18T17:28:29Z"
        },
        {
          "id": "substrate",
          "action": "substrate.preflight",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-18T17:28:29Z",
          "output": {
            "status": "disabled",
            "services": {
              "status": "ok",
              "summary": {
                "critical": 0,
                "high": 0,
                "medium": 0,
                "low": 0
              },
              "findings": []
            },
            "policy": {
              "configured": {
                "enabled": false,
                "mode": "off",
                "capabilities": [
                  "records",
                  "graph",
                  "events"
                ],
                "contract_version": 2,
                "require_source_refs": true,
                "endpoint": "http://127.0.0.1:47124",
                "manual_url": "http://127.0.0.1:47124/utcp.json",
                "knowledge_browse_url": "http://127.0.0.1:5276",
                "auth_env": "AI_COLLAB_API_KEY",
                "timeout_seconds": 5,
                "max_result_bytes": 1048576,
                "cache_ttl_seconds": 60,
                "fallback": "local",
                "automation": {
                  "discovery_on_session_start": true,
                  "knowledge_recall": true,
                  "memory_recall": true,
                  "context_enrichment": true,
                  "notices_on_session_start": false,
                  "goals_sync": false,
                  "telemetry_on_maintenance": false,
                  "reporting_dispatch": true,
                  "judgment_dispatch": true,
                  "verification_execution": true
                }
              },
              "active": false,
              "effective_mode": "off",
              "effective_capabilities": []
            }
          },
          "output_hash": "a6df426290b4549a59eecaa0519ead9bcc50b7fcb25bd2185ff6047960f19ccb",
          "completed_at": "2026-07-18T17:28:29Z"
        },
        {
          "id": "notices",
          "action": "substrate.notices",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-18T17:28:29Z",
          "output": {
            "status": "disabled"
          },
          "output_hash": "38b904a1cf83df048360fb2480571b749fd98d57e11f1afdffb5a74a78166fea",
          "completed_at": "2026-07-18T17:28:29Z"
        },
        {
          "id": "goals",
          "action": "substrate.goals",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-18T17:28:30Z",
          "output": {
            "status": "disabled",
            "created": 0,
            "observed": 0,
            "results": []
          },
          "output_hash": "cdfd4de44a28140e686159f34f7b47975954c67e1d1efcef666e985acb136ed8",
          "completed_at": "2026-07-18T17:28:30Z"
        }
      ],
      "completed_at": "2026-07-18T17:28:30Z"
    },
    {
      "id": "WFR-343",
      "schema_version": "1.0",
      "workflow_id": "session.start",
      "workflow_version": 1,
      "definition_hash": "d0f98da02571e6dd27fec4aed92d3c82af9db75f8b90b997bf665635c7b7f6ca",
      "plan_hash": "b5072615ca3b7e9a3bd85d50d1f069d99ef2a9816b32c03a370745ed7a205536",
      "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
      "inputs": {},
      "idempotency_key": "hook:SessionStart:62ce9ab3-ce98-4c60-9b44-e95fbb1107c1",
      "status": "completed",
      "attempt": 1,
      "created_at": "2026-07-19T05:17:22Z",
      "updated_at": "2026-07-19T05:17:30Z",
      "receipts": [
        {
          "step_id": "config",
          "action": "config.audit",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "ee3e0d0b20c1ae60964882182bf120738d03ffcfa7f440b4b701a344574f9122",
          "completed_at": "2026-07-19T05:17:23Z"
        },
        {
          "step_id": "services",
          "action": "services.audit",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "13dcc58bd528f3efa3e6e0fa0853a6eedc376f1f3685fbd4869cbb2b60382ee3",
          "completed_at": "2026-07-19T05:17:23Z"
        },
        {
          "step_id": "state",
          "action": "state.consistency",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "5a1c6e5246defb1b6b6b90ff734db95bece2886b408ab112ed9b8e67222d5568",
          "completed_at": "2026-07-19T05:17:29Z"
        },
        {
          "step_id": "status",
          "action": "state.query",
          "input_hash": "a15231a2142a2a9a85355a8b9cbbccffe01a9c9c2c2fd8c2bc2987cdc481564a",
          "output_hash": "f93ab88739a2128f01289f320bb89588f0269d42b38de15a955a679cdc727798",
          "completed_at": "2026-07-19T05:17:29Z"
        },
        {
          "step_id": "substrate",
          "action": "substrate.preflight",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "a6df426290b4549a59eecaa0519ead9bcc50b7fcb25bd2185ff6047960f19ccb",
          "completed_at": "2026-07-19T05:17:29Z"
        },
        {
          "step_id": "notices",
          "action": "substrate.notices",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "38b904a1cf83df048360fb2480571b749fd98d57e11f1afdffb5a74a78166fea",
          "completed_at": "2026-07-19T05:17:30Z"
        },
        {
          "step_id": "goals",
          "action": "substrate.goals",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "cdfd4de44a28140e686159f34f7b47975954c67e1d1efcef666e985acb136ed8",
          "completed_at": "2026-07-19T05:17:30Z"
        }
      ],
      "steps": [
        {
          "id": "config",
          "action": "config.audit",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-19T05:17:23Z",
          "output": {
            "status": "ok",
            "summary": {
              "settings": 199,
              "mutable": 189,
              "read_only_or_managed": 10,
              "unclassified": 0,
              "unknown": 0,
              "invalid": 0,
              "missing_using_defaults": 0
            },
            "unclassified_keys": [],
            "unknown_keys": [],
            "invalid_values": [],
            "missing_using_defaults": []
          },
          "output_hash": "ee3e0d0b20c1ae60964882182bf120738d03ffcfa7f440b4b701a344574f9122",
          "completed_at": "2026-07-19T05:17:23Z"
        },
        {
          "id": "services",
          "action": "services.audit",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-19T05:17:23Z",
          "output": {
            "status": "ok",
            "summary": {
              "critical": 0,
              "high": 0,
              "medium": 0,
              "low": 0
            },
            "findings": []
          },
          "output_hash": "13dcc58bd528f3efa3e6e0fa0853a6eedc376f1f3685fbd4869cbb2b60382ee3",
          "completed_at": "2026-07-19T05:17:23Z"
        },
        {
          "id": "state",
          "action": "state.consistency",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-19T05:17:23Z",
          "output": {
            "status": "ok",
            "repo_root": "D:\\Projects\\prd-plugin",
            "summary": {
              "errors": 0,
              "warnings": 0,
              "infos": 0
            },
            "findings": []
          },
          "output_hash": "5a1c6e5246defb1b6b6b90ff734db95bece2886b408ab112ed9b8e67222d5568",
          "completed_at": "2026-07-19T05:17:29Z"
        },
        {
          "id": "status",
          "action": "state.query",
          "status": "completed",
          "resolved_input_hash": "a15231a2142a2a9a85355a8b9cbbccffe01a9c9c2c2fd8c2bc2987cdc481564a",
          "started_at": "2026-07-19T05:17:29Z",
          "output": {
            "repo_root": "D:\\Projects\\prd-plugin",
            "autonomy_level": "autonomous",
            "requests_by_status": {
              "deferred": 1,
              "implemented": 97,
              "in_review": 1,
              "proposed": 6,
              "rejected": 1
            },
            "active_tracking": [],
            "tracking_branches": [],
            "tracking_branch_counts": {},
            "tracking_branch_errors": [],
            "open_health": [],
            "stale_count": 0,
            "skill_usage": {
              "project-decision-policy": 1,
              "project-request-intake": 1,
              "project-test-driven-implementation": 1,
              "project-verification-before-completion": 1,
              "project-llm-wiki": 1
            },
            "wiki_backfill_pending": false,
            "version_update": null
          },
          "output_hash": "f93ab88739a2128f01289f320bb89588f0269d42b38de15a955a679cdc727798",
          "completed_at": "2026-07-19T05:17:29Z"
        },
        {
          "id": "substrate",
          "action": "substrate.preflight",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-19T05:17:29Z",
          "output": {
            "status": "disabled",
            "services": {
              "status": "ok",
              "summary": {
                "critical": 0,
                "high": 0,
                "medium": 0,
                "low": 0
              },
              "findings": []
            },
            "policy": {
              "configured": {
                "enabled": false,
                "mode": "off",
                "capabilities": [
                  "records",
                  "graph",
                  "events"
                ],
                "contract_version": 2,
                "require_source_refs": true,
                "endpoint": "http://127.0.0.1:47124",
                "manual_url": "http://127.0.0.1:47124/utcp.json",
                "knowledge_browse_url": "http://127.0.0.1:5276",
                "auth_env": "AI_COLLAB_API_KEY",
                "timeout_seconds": 5,
                "max_result_bytes": 1048576,
                "cache_ttl_seconds": 60,
                "fallback": "local",
                "automation": {
                  "discovery_on_session_start": true,
                  "knowledge_recall": true,
                  "memory_recall": true,
                  "context_enrichment": true,
                  "notices_on_session_start": false,
                  "goals_sync": false,
                  "telemetry_on_maintenance": false,
                  "reporting_dispatch": true,
                  "judgment_dispatch": true,
                  "verification_execution": true
                }
              },
              "active": false,
              "effective_mode": "off",
              "effective_capabilities": []
            }
          },
          "output_hash": "a6df426290b4549a59eecaa0519ead9bcc50b7fcb25bd2185ff6047960f19ccb",
          "completed_at": "2026-07-19T05:17:29Z"
        },
        {
          "id": "notices",
          "action": "substrate.notices",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-19T05:17:30Z",
          "output": {
            "status": "disabled"
          },
          "output_hash": "38b904a1cf83df048360fb2480571b749fd98d57e11f1afdffb5a74a78166fea",
          "completed_at": "2026-07-19T05:17:30Z"
        },
        {
          "id": "goals",
          "action": "substrate.goals",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-19T05:17:30Z",
          "output": {
            "status": "disabled",
            "created": 0,
            "observed": 0,
            "results": []
          },
          "output_hash": "cdfd4de44a28140e686159f34f7b47975954c67e1d1efcef666e985acb136ed8",
          "completed_at": "2026-07-19T05:17:30Z"
        }
      ],
      "completed_at": "2026-07-19T05:17:30Z"
    },
    {
      "id": "WFR-344",
      "schema_version": "1.0",
      "workflow_id": "session.start",
      "workflow_version": 1,
      "definition_hash": "dd0de9444af7b094cc93673d0844fb78c801d87d978cc5f6dd6bf3e3e863917d",
      "plan_hash": "1f4ae0cd6be8385f8a9310e49978bd8d93baa729842eb6df9243665a1b581277",
      "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
      "inputs": {},
      "idempotency_key": "hook:SessionStart:781a33a2-e550-4711-9953-fbdfeb8da5bd",
      "status": "completed",
      "attempt": 1,
      "created_at": "2026-07-19T06:19:48Z",
      "updated_at": "2026-07-19T06:19:51Z",
      "receipts": [
        {
          "step_id": "mailbox",
          "action": "requests.pull",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "1f29edd97900b18e3c3ace3d6c91dd599634ab60ac34520dfec66d24935adbdc",
          "completed_at": "2026-07-19T06:19:48Z"
        },
        {
          "step_id": "config",
          "action": "config.audit",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "ee3e0d0b20c1ae60964882182bf120738d03ffcfa7f440b4b701a344574f9122",
          "completed_at": "2026-07-19T06:19:48Z"
        },
        {
          "step_id": "services",
          "action": "services.audit",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "13dcc58bd528f3efa3e6e0fa0853a6eedc376f1f3685fbd4869cbb2b60382ee3",
          "completed_at": "2026-07-19T06:19:48Z"
        },
        {
          "step_id": "state",
          "action": "state.consistency",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "5a1c6e5246defb1b6b6b90ff734db95bece2886b408ab112ed9b8e67222d5568",
          "completed_at": "2026-07-19T06:19:50Z"
        },
        {
          "step_id": "status",
          "action": "state.query",
          "input_hash": "a15231a2142a2a9a85355a8b9cbbccffe01a9c9c2c2fd8c2bc2987cdc481564a",
          "output_hash": "657bc12560b37a96297cffaee521d1b3743065de976e23651a62120180ae3075",
          "completed_at": "2026-07-19T06:19:50Z"
        },
        {
          "step_id": "substrate",
          "action": "substrate.preflight",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "a6df426290b4549a59eecaa0519ead9bcc50b7fcb25bd2185ff6047960f19ccb",
          "completed_at": "2026-07-19T06:19:51Z"
        },
        {
          "step_id": "notices",
          "action": "substrate.notices",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "38b904a1cf83df048360fb2480571b749fd98d57e11f1afdffb5a74a78166fea",
          "completed_at": "2026-07-19T06:19:51Z"
        },
        {
          "step_id": "goals",
          "action": "substrate.goals",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "cdfd4de44a28140e686159f34f7b47975954c67e1d1efcef666e985acb136ed8",
          "completed_at": "2026-07-19T06:19:51Z"
        }
      ],
      "steps": [
        {
          "id": "mailbox",
          "action": "requests.pull",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-19T06:19:48Z",
          "output": {
            "applied": 0,
            "resolved_ids": [],
            "unmatched": [],
            "mailboxes": [],
            "pruned_outbox": [],
            "consumed_mailboxes": []
          },
          "output_hash": "1f29edd97900b18e3c3ace3d6c91dd599634ab60ac34520dfec66d24935adbdc",
          "completed_at": "2026-07-19T06:19:48Z"
        },
        {
          "id": "config",
          "action": "config.audit",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-19T06:19:48Z",
          "output": {
            "status": "ok",
            "summary": {
              "settings": 199,
              "mutable": 189,
              "read_only_or_managed": 10,
              "unclassified": 0,
              "unknown": 0,
              "invalid": 0,
              "missing_using_defaults": 0
            },
            "unclassified_keys": [],
            "unknown_keys": [],
            "invalid_values": [],
            "missing_using_defaults": []
          },
          "output_hash": "ee3e0d0b20c1ae60964882182bf120738d03ffcfa7f440b4b701a344574f9122",
          "completed_at": "2026-07-19T06:19:48Z"
        },
        {
          "id": "services",
          "action": "services.audit",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-19T06:19:48Z",
          "output": {
            "status": "ok",
            "summary": {
              "critical": 0,
              "high": 0,
              "medium": 0,
              "low": 0
            },
            "findings": []
          },
          "output_hash": "13dcc58bd528f3efa3e6e0fa0853a6eedc376f1f3685fbd4869cbb2b60382ee3",
          "completed_at": "2026-07-19T06:19:48Z"
        },
        {
          "id": "state",
          "action": "state.consistency",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-19T06:19:49Z",
          "output": {
            "status": "ok",
            "repo_root": "D:\\Projects\\prd-plugin",
            "summary": {
              "errors": 0,
              "warnings": 0,
              "infos": 0
            },
            "findings": []
          },
          "output_hash": "5a1c6e5246defb1b6b6b90ff734db95bece2886b408ab112ed9b8e67222d5568",
          "completed_at": "2026-07-19T06:19:50Z"
        },
        {
          "id": "status",
          "action": "state.query",
          "status": "completed",
          "resolved_input_hash": "a15231a2142a2a9a85355a8b9cbbccffe01a9c9c2c2fd8c2bc2987cdc481564a",
          "started_at": "2026-07-19T06:19:50Z",
          "output": {
            "repo_root": "D:\\Projects\\prd-plugin",
            "autonomy_level": "autonomous",
            "requests_by_status": {
              "deferred": 1,
              "implemented": 99,
              "in_review": 1,
              "proposed": 6,
              "rejected": 1
            },
            "active_tracking": [],
            "tracking_branches": [],
            "tracking_branch_counts": {},
            "tracking_branch_errors": [],
            "open_health": [],
            "stale_count": 0,
            "skill_usage": {
              "project-decision-policy": 1,
              "project-request-intake": 1,
              "project-test-driven-implementation": 1,
              "project-verification-before-completion": 1,
              "project-llm-wiki": 1
            },
            "wiki_backfill_pending": false,
            "version_update": null
          },
          "output_hash": "657bc12560b37a96297cffaee521d1b3743065de976e23651a62120180ae3075",
          "completed_at": "2026-07-19T06:19:50Z"
        },
        {
          "id": "substrate",
          "action": "substrate.preflight",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-19T06:19:51Z",
          "output": {
            "status": "disabled",
            "services": {
              "status": "ok",
              "summary": {
                "critical": 0,
                "high": 0,
                "medium": 0,
                "low": 0
              },
              "findings": []
            },
            "policy": {
              "configured": {
                "enabled": false,
                "mode": "off",
                "capabilities": [
                  "records",
                  "graph",
                  "events"
                ],
                "contract_version": 2,
                "require_source_refs": true,
                "endpoint": "http://127.0.0.1:47124",
                "manual_url": "http://127.0.0.1:47124/utcp.json",
                "knowledge_browse_url": "http://127.0.0.1:5276",
                "auth_env": "AI_COLLAB_API_KEY",
                "timeout_seconds": 5,
                "max_result_bytes": 1048576,
                "cache_ttl_seconds": 60,
                "fallback": "local",
                "automation": {
                  "discovery_on_session_start": true,
                  "knowledge_recall": true,
                  "memory_recall": true,
                  "context_enrichment": true,
                  "notices_on_session_start": false,
                  "goals_sync": false,
                  "telemetry_on_maintenance": false,
                  "reporting_dispatch": true,
                  "judgment_dispatch": true,
                  "verification_execution": true
                }
              },
              "active": false,
              "effective_mode": "off",
              "effective_capabilities": []
            }
          },
          "output_hash": "a6df426290b4549a59eecaa0519ead9bcc50b7fcb25bd2185ff6047960f19ccb",
          "completed_at": "2026-07-19T06:19:51Z"
        },
        {
          "id": "notices",
          "action": "substrate.notices",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-19T06:19:51Z",
          "output": {
            "status": "disabled"
          },
          "output_hash": "38b904a1cf83df048360fb2480571b749fd98d57e11f1afdffb5a74a78166fea",
          "completed_at": "2026-07-19T06:19:51Z"
        },
        {
          "id": "goals",
          "action": "substrate.goals",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-19T06:19:51Z",
          "output": {
            "status": "disabled",
            "created": 0,
            "observed": 0,
            "results": []
          },
          "output_hash": "cdfd4de44a28140e686159f34f7b47975954c67e1d1efcef666e985acb136ed8",
          "completed_at": "2026-07-19T06:19:51Z"
        }
      ],
      "completed_at": "2026-07-19T06:19:51Z"
    },
    {
      "id": "WFR-345",
      "schema_version": "1.0",
      "workflow_id": "session.start",
      "workflow_version": 1,
      "definition_hash": "dd0de9444af7b094cc93673d0844fb78c801d87d978cc5f6dd6bf3e3e863917d",
      "plan_hash": "1f4ae0cd6be8385f8a9310e49978bd8d93baa729842eb6df9243665a1b581277",
      "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
      "inputs": {},
      "idempotency_key": "hook:SessionStart:b8774385-d817-4e18-b725-ba6bb3cb364c",
      "status": "completed",
      "attempt": 1,
      "created_at": "2026-07-19T06:48:16Z",
      "updated_at": "2026-07-19T06:48:20Z",
      "receipts": [
        {
          "step_id": "mailbox",
          "action": "requests.pull",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "1f29edd97900b18e3c3ace3d6c91dd599634ab60ac34520dfec66d24935adbdc",
          "completed_at": "2026-07-19T06:48:17Z"
        },
        {
          "step_id": "config",
          "action": "config.audit",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "ee3e0d0b20c1ae60964882182bf120738d03ffcfa7f440b4b701a344574f9122",
          "completed_at": "2026-07-19T06:48:17Z"
        },
        {
          "step_id": "services",
          "action": "services.audit",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "13dcc58bd528f3efa3e6e0fa0853a6eedc376f1f3685fbd4869cbb2b60382ee3",
          "completed_at": "2026-07-19T06:48:17Z"
        },
        {
          "step_id": "state",
          "action": "state.consistency",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "5a1c6e5246defb1b6b6b90ff734db95bece2886b408ab112ed9b8e67222d5568",
          "completed_at": "2026-07-19T06:48:19Z"
        },
        {
          "step_id": "status",
          "action": "state.query",
          "input_hash": "a15231a2142a2a9a85355a8b9cbbccffe01a9c9c2c2fd8c2bc2987cdc481564a",
          "output_hash": "657bc12560b37a96297cffaee521d1b3743065de976e23651a62120180ae3075",
          "completed_at": "2026-07-19T06:48:19Z"
        },
        {
          "step_id": "substrate",
          "action": "substrate.preflight",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "a6df426290b4549a59eecaa0519ead9bcc50b7fcb25bd2185ff6047960f19ccb",
          "completed_at": "2026-07-19T06:48:19Z"
        },
        {
          "step_id": "notices",
          "action": "substrate.notices",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "38b904a1cf83df048360fb2480571b749fd98d57e11f1afdffb5a74a78166fea",
          "completed_at": "2026-07-19T06:48:20Z"
        },
        {
          "step_id": "goals",
          "action": "substrate.goals",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "cdfd4de44a28140e686159f34f7b47975954c67e1d1efcef666e985acb136ed8",
          "completed_at": "2026-07-19T06:48:20Z"
        }
      ],
      "steps": [
        {
          "id": "mailbox",
          "action": "requests.pull",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-19T06:48:17Z",
          "output": {
            "applied": 0,
            "resolved_ids": [],
            "unmatched": [],
            "mailboxes": [],
            "pruned_outbox": [],
            "consumed_mailboxes": []
          },
          "output_hash": "1f29edd97900b18e3c3ace3d6c91dd599634ab60ac34520dfec66d24935adbdc",
          "completed_at": "2026-07-19T06:48:17Z"
        },
        {
          "id": "config",
          "action": "config.audit",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-19T06:48:17Z",
          "output": {
            "status": "ok",
            "summary": {
              "settings": 199,
              "mutable": 189,
              "read_only_or_managed": 10,
              "unclassified": 0,
              "unknown": 0,
              "invalid": 0,
              "missing_using_defaults": 0
            },
            "unclassified_keys": [],
            "unknown_keys": [],
            "invalid_values": [],
            "missing_using_defaults": []
          },
          "output_hash": "ee3e0d0b20c1ae60964882182bf120738d03ffcfa7f440b4b701a344574f9122",
          "completed_at": "2026-07-19T06:48:17Z"
        },
        {
          "id": "services",
          "action": "services.audit",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-19T06:48:17Z",
          "output": {
            "status": "ok",
            "summary": {
              "critical": 0,
              "high": 0,
              "medium": 0,
              "low": 0
            },
            "findings": []
          },
          "output_hash": "13dcc58bd528f3efa3e6e0fa0853a6eedc376f1f3685fbd4869cbb2b60382ee3",
          "completed_at": "2026-07-19T06:48:17Z"
        },
        {
          "id": "state",
          "action": "state.consistency",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-19T06:48:17Z",
          "output": {
            "status": "ok",
            "repo_root": "D:\\Projects\\prd-plugin",
            "summary": {
              "errors": 0,
              "warnings": 0,
              "infos": 0
            },
            "findings": []
          },
          "output_hash": "5a1c6e5246defb1b6b6b90ff734db95bece2886b408ab112ed9b8e67222d5568",
          "completed_at": "2026-07-19T06:48:19Z"
        },
        {
          "id": "status",
          "action": "state.query",
          "status": "completed",
          "resolved_input_hash": "a15231a2142a2a9a85355a8b9cbbccffe01a9c9c2c2fd8c2bc2987cdc481564a",
          "started_at": "2026-07-19T06:48:19Z",
          "output": {
            "repo_root": "D:\\Projects\\prd-plugin",
            "autonomy_level": "autonomous",
            "requests_by_status": {
              "deferred": 1,
              "implemented": 99,
              "in_review": 1,
              "proposed": 6,
              "rejected": 1
            },
            "active_tracking": [],
            "tracking_branches": [],
            "tracking_branch_counts": {},
            "tracking_branch_errors": [],
            "open_health": [],
            "stale_count": 0,
            "skill_usage": {
              "project-decision-policy": 1,
              "project-request-intake": 1,
              "project-test-driven-implementation": 1,
              "project-verification-before-completion": 1,
              "project-llm-wiki": 1
            },
            "wiki_backfill_pending": false,
            "version_update": null
          },
          "output_hash": "657bc12560b37a96297cffaee521d1b3743065de976e23651a62120180ae3075",
          "completed_at": "2026-07-19T06:48:19Z"
        },
        {
          "id": "substrate",
          "action": "substrate.preflight",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-19T06:48:19Z",
          "output": {
            "status": "disabled",
            "services": {
              "status": "ok",
              "summary": {
                "critical": 0,
                "high": 0,
                "medium": 0,
                "low": 0
              },
              "findings": []
            },
            "policy": {
              "configured": {
                "enabled": false,
                "mode": "off",
                "capabilities": [
                  "records",
                  "graph",
                  "events"
                ],
                "contract_version": 2,
                "require_source_refs": true,
                "endpoint": "http://127.0.0.1:47124",
                "manual_url": "http://127.0.0.1:47124/utcp.json",
                "knowledge_browse_url": "http://127.0.0.1:5276",
                "auth_env": "AI_COLLAB_API_KEY",
                "timeout_seconds": 5,
                "max_result_bytes": 1048576,
                "cache_ttl_seconds": 60,
                "fallback": "local",
                "automation": {
                  "discovery_on_session_start": true,
                  "knowledge_recall": true,
                  "memory_recall": true,
                  "context_enrichment": true,
                  "notices_on_session_start": false,
                  "goals_sync": false,
                  "telemetry_on_maintenance": false,
                  "reporting_dispatch": true,
                  "judgment_dispatch": true,
                  "verification_execution": true
                }
              },
              "active": false,
              "effective_mode": "off",
              "effective_capabilities": []
            }
          },
          "output_hash": "a6df426290b4549a59eecaa0519ead9bcc50b7fcb25bd2185ff6047960f19ccb",
          "completed_at": "2026-07-19T06:48:19Z"
        },
        {
          "id": "notices",
          "action": "substrate.notices",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-19T06:48:20Z",
          "output": {
            "status": "disabled"
          },
          "output_hash": "38b904a1cf83df048360fb2480571b749fd98d57e11f1afdffb5a74a78166fea",
          "completed_at": "2026-07-19T06:48:20Z"
        },
        {
          "id": "goals",
          "action": "substrate.goals",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-19T06:48:20Z",
          "output": {
            "status": "disabled",
            "created": 0,
            "observed": 0,
            "results": []
          },
          "output_hash": "cdfd4de44a28140e686159f34f7b47975954c67e1d1efcef666e985acb136ed8",
          "completed_at": "2026-07-19T06:48:20Z"
        }
      ],
      "completed_at": "2026-07-19T06:48:20Z"
    },
    {
      "id": "WFR-346",
      "schema_version": "1.0",
      "workflow_id": "session.start",
      "workflow_version": 1,
      "definition_hash": "dd0de9444af7b094cc93673d0844fb78c801d87d978cc5f6dd6bf3e3e863917d",
      "plan_hash": "1f4ae0cd6be8385f8a9310e49978bd8d93baa729842eb6df9243665a1b581277",
      "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
      "inputs": {},
      "idempotency_key": "hook:SessionStart:db7a558f-ca7f-4970-b080-aecbec1b38b0",
      "status": "completed",
      "attempt": 1,
      "created_at": "2026-07-19T09:42:00Z",
      "updated_at": "2026-07-19T09:42:06Z",
      "receipts": [
        {
          "step_id": "mailbox",
          "action": "requests.pull",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "1f29edd97900b18e3c3ace3d6c91dd599634ab60ac34520dfec66d24935adbdc",
          "completed_at": "2026-07-19T09:42:00Z"
        },
        {
          "step_id": "config",
          "action": "config.audit",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "ee3e0d0b20c1ae60964882182bf120738d03ffcfa7f440b4b701a344574f9122",
          "completed_at": "2026-07-19T09:42:00Z"
        },
        {
          "step_id": "services",
          "action": "services.audit",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "13dcc58bd528f3efa3e6e0fa0853a6eedc376f1f3685fbd4869cbb2b60382ee3",
          "completed_at": "2026-07-19T09:42:01Z"
        },
        {
          "step_id": "state",
          "action": "state.consistency",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "5a1c6e5246defb1b6b6b90ff734db95bece2886b408ab112ed9b8e67222d5568",
          "completed_at": "2026-07-19T09:42:05Z"
        },
        {
          "step_id": "status",
          "action": "state.query",
          "input_hash": "a15231a2142a2a9a85355a8b9cbbccffe01a9c9c2c2fd8c2bc2987cdc481564a",
          "output_hash": "ef0ff9e9328a48b347c14a78840815c357c41fcf9761c39d38ee6bd94de70a92",
          "completed_at": "2026-07-19T09:42:06Z"
        },
        {
          "step_id": "substrate",
          "action": "substrate.preflight",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "a6df426290b4549a59eecaa0519ead9bcc50b7fcb25bd2185ff6047960f19ccb",
          "completed_at": "2026-07-19T09:42:06Z"
        },
        {
          "step_id": "notices",
          "action": "substrate.notices",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "38b904a1cf83df048360fb2480571b749fd98d57e11f1afdffb5a74a78166fea",
          "completed_at": "2026-07-19T09:42:06Z"
        },
        {
          "step_id": "goals",
          "action": "substrate.goals",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "cdfd4de44a28140e686159f34f7b47975954c67e1d1efcef666e985acb136ed8",
          "completed_at": "2026-07-19T09:42:06Z"
        }
      ],
      "steps": [
        {
          "id": "mailbox",
          "action": "requests.pull",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-19T09:42:00Z",
          "output": {
            "applied": 0,
            "resolved_ids": [],
            "unmatched": [],
            "mailboxes": [],
            "pruned_outbox": [],
            "consumed_mailboxes": []
          },
          "output_hash": "1f29edd97900b18e3c3ace3d6c91dd599634ab60ac34520dfec66d24935adbdc",
          "completed_at": "2026-07-19T09:42:00Z"
        },
        {
          "id": "config",
          "action": "config.audit",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-19T09:42:00Z",
          "output": {
            "status": "ok",
            "summary": {
              "settings": 199,
              "mutable": 189,
              "read_only_or_managed": 10,
              "unclassified": 0,
              "unknown": 0,
              "invalid": 0,
              "missing_using_defaults": 0
            },
            "unclassified_keys": [],
            "unknown_keys": [],
            "invalid_values": [],
            "missing_using_defaults": []
          },
          "output_hash": "ee3e0d0b20c1ae60964882182bf120738d03ffcfa7f440b4b701a344574f9122",
          "completed_at": "2026-07-19T09:42:00Z"
        },
        {
          "id": "services",
          "action": "services.audit",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-19T09:42:01Z",
          "output": {
            "status": "ok",
            "summary": {
              "critical": 0,
              "high": 0,
              "medium": 0,
              "low": 0
            },
            "findings": []
          },
          "output_hash": "13dcc58bd528f3efa3e6e0fa0853a6eedc376f1f3685fbd4869cbb2b60382ee3",
          "completed_at": "2026-07-19T09:42:01Z"
        },
        {
          "id": "state",
          "action": "state.consistency",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-19T09:42:01Z",
          "output": {
            "status": "ok",
            "repo_root": "D:\\Projects\\prd-plugin",
            "summary": {
              "errors": 0,
              "warnings": 0,
              "infos": 0
            },
            "findings": []
          },
          "output_hash": "5a1c6e5246defb1b6b6b90ff734db95bece2886b408ab112ed9b8e67222d5568",
          "completed_at": "2026-07-19T09:42:05Z"
        },
        {
          "id": "status",
          "action": "state.query",
          "status": "completed",
          "resolved_input_hash": "a15231a2142a2a9a85355a8b9cbbccffe01a9c9c2c2fd8c2bc2987cdc481564a",
          "started_at": "2026-07-19T09:42:05Z",
          "output": {
            "repo_root": "D:\\Projects\\prd-plugin",
            "autonomy_level": "autonomous",
            "requests_by_status": {
              "deferred": 1,
              "implemented": 101,
              "in_review": 1,
              "proposed": 6,
              "rejected": 1
            },
            "active_tracking": [],
            "tracking_branches": [],
            "tracking_branch_counts": {},
            "tracking_branch_errors": [],
            "open_health": [],
            "stale_count": 0,
            "skill_usage": {
              "project-decision-policy": 1,
              "project-request-intake": 1,
              "project-test-driven-implementation": 1,
              "project-verification-before-completion": 1,
              "project-llm-wiki": 1
            },
            "wiki_backfill_pending": false,
            "version_update": null
          },
          "output_hash": "ef0ff9e9328a48b347c14a78840815c357c41fcf9761c39d38ee6bd94de70a92",
          "completed_at": "2026-07-19T09:42:06Z"
        },
        {
          "id": "substrate",
          "action": "substrate.preflight",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-19T09:42:06Z",
          "output": {
            "status": "disabled",
            "services": {
              "status": "ok",
              "summary": {
                "critical": 0,
                "high": 0,
                "medium": 0,
                "low": 0
              },
              "findings": []
            },
            "policy": {
              "configured": {
                "enabled": false,
                "mode": "off",
                "capabilities": [
                  "records",
                  "graph",
                  "events"
                ],
                "contract_version": 2,
                "require_source_refs": true,
                "endpoint": "http://127.0.0.1:47124",
                "manual_url": "http://127.0.0.1:47124/utcp.json",
                "knowledge_browse_url": "http://127.0.0.1:5276",
                "auth_env": "AI_COLLAB_API_KEY",
                "timeout_seconds": 5,
                "max_result_bytes": 1048576,
                "cache_ttl_seconds": 60,
                "fallback": "local",
                "automation": {
                  "discovery_on_session_start": true,
                  "knowledge_recall": true,
                  "memory_recall": true,
                  "context_enrichment": true,
                  "notices_on_session_start": false,
                  "goals_sync": false,
                  "telemetry_on_maintenance": false,
                  "reporting_dispatch": true,
                  "judgment_dispatch": true,
                  "verification_execution": true
                }
              },
              "active": false,
              "effective_mode": "off",
              "effective_capabilities": []
            }
          },
          "output_hash": "a6df426290b4549a59eecaa0519ead9bcc50b7fcb25bd2185ff6047960f19ccb",
          "completed_at": "2026-07-19T09:42:06Z"
        },
        {
          "id": "notices",
          "action": "substrate.notices",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-19T09:42:06Z",
          "output": {
            "status": "disabled"
          },
          "output_hash": "38b904a1cf83df048360fb2480571b749fd98d57e11f1afdffb5a74a78166fea",
          "completed_at": "2026-07-19T09:42:06Z"
        },
        {
          "id": "goals",
          "action": "substrate.goals",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-19T09:42:06Z",
          "output": {
            "status": "disabled",
            "created": 0,
            "observed": 0,
            "results": []
          },
          "output_hash": "cdfd4de44a28140e686159f34f7b47975954c67e1d1efcef666e985acb136ed8",
          "completed_at": "2026-07-19T09:42:06Z"
        }
      ],
      "completed_at": "2026-07-19T09:42:06Z"
    },
    {
      "id": "WFR-347",
      "schema_version": "1.0",
      "workflow_id": "session.start",
      "workflow_version": 1,
      "definition_hash": "dd0de9444af7b094cc93673d0844fb78c801d87d978cc5f6dd6bf3e3e863917d",
      "plan_hash": "1f4ae0cd6be8385f8a9310e49978bd8d93baa729842eb6df9243665a1b581277",
      "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
      "inputs": {},
      "idempotency_key": "hook:SessionStart:0a0083eb-4689-4989-aa6e-25b3d16b972d",
      "status": "completed",
      "attempt": 1,
      "created_at": "2026-07-19T12:56:03Z",
      "updated_at": "2026-07-19T12:56:05Z",
      "receipts": [
        {
          "step_id": "mailbox",
          "action": "requests.pull",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "ab8a35139cfd3f5821ebc5138c9a44c899b54e4036790654ff120e79c7ab6223",
          "completed_at": "2026-07-19T12:56:03Z"
        },
        {
          "step_id": "config",
          "action": "config.audit",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "2c134e188d092fa6eead2bd0c2b6fe037830a0ef8d4dbea4fc6aa8b573ad301b",
          "completed_at": "2026-07-19T12:56:03Z"
        },
        {
          "step_id": "services",
          "action": "services.audit",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "13dcc58bd528f3efa3e6e0fa0853a6eedc376f1f3685fbd4869cbb2b60382ee3",
          "completed_at": "2026-07-19T12:56:04Z"
        },
        {
          "step_id": "state",
          "action": "state.consistency",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "5a1c6e5246defb1b6b6b90ff734db95bece2886b408ab112ed9b8e67222d5568",
          "completed_at": "2026-07-19T12:56:04Z"
        },
        {
          "step_id": "status",
          "action": "state.query",
          "input_hash": "a15231a2142a2a9a85355a8b9cbbccffe01a9c9c2c2fd8c2bc2987cdc481564a",
          "output_hash": "b37c99da24861e7349c06b830f909961b9affea690bb09003151612398a6b11e",
          "completed_at": "2026-07-19T12:56:05Z"
        },
        {
          "step_id": "substrate",
          "action": "substrate.preflight",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "a6df426290b4549a59eecaa0519ead9bcc50b7fcb25bd2185ff6047960f19ccb",
          "completed_at": "2026-07-19T12:56:05Z"
        },
        {
          "step_id": "notices",
          "action": "substrate.notices",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "38b904a1cf83df048360fb2480571b749fd98d57e11f1afdffb5a74a78166fea",
          "completed_at": "2026-07-19T12:56:05Z"
        },
        {
          "step_id": "goals",
          "action": "substrate.goals",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "cdfd4de44a28140e686159f34f7b47975954c67e1d1efcef666e985acb136ed8",
          "completed_at": "2026-07-19T12:56:05Z"
        }
      ],
      "steps": [
        {
          "id": "mailbox",
          "action": "requests.pull",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-19T12:56:03Z",
          "output": {
            "applied": 0,
            "resolved_ids": [],
            "unmatched": [],
            "mailboxes": [],
            "pruned_outbox": [],
            "consumed_mailboxes": [],
            "outbound": {
              "delivered": 0,
              "mailboxes_published": [],
              "undeliverable": [],
              "pending": []
            },
            "addressed": {
              "delivered": 0,
              "destinations": [],
              "undelivered": [
                {
                  "id": "REQ-030",
                  "state": "not_ours_to_send",
                  "target_repo": "prd-plugin",
                  "reason": "REQ-030 was imported from 'ZeusGrid'; its target_repo records who it was addressed to, not somewhere for us to send it. Reply on its thread instead."
                },
                {
                  "id": "REQ-003",
                  "state": "not_ours_to_send",
                  "target_repo": "prd-plugin",
                  "reason": "REQ-003 was imported from 'ZeusGrid'; its target_repo records who it was addressed to, not somewhere for us to send it. Reply on its thread instead."
                },
                {
                  "id": "REQ-004",
                  "state": "not_ours_to_send",
                  "target_repo": "prd-plugin",
                  "reason": "REQ-004 was imported from 'ZeusGrid'; its target_repo records who it was addressed to, not somewhere for us to send it. Reply on its thread instead."
                },
                {
                  "id": "REQ-005",
                  "state": "not_ours_to_send",
                  "target_repo": "prd-plugin",
                  "reason": "REQ-005 was imported from 'GRAPH_LANG'; its target_repo records who it was addressed to, not somewhere for us to send it. Reply on its thread instead."
                },
                {
                  "id": "REQ-002",
                  "state": "self_addressed",
                  "target_repo": "prd-plugin",
                  "reason": "REQ-002 is addressed to this repo ('prd-plugin'); it is already here."
                },
                {
                  "id": "REQ-028",
                  "state": "self_addressed",
                  "target_repo": "prd-plugin",
                  "reason": "REQ-028 is addressed to this repo ('prd-plugin'); it is already here."
                },
                {
                  "id": "REQ-029",
                  "state": "not_ours_to_send",
                  "target_repo": "ai-collab-v3",
                  "reason": "REQ-029 was imported from 'ai-collab-v3'; its target_repo records who it was addressed to, not somewhere for us to send it. Reply on its thread instead."
                },
                {
                  "id": "REQ-138",
                  "state": "terminal",
                  "target_repo": "no-such-repo",
                  "reason": "REQ-138 is 'rejected'; a closed request is not delivered. Reopen it or file a new one if it still needs to travel."
                }
              ],
              "advisories": []
            }
          },
          "output_hash": "ab8a35139cfd3f5821ebc5138c9a44c899b54e4036790654ff120e79c7ab6223",
          "completed_at": "2026-07-19T12:56:03Z"
        },
        {
          "id": "config",
          "action": "config.audit",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-19T12:56:03Z",
          "output": {
            "status": "ok",
            "summary": {
              "settings": 207,
              "mutable": 197,
              "read_only_or_managed": 10,
              "unclassified": 0,
              "unknown": 0,
              "invalid": 0,
              "missing_using_defaults": 0
            },
            "unclassified_keys": [],
            "unknown_keys": [],
            "invalid_values": [],
            "missing_using_defaults": []
          },
          "output_hash": "2c134e188d092fa6eead2bd0c2b6fe037830a0ef8d4dbea4fc6aa8b573ad301b",
          "completed_at": "2026-07-19T12:56:03Z"
        },
        {
          "id": "services",
          "action": "services.audit",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-19T12:56:04Z",
          "output": {
            "status": "ok",
            "summary": {
              "critical": 0,
              "high": 0,
              "medium": 0,
              "low": 0
            },
            "findings": []
          },
          "output_hash": "13dcc58bd528f3efa3e6e0fa0853a6eedc376f1f3685fbd4869cbb2b60382ee3",
          "completed_at": "2026-07-19T12:56:04Z"
        },
        {
          "id": "state",
          "action": "state.consistency",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-19T12:56:04Z",
          "output": {
            "status": "ok",
            "repo_root": "D:\\Projects\\prd-plugin",
            "summary": {
              "errors": 0,
              "warnings": 0,
              "infos": 0
            },
            "findings": []
          },
          "output_hash": "5a1c6e5246defb1b6b6b90ff734db95bece2886b408ab112ed9b8e67222d5568",
          "completed_at": "2026-07-19T12:56:04Z"
        },
        {
          "id": "status",
          "action": "state.query",
          "status": "completed",
          "resolved_input_hash": "a15231a2142a2a9a85355a8b9cbbccffe01a9c9c2c2fd8c2bc2987cdc481564a",
          "started_at": "2026-07-19T12:56:04Z",
          "output": {
            "repo_root": "D:\\Projects\\prd-plugin",
            "autonomy_level": "autonomous",
            "requests_by_status": {
              "deferred": 1,
              "implemented": 109,
              "in_review": 2,
              "proposed": 7,
              "rejected": 2
            },
            "active_tracking": [],
            "tracking_branches": [],
            "tracking_branch_counts": {},
            "tracking_branch_errors": [],
            "open_health": [],
            "stale_count": 0,
            "skill_usage": {
              "project-decision-policy": 1,
              "project-request-intake": 1,
              "project-test-driven-implementation": 1,
              "project-verification-before-completion": 1,
              "project-llm-wiki": 1
            },
            "wiki_backfill_pending": false,
            "version_update": null
          },
          "output_hash": "b37c99da24861e7349c06b830f909961b9affea690bb09003151612398a6b11e",
          "completed_at": "2026-07-19T12:56:05Z"
        },
        {
          "id": "substrate",
          "action": "substrate.preflight",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-19T12:56:05Z",
          "output": {
            "status": "disabled",
            "services": {
              "status": "ok",
              "summary": {
                "critical": 0,
                "high": 0,
                "medium": 0,
                "low": 0
              },
              "findings": []
            },
            "policy": {
              "configured": {
                "enabled": false,
                "mode": "off",
                "capabilities": [
                  "records",
                  "graph",
                  "events"
                ],
                "contract_version": 2,
                "require_source_refs": true,
                "endpoint": "http://127.0.0.1:47124",
                "manual_url": "http://127.0.0.1:47124/utcp.json",
                "knowledge_browse_url": "http://127.0.0.1:5276",
                "auth_env": "AI_COLLAB_API_KEY",
                "timeout_seconds": 5,
                "max_result_bytes": 1048576,
                "cache_ttl_seconds": 60,
                "fallback": "local",
                "automation": {
                  "discovery_on_session_start": true,
                  "knowledge_recall": true,
                  "memory_recall": true,
                  "context_enrichment": true,
                  "notices_on_session_start": false,
                  "goals_sync": false,
                  "telemetry_on_maintenance": false,
                  "reporting_dispatch": true,
                  "judgment_dispatch": true,
                  "verification_execution": true
                }
              },
              "active": false,
              "effective_mode": "off",
              "effective_capabilities": []
            }
          },
          "output_hash": "a6df426290b4549a59eecaa0519ead9bcc50b7fcb25bd2185ff6047960f19ccb",
          "completed_at": "2026-07-19T12:56:05Z"
        },
        {
          "id": "notices",
          "action": "substrate.notices",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-19T12:56:05Z",
          "output": {
            "status": "disabled"
          },
          "output_hash": "38b904a1cf83df048360fb2480571b749fd98d57e11f1afdffb5a74a78166fea",
          "completed_at": "2026-07-19T12:56:05Z"
        },
        {
          "id": "goals",
          "action": "substrate.goals",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-19T12:56:05Z",
          "output": {
            "status": "disabled",
            "created": 0,
            "observed": 0,
            "results": []
          },
          "output_hash": "cdfd4de44a28140e686159f34f7b47975954c67e1d1efcef666e985acb136ed8",
          "completed_at": "2026-07-19T12:56:05Z"
        }
      ],
      "completed_at": "2026-07-19T12:56:05Z"
    },
    {
      "id": "WFR-348",
      "schema_version": "1.0",
      "workflow_id": "session.start",
      "workflow_version": 1,
      "definition_hash": "dd0de9444af7b094cc93673d0844fb78c801d87d978cc5f6dd6bf3e3e863917d",
      "plan_hash": "1f4ae0cd6be8385f8a9310e49978bd8d93baa729842eb6df9243665a1b581277",
      "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
      "inputs": {},
      "idempotency_key": "hook:SessionStart:be13410e-d19c-4a77-837d-6f2b9555b754",
      "status": "completed",
      "attempt": 1,
      "created_at": "2026-07-19T13:00:14Z",
      "updated_at": "2026-07-19T13:00:16Z",
      "receipts": [
        {
          "step_id": "mailbox",
          "action": "requests.pull",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "ab8a35139cfd3f5821ebc5138c9a44c899b54e4036790654ff120e79c7ab6223",
          "completed_at": "2026-07-19T13:00:14Z"
        },
        {
          "step_id": "config",
          "action": "config.audit",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "2c134e188d092fa6eead2bd0c2b6fe037830a0ef8d4dbea4fc6aa8b573ad301b",
          "completed_at": "2026-07-19T13:00:15Z"
        },
        {
          "step_id": "services",
          "action": "services.audit",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "13dcc58bd528f3efa3e6e0fa0853a6eedc376f1f3685fbd4869cbb2b60382ee3",
          "completed_at": "2026-07-19T13:00:15Z"
        },
        {
          "step_id": "state",
          "action": "state.consistency",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "5a1c6e5246defb1b6b6b90ff734db95bece2886b408ab112ed9b8e67222d5568",
          "completed_at": "2026-07-19T13:00:16Z"
        },
        {
          "step_id": "status",
          "action": "state.query",
          "input_hash": "a15231a2142a2a9a85355a8b9cbbccffe01a9c9c2c2fd8c2bc2987cdc481564a",
          "output_hash": "b37c99da24861e7349c06b830f909961b9affea690bb09003151612398a6b11e",
          "completed_at": "2026-07-19T13:00:16Z"
        },
        {
          "step_id": "substrate",
          "action": "substrate.preflight",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "a6df426290b4549a59eecaa0519ead9bcc50b7fcb25bd2185ff6047960f19ccb",
          "completed_at": "2026-07-19T13:00:16Z"
        },
        {
          "step_id": "notices",
          "action": "substrate.notices",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "38b904a1cf83df048360fb2480571b749fd98d57e11f1afdffb5a74a78166fea",
          "completed_at": "2026-07-19T13:00:16Z"
        },
        {
          "step_id": "goals",
          "action": "substrate.goals",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "cdfd4de44a28140e686159f34f7b47975954c67e1d1efcef666e985acb136ed8",
          "completed_at": "2026-07-19T13:00:16Z"
        }
      ],
      "steps": [
        {
          "id": "mailbox",
          "action": "requests.pull",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-19T13:00:14Z",
          "output": {
            "applied": 0,
            "resolved_ids": [],
            "unmatched": [],
            "mailboxes": [],
            "pruned_outbox": [],
            "consumed_mailboxes": [],
            "outbound": {
              "delivered": 0,
              "mailboxes_published": [],
              "undeliverable": [],
              "pending": []
            },
            "addressed": {
              "delivered": 0,
              "destinations": [],
              "undelivered": [
                {
                  "id": "REQ-030",
                  "state": "not_ours_to_send",
                  "target_repo": "prd-plugin",
                  "reason": "REQ-030 was imported from 'ZeusGrid'; its target_repo records who it was addressed to, not somewhere for us to send it. Reply on its thread instead."
                },
                {
                  "id": "REQ-003",
                  "state": "not_ours_to_send",
                  "target_repo": "prd-plugin",
                  "reason": "REQ-003 was imported from 'ZeusGrid'; its target_repo records who it was addressed to, not somewhere for us to send it. Reply on its thread instead."
                },
                {
                  "id": "REQ-004",
                  "state": "not_ours_to_send",
                  "target_repo": "prd-plugin",
                  "reason": "REQ-004 was imported from 'ZeusGrid'; its target_repo records who it was addressed to, not somewhere for us to send it. Reply on its thread instead."
                },
                {
                  "id": "REQ-005",
                  "state": "not_ours_to_send",
                  "target_repo": "prd-plugin",
                  "reason": "REQ-005 was imported from 'GRAPH_LANG'; its target_repo records who it was addressed to, not somewhere for us to send it. Reply on its thread instead."
                },
                {
                  "id": "REQ-002",
                  "state": "self_addressed",
                  "target_repo": "prd-plugin",
                  "reason": "REQ-002 is addressed to this repo ('prd-plugin'); it is already here."
                },
                {
                  "id": "REQ-028",
                  "state": "self_addressed",
                  "target_repo": "prd-plugin",
                  "reason": "REQ-028 is addressed to this repo ('prd-plugin'); it is already here."
                },
                {
                  "id": "REQ-029",
                  "state": "not_ours_to_send",
                  "target_repo": "ai-collab-v3",
                  "reason": "REQ-029 was imported from 'ai-collab-v3'; its target_repo records who it was addressed to, not somewhere for us to send it. Reply on its thread instead."
                },
                {
                  "id": "REQ-138",
                  "state": "terminal",
                  "target_repo": "no-such-repo",
                  "reason": "REQ-138 is 'rejected'; a closed request is not delivered. Reopen it or file a new one if it still needs to travel."
                }
              ],
              "advisories": []
            }
          },
          "output_hash": "ab8a35139cfd3f5821ebc5138c9a44c899b54e4036790654ff120e79c7ab6223",
          "completed_at": "2026-07-19T13:00:14Z"
        },
        {
          "id": "config",
          "action": "config.audit",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-19T13:00:15Z",
          "output": {
            "status": "ok",
            "summary": {
              "settings": 207,
              "mutable": 197,
              "read_only_or_managed": 10,
              "unclassified": 0,
              "unknown": 0,
              "invalid": 0,
              "missing_using_defaults": 0
            },
            "unclassified_keys": [],
            "unknown_keys": [],
            "invalid_values": [],
            "missing_using_defaults": []
          },
          "output_hash": "2c134e188d092fa6eead2bd0c2b6fe037830a0ef8d4dbea4fc6aa8b573ad301b",
          "completed_at": "2026-07-19T13:00:15Z"
        },
        {
          "id": "services",
          "action": "services.audit",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-19T13:00:15Z",
          "output": {
            "status": "ok",
            "summary": {
              "critical": 0,
              "high": 0,
              "medium": 0,
              "low": 0
            },
            "findings": []
          },
          "output_hash": "13dcc58bd528f3efa3e6e0fa0853a6eedc376f1f3685fbd4869cbb2b60382ee3",
          "completed_at": "2026-07-19T13:00:15Z"
        },
        {
          "id": "state",
          "action": "state.consistency",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-19T13:00:15Z",
          "output": {
            "status": "ok",
            "repo_root": "D:\\Projects\\prd-plugin",
            "summary": {
              "errors": 0,
              "warnings": 0,
              "infos": 0
            },
            "findings": []
          },
          "output_hash": "5a1c6e5246defb1b6b6b90ff734db95bece2886b408ab112ed9b8e67222d5568",
          "completed_at": "2026-07-19T13:00:16Z"
        },
        {
          "id": "status",
          "action": "state.query",
          "status": "completed",
          "resolved_input_hash": "a15231a2142a2a9a85355a8b9cbbccffe01a9c9c2c2fd8c2bc2987cdc481564a",
          "started_at": "2026-07-19T13:00:16Z",
          "output": {
            "repo_root": "D:\\Projects\\prd-plugin",
            "autonomy_level": "autonomous",
            "requests_by_status": {
              "deferred": 1,
              "implemented": 109,
              "in_review": 2,
              "proposed": 7,
              "rejected": 2
            },
            "active_tracking": [],
            "tracking_branches": [],
            "tracking_branch_counts": {},
            "tracking_branch_errors": [],
            "open_health": [],
            "stale_count": 0,
            "skill_usage": {
              "project-decision-policy": 1,
              "project-request-intake": 1,
              "project-test-driven-implementation": 1,
              "project-verification-before-completion": 1,
              "project-llm-wiki": 1
            },
            "wiki_backfill_pending": false,
            "version_update": null
          },
          "output_hash": "b37c99da24861e7349c06b830f909961b9affea690bb09003151612398a6b11e",
          "completed_at": "2026-07-19T13:00:16Z"
        },
        {
          "id": "substrate",
          "action": "substrate.preflight",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-19T13:00:16Z",
          "output": {
            "status": "disabled",
            "services": {
              "status": "ok",
              "summary": {
                "critical": 0,
                "high": 0,
                "medium": 0,
                "low": 0
              },
              "findings": []
            },
            "policy": {
              "configured": {
                "enabled": false,
                "mode": "off",
                "capabilities": [
                  "records",
                  "graph",
                  "events"
                ],
                "contract_version": 2,
                "require_source_refs": true,
                "endpoint": "http://127.0.0.1:47124",
                "manual_url": "http://127.0.0.1:47124/utcp.json",
                "knowledge_browse_url": "http://127.0.0.1:5276",
                "auth_env": "AI_COLLAB_API_KEY",
                "timeout_seconds": 5,
                "max_result_bytes": 1048576,
                "cache_ttl_seconds": 60,
                "fallback": "local",
                "automation": {
                  "discovery_on_session_start": true,
                  "knowledge_recall": true,
                  "memory_recall": true,
                  "context_enrichment": true,
                  "notices_on_session_start": false,
                  "goals_sync": false,
                  "telemetry_on_maintenance": false,
                  "reporting_dispatch": true,
                  "judgment_dispatch": true,
                  "verification_execution": true
                }
              },
              "active": false,
              "effective_mode": "off",
              "effective_capabilities": []
            }
          },
          "output_hash": "a6df426290b4549a59eecaa0519ead9bcc50b7fcb25bd2185ff6047960f19ccb",
          "completed_at": "2026-07-19T13:00:16Z"
        },
        {
          "id": "notices",
          "action": "substrate.notices",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-19T13:00:16Z",
          "output": {
            "status": "disabled"
          },
          "output_hash": "38b904a1cf83df048360fb2480571b749fd98d57e11f1afdffb5a74a78166fea",
          "completed_at": "2026-07-19T13:00:16Z"
        },
        {
          "id": "goals",
          "action": "substrate.goals",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-19T13:00:16Z",
          "output": {
            "status": "disabled",
            "created": 0,
            "observed": 0,
            "results": []
          },
          "output_hash": "cdfd4de44a28140e686159f34f7b47975954c67e1d1efcef666e985acb136ed8",
          "completed_at": "2026-07-19T13:00:16Z"
        }
      ],
      "completed_at": "2026-07-19T13:00:16Z"
    },
    {
      "id": "WFR-349",
      "schema_version": "1.0",
      "workflow_id": "session.start",
      "workflow_version": 1,
      "definition_hash": "dd0de9444af7b094cc93673d0844fb78c801d87d978cc5f6dd6bf3e3e863917d",
      "plan_hash": "1f4ae0cd6be8385f8a9310e49978bd8d93baa729842eb6df9243665a1b581277",
      "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
      "inputs": {},
      "idempotency_key": "hook:SessionStart:959b68b0-687c-4841-a831-6693fb825497",
      "status": "completed",
      "attempt": 1,
      "created_at": "2026-07-19T13:53:33Z",
      "updated_at": "2026-07-19T13:53:36Z",
      "receipts": [
        {
          "step_id": "mailbox",
          "action": "requests.pull",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "ab8a35139cfd3f5821ebc5138c9a44c899b54e4036790654ff120e79c7ab6223",
          "completed_at": "2026-07-19T13:53:34Z"
        },
        {
          "step_id": "config",
          "action": "config.audit",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "2c134e188d092fa6eead2bd0c2b6fe037830a0ef8d4dbea4fc6aa8b573ad301b",
          "completed_at": "2026-07-19T13:53:34Z"
        },
        {
          "step_id": "services",
          "action": "services.audit",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "13dcc58bd528f3efa3e6e0fa0853a6eedc376f1f3685fbd4869cbb2b60382ee3",
          "completed_at": "2026-07-19T13:53:34Z"
        },
        {
          "step_id": "state",
          "action": "state.consistency",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "5a1c6e5246defb1b6b6b90ff734db95bece2886b408ab112ed9b8e67222d5568",
          "completed_at": "2026-07-19T13:53:35Z"
        },
        {
          "step_id": "status",
          "action": "state.query",
          "input_hash": "a15231a2142a2a9a85355a8b9cbbccffe01a9c9c2c2fd8c2bc2987cdc481564a",
          "output_hash": "7be6a39b7275620a00c9453588c69b2df1c3fe8373dd29bab3edc336d33ceee0",
          "completed_at": "2026-07-19T13:53:35Z"
        },
        {
          "step_id": "substrate",
          "action": "substrate.preflight",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "a6df426290b4549a59eecaa0519ead9bcc50b7fcb25bd2185ff6047960f19ccb",
          "completed_at": "2026-07-19T13:53:35Z"
        },
        {
          "step_id": "notices",
          "action": "substrate.notices",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "38b904a1cf83df048360fb2480571b749fd98d57e11f1afdffb5a74a78166fea",
          "completed_at": "2026-07-19T13:53:36Z"
        },
        {
          "step_id": "goals",
          "action": "substrate.goals",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "cdfd4de44a28140e686159f34f7b47975954c67e1d1efcef666e985acb136ed8",
          "completed_at": "2026-07-19T13:53:36Z"
        }
      ],
      "steps": [
        {
          "id": "mailbox",
          "action": "requests.pull",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-19T13:53:34Z",
          "output": {
            "applied": 0,
            "resolved_ids": [],
            "unmatched": [],
            "mailboxes": [],
            "pruned_outbox": [],
            "consumed_mailboxes": [],
            "outbound": {
              "delivered": 0,
              "mailboxes_published": [],
              "undeliverable": [],
              "pending": []
            },
            "addressed": {
              "delivered": 0,
              "destinations": [],
              "undelivered": [
                {
                  "id": "REQ-030",
                  "state": "not_ours_to_send",
                  "target_repo": "prd-plugin",
                  "reason": "REQ-030 was imported from 'ZeusGrid'; its target_repo records who it was addressed to, not somewhere for us to send it. Reply on its thread instead."
                },
                {
                  "id": "REQ-003",
                  "state": "not_ours_to_send",
                  "target_repo": "prd-plugin",
                  "reason": "REQ-003 was imported from 'ZeusGrid'; its target_repo records who it was addressed to, not somewhere for us to send it. Reply on its thread instead."
                },
                {
                  "id": "REQ-004",
                  "state": "not_ours_to_send",
                  "target_repo": "prd-plugin",
                  "reason": "REQ-004 was imported from 'ZeusGrid'; its target_repo records who it was addressed to, not somewhere for us to send it. Reply on its thread instead."
                },
                {
                  "id": "REQ-005",
                  "state": "not_ours_to_send",
                  "target_repo": "prd-plugin",
                  "reason": "REQ-005 was imported from 'GRAPH_LANG'; its target_repo records who it was addressed to, not somewhere for us to send it. Reply on its thread instead."
                },
                {
                  "id": "REQ-002",
                  "state": "self_addressed",
                  "target_repo": "prd-plugin",
                  "reason": "REQ-002 is addressed to this repo ('prd-plugin'); it is already here."
                },
                {
                  "id": "REQ-028",
                  "state": "self_addressed",
                  "target_repo": "prd-plugin",
                  "reason": "REQ-028 is addressed to this repo ('prd-plugin'); it is already here."
                },
                {
                  "id": "REQ-029",
                  "state": "not_ours_to_send",
                  "target_repo": "ai-collab-v3",
                  "reason": "REQ-029 was imported from 'ai-collab-v3'; its target_repo records who it was addressed to, not somewhere for us to send it. Reply on its thread instead."
                },
                {
                  "id": "REQ-138",
                  "state": "terminal",
                  "target_repo": "no-such-repo",
                  "reason": "REQ-138 is 'rejected'; a closed request is not delivered. Reopen it or file a new one if it still needs to travel."
                }
              ],
              "advisories": []
            }
          },
          "output_hash": "ab8a35139cfd3f5821ebc5138c9a44c899b54e4036790654ff120e79c7ab6223",
          "completed_at": "2026-07-19T13:53:34Z"
        },
        {
          "id": "config",
          "action": "config.audit",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-19T13:53:34Z",
          "output": {
            "status": "ok",
            "summary": {
              "settings": 207,
              "mutable": 197,
              "read_only_or_managed": 10,
              "unclassified": 0,
              "unknown": 0,
              "invalid": 0,
              "missing_using_defaults": 0
            },
            "unclassified_keys": [],
            "unknown_keys": [],
            "invalid_values": [],
            "missing_using_defaults": []
          },
          "output_hash": "2c134e188d092fa6eead2bd0c2b6fe037830a0ef8d4dbea4fc6aa8b573ad301b",
          "completed_at": "2026-07-19T13:53:34Z"
        },
        {
          "id": "services",
          "action": "services.audit",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-19T13:53:34Z",
          "output": {
            "status": "ok",
            "summary": {
              "critical": 0,
              "high": 0,
              "medium": 0,
              "low": 0
            },
            "findings": []
          },
          "output_hash": "13dcc58bd528f3efa3e6e0fa0853a6eedc376f1f3685fbd4869cbb2b60382ee3",
          "completed_at": "2026-07-19T13:53:34Z"
        },
        {
          "id": "state",
          "action": "state.consistency",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-19T13:53:34Z",
          "output": {
            "status": "ok",
            "repo_root": "D:\\Projects\\prd-plugin",
            "summary": {
              "errors": 0,
              "warnings": 0,
              "infos": 0
            },
            "findings": []
          },
          "output_hash": "5a1c6e5246defb1b6b6b90ff734db95bece2886b408ab112ed9b8e67222d5568",
          "completed_at": "2026-07-19T13:53:35Z"
        },
        {
          "id": "status",
          "action": "state.query",
          "status": "completed",
          "resolved_input_hash": "a15231a2142a2a9a85355a8b9cbbccffe01a9c9c2c2fd8c2bc2987cdc481564a",
          "started_at": "2026-07-19T13:53:35Z",
          "output": {
            "repo_root": "D:\\Projects\\prd-plugin",
            "autonomy_level": "autonomous",
            "requests_by_status": {
              "deferred": 1,
              "implemented": 110,
              "in_review": 2,
              "proposed": 7,
              "rejected": 2
            },
            "active_tracking": [],
            "tracking_branches": [],
            "tracking_branch_counts": {},
            "tracking_branch_errors": [],
            "open_health": [],
            "stale_count": 0,
            "skill_usage": {
              "project-decision-policy": 1,
              "project-request-intake": 1,
              "project-test-driven-implementation": 1,
              "project-verification-before-completion": 1,
              "project-llm-wiki": 1
            },
            "wiki_backfill_pending": false,
            "version_update": null
          },
          "output_hash": "7be6a39b7275620a00c9453588c69b2df1c3fe8373dd29bab3edc336d33ceee0",
          "completed_at": "2026-07-19T13:53:35Z"
        },
        {
          "id": "substrate",
          "action": "substrate.preflight",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-19T13:53:35Z",
          "output": {
            "status": "disabled",
            "services": {
              "status": "ok",
              "summary": {
                "critical": 0,
                "high": 0,
                "medium": 0,
                "low": 0
              },
              "findings": []
            },
            "policy": {
              "configured": {
                "enabled": false,
                "mode": "off",
                "capabilities": [
                  "records",
                  "graph",
                  "events"
                ],
                "contract_version": 2,
                "require_source_refs": true,
                "endpoint": "http://127.0.0.1:47124",
                "manual_url": "http://127.0.0.1:47124/utcp.json",
                "knowledge_browse_url": "http://127.0.0.1:5276",
                "auth_env": "AI_COLLAB_API_KEY",
                "timeout_seconds": 5,
                "max_result_bytes": 1048576,
                "cache_ttl_seconds": 60,
                "fallback": "local",
                "automation": {
                  "discovery_on_session_start": true,
                  "knowledge_recall": true,
                  "memory_recall": true,
                  "context_enrichment": true,
                  "notices_on_session_start": false,
                  "goals_sync": false,
                  "telemetry_on_maintenance": false,
                  "reporting_dispatch": true,
                  "judgment_dispatch": true,
                  "verification_execution": true
                }
              },
              "active": false,
              "effective_mode": "off",
              "effective_capabilities": []
            }
          },
          "output_hash": "a6df426290b4549a59eecaa0519ead9bcc50b7fcb25bd2185ff6047960f19ccb",
          "completed_at": "2026-07-19T13:53:35Z"
        },
        {
          "id": "notices",
          "action": "substrate.notices",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-19T13:53:36Z",
          "output": {
            "status": "disabled"
          },
          "output_hash": "38b904a1cf83df048360fb2480571b749fd98d57e11f1afdffb5a74a78166fea",
          "completed_at": "2026-07-19T13:53:36Z"
        },
        {
          "id": "goals",
          "action": "substrate.goals",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-19T13:53:36Z",
          "output": {
            "status": "disabled",
            "created": 0,
            "observed": 0,
            "results": []
          },
          "output_hash": "cdfd4de44a28140e686159f34f7b47975954c67e1d1efcef666e985acb136ed8",
          "completed_at": "2026-07-19T13:53:36Z"
        }
      ],
      "completed_at": "2026-07-19T13:53:36Z"
    },
    {
      "id": "WFR-350",
      "schema_version": "1.0",
      "workflow_id": "session.start",
      "workflow_version": 1,
      "definition_hash": "dd0de9444af7b094cc93673d0844fb78c801d87d978cc5f6dd6bf3e3e863917d",
      "plan_hash": "1f4ae0cd6be8385f8a9310e49978bd8d93baa729842eb6df9243665a1b581277",
      "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
      "inputs": {},
      "idempotency_key": "hook:SessionStart:7ef7b48e-eed2-4450-a108-cac896f0bdc7",
      "status": "completed",
      "attempt": 1,
      "created_at": "2026-07-19T22:13:34Z",
      "updated_at": "2026-07-19T22:13:39Z",
      "receipts": [
        {
          "step_id": "mailbox",
          "action": "requests.pull",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "ab8a35139cfd3f5821ebc5138c9a44c899b54e4036790654ff120e79c7ab6223",
          "completed_at": "2026-07-19T22:13:34Z"
        },
        {
          "step_id": "config",
          "action": "config.audit",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "2c134e188d092fa6eead2bd0c2b6fe037830a0ef8d4dbea4fc6aa8b573ad301b",
          "completed_at": "2026-07-19T22:13:34Z"
        },
        {
          "step_id": "services",
          "action": "services.audit",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "13dcc58bd528f3efa3e6e0fa0853a6eedc376f1f3685fbd4869cbb2b60382ee3",
          "completed_at": "2026-07-19T22:13:34Z"
        },
        {
          "step_id": "state",
          "action": "state.consistency",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "5a1c6e5246defb1b6b6b90ff734db95bece2886b408ab112ed9b8e67222d5568",
          "completed_at": "2026-07-19T22:13:38Z"
        },
        {
          "step_id": "status",
          "action": "state.query",
          "input_hash": "a15231a2142a2a9a85355a8b9cbbccffe01a9c9c2c2fd8c2bc2987cdc481564a",
          "output_hash": "0ca7c2d437607f64da2eeb60c87b5606d59a4bf8bf0bb6bdeabe6f38a32abd8d",
          "completed_at": "2026-07-19T22:13:38Z"
        },
        {
          "step_id": "substrate",
          "action": "substrate.preflight",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "a6df426290b4549a59eecaa0519ead9bcc50b7fcb25bd2185ff6047960f19ccb",
          "completed_at": "2026-07-19T22:13:38Z"
        },
        {
          "step_id": "notices",
          "action": "substrate.notices",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "38b904a1cf83df048360fb2480571b749fd98d57e11f1afdffb5a74a78166fea",
          "completed_at": "2026-07-19T22:13:39Z"
        },
        {
          "step_id": "goals",
          "action": "substrate.goals",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "cdfd4de44a28140e686159f34f7b47975954c67e1d1efcef666e985acb136ed8",
          "completed_at": "2026-07-19T22:13:39Z"
        }
      ],
      "steps": [
        {
          "id": "mailbox",
          "action": "requests.pull",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-19T22:13:34Z",
          "output": {
            "applied": 0,
            "resolved_ids": [],
            "unmatched": [],
            "mailboxes": [],
            "pruned_outbox": [],
            "consumed_mailboxes": [],
            "outbound": {
              "delivered": 0,
              "mailboxes_published": [],
              "undeliverable": [],
              "pending": []
            },
            "addressed": {
              "delivered": 0,
              "destinations": [],
              "undelivered": [
                {
                  "id": "REQ-030",
                  "state": "not_ours_to_send",
                  "target_repo": "prd-plugin",
                  "reason": "REQ-030 was imported from 'ZeusGrid'; its target_repo records who it was addressed to, not somewhere for us to send it. Reply on its thread instead."
                },
                {
                  "id": "REQ-003",
                  "state": "not_ours_to_send",
                  "target_repo": "prd-plugin",
                  "reason": "REQ-003 was imported from 'ZeusGrid'; its target_repo records who it was addressed to, not somewhere for us to send it. Reply on its thread instead."
                },
                {
                  "id": "REQ-004",
                  "state": "not_ours_to_send",
                  "target_repo": "prd-plugin",
                  "reason": "REQ-004 was imported from 'ZeusGrid'; its target_repo records who it was addressed to, not somewhere for us to send it. Reply on its thread instead."
                },
                {
                  "id": "REQ-005",
                  "state": "not_ours_to_send",
                  "target_repo": "prd-plugin",
                  "reason": "REQ-005 was imported from 'GRAPH_LANG'; its target_repo records who it was addressed to, not somewhere for us to send it. Reply on its thread instead."
                },
                {
                  "id": "REQ-002",
                  "state": "self_addressed",
                  "target_repo": "prd-plugin",
                  "reason": "REQ-002 is addressed to this repo ('prd-plugin'); it is already here."
                },
                {
                  "id": "REQ-028",
                  "state": "self_addressed",
                  "target_repo": "prd-plugin",
                  "reason": "REQ-028 is addressed to this repo ('prd-plugin'); it is already here."
                },
                {
                  "id": "REQ-029",
                  "state": "not_ours_to_send",
                  "target_repo": "ai-collab-v3",
                  "reason": "REQ-029 was imported from 'ai-collab-v3'; its target_repo records who it was addressed to, not somewhere for us to send it. Reply on its thread instead."
                },
                {
                  "id": "REQ-138",
                  "state": "terminal",
                  "target_repo": "no-such-repo",
                  "reason": "REQ-138 is 'rejected'; a closed request is not delivered. Reopen it or file a new one if it still needs to travel."
                }
              ],
              "advisories": []
            }
          },
          "output_hash": "ab8a35139cfd3f5821ebc5138c9a44c899b54e4036790654ff120e79c7ab6223",
          "completed_at": "2026-07-19T22:13:34Z"
        },
        {
          "id": "config",
          "action": "config.audit",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-19T22:13:34Z",
          "output": {
            "status": "ok",
            "summary": {
              "settings": 207,
              "mutable": 197,
              "read_only_or_managed": 10,
              "unclassified": 0,
              "unknown": 0,
              "invalid": 0,
              "missing_using_defaults": 0
            },
            "unclassified_keys": [],
            "unknown_keys": [],
            "invalid_values": [],
            "missing_using_defaults": []
          },
          "output_hash": "2c134e188d092fa6eead2bd0c2b6fe037830a0ef8d4dbea4fc6aa8b573ad301b",
          "completed_at": "2026-07-19T22:13:34Z"
        },
        {
          "id": "services",
          "action": "services.audit",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-19T22:13:34Z",
          "output": {
            "status": "ok",
            "summary": {
              "critical": 0,
              "high": 0,
              "medium": 0,
              "low": 0
            },
            "findings": []
          },
          "output_hash": "13dcc58bd528f3efa3e6e0fa0853a6eedc376f1f3685fbd4869cbb2b60382ee3",
          "completed_at": "2026-07-19T22:13:34Z"
        },
        {
          "id": "state",
          "action": "state.consistency",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-19T22:13:34Z",
          "output": {
            "status": "ok",
            "repo_root": "D:\\Projects\\prd-plugin",
            "summary": {
              "errors": 0,
              "warnings": 0,
              "infos": 0
            },
            "findings": []
          },
          "output_hash": "5a1c6e5246defb1b6b6b90ff734db95bece2886b408ab112ed9b8e67222d5568",
          "completed_at": "2026-07-19T22:13:38Z"
        },
        {
          "id": "status",
          "action": "state.query",
          "status": "completed",
          "resolved_input_hash": "a15231a2142a2a9a85355a8b9cbbccffe01a9c9c2c2fd8c2bc2987cdc481564a",
          "started_at": "2026-07-19T22:13:38Z",
          "output": {
            "repo_root": "D:\\Projects\\prd-plugin",
            "autonomy_level": "autonomous",
            "requests_by_status": {
              "deferred": 1,
              "implemented": 111,
              "in_review": 2,
              "proposed": 8,
              "rejected": 2
            },
            "active_tracking": [],
            "tracking_branches": [],
            "tracking_branch_counts": {},
            "tracking_branch_errors": [],
            "open_health": [],
            "stale_count": 0,
            "skill_usage": {
              "project-decision-policy": 1,
              "project-request-intake": 1,
              "project-test-driven-implementation": 1,
              "project-verification-before-completion": 1,
              "project-llm-wiki": 1,
              "artifact-design": 1
            },
            "wiki_backfill_pending": false,
            "version_update": null
          },
          "output_hash": "0ca7c2d437607f64da2eeb60c87b5606d59a4bf8bf0bb6bdeabe6f38a32abd8d",
          "completed_at": "2026-07-19T22:13:38Z"
        },
        {
          "id": "substrate",
          "action": "substrate.preflight",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-19T22:13:38Z",
          "output": {
            "status": "disabled",
            "services": {
              "status": "ok",
              "summary": {
                "critical": 0,
                "high": 0,
                "medium": 0,
                "low": 0
              },
              "findings": []
            },
            "policy": {
              "configured": {
                "enabled": false,
                "mode": "off",
                "capabilities": [
                  "records",
                  "graph",
                  "events"
                ],
                "contract_version": 2,
                "require_source_refs": true,
                "endpoint": "http://127.0.0.1:47124",
                "manual_url": "http://127.0.0.1:47124/utcp.json",
                "knowledge_browse_url": "http://127.0.0.1:5276",
                "auth_env": "AI_COLLAB_API_KEY",
                "timeout_seconds": 5,
                "max_result_bytes": 1048576,
                "cache_ttl_seconds": 60,
                "fallback": "local",
                "automation": {
                  "discovery_on_session_start": true,
                  "knowledge_recall": true,
                  "memory_recall": true,
                  "context_enrichment": true,
                  "notices_on_session_start": false,
                  "goals_sync": false,
                  "telemetry_on_maintenance": false,
                  "reporting_dispatch": true,
                  "judgment_dispatch": true,
                  "verification_execution": true
                }
              },
              "active": false,
              "effective_mode": "off",
              "effective_capabilities": []
            }
          },
          "output_hash": "a6df426290b4549a59eecaa0519ead9bcc50b7fcb25bd2185ff6047960f19ccb",
          "completed_at": "2026-07-19T22:13:38Z"
        },
        {
          "id": "notices",
          "action": "substrate.notices",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-19T22:13:38Z",
          "output": {
            "status": "disabled"
          },
          "output_hash": "38b904a1cf83df048360fb2480571b749fd98d57e11f1afdffb5a74a78166fea",
          "completed_at": "2026-07-19T22:13:39Z"
        },
        {
          "id": "goals",
          "action": "substrate.goals",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-19T22:13:39Z",
          "output": {
            "status": "disabled",
            "created": 0,
            "observed": 0,
            "results": []
          },
          "output_hash": "cdfd4de44a28140e686159f34f7b47975954c67e1d1efcef666e985acb136ed8",
          "completed_at": "2026-07-19T22:13:39Z"
        }
      ],
      "completed_at": "2026-07-19T22:13:39Z"
    },
    {
      "id": "WFR-351",
      "schema_version": "1.0",
      "workflow_id": "session.start",
      "workflow_version": 1,
      "definition_hash": "dd0de9444af7b094cc93673d0844fb78c801d87d978cc5f6dd6bf3e3e863917d",
      "plan_hash": "1f4ae0cd6be8385f8a9310e49978bd8d93baa729842eb6df9243665a1b581277",
      "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
      "inputs": {},
      "idempotency_key": "hook:SessionStart:7436c3e2-b560-4cff-8cdf-d8c8df7108c3",
      "status": "completed",
      "attempt": 1,
      "created_at": "2026-07-20T05:19:48Z",
      "updated_at": "2026-07-20T05:19:57Z",
      "receipts": [
        {
          "step_id": "mailbox",
          "action": "requests.pull",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "ab8a35139cfd3f5821ebc5138c9a44c899b54e4036790654ff120e79c7ab6223",
          "completed_at": "2026-07-20T05:19:48Z"
        },
        {
          "step_id": "config",
          "action": "config.audit",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "2c134e188d092fa6eead2bd0c2b6fe037830a0ef8d4dbea4fc6aa8b573ad301b",
          "completed_at": "2026-07-20T05:19:49Z"
        },
        {
          "step_id": "services",
          "action": "services.audit",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "13dcc58bd528f3efa3e6e0fa0853a6eedc376f1f3685fbd4869cbb2b60382ee3",
          "completed_at": "2026-07-20T05:19:49Z"
        },
        {
          "step_id": "state",
          "action": "state.consistency",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "5a1c6e5246defb1b6b6b90ff734db95bece2886b408ab112ed9b8e67222d5568",
          "completed_at": "2026-07-20T05:19:56Z"
        },
        {
          "step_id": "status",
          "action": "state.query",
          "input_hash": "a15231a2142a2a9a85355a8b9cbbccffe01a9c9c2c2fd8c2bc2987cdc481564a",
          "output_hash": "0ca7c2d437607f64da2eeb60c87b5606d59a4bf8bf0bb6bdeabe6f38a32abd8d",
          "completed_at": "2026-07-20T05:19:56Z"
        },
        {
          "step_id": "substrate",
          "action": "substrate.preflight",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "a6df426290b4549a59eecaa0519ead9bcc50b7fcb25bd2185ff6047960f19ccb",
          "completed_at": "2026-07-20T05:19:56Z"
        },
        {
          "step_id": "notices",
          "action": "substrate.notices",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "38b904a1cf83df048360fb2480571b749fd98d57e11f1afdffb5a74a78166fea",
          "completed_at": "2026-07-20T05:19:56Z"
        },
        {
          "step_id": "goals",
          "action": "substrate.goals",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "cdfd4de44a28140e686159f34f7b47975954c67e1d1efcef666e985acb136ed8",
          "completed_at": "2026-07-20T05:19:57Z"
        }
      ],
      "steps": [
        {
          "id": "mailbox",
          "action": "requests.pull",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-20T05:19:48Z",
          "output": {
            "applied": 0,
            "resolved_ids": [],
            "unmatched": [],
            "mailboxes": [],
            "pruned_outbox": [],
            "consumed_mailboxes": [],
            "outbound": {
              "delivered": 0,
              "mailboxes_published": [],
              "undeliverable": [],
              "pending": []
            },
            "addressed": {
              "delivered": 0,
              "destinations": [],
              "undelivered": [
                {
                  "id": "REQ-030",
                  "state": "not_ours_to_send",
                  "target_repo": "prd-plugin",
                  "reason": "REQ-030 was imported from 'ZeusGrid'; its target_repo records who it was addressed to, not somewhere for us to send it. Reply on its thread instead."
                },
                {
                  "id": "REQ-003",
                  "state": "not_ours_to_send",
                  "target_repo": "prd-plugin",
                  "reason": "REQ-003 was imported from 'ZeusGrid'; its target_repo records who it was addressed to, not somewhere for us to send it. Reply on its thread instead."
                },
                {
                  "id": "REQ-004",
                  "state": "not_ours_to_send",
                  "target_repo": "prd-plugin",
                  "reason": "REQ-004 was imported from 'ZeusGrid'; its target_repo records who it was addressed to, not somewhere for us to send it. Reply on its thread instead."
                },
                {
                  "id": "REQ-005",
                  "state": "not_ours_to_send",
                  "target_repo": "prd-plugin",
                  "reason": "REQ-005 was imported from 'GRAPH_LANG'; its target_repo records who it was addressed to, not somewhere for us to send it. Reply on its thread instead."
                },
                {
                  "id": "REQ-002",
                  "state": "self_addressed",
                  "target_repo": "prd-plugin",
                  "reason": "REQ-002 is addressed to this repo ('prd-plugin'); it is already here."
                },
                {
                  "id": "REQ-028",
                  "state": "self_addressed",
                  "target_repo": "prd-plugin",
                  "reason": "REQ-028 is addressed to this repo ('prd-plugin'); it is already here."
                },
                {
                  "id": "REQ-029",
                  "state": "not_ours_to_send",
                  "target_repo": "ai-collab-v3",
                  "reason": "REQ-029 was imported from 'ai-collab-v3'; its target_repo records who it was addressed to, not somewhere for us to send it. Reply on its thread instead."
                },
                {
                  "id": "REQ-138",
                  "state": "terminal",
                  "target_repo": "no-such-repo",
                  "reason": "REQ-138 is 'rejected'; a closed request is not delivered. Reopen it or file a new one if it still needs to travel."
                }
              ],
              "advisories": []
            }
          },
          "output_hash": "ab8a35139cfd3f5821ebc5138c9a44c899b54e4036790654ff120e79c7ab6223",
          "completed_at": "2026-07-20T05:19:48Z"
        },
        {
          "id": "config",
          "action": "config.audit",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-20T05:19:49Z",
          "output": {
            "status": "ok",
            "summary": {
              "settings": 207,
              "mutable": 197,
              "read_only_or_managed": 10,
              "unclassified": 0,
              "unknown": 0,
              "invalid": 0,
              "missing_using_defaults": 0
            },
            "unclassified_keys": [],
            "unknown_keys": [],
            "invalid_values": [],
            "missing_using_defaults": []
          },
          "output_hash": "2c134e188d092fa6eead2bd0c2b6fe037830a0ef8d4dbea4fc6aa8b573ad301b",
          "completed_at": "2026-07-20T05:19:49Z"
        },
        {
          "id": "services",
          "action": "services.audit",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-20T05:19:49Z",
          "output": {
            "status": "ok",
            "summary": {
              "critical": 0,
              "high": 0,
              "medium": 0,
              "low": 0
            },
            "findings": []
          },
          "output_hash": "13dcc58bd528f3efa3e6e0fa0853a6eedc376f1f3685fbd4869cbb2b60382ee3",
          "completed_at": "2026-07-20T05:19:49Z"
        },
        {
          "id": "state",
          "action": "state.consistency",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-20T05:19:49Z",
          "output": {
            "status": "ok",
            "repo_root": "D:\\Projects\\prd-plugin",
            "summary": {
              "errors": 0,
              "warnings": 0,
              "infos": 0
            },
            "findings": []
          },
          "output_hash": "5a1c6e5246defb1b6b6b90ff734db95bece2886b408ab112ed9b8e67222d5568",
          "completed_at": "2026-07-20T05:19:56Z"
        },
        {
          "id": "status",
          "action": "state.query",
          "status": "completed",
          "resolved_input_hash": "a15231a2142a2a9a85355a8b9cbbccffe01a9c9c2c2fd8c2bc2987cdc481564a",
          "started_at": "2026-07-20T05:19:56Z",
          "output": {
            "repo_root": "D:\\Projects\\prd-plugin",
            "autonomy_level": "autonomous",
            "requests_by_status": {
              "deferred": 1,
              "implemented": 111,
              "in_review": 2,
              "proposed": 8,
              "rejected": 2
            },
            "active_tracking": [],
            "tracking_branches": [],
            "tracking_branch_counts": {},
            "tracking_branch_errors": [],
            "open_health": [],
            "stale_count": 0,
            "skill_usage": {
              "project-decision-policy": 1,
              "project-request-intake": 1,
              "project-test-driven-implementation": 1,
              "project-verification-before-completion": 1,
              "project-llm-wiki": 1,
              "artifact-design": 1
            },
            "wiki_backfill_pending": false,
            "version_update": null
          },
          "output_hash": "0ca7c2d437607f64da2eeb60c87b5606d59a4bf8bf0bb6bdeabe6f38a32abd8d",
          "completed_at": "2026-07-20T05:19:56Z"
        },
        {
          "id": "substrate",
          "action": "substrate.preflight",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-20T05:19:56Z",
          "output": {
            "status": "disabled",
            "services": {
              "status": "ok",
              "summary": {
                "critical": 0,
                "high": 0,
                "medium": 0,
                "low": 0
              },
              "findings": []
            },
            "policy": {
              "configured": {
                "enabled": false,
                "mode": "off",
                "capabilities": [
                  "records",
                  "graph",
                  "events"
                ],
                "contract_version": 2,
                "require_source_refs": true,
                "endpoint": "http://127.0.0.1:47124",
                "manual_url": "http://127.0.0.1:47124/utcp.json",
                "knowledge_browse_url": "http://127.0.0.1:5276",
                "auth_env": "AI_COLLAB_API_KEY",
                "timeout_seconds": 5,
                "max_result_bytes": 1048576,
                "cache_ttl_seconds": 60,
                "fallback": "local",
                "automation": {
                  "discovery_on_session_start": true,
                  "knowledge_recall": true,
                  "memory_recall": true,
                  "context_enrichment": true,
                  "notices_on_session_start": false,
                  "goals_sync": false,
                  "telemetry_on_maintenance": false,
                  "reporting_dispatch": true,
                  "judgment_dispatch": true,
                  "verification_execution": true
                }
              },
              "active": false,
              "effective_mode": "off",
              "effective_capabilities": []
            }
          },
          "output_hash": "a6df426290b4549a59eecaa0519ead9bcc50b7fcb25bd2185ff6047960f19ccb",
          "completed_at": "2026-07-20T05:19:56Z"
        },
        {
          "id": "notices",
          "action": "substrate.notices",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-20T05:19:56Z",
          "output": {
            "status": "disabled"
          },
          "output_hash": "38b904a1cf83df048360fb2480571b749fd98d57e11f1afdffb5a74a78166fea",
          "completed_at": "2026-07-20T05:19:56Z"
        },
        {
          "id": "goals",
          "action": "substrate.goals",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-20T05:19:57Z",
          "output": {
            "status": "disabled",
            "created": 0,
            "observed": 0,
            "results": []
          },
          "output_hash": "cdfd4de44a28140e686159f34f7b47975954c67e1d1efcef666e985acb136ed8",
          "completed_at": "2026-07-20T05:19:57Z"
        }
      ],
      "completed_at": "2026-07-20T05:19:57Z"
    },
    {
      "id": "WFR-352",
      "schema_version": "1.0",
      "workflow_id": "session.start",
      "workflow_version": 1,
      "definition_hash": "dd0de9444af7b094cc93673d0844fb78c801d87d978cc5f6dd6bf3e3e863917d",
      "plan_hash": "1f4ae0cd6be8385f8a9310e49978bd8d93baa729842eb6df9243665a1b581277",
      "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
      "inputs": {},
      "idempotency_key": "hook:SessionStart:b6940243-0a14-4146-9cfa-5410d13d8e44",
      "status": "completed",
      "attempt": 1,
      "created_at": "2026-07-20T08:29:31Z",
      "updated_at": "2026-07-20T08:29:34Z",
      "receipts": [
        {
          "step_id": "mailbox",
          "action": "requests.pull",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "ab8a35139cfd3f5821ebc5138c9a44c899b54e4036790654ff120e79c7ab6223",
          "completed_at": "2026-07-20T08:29:32Z"
        },
        {
          "step_id": "config",
          "action": "config.audit",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "2c134e188d092fa6eead2bd0c2b6fe037830a0ef8d4dbea4fc6aa8b573ad301b",
          "completed_at": "2026-07-20T08:29:32Z"
        },
        {
          "step_id": "services",
          "action": "services.audit",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "13dcc58bd528f3efa3e6e0fa0853a6eedc376f1f3685fbd4869cbb2b60382ee3",
          "completed_at": "2026-07-20T08:29:32Z"
        },
        {
          "step_id": "state",
          "action": "state.consistency",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "5a1c6e5246defb1b6b6b90ff734db95bece2886b408ab112ed9b8e67222d5568",
          "completed_at": "2026-07-20T08:29:33Z"
        },
        {
          "step_id": "status",
          "action": "state.query",
          "input_hash": "a15231a2142a2a9a85355a8b9cbbccffe01a9c9c2c2fd8c2bc2987cdc481564a",
          "output_hash": "0ca7c2d437607f64da2eeb60c87b5606d59a4bf8bf0bb6bdeabe6f38a32abd8d",
          "completed_at": "2026-07-20T08:29:34Z"
        },
        {
          "step_id": "substrate",
          "action": "substrate.preflight",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "a6df426290b4549a59eecaa0519ead9bcc50b7fcb25bd2185ff6047960f19ccb",
          "completed_at": "2026-07-20T08:29:34Z"
        },
        {
          "step_id": "notices",
          "action": "substrate.notices",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "38b904a1cf83df048360fb2480571b749fd98d57e11f1afdffb5a74a78166fea",
          "completed_at": "2026-07-20T08:29:34Z"
        },
        {
          "step_id": "goals",
          "action": "substrate.goals",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "cdfd4de44a28140e686159f34f7b47975954c67e1d1efcef666e985acb136ed8",
          "completed_at": "2026-07-20T08:29:34Z"
        }
      ],
      "steps": [
        {
          "id": "mailbox",
          "action": "requests.pull",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-20T08:29:32Z",
          "output": {
            "applied": 0,
            "resolved_ids": [],
            "unmatched": [],
            "mailboxes": [],
            "pruned_outbox": [],
            "consumed_mailboxes": [],
            "outbound": {
              "delivered": 0,
              "mailboxes_published": [],
              "undeliverable": [],
              "pending": []
            },
            "addressed": {
              "delivered": 0,
              "destinations": [],
              "undelivered": [
                {
                  "id": "REQ-030",
                  "state": "not_ours_to_send",
                  "target_repo": "prd-plugin",
                  "reason": "REQ-030 was imported from 'ZeusGrid'; its target_repo records who it was addressed to, not somewhere for us to send it. Reply on its thread instead."
                },
                {
                  "id": "REQ-003",
                  "state": "not_ours_to_send",
                  "target_repo": "prd-plugin",
                  "reason": "REQ-003 was imported from 'ZeusGrid'; its target_repo records who it was addressed to, not somewhere for us to send it. Reply on its thread instead."
                },
                {
                  "id": "REQ-004",
                  "state": "not_ours_to_send",
                  "target_repo": "prd-plugin",
                  "reason": "REQ-004 was imported from 'ZeusGrid'; its target_repo records who it was addressed to, not somewhere for us to send it. Reply on its thread instead."
                },
                {
                  "id": "REQ-005",
                  "state": "not_ours_to_send",
                  "target_repo": "prd-plugin",
                  "reason": "REQ-005 was imported from 'GRAPH_LANG'; its target_repo records who it was addressed to, not somewhere for us to send it. Reply on its thread instead."
                },
                {
                  "id": "REQ-002",
                  "state": "self_addressed",
                  "target_repo": "prd-plugin",
                  "reason": "REQ-002 is addressed to this repo ('prd-plugin'); it is already here."
                },
                {
                  "id": "REQ-028",
                  "state": "self_addressed",
                  "target_repo": "prd-plugin",
                  "reason": "REQ-028 is addressed to this repo ('prd-plugin'); it is already here."
                },
                {
                  "id": "REQ-029",
                  "state": "not_ours_to_send",
                  "target_repo": "ai-collab-v3",
                  "reason": "REQ-029 was imported from 'ai-collab-v3'; its target_repo records who it was addressed to, not somewhere for us to send it. Reply on its thread instead."
                },
                {
                  "id": "REQ-138",
                  "state": "terminal",
                  "target_repo": "no-such-repo",
                  "reason": "REQ-138 is 'rejected'; a closed request is not delivered. Reopen it or file a new one if it still needs to travel."
                }
              ],
              "advisories": []
            }
          },
          "output_hash": "ab8a35139cfd3f5821ebc5138c9a44c899b54e4036790654ff120e79c7ab6223",
          "completed_at": "2026-07-20T08:29:32Z"
        },
        {
          "id": "config",
          "action": "config.audit",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-20T08:29:32Z",
          "output": {
            "status": "ok",
            "summary": {
              "settings": 207,
              "mutable": 197,
              "read_only_or_managed": 10,
              "unclassified": 0,
              "unknown": 0,
              "invalid": 0,
              "missing_using_defaults": 0
            },
            "unclassified_keys": [],
            "unknown_keys": [],
            "invalid_values": [],
            "missing_using_defaults": []
          },
          "output_hash": "2c134e188d092fa6eead2bd0c2b6fe037830a0ef8d4dbea4fc6aa8b573ad301b",
          "completed_at": "2026-07-20T08:29:32Z"
        },
        {
          "id": "services",
          "action": "services.audit",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-20T08:29:32Z",
          "output": {
            "status": "ok",
            "summary": {
              "critical": 0,
              "high": 0,
              "medium": 0,
              "low": 0
            },
            "findings": []
          },
          "output_hash": "13dcc58bd528f3efa3e6e0fa0853a6eedc376f1f3685fbd4869cbb2b60382ee3",
          "completed_at": "2026-07-20T08:29:32Z"
        },
        {
          "id": "state",
          "action": "state.consistency",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-20T08:29:32Z",
          "output": {
            "status": "ok",
            "repo_root": "D:\\Projects\\prd-plugin",
            "summary": {
              "errors": 0,
              "warnings": 0,
              "infos": 0
            },
            "findings": []
          },
          "output_hash": "5a1c6e5246defb1b6b6b90ff734db95bece2886b408ab112ed9b8e67222d5568",
          "completed_at": "2026-07-20T08:29:33Z"
        },
        {
          "id": "status",
          "action": "state.query",
          "status": "completed",
          "resolved_input_hash": "a15231a2142a2a9a85355a8b9cbbccffe01a9c9c2c2fd8c2bc2987cdc481564a",
          "started_at": "2026-07-20T08:29:33Z",
          "output": {
            "repo_root": "D:\\Projects\\prd-plugin",
            "autonomy_level": "autonomous",
            "requests_by_status": {
              "deferred": 1,
              "implemented": 111,
              "in_review": 2,
              "proposed": 8,
              "rejected": 2
            },
            "active_tracking": [],
            "tracking_branches": [],
            "tracking_branch_counts": {},
            "tracking_branch_errors": [],
            "open_health": [],
            "stale_count": 0,
            "skill_usage": {
              "project-decision-policy": 1,
              "project-request-intake": 1,
              "project-test-driven-implementation": 1,
              "project-verification-before-completion": 1,
              "project-llm-wiki": 1,
              "artifact-design": 1
            },
            "wiki_backfill_pending": false,
            "version_update": null
          },
          "output_hash": "0ca7c2d437607f64da2eeb60c87b5606d59a4bf8bf0bb6bdeabe6f38a32abd8d",
          "completed_at": "2026-07-20T08:29:34Z"
        },
        {
          "id": "substrate",
          "action": "substrate.preflight",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-20T08:29:34Z",
          "output": {
            "status": "disabled",
            "services": {
              "status": "ok",
              "summary": {
                "critical": 0,
                "high": 0,
                "medium": 0,
                "low": 0
              },
              "findings": []
            },
            "policy": {
              "configured": {
                "enabled": false,
                "mode": "off",
                "capabilities": [
                  "records",
                  "graph",
                  "events"
                ],
                "contract_version": 2,
                "require_source_refs": true,
                "endpoint": "http://127.0.0.1:47124",
                "manual_url": "http://127.0.0.1:47124/utcp.json",
                "knowledge_browse_url": "http://127.0.0.1:5276",
                "auth_env": "AI_COLLAB_API_KEY",
                "timeout_seconds": 5,
                "max_result_bytes": 1048576,
                "cache_ttl_seconds": 60,
                "fallback": "local",
                "automation": {
                  "discovery_on_session_start": true,
                  "knowledge_recall": true,
                  "memory_recall": true,
                  "context_enrichment": true,
                  "notices_on_session_start": false,
                  "goals_sync": false,
                  "telemetry_on_maintenance": false,
                  "reporting_dispatch": true,
                  "judgment_dispatch": true,
                  "verification_execution": true
                }
              },
              "active": false,
              "effective_mode": "off",
              "effective_capabilities": []
            }
          },
          "output_hash": "a6df426290b4549a59eecaa0519ead9bcc50b7fcb25bd2185ff6047960f19ccb",
          "completed_at": "2026-07-20T08:29:34Z"
        },
        {
          "id": "notices",
          "action": "substrate.notices",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-20T08:29:34Z",
          "output": {
            "status": "disabled"
          },
          "output_hash": "38b904a1cf83df048360fb2480571b749fd98d57e11f1afdffb5a74a78166fea",
          "completed_at": "2026-07-20T08:29:34Z"
        },
        {
          "id": "goals",
          "action": "substrate.goals",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-20T08:29:34Z",
          "output": {
            "status": "disabled",
            "created": 0,
            "observed": 0,
            "results": []
          },
          "output_hash": "cdfd4de44a28140e686159f34f7b47975954c67e1d1efcef666e985acb136ed8",
          "completed_at": "2026-07-20T08:29:34Z"
        }
      ],
      "completed_at": "2026-07-20T08:29:34Z"
    },
    {
      "id": "WFR-353",
      "schema_version": "1.0",
      "workflow_id": "session.start",
      "workflow_version": 1,
      "definition_hash": "dd0de9444af7b094cc93673d0844fb78c801d87d978cc5f6dd6bf3e3e863917d",
      "plan_hash": "1f4ae0cd6be8385f8a9310e49978bd8d93baa729842eb6df9243665a1b581277",
      "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
      "inputs": {},
      "idempotency_key": "hook:SessionStart:b3a7dc0b-7de4-40dd-9420-cce0a79cde3f",
      "status": "completed",
      "attempt": 1,
      "created_at": "2026-07-20T12:17:32Z",
      "updated_at": "2026-07-20T12:17:35Z",
      "receipts": [
        {
          "step_id": "mailbox",
          "action": "requests.pull",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "ab8a35139cfd3f5821ebc5138c9a44c899b54e4036790654ff120e79c7ab6223",
          "completed_at": "2026-07-20T12:17:33Z"
        },
        {
          "step_id": "config",
          "action": "config.audit",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "2c134e188d092fa6eead2bd0c2b6fe037830a0ef8d4dbea4fc6aa8b573ad301b",
          "completed_at": "2026-07-20T12:17:33Z"
        },
        {
          "step_id": "services",
          "action": "services.audit",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "13dcc58bd528f3efa3e6e0fa0853a6eedc376f1f3685fbd4869cbb2b60382ee3",
          "completed_at": "2026-07-20T12:17:33Z"
        },
        {
          "step_id": "state",
          "action": "state.consistency",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "5a1c6e5246defb1b6b6b90ff734db95bece2886b408ab112ed9b8e67222d5568",
          "completed_at": "2026-07-20T12:17:34Z"
        },
        {
          "step_id": "status",
          "action": "state.query",
          "input_hash": "a15231a2142a2a9a85355a8b9cbbccffe01a9c9c2c2fd8c2bc2987cdc481564a",
          "output_hash": "0ca7c2d437607f64da2eeb60c87b5606d59a4bf8bf0bb6bdeabe6f38a32abd8d",
          "completed_at": "2026-07-20T12:17:34Z"
        },
        {
          "step_id": "substrate",
          "action": "substrate.preflight",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "a6df426290b4549a59eecaa0519ead9bcc50b7fcb25bd2185ff6047960f19ccb",
          "completed_at": "2026-07-20T12:17:35Z"
        },
        {
          "step_id": "notices",
          "action": "substrate.notices",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "38b904a1cf83df048360fb2480571b749fd98d57e11f1afdffb5a74a78166fea",
          "completed_at": "2026-07-20T12:17:35Z"
        },
        {
          "step_id": "goals",
          "action": "substrate.goals",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "cdfd4de44a28140e686159f34f7b47975954c67e1d1efcef666e985acb136ed8",
          "completed_at": "2026-07-20T12:17:35Z"
        }
      ],
      "steps": [
        {
          "id": "mailbox",
          "action": "requests.pull",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-20T12:17:33Z",
          "output": {
            "applied": 0,
            "resolved_ids": [],
            "unmatched": [],
            "mailboxes": [],
            "pruned_outbox": [],
            "consumed_mailboxes": [],
            "outbound": {
              "delivered": 0,
              "mailboxes_published": [],
              "undeliverable": [],
              "pending": []
            },
            "addressed": {
              "delivered": 0,
              "destinations": [],
              "undelivered": [
                {
                  "id": "REQ-030",
                  "state": "not_ours_to_send",
                  "target_repo": "prd-plugin",
                  "reason": "REQ-030 was imported from 'ZeusGrid'; its target_repo records who it was addressed to, not somewhere for us to send it. Reply on its thread instead."
                },
                {
                  "id": "REQ-003",
                  "state": "not_ours_to_send",
                  "target_repo": "prd-plugin",
                  "reason": "REQ-003 was imported from 'ZeusGrid'; its target_repo records who it was addressed to, not somewhere for us to send it. Reply on its thread instead."
                },
                {
                  "id": "REQ-004",
                  "state": "not_ours_to_send",
                  "target_repo": "prd-plugin",
                  "reason": "REQ-004 was imported from 'ZeusGrid'; its target_repo records who it was addressed to, not somewhere for us to send it. Reply on its thread instead."
                },
                {
                  "id": "REQ-005",
                  "state": "not_ours_to_send",
                  "target_repo": "prd-plugin",
                  "reason": "REQ-005 was imported from 'GRAPH_LANG'; its target_repo records who it was addressed to, not somewhere for us to send it. Reply on its thread instead."
                },
                {
                  "id": "REQ-002",
                  "state": "self_addressed",
                  "target_repo": "prd-plugin",
                  "reason": "REQ-002 is addressed to this repo ('prd-plugin'); it is already here."
                },
                {
                  "id": "REQ-028",
                  "state": "self_addressed",
                  "target_repo": "prd-plugin",
                  "reason": "REQ-028 is addressed to this repo ('prd-plugin'); it is already here."
                },
                {
                  "id": "REQ-029",
                  "state": "not_ours_to_send",
                  "target_repo": "ai-collab-v3",
                  "reason": "REQ-029 was imported from 'ai-collab-v3'; its target_repo records who it was addressed to, not somewhere for us to send it. Reply on its thread instead."
                },
                {
                  "id": "REQ-138",
                  "state": "terminal",
                  "target_repo": "no-such-repo",
                  "reason": "REQ-138 is 'rejected'; a closed request is not delivered. Reopen it or file a new one if it still needs to travel."
                }
              ],
              "advisories": []
            }
          },
          "output_hash": "ab8a35139cfd3f5821ebc5138c9a44c899b54e4036790654ff120e79c7ab6223",
          "completed_at": "2026-07-20T12:17:33Z"
        },
        {
          "id": "config",
          "action": "config.audit",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-20T12:17:33Z",
          "output": {
            "status": "ok",
            "summary": {
              "settings": 207,
              "mutable": 197,
              "read_only_or_managed": 10,
              "unclassified": 0,
              "unknown": 0,
              "invalid": 0,
              "missing_using_defaults": 0
            },
            "unclassified_keys": [],
            "unknown_keys": [],
            "invalid_values": [],
            "missing_using_defaults": []
          },
          "output_hash": "2c134e188d092fa6eead2bd0c2b6fe037830a0ef8d4dbea4fc6aa8b573ad301b",
          "completed_at": "2026-07-20T12:17:33Z"
        },
        {
          "id": "services",
          "action": "services.audit",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-20T12:17:33Z",
          "output": {
            "status": "ok",
            "summary": {
              "critical": 0,
              "high": 0,
              "medium": 0,
              "low": 0
            },
            "findings": []
          },
          "output_hash": "13dcc58bd528f3efa3e6e0fa0853a6eedc376f1f3685fbd4869cbb2b60382ee3",
          "completed_at": "2026-07-20T12:17:33Z"
        },
        {
          "id": "state",
          "action": "state.consistency",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-20T12:17:33Z",
          "output": {
            "status": "ok",
            "repo_root": "D:\\Projects\\prd-plugin",
            "summary": {
              "errors": 0,
              "warnings": 0,
              "infos": 0
            },
            "findings": []
          },
          "output_hash": "5a1c6e5246defb1b6b6b90ff734db95bece2886b408ab112ed9b8e67222d5568",
          "completed_at": "2026-07-20T12:17:34Z"
        },
        {
          "id": "status",
          "action": "state.query",
          "status": "completed",
          "resolved_input_hash": "a15231a2142a2a9a85355a8b9cbbccffe01a9c9c2c2fd8c2bc2987cdc481564a",
          "started_at": "2026-07-20T12:17:34Z",
          "output": {
            "repo_root": "D:\\Projects\\prd-plugin",
            "autonomy_level": "autonomous",
            "requests_by_status": {
              "deferred": 1,
              "implemented": 111,
              "in_review": 2,
              "proposed": 8,
              "rejected": 2
            },
            "active_tracking": [],
            "tracking_branches": [],
            "tracking_branch_counts": {},
            "tracking_branch_errors": [],
            "open_health": [],
            "stale_count": 0,
            "skill_usage": {
              "project-decision-policy": 1,
              "project-request-intake": 1,
              "project-test-driven-implementation": 1,
              "project-verification-before-completion": 1,
              "project-llm-wiki": 1,
              "artifact-design": 1
            },
            "wiki_backfill_pending": false,
            "version_update": null
          },
          "output_hash": "0ca7c2d437607f64da2eeb60c87b5606d59a4bf8bf0bb6bdeabe6f38a32abd8d",
          "completed_at": "2026-07-20T12:17:34Z"
        },
        {
          "id": "substrate",
          "action": "substrate.preflight",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-20T12:17:34Z",
          "output": {
            "status": "disabled",
            "services": {
              "status": "ok",
              "summary": {
                "critical": 0,
                "high": 0,
                "medium": 0,
                "low": 0
              },
              "findings": []
            },
            "policy": {
              "configured": {
                "enabled": false,
                "mode": "off",
                "capabilities": [
                  "records",
                  "graph",
                  "events"
                ],
                "contract_version": 2,
                "require_source_refs": true,
                "endpoint": "http://127.0.0.1:47124",
                "manual_url": "http://127.0.0.1:47124/utcp.json",
                "knowledge_browse_url": "http://127.0.0.1:5276",
                "auth_env": "AI_COLLAB_API_KEY",
                "timeout_seconds": 5,
                "max_result_bytes": 1048576,
                "cache_ttl_seconds": 60,
                "fallback": "local",
                "automation": {
                  "discovery_on_session_start": true,
                  "knowledge_recall": true,
                  "memory_recall": true,
                  "context_enrichment": true,
                  "notices_on_session_start": false,
                  "goals_sync": false,
                  "telemetry_on_maintenance": false,
                  "reporting_dispatch": true,
                  "judgment_dispatch": true,
                  "verification_execution": true
                }
              },
              "active": false,
              "effective_mode": "off",
              "effective_capabilities": []
            }
          },
          "output_hash": "a6df426290b4549a59eecaa0519ead9bcc50b7fcb25bd2185ff6047960f19ccb",
          "completed_at": "2026-07-20T12:17:35Z"
        },
        {
          "id": "notices",
          "action": "substrate.notices",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-20T12:17:35Z",
          "output": {
            "status": "disabled"
          },
          "output_hash": "38b904a1cf83df048360fb2480571b749fd98d57e11f1afdffb5a74a78166fea",
          "completed_at": "2026-07-20T12:17:35Z"
        },
        {
          "id": "goals",
          "action": "substrate.goals",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-20T12:17:35Z",
          "output": {
            "status": "disabled",
            "created": 0,
            "observed": 0,
            "results": []
          },
          "output_hash": "cdfd4de44a28140e686159f34f7b47975954c67e1d1efcef666e985acb136ed8",
          "completed_at": "2026-07-20T12:17:35Z"
        }
      ],
      "completed_at": "2026-07-20T12:17:35Z"
    },
    {
      "id": "WFR-354",
      "schema_version": "1.0",
      "workflow_id": "session.start",
      "workflow_version": 1,
      "definition_hash": "dd0de9444af7b094cc93673d0844fb78c801d87d978cc5f6dd6bf3e3e863917d",
      "plan_hash": "1f4ae0cd6be8385f8a9310e49978bd8d93baa729842eb6df9243665a1b581277",
      "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
      "inputs": {},
      "idempotency_key": "hook:SessionStart:86df31f5-4028-4366-a125-ca471740eb9f",
      "status": "completed",
      "attempt": 1,
      "created_at": "2026-07-20T16:16:18Z",
      "updated_at": "2026-07-20T16:16:22Z",
      "receipts": [
        {
          "step_id": "mailbox",
          "action": "requests.pull",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "ab8a35139cfd3f5821ebc5138c9a44c899b54e4036790654ff120e79c7ab6223",
          "completed_at": "2026-07-20T16:16:19Z"
        },
        {
          "step_id": "config",
          "action": "config.audit",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "2c134e188d092fa6eead2bd0c2b6fe037830a0ef8d4dbea4fc6aa8b573ad301b",
          "completed_at": "2026-07-20T16:16:19Z"
        },
        {
          "step_id": "services",
          "action": "services.audit",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "13dcc58bd528f3efa3e6e0fa0853a6eedc376f1f3685fbd4869cbb2b60382ee3",
          "completed_at": "2026-07-20T16:16:19Z"
        },
        {
          "step_id": "state",
          "action": "state.consistency",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "5a1c6e5246defb1b6b6b90ff734db95bece2886b408ab112ed9b8e67222d5568",
          "completed_at": "2026-07-20T16:16:21Z"
        },
        {
          "step_id": "status",
          "action": "state.query",
          "input_hash": "a15231a2142a2a9a85355a8b9cbbccffe01a9c9c2c2fd8c2bc2987cdc481564a",
          "output_hash": "db7208aa723883e6c4bbde8ff768ee65b2b730a8588503eb7a40574ac36aac20",
          "completed_at": "2026-07-20T16:16:22Z"
        },
        {
          "step_id": "substrate",
          "action": "substrate.preflight",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "a6df426290b4549a59eecaa0519ead9bcc50b7fcb25bd2185ff6047960f19ccb",
          "completed_at": "2026-07-20T16:16:22Z"
        },
        {
          "step_id": "notices",
          "action": "substrate.notices",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "38b904a1cf83df048360fb2480571b749fd98d57e11f1afdffb5a74a78166fea",
          "completed_at": "2026-07-20T16:16:22Z"
        },
        {
          "step_id": "goals",
          "action": "substrate.goals",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "cdfd4de44a28140e686159f34f7b47975954c67e1d1efcef666e985acb136ed8",
          "completed_at": "2026-07-20T16:16:22Z"
        }
      ],
      "steps": [
        {
          "id": "mailbox",
          "action": "requests.pull",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-20T16:16:19Z",
          "output": {
            "applied": 0,
            "resolved_ids": [],
            "unmatched": [],
            "mailboxes": [],
            "pruned_outbox": [],
            "consumed_mailboxes": [],
            "outbound": {
              "delivered": 0,
              "mailboxes_published": [],
              "undeliverable": [],
              "pending": []
            },
            "addressed": {
              "delivered": 0,
              "destinations": [],
              "undelivered": [
                {
                  "id": "REQ-030",
                  "state": "not_ours_to_send",
                  "target_repo": "prd-plugin",
                  "reason": "REQ-030 was imported from 'ZeusGrid'; its target_repo records who it was addressed to, not somewhere for us to send it. Reply on its thread instead."
                },
                {
                  "id": "REQ-003",
                  "state": "not_ours_to_send",
                  "target_repo": "prd-plugin",
                  "reason": "REQ-003 was imported from 'ZeusGrid'; its target_repo records who it was addressed to, not somewhere for us to send it. Reply on its thread instead."
                },
                {
                  "id": "REQ-004",
                  "state": "not_ours_to_send",
                  "target_repo": "prd-plugin",
                  "reason": "REQ-004 was imported from 'ZeusGrid'; its target_repo records who it was addressed to, not somewhere for us to send it. Reply on its thread instead."
                },
                {
                  "id": "REQ-005",
                  "state": "not_ours_to_send",
                  "target_repo": "prd-plugin",
                  "reason": "REQ-005 was imported from 'GRAPH_LANG'; its target_repo records who it was addressed to, not somewhere for us to send it. Reply on its thread instead."
                },
                {
                  "id": "REQ-002",
                  "state": "self_addressed",
                  "target_repo": "prd-plugin",
                  "reason": "REQ-002 is addressed to this repo ('prd-plugin'); it is already here."
                },
                {
                  "id": "REQ-028",
                  "state": "self_addressed",
                  "target_repo": "prd-plugin",
                  "reason": "REQ-028 is addressed to this repo ('prd-plugin'); it is already here."
                },
                {
                  "id": "REQ-029",
                  "state": "not_ours_to_send",
                  "target_repo": "ai-collab-v3",
                  "reason": "REQ-029 was imported from 'ai-collab-v3'; its target_repo records who it was addressed to, not somewhere for us to send it. Reply on its thread instead."
                },
                {
                  "id": "REQ-138",
                  "state": "terminal",
                  "target_repo": "no-such-repo",
                  "reason": "REQ-138 is 'rejected'; a closed request is not delivered. Reopen it or file a new one if it still needs to travel."
                }
              ],
              "advisories": []
            }
          },
          "output_hash": "ab8a35139cfd3f5821ebc5138c9a44c899b54e4036790654ff120e79c7ab6223",
          "completed_at": "2026-07-20T16:16:19Z"
        },
        {
          "id": "config",
          "action": "config.audit",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-20T16:16:19Z",
          "output": {
            "status": "ok",
            "summary": {
              "settings": 207,
              "mutable": 197,
              "read_only_or_managed": 10,
              "unclassified": 0,
              "unknown": 0,
              "invalid": 0,
              "missing_using_defaults": 0
            },
            "unclassified_keys": [],
            "unknown_keys": [],
            "invalid_values": [],
            "missing_using_defaults": []
          },
          "output_hash": "2c134e188d092fa6eead2bd0c2b6fe037830a0ef8d4dbea4fc6aa8b573ad301b",
          "completed_at": "2026-07-20T16:16:19Z"
        },
        {
          "id": "services",
          "action": "services.audit",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-20T16:16:19Z",
          "output": {
            "status": "ok",
            "summary": {
              "critical": 0,
              "high": 0,
              "medium": 0,
              "low": 0
            },
            "findings": []
          },
          "output_hash": "13dcc58bd528f3efa3e6e0fa0853a6eedc376f1f3685fbd4869cbb2b60382ee3",
          "completed_at": "2026-07-20T16:16:19Z"
        },
        {
          "id": "state",
          "action": "state.consistency",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-20T16:16:19Z",
          "output": {
            "status": "ok",
            "repo_root": "D:\\Projects\\prd-plugin",
            "summary": {
              "errors": 0,
              "warnings": 0,
              "infos": 0
            },
            "findings": []
          },
          "output_hash": "5a1c6e5246defb1b6b6b90ff734db95bece2886b408ab112ed9b8e67222d5568",
          "completed_at": "2026-07-20T16:16:21Z"
        },
        {
          "id": "status",
          "action": "state.query",
          "status": "completed",
          "resolved_input_hash": "a15231a2142a2a9a85355a8b9cbbccffe01a9c9c2c2fd8c2bc2987cdc481564a",
          "started_at": "2026-07-20T16:16:22Z",
          "output": {
            "repo_root": "D:\\Projects\\prd-plugin",
            "autonomy_level": "autonomous",
            "requests_by_status": {
              "deferred": 1,
              "implemented": 113,
              "in_review": 2,
              "proposed": 9,
              "rejected": 2
            },
            "active_tracking": [],
            "tracking_branches": [],
            "tracking_branch_counts": {},
            "tracking_branch_errors": [],
            "open_health": [],
            "stale_count": 0,
            "skill_usage": {
              "project-llm-wiki": 2,
              "project-decision-policy": 1,
              "project-request-intake": 1,
              "project-test-driven-implementation": 1,
              "project-verification-before-completion": 1,
              "artifact-design": 1
            },
            "wiki_backfill_pending": false,
            "version_update": null
          },
          "output_hash": "db7208aa723883e6c4bbde8ff768ee65b2b730a8588503eb7a40574ac36aac20",
          "completed_at": "2026-07-20T16:16:22Z"
        },
        {
          "id": "substrate",
          "action": "substrate.preflight",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-20T16:16:22Z",
          "output": {
            "status": "disabled",
            "services": {
              "status": "ok",
              "summary": {
                "critical": 0,
                "high": 0,
                "medium": 0,
                "low": 0
              },
              "findings": []
            },
            "policy": {
              "configured": {
                "enabled": false,
                "mode": "off",
                "capabilities": [
                  "records",
                  "graph",
                  "events"
                ],
                "contract_version": 2,
                "require_source_refs": true,
                "endpoint": "http://127.0.0.1:47124",
                "manual_url": "http://127.0.0.1:47124/utcp.json",
                "knowledge_browse_url": "http://127.0.0.1:5276",
                "auth_env": "AI_COLLAB_API_KEY",
                "timeout_seconds": 5,
                "max_result_bytes": 1048576,
                "cache_ttl_seconds": 60,
                "fallback": "local",
                "automation": {
                  "discovery_on_session_start": true,
                  "knowledge_recall": true,
                  "memory_recall": true,
                  "context_enrichment": true,
                  "notices_on_session_start": false,
                  "goals_sync": false,
                  "telemetry_on_maintenance": false,
                  "reporting_dispatch": true,
                  "judgment_dispatch": true,
                  "verification_execution": true
                }
              },
              "active": false,
              "effective_mode": "off",
              "effective_capabilities": []
            }
          },
          "output_hash": "a6df426290b4549a59eecaa0519ead9bcc50b7fcb25bd2185ff6047960f19ccb",
          "completed_at": "2026-07-20T16:16:22Z"
        },
        {
          "id": "notices",
          "action": "substrate.notices",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-20T16:16:22Z",
          "output": {
            "status": "disabled"
          },
          "output_hash": "38b904a1cf83df048360fb2480571b749fd98d57e11f1afdffb5a74a78166fea",
          "completed_at": "2026-07-20T16:16:22Z"
        },
        {
          "id": "goals",
          "action": "substrate.goals",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-20T16:16:22Z",
          "output": {
            "status": "disabled",
            "created": 0,
            "observed": 0,
            "results": []
          },
          "output_hash": "cdfd4de44a28140e686159f34f7b47975954c67e1d1efcef666e985acb136ed8",
          "completed_at": "2026-07-20T16:16:22Z"
        }
      ],
      "completed_at": "2026-07-20T16:16:22Z"
    },
    {
      "id": "WFR-355",
      "schema_version": "1.0",
      "workflow_id": "session.start",
      "workflow_version": 1,
      "definition_hash": "dd0de9444af7b094cc93673d0844fb78c801d87d978cc5f6dd6bf3e3e863917d",
      "plan_hash": "1f4ae0cd6be8385f8a9310e49978bd8d93baa729842eb6df9243665a1b581277",
      "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
      "inputs": {},
      "idempotency_key": "hook:SessionStart:202929e2-de7e-4583-ab19-0479c028cc71",
      "status": "completed",
      "attempt": 1,
      "created_at": "2026-07-20T17:12:23Z",
      "updated_at": "2026-07-20T17:12:28Z",
      "receipts": [
        {
          "step_id": "mailbox",
          "action": "requests.pull",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "ab8a35139cfd3f5821ebc5138c9a44c899b54e4036790654ff120e79c7ab6223",
          "completed_at": "2026-07-20T17:12:24Z"
        },
        {
          "step_id": "config",
          "action": "config.audit",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "2c134e188d092fa6eead2bd0c2b6fe037830a0ef8d4dbea4fc6aa8b573ad301b",
          "completed_at": "2026-07-20T17:12:24Z"
        },
        {
          "step_id": "services",
          "action": "services.audit",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "13dcc58bd528f3efa3e6e0fa0853a6eedc376f1f3685fbd4869cbb2b60382ee3",
          "completed_at": "2026-07-20T17:12:24Z"
        },
        {
          "step_id": "state",
          "action": "state.consistency",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "5a1c6e5246defb1b6b6b90ff734db95bece2886b408ab112ed9b8e67222d5568",
          "completed_at": "2026-07-20T17:12:27Z"
        },
        {
          "step_id": "status",
          "action": "state.query",
          "input_hash": "a15231a2142a2a9a85355a8b9cbbccffe01a9c9c2c2fd8c2bc2987cdc481564a",
          "output_hash": "db7208aa723883e6c4bbde8ff768ee65b2b730a8588503eb7a40574ac36aac20",
          "completed_at": "2026-07-20T17:12:27Z"
        },
        {
          "step_id": "substrate",
          "action": "substrate.preflight",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "a6df426290b4549a59eecaa0519ead9bcc50b7fcb25bd2185ff6047960f19ccb",
          "completed_at": "2026-07-20T17:12:27Z"
        },
        {
          "step_id": "notices",
          "action": "substrate.notices",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "38b904a1cf83df048360fb2480571b749fd98d57e11f1afdffb5a74a78166fea",
          "completed_at": "2026-07-20T17:12:28Z"
        },
        {
          "step_id": "goals",
          "action": "substrate.goals",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "cdfd4de44a28140e686159f34f7b47975954c67e1d1efcef666e985acb136ed8",
          "completed_at": "2026-07-20T17:12:28Z"
        }
      ],
      "steps": [
        {
          "id": "mailbox",
          "action": "requests.pull",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-20T17:12:24Z",
          "output": {
            "applied": 0,
            "resolved_ids": [],
            "unmatched": [],
            "mailboxes": [],
            "pruned_outbox": [],
            "consumed_mailboxes": [],
            "outbound": {
              "delivered": 0,
              "mailboxes_published": [],
              "undeliverable": [],
              "pending": []
            },
            "addressed": {
              "delivered": 0,
              "destinations": [],
              "undelivered": [
                {
                  "id": "REQ-030",
                  "state": "not_ours_to_send",
                  "target_repo": "prd-plugin",
                  "reason": "REQ-030 was imported from 'ZeusGrid'; its target_repo records who it was addressed to, not somewhere for us to send it. Reply on its thread instead."
                },
                {
                  "id": "REQ-003",
                  "state": "not_ours_to_send",
                  "target_repo": "prd-plugin",
                  "reason": "REQ-003 was imported from 'ZeusGrid'; its target_repo records who it was addressed to, not somewhere for us to send it. Reply on its thread instead."
                },
                {
                  "id": "REQ-004",
                  "state": "not_ours_to_send",
                  "target_repo": "prd-plugin",
                  "reason": "REQ-004 was imported from 'ZeusGrid'; its target_repo records who it was addressed to, not somewhere for us to send it. Reply on its thread instead."
                },
                {
                  "id": "REQ-005",
                  "state": "not_ours_to_send",
                  "target_repo": "prd-plugin",
                  "reason": "REQ-005 was imported from 'GRAPH_LANG'; its target_repo records who it was addressed to, not somewhere for us to send it. Reply on its thread instead."
                },
                {
                  "id": "REQ-002",
                  "state": "self_addressed",
                  "target_repo": "prd-plugin",
                  "reason": "REQ-002 is addressed to this repo ('prd-plugin'); it is already here."
                },
                {
                  "id": "REQ-028",
                  "state": "self_addressed",
                  "target_repo": "prd-plugin",
                  "reason": "REQ-028 is addressed to this repo ('prd-plugin'); it is already here."
                },
                {
                  "id": "REQ-029",
                  "state": "not_ours_to_send",
                  "target_repo": "ai-collab-v3",
                  "reason": "REQ-029 was imported from 'ai-collab-v3'; its target_repo records who it was addressed to, not somewhere for us to send it. Reply on its thread instead."
                },
                {
                  "id": "REQ-138",
                  "state": "terminal",
                  "target_repo": "no-such-repo",
                  "reason": "REQ-138 is 'rejected'; a closed request is not delivered. Reopen it or file a new one if it still needs to travel."
                }
              ],
              "advisories": []
            }
          },
          "output_hash": "ab8a35139cfd3f5821ebc5138c9a44c899b54e4036790654ff120e79c7ab6223",
          "completed_at": "2026-07-20T17:12:24Z"
        },
        {
          "id": "config",
          "action": "config.audit",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-20T17:12:24Z",
          "output": {
            "status": "ok",
            "summary": {
              "settings": 207,
              "mutable": 197,
              "read_only_or_managed": 10,
              "unclassified": 0,
              "unknown": 0,
              "invalid": 0,
              "missing_using_defaults": 0
            },
            "unclassified_keys": [],
            "unknown_keys": [],
            "invalid_values": [],
            "missing_using_defaults": []
          },
          "output_hash": "2c134e188d092fa6eead2bd0c2b6fe037830a0ef8d4dbea4fc6aa8b573ad301b",
          "completed_at": "2026-07-20T17:12:24Z"
        },
        {
          "id": "services",
          "action": "services.audit",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-20T17:12:24Z",
          "output": {
            "status": "ok",
            "summary": {
              "critical": 0,
              "high": 0,
              "medium": 0,
              "low": 0
            },
            "findings": []
          },
          "output_hash": "13dcc58bd528f3efa3e6e0fa0853a6eedc376f1f3685fbd4869cbb2b60382ee3",
          "completed_at": "2026-07-20T17:12:24Z"
        },
        {
          "id": "state",
          "action": "state.consistency",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-20T17:12:24Z",
          "output": {
            "status": "ok",
            "repo_root": "D:\\Projects\\prd-plugin",
            "summary": {
              "errors": 0,
              "warnings": 0,
              "infos": 0
            },
            "findings": []
          },
          "output_hash": "5a1c6e5246defb1b6b6b90ff734db95bece2886b408ab112ed9b8e67222d5568",
          "completed_at": "2026-07-20T17:12:27Z"
        },
        {
          "id": "status",
          "action": "state.query",
          "status": "completed",
          "resolved_input_hash": "a15231a2142a2a9a85355a8b9cbbccffe01a9c9c2c2fd8c2bc2987cdc481564a",
          "started_at": "2026-07-20T17:12:27Z",
          "output": {
            "repo_root": "D:\\Projects\\prd-plugin",
            "autonomy_level": "autonomous",
            "requests_by_status": {
              "deferred": 1,
              "implemented": 113,
              "in_review": 2,
              "proposed": 9,
              "rejected": 2
            },
            "active_tracking": [],
            "tracking_branches": [],
            "tracking_branch_counts": {},
            "tracking_branch_errors": [],
            "open_health": [],
            "stale_count": 0,
            "skill_usage": {
              "project-llm-wiki": 2,
              "project-decision-policy": 1,
              "project-request-intake": 1,
              "project-test-driven-implementation": 1,
              "project-verification-before-completion": 1,
              "artifact-design": 1
            },
            "wiki_backfill_pending": false,
            "version_update": null
          },
          "output_hash": "db7208aa723883e6c4bbde8ff768ee65b2b730a8588503eb7a40574ac36aac20",
          "completed_at": "2026-07-20T17:12:27Z"
        },
        {
          "id": "substrate",
          "action": "substrate.preflight",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-20T17:12:27Z",
          "output": {
            "status": "disabled",
            "services": {
              "status": "ok",
              "summary": {
                "critical": 0,
                "high": 0,
                "medium": 0,
                "low": 0
              },
              "findings": []
            },
            "policy": {
              "configured": {
                "enabled": false,
                "mode": "off",
                "capabilities": [
                  "records",
                  "graph",
                  "events"
                ],
                "contract_version": 2,
                "require_source_refs": true,
                "endpoint": "http://127.0.0.1:47124",
                "manual_url": "http://127.0.0.1:47124/utcp.json",
                "knowledge_browse_url": "http://127.0.0.1:5276",
                "auth_env": "AI_COLLAB_API_KEY",
                "timeout_seconds": 5,
                "max_result_bytes": 1048576,
                "cache_ttl_seconds": 60,
                "fallback": "local",
                "automation": {
                  "discovery_on_session_start": true,
                  "knowledge_recall": true,
                  "memory_recall": true,
                  "context_enrichment": true,
                  "notices_on_session_start": false,
                  "goals_sync": false,
                  "telemetry_on_maintenance": false,
                  "reporting_dispatch": true,
                  "judgment_dispatch": true,
                  "verification_execution": true
                }
              },
              "active": false,
              "effective_mode": "off",
              "effective_capabilities": []
            }
          },
          "output_hash": "a6df426290b4549a59eecaa0519ead9bcc50b7fcb25bd2185ff6047960f19ccb",
          "completed_at": "2026-07-20T17:12:27Z"
        },
        {
          "id": "notices",
          "action": "substrate.notices",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-20T17:12:28Z",
          "output": {
            "status": "disabled"
          },
          "output_hash": "38b904a1cf83df048360fb2480571b749fd98d57e11f1afdffb5a74a78166fea",
          "completed_at": "2026-07-20T17:12:28Z"
        },
        {
          "id": "goals",
          "action": "substrate.goals",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-20T17:12:28Z",
          "output": {
            "status": "disabled",
            "created": 0,
            "observed": 0,
            "results": []
          },
          "output_hash": "cdfd4de44a28140e686159f34f7b47975954c67e1d1efcef666e985acb136ed8",
          "completed_at": "2026-07-20T17:12:28Z"
        }
      ],
      "completed_at": "2026-07-20T17:12:28Z"
    },
    {
      "id": "WFR-356",
      "schema_version": "1.0",
      "workflow_id": "session.start",
      "workflow_version": 1,
      "definition_hash": "dd0de9444af7b094cc93673d0844fb78c801d87d978cc5f6dd6bf3e3e863917d",
      "plan_hash": "1f4ae0cd6be8385f8a9310e49978bd8d93baa729842eb6df9243665a1b581277",
      "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
      "inputs": {},
      "idempotency_key": "hook:SessionStart:45af86e6-fa03-401c-83c1-d82eeb1805d3",
      "status": "completed",
      "attempt": 1,
      "created_at": "2026-07-20T21:53:23Z",
      "updated_at": "2026-07-20T21:53:27Z",
      "receipts": [
        {
          "step_id": "mailbox",
          "action": "requests.pull",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "ab8a35139cfd3f5821ebc5138c9a44c899b54e4036790654ff120e79c7ab6223",
          "completed_at": "2026-07-20T21:53:23Z"
        },
        {
          "step_id": "config",
          "action": "config.audit",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "2c134e188d092fa6eead2bd0c2b6fe037830a0ef8d4dbea4fc6aa8b573ad301b",
          "completed_at": "2026-07-20T21:53:23Z"
        },
        {
          "step_id": "services",
          "action": "services.audit",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "13dcc58bd528f3efa3e6e0fa0853a6eedc376f1f3685fbd4869cbb2b60382ee3",
          "completed_at": "2026-07-20T21:53:23Z"
        },
        {
          "step_id": "state",
          "action": "state.consistency",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "5a1c6e5246defb1b6b6b90ff734db95bece2886b408ab112ed9b8e67222d5568",
          "completed_at": "2026-07-20T21:53:26Z"
        },
        {
          "step_id": "status",
          "action": "state.query",
          "input_hash": "a15231a2142a2a9a85355a8b9cbbccffe01a9c9c2c2fd8c2bc2987cdc481564a",
          "output_hash": "eb49d93f2f7b8d44a779e206aa163e3be45d13e0875c0568ea7c28b4f9d5b6b4",
          "completed_at": "2026-07-20T21:53:27Z"
        },
        {
          "step_id": "substrate",
          "action": "substrate.preflight",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "a6df426290b4549a59eecaa0519ead9bcc50b7fcb25bd2185ff6047960f19ccb",
          "completed_at": "2026-07-20T21:53:27Z"
        },
        {
          "step_id": "notices",
          "action": "substrate.notices",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "38b904a1cf83df048360fb2480571b749fd98d57e11f1afdffb5a74a78166fea",
          "completed_at": "2026-07-20T21:53:27Z"
        },
        {
          "step_id": "goals",
          "action": "substrate.goals",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "cdfd4de44a28140e686159f34f7b47975954c67e1d1efcef666e985acb136ed8",
          "completed_at": "2026-07-20T21:53:27Z"
        }
      ],
      "steps": [
        {
          "id": "mailbox",
          "action": "requests.pull",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-20T21:53:23Z",
          "output": {
            "applied": 0,
            "resolved_ids": [],
            "unmatched": [],
            "mailboxes": [],
            "pruned_outbox": [],
            "consumed_mailboxes": [],
            "outbound": {
              "delivered": 0,
              "mailboxes_published": [],
              "undeliverable": [],
              "pending": []
            },
            "addressed": {
              "delivered": 0,
              "destinations": [],
              "undelivered": [
                {
                  "id": "REQ-030",
                  "state": "not_ours_to_send",
                  "target_repo": "prd-plugin",
                  "reason": "REQ-030 was imported from 'ZeusGrid'; its target_repo records who it was addressed to, not somewhere for us to send it. Reply on its thread instead."
                },
                {
                  "id": "REQ-003",
                  "state": "not_ours_to_send",
                  "target_repo": "prd-plugin",
                  "reason": "REQ-003 was imported from 'ZeusGrid'; its target_repo records who it was addressed to, not somewhere for us to send it. Reply on its thread instead."
                },
                {
                  "id": "REQ-004",
                  "state": "not_ours_to_send",
                  "target_repo": "prd-plugin",
                  "reason": "REQ-004 was imported from 'ZeusGrid'; its target_repo records who it was addressed to, not somewhere for us to send it. Reply on its thread instead."
                },
                {
                  "id": "REQ-005",
                  "state": "not_ours_to_send",
                  "target_repo": "prd-plugin",
                  "reason": "REQ-005 was imported from 'GRAPH_LANG'; its target_repo records who it was addressed to, not somewhere for us to send it. Reply on its thread instead."
                },
                {
                  "id": "REQ-002",
                  "state": "self_addressed",
                  "target_repo": "prd-plugin",
                  "reason": "REQ-002 is addressed to this repo ('prd-plugin'); it is already here."
                },
                {
                  "id": "REQ-028",
                  "state": "self_addressed",
                  "target_repo": "prd-plugin",
                  "reason": "REQ-028 is addressed to this repo ('prd-plugin'); it is already here."
                },
                {
                  "id": "REQ-029",
                  "state": "not_ours_to_send",
                  "target_repo": "ai-collab-v3",
                  "reason": "REQ-029 was imported from 'ai-collab-v3'; its target_repo records who it was addressed to, not somewhere for us to send it. Reply on its thread instead."
                },
                {
                  "id": "REQ-138",
                  "state": "terminal",
                  "target_repo": "no-such-repo",
                  "reason": "REQ-138 is 'rejected'; a closed request is not delivered. Reopen it or file a new one if it still needs to travel."
                }
              ],
              "advisories": []
            }
          },
          "output_hash": "ab8a35139cfd3f5821ebc5138c9a44c899b54e4036790654ff120e79c7ab6223",
          "completed_at": "2026-07-20T21:53:23Z"
        },
        {
          "id": "config",
          "action": "config.audit",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-20T21:53:23Z",
          "output": {
            "status": "ok",
            "summary": {
              "settings": 207,
              "mutable": 197,
              "read_only_or_managed": 10,
              "unclassified": 0,
              "unknown": 0,
              "invalid": 0,
              "missing_using_defaults": 0
            },
            "unclassified_keys": [],
            "unknown_keys": [],
            "invalid_values": [],
            "missing_using_defaults": []
          },
          "output_hash": "2c134e188d092fa6eead2bd0c2b6fe037830a0ef8d4dbea4fc6aa8b573ad301b",
          "completed_at": "2026-07-20T21:53:23Z"
        },
        {
          "id": "services",
          "action": "services.audit",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-20T21:53:23Z",
          "output": {
            "status": "ok",
            "summary": {
              "critical": 0,
              "high": 0,
              "medium": 0,
              "low": 0
            },
            "findings": []
          },
          "output_hash": "13dcc58bd528f3efa3e6e0fa0853a6eedc376f1f3685fbd4869cbb2b60382ee3",
          "completed_at": "2026-07-20T21:53:23Z"
        },
        {
          "id": "state",
          "action": "state.consistency",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-20T21:53:23Z",
          "output": {
            "status": "ok",
            "repo_root": "D:\\Projects\\prd-plugin",
            "summary": {
              "errors": 0,
              "warnings": 0,
              "infos": 0
            },
            "findings": []
          },
          "output_hash": "5a1c6e5246defb1b6b6b90ff734db95bece2886b408ab112ed9b8e67222d5568",
          "completed_at": "2026-07-20T21:53:26Z"
        },
        {
          "id": "status",
          "action": "state.query",
          "status": "completed",
          "resolved_input_hash": "a15231a2142a2a9a85355a8b9cbbccffe01a9c9c2c2fd8c2bc2987cdc481564a",
          "started_at": "2026-07-20T21:53:26Z",
          "output": {
            "repo_root": "D:\\Projects\\prd-plugin",
            "autonomy_level": "autonomous",
            "requests_by_status": {
              "deferred": 1,
              "implemented": 116,
              "in_review": 2,
              "proposed": 9,
              "rejected": 2
            },
            "active_tracking": [],
            "tracking_branches": [],
            "tracking_branch_counts": {},
            "tracking_branch_errors": [],
            "open_health": [],
            "stale_count": 0,
            "skill_usage": {
              "project-llm-wiki": 2,
              "project-decision-policy": 1,
              "project-request-intake": 1,
              "project-test-driven-implementation": 1,
              "project-verification-before-completion": 1,
              "artifact-design": 1
            },
            "wiki_backfill_pending": false,
            "version_update": null
          },
          "output_hash": "eb49d93f2f7b8d44a779e206aa163e3be45d13e0875c0568ea7c28b4f9d5b6b4",
          "completed_at": "2026-07-20T21:53:27Z"
        },
        {
          "id": "substrate",
          "action": "substrate.preflight",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-20T21:53:27Z",
          "output": {
            "status": "disabled",
            "services": {
              "status": "ok",
              "summary": {
                "critical": 0,
                "high": 0,
                "medium": 0,
                "low": 0
              },
              "findings": []
            },
            "policy": {
              "configured": {
                "enabled": false,
                "mode": "off",
                "capabilities": [
                  "records",
                  "graph",
                  "events"
                ],
                "contract_version": 2,
                "require_source_refs": true,
                "endpoint": "http://127.0.0.1:47124",
                "manual_url": "http://127.0.0.1:47124/utcp.json",
                "knowledge_browse_url": "http://127.0.0.1:5276",
                "auth_env": "AI_COLLAB_API_KEY",
                "timeout_seconds": 5,
                "max_result_bytes": 1048576,
                "cache_ttl_seconds": 60,
                "fallback": "local",
                "automation": {
                  "discovery_on_session_start": true,
                  "knowledge_recall": true,
                  "memory_recall": true,
                  "context_enrichment": true,
                  "notices_on_session_start": false,
                  "goals_sync": false,
                  "telemetry_on_maintenance": false,
                  "reporting_dispatch": true,
                  "judgment_dispatch": true,
                  "verification_execution": true
                }
              },
              "active": false,
              "effective_mode": "off",
              "effective_capabilities": []
            }
          },
          "output_hash": "a6df426290b4549a59eecaa0519ead9bcc50b7fcb25bd2185ff6047960f19ccb",
          "completed_at": "2026-07-20T21:53:27Z"
        },
        {
          "id": "notices",
          "action": "substrate.notices",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-20T21:53:27Z",
          "output": {
            "status": "disabled"
          },
          "output_hash": "38b904a1cf83df048360fb2480571b749fd98d57e11f1afdffb5a74a78166fea",
          "completed_at": "2026-07-20T21:53:27Z"
        },
        {
          "id": "goals",
          "action": "substrate.goals",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-20T21:53:27Z",
          "output": {
            "status": "disabled",
            "created": 0,
            "observed": 0,
            "results": []
          },
          "output_hash": "cdfd4de44a28140e686159f34f7b47975954c67e1d1efcef666e985acb136ed8",
          "completed_at": "2026-07-20T21:53:27Z"
        }
      ],
      "completed_at": "2026-07-20T21:53:27Z"
    },
    {
      "id": "WFR-357",
      "schema_version": "1.0",
      "workflow_id": "session.start",
      "workflow_version": 1,
      "definition_hash": "dd0de9444af7b094cc93673d0844fb78c801d87d978cc5f6dd6bf3e3e863917d",
      "plan_hash": "1f4ae0cd6be8385f8a9310e49978bd8d93baa729842eb6df9243665a1b581277",
      "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
      "inputs": {},
      "idempotency_key": "hook:SessionStart:3cd6a964-8b27-4ebb-b045-bafa73d2737e",
      "status": "completed",
      "attempt": 1,
      "created_at": "2026-07-20T22:47:26Z",
      "updated_at": "2026-07-20T22:47:29Z",
      "receipts": [
        {
          "step_id": "mailbox",
          "action": "requests.pull",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "ab8a35139cfd3f5821ebc5138c9a44c899b54e4036790654ff120e79c7ab6223",
          "completed_at": "2026-07-20T22:47:27Z"
        },
        {
          "step_id": "config",
          "action": "config.audit",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "2c134e188d092fa6eead2bd0c2b6fe037830a0ef8d4dbea4fc6aa8b573ad301b",
          "completed_at": "2026-07-20T22:47:27Z"
        },
        {
          "step_id": "services",
          "action": "services.audit",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "13dcc58bd528f3efa3e6e0fa0853a6eedc376f1f3685fbd4869cbb2b60382ee3",
          "completed_at": "2026-07-20T22:47:27Z"
        },
        {
          "step_id": "state",
          "action": "state.consistency",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "5a1c6e5246defb1b6b6b90ff734db95bece2886b408ab112ed9b8e67222d5568",
          "completed_at": "2026-07-20T22:47:28Z"
        },
        {
          "step_id": "status",
          "action": "state.query",
          "input_hash": "a15231a2142a2a9a85355a8b9cbbccffe01a9c9c2c2fd8c2bc2987cdc481564a",
          "output_hash": "f6756308c0443a4fa645196fb84e45bbced9c924c3fc3f13abd0d39420f0df69",
          "completed_at": "2026-07-20T22:47:29Z"
        },
        {
          "step_id": "substrate",
          "action": "substrate.preflight",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "a6df426290b4549a59eecaa0519ead9bcc50b7fcb25bd2185ff6047960f19ccb",
          "completed_at": "2026-07-20T22:47:29Z"
        },
        {
          "step_id": "notices",
          "action": "substrate.notices",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "38b904a1cf83df048360fb2480571b749fd98d57e11f1afdffb5a74a78166fea",
          "completed_at": "2026-07-20T22:47:29Z"
        },
        {
          "step_id": "goals",
          "action": "substrate.goals",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "cdfd4de44a28140e686159f34f7b47975954c67e1d1efcef666e985acb136ed8",
          "completed_at": "2026-07-20T22:47:29Z"
        }
      ],
      "steps": [
        {
          "id": "mailbox",
          "action": "requests.pull",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-20T22:47:27Z",
          "output": {
            "applied": 0,
            "resolved_ids": [],
            "unmatched": [],
            "mailboxes": [],
            "pruned_outbox": [],
            "consumed_mailboxes": [],
            "outbound": {
              "delivered": 0,
              "mailboxes_published": [],
              "undeliverable": [],
              "pending": []
            },
            "addressed": {
              "delivered": 0,
              "destinations": [],
              "undelivered": [
                {
                  "id": "REQ-030",
                  "state": "not_ours_to_send",
                  "target_repo": "prd-plugin",
                  "reason": "REQ-030 was imported from 'ZeusGrid'; its target_repo records who it was addressed to, not somewhere for us to send it. Reply on its thread instead."
                },
                {
                  "id": "REQ-003",
                  "state": "not_ours_to_send",
                  "target_repo": "prd-plugin",
                  "reason": "REQ-003 was imported from 'ZeusGrid'; its target_repo records who it was addressed to, not somewhere for us to send it. Reply on its thread instead."
                },
                {
                  "id": "REQ-004",
                  "state": "not_ours_to_send",
                  "target_repo": "prd-plugin",
                  "reason": "REQ-004 was imported from 'ZeusGrid'; its target_repo records who it was addressed to, not somewhere for us to send it. Reply on its thread instead."
                },
                {
                  "id": "REQ-005",
                  "state": "not_ours_to_send",
                  "target_repo": "prd-plugin",
                  "reason": "REQ-005 was imported from 'GRAPH_LANG'; its target_repo records who it was addressed to, not somewhere for us to send it. Reply on its thread instead."
                },
                {
                  "id": "REQ-002",
                  "state": "self_addressed",
                  "target_repo": "prd-plugin",
                  "reason": "REQ-002 is addressed to this repo ('prd-plugin'); it is already here."
                },
                {
                  "id": "REQ-028",
                  "state": "self_addressed",
                  "target_repo": "prd-plugin",
                  "reason": "REQ-028 is addressed to this repo ('prd-plugin'); it is already here."
                },
                {
                  "id": "REQ-029",
                  "state": "not_ours_to_send",
                  "target_repo": "ai-collab-v3",
                  "reason": "REQ-029 was imported from 'ai-collab-v3'; its target_repo records who it was addressed to, not somewhere for us to send it. Reply on its thread instead."
                },
                {
                  "id": "REQ-138",
                  "state": "terminal",
                  "target_repo": "no-such-repo",
                  "reason": "REQ-138 is 'rejected'; a closed request is not delivered. Reopen it or file a new one if it still needs to travel."
                }
              ],
              "advisories": []
            }
          },
          "output_hash": "ab8a35139cfd3f5821ebc5138c9a44c899b54e4036790654ff120e79c7ab6223",
          "completed_at": "2026-07-20T22:47:27Z"
        },
        {
          "id": "config",
          "action": "config.audit",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-20T22:47:27Z",
          "output": {
            "status": "ok",
            "summary": {
              "settings": 207,
              "mutable": 197,
              "read_only_or_managed": 10,
              "unclassified": 0,
              "unknown": 0,
              "invalid": 0,
              "missing_using_defaults": 0
            },
            "unclassified_keys": [],
            "unknown_keys": [],
            "invalid_values": [],
            "missing_using_defaults": []
          },
          "output_hash": "2c134e188d092fa6eead2bd0c2b6fe037830a0ef8d4dbea4fc6aa8b573ad301b",
          "completed_at": "2026-07-20T22:47:27Z"
        },
        {
          "id": "services",
          "action": "services.audit",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-20T22:47:27Z",
          "output": {
            "status": "ok",
            "summary": {
              "critical": 0,
              "high": 0,
              "medium": 0,
              "low": 0
            },
            "findings": []
          },
          "output_hash": "13dcc58bd528f3efa3e6e0fa0853a6eedc376f1f3685fbd4869cbb2b60382ee3",
          "completed_at": "2026-07-20T22:47:27Z"
        },
        {
          "id": "state",
          "action": "state.consistency",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-20T22:47:28Z",
          "output": {
            "status": "ok",
            "repo_root": "D:\\Projects\\prd-plugin",
            "summary": {
              "errors": 0,
              "warnings": 0,
              "infos": 0
            },
            "findings": []
          },
          "output_hash": "5a1c6e5246defb1b6b6b90ff734db95bece2886b408ab112ed9b8e67222d5568",
          "completed_at": "2026-07-20T22:47:28Z"
        },
        {
          "id": "status",
          "action": "state.query",
          "status": "completed",
          "resolved_input_hash": "a15231a2142a2a9a85355a8b9cbbccffe01a9c9c2c2fd8c2bc2987cdc481564a",
          "started_at": "2026-07-20T22:47:28Z",
          "output": {
            "repo_root": "D:\\Projects\\prd-plugin",
            "autonomy_level": "autonomous",
            "requests_by_status": {
              "deferred": 1,
              "implemented": 117,
              "in_review": 2,
              "proposed": 9,
              "rejected": 2
            },
            "active_tracking": [],
            "tracking_branches": [],
            "tracking_branch_counts": {},
            "tracking_branch_errors": [],
            "open_health": [],
            "stale_count": 0,
            "skill_usage": {
              "project-llm-wiki": 2,
              "project-decision-policy": 1,
              "project-request-intake": 1,
              "project-test-driven-implementation": 1,
              "project-verification-before-completion": 1,
              "artifact-design": 1
            },
            "wiki_backfill_pending": false,
            "version_update": null
          },
          "output_hash": "f6756308c0443a4fa645196fb84e45bbced9c924c3fc3f13abd0d39420f0df69",
          "completed_at": "2026-07-20T22:47:29Z"
        },
        {
          "id": "substrate",
          "action": "substrate.preflight",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-20T22:47:29Z",
          "output": {
            "status": "disabled",
            "services": {
              "status": "ok",
              "summary": {
                "critical": 0,
                "high": 0,
                "medium": 0,
                "low": 0
              },
              "findings": []
            },
            "policy": {
              "configured": {
                "enabled": false,
                "mode": "off",
                "capabilities": [
                  "records",
                  "graph",
                  "events"
                ],
                "contract_version": 2,
                "require_source_refs": true,
                "endpoint": "http://127.0.0.1:47124",
                "manual_url": "http://127.0.0.1:47124/utcp.json",
                "knowledge_browse_url": "http://127.0.0.1:5276",
                "auth_env": "AI_COLLAB_API_KEY",
                "timeout_seconds": 5,
                "max_result_bytes": 1048576,
                "cache_ttl_seconds": 60,
                "fallback": "local",
                "automation": {
                  "discovery_on_session_start": true,
                  "knowledge_recall": true,
                  "memory_recall": true,
                  "context_enrichment": true,
                  "notices_on_session_start": false,
                  "goals_sync": false,
                  "telemetry_on_maintenance": false,
                  "reporting_dispatch": true,
                  "judgment_dispatch": true,
                  "verification_execution": true
                }
              },
              "active": false,
              "effective_mode": "off",
              "effective_capabilities": []
            }
          },
          "output_hash": "a6df426290b4549a59eecaa0519ead9bcc50b7fcb25bd2185ff6047960f19ccb",
          "completed_at": "2026-07-20T22:47:29Z"
        },
        {
          "id": "notices",
          "action": "substrate.notices",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-20T22:47:29Z",
          "output": {
            "status": "disabled"
          },
          "output_hash": "38b904a1cf83df048360fb2480571b749fd98d57e11f1afdffb5a74a78166fea",
          "completed_at": "2026-07-20T22:47:29Z"
        },
        {
          "id": "goals",
          "action": "substrate.goals",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-20T22:47:29Z",
          "output": {
            "status": "disabled",
            "created": 0,
            "observed": 0,
            "results": []
          },
          "output_hash": "cdfd4de44a28140e686159f34f7b47975954c67e1d1efcef666e985acb136ed8",
          "completed_at": "2026-07-20T22:47:29Z"
        }
      ],
      "completed_at": "2026-07-20T22:47:29Z"
    },
    {
      "id": "WFR-358",
      "schema_version": "1.0",
      "workflow_id": "session.start",
      "workflow_version": 1,
      "definition_hash": "dd0de9444af7b094cc93673d0844fb78c801d87d978cc5f6dd6bf3e3e863917d",
      "plan_hash": "1f4ae0cd6be8385f8a9310e49978bd8d93baa729842eb6df9243665a1b581277",
      "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
      "inputs": {},
      "idempotency_key": "hook:SessionStart:98a8e704-88a3-4509-8ea2-4f9753dbfb7b",
      "status": "completed",
      "attempt": 1,
      "created_at": "2026-07-21T04:04:07Z",
      "updated_at": "2026-07-21T04:04:10Z",
      "receipts": [
        {
          "step_id": "mailbox",
          "action": "requests.pull",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "ab8a35139cfd3f5821ebc5138c9a44c899b54e4036790654ff120e79c7ab6223",
          "completed_at": "2026-07-21T04:04:08Z"
        },
        {
          "step_id": "config",
          "action": "config.audit",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "2c134e188d092fa6eead2bd0c2b6fe037830a0ef8d4dbea4fc6aa8b573ad301b",
          "completed_at": "2026-07-21T04:04:08Z"
        },
        {
          "step_id": "services",
          "action": "services.audit",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "13dcc58bd528f3efa3e6e0fa0853a6eedc376f1f3685fbd4869cbb2b60382ee3",
          "completed_at": "2026-07-21T04:04:08Z"
        },
        {
          "step_id": "state",
          "action": "state.consistency",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "5a1c6e5246defb1b6b6b90ff734db95bece2886b408ab112ed9b8e67222d5568",
          "completed_at": "2026-07-21T04:04:09Z"
        },
        {
          "step_id": "status",
          "action": "state.query",
          "input_hash": "a15231a2142a2a9a85355a8b9cbbccffe01a9c9c2c2fd8c2bc2987cdc481564a",
          "output_hash": "f6756308c0443a4fa645196fb84e45bbced9c924c3fc3f13abd0d39420f0df69",
          "completed_at": "2026-07-21T04:04:09Z"
        },
        {
          "step_id": "substrate",
          "action": "substrate.preflight",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "a6df426290b4549a59eecaa0519ead9bcc50b7fcb25bd2185ff6047960f19ccb",
          "completed_at": "2026-07-21T04:04:09Z"
        },
        {
          "step_id": "notices",
          "action": "substrate.notices",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "38b904a1cf83df048360fb2480571b749fd98d57e11f1afdffb5a74a78166fea",
          "completed_at": "2026-07-21T04:04:10Z"
        },
        {
          "step_id": "goals",
          "action": "substrate.goals",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "cdfd4de44a28140e686159f34f7b47975954c67e1d1efcef666e985acb136ed8",
          "completed_at": "2026-07-21T04:04:10Z"
        }
      ],
      "steps": [
        {
          "id": "mailbox",
          "action": "requests.pull",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-21T04:04:08Z",
          "output": {
            "applied": 0,
            "resolved_ids": [],
            "unmatched": [],
            "mailboxes": [],
            "pruned_outbox": [],
            "consumed_mailboxes": [],
            "outbound": {
              "delivered": 0,
              "mailboxes_published": [],
              "undeliverable": [],
              "pending": []
            },
            "addressed": {
              "delivered": 0,
              "destinations": [],
              "undelivered": [
                {
                  "id": "REQ-030",
                  "state": "not_ours_to_send",
                  "target_repo": "prd-plugin",
                  "reason": "REQ-030 was imported from 'ZeusGrid'; its target_repo records who it was addressed to, not somewhere for us to send it. Reply on its thread instead."
                },
                {
                  "id": "REQ-003",
                  "state": "not_ours_to_send",
                  "target_repo": "prd-plugin",
                  "reason": "REQ-003 was imported from 'ZeusGrid'; its target_repo records who it was addressed to, not somewhere for us to send it. Reply on its thread instead."
                },
                {
                  "id": "REQ-004",
                  "state": "not_ours_to_send",
                  "target_repo": "prd-plugin",
                  "reason": "REQ-004 was imported from 'ZeusGrid'; its target_repo records who it was addressed to, not somewhere for us to send it. Reply on its thread instead."
                },
                {
                  "id": "REQ-005",
                  "state": "not_ours_to_send",
                  "target_repo": "prd-plugin",
                  "reason": "REQ-005 was imported from 'GRAPH_LANG'; its target_repo records who it was addressed to, not somewhere for us to send it. Reply on its thread instead."
                },
                {
                  "id": "REQ-002",
                  "state": "self_addressed",
                  "target_repo": "prd-plugin",
                  "reason": "REQ-002 is addressed to this repo ('prd-plugin'); it is already here."
                },
                {
                  "id": "REQ-028",
                  "state": "self_addressed",
                  "target_repo": "prd-plugin",
                  "reason": "REQ-028 is addressed to this repo ('prd-plugin'); it is already here."
                },
                {
                  "id": "REQ-029",
                  "state": "not_ours_to_send",
                  "target_repo": "ai-collab-v3",
                  "reason": "REQ-029 was imported from 'ai-collab-v3'; its target_repo records who it was addressed to, not somewhere for us to send it. Reply on its thread instead."
                },
                {
                  "id": "REQ-138",
                  "state": "terminal",
                  "target_repo": "no-such-repo",
                  "reason": "REQ-138 is 'rejected'; a closed request is not delivered. Reopen it or file a new one if it still needs to travel."
                }
              ],
              "advisories": []
            }
          },
          "output_hash": "ab8a35139cfd3f5821ebc5138c9a44c899b54e4036790654ff120e79c7ab6223",
          "completed_at": "2026-07-21T04:04:08Z"
        },
        {
          "id": "config",
          "action": "config.audit",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-21T04:04:08Z",
          "output": {
            "status": "ok",
            "summary": {
              "settings": 207,
              "mutable": 197,
              "read_only_or_managed": 10,
              "unclassified": 0,
              "unknown": 0,
              "invalid": 0,
              "missing_using_defaults": 0
            },
            "unclassified_keys": [],
            "unknown_keys": [],
            "invalid_values": [],
            "missing_using_defaults": []
          },
          "output_hash": "2c134e188d092fa6eead2bd0c2b6fe037830a0ef8d4dbea4fc6aa8b573ad301b",
          "completed_at": "2026-07-21T04:04:08Z"
        },
        {
          "id": "services",
          "action": "services.audit",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-21T04:04:08Z",
          "output": {
            "status": "ok",
            "summary": {
              "critical": 0,
              "high": 0,
              "medium": 0,
              "low": 0
            },
            "findings": []
          },
          "output_hash": "13dcc58bd528f3efa3e6e0fa0853a6eedc376f1f3685fbd4869cbb2b60382ee3",
          "completed_at": "2026-07-21T04:04:08Z"
        },
        {
          "id": "state",
          "action": "state.consistency",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-21T04:04:08Z",
          "output": {
            "status": "ok",
            "repo_root": "D:\\Projects\\prd-plugin",
            "summary": {
              "errors": 0,
              "warnings": 0,
              "infos": 0
            },
            "findings": []
          },
          "output_hash": "5a1c6e5246defb1b6b6b90ff734db95bece2886b408ab112ed9b8e67222d5568",
          "completed_at": "2026-07-21T04:04:09Z"
        },
        {
          "id": "status",
          "action": "state.query",
          "status": "completed",
          "resolved_input_hash": "a15231a2142a2a9a85355a8b9cbbccffe01a9c9c2c2fd8c2bc2987cdc481564a",
          "started_at": "2026-07-21T04:04:09Z",
          "output": {
            "repo_root": "D:\\Projects\\prd-plugin",
            "autonomy_level": "autonomous",
            "requests_by_status": {
              "deferred": 1,
              "implemented": 117,
              "in_review": 2,
              "proposed": 9,
              "rejected": 2
            },
            "active_tracking": [],
            "tracking_branches": [],
            "tracking_branch_counts": {},
            "tracking_branch_errors": [],
            "open_health": [],
            "stale_count": 0,
            "skill_usage": {
              "project-llm-wiki": 2,
              "project-decision-policy": 1,
              "project-request-intake": 1,
              "project-test-driven-implementation": 1,
              "project-verification-before-completion": 1,
              "artifact-design": 1
            },
            "wiki_backfill_pending": false,
            "version_update": null
          },
          "output_hash": "f6756308c0443a4fa645196fb84e45bbced9c924c3fc3f13abd0d39420f0df69",
          "completed_at": "2026-07-21T04:04:09Z"
        },
        {
          "id": "substrate",
          "action": "substrate.preflight",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-21T04:04:09Z",
          "output": {
            "status": "disabled",
            "services": {
              "status": "ok",
              "summary": {
                "critical": 0,
                "high": 0,
                "medium": 0,
                "low": 0
              },
              "findings": []
            },
            "policy": {
              "configured": {
                "enabled": false,
                "mode": "off",
                "capabilities": [
                  "records",
                  "graph",
                  "events"
                ],
                "contract_version": 2,
                "require_source_refs": true,
                "endpoint": "http://127.0.0.1:47124",
                "manual_url": "http://127.0.0.1:47124/utcp.json",
                "knowledge_browse_url": "http://127.0.0.1:5276",
                "auth_env": "AI_COLLAB_API_KEY",
                "timeout_seconds": 5,
                "max_result_bytes": 1048576,
                "cache_ttl_seconds": 60,
                "fallback": "local",
                "automation": {
                  "discovery_on_session_start": true,
                  "knowledge_recall": true,
                  "memory_recall": true,
                  "context_enrichment": true,
                  "notices_on_session_start": false,
                  "goals_sync": false,
                  "telemetry_on_maintenance": false,
                  "reporting_dispatch": true,
                  "judgment_dispatch": true,
                  "verification_execution": true
                }
              },
              "active": false,
              "effective_mode": "off",
              "effective_capabilities": []
            }
          },
          "output_hash": "a6df426290b4549a59eecaa0519ead9bcc50b7fcb25bd2185ff6047960f19ccb",
          "completed_at": "2026-07-21T04:04:09Z"
        },
        {
          "id": "notices",
          "action": "substrate.notices",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-21T04:04:10Z",
          "output": {
            "status": "disabled"
          },
          "output_hash": "38b904a1cf83df048360fb2480571b749fd98d57e11f1afdffb5a74a78166fea",
          "completed_at": "2026-07-21T04:04:10Z"
        },
        {
          "id": "goals",
          "action": "substrate.goals",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-21T04:04:10Z",
          "output": {
            "status": "disabled",
            "created": 0,
            "observed": 0,
            "results": []
          },
          "output_hash": "cdfd4de44a28140e686159f34f7b47975954c67e1d1efcef666e985acb136ed8",
          "completed_at": "2026-07-21T04:04:10Z"
        }
      ],
      "completed_at": "2026-07-21T04:04:10Z"
    },
    {
      "id": "WFR-359",
      "schema_version": "1.0",
      "workflow_id": "session.start",
      "workflow_version": 1,
      "definition_hash": "dd0de9444af7b094cc93673d0844fb78c801d87d978cc5f6dd6bf3e3e863917d",
      "plan_hash": "1f4ae0cd6be8385f8a9310e49978bd8d93baa729842eb6df9243665a1b581277",
      "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
      "inputs": {},
      "idempotency_key": "hook:SessionStart:67759467-e225-465f-957a-89a0effb8434",
      "status": "completed",
      "attempt": 1,
      "created_at": "2026-07-21T08:03:13Z",
      "updated_at": "2026-07-21T08:03:20Z",
      "receipts": [
        {
          "step_id": "mailbox",
          "action": "requests.pull",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "ab8a35139cfd3f5821ebc5138c9a44c899b54e4036790654ff120e79c7ab6223",
          "completed_at": "2026-07-21T08:03:14Z"
        },
        {
          "step_id": "config",
          "action": "config.audit",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "88327389a2cd86588479401655e63b7c7b64ea959b8c45f2ccf55a4986603dda",
          "completed_at": "2026-07-21T08:03:14Z"
        },
        {
          "step_id": "services",
          "action": "services.audit",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "13dcc58bd528f3efa3e6e0fa0853a6eedc376f1f3685fbd4869cbb2b60382ee3",
          "completed_at": "2026-07-21T08:03:14Z"
        },
        {
          "step_id": "state",
          "action": "state.consistency",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "5a1c6e5246defb1b6b6b90ff734db95bece2886b408ab112ed9b8e67222d5568",
          "completed_at": "2026-07-21T08:03:19Z"
        },
        {
          "step_id": "status",
          "action": "state.query",
          "input_hash": "a15231a2142a2a9a85355a8b9cbbccffe01a9c9c2c2fd8c2bc2987cdc481564a",
          "output_hash": "e586903474ed2406420b8c35b6664c7435878ffdd07e82df1d59ac328188b08c",
          "completed_at": "2026-07-21T08:03:19Z"
        },
        {
          "step_id": "substrate",
          "action": "substrate.preflight",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "a6df426290b4549a59eecaa0519ead9bcc50b7fcb25bd2185ff6047960f19ccb",
          "completed_at": "2026-07-21T08:03:20Z"
        },
        {
          "step_id": "notices",
          "action": "substrate.notices",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "38b904a1cf83df048360fb2480571b749fd98d57e11f1afdffb5a74a78166fea",
          "completed_at": "2026-07-21T08:03:20Z"
        },
        {
          "step_id": "goals",
          "action": "substrate.goals",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "cdfd4de44a28140e686159f34f7b47975954c67e1d1efcef666e985acb136ed8",
          "completed_at": "2026-07-21T08:03:20Z"
        }
      ],
      "steps": [
        {
          "id": "mailbox",
          "action": "requests.pull",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-21T08:03:14Z",
          "output": {
            "applied": 0,
            "resolved_ids": [],
            "unmatched": [],
            "mailboxes": [],
            "pruned_outbox": [],
            "consumed_mailboxes": [],
            "outbound": {
              "delivered": 0,
              "mailboxes_published": [],
              "undeliverable": [],
              "pending": []
            },
            "addressed": {
              "delivered": 0,
              "destinations": [],
              "undelivered": [
                {
                  "id": "REQ-030",
                  "state": "not_ours_to_send",
                  "target_repo": "prd-plugin",
                  "reason": "REQ-030 was imported from 'ZeusGrid'; its target_repo records who it was addressed to, not somewhere for us to send it. Reply on its thread instead."
                },
                {
                  "id": "REQ-003",
                  "state": "not_ours_to_send",
                  "target_repo": "prd-plugin",
                  "reason": "REQ-003 was imported from 'ZeusGrid'; its target_repo records who it was addressed to, not somewhere for us to send it. Reply on its thread instead."
                },
                {
                  "id": "REQ-004",
                  "state": "not_ours_to_send",
                  "target_repo": "prd-plugin",
                  "reason": "REQ-004 was imported from 'ZeusGrid'; its target_repo records who it was addressed to, not somewhere for us to send it. Reply on its thread instead."
                },
                {
                  "id": "REQ-005",
                  "state": "not_ours_to_send",
                  "target_repo": "prd-plugin",
                  "reason": "REQ-005 was imported from 'GRAPH_LANG'; its target_repo records who it was addressed to, not somewhere for us to send it. Reply on its thread instead."
                },
                {
                  "id": "REQ-002",
                  "state": "self_addressed",
                  "target_repo": "prd-plugin",
                  "reason": "REQ-002 is addressed to this repo ('prd-plugin'); it is already here."
                },
                {
                  "id": "REQ-028",
                  "state": "self_addressed",
                  "target_repo": "prd-plugin",
                  "reason": "REQ-028 is addressed to this repo ('prd-plugin'); it is already here."
                },
                {
                  "id": "REQ-029",
                  "state": "not_ours_to_send",
                  "target_repo": "ai-collab-v3",
                  "reason": "REQ-029 was imported from 'ai-collab-v3'; its target_repo records who it was addressed to, not somewhere for us to send it. Reply on its thread instead."
                },
                {
                  "id": "REQ-138",
                  "state": "terminal",
                  "target_repo": "no-such-repo",
                  "reason": "REQ-138 is 'rejected'; a closed request is not delivered. Reopen it or file a new one if it still needs to travel."
                }
              ],
              "advisories": []
            }
          },
          "output_hash": "ab8a35139cfd3f5821ebc5138c9a44c899b54e4036790654ff120e79c7ab6223",
          "completed_at": "2026-07-21T08:03:14Z"
        },
        {
          "id": "config",
          "action": "config.audit",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-21T08:03:14Z",
          "output": {
            "status": "ok",
            "summary": {
              "settings": 208,
              "mutable": 198,
              "read_only_or_managed": 10,
              "unclassified": 0,
              "unknown": 0,
              "invalid": 0,
              "missing_using_defaults": 0
            },
            "unclassified_keys": [],
            "unknown_keys": [],
            "invalid_values": [],
            "missing_using_defaults": []
          },
          "output_hash": "88327389a2cd86588479401655e63b7c7b64ea959b8c45f2ccf55a4986603dda",
          "completed_at": "2026-07-21T08:03:14Z"
        },
        {
          "id": "services",
          "action": "services.audit",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-21T08:03:14Z",
          "output": {
            "status": "ok",
            "summary": {
              "critical": 0,
              "high": 0,
              "medium": 0,
              "low": 0
            },
            "findings": []
          },
          "output_hash": "13dcc58bd528f3efa3e6e0fa0853a6eedc376f1f3685fbd4869cbb2b60382ee3",
          "completed_at": "2026-07-21T08:03:14Z"
        },
        {
          "id": "state",
          "action": "state.consistency",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-21T08:03:15Z",
          "output": {
            "status": "ok",
            "repo_root": "D:\\Projects\\prd-plugin",
            "summary": {
              "errors": 0,
              "warnings": 0,
              "infos": 0
            },
            "findings": []
          },
          "output_hash": "5a1c6e5246defb1b6b6b90ff734db95bece2886b408ab112ed9b8e67222d5568",
          "completed_at": "2026-07-21T08:03:19Z"
        },
        {
          "id": "status",
          "action": "state.query",
          "status": "completed",
          "resolved_input_hash": "a15231a2142a2a9a85355a8b9cbbccffe01a9c9c2c2fd8c2bc2987cdc481564a",
          "started_at": "2026-07-21T08:03:19Z",
          "output": {
            "repo_root": "D:\\Projects\\prd-plugin",
            "autonomy_level": "autonomous",
            "requests_by_status": {
              "deferred": 1,
              "implemented": 118,
              "in_review": 2,
              "proposed": 10,
              "rejected": 2
            },
            "active_tracking": [],
            "tracking_branches": [],
            "tracking_branch_counts": {},
            "tracking_branch_errors": [],
            "open_health": [],
            "stale_count": 0,
            "skill_usage": {
              "project-llm-wiki": 2,
              "project-decision-policy": 1,
              "project-request-intake": 1,
              "project-test-driven-implementation": 1,
              "project-verification-before-completion": 1,
              "artifact-design": 1
            },
            "wiki_backfill_pending": false,
            "version_update": null
          },
          "output_hash": "e586903474ed2406420b8c35b6664c7435878ffdd07e82df1d59ac328188b08c",
          "completed_at": "2026-07-21T08:03:19Z"
        },
        {
          "id": "substrate",
          "action": "substrate.preflight",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-21T08:03:20Z",
          "output": {
            "status": "disabled",
            "services": {
              "status": "ok",
              "summary": {
                "critical": 0,
                "high": 0,
                "medium": 0,
                "low": 0
              },
              "findings": []
            },
            "policy": {
              "configured": {
                "enabled": false,
                "mode": "off",
                "capabilities": [
                  "records",
                  "graph",
                  "events"
                ],
                "contract_version": 2,
                "require_source_refs": true,
                "endpoint": "http://127.0.0.1:47124",
                "manual_url": "http://127.0.0.1:47124/utcp.json",
                "knowledge_browse_url": "http://127.0.0.1:5276",
                "auth_env": "AI_COLLAB_API_KEY",
                "timeout_seconds": 5,
                "max_result_bytes": 1048576,
                "cache_ttl_seconds": 60,
                "fallback": "local",
                "automation": {
                  "discovery_on_session_start": true,
                  "knowledge_recall": true,
                  "memory_recall": true,
                  "context_enrichment": true,
                  "notices_on_session_start": false,
                  "goals_sync": false,
                  "telemetry_on_maintenance": false,
                  "reporting_dispatch": true,
                  "judgment_dispatch": true,
                  "verification_execution": true
                }
              },
              "active": false,
              "effective_mode": "off",
              "effective_capabilities": []
            }
          },
          "output_hash": "a6df426290b4549a59eecaa0519ead9bcc50b7fcb25bd2185ff6047960f19ccb",
          "completed_at": "2026-07-21T08:03:20Z"
        },
        {
          "id": "notices",
          "action": "substrate.notices",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-21T08:03:20Z",
          "output": {
            "status": "disabled"
          },
          "output_hash": "38b904a1cf83df048360fb2480571b749fd98d57e11f1afdffb5a74a78166fea",
          "completed_at": "2026-07-21T08:03:20Z"
        },
        {
          "id": "goals",
          "action": "substrate.goals",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-21T08:03:20Z",
          "output": {
            "status": "disabled",
            "created": 0,
            "observed": 0,
            "results": []
          },
          "output_hash": "cdfd4de44a28140e686159f34f7b47975954c67e1d1efcef666e985acb136ed8",
          "completed_at": "2026-07-21T08:03:20Z"
        }
      ],
      "completed_at": "2026-07-21T08:03:20Z"
    },
    {
      "id": "WFR-360",
      "schema_version": "1.0",
      "workflow_id": "session.start",
      "workflow_version": 1,
      "definition_hash": "dd0de9444af7b094cc93673d0844fb78c801d87d978cc5f6dd6bf3e3e863917d",
      "plan_hash": "1f4ae0cd6be8385f8a9310e49978bd8d93baa729842eb6df9243665a1b581277",
      "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
      "inputs": {},
      "idempotency_key": "hook:SessionStart:e1d31ac4-dc4a-40b7-8cab-7fc72eb8b83a",
      "status": "completed",
      "attempt": 1,
      "created_at": "2026-07-21T09:55:09Z",
      "updated_at": "2026-07-21T09:55:13Z",
      "receipts": [
        {
          "step_id": "mailbox",
          "action": "requests.pull",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "ab8a35139cfd3f5821ebc5138c9a44c899b54e4036790654ff120e79c7ab6223",
          "completed_at": "2026-07-21T09:55:10Z"
        },
        {
          "step_id": "config",
          "action": "config.audit",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "88327389a2cd86588479401655e63b7c7b64ea959b8c45f2ccf55a4986603dda",
          "completed_at": "2026-07-21T09:55:10Z"
        },
        {
          "step_id": "services",
          "action": "services.audit",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "13dcc58bd528f3efa3e6e0fa0853a6eedc376f1f3685fbd4869cbb2b60382ee3",
          "completed_at": "2026-07-21T09:55:10Z"
        },
        {
          "step_id": "state",
          "action": "state.consistency",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "5a1c6e5246defb1b6b6b90ff734db95bece2886b408ab112ed9b8e67222d5568",
          "completed_at": "2026-07-21T09:55:12Z"
        },
        {
          "step_id": "status",
          "action": "state.query",
          "input_hash": "a15231a2142a2a9a85355a8b9cbbccffe01a9c9c2c2fd8c2bc2987cdc481564a",
          "output_hash": "c9e87aefac19d701ba9782ab26e7a6a158a8604cda1469472d004eb9dc036133",
          "completed_at": "2026-07-21T09:55:12Z"
        },
        {
          "step_id": "substrate",
          "action": "substrate.preflight",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "a6df426290b4549a59eecaa0519ead9bcc50b7fcb25bd2185ff6047960f19ccb",
          "completed_at": "2026-07-21T09:55:13Z"
        },
        {
          "step_id": "notices",
          "action": "substrate.notices",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "38b904a1cf83df048360fb2480571b749fd98d57e11f1afdffb5a74a78166fea",
          "completed_at": "2026-07-21T09:55:13Z"
        },
        {
          "step_id": "goals",
          "action": "substrate.goals",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "cdfd4de44a28140e686159f34f7b47975954c67e1d1efcef666e985acb136ed8",
          "completed_at": "2026-07-21T09:55:13Z"
        }
      ],
      "steps": [
        {
          "id": "mailbox",
          "action": "requests.pull",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-21T09:55:10Z",
          "output": {
            "applied": 0,
            "resolved_ids": [],
            "unmatched": [],
            "mailboxes": [],
            "pruned_outbox": [],
            "consumed_mailboxes": [],
            "outbound": {
              "delivered": 0,
              "mailboxes_published": [],
              "undeliverable": [],
              "pending": []
            },
            "addressed": {
              "delivered": 0,
              "destinations": [],
              "undelivered": [
                {
                  "id": "REQ-030",
                  "state": "not_ours_to_send",
                  "target_repo": "prd-plugin",
                  "reason": "REQ-030 was imported from 'ZeusGrid'; its target_repo records who it was addressed to, not somewhere for us to send it. Reply on its thread instead."
                },
                {
                  "id": "REQ-003",
                  "state": "not_ours_to_send",
                  "target_repo": "prd-plugin",
                  "reason": "REQ-003 was imported from 'ZeusGrid'; its target_repo records who it was addressed to, not somewhere for us to send it. Reply on its thread instead."
                },
                {
                  "id": "REQ-004",
                  "state": "not_ours_to_send",
                  "target_repo": "prd-plugin",
                  "reason": "REQ-004 was imported from 'ZeusGrid'; its target_repo records who it was addressed to, not somewhere for us to send it. Reply on its thread instead."
                },
                {
                  "id": "REQ-005",
                  "state": "not_ours_to_send",
                  "target_repo": "prd-plugin",
                  "reason": "REQ-005 was imported from 'GRAPH_LANG'; its target_repo records who it was addressed to, not somewhere for us to send it. Reply on its thread instead."
                },
                {
                  "id": "REQ-002",
                  "state": "self_addressed",
                  "target_repo": "prd-plugin",
                  "reason": "REQ-002 is addressed to this repo ('prd-plugin'); it is already here."
                },
                {
                  "id": "REQ-028",
                  "state": "self_addressed",
                  "target_repo": "prd-plugin",
                  "reason": "REQ-028 is addressed to this repo ('prd-plugin'); it is already here."
                },
                {
                  "id": "REQ-029",
                  "state": "not_ours_to_send",
                  "target_repo": "ai-collab-v3",
                  "reason": "REQ-029 was imported from 'ai-collab-v3'; its target_repo records who it was addressed to, not somewhere for us to send it. Reply on its thread instead."
                },
                {
                  "id": "REQ-138",
                  "state": "terminal",
                  "target_repo": "no-such-repo",
                  "reason": "REQ-138 is 'rejected'; a closed request is not delivered. Reopen it or file a new one if it still needs to travel."
                }
              ],
              "advisories": []
            }
          },
          "output_hash": "ab8a35139cfd3f5821ebc5138c9a44c899b54e4036790654ff120e79c7ab6223",
          "completed_at": "2026-07-21T09:55:10Z"
        },
        {
          "id": "config",
          "action": "config.audit",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-21T09:55:10Z",
          "output": {
            "status": "ok",
            "summary": {
              "settings": 208,
              "mutable": 198,
              "read_only_or_managed": 10,
              "unclassified": 0,
              "unknown": 0,
              "invalid": 0,
              "missing_using_defaults": 0
            },
            "unclassified_keys": [],
            "unknown_keys": [],
            "invalid_values": [],
            "missing_using_defaults": []
          },
          "output_hash": "88327389a2cd86588479401655e63b7c7b64ea959b8c45f2ccf55a4986603dda",
          "completed_at": "2026-07-21T09:55:10Z"
        },
        {
          "id": "services",
          "action": "services.audit",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-21T09:55:10Z",
          "output": {
            "status": "ok",
            "summary": {
              "critical": 0,
              "high": 0,
              "medium": 0,
              "low": 0
            },
            "findings": []
          },
          "output_hash": "13dcc58bd528f3efa3e6e0fa0853a6eedc376f1f3685fbd4869cbb2b60382ee3",
          "completed_at": "2026-07-21T09:55:10Z"
        },
        {
          "id": "state",
          "action": "state.consistency",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-21T09:55:10Z",
          "output": {
            "status": "ok",
            "repo_root": "D:\\Projects\\prd-plugin",
            "summary": {
              "errors": 0,
              "warnings": 0,
              "infos": 0
            },
            "findings": []
          },
          "output_hash": "5a1c6e5246defb1b6b6b90ff734db95bece2886b408ab112ed9b8e67222d5568",
          "completed_at": "2026-07-21T09:55:12Z"
        },
        {
          "id": "status",
          "action": "state.query",
          "status": "completed",
          "resolved_input_hash": "a15231a2142a2a9a85355a8b9cbbccffe01a9c9c2c2fd8c2bc2987cdc481564a",
          "started_at": "2026-07-21T09:55:12Z",
          "output": {
            "repo_root": "D:\\Projects\\prd-plugin",
            "autonomy_level": "autonomous",
            "requests_by_status": {
              "deferred": 1,
              "implemented": 120,
              "in_review": 2,
              "proposed": 10,
              "rejected": 2
            },
            "active_tracking": [],
            "tracking_branches": [],
            "tracking_branch_counts": {},
            "tracking_branch_errors": [],
            "open_health": [],
            "stale_count": 0,
            "skill_usage": {
              "project-llm-wiki": 2,
              "project-decision-policy": 1,
              "project-request-intake": 1,
              "project-test-driven-implementation": 1,
              "project-verification-before-completion": 1,
              "artifact-design": 1
            },
            "wiki_backfill_pending": false,
            "version_update": null
          },
          "output_hash": "c9e87aefac19d701ba9782ab26e7a6a158a8604cda1469472d004eb9dc036133",
          "completed_at": "2026-07-21T09:55:12Z"
        },
        {
          "id": "substrate",
          "action": "substrate.preflight",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-21T09:55:13Z",
          "output": {
            "status": "disabled",
            "services": {
              "status": "ok",
              "summary": {
                "critical": 0,
                "high": 0,
                "medium": 0,
                "low": 0
              },
              "findings": []
            },
            "policy": {
              "configured": {
                "enabled": false,
                "mode": "off",
                "capabilities": [
                  "records",
                  "graph",
                  "events"
                ],
                "contract_version": 2,
                "require_source_refs": true,
                "endpoint": "http://127.0.0.1:47124",
                "manual_url": "http://127.0.0.1:47124/utcp.json",
                "knowledge_browse_url": "http://127.0.0.1:5276",
                "auth_env": "AI_COLLAB_API_KEY",
                "timeout_seconds": 5,
                "max_result_bytes": 1048576,
                "cache_ttl_seconds": 60,
                "fallback": "local",
                "automation": {
                  "discovery_on_session_start": true,
                  "knowledge_recall": true,
                  "memory_recall": true,
                  "context_enrichment": true,
                  "notices_on_session_start": false,
                  "goals_sync": false,
                  "telemetry_on_maintenance": false,
                  "reporting_dispatch": true,
                  "judgment_dispatch": true,
                  "verification_execution": true
                }
              },
              "active": false,
              "effective_mode": "off",
              "effective_capabilities": []
            }
          },
          "output_hash": "a6df426290b4549a59eecaa0519ead9bcc50b7fcb25bd2185ff6047960f19ccb",
          "completed_at": "2026-07-21T09:55:13Z"
        },
        {
          "id": "notices",
          "action": "substrate.notices",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-21T09:55:13Z",
          "output": {
            "status": "disabled"
          },
          "output_hash": "38b904a1cf83df048360fb2480571b749fd98d57e11f1afdffb5a74a78166fea",
          "completed_at": "2026-07-21T09:55:13Z"
        },
        {
          "id": "goals",
          "action": "substrate.goals",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-21T09:55:13Z",
          "output": {
            "status": "disabled",
            "created": 0,
            "observed": 0,
            "results": []
          },
          "output_hash": "cdfd4de44a28140e686159f34f7b47975954c67e1d1efcef666e985acb136ed8",
          "completed_at": "2026-07-21T09:55:13Z"
        }
      ],
      "completed_at": "2026-07-21T09:55:13Z"
    },
    {
      "id": "WFR-361",
      "schema_version": "1.0",
      "workflow_id": "session.start",
      "workflow_version": 1,
      "definition_hash": "dd0de9444af7b094cc93673d0844fb78c801d87d978cc5f6dd6bf3e3e863917d",
      "plan_hash": "1f4ae0cd6be8385f8a9310e49978bd8d93baa729842eb6df9243665a1b581277",
      "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
      "inputs": {},
      "idempotency_key": "hook:SessionStart:fea9cd50-24e2-4e66-964f-9e4dd6d5900d",
      "status": "completed",
      "attempt": 1,
      "created_at": "2026-07-21T10:24:52Z",
      "updated_at": "2026-07-21T10:24:55Z",
      "receipts": [
        {
          "step_id": "mailbox",
          "action": "requests.pull",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "ab8a35139cfd3f5821ebc5138c9a44c899b54e4036790654ff120e79c7ab6223",
          "completed_at": "2026-07-21T10:24:53Z"
        },
        {
          "step_id": "config",
          "action": "config.audit",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "88327389a2cd86588479401655e63b7c7b64ea959b8c45f2ccf55a4986603dda",
          "completed_at": "2026-07-21T10:24:53Z"
        },
        {
          "step_id": "services",
          "action": "services.audit",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "13dcc58bd528f3efa3e6e0fa0853a6eedc376f1f3685fbd4869cbb2b60382ee3",
          "completed_at": "2026-07-21T10:24:53Z"
        },
        {
          "step_id": "state",
          "action": "state.consistency",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "5a1c6e5246defb1b6b6b90ff734db95bece2886b408ab112ed9b8e67222d5568",
          "completed_at": "2026-07-21T10:24:54Z"
        },
        {
          "step_id": "status",
          "action": "state.query",
          "input_hash": "a15231a2142a2a9a85355a8b9cbbccffe01a9c9c2c2fd8c2bc2987cdc481564a",
          "output_hash": "9c84a5b13561f16c7099f60eb054d7912ca65477273d8e0b77cab6807857c9eb",
          "completed_at": "2026-07-21T10:24:55Z"
        },
        {
          "step_id": "substrate",
          "action": "substrate.preflight",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "a6df426290b4549a59eecaa0519ead9bcc50b7fcb25bd2185ff6047960f19ccb",
          "completed_at": "2026-07-21T10:24:55Z"
        },
        {
          "step_id": "notices",
          "action": "substrate.notices",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "38b904a1cf83df048360fb2480571b749fd98d57e11f1afdffb5a74a78166fea",
          "completed_at": "2026-07-21T10:24:55Z"
        },
        {
          "step_id": "goals",
          "action": "substrate.goals",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "cdfd4de44a28140e686159f34f7b47975954c67e1d1efcef666e985acb136ed8",
          "completed_at": "2026-07-21T10:24:55Z"
        }
      ],
      "steps": [
        {
          "id": "mailbox",
          "action": "requests.pull",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-21T10:24:53Z",
          "output": {
            "applied": 0,
            "resolved_ids": [],
            "unmatched": [],
            "mailboxes": [],
            "pruned_outbox": [],
            "consumed_mailboxes": [],
            "outbound": {
              "delivered": 0,
              "mailboxes_published": [],
              "undeliverable": [],
              "pending": []
            },
            "addressed": {
              "delivered": 0,
              "destinations": [],
              "undelivered": [
                {
                  "id": "REQ-030",
                  "state": "not_ours_to_send",
                  "target_repo": "prd-plugin",
                  "reason": "REQ-030 was imported from 'ZeusGrid'; its target_repo records who it was addressed to, not somewhere for us to send it. Reply on its thread instead."
                },
                {
                  "id": "REQ-003",
                  "state": "not_ours_to_send",
                  "target_repo": "prd-plugin",
                  "reason": "REQ-003 was imported from 'ZeusGrid'; its target_repo records who it was addressed to, not somewhere for us to send it. Reply on its thread instead."
                },
                {
                  "id": "REQ-004",
                  "state": "not_ours_to_send",
                  "target_repo": "prd-plugin",
                  "reason": "REQ-004 was imported from 'ZeusGrid'; its target_repo records who it was addressed to, not somewhere for us to send it. Reply on its thread instead."
                },
                {
                  "id": "REQ-005",
                  "state": "not_ours_to_send",
                  "target_repo": "prd-plugin",
                  "reason": "REQ-005 was imported from 'GRAPH_LANG'; its target_repo records who it was addressed to, not somewhere for us to send it. Reply on its thread instead."
                },
                {
                  "id": "REQ-002",
                  "state": "self_addressed",
                  "target_repo": "prd-plugin",
                  "reason": "REQ-002 is addressed to this repo ('prd-plugin'); it is already here."
                },
                {
                  "id": "REQ-028",
                  "state": "self_addressed",
                  "target_repo": "prd-plugin",
                  "reason": "REQ-028 is addressed to this repo ('prd-plugin'); it is already here."
                },
                {
                  "id": "REQ-029",
                  "state": "not_ours_to_send",
                  "target_repo": "ai-collab-v3",
                  "reason": "REQ-029 was imported from 'ai-collab-v3'; its target_repo records who it was addressed to, not somewhere for us to send it. Reply on its thread instead."
                },
                {
                  "id": "REQ-138",
                  "state": "terminal",
                  "target_repo": "no-such-repo",
                  "reason": "REQ-138 is 'rejected'; a closed request is not delivered. Reopen it or file a new one if it still needs to travel."
                }
              ],
              "advisories": []
            }
          },
          "output_hash": "ab8a35139cfd3f5821ebc5138c9a44c899b54e4036790654ff120e79c7ab6223",
          "completed_at": "2026-07-21T10:24:53Z"
        },
        {
          "id": "config",
          "action": "config.audit",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-21T10:24:53Z",
          "output": {
            "status": "ok",
            "summary": {
              "settings": 208,
              "mutable": 198,
              "read_only_or_managed": 10,
              "unclassified": 0,
              "unknown": 0,
              "invalid": 0,
              "missing_using_defaults": 0
            },
            "unclassified_keys": [],
            "unknown_keys": [],
            "invalid_values": [],
            "missing_using_defaults": []
          },
          "output_hash": "88327389a2cd86588479401655e63b7c7b64ea959b8c45f2ccf55a4986603dda",
          "completed_at": "2026-07-21T10:24:53Z"
        },
        {
          "id": "services",
          "action": "services.audit",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-21T10:24:53Z",
          "output": {
            "status": "ok",
            "summary": {
              "critical": 0,
              "high": 0,
              "medium": 0,
              "low": 0
            },
            "findings": []
          },
          "output_hash": "13dcc58bd528f3efa3e6e0fa0853a6eedc376f1f3685fbd4869cbb2b60382ee3",
          "completed_at": "2026-07-21T10:24:53Z"
        },
        {
          "id": "state",
          "action": "state.consistency",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-21T10:24:54Z",
          "output": {
            "status": "ok",
            "repo_root": "D:\\Projects\\prd-plugin",
            "summary": {
              "errors": 0,
              "warnings": 0,
              "infos": 0
            },
            "findings": []
          },
          "output_hash": "5a1c6e5246defb1b6b6b90ff734db95bece2886b408ab112ed9b8e67222d5568",
          "completed_at": "2026-07-21T10:24:54Z"
        },
        {
          "id": "status",
          "action": "state.query",
          "status": "completed",
          "resolved_input_hash": "a15231a2142a2a9a85355a8b9cbbccffe01a9c9c2c2fd8c2bc2987cdc481564a",
          "started_at": "2026-07-21T10:24:54Z",
          "output": {
            "repo_root": "D:\\Projects\\prd-plugin",
            "autonomy_level": "autonomous",
            "requests_by_status": {
              "accepted": 1,
              "deferred": 1,
              "implemented": 125,
              "in_review": 2,
              "proposed": 4,
              "rejected": 2
            },
            "active_tracking": [],
            "tracking_branches": [],
            "tracking_branch_counts": {},
            "tracking_branch_errors": [],
            "open_health": [],
            "stale_count": 0,
            "skill_usage": {
              "project-llm-wiki": 2,
              "project-decision-policy": 1,
              "project-request-intake": 1,
              "project-test-driven-implementation": 1,
              "project-verification-before-completion": 1,
              "artifact-design": 1
            },
            "wiki_backfill_pending": false,
            "version_update": null
          },
          "output_hash": "9c84a5b13561f16c7099f60eb054d7912ca65477273d8e0b77cab6807857c9eb",
          "completed_at": "2026-07-21T10:24:55Z"
        },
        {
          "id": "substrate",
          "action": "substrate.preflight",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-21T10:24:55Z",
          "output": {
            "status": "disabled",
            "services": {
              "status": "ok",
              "summary": {
                "critical": 0,
                "high": 0,
                "medium": 0,
                "low": 0
              },
              "findings": []
            },
            "policy": {
              "configured": {
                "enabled": false,
                "mode": "off",
                "capabilities": [
                  "records",
                  "graph",
                  "events"
                ],
                "contract_version": 2,
                "require_source_refs": true,
                "endpoint": "http://127.0.0.1:47124",
                "manual_url": "http://127.0.0.1:47124/utcp.json",
                "knowledge_browse_url": "http://127.0.0.1:5276",
                "auth_env": "AI_COLLAB_API_KEY",
                "timeout_seconds": 5,
                "max_result_bytes": 1048576,
                "cache_ttl_seconds": 60,
                "fallback": "local",
                "automation": {
                  "discovery_on_session_start": true,
                  "knowledge_recall": true,
                  "memory_recall": true,
                  "context_enrichment": true,
                  "notices_on_session_start": false,
                  "goals_sync": false,
                  "telemetry_on_maintenance": false,
                  "reporting_dispatch": true,
                  "judgment_dispatch": true,
                  "verification_execution": true
                }
              },
              "active": false,
              "effective_mode": "off",
              "effective_capabilities": []
            }
          },
          "output_hash": "a6df426290b4549a59eecaa0519ead9bcc50b7fcb25bd2185ff6047960f19ccb",
          "completed_at": "2026-07-21T10:24:55Z"
        },
        {
          "id": "notices",
          "action": "substrate.notices",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-21T10:24:55Z",
          "output": {
            "status": "disabled"
          },
          "output_hash": "38b904a1cf83df048360fb2480571b749fd98d57e11f1afdffb5a74a78166fea",
          "completed_at": "2026-07-21T10:24:55Z"
        },
        {
          "id": "goals",
          "action": "substrate.goals",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-21T10:24:55Z",
          "output": {
            "status": "disabled",
            "created": 0,
            "observed": 0,
            "results": []
          },
          "output_hash": "cdfd4de44a28140e686159f34f7b47975954c67e1d1efcef666e985acb136ed8",
          "completed_at": "2026-07-21T10:24:55Z"
        }
      ],
      "completed_at": "2026-07-21T10:24:55Z"
    },
    {
      "id": "WFR-362",
      "schema_version": "1.0",
      "workflow_id": "session.start",
      "workflow_version": 1,
      "definition_hash": "dd0de9444af7b094cc93673d0844fb78c801d87d978cc5f6dd6bf3e3e863917d",
      "plan_hash": "1f4ae0cd6be8385f8a9310e49978bd8d93baa729842eb6df9243665a1b581277",
      "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
      "inputs": {},
      "idempotency_key": "hook:SessionStart:6af5adc5-97ac-4e9a-8427-cc1515bd60d4",
      "status": "completed",
      "attempt": 1,
      "created_at": "2026-07-21T15:22:58Z",
      "updated_at": "2026-07-21T15:23:01Z",
      "receipts": [
        {
          "step_id": "mailbox",
          "action": "requests.pull",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "ab8a35139cfd3f5821ebc5138c9a44c899b54e4036790654ff120e79c7ab6223",
          "completed_at": "2026-07-21T15:22:58Z"
        },
        {
          "step_id": "config",
          "action": "config.audit",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "88327389a2cd86588479401655e63b7c7b64ea959b8c45f2ccf55a4986603dda",
          "completed_at": "2026-07-21T15:22:59Z"
        },
        {
          "step_id": "services",
          "action": "services.audit",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "13dcc58bd528f3efa3e6e0fa0853a6eedc376f1f3685fbd4869cbb2b60382ee3",
          "completed_at": "2026-07-21T15:22:59Z"
        },
        {
          "step_id": "state",
          "action": "state.consistency",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "5a1c6e5246defb1b6b6b90ff734db95bece2886b408ab112ed9b8e67222d5568",
          "completed_at": "2026-07-21T15:23:00Z"
        },
        {
          "step_id": "status",
          "action": "state.query",
          "input_hash": "a15231a2142a2a9a85355a8b9cbbccffe01a9c9c2c2fd8c2bc2987cdc481564a",
          "output_hash": "eabc80e65192ea6185bc3b4657e42cd0a39062dbafe3caeaf599bdd9ee79e056",
          "completed_at": "2026-07-21T15:23:00Z"
        },
        {
          "step_id": "substrate",
          "action": "substrate.preflight",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "a6df426290b4549a59eecaa0519ead9bcc50b7fcb25bd2185ff6047960f19ccb",
          "completed_at": "2026-07-21T15:23:00Z"
        },
        {
          "step_id": "notices",
          "action": "substrate.notices",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "38b904a1cf83df048360fb2480571b749fd98d57e11f1afdffb5a74a78166fea",
          "completed_at": "2026-07-21T15:23:01Z"
        },
        {
          "step_id": "goals",
          "action": "substrate.goals",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "cdfd4de44a28140e686159f34f7b47975954c67e1d1efcef666e985acb136ed8",
          "completed_at": "2026-07-21T15:23:01Z"
        }
      ],
      "steps": [
        {
          "id": "mailbox",
          "action": "requests.pull",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-21T15:22:58Z",
          "output": {
            "applied": 0,
            "resolved_ids": [],
            "unmatched": [],
            "mailboxes": [],
            "pruned_outbox": [],
            "consumed_mailboxes": [],
            "outbound": {
              "delivered": 0,
              "mailboxes_published": [],
              "undeliverable": [],
              "pending": []
            },
            "addressed": {
              "delivered": 0,
              "destinations": [],
              "undelivered": [
                {
                  "id": "REQ-030",
                  "state": "not_ours_to_send",
                  "target_repo": "prd-plugin",
                  "reason": "REQ-030 was imported from 'ZeusGrid'; its target_repo records who it was addressed to, not somewhere for us to send it. Reply on its thread instead."
                },
                {
                  "id": "REQ-003",
                  "state": "not_ours_to_send",
                  "target_repo": "prd-plugin",
                  "reason": "REQ-003 was imported from 'ZeusGrid'; its target_repo records who it was addressed to, not somewhere for us to send it. Reply on its thread instead."
                },
                {
                  "id": "REQ-004",
                  "state": "not_ours_to_send",
                  "target_repo": "prd-plugin",
                  "reason": "REQ-004 was imported from 'ZeusGrid'; its target_repo records who it was addressed to, not somewhere for us to send it. Reply on its thread instead."
                },
                {
                  "id": "REQ-005",
                  "state": "not_ours_to_send",
                  "target_repo": "prd-plugin",
                  "reason": "REQ-005 was imported from 'GRAPH_LANG'; its target_repo records who it was addressed to, not somewhere for us to send it. Reply on its thread instead."
                },
                {
                  "id": "REQ-002",
                  "state": "self_addressed",
                  "target_repo": "prd-plugin",
                  "reason": "REQ-002 is addressed to this repo ('prd-plugin'); it is already here."
                },
                {
                  "id": "REQ-028",
                  "state": "self_addressed",
                  "target_repo": "prd-plugin",
                  "reason": "REQ-028 is addressed to this repo ('prd-plugin'); it is already here."
                },
                {
                  "id": "REQ-029",
                  "state": "not_ours_to_send",
                  "target_repo": "ai-collab-v3",
                  "reason": "REQ-029 was imported from 'ai-collab-v3'; its target_repo records who it was addressed to, not somewhere for us to send it. Reply on its thread instead."
                },
                {
                  "id": "REQ-138",
                  "state": "terminal",
                  "target_repo": "no-such-repo",
                  "reason": "REQ-138 is 'rejected'; a closed request is not delivered. Reopen it or file a new one if it still needs to travel."
                }
              ],
              "advisories": []
            }
          },
          "output_hash": "ab8a35139cfd3f5821ebc5138c9a44c899b54e4036790654ff120e79c7ab6223",
          "completed_at": "2026-07-21T15:22:58Z"
        },
        {
          "id": "config",
          "action": "config.audit",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-21T15:22:59Z",
          "output": {
            "status": "ok",
            "summary": {
              "settings": 208,
              "mutable": 198,
              "read_only_or_managed": 10,
              "unclassified": 0,
              "unknown": 0,
              "invalid": 0,
              "missing_using_defaults": 0
            },
            "unclassified_keys": [],
            "unknown_keys": [],
            "invalid_values": [],
            "missing_using_defaults": []
          },
          "output_hash": "88327389a2cd86588479401655e63b7c7b64ea959b8c45f2ccf55a4986603dda",
          "completed_at": "2026-07-21T15:22:59Z"
        },
        {
          "id": "services",
          "action": "services.audit",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-21T15:22:59Z",
          "output": {
            "status": "ok",
            "summary": {
              "critical": 0,
              "high": 0,
              "medium": 0,
              "low": 0
            },
            "findings": []
          },
          "output_hash": "13dcc58bd528f3efa3e6e0fa0853a6eedc376f1f3685fbd4869cbb2b60382ee3",
          "completed_at": "2026-07-21T15:22:59Z"
        },
        {
          "id": "state",
          "action": "state.consistency",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-21T15:22:59Z",
          "output": {
            "status": "ok",
            "repo_root": "D:\\Projects\\prd-plugin",
            "summary": {
              "errors": 0,
              "warnings": 0,
              "infos": 0
            },
            "findings": []
          },
          "output_hash": "5a1c6e5246defb1b6b6b90ff734db95bece2886b408ab112ed9b8e67222d5568",
          "completed_at": "2026-07-21T15:23:00Z"
        },
        {
          "id": "status",
          "action": "state.query",
          "status": "completed",
          "resolved_input_hash": "a15231a2142a2a9a85355a8b9cbbccffe01a9c9c2c2fd8c2bc2987cdc481564a",
          "started_at": "2026-07-21T15:23:00Z",
          "output": {
            "repo_root": "D:\\Projects\\prd-plugin",
            "autonomy_level": "autonomous",
            "requests_by_status": {
              "accepted": 1,
              "deferred": 1,
              "implemented": 131,
              "in_review": 2,
              "proposed": 1,
              "rejected": 3
            },
            "active_tracking": [],
            "tracking_branches": [],
            "tracking_branch_counts": {},
            "tracking_branch_errors": [],
            "open_health": [
              "HLT-020"
            ],
            "stale_count": 0,
            "skill_usage": {
              "project-llm-wiki": 2,
              "project-decision-policy": 1,
              "project-request-intake": 1,
              "project-test-driven-implementation": 1,
              "project-verification-before-completion": 1,
              "artifact-design": 1
            },
            "wiki_backfill_pending": false,
            "wiki_ingest_drift": null,
            "version_update": null
          },
          "output_hash": "eabc80e65192ea6185bc3b4657e42cd0a39062dbafe3caeaf599bdd9ee79e056",
          "completed_at": "2026-07-21T15:23:00Z"
        },
        {
          "id": "substrate",
          "action": "substrate.preflight",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-21T15:23:00Z",
          "output": {
            "status": "disabled",
            "services": {
              "status": "ok",
              "summary": {
                "critical": 0,
                "high": 0,
                "medium": 0,
                "low": 0
              },
              "findings": []
            },
            "policy": {
              "configured": {
                "enabled": false,
                "mode": "off",
                "capabilities": [
                  "records",
                  "graph",
                  "events"
                ],
                "contract_version": 2,
                "require_source_refs": true,
                "endpoint": "http://127.0.0.1:47124",
                "manual_url": "http://127.0.0.1:47124/utcp.json",
                "knowledge_browse_url": "http://127.0.0.1:5276",
                "auth_env": "AI_COLLAB_API_KEY",
                "timeout_seconds": 5,
                "max_result_bytes": 1048576,
                "cache_ttl_seconds": 60,
                "fallback": "local",
                "automation": {
                  "discovery_on_session_start": true,
                  "knowledge_recall": true,
                  "memory_recall": true,
                  "context_enrichment": true,
                  "notices_on_session_start": false,
                  "goals_sync": false,
                  "telemetry_on_maintenance": false,
                  "reporting_dispatch": true,
                  "judgment_dispatch": true,
                  "verification_execution": true
                }
              },
              "active": false,
              "effective_mode": "off",
              "effective_capabilities": []
            }
          },
          "output_hash": "a6df426290b4549a59eecaa0519ead9bcc50b7fcb25bd2185ff6047960f19ccb",
          "completed_at": "2026-07-21T15:23:00Z"
        },
        {
          "id": "notices",
          "action": "substrate.notices",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-21T15:23:01Z",
          "output": {
            "status": "disabled"
          },
          "output_hash": "38b904a1cf83df048360fb2480571b749fd98d57e11f1afdffb5a74a78166fea",
          "completed_at": "2026-07-21T15:23:01Z"
        },
        {
          "id": "goals",
          "action": "substrate.goals",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-21T15:23:01Z",
          "output": {
            "status": "disabled",
            "created": 0,
            "observed": 0,
            "results": []
          },
          "output_hash": "cdfd4de44a28140e686159f34f7b47975954c67e1d1efcef666e985acb136ed8",
          "completed_at": "2026-07-21T15:23:01Z"
        }
      ],
      "completed_at": "2026-07-21T15:23:01Z"
    },
    {
      "id": "WFR-363",
      "schema_version": "1.0",
      "workflow_id": "session.start",
      "workflow_version": 1,
      "definition_hash": "dd0de9444af7b094cc93673d0844fb78c801d87d978cc5f6dd6bf3e3e863917d",
      "plan_hash": "1f4ae0cd6be8385f8a9310e49978bd8d93baa729842eb6df9243665a1b581277",
      "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
      "inputs": {},
      "idempotency_key": "hook:SessionStart:54328fbd-ff36-4c38-a72a-adab4c61834f",
      "status": "completed",
      "attempt": 1,
      "created_at": "2026-07-21T16:12:10Z",
      "updated_at": "2026-07-21T16:12:15Z",
      "receipts": [
        {
          "step_id": "mailbox",
          "action": "requests.pull",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "ab8a35139cfd3f5821ebc5138c9a44c899b54e4036790654ff120e79c7ab6223",
          "completed_at": "2026-07-21T16:12:10Z"
        },
        {
          "step_id": "config",
          "action": "config.audit",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "88327389a2cd86588479401655e63b7c7b64ea959b8c45f2ccf55a4986603dda",
          "completed_at": "2026-07-21T16:12:11Z"
        },
        {
          "step_id": "services",
          "action": "services.audit",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "13dcc58bd528f3efa3e6e0fa0853a6eedc376f1f3685fbd4869cbb2b60382ee3",
          "completed_at": "2026-07-21T16:12:11Z"
        },
        {
          "step_id": "state",
          "action": "state.consistency",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "5a1c6e5246defb1b6b6b90ff734db95bece2886b408ab112ed9b8e67222d5568",
          "completed_at": "2026-07-21T16:12:13Z"
        },
        {
          "step_id": "status",
          "action": "state.query",
          "input_hash": "a15231a2142a2a9a85355a8b9cbbccffe01a9c9c2c2fd8c2bc2987cdc481564a",
          "output_hash": "eabc80e65192ea6185bc3b4657e42cd0a39062dbafe3caeaf599bdd9ee79e056",
          "completed_at": "2026-07-21T16:12:14Z"
        },
        {
          "step_id": "substrate",
          "action": "substrate.preflight",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "a6df426290b4549a59eecaa0519ead9bcc50b7fcb25bd2185ff6047960f19ccb",
          "completed_at": "2026-07-21T16:12:14Z"
        },
        {
          "step_id": "notices",
          "action": "substrate.notices",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "38b904a1cf83df048360fb2480571b749fd98d57e11f1afdffb5a74a78166fea",
          "completed_at": "2026-07-21T16:12:14Z"
        },
        {
          "step_id": "goals",
          "action": "substrate.goals",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "cdfd4de44a28140e686159f34f7b47975954c67e1d1efcef666e985acb136ed8",
          "completed_at": "2026-07-21T16:12:14Z"
        }
      ],
      "steps": [
        {
          "id": "mailbox",
          "action": "requests.pull",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-21T16:12:10Z",
          "output": {
            "applied": 0,
            "resolved_ids": [],
            "unmatched": [],
            "mailboxes": [],
            "pruned_outbox": [],
            "consumed_mailboxes": [],
            "outbound": {
              "delivered": 0,
              "mailboxes_published": [],
              "undeliverable": [],
              "pending": []
            },
            "addressed": {
              "delivered": 0,
              "destinations": [],
              "undelivered": [
                {
                  "id": "REQ-030",
                  "state": "not_ours_to_send",
                  "target_repo": "prd-plugin",
                  "reason": "REQ-030 was imported from 'ZeusGrid'; its target_repo records who it was addressed to, not somewhere for us to send it. Reply on its thread instead."
                },
                {
                  "id": "REQ-003",
                  "state": "not_ours_to_send",
                  "target_repo": "prd-plugin",
                  "reason": "REQ-003 was imported from 'ZeusGrid'; its target_repo records who it was addressed to, not somewhere for us to send it. Reply on its thread instead."
                },
                {
                  "id": "REQ-004",
                  "state": "not_ours_to_send",
                  "target_repo": "prd-plugin",
                  "reason": "REQ-004 was imported from 'ZeusGrid'; its target_repo records who it was addressed to, not somewhere for us to send it. Reply on its thread instead."
                },
                {
                  "id": "REQ-005",
                  "state": "not_ours_to_send",
                  "target_repo": "prd-plugin",
                  "reason": "REQ-005 was imported from 'GRAPH_LANG'; its target_repo records who it was addressed to, not somewhere for us to send it. Reply on its thread instead."
                },
                {
                  "id": "REQ-002",
                  "state": "self_addressed",
                  "target_repo": "prd-plugin",
                  "reason": "REQ-002 is addressed to this repo ('prd-plugin'); it is already here."
                },
                {
                  "id": "REQ-028",
                  "state": "self_addressed",
                  "target_repo": "prd-plugin",
                  "reason": "REQ-028 is addressed to this repo ('prd-plugin'); it is already here."
                },
                {
                  "id": "REQ-029",
                  "state": "not_ours_to_send",
                  "target_repo": "ai-collab-v3",
                  "reason": "REQ-029 was imported from 'ai-collab-v3'; its target_repo records who it was addressed to, not somewhere for us to send it. Reply on its thread instead."
                },
                {
                  "id": "REQ-138",
                  "state": "terminal",
                  "target_repo": "no-such-repo",
                  "reason": "REQ-138 is 'rejected'; a closed request is not delivered. Reopen it or file a new one if it still needs to travel."
                }
              ],
              "advisories": []
            }
          },
          "output_hash": "ab8a35139cfd3f5821ebc5138c9a44c899b54e4036790654ff120e79c7ab6223",
          "completed_at": "2026-07-21T16:12:10Z"
        },
        {
          "id": "config",
          "action": "config.audit",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-21T16:12:11Z",
          "output": {
            "status": "ok",
            "summary": {
              "settings": 208,
              "mutable": 198,
              "read_only_or_managed": 10,
              "unclassified": 0,
              "unknown": 0,
              "invalid": 0,
              "missing_using_defaults": 0
            },
            "unclassified_keys": [],
            "unknown_keys": [],
            "invalid_values": [],
            "missing_using_defaults": []
          },
          "output_hash": "88327389a2cd86588479401655e63b7c7b64ea959b8c45f2ccf55a4986603dda",
          "completed_at": "2026-07-21T16:12:11Z"
        },
        {
          "id": "services",
          "action": "services.audit",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-21T16:12:11Z",
          "output": {
            "status": "ok",
            "summary": {
              "critical": 0,
              "high": 0,
              "medium": 0,
              "low": 0
            },
            "findings": []
          },
          "output_hash": "13dcc58bd528f3efa3e6e0fa0853a6eedc376f1f3685fbd4869cbb2b60382ee3",
          "completed_at": "2026-07-21T16:12:11Z"
        },
        {
          "id": "state",
          "action": "state.consistency",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-21T16:12:11Z",
          "output": {
            "status": "ok",
            "repo_root": "D:\\Projects\\prd-plugin",
            "summary": {
              "errors": 0,
              "warnings": 0,
              "infos": 0
            },
            "findings": []
          },
          "output_hash": "5a1c6e5246defb1b6b6b90ff734db95bece2886b408ab112ed9b8e67222d5568",
          "completed_at": "2026-07-21T16:12:13Z"
        },
        {
          "id": "status",
          "action": "state.query",
          "status": "completed",
          "resolved_input_hash": "a15231a2142a2a9a85355a8b9cbbccffe01a9c9c2c2fd8c2bc2987cdc481564a",
          "started_at": "2026-07-21T16:12:13Z",
          "output": {
            "repo_root": "D:\\Projects\\prd-plugin",
            "autonomy_level": "autonomous",
            "requests_by_status": {
              "accepted": 1,
              "deferred": 1,
              "implemented": 131,
              "in_review": 2,
              "proposed": 1,
              "rejected": 3
            },
            "active_tracking": [],
            "tracking_branches": [],
            "tracking_branch_counts": {},
            "tracking_branch_errors": [],
            "open_health": [
              "HLT-020"
            ],
            "stale_count": 0,
            "skill_usage": {
              "project-llm-wiki": 2,
              "project-decision-policy": 1,
              "project-request-intake": 1,
              "project-test-driven-implementation": 1,
              "project-verification-before-completion": 1,
              "artifact-design": 1
            },
            "wiki_backfill_pending": false,
            "wiki_ingest_drift": null,
            "version_update": null
          },
          "output_hash": "eabc80e65192ea6185bc3b4657e42cd0a39062dbafe3caeaf599bdd9ee79e056",
          "completed_at": "2026-07-21T16:12:14Z"
        },
        {
          "id": "substrate",
          "action": "substrate.preflight",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-21T16:12:14Z",
          "output": {
            "status": "disabled",
            "services": {
              "status": "ok",
              "summary": {
                "critical": 0,
                "high": 0,
                "medium": 0,
                "low": 0
              },
              "findings": []
            },
            "policy": {
              "configured": {
                "enabled": false,
                "mode": "off",
                "capabilities": [
                  "records",
                  "graph",
                  "events"
                ],
                "contract_version": 2,
                "require_source_refs": true,
                "endpoint": "http://127.0.0.1:47124",
                "manual_url": "http://127.0.0.1:47124/utcp.json",
                "knowledge_browse_url": "http://127.0.0.1:5276",
                "auth_env": "AI_COLLAB_API_KEY",
                "timeout_seconds": 5,
                "max_result_bytes": 1048576,
                "cache_ttl_seconds": 60,
                "fallback": "local",
                "automation": {
                  "discovery_on_session_start": true,
                  "knowledge_recall": true,
                  "memory_recall": true,
                  "context_enrichment": true,
                  "notices_on_session_start": false,
                  "goals_sync": false,
                  "telemetry_on_maintenance": false,
                  "reporting_dispatch": true,
                  "judgment_dispatch": true,
                  "verification_execution": true
                }
              },
              "active": false,
              "effective_mode": "off",
              "effective_capabilities": []
            }
          },
          "output_hash": "a6df426290b4549a59eecaa0519ead9bcc50b7fcb25bd2185ff6047960f19ccb",
          "completed_at": "2026-07-21T16:12:14Z"
        },
        {
          "id": "notices",
          "action": "substrate.notices",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-21T16:12:14Z",
          "output": {
            "status": "disabled"
          },
          "output_hash": "38b904a1cf83df048360fb2480571b749fd98d57e11f1afdffb5a74a78166fea",
          "completed_at": "2026-07-21T16:12:14Z"
        },
        {
          "id": "goals",
          "action": "substrate.goals",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-21T16:12:14Z",
          "output": {
            "status": "disabled",
            "created": 0,
            "observed": 0,
            "results": []
          },
          "output_hash": "cdfd4de44a28140e686159f34f7b47975954c67e1d1efcef666e985acb136ed8",
          "completed_at": "2026-07-21T16:12:14Z"
        }
      ],
      "completed_at": "2026-07-21T16:12:15Z"
    },
    {
      "id": "WFR-364",
      "schema_version": "1.0",
      "workflow_id": "session.start",
      "workflow_version": 1,
      "definition_hash": "dd0de9444af7b094cc93673d0844fb78c801d87d978cc5f6dd6bf3e3e863917d",
      "plan_hash": "1f4ae0cd6be8385f8a9310e49978bd8d93baa729842eb6df9243665a1b581277",
      "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
      "inputs": {},
      "idempotency_key": "hook:SessionStart:82b35d93-29b2-4bef-a984-8c0def29786a",
      "status": "completed",
      "attempt": 1,
      "created_at": "2026-07-22T07:30:00Z",
      "updated_at": "2026-07-22T07:30:10Z",
      "receipts": [
        {
          "step_id": "mailbox",
          "action": "requests.pull",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "ab8a35139cfd3f5821ebc5138c9a44c899b54e4036790654ff120e79c7ab6223",
          "completed_at": "2026-07-22T07:30:00Z"
        },
        {
          "step_id": "config",
          "action": "config.audit",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "88327389a2cd86588479401655e63b7c7b64ea959b8c45f2ccf55a4986603dda",
          "completed_at": "2026-07-22T07:30:00Z"
        },
        {
          "step_id": "services",
          "action": "services.audit",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "13dcc58bd528f3efa3e6e0fa0853a6eedc376f1f3685fbd4869cbb2b60382ee3",
          "completed_at": "2026-07-22T07:30:01Z"
        },
        {
          "step_id": "state",
          "action": "state.consistency",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "5a1c6e5246defb1b6b6b90ff734db95bece2886b408ab112ed9b8e67222d5568",
          "completed_at": "2026-07-22T07:30:06Z"
        },
        {
          "step_id": "status",
          "action": "state.query",
          "input_hash": "a15231a2142a2a9a85355a8b9cbbccffe01a9c9c2c2fd8c2bc2987cdc481564a",
          "output_hash": "eabc80e65192ea6185bc3b4657e42cd0a39062dbafe3caeaf599bdd9ee79e056",
          "completed_at": "2026-07-22T07:30:08Z"
        },
        {
          "step_id": "substrate",
          "action": "substrate.preflight",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "a6df426290b4549a59eecaa0519ead9bcc50b7fcb25bd2185ff6047960f19ccb",
          "completed_at": "2026-07-22T07:30:09Z"
        },
        {
          "step_id": "notices",
          "action": "substrate.notices",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "38b904a1cf83df048360fb2480571b749fd98d57e11f1afdffb5a74a78166fea",
          "completed_at": "2026-07-22T07:30:09Z"
        },
        {
          "step_id": "goals",
          "action": "substrate.goals",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "cdfd4de44a28140e686159f34f7b47975954c67e1d1efcef666e985acb136ed8",
          "completed_at": "2026-07-22T07:30:09Z"
        }
      ],
      "steps": [
        {
          "id": "mailbox",
          "action": "requests.pull",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-22T07:30:00Z",
          "output": {
            "applied": 0,
            "resolved_ids": [],
            "unmatched": [],
            "mailboxes": [],
            "pruned_outbox": [],
            "consumed_mailboxes": [],
            "outbound": {
              "delivered": 0,
              "mailboxes_published": [],
              "undeliverable": [],
              "pending": []
            },
            "addressed": {
              "delivered": 0,
              "destinations": [],
              "undelivered": [
                {
                  "id": "REQ-030",
                  "state": "not_ours_to_send",
                  "target_repo": "prd-plugin",
                  "reason": "REQ-030 was imported from 'ZeusGrid'; its target_repo records who it was addressed to, not somewhere for us to send it. Reply on its thread instead."
                },
                {
                  "id": "REQ-003",
                  "state": "not_ours_to_send",
                  "target_repo": "prd-plugin",
                  "reason": "REQ-003 was imported from 'ZeusGrid'; its target_repo records who it was addressed to, not somewhere for us to send it. Reply on its thread instead."
                },
                {
                  "id": "REQ-004",
                  "state": "not_ours_to_send",
                  "target_repo": "prd-plugin",
                  "reason": "REQ-004 was imported from 'ZeusGrid'; its target_repo records who it was addressed to, not somewhere for us to send it. Reply on its thread instead."
                },
                {
                  "id": "REQ-005",
                  "state": "not_ours_to_send",
                  "target_repo": "prd-plugin",
                  "reason": "REQ-005 was imported from 'GRAPH_LANG'; its target_repo records who it was addressed to, not somewhere for us to send it. Reply on its thread instead."
                },
                {
                  "id": "REQ-002",
                  "state": "self_addressed",
                  "target_repo": "prd-plugin",
                  "reason": "REQ-002 is addressed to this repo ('prd-plugin'); it is already here."
                },
                {
                  "id": "REQ-028",
                  "state": "self_addressed",
                  "target_repo": "prd-plugin",
                  "reason": "REQ-028 is addressed to this repo ('prd-plugin'); it is already here."
                },
                {
                  "id": "REQ-029",
                  "state": "not_ours_to_send",
                  "target_repo": "ai-collab-v3",
                  "reason": "REQ-029 was imported from 'ai-collab-v3'; its target_repo records who it was addressed to, not somewhere for us to send it. Reply on its thread instead."
                },
                {
                  "id": "REQ-138",
                  "state": "terminal",
                  "target_repo": "no-such-repo",
                  "reason": "REQ-138 is 'rejected'; a closed request is not delivered. Reopen it or file a new one if it still needs to travel."
                }
              ],
              "advisories": []
            }
          },
          "output_hash": "ab8a35139cfd3f5821ebc5138c9a44c899b54e4036790654ff120e79c7ab6223",
          "completed_at": "2026-07-22T07:30:00Z"
        },
        {
          "id": "config",
          "action": "config.audit",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-22T07:30:00Z",
          "output": {
            "status": "ok",
            "summary": {
              "settings": 208,
              "mutable": 198,
              "read_only_or_managed": 10,
              "unclassified": 0,
              "unknown": 0,
              "invalid": 0,
              "missing_using_defaults": 0
            },
            "unclassified_keys": [],
            "unknown_keys": [],
            "invalid_values": [],
            "missing_using_defaults": []
          },
          "output_hash": "88327389a2cd86588479401655e63b7c7b64ea959b8c45f2ccf55a4986603dda",
          "completed_at": "2026-07-22T07:30:00Z"
        },
        {
          "id": "services",
          "action": "services.audit",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-22T07:30:01Z",
          "output": {
            "status": "ok",
            "summary": {
              "critical": 0,
              "high": 0,
              "medium": 0,
              "low": 0
            },
            "findings": []
          },
          "output_hash": "13dcc58bd528f3efa3e6e0fa0853a6eedc376f1f3685fbd4869cbb2b60382ee3",
          "completed_at": "2026-07-22T07:30:01Z"
        },
        {
          "id": "state",
          "action": "state.consistency",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-22T07:30:01Z",
          "output": {
            "status": "ok",
            "repo_root": "D:\\Projects\\prd-plugin",
            "summary": {
              "errors": 0,
              "warnings": 0,
              "infos": 0
            },
            "findings": []
          },
          "output_hash": "5a1c6e5246defb1b6b6b90ff734db95bece2886b408ab112ed9b8e67222d5568",
          "completed_at": "2026-07-22T07:30:06Z"
        },
        {
          "id": "status",
          "action": "state.query",
          "status": "completed",
          "resolved_input_hash": "a15231a2142a2a9a85355a8b9cbbccffe01a9c9c2c2fd8c2bc2987cdc481564a",
          "started_at": "2026-07-22T07:30:07Z",
          "output": {
            "repo_root": "D:\\Projects\\prd-plugin",
            "autonomy_level": "autonomous",
            "requests_by_status": {
              "accepted": 1,
              "deferred": 1,
              "implemented": 131,
              "in_review": 2,
              "proposed": 1,
              "rejected": 3
            },
            "active_tracking": [],
            "tracking_branches": [],
            "tracking_branch_counts": {},
            "tracking_branch_errors": [],
            "open_health": [
              "HLT-020"
            ],
            "stale_count": 0,
            "skill_usage": {
              "project-llm-wiki": 2,
              "project-decision-policy": 1,
              "project-request-intake": 1,
              "project-test-driven-implementation": 1,
              "project-verification-before-completion": 1,
              "artifact-design": 1
            },
            "wiki_backfill_pending": false,
            "wiki_ingest_drift": null,
            "version_update": null
          },
          "output_hash": "eabc80e65192ea6185bc3b4657e42cd0a39062dbafe3caeaf599bdd9ee79e056",
          "completed_at": "2026-07-22T07:30:08Z"
        },
        {
          "id": "substrate",
          "action": "substrate.preflight",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-22T07:30:08Z",
          "output": {
            "status": "disabled",
            "services": {
              "status": "ok",
              "summary": {
                "critical": 0,
                "high": 0,
                "medium": 0,
                "low": 0
              },
              "findings": []
            },
            "policy": {
              "configured": {
                "enabled": false,
                "mode": "off",
                "capabilities": [
                  "records",
                  "graph",
                  "events"
                ],
                "contract_version": 2,
                "require_source_refs": true,
                "endpoint": "http://127.0.0.1:47124",
                "manual_url": "http://127.0.0.1:47124/utcp.json",
                "knowledge_browse_url": "http://127.0.0.1:5276",
                "auth_env": "AI_COLLAB_API_KEY",
                "timeout_seconds": 5,
                "max_result_bytes": 1048576,
                "cache_ttl_seconds": 60,
                "fallback": "local",
                "automation": {
                  "discovery_on_session_start": true,
                  "knowledge_recall": true,
                  "memory_recall": true,
                  "context_enrichment": true,
                  "notices_on_session_start": false,
                  "goals_sync": false,
                  "telemetry_on_maintenance": false,
                  "reporting_dispatch": true,
                  "judgment_dispatch": true,
                  "verification_execution": true
                }
              },
              "active": false,
              "effective_mode": "off",
              "effective_capabilities": []
            }
          },
          "output_hash": "a6df426290b4549a59eecaa0519ead9bcc50b7fcb25bd2185ff6047960f19ccb",
          "completed_at": "2026-07-22T07:30:09Z"
        },
        {
          "id": "notices",
          "action": "substrate.notices",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-22T07:30:09Z",
          "output": {
            "status": "disabled"
          },
          "output_hash": "38b904a1cf83df048360fb2480571b749fd98d57e11f1afdffb5a74a78166fea",
          "completed_at": "2026-07-22T07:30:09Z"
        },
        {
          "id": "goals",
          "action": "substrate.goals",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-22T07:30:09Z",
          "output": {
            "status": "disabled",
            "created": 0,
            "observed": 0,
            "results": []
          },
          "output_hash": "cdfd4de44a28140e686159f34f7b47975954c67e1d1efcef666e985acb136ed8",
          "completed_at": "2026-07-22T07:30:09Z"
        }
      ],
      "completed_at": "2026-07-22T07:30:10Z"
    },
    {
      "id": "WFR-365",
      "schema_version": "1.0",
      "workflow_id": "session.start",
      "workflow_version": 1,
      "definition_hash": "dd0de9444af7b094cc93673d0844fb78c801d87d978cc5f6dd6bf3e3e863917d",
      "plan_hash": "1f4ae0cd6be8385f8a9310e49978bd8d93baa729842eb6df9243665a1b581277",
      "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
      "inputs": {},
      "idempotency_key": "hook:SessionStart:4adf0107-05cc-4b33-99b2-da3bd90466a4",
      "status": "completed",
      "attempt": 1,
      "created_at": "2026-07-22T08:55:23Z",
      "updated_at": "2026-07-22T08:55:26Z",
      "receipts": [
        {
          "step_id": "mailbox",
          "action": "requests.pull",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "ab8a35139cfd3f5821ebc5138c9a44c899b54e4036790654ff120e79c7ab6223",
          "completed_at": "2026-07-22T08:55:24Z"
        },
        {
          "step_id": "config",
          "action": "config.audit",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "88327389a2cd86588479401655e63b7c7b64ea959b8c45f2ccf55a4986603dda",
          "completed_at": "2026-07-22T08:55:24Z"
        },
        {
          "step_id": "services",
          "action": "services.audit",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "13dcc58bd528f3efa3e6e0fa0853a6eedc376f1f3685fbd4869cbb2b60382ee3",
          "completed_at": "2026-07-22T08:55:24Z"
        },
        {
          "step_id": "state",
          "action": "state.consistency",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "5a1c6e5246defb1b6b6b90ff734db95bece2886b408ab112ed9b8e67222d5568",
          "completed_at": "2026-07-22T08:55:25Z"
        },
        {
          "step_id": "status",
          "action": "state.query",
          "input_hash": "a15231a2142a2a9a85355a8b9cbbccffe01a9c9c2c2fd8c2bc2987cdc481564a",
          "output_hash": "eabc80e65192ea6185bc3b4657e42cd0a39062dbafe3caeaf599bdd9ee79e056",
          "completed_at": "2026-07-22T08:55:25Z"
        },
        {
          "step_id": "substrate",
          "action": "substrate.preflight",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "a6df426290b4549a59eecaa0519ead9bcc50b7fcb25bd2185ff6047960f19ccb",
          "completed_at": "2026-07-22T08:55:26Z"
        },
        {
          "step_id": "notices",
          "action": "substrate.notices",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "38b904a1cf83df048360fb2480571b749fd98d57e11f1afdffb5a74a78166fea",
          "completed_at": "2026-07-22T08:55:26Z"
        },
        {
          "step_id": "goals",
          "action": "substrate.goals",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "cdfd4de44a28140e686159f34f7b47975954c67e1d1efcef666e985acb136ed8",
          "completed_at": "2026-07-22T08:55:26Z"
        }
      ],
      "steps": [
        {
          "id": "mailbox",
          "action": "requests.pull",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-22T08:55:23Z",
          "output": {
            "applied": 0,
            "resolved_ids": [],
            "unmatched": [],
            "mailboxes": [],
            "pruned_outbox": [],
            "consumed_mailboxes": [],
            "outbound": {
              "delivered": 0,
              "mailboxes_published": [],
              "undeliverable": [],
              "pending": []
            },
            "addressed": {
              "delivered": 0,
              "destinations": [],
              "undelivered": [
                {
                  "id": "REQ-030",
                  "state": "not_ours_to_send",
                  "target_repo": "prd-plugin",
                  "reason": "REQ-030 was imported from 'ZeusGrid'; its target_repo records who it was addressed to, not somewhere for us to send it. Reply on its thread instead."
                },
                {
                  "id": "REQ-003",
                  "state": "not_ours_to_send",
                  "target_repo": "prd-plugin",
                  "reason": "REQ-003 was imported from 'ZeusGrid'; its target_repo records who it was addressed to, not somewhere for us to send it. Reply on its thread instead."
                },
                {
                  "id": "REQ-004",
                  "state": "not_ours_to_send",
                  "target_repo": "prd-plugin",
                  "reason": "REQ-004 was imported from 'ZeusGrid'; its target_repo records who it was addressed to, not somewhere for us to send it. Reply on its thread instead."
                },
                {
                  "id": "REQ-005",
                  "state": "not_ours_to_send",
                  "target_repo": "prd-plugin",
                  "reason": "REQ-005 was imported from 'GRAPH_LANG'; its target_repo records who it was addressed to, not somewhere for us to send it. Reply on its thread instead."
                },
                {
                  "id": "REQ-002",
                  "state": "self_addressed",
                  "target_repo": "prd-plugin",
                  "reason": "REQ-002 is addressed to this repo ('prd-plugin'); it is already here."
                },
                {
                  "id": "REQ-028",
                  "state": "self_addressed",
                  "target_repo": "prd-plugin",
                  "reason": "REQ-028 is addressed to this repo ('prd-plugin'); it is already here."
                },
                {
                  "id": "REQ-029",
                  "state": "not_ours_to_send",
                  "target_repo": "ai-collab-v3",
                  "reason": "REQ-029 was imported from 'ai-collab-v3'; its target_repo records who it was addressed to, not somewhere for us to send it. Reply on its thread instead."
                },
                {
                  "id": "REQ-138",
                  "state": "terminal",
                  "target_repo": "no-such-repo",
                  "reason": "REQ-138 is 'rejected'; a closed request is not delivered. Reopen it or file a new one if it still needs to travel."
                }
              ],
              "advisories": []
            }
          },
          "output_hash": "ab8a35139cfd3f5821ebc5138c9a44c899b54e4036790654ff120e79c7ab6223",
          "completed_at": "2026-07-22T08:55:24Z"
        },
        {
          "id": "config",
          "action": "config.audit",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-22T08:55:24Z",
          "output": {
            "status": "ok",
            "summary": {
              "settings": 208,
              "mutable": 198,
              "read_only_or_managed": 10,
              "unclassified": 0,
              "unknown": 0,
              "invalid": 0,
              "missing_using_defaults": 0
            },
            "unclassified_keys": [],
            "unknown_keys": [],
            "invalid_values": [],
            "missing_using_defaults": []
          },
          "output_hash": "88327389a2cd86588479401655e63b7c7b64ea959b8c45f2ccf55a4986603dda",
          "completed_at": "2026-07-22T08:55:24Z"
        },
        {
          "id": "services",
          "action": "services.audit",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-22T08:55:24Z",
          "output": {
            "status": "ok",
            "summary": {
              "critical": 0,
              "high": 0,
              "medium": 0,
              "low": 0
            },
            "findings": []
          },
          "output_hash": "13dcc58bd528f3efa3e6e0fa0853a6eedc376f1f3685fbd4869cbb2b60382ee3",
          "completed_at": "2026-07-22T08:55:24Z"
        },
        {
          "id": "state",
          "action": "state.consistency",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-22T08:55:24Z",
          "output": {
            "status": "ok",
            "repo_root": "D:\\Projects\\prd-plugin",
            "summary": {
              "errors": 0,
              "warnings": 0,
              "infos": 0
            },
            "findings": []
          },
          "output_hash": "5a1c6e5246defb1b6b6b90ff734db95bece2886b408ab112ed9b8e67222d5568",
          "completed_at": "2026-07-22T08:55:25Z"
        },
        {
          "id": "status",
          "action": "state.query",
          "status": "completed",
          "resolved_input_hash": "a15231a2142a2a9a85355a8b9cbbccffe01a9c9c2c2fd8c2bc2987cdc481564a",
          "started_at": "2026-07-22T08:55:25Z",
          "output": {
            "repo_root": "D:\\Projects\\prd-plugin",
            "autonomy_level": "autonomous",
            "requests_by_status": {
              "accepted": 1,
              "deferred": 1,
              "implemented": 131,
              "in_review": 2,
              "proposed": 1,
              "rejected": 3
            },
            "active_tracking": [],
            "tracking_branches": [],
            "tracking_branch_counts": {},
            "tracking_branch_errors": [],
            "open_health": [
              "HLT-020"
            ],
            "stale_count": 0,
            "skill_usage": {
              "project-llm-wiki": 2,
              "project-decision-policy": 1,
              "project-request-intake": 1,
              "project-test-driven-implementation": 1,
              "project-verification-before-completion": 1,
              "artifact-design": 1
            },
            "wiki_backfill_pending": false,
            "wiki_ingest_drift": null,
            "version_update": null
          },
          "output_hash": "eabc80e65192ea6185bc3b4657e42cd0a39062dbafe3caeaf599bdd9ee79e056",
          "completed_at": "2026-07-22T08:55:25Z"
        },
        {
          "id": "substrate",
          "action": "substrate.preflight",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-22T08:55:26Z",
          "output": {
            "status": "disabled",
            "services": {
              "status": "ok",
              "summary": {
                "critical": 0,
                "high": 0,
                "medium": 0,
                "low": 0
              },
              "findings": []
            },
            "policy": {
              "configured": {
                "enabled": false,
                "mode": "off",
                "capabilities": [
                  "records",
                  "graph",
                  "events"
                ],
                "contract_version": 2,
                "require_source_refs": true,
                "endpoint": "http://127.0.0.1:47124",
                "manual_url": "http://127.0.0.1:47124/utcp.json",
                "knowledge_browse_url": "http://127.0.0.1:5276",
                "auth_env": "AI_COLLAB_API_KEY",
                "timeout_seconds": 5,
                "max_result_bytes": 1048576,
                "cache_ttl_seconds": 60,
                "fallback": "local",
                "automation": {
                  "discovery_on_session_start": true,
                  "knowledge_recall": true,
                  "memory_recall": true,
                  "context_enrichment": true,
                  "notices_on_session_start": false,
                  "goals_sync": false,
                  "telemetry_on_maintenance": false,
                  "reporting_dispatch": true,
                  "judgment_dispatch": true,
                  "verification_execution": true
                }
              },
              "active": false,
              "effective_mode": "off",
              "effective_capabilities": []
            }
          },
          "output_hash": "a6df426290b4549a59eecaa0519ead9bcc50b7fcb25bd2185ff6047960f19ccb",
          "completed_at": "2026-07-22T08:55:26Z"
        },
        {
          "id": "notices",
          "action": "substrate.notices",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-22T08:55:26Z",
          "output": {
            "status": "disabled"
          },
          "output_hash": "38b904a1cf83df048360fb2480571b749fd98d57e11f1afdffb5a74a78166fea",
          "completed_at": "2026-07-22T08:55:26Z"
        },
        {
          "id": "goals",
          "action": "substrate.goals",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-22T08:55:26Z",
          "output": {
            "status": "disabled",
            "created": 0,
            "observed": 0,
            "results": []
          },
          "output_hash": "cdfd4de44a28140e686159f34f7b47975954c67e1d1efcef666e985acb136ed8",
          "completed_at": "2026-07-22T08:55:26Z"
        }
      ],
      "completed_at": "2026-07-22T08:55:26Z"
    },
    {
      "id": "WFR-366",
      "schema_version": "1.0",
      "workflow_id": "session.start",
      "workflow_version": 1,
      "definition_hash": "dd0de9444af7b094cc93673d0844fb78c801d87d978cc5f6dd6bf3e3e863917d",
      "plan_hash": "1f4ae0cd6be8385f8a9310e49978bd8d93baa729842eb6df9243665a1b581277",
      "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
      "inputs": {},
      "idempotency_key": "hook:SessionStart:a5e430ef-f05d-40ed-b17e-d831693a5f8f",
      "status": "completed",
      "attempt": 1,
      "created_at": "2026-07-22T16:12:28Z",
      "updated_at": "2026-07-22T16:12:36Z",
      "receipts": [
        {
          "step_id": "mailbox",
          "action": "requests.pull",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "ab8a35139cfd3f5821ebc5138c9a44c899b54e4036790654ff120e79c7ab6223",
          "completed_at": "2026-07-22T16:12:29Z"
        },
        {
          "step_id": "config",
          "action": "config.audit",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "172e2697e5951667d2eafa396cb6a952ff4a8c53ebf5dc228ab999c00692f8d2",
          "completed_at": "2026-07-22T16:12:29Z"
        },
        {
          "step_id": "services",
          "action": "services.audit",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "13dcc58bd528f3efa3e6e0fa0853a6eedc376f1f3685fbd4869cbb2b60382ee3",
          "completed_at": "2026-07-22T16:12:29Z"
        },
        {
          "step_id": "state",
          "action": "state.consistency",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "5a1c6e5246defb1b6b6b90ff734db95bece2886b408ab112ed9b8e67222d5568",
          "completed_at": "2026-07-22T16:12:34Z"
        },
        {
          "step_id": "status",
          "action": "state.query",
          "input_hash": "a15231a2142a2a9a85355a8b9cbbccffe01a9c9c2c2fd8c2bc2987cdc481564a",
          "output_hash": "2d7be4af0e2b16b143200cbb5477ddf4f4ac606ae18e9e85ba3aecf8b3fdfc8a",
          "completed_at": "2026-07-22T16:12:35Z"
        },
        {
          "step_id": "substrate",
          "action": "substrate.preflight",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "a6df426290b4549a59eecaa0519ead9bcc50b7fcb25bd2185ff6047960f19ccb",
          "completed_at": "2026-07-22T16:12:35Z"
        },
        {
          "step_id": "notices",
          "action": "substrate.notices",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "38b904a1cf83df048360fb2480571b749fd98d57e11f1afdffb5a74a78166fea",
          "completed_at": "2026-07-22T16:12:35Z"
        },
        {
          "step_id": "goals",
          "action": "substrate.goals",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "cdfd4de44a28140e686159f34f7b47975954c67e1d1efcef666e985acb136ed8",
          "completed_at": "2026-07-22T16:12:35Z"
        }
      ],
      "steps": [
        {
          "id": "mailbox",
          "action": "requests.pull",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-22T16:12:29Z",
          "output": {
            "applied": 0,
            "resolved_ids": [],
            "unmatched": [],
            "mailboxes": [],
            "pruned_outbox": [],
            "consumed_mailboxes": [],
            "outbound": {
              "delivered": 0,
              "mailboxes_published": [],
              "undeliverable": [],
              "pending": []
            },
            "addressed": {
              "delivered": 0,
              "destinations": [],
              "undelivered": [
                {
                  "id": "REQ-030",
                  "state": "not_ours_to_send",
                  "target_repo": "prd-plugin",
                  "reason": "REQ-030 was imported from 'ZeusGrid'; its target_repo records who it was addressed to, not somewhere for us to send it. Reply on its thread instead."
                },
                {
                  "id": "REQ-003",
                  "state": "not_ours_to_send",
                  "target_repo": "prd-plugin",
                  "reason": "REQ-003 was imported from 'ZeusGrid'; its target_repo records who it was addressed to, not somewhere for us to send it. Reply on its thread instead."
                },
                {
                  "id": "REQ-004",
                  "state": "not_ours_to_send",
                  "target_repo": "prd-plugin",
                  "reason": "REQ-004 was imported from 'ZeusGrid'; its target_repo records who it was addressed to, not somewhere for us to send it. Reply on its thread instead."
                },
                {
                  "id": "REQ-005",
                  "state": "not_ours_to_send",
                  "target_repo": "prd-plugin",
                  "reason": "REQ-005 was imported from 'GRAPH_LANG'; its target_repo records who it was addressed to, not somewhere for us to send it. Reply on its thread instead."
                },
                {
                  "id": "REQ-002",
                  "state": "self_addressed",
                  "target_repo": "prd-plugin",
                  "reason": "REQ-002 is addressed to this repo ('prd-plugin'); it is already here."
                },
                {
                  "id": "REQ-028",
                  "state": "self_addressed",
                  "target_repo": "prd-plugin",
                  "reason": "REQ-028 is addressed to this repo ('prd-plugin'); it is already here."
                },
                {
                  "id": "REQ-029",
                  "state": "not_ours_to_send",
                  "target_repo": "ai-collab-v3",
                  "reason": "REQ-029 was imported from 'ai-collab-v3'; its target_repo records who it was addressed to, not somewhere for us to send it. Reply on its thread instead."
                },
                {
                  "id": "REQ-138",
                  "state": "terminal",
                  "target_repo": "no-such-repo",
                  "reason": "REQ-138 is 'rejected'; a closed request is not delivered. Reopen it or file a new one if it still needs to travel."
                }
              ],
              "advisories": []
            }
          },
          "output_hash": "ab8a35139cfd3f5821ebc5138c9a44c899b54e4036790654ff120e79c7ab6223",
          "completed_at": "2026-07-22T16:12:29Z"
        },
        {
          "id": "config",
          "action": "config.audit",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-22T16:12:29Z",
          "output": {
            "status": "ok",
            "summary": {
              "settings": 209,
              "mutable": 199,
              "read_only_or_managed": 10,
              "unclassified": 0,
              "unknown": 0,
              "invalid": 0,
              "missing_using_defaults": 0
            },
            "unclassified_keys": [],
            "unknown_keys": [],
            "invalid_values": [],
            "missing_using_defaults": []
          },
          "output_hash": "172e2697e5951667d2eafa396cb6a952ff4a8c53ebf5dc228ab999c00692f8d2",
          "completed_at": "2026-07-22T16:12:29Z"
        },
        {
          "id": "services",
          "action": "services.audit",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-22T16:12:29Z",
          "output": {
            "status": "ok",
            "summary": {
              "critical": 0,
              "high": 0,
              "medium": 0,
              "low": 0
            },
            "findings": []
          },
          "output_hash": "13dcc58bd528f3efa3e6e0fa0853a6eedc376f1f3685fbd4869cbb2b60382ee3",
          "completed_at": "2026-07-22T16:12:29Z"
        },
        {
          "id": "state",
          "action": "state.consistency",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-22T16:12:29Z",
          "output": {
            "status": "ok",
            "repo_root": "D:\\Projects\\prd-plugin",
            "summary": {
              "errors": 0,
              "warnings": 0,
              "infos": 0
            },
            "findings": []
          },
          "output_hash": "5a1c6e5246defb1b6b6b90ff734db95bece2886b408ab112ed9b8e67222d5568",
          "completed_at": "2026-07-22T16:12:34Z"
        },
        {
          "id": "status",
          "action": "state.query",
          "status": "completed",
          "resolved_input_hash": "a15231a2142a2a9a85355a8b9cbbccffe01a9c9c2c2fd8c2bc2987cdc481564a",
          "started_at": "2026-07-22T16:12:34Z",
          "output": {
            "repo_root": "D:\\Projects\\prd-plugin",
            "autonomy_level": "autonomous",
            "requests_by_status": {
              "accepted": 1,
              "deferred": 1,
              "implemented": 136,
              "in_review": 2,
              "proposed": 3,
              "rejected": 3
            },
            "active_tracking": [],
            "tracking_branches": [],
            "tracking_branch_counts": {},
            "tracking_branch_errors": [],
            "open_health": [
              "HLT-020",
              "HLT-021"
            ],
            "stale_count": 0,
            "skill_usage": {
              "project-llm-wiki": 2,
              "project-decision-policy": 1,
              "project-request-intake": 1,
              "project-test-driven-implementation": 1,
              "project-verification-before-completion": 1,
              "artifact-design": 1
            },
            "wiki_backfill_pending": false,
            "wiki_ingest_drift": null,
            "version_update": null
          },
          "output_hash": "2d7be4af0e2b16b143200cbb5477ddf4f4ac606ae18e9e85ba3aecf8b3fdfc8a",
          "completed_at": "2026-07-22T16:12:35Z"
        },
        {
          "id": "substrate",
          "action": "substrate.preflight",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-22T16:12:35Z",
          "output": {
            "status": "disabled",
            "services": {
              "status": "ok",
              "summary": {
                "critical": 0,
                "high": 0,
                "medium": 0,
                "low": 0
              },
              "findings": []
            },
            "policy": {
              "configured": {
                "enabled": false,
                "mode": "off",
                "capabilities": [
                  "records",
                  "graph",
                  "events"
                ],
                "contract_version": 2,
                "require_source_refs": true,
                "endpoint": "http://127.0.0.1:47124",
                "manual_url": "http://127.0.0.1:47124/utcp.json",
                "knowledge_browse_url": "http://127.0.0.1:5276",
                "auth_env": "AI_COLLAB_API_KEY",
                "timeout_seconds": 5,
                "max_result_bytes": 1048576,
                "cache_ttl_seconds": 60,
                "fallback": "local",
                "automation": {
                  "discovery_on_session_start": true,
                  "knowledge_recall": true,
                  "memory_recall": true,
                  "context_enrichment": true,
                  "notices_on_session_start": false,
                  "goals_sync": false,
                  "telemetry_on_maintenance": false,
                  "reporting_dispatch": true,
                  "judgment_dispatch": true,
                  "verification_execution": true
                }
              },
              "active": false,
              "effective_mode": "off",
              "effective_capabilities": []
            }
          },
          "output_hash": "a6df426290b4549a59eecaa0519ead9bcc50b7fcb25bd2185ff6047960f19ccb",
          "completed_at": "2026-07-22T16:12:35Z"
        },
        {
          "id": "notices",
          "action": "substrate.notices",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-22T16:12:35Z",
          "output": {
            "status": "disabled"
          },
          "output_hash": "38b904a1cf83df048360fb2480571b749fd98d57e11f1afdffb5a74a78166fea",
          "completed_at": "2026-07-22T16:12:35Z"
        },
        {
          "id": "goals",
          "action": "substrate.goals",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-22T16:12:35Z",
          "output": {
            "status": "disabled",
            "created": 0,
            "observed": 0,
            "results": []
          },
          "output_hash": "cdfd4de44a28140e686159f34f7b47975954c67e1d1efcef666e985acb136ed8",
          "completed_at": "2026-07-22T16:12:35Z"
        }
      ],
      "completed_at": "2026-07-22T16:12:36Z"
    },
    {
      "id": "WFR-367",
      "schema_version": "1.0",
      "workflow_id": "session.start",
      "workflow_version": 1,
      "definition_hash": "dd0de9444af7b094cc93673d0844fb78c801d87d978cc5f6dd6bf3e3e863917d",
      "plan_hash": "1f4ae0cd6be8385f8a9310e49978bd8d93baa729842eb6df9243665a1b581277",
      "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
      "inputs": {},
      "idempotency_key": "hook:SessionStart:66435f7f-2cfd-41a9-b30d-6026d36ccf13",
      "status": "completed",
      "attempt": 1,
      "created_at": "2026-07-23T08:33:24Z",
      "updated_at": "2026-07-23T08:33:31Z",
      "receipts": [
        {
          "step_id": "mailbox",
          "action": "requests.pull",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "ab8a35139cfd3f5821ebc5138c9a44c899b54e4036790654ff120e79c7ab6223",
          "completed_at": "2026-07-23T08:33:24Z"
        },
        {
          "step_id": "config",
          "action": "config.audit",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "172e2697e5951667d2eafa396cb6a952ff4a8c53ebf5dc228ab999c00692f8d2",
          "completed_at": "2026-07-23T08:33:25Z"
        },
        {
          "step_id": "services",
          "action": "services.audit",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "13dcc58bd528f3efa3e6e0fa0853a6eedc376f1f3685fbd4869cbb2b60382ee3",
          "completed_at": "2026-07-23T08:33:25Z"
        },
        {
          "step_id": "state",
          "action": "state.consistency",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "5a1c6e5246defb1b6b6b90ff734db95bece2886b408ab112ed9b8e67222d5568",
          "completed_at": "2026-07-23T08:33:30Z"
        },
        {
          "step_id": "status",
          "action": "state.query",
          "input_hash": "a15231a2142a2a9a85355a8b9cbbccffe01a9c9c2c2fd8c2bc2987cdc481564a",
          "output_hash": "969e431b317225a6517e7de0173fdc6773f75310c2ae559f8ae7525718c27fc7",
          "completed_at": "2026-07-23T08:33:30Z"
        },
        {
          "step_id": "substrate",
          "action": "substrate.preflight",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "a6df426290b4549a59eecaa0519ead9bcc50b7fcb25bd2185ff6047960f19ccb",
          "completed_at": "2026-07-23T08:33:30Z"
        },
        {
          "step_id": "notices",
          "action": "substrate.notices",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "38b904a1cf83df048360fb2480571b749fd98d57e11f1afdffb5a74a78166fea",
          "completed_at": "2026-07-23T08:33:30Z"
        },
        {
          "step_id": "goals",
          "action": "substrate.goals",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "cdfd4de44a28140e686159f34f7b47975954c67e1d1efcef666e985acb136ed8",
          "completed_at": "2026-07-23T08:33:31Z"
        }
      ],
      "steps": [
        {
          "id": "mailbox",
          "action": "requests.pull",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-23T08:33:24Z",
          "output": {
            "applied": 0,
            "resolved_ids": [],
            "unmatched": [],
            "mailboxes": [],
            "pruned_outbox": [],
            "consumed_mailboxes": [],
            "outbound": {
              "delivered": 0,
              "mailboxes_published": [],
              "undeliverable": [],
              "pending": []
            },
            "addressed": {
              "delivered": 0,
              "destinations": [],
              "undelivered": [
                {
                  "id": "REQ-030",
                  "state": "not_ours_to_send",
                  "target_repo": "prd-plugin",
                  "reason": "REQ-030 was imported from 'ZeusGrid'; its target_repo records who it was addressed to, not somewhere for us to send it. Reply on its thread instead."
                },
                {
                  "id": "REQ-003",
                  "state": "not_ours_to_send",
                  "target_repo": "prd-plugin",
                  "reason": "REQ-003 was imported from 'ZeusGrid'; its target_repo records who it was addressed to, not somewhere for us to send it. Reply on its thread instead."
                },
                {
                  "id": "REQ-004",
                  "state": "not_ours_to_send",
                  "target_repo": "prd-plugin",
                  "reason": "REQ-004 was imported from 'ZeusGrid'; its target_repo records who it was addressed to, not somewhere for us to send it. Reply on its thread instead."
                },
                {
                  "id": "REQ-005",
                  "state": "not_ours_to_send",
                  "target_repo": "prd-plugin",
                  "reason": "REQ-005 was imported from 'GRAPH_LANG'; its target_repo records who it was addressed to, not somewhere for us to send it. Reply on its thread instead."
                },
                {
                  "id": "REQ-002",
                  "state": "self_addressed",
                  "target_repo": "prd-plugin",
                  "reason": "REQ-002 is addressed to this repo ('prd-plugin'); it is already here."
                },
                {
                  "id": "REQ-028",
                  "state": "self_addressed",
                  "target_repo": "prd-plugin",
                  "reason": "REQ-028 is addressed to this repo ('prd-plugin'); it is already here."
                },
                {
                  "id": "REQ-029",
                  "state": "not_ours_to_send",
                  "target_repo": "ai-collab-v3",
                  "reason": "REQ-029 was imported from 'ai-collab-v3'; its target_repo records who it was addressed to, not somewhere for us to send it. Reply on its thread instead."
                },
                {
                  "id": "REQ-138",
                  "state": "terminal",
                  "target_repo": "no-such-repo",
                  "reason": "REQ-138 is 'rejected'; a closed request is not delivered. Reopen it or file a new one if it still needs to travel."
                }
              ],
              "advisories": []
            }
          },
          "output_hash": "ab8a35139cfd3f5821ebc5138c9a44c899b54e4036790654ff120e79c7ab6223",
          "completed_at": "2026-07-23T08:33:24Z"
        },
        {
          "id": "config",
          "action": "config.audit",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-23T08:33:25Z",
          "output": {
            "status": "ok",
            "summary": {
              "settings": 209,
              "mutable": 199,
              "read_only_or_managed": 10,
              "unclassified": 0,
              "unknown": 0,
              "invalid": 0,
              "missing_using_defaults": 0
            },
            "unclassified_keys": [],
            "unknown_keys": [],
            "invalid_values": [],
            "missing_using_defaults": []
          },
          "output_hash": "172e2697e5951667d2eafa396cb6a952ff4a8c53ebf5dc228ab999c00692f8d2",
          "completed_at": "2026-07-23T08:33:25Z"
        },
        {
          "id": "services",
          "action": "services.audit",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-23T08:33:25Z",
          "output": {
            "status": "ok",
            "summary": {
              "critical": 0,
              "high": 0,
              "medium": 0,
              "low": 0
            },
            "findings": []
          },
          "output_hash": "13dcc58bd528f3efa3e6e0fa0853a6eedc376f1f3685fbd4869cbb2b60382ee3",
          "completed_at": "2026-07-23T08:33:25Z"
        },
        {
          "id": "state",
          "action": "state.consistency",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-23T08:33:25Z",
          "output": {
            "status": "ok",
            "repo_root": "D:\\Projects\\prd-plugin",
            "summary": {
              "errors": 0,
              "warnings": 0,
              "infos": 0
            },
            "findings": []
          },
          "output_hash": "5a1c6e5246defb1b6b6b90ff734db95bece2886b408ab112ed9b8e67222d5568",
          "completed_at": "2026-07-23T08:33:30Z"
        },
        {
          "id": "status",
          "action": "state.query",
          "status": "completed",
          "resolved_input_hash": "a15231a2142a2a9a85355a8b9cbbccffe01a9c9c2c2fd8c2bc2987cdc481564a",
          "started_at": "2026-07-23T08:33:30Z",
          "output": {
            "repo_root": "D:\\Projects\\prd-plugin",
            "autonomy_level": "autonomous",
            "requests_by_status": {
              "accepted": 1,
              "deferred": 1,
              "implemented": 136,
              "in_review": 2,
              "proposed": 4,
              "rejected": 3
            },
            "active_tracking": [],
            "tracking_branches": [],
            "tracking_branch_counts": {},
            "tracking_branch_errors": [],
            "open_health": [
              "HLT-020",
              "HLT-021"
            ],
            "stale_count": 0,
            "skill_usage": {
              "project-llm-wiki": 2,
              "project-decision-policy": 1,
              "project-request-intake": 1,
              "project-test-driven-implementation": 1,
              "project-verification-before-completion": 1,
              "artifact-design": 1
            },
            "wiki_backfill_pending": false,
            "wiki_ingest_drift": null,
            "version_update": null
          },
          "output_hash": "969e431b317225a6517e7de0173fdc6773f75310c2ae559f8ae7525718c27fc7",
          "completed_at": "2026-07-23T08:33:30Z"
        },
        {
          "id": "substrate",
          "action": "substrate.preflight",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-23T08:33:30Z",
          "output": {
            "status": "disabled",
            "services": {
              "status": "ok",
              "summary": {
                "critical": 0,
                "high": 0,
                "medium": 0,
                "low": 0
              },
              "findings": []
            },
            "policy": {
              "configured": {
                "enabled": false,
                "mode": "off",
                "capabilities": [
                  "records",
                  "graph",
                  "events"
                ],
                "contract_version": 2,
                "require_source_refs": true,
                "endpoint": "http://127.0.0.1:47124",
                "manual_url": "http://127.0.0.1:47124/utcp.json",
                "knowledge_browse_url": "http://127.0.0.1:5276",
                "auth_env": "AI_COLLAB_API_KEY",
                "timeout_seconds": 5,
                "max_result_bytes": 1048576,
                "cache_ttl_seconds": 60,
                "fallback": "local",
                "automation": {
                  "discovery_on_session_start": true,
                  "knowledge_recall": true,
                  "memory_recall": true,
                  "context_enrichment": true,
                  "notices_on_session_start": false,
                  "goals_sync": false,
                  "telemetry_on_maintenance": false,
                  "reporting_dispatch": true,
                  "judgment_dispatch": true,
                  "verification_execution": true
                }
              },
              "active": false,
              "effective_mode": "off",
              "effective_capabilities": []
            }
          },
          "output_hash": "a6df426290b4549a59eecaa0519ead9bcc50b7fcb25bd2185ff6047960f19ccb",
          "completed_at": "2026-07-23T08:33:30Z"
        },
        {
          "id": "notices",
          "action": "substrate.notices",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-23T08:33:30Z",
          "output": {
            "status": "disabled"
          },
          "output_hash": "38b904a1cf83df048360fb2480571b749fd98d57e11f1afdffb5a74a78166fea",
          "completed_at": "2026-07-23T08:33:30Z"
        },
        {
          "id": "goals",
          "action": "substrate.goals",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-23T08:33:31Z",
          "output": {
            "status": "disabled",
            "created": 0,
            "observed": 0,
            "results": []
          },
          "output_hash": "cdfd4de44a28140e686159f34f7b47975954c67e1d1efcef666e985acb136ed8",
          "completed_at": "2026-07-23T08:33:31Z"
        }
      ],
      "completed_at": "2026-07-23T08:33:31Z"
    },
    {
      "id": "WFR-368",
      "schema_version": "1.0",
      "workflow_id": "session.start",
      "workflow_version": 1,
      "definition_hash": "dd0de9444af7b094cc93673d0844fb78c801d87d978cc5f6dd6bf3e3e863917d",
      "plan_hash": "1f4ae0cd6be8385f8a9310e49978bd8d93baa729842eb6df9243665a1b581277",
      "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
      "inputs": {},
      "idempotency_key": "codex-worktree-consolidation-20260723",
      "status": "completed",
      "attempt": 1,
      "created_at": "2026-07-23T13:33:09Z",
      "updated_at": "2026-07-23T13:33:13Z",
      "receipts": [
        {
          "step_id": "mailbox",
          "action": "requests.pull",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "ab8a35139cfd3f5821ebc5138c9a44c899b54e4036790654ff120e79c7ab6223",
          "completed_at": "2026-07-23T13:33:10Z"
        },
        {
          "step_id": "config",
          "action": "config.audit",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "172e2697e5951667d2eafa396cb6a952ff4a8c53ebf5dc228ab999c00692f8d2",
          "completed_at": "2026-07-23T13:33:10Z"
        },
        {
          "step_id": "services",
          "action": "services.audit",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "13dcc58bd528f3efa3e6e0fa0853a6eedc376f1f3685fbd4869cbb2b60382ee3",
          "completed_at": "2026-07-23T13:33:10Z"
        },
        {
          "step_id": "state",
          "action": "state.consistency",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "5a1c6e5246defb1b6b6b90ff734db95bece2886b408ab112ed9b8e67222d5568",
          "completed_at": "2026-07-23T13:33:12Z"
        },
        {
          "step_id": "status",
          "action": "state.query",
          "input_hash": "a15231a2142a2a9a85355a8b9cbbccffe01a9c9c2c2fd8c2bc2987cdc481564a",
          "output_hash": "969e431b317225a6517e7de0173fdc6773f75310c2ae559f8ae7525718c27fc7",
          "completed_at": "2026-07-23T13:33:12Z"
        },
        {
          "step_id": "substrate",
          "action": "substrate.preflight",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "a6df426290b4549a59eecaa0519ead9bcc50b7fcb25bd2185ff6047960f19ccb",
          "completed_at": "2026-07-23T13:33:13Z"
        },
        {
          "step_id": "notices",
          "action": "substrate.notices",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "38b904a1cf83df048360fb2480571b749fd98d57e11f1afdffb5a74a78166fea",
          "completed_at": "2026-07-23T13:33:13Z"
        },
        {
          "step_id": "goals",
          "action": "substrate.goals",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "cdfd4de44a28140e686159f34f7b47975954c67e1d1efcef666e985acb136ed8",
          "completed_at": "2026-07-23T13:33:13Z"
        }
      ],
      "steps": [
        {
          "id": "mailbox",
          "action": "requests.pull",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-23T13:33:10Z",
          "output": {
            "applied": 0,
            "resolved_ids": [],
            "unmatched": [],
            "mailboxes": [],
            "pruned_outbox": [],
            "consumed_mailboxes": [],
            "outbound": {
              "delivered": 0,
              "mailboxes_published": [],
              "undeliverable": [],
              "pending": []
            },
            "addressed": {
              "delivered": 0,
              "destinations": [],
              "undelivered": [
                {
                  "id": "REQ-030",
                  "state": "not_ours_to_send",
                  "target_repo": "prd-plugin",
                  "reason": "REQ-030 was imported from 'ZeusGrid'; its target_repo records who it was addressed to, not somewhere for us to send it. Reply on its thread instead."
                },
                {
                  "id": "REQ-003",
                  "state": "not_ours_to_send",
                  "target_repo": "prd-plugin",
                  "reason": "REQ-003 was imported from 'ZeusGrid'; its target_repo records who it was addressed to, not somewhere for us to send it. Reply on its thread instead."
                },
                {
                  "id": "REQ-004",
                  "state": "not_ours_to_send",
                  "target_repo": "prd-plugin",
                  "reason": "REQ-004 was imported from 'ZeusGrid'; its target_repo records who it was addressed to, not somewhere for us to send it. Reply on its thread instead."
                },
                {
                  "id": "REQ-005",
                  "state": "not_ours_to_send",
                  "target_repo": "prd-plugin",
                  "reason": "REQ-005 was imported from 'GRAPH_LANG'; its target_repo records who it was addressed to, not somewhere for us to send it. Reply on its thread instead."
                },
                {
                  "id": "REQ-002",
                  "state": "self_addressed",
                  "target_repo": "prd-plugin",
                  "reason": "REQ-002 is addressed to this repo ('prd-plugin'); it is already here."
                },
                {
                  "id": "REQ-028",
                  "state": "self_addressed",
                  "target_repo": "prd-plugin",
                  "reason": "REQ-028 is addressed to this repo ('prd-plugin'); it is already here."
                },
                {
                  "id": "REQ-029",
                  "state": "not_ours_to_send",
                  "target_repo": "ai-collab-v3",
                  "reason": "REQ-029 was imported from 'ai-collab-v3'; its target_repo records who it was addressed to, not somewhere for us to send it. Reply on its thread instead."
                },
                {
                  "id": "REQ-138",
                  "state": "terminal",
                  "target_repo": "no-such-repo",
                  "reason": "REQ-138 is 'rejected'; a closed request is not delivered. Reopen it or file a new one if it still needs to travel."
                }
              ],
              "advisories": []
            }
          },
          "output_hash": "ab8a35139cfd3f5821ebc5138c9a44c899b54e4036790654ff120e79c7ab6223",
          "completed_at": "2026-07-23T13:33:10Z"
        },
        {
          "id": "config",
          "action": "config.audit",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-23T13:33:10Z",
          "output": {
            "status": "ok",
            "summary": {
              "settings": 209,
              "mutable": 199,
              "read_only_or_managed": 10,
              "unclassified": 0,
              "unknown": 0,
              "invalid": 0,
              "missing_using_defaults": 0
            },
            "unclassified_keys": [],
            "unknown_keys": [],
            "invalid_values": [],
            "missing_using_defaults": []
          },
          "output_hash": "172e2697e5951667d2eafa396cb6a952ff4a8c53ebf5dc228ab999c00692f8d2",
          "completed_at": "2026-07-23T13:33:10Z"
        },
        {
          "id": "services",
          "action": "services.audit",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-23T13:33:10Z",
          "output": {
            "status": "ok",
            "summary": {
              "critical": 0,
              "high": 0,
              "medium": 0,
              "low": 0
            },
            "findings": []
          },
          "output_hash": "13dcc58bd528f3efa3e6e0fa0853a6eedc376f1f3685fbd4869cbb2b60382ee3",
          "completed_at": "2026-07-23T13:33:10Z"
        },
        {
          "id": "state",
          "action": "state.consistency",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-23T13:33:10Z",
          "output": {
            "status": "ok",
            "repo_root": "D:\\Projects\\prd-plugin",
            "summary": {
              "errors": 0,
              "warnings": 0,
              "infos": 0
            },
            "findings": []
          },
          "output_hash": "5a1c6e5246defb1b6b6b90ff734db95bece2886b408ab112ed9b8e67222d5568",
          "completed_at": "2026-07-23T13:33:12Z"
        },
        {
          "id": "status",
          "action": "state.query",
          "status": "completed",
          "resolved_input_hash": "a15231a2142a2a9a85355a8b9cbbccffe01a9c9c2c2fd8c2bc2987cdc481564a",
          "started_at": "2026-07-23T13:33:12Z",
          "output": {
            "repo_root": "D:\\Projects\\prd-plugin",
            "autonomy_level": "autonomous",
            "requests_by_status": {
              "accepted": 1,
              "deferred": 1,
              "implemented": 136,
              "in_review": 2,
              "proposed": 4,
              "rejected": 3
            },
            "active_tracking": [],
            "tracking_branches": [],
            "tracking_branch_counts": {},
            "tracking_branch_errors": [],
            "open_health": [
              "HLT-020",
              "HLT-021"
            ],
            "stale_count": 0,
            "skill_usage": {
              "project-llm-wiki": 2,
              "project-decision-policy": 1,
              "project-request-intake": 1,
              "project-test-driven-implementation": 1,
              "project-verification-before-completion": 1,
              "artifact-design": 1
            },
            "wiki_backfill_pending": false,
            "wiki_ingest_drift": null,
            "version_update": null
          },
          "output_hash": "969e431b317225a6517e7de0173fdc6773f75310c2ae559f8ae7525718c27fc7",
          "completed_at": "2026-07-23T13:33:12Z"
        },
        {
          "id": "substrate",
          "action": "substrate.preflight",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-23T13:33:12Z",
          "output": {
            "status": "disabled",
            "services": {
              "status": "ok",
              "summary": {
                "critical": 0,
                "high": 0,
                "medium": 0,
                "low": 0
              },
              "findings": []
            },
            "policy": {
              "configured": {
                "enabled": false,
                "mode": "off",
                "capabilities": [
                  "records",
                  "graph",
                  "events"
                ],
                "contract_version": 2,
                "require_source_refs": true,
                "endpoint": "http://127.0.0.1:47124",
                "manual_url": "http://127.0.0.1:47124/utcp.json",
                "knowledge_browse_url": "http://127.0.0.1:5276",
                "auth_env": "AI_COLLAB_API_KEY",
                "timeout_seconds": 5,
                "max_result_bytes": 1048576,
                "cache_ttl_seconds": 60,
                "fallback": "local",
                "automation": {
                  "discovery_on_session_start": true,
                  "knowledge_recall": true,
                  "memory_recall": true,
                  "context_enrichment": true,
                  "notices_on_session_start": false,
                  "goals_sync": false,
                  "telemetry_on_maintenance": false,
                  "reporting_dispatch": true,
                  "judgment_dispatch": true,
                  "verification_execution": true
                }
              },
              "active": false,
              "effective_mode": "off",
              "effective_capabilities": []
            }
          },
          "output_hash": "a6df426290b4549a59eecaa0519ead9bcc50b7fcb25bd2185ff6047960f19ccb",
          "completed_at": "2026-07-23T13:33:13Z"
        },
        {
          "id": "notices",
          "action": "substrate.notices",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-23T13:33:13Z",
          "output": {
            "status": "disabled"
          },
          "output_hash": "38b904a1cf83df048360fb2480571b749fd98d57e11f1afdffb5a74a78166fea",
          "completed_at": "2026-07-23T13:33:13Z"
        },
        {
          "id": "goals",
          "action": "substrate.goals",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-23T13:33:13Z",
          "output": {
            "status": "disabled",
            "created": 0,
            "observed": 0,
            "results": []
          },
          "output_hash": "cdfd4de44a28140e686159f34f7b47975954c67e1d1efcef666e985acb136ed8",
          "completed_at": "2026-07-23T13:33:13Z"
        }
      ],
      "completed_at": "2026-07-23T13:33:13Z"
    },
    {
      "id": "WFR-369",
      "schema_version": "1.0",
      "workflow_id": "project.maintenance",
      "workflow_version": 1,
      "definition_hash": "dee4a5dba67fc5d6b9561af3fe7b7fec2b4f3fd9b2938ae12d3374e8438d8ab0",
      "plan_hash": "209e1cf039869e9fca2ac86584123f1284338ff0c56d40461f48e96b9293436e",
      "input_hash": "885a0c6a2fa4d37a4fac93e4b2ec0e139b87f4e608ccf603588b6f6254dccfc5",
      "inputs": {
        "repo_id": "local"
      },
      "idempotency_key": "codex-project-maintenance-20260723",
      "status": "completed",
      "attempt": 1,
      "created_at": "2026-07-23T13:35:36Z",
      "updated_at": "2026-07-23T13:35:40Z",
      "receipts": [
        {
          "step_id": "config",
          "action": "config.audit",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "172e2697e5951667d2eafa396cb6a952ff4a8c53ebf5dc228ab999c00692f8d2",
          "completed_at": "2026-07-23T13:35:36Z"
        },
        {
          "step_id": "services",
          "action": "services.audit",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "13dcc58bd528f3efa3e6e0fa0853a6eedc376f1f3685fbd4869cbb2b60382ee3",
          "completed_at": "2026-07-23T13:35:37Z"
        },
        {
          "step_id": "state",
          "action": "state.consistency",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "5a1c6e5246defb1b6b6b90ff734db95bece2886b408ab112ed9b8e67222d5568",
          "completed_at": "2026-07-23T13:35:37Z"
        },
        {
          "step_id": "staleness",
          "action": "staleness.audit",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "1e81cb0ffd0a4d04626920a203b38d2d23a264cd43e807a85d375d69cae8a658",
          "completed_at": "2026-07-23T13:35:37Z"
        },
        {
          "step_id": "graph",
          "action": "graph.build",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "38ffe02cafad78186d8969dcbc5fb1ac67d1b7195b78d2b4d8d6ba1b5af3e7d8",
          "completed_at": "2026-07-23T13:35:39Z"
        },
        {
          "step_id": "substrate",
          "action": "substrate.preflight",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "a6df426290b4549a59eecaa0519ead9bcc50b7fcb25bd2185ff6047960f19ccb",
          "completed_at": "2026-07-23T13:35:39Z"
        },
        {
          "step_id": "goals",
          "action": "substrate.goals",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "cdfd4de44a28140e686159f34f7b47975954c67e1d1efcef666e985acb136ed8",
          "completed_at": "2026-07-23T13:35:40Z"
        },
        {
          "step_id": "telemetry",
          "action": "substrate.telemetry",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "38b904a1cf83df048360fb2480571b749fd98d57e11f1afdffb5a74a78166fea",
          "completed_at": "2026-07-23T13:35:40Z"
        }
      ],
      "steps": [
        {
          "id": "config",
          "action": "config.audit",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-23T13:35:36Z",
          "output": {
            "status": "ok",
            "summary": {
              "settings": 209,
              "mutable": 199,
              "read_only_or_managed": 10,
              "unclassified": 0,
              "unknown": 0,
              "invalid": 0,
              "missing_using_defaults": 0
            },
            "unclassified_keys": [],
            "unknown_keys": [],
            "invalid_values": [],
            "missing_using_defaults": []
          },
          "output_hash": "172e2697e5951667d2eafa396cb6a952ff4a8c53ebf5dc228ab999c00692f8d2",
          "completed_at": "2026-07-23T13:35:36Z"
        },
        {
          "id": "services",
          "action": "services.audit",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-23T13:35:37Z",
          "output": {
            "status": "ok",
            "summary": {
              "critical": 0,
              "high": 0,
              "medium": 0,
              "low": 0
            },
            "findings": []
          },
          "output_hash": "13dcc58bd528f3efa3e6e0fa0853a6eedc376f1f3685fbd4869cbb2b60382ee3",
          "completed_at": "2026-07-23T13:35:37Z"
        },
        {
          "id": "state",
          "action": "state.consistency",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-23T13:35:37Z",
          "output": {
            "status": "ok",
            "repo_root": "D:\\Projects\\prd-plugin",
            "summary": {
              "errors": 0,
              "warnings": 0,
              "infos": 0
            },
            "findings": []
          },
          "output_hash": "5a1c6e5246defb1b6b6b90ff734db95bece2886b408ab112ed9b8e67222d5568",
          "completed_at": "2026-07-23T13:35:37Z"
        },
        {
          "id": "staleness",
          "action": "staleness.audit",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-23T13:35:37Z",
          "output": {
            "status": "ok",
            "repo_root": "D:\\Projects\\prd-plugin",
            "counts": {
              "stale": 0
            },
            "stale": []
          },
          "output_hash": "1e81cb0ffd0a4d04626920a203b38d2d23a264cd43e807a85d375d69cae8a658",
          "completed_at": "2026-07-23T13:35:37Z"
        },
        {
          "id": "graph",
          "action": "graph.build",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-23T13:35:38Z",
          "output": {
            "omitted": true,
            "reason": "output_exceeds_configured_limit",
            "full_output_hash": "38ffe02cafad78186d8969dcbc5fb1ac67d1b7195b78d2b4d8d6ba1b5af3e7d8",
            "full_output_chars": 1011235,
            "keys": [
              "adjacency",
              "counts",
              "edges",
              "findings",
              "nodes",
              "repo_root",
              "schema_version"
            ],
            "summary": null
          },
          "output_hash": "38ffe02cafad78186d8969dcbc5fb1ac67d1b7195b78d2b4d8d6ba1b5af3e7d8",
          "completed_at": "2026-07-23T13:35:39Z"
        },
        {
          "id": "substrate",
          "action": "substrate.preflight",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-23T13:35:39Z",
          "output": {
            "status": "disabled",
            "services": {
              "status": "ok",
              "summary": {
                "critical": 0,
                "high": 0,
                "medium": 0,
                "low": 0
              },
              "findings": []
            },
            "policy": {
              "configured": {
                "enabled": false,
                "mode": "off",
                "capabilities": [
                  "records",
                  "graph",
                  "events"
                ],
                "contract_version": 2,
                "require_source_refs": true,
                "endpoint": "http://127.0.0.1:47124",
                "manual_url": "http://127.0.0.1:47124/utcp.json",
                "knowledge_browse_url": "http://127.0.0.1:5276",
                "auth_env": "AI_COLLAB_API_KEY",
                "timeout_seconds": 5,
                "max_result_bytes": 1048576,
                "cache_ttl_seconds": 60,
                "fallback": "local",
                "automation": {
                  "discovery_on_session_start": true,
                  "knowledge_recall": true,
                  "memory_recall": true,
                  "context_enrichment": true,
                  "notices_on_session_start": false,
                  "goals_sync": false,
                  "telemetry_on_maintenance": false,
                  "reporting_dispatch": true,
                  "judgment_dispatch": true,
                  "verification_execution": true
                }
              },
              "active": false,
              "effective_mode": "off",
              "effective_capabilities": []
            }
          },
          "output_hash": "a6df426290b4549a59eecaa0519ead9bcc50b7fcb25bd2185ff6047960f19ccb",
          "completed_at": "2026-07-23T13:35:39Z"
        },
        {
          "id": "goals",
          "action": "substrate.goals",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-23T13:35:40Z",
          "output": {
            "status": "disabled",
            "created": 0,
            "observed": 0,
            "results": []
          },
          "output_hash": "cdfd4de44a28140e686159f34f7b47975954c67e1d1efcef666e985acb136ed8",
          "completed_at": "2026-07-23T13:35:40Z"
        },
        {
          "id": "telemetry",
          "action": "substrate.telemetry",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-23T13:35:40Z",
          "output": {
            "status": "disabled"
          },
          "output_hash": "38b904a1cf83df048360fb2480571b749fd98d57e11f1afdffb5a74a78166fea",
          "completed_at": "2026-07-23T13:35:40Z"
        }
      ],
      "completed_at": "2026-07-23T13:35:40Z"
    },
    {
      "id": "WFR-370",
      "schema_version": "1.0",
      "workflow_id": "engineering.verify",
      "workflow_version": 1,
      "definition_hash": "82a795fafbc550f124ec781ea9c5b6170d95b5e687fffadf6939f1f160df5ce1",
      "plan_hash": "4bb158b22c9a87a54832df9b9b6a98a77151ce9005499d6a8337a4c015089e5e",
      "input_hash": "fd934039265310404d648cea4b1eb28964383bb8a97ef14b85b2b85d725d502e",
      "inputs": {
        "base_ref": "",
        "release": false
      },
      "idempotency_key": "codex-verify-state-consolidation-20260723",
      "status": "failed",
      "attempt": 1,
      "created_at": "2026-07-23T13:36:03Z",
      "updated_at": "2026-07-23T13:36:03Z",
      "receipts": [
        {
          "step_id": "plan",
          "action": "verification.plan",
          "input_hash": "fd934039265310404d648cea4b1eb28964383bb8a97ef14b85b2b85d725d502e",
          "output_hash": "f68460e8de8fe917ad980cc20e1b60b6a99878741371af4230c32c8d39218621",
          "completed_at": "2026-07-23T13:36:03Z"
        }
      ],
      "steps": [
        {
          "id": "plan",
          "action": "verification.plan",
          "status": "completed",
          "resolved_input_hash": "fd934039265310404d648cea4b1eb28964383bb8a97ef14b85b2b85d725d502e",
          "started_at": "2026-07-23T13:36:03Z",
          "output": {
            "schema_version": "1.0",
            "contract_version": 1,
            "executor": "ai-collab",
            "changed_files": [
              ".prd_plugin/drift/events.jsonl",
              ".prd_plugin/ids/registry.json",
              ".prd_plugin/state/requests.json",
              ".prd_plugin/state/workflow-runs.json"
            ],
            "change_fingerprint": "6c2f60328584d3d79637fd0da00c14effade3225a6726e26a2f0e6b743e96c18",
            "policy": {
              "enabled": true,
              "executor": "ai-collab",
              "neighbor_limit": 12,
              "max_changed_files": 25,
              "fallback": "full",
              "full_suite_triggers": [
                "release",
                "core_change",
                "impact_unavailable",
                "impact_degraded",
                "unmapped_change"
              ],
              "core_paths": [
                "package.json",
                "package-lock.json",
                "pyproject.toml",
                "Cargo.toml",
                "go.mod",
                ".github/workflows/**"
              ],
              "test_patterns": [
                "tests/**",
                "test/**",
                "spec/**",
                "**/*.test.*",
                "**/*.spec.*",
                "test_*.py",
                "*_test.py",
                "*_test.go",
                "**/test_*.py",
                "**/*_test.py",
                "**/*_test.go"
              ],
              "max_selected_tests": 200,
              "execution_timeout_seconds": 600,
              "focused_commands": [],
              "full_commands": [],
              "allowed_executables": [
                "python",
                "python3",
                "py",
                "pytest",
                "npm",
                "npx",
                "node",
                "go",
                "cargo",
                "dotnet",
                "mvn",
                "gradle",
                "gradlew",
                "make"
              ]
            },
            "selection_rules": {
              "precedence": [
                "exact_changed",
                "explicit_test_ownership",
                "structural_dependencies",
                "predictive_impact"
              ],
              "require_all_changed_files_mapped": true,
              "widen_before_full": true,
              "predictive_signal_is_sufficient_alone": false
            },
            "fallback": {
              "strategy": "full",
              "conditions": [
                "release",
                "core_change",
                "impact_unavailable",
                "impact_degraded",
                "unmapped_change"
              ]
            },
            "strategy": "full",
            "reason": "executor_unavailable",
            "runtime_requests": {},
            "plan_hash": "c3fbcfb690c9c28ffe660766c7ca2b0d95fc3fbeeaf378351e05373132d9f9bc"
          },
          "output_hash": "f68460e8de8fe917ad980cc20e1b60b6a99878741371af4230c32c8d39218621",
          "completed_at": "2026-07-23T13:36:03Z"
        },
        {
          "id": "execute",
          "action": "verification.execute",
          "status": "failed",
          "resolved_input_hash": "848351db37827846781b5911ef6dbbbfe120ac93fc3559fd93bc6488272591c2",
          "started_at": "2026-07-23T13:36:03Z"
        },
        {
          "id": "diff",
          "action": "git.diff_check",
          "status": "pending"
        },
        {
          "id": "state",
          "action": "state.consistency",
          "status": "pending"
        },
        {
          "id": "gate",
          "action": "state.gate",
          "status": "pending"
        }
      ],
      "error": {
        "type": "FileNotFoundError",
        "message": "[WinError 2] The system cannot find the file specified"
      }
    },
    {
      "id": "WFR-371",
      "schema_version": "1.0",
      "workflow_id": "engineering.debug",
      "workflow_version": 1,
      "definition_hash": "b32f3f2fbbbd7474e05e983730ae4143048466f42364e34d7391312132c2dbf8",
      "plan_hash": "4004911eaee4e8a331cac46918dd46eb7dad7551535db6eda89ff625cdce315e",
      "input_hash": "4dc725ebce8bc2c3391cc2cb527d473aa5346d21afe74c0dd4be2084381c1216",
      "inputs": {
        "instructions": "Diagnose why prd_test_scope.py --execute and engineering.verify fail on Windows with FileNotFoundError before launching verification commands.",
        "source_refs": [
          "scripts/prd_test_scope.py",
          "tests/test_prd_test_scope.py"
        ]
      },
      "idempotency_key": "codex-debug-windows-verification-20260723",
      "status": "completed",
      "attempt": 1,
      "created_at": "2026-07-23T13:37:01Z",
      "updated_at": "2026-07-23T13:40:42Z",
      "receipts": [
        {
          "step_id": "git",
          "action": "git.status",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "042d04340733bd063406c4a760ee9a704a567935cd2b164803f895fa0807e71a",
          "completed_at": "2026-07-23T13:37:01Z"
        },
        {
          "step_id": "state",
          "action": "state.consistency",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "5a1c6e5246defb1b6b6b90ff734db95bece2886b408ab112ed9b8e67222d5568",
          "completed_at": "2026-07-23T13:37:02Z"
        },
        {
          "step_id": "context",
          "action": "substrate.enrich",
          "input_hash": "3bc726940204579ea20db8d57b1e1efa2ae155d07bf96029ffe363774f8033cc",
          "output_hash": "27f32c203f2e17dae057c55e19556c938db07a2747869a4da6064915ab2d1d30",
          "completed_at": "2026-07-23T13:37:02Z"
        },
        {
          "step_id": "diagnosis",
          "action": "judgment.request",
          "input_hash": "c09f40b5165e127130a9248d636ea567798ca8d4db3fc1ba331caa69dd96b994",
          "output_hash": "d5f6d3aa0508f331dd88f2bcd5e64acb9ff7e40af299948317961d813d4ff188",
          "request_hash": "84c95b1bc54fee37ab7fc72414d096d864ca2d0e5dab2e7bfa2cbe31fb1ed5d1",
          "completed_at": "2026-07-23T13:40:41Z"
        }
      ],
      "steps": [
        {
          "id": "git",
          "action": "git.status",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-23T13:37:01Z",
          "output": {
            "clean": false,
            "changed_files": [
              ".prd_plugin/drift/events.jsonl",
              ".prd_plugin/ids/registry.json",
              ".prd_plugin/state/requests.json",
              ".prd_plugin/state/workflow-runs.json"
            ]
          },
          "output_hash": "042d04340733bd063406c4a760ee9a704a567935cd2b164803f895fa0807e71a",
          "completed_at": "2026-07-23T13:37:01Z"
        },
        {
          "id": "state",
          "action": "state.consistency",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-23T13:37:01Z",
          "output": {
            "status": "ok",
            "repo_root": "D:\\Projects\\prd-plugin",
            "summary": {
              "errors": 0,
              "warnings": 0,
              "infos": 0
            },
            "findings": []
          },
          "output_hash": "5a1c6e5246defb1b6b6b90ff734db95bece2886b408ab112ed9b8e67222d5568",
          "completed_at": "2026-07-23T13:37:02Z"
        },
        {
          "id": "context",
          "action": "substrate.enrich",
          "status": "completed",
          "resolved_input_hash": "3bc726940204579ea20db8d57b1e1efa2ae155d07bf96029ffe363774f8033cc",
          "started_at": "2026-07-23T13:37:02Z",
          "output": {
            "status": "disabled",
            "results": [],
            "local_source_refs": [
              "scripts/prd_test_scope.py",
              "tests/test_prd_test_scope.py"
            ]
          },
          "output_hash": "27f32c203f2e17dae057c55e19556c938db07a2747869a4da6064915ab2d1d30",
          "completed_at": "2026-07-23T13:37:02Z"
        },
        {
          "id": "diagnosis",
          "action": "judgment.request",
          "status": "completed",
          "resolved_input_hash": "c09f40b5165e127130a9248d636ea567798ca8d4db3fc1ba331caa69dd96b994",
          "started_at": "2026-07-23T13:37:02Z",
          "judgment_request": {
            "contract_version": 1,
            "run_id": "WFR-371",
            "step_id": "diagnosis",
            "task": "debugging",
            "instructions": "Diagnose why prd_test_scope.py --execute and engineering.verify fail on Windows with FileNotFoundError before launching verification commands.",
            "source_refs": [
              "scripts/prd_test_scope.py",
              "tests/test_prd_test_scope.py"
            ],
            "source_hashes": {
              "scripts/prd_test_scope.py": "1c6c1eb01b71bdab2b0fea7d1d13e1c6af2c979c835eb4d50f3ec92ce038f0b5"
            },
            "result_schema": {
              "type": "object",
              "required": [
                "summary",
                "hypotheses",
                "source_refs"
              ],
              "properties": {
                "summary": {
                  "type": "string"
                },
                "hypotheses": {
                  "type": "array",
                  "items": {
                    "type": "object"
                  }
                },
                "source_refs": {
                  "type": "array",
                  "items": {
                    "type": "string"
                  }
                }
              }
            },
            "executor": "ai-collab",
            "profile": "fast-capable",
            "constraints": {
              "no_project_state_writes": true,
              "require_source_refs": true
            },
            "request_hash": "84c95b1bc54fee37ab7fc72414d096d864ca2d0e5dab2e7bfa2cbe31fb1ed5d1"
          },
          "output": {
            "summary": "The full-suite auto detector prioritizes package.json and emits a bare npm command. _run_commands passes that bare token directly to subprocess.run with shell=False. In this Windows environment CreateProcess cannot resolve the PowerShell npm shim, while shutil.which resolves the executable npm.CMD path, so execution raises FileNotFoundError before tests start.",
            "hypotheses": [
              {
                "cause": "Allowlisted command tokens are validated but never resolved to an executable path before launch.",
                "evidence": "scripts/prd_test_scope.py _auto_commands returns [npm, test] when package.json has a test script; _run_commands passes command unchanged to subprocess.run. Local reproduction showed shutil.which(npm) returns C:\\Program Files\\nodejs\\npm.CMD and launching that path succeeds.",
                "confidence": "high"
              }
            ],
            "source_refs": [
              "scripts/prd_test_scope.py"
            ]
          },
          "output_hash": "d5f6d3aa0508f331dd88f2bcd5e64acb9ff7e40af299948317961d813d4ff188",
          "completed_at": "2026-07-23T13:40:41Z",
          "judgment_result": {
            "request_hash": "84c95b1bc54fee37ab7fc72414d096d864ca2d0e5dab2e7bfa2cbe31fb1ed5d1",
            "executor": "ai-collab",
            "profile": "fast-capable"
          }
        }
      ],
      "completed_at": "2026-07-23T13:40:42Z"
    },
    {
      "id": "WFR-372",
      "schema_version": "1.0",
      "workflow_id": "request.intake",
      "workflow_version": 1,
      "definition_hash": "b61272f54c5d4778a27afe601feaae39057f75fac2c289858b6caf5f3b2a4fbe",
      "plan_hash": "d5ad416b58f20c969f6414bee5ec0e2bb72cb758740bea3253d5d6460b12b522",
      "input_hash": "b7b7eed8a0c0eecad82b6fa9b3c7d7b8f02aea35ba29b29041c1a76ed53ba08b",
      "inputs": {
        "summary": "Windows verification execution crashes before tests because detected commands use an unavailable python3 executable",
        "request_type": "bug",
        "severity": "medium",
        "scope": "upstream",
        "rationale": "Reproduced on Windows with both engineering.verify and python scripts/prd_test_scope.py --repo-root . --execute. Both raise FileNotFoundError before launching tests, blocking fresh green evidence. The smallest fix is to resolve an available Python executable when generating detected commands.",
        "affected_areas": [
          "scripts/prd_test_scope.py",
          "tests/test_prd_test_scope.py"
        ],
        "expected_behavior": "Verification resolves an available Python executable and runs the selected command on Windows."
      },
      "idempotency_key": "codex-windows-verification-request-20260723",
      "status": "completed",
      "attempt": 1,
      "created_at": "2026-07-23T13:38:13Z",
      "updated_at": "2026-07-23T13:38:13Z",
      "receipts": [
        {
          "step_id": "create",
          "action": "state.mutate",
          "input_hash": "5fa89a857be09bd7a2b947f68994492516da6b428584b5bab73c4682d3a3d6d0",
          "output_hash": "3997728d3371330175f0ccb8b2be2fd0ccabbdcec14f5d9984723c1e3d376713",
          "completed_at": "2026-07-23T13:38:13Z"
        },
        {
          "step_id": "confirm",
          "action": "state.query",
          "input_hash": "80f17dfd591ce3da0314120246f0e670325a48ebf161858d5278bea9da7b1874",
          "output_hash": "4b8d6cc185ff5ce3d865798eb9825730d5f0a6ec51596ff5e9eb2c5d7d8ec87f",
          "completed_at": "2026-07-23T13:38:13Z"
        }
      ],
      "steps": [
        {
          "id": "create",
          "action": "state.mutate",
          "status": "completed",
          "resolved_input_hash": "5fa89a857be09bd7a2b947f68994492516da6b428584b5bab73c4682d3a3d6d0",
          "started_at": "2026-07-23T13:38:13Z",
          "execution_token": "7e38a0b89ad9b57de15e949ce225806fe22884aa2be818c63cd403eaeac4e7a5",
          "output": {
            "id": "REQ-166",
            "status": "proposed"
          },
          "output_hash": "3997728d3371330175f0ccb8b2be2fd0ccabbdcec14f5d9984723c1e3d376713",
          "completed_at": "2026-07-23T13:38:13Z"
        },
        {
          "id": "confirm",
          "action": "state.query",
          "status": "completed",
          "resolved_input_hash": "80f17dfd591ce3da0314120246f0e670325a48ebf161858d5278bea9da7b1874",
          "started_at": "2026-07-23T13:38:13Z",
          "output": {
            "kind": "REQ",
            "record": {
              "id": "REQ-166",
              "status": "proposed",
              "request_type": "bug",
              "scope": "upstream",
              "visibility": "repo",
              "summary": "Windows verification execution crashes before tests because detected commands use an unavailable python3 executable",
              "severity": "medium",
              "requested_by_agent": "AGENT-MCP",
              "created_at": "2026-07-23",
              "rationale": "Reproduced on Windows with both engineering.verify and python scripts/prd_test_scope.py --repo-root . --execute. Both raise FileNotFoundError before launching tests, blocking fresh green evidence. The smallest fix is to resolve an available Python executable when generating detected commands.",
              "affected_areas": [
                "scripts/prd_test_scope.py",
                "tests/test_prd_test_scope.py"
              ],
              "expected_behavior": "Verification resolves an available Python executable and runs the selected command on Windows."
            }
          },
          "output_hash": "4b8d6cc185ff5ce3d865798eb9825730d5f0a6ec51596ff5e9eb2c5d7d8ec87f",
          "completed_at": "2026-07-23T13:38:13Z"
        }
      ],
      "completed_at": "2026-07-23T13:38:13Z"
    },
    {
      "id": "WFR-373",
      "schema_version": "1.0",
      "workflow_id": "evidence.record",
      "workflow_version": 1,
      "definition_hash": "a6dfcb8faadb669d5c097a0d7fa9a738f20ee98e03b552c9557259a94a197e88",
      "plan_hash": "4b5214250fd83f9623dcc0e694dc7883b502e6c98e195232a621c087390da8cd",
      "input_hash": "c1a61e312bec74dcc7891edc2b9783a6d94d8af1faea577418abeff25f22f927",
      "inputs": {
        "summary": "Windows-safe verification execution and deterministic full-suite guard fixture verified green for 0.16.47.",
        "type": "validation",
        "linked_ids": [
          "REQ-166",
          "TRK-152"
        ],
        "commands": [
          {
            "command": "python -m unittest tests.test_test_scope_execution -q",
            "outcome": "4 tests passed after the failing regression proved bare npm was not resolved."
          },
          {
            "command": "python -m unittest tests.test_test_scope tests.test_test_scope_execution tests.test_prd_workflows -q",
            "outcome": "28 tests passed."
          },
          {
            "command": "python -m unittest tests.test_test_scope_guard -q",
            "outcome": "23 tests passed after isolating the live-Git-dependent fixture."
          },
          {
            "command": "python scripts/prd_test_scope.py --repo-root . --execute",
            "outcome": "Full strategy passed; npm test exit 0; 1,192 tests passed in 414.160 seconds."
          },
          {
            "command": "python -m unittest tests.test_release_check tests.test_gap_audit tests.test_skills_manifest tests.test_local_workflow_check tests.test_prd_install -q",
            "outcome": "125 focused release and installer tests passed."
          },
          {
            "command": "python scripts/local_workflow_check.py --target-version 0.16.47 --skip-tests",
            "outcome": "Structured validation, feature-skill audit, gap audit, release hygiene, doctor, state consistency, installer dry-run, requests and messages completed."
          }
        ],
        "limitations": "AI-Collab/Substrate is configured off, so impact-scoped execution correctly widened to the local full suite. No remote push, tag, npm publication, or downstream repository mutation was performed."
      },
      "idempotency_key": "codex-evidence-req-166-20260723",
      "status": "completed",
      "attempt": 1,
      "created_at": "2026-07-23T14:09:52Z",
      "updated_at": "2026-07-23T14:09:53Z",
      "receipts": [
        {
          "step_id": "record",
          "action": "state.mutate",
          "input_hash": "d523596d5ba678430100cbda6bd20e52249698c40611d77f87cb37b5485ad0d7",
          "output_hash": "c0b40d96e2f8b4c7f8c1e76f3c07c3f1b1ca31c3b4c924ae7fd9cac00fb550e8",
          "completed_at": "2026-07-23T14:09:53Z"
        },
        {
          "step_id": "confirm",
          "action": "state.query",
          "input_hash": "22d2649ef3caf8257c46379a7979c8d2b4230a0087bfef8156b59cd1ddaae20b",
          "output_hash": "dae27ffb1c7fb959d23cc45252156d74c79c9981fc6c7b712bb543f37c8d62a7",
          "completed_at": "2026-07-23T14:09:53Z"
        }
      ],
      "steps": [
        {
          "id": "record",
          "action": "state.mutate",
          "status": "completed",
          "resolved_input_hash": "d523596d5ba678430100cbda6bd20e52249698c40611d77f87cb37b5485ad0d7",
          "started_at": "2026-07-23T14:09:53Z",
          "execution_token": "c189f2dcdaad23d585ed60f331a8b86a27531a57351b2b5d80c8b24f1ed08980",
          "output": {
            "id": "EV-197"
          },
          "output_hash": "c0b40d96e2f8b4c7f8c1e76f3c07c3f1b1ca31c3b4c924ae7fd9cac00fb550e8",
          "completed_at": "2026-07-23T14:09:53Z"
        },
        {
          "id": "confirm",
          "action": "state.query",
          "status": "completed",
          "resolved_input_hash": "22d2649ef3caf8257c46379a7979c8d2b4230a0087bfef8156b59cd1ddaae20b",
          "started_at": "2026-07-23T14:09:53Z",
          "output": {
            "kind": "EV",
            "record": {
              "id": "EV-197",
              "type": "validation",
              "summary": "Windows-safe verification execution and deterministic full-suite guard fixture verified green for 0.16.47.",
              "linked_ids": [
                "REQ-166",
                "TRK-152"
              ],
              "created_at": "2026-07-23",
              "commands": [
                {
                  "command": "python -m unittest tests.test_test_scope_execution -q",
                  "outcome": "4 tests passed after the failing regression proved bare npm was not resolved."
                },
                {
                  "command": "python -m unittest tests.test_test_scope tests.test_test_scope_execution tests.test_prd_workflows -q",
                  "outcome": "28 tests passed."
                },
                {
                  "command": "python -m unittest tests.test_test_scope_guard -q",
                  "outcome": "23 tests passed after isolating the live-Git-dependent fixture."
                },
                {
                  "command": "python scripts/prd_test_scope.py --repo-root . --execute",
                  "outcome": "Full strategy passed; npm test exit 0; 1,192 tests passed in 414.160 seconds."
                },
                {
                  "command": "python -m unittest tests.test_release_check tests.test_gap_audit tests.test_skills_manifest tests.test_local_workflow_check tests.test_prd_install -q",
                  "outcome": "125 focused release and installer tests passed."
                },
                {
                  "command": "python scripts/local_workflow_check.py --target-version 0.16.47 --skip-tests",
                  "outcome": "Structured validation, feature-skill audit, gap audit, release hygiene, doctor, state consistency, installer dry-run, requests and messages completed."
                }
              ],
              "limitations": "AI-Collab/Substrate is configured off, so impact-scoped execution correctly widened to the local full suite. No remote push, tag, npm publication, or downstream repository mutation was performed."
            }
          },
          "output_hash": "dae27ffb1c7fb959d23cc45252156d74c79c9981fc6c7b712bb543f37c8d62a7",
          "completed_at": "2026-07-23T14:09:53Z"
        }
      ],
      "completed_at": "2026-07-23T14:09:53Z"
    },
    {
      "id": "WFR-374",
      "schema_version": "1.0",
      "workflow_id": "engineering.code-review",
      "workflow_version": 1,
      "definition_hash": "ad3df68a0ff3c3ede35fe5266dcfbffbe7b1ba3e8ada5fc4b9012db9f451212f",
      "plan_hash": "58da4943379ae12bfa57c69f786a8568cc00fbd1b496350a261ae2a1342d8fdc",
      "input_hash": "3528f69da4599af07747d92e8cd270e48c04b8b9120e22835d88ad94f125e3a7",
      "inputs": {
        "base_ref": "main",
        "source_refs": [
          "scripts/prd_test_scope.py",
          "tests/test_test_scope_execution.py",
          "tests/test_test_scope_guard.py",
          ".prd_plugin/state/releases.json",
          "templates/releases.json",
          "docs/evidence/EV-197.md"
        ]
      },
      "idempotency_key": "codex-review-req-166-20260723",
      "status": "completed",
      "attempt": 1,
      "created_at": "2026-07-23T14:11:12Z",
      "updated_at": "2026-07-23T14:13:33Z",
      "receipts": [
        {
          "step_id": "diff",
          "action": "git.diff_check",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "11c11db30f4b3f6c758722ba3e27eea08145b7d212f6a157451e364b48475280",
          "completed_at": "2026-07-23T14:11:13Z"
        },
        {
          "step_id": "verification",
          "action": "verification.plan",
          "input_hash": "9c8856776a7db6455fee675768cfc615a0fe2a04fb88b9a4fd8e3fce515eaf08",
          "output_hash": "d7ce03015abd78075d5ac8802937d1e4cfa8263f4d32f9dc4bdc8752c8f933ec",
          "completed_at": "2026-07-23T14:11:13Z"
        },
        {
          "step_id": "context",
          "action": "substrate.enrich",
          "input_hash": "5d4f7395785ef8bee3ea8faa739d8c9479b0af76c3703481891dde2b1a608064",
          "output_hash": "c05b75c4d57ba08fd463244653cc105c8caa033fb85d4992785584ede89c58c7",
          "completed_at": "2026-07-23T14:11:13Z"
        },
        {
          "step_id": "review",
          "action": "judgment.request",
          "input_hash": "c35d2fac1a2a4b5418c0ef2ba33e9f1a971f328385efdde2762fc1127c1a1d9e",
          "output_hash": "3596dbc812549b7ccd5a4df58fa85cc08c04e4286c2456d20fe0e916b3db5004",
          "request_hash": "7ff4d7fe74d04bea2b490ba3301e8a8745be7a42888214ccef73b1eb05c56698",
          "completed_at": "2026-07-23T14:13:33Z"
        }
      ],
      "steps": [
        {
          "id": "diff",
          "action": "git.diff_check",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-23T14:11:13Z",
          "output": {
            "passed": true
          },
          "output_hash": "11c11db30f4b3f6c758722ba3e27eea08145b7d212f6a157451e364b48475280",
          "completed_at": "2026-07-23T14:11:13Z"
        },
        {
          "id": "verification",
          "action": "verification.plan",
          "status": "completed",
          "resolved_input_hash": "9c8856776a7db6455fee675768cfc615a0fe2a04fb88b9a4fd8e3fce515eaf08",
          "started_at": "2026-07-23T14:11:13Z",
          "output": {
            "schema_version": "1.0",
            "contract_version": 1,
            "executor": "ai-collab",
            "changed_files": [
              ".claude-plugin/marketplace.json",
              ".claude-plugin/plugin.json",
              ".codex-plugin/plugin.json",
              ".opencode/plugin.json",
              ".prd_plugin/config.json",
              ".prd_plugin/drift/events.jsonl",
              ".prd_plugin/ids/registry.json",
              ".prd_plugin/state/changelog.json",
              ".prd_plugin/state/evidence.json",
              ".prd_plugin/state/project.json",
              ".prd_plugin/state/releases.json",
              ".prd_plugin/state/requests.json",
              ".prd_plugin/state/tracking.json",
              ".prd_plugin/state/workflow-runs.json",
              "docs/evidence/EV-197.md",
              "index.js",
              "mcp/server.cjs",
              "package.json",
              "scripts/prd_test_scope.py",
              "skills-manifest.json",
              "templates/config.json",
              "templates/project.json",
              "templates/releases.json",
              "templates/repo-skeleton/.claude-plugin/plugin.json",
              "templates/repo-skeleton/.codex-plugin/plugin.json",
              "templates/repo-skeleton/.opencode/plugin.json",
              "templates/repo-skeleton/.prd_plugin/config.json",
              "templates/repo-skeleton/.prd_plugin/state/project.json",
              "templates/repo-skeleton/.prd_plugin/templates/config.json",
              "templates/repo-skeleton/.prd_plugin/templates/project.json",
              "tests/test_test_scope_execution.py",
              "tests/test_test_scope_guard.py"
            ],
            "change_fingerprint": "9791d6cf85c4cd2deea907e069028b4f93b45e45823be3848deebfbb1ac2dfef",
            "policy": {
              "enabled": true,
              "executor": "ai-collab",
              "neighbor_limit": 12,
              "max_changed_files": 25,
              "fallback": "full",
              "full_suite_triggers": [
                "release",
                "core_change",
                "impact_unavailable",
                "impact_degraded",
                "unmapped_change"
              ],
              "core_paths": [
                "package.json",
                "package-lock.json",
                "pyproject.toml",
                "Cargo.toml",
                "go.mod",
                ".github/workflows/**"
              ],
              "test_patterns": [
                "tests/**",
                "test/**",
                "spec/**",
                "**/*.test.*",
                "**/*.spec.*",
                "test_*.py",
                "*_test.py",
                "*_test.go",
                "**/test_*.py",
                "**/*_test.py",
                "**/*_test.go"
              ],
              "max_selected_tests": 200,
              "execution_timeout_seconds": 600,
              "focused_commands": [],
              "full_commands": [],
              "allowed_executables": [
                "python",
                "python3",
                "py",
                "pytest",
                "npm",
                "npx",
                "node",
                "go",
                "cargo",
                "dotnet",
                "mvn",
                "gradle",
                "gradlew",
                "make"
              ]
            },
            "selection_rules": {
              "precedence": [
                "exact_changed",
                "explicit_test_ownership",
                "structural_dependencies",
                "predictive_impact"
              ],
              "require_all_changed_files_mapped": true,
              "widen_before_full": true,
              "predictive_signal_is_sufficient_alone": false
            },
            "fallback": {
              "strategy": "full",
              "conditions": [
                "release",
                "core_change",
                "impact_unavailable",
                "impact_degraded",
                "unmapped_change"
              ]
            },
            "strategy": "full",
            "reason": "core_change",
            "runtime_requests": {},
            "plan_hash": "07a675d388e0ac9aadc407f757ca7ed97d67cf6c349a18b263e808a171739c7a"
          },
          "output_hash": "d7ce03015abd78075d5ac8802937d1e4cfa8263f4d32f9dc4bdc8752c8f933ec",
          "completed_at": "2026-07-23T14:11:13Z"
        },
        {
          "id": "context",
          "action": "substrate.enrich",
          "status": "completed",
          "resolved_input_hash": "5d4f7395785ef8bee3ea8faa739d8c9479b0af76c3703481891dde2b1a608064",
          "started_at": "2026-07-23T14:11:13Z",
          "output": {
            "status": "disabled",
            "results": [],
            "local_source_refs": [
              "scripts/prd_test_scope.py",
              "tests/test_test_scope_execution.py",
              "tests/test_test_scope_guard.py",
              ".prd_plugin/state/releases.json",
              "templates/releases.json",
              "docs/evidence/EV-197.md"
            ]
          },
          "output_hash": "c05b75c4d57ba08fd463244653cc105c8caa033fb85d4992785584ede89c58c7",
          "completed_at": "2026-07-23T14:11:13Z"
        },
        {
          "id": "review",
          "action": "judgment.request",
          "status": "completed",
          "resolved_input_hash": "c35d2fac1a2a4b5418c0ef2ba33e9f1a971f328385efdde2762fc1127c1a1d9e",
          "started_at": "2026-07-23T14:11:14Z",
          "judgment_request": {
            "contract_version": 1,
            "run_id": "WFR-374",
            "step_id": "review",
            "task": "code_review",
            "instructions": "Find material correctness, robustness, security, compatibility, or test gaps; do not restate mechanical facts.",
            "source_refs": [
              "scripts/prd_test_scope.py",
              "tests/test_test_scope_execution.py",
              "tests/test_test_scope_guard.py",
              ".prd_plugin/state/releases.json",
              "templates/releases.json",
              "docs/evidence/EV-197.md"
            ],
            "source_hashes": {
              "scripts/prd_test_scope.py": "5c81fa8a42374128d0338c778086e8a360af80e0613014c95ae0a200cd1b2d98",
              "tests/test_test_scope_execution.py": "6f6ce4ef7776f9b912f0d73036a2d61beebdaeb1c89038afcdad471dc17829f1",
              "tests/test_test_scope_guard.py": "fcfad2dbec9ceff4f63b25a2fe6ac47710710d31774e7c45e9d91caaaf64ae50",
              ".prd_plugin/state/releases.json": "e362fbcbc835c57380ab0bece7525bf0154cfac55e8d0a051906f59cac87f911",
              "templates/releases.json": "f8eba7ffd9aede2b81590cee0e453a7daddd87617618032a6d91be6aab941f6b",
              "docs/evidence/EV-197.md": "75f11d47f6d2079e2d04f9687eb7937fb6d42a40f0659a62eef77e6cb11d26a7"
            },
            "result_schema": {
              "type": "object",
              "required": [
                "summary",
                "findings",
                "source_refs"
              ],
              "properties": {
                "summary": {
                  "type": "string"
                },
                "findings": {
                  "type": "array",
                  "items": {
                    "type": "object"
                  }
                },
                "source_refs": {
                  "type": "array",
                  "items": {
                    "type": "string"
                  }
                }
              }
            },
            "executor": "ai-collab",
            "profile": "fast-capable",
            "constraints": {
              "no_project_state_writes": true,
              "require_source_refs": true
            },
            "request_hash": "7ff4d7fe74d04bea2b490ba3301e8a8745be7a42888214ccef73b1eb05c56698"
          },
          "output": {
            "summary": "No blocking or material findings. The implementation preserves the executable allowlist, resolves the approved token without a shell, fails closed when resolution is unavailable, and is covered by Windows-resolution and missing-executable regressions. The guard test now isolates repository state deterministically. Version and release mirrors are aligned at 0.16.47.",
            "findings": [],
            "source_refs": [
              "scripts/prd_test_scope.py",
              "tests/test_test_scope_execution.py",
              "tests/test_test_scope_guard.py",
              ".prd_plugin/state/releases.json",
              "templates/releases.json",
              "docs/evidence/EV-197.md"
            ]
          },
          "output_hash": "3596dbc812549b7ccd5a4df58fa85cc08c04e4286c2456d20fe0e916b3db5004",
          "completed_at": "2026-07-23T14:13:33Z",
          "judgment_result": {
            "request_hash": "7ff4d7fe74d04bea2b490ba3301e8a8745be7a42888214ccef73b1eb05c56698",
            "executor": "ai-collab",
            "profile": "fast-capable"
          }
        }
      ],
      "completed_at": "2026-07-23T14:13:33Z"
    },
    {
      "id": "WFR-375",
      "schema_version": "1.0",
      "workflow_id": "engineering.code-review",
      "workflow_version": 1,
      "definition_hash": "ad3df68a0ff3c3ede35fe5266dcfbffbe7b1ba3e8ada5fc4b9012db9f451212f",
      "plan_hash": "58da4943379ae12bfa57c69f786a8568cc00fbd1b496350a261ae2a1342d8fdc",
      "input_hash": "3528f69da4599af07747d92e8cd270e48c04b8b9120e22835d88ad94f125e3a7",
      "inputs": {
        "base_ref": "main",
        "source_refs": [
          "scripts/prd_test_scope.py",
          "tests/test_test_scope_execution.py",
          "tests/test_test_scope_guard.py",
          ".prd_plugin/state/releases.json",
          "templates/releases.json",
          "docs/evidence/EV-197.md"
        ]
      },
      "idempotency_key": "codex-review-req-166-final-20260723",
      "status": "completed",
      "attempt": 1,
      "created_at": "2026-07-23T14:14:27Z",
      "updated_at": "2026-07-23T14:14:44Z",
      "receipts": [
        {
          "step_id": "diff",
          "action": "git.diff_check",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "11c11db30f4b3f6c758722ba3e27eea08145b7d212f6a157451e364b48475280",
          "completed_at": "2026-07-23T14:14:28Z"
        },
        {
          "step_id": "verification",
          "action": "verification.plan",
          "input_hash": "9c8856776a7db6455fee675768cfc615a0fe2a04fb88b9a4fd8e3fce515eaf08",
          "output_hash": "d7ce03015abd78075d5ac8802937d1e4cfa8263f4d32f9dc4bdc8752c8f933ec",
          "completed_at": "2026-07-23T14:14:28Z"
        },
        {
          "step_id": "context",
          "action": "substrate.enrich",
          "input_hash": "5d4f7395785ef8bee3ea8faa739d8c9479b0af76c3703481891dde2b1a608064",
          "output_hash": "c05b75c4d57ba08fd463244653cc105c8caa033fb85d4992785584ede89c58c7",
          "completed_at": "2026-07-23T14:14:28Z"
        },
        {
          "step_id": "review",
          "action": "judgment.request",
          "input_hash": "c35d2fac1a2a4b5418c0ef2ba33e9f1a971f328385efdde2762fc1127c1a1d9e",
          "output_hash": "cfface81edaaa57a1a5d283fe366ec7b31557fa4b6a667878b4a62cf2537af76",
          "request_hash": "1f2aecb466132d9ce7865bf1dabf5fd17a897b244d633b14a4e9d9f680ce22f5",
          "completed_at": "2026-07-23T14:14:44Z"
        }
      ],
      "steps": [
        {
          "id": "diff",
          "action": "git.diff_check",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-23T14:14:27Z",
          "output": {
            "passed": true
          },
          "output_hash": "11c11db30f4b3f6c758722ba3e27eea08145b7d212f6a157451e364b48475280",
          "completed_at": "2026-07-23T14:14:28Z"
        },
        {
          "id": "verification",
          "action": "verification.plan",
          "status": "completed",
          "resolved_input_hash": "9c8856776a7db6455fee675768cfc615a0fe2a04fb88b9a4fd8e3fce515eaf08",
          "started_at": "2026-07-23T14:14:28Z",
          "output": {
            "schema_version": "1.0",
            "contract_version": 1,
            "executor": "ai-collab",
            "changed_files": [
              ".claude-plugin/marketplace.json",
              ".claude-plugin/plugin.json",
              ".codex-plugin/plugin.json",
              ".opencode/plugin.json",
              ".prd_plugin/config.json",
              ".prd_plugin/drift/events.jsonl",
              ".prd_plugin/ids/registry.json",
              ".prd_plugin/state/changelog.json",
              ".prd_plugin/state/evidence.json",
              ".prd_plugin/state/project.json",
              ".prd_plugin/state/releases.json",
              ".prd_plugin/state/requests.json",
              ".prd_plugin/state/tracking.json",
              ".prd_plugin/state/workflow-runs.json",
              "docs/evidence/EV-197.md",
              "index.js",
              "mcp/server.cjs",
              "package.json",
              "scripts/prd_test_scope.py",
              "skills-manifest.json",
              "templates/config.json",
              "templates/project.json",
              "templates/releases.json",
              "templates/repo-skeleton/.claude-plugin/plugin.json",
              "templates/repo-skeleton/.codex-plugin/plugin.json",
              "templates/repo-skeleton/.opencode/plugin.json",
              "templates/repo-skeleton/.prd_plugin/config.json",
              "templates/repo-skeleton/.prd_plugin/state/project.json",
              "templates/repo-skeleton/.prd_plugin/templates/config.json",
              "templates/repo-skeleton/.prd_plugin/templates/project.json",
              "tests/test_test_scope_execution.py",
              "tests/test_test_scope_guard.py"
            ],
            "change_fingerprint": "9791d6cf85c4cd2deea907e069028b4f93b45e45823be3848deebfbb1ac2dfef",
            "policy": {
              "enabled": true,
              "executor": "ai-collab",
              "neighbor_limit": 12,
              "max_changed_files": 25,
              "fallback": "full",
              "full_suite_triggers": [
                "release",
                "core_change",
                "impact_unavailable",
                "impact_degraded",
                "unmapped_change"
              ],
              "core_paths": [
                "package.json",
                "package-lock.json",
                "pyproject.toml",
                "Cargo.toml",
                "go.mod",
                ".github/workflows/**"
              ],
              "test_patterns": [
                "tests/**",
                "test/**",
                "spec/**",
                "**/*.test.*",
                "**/*.spec.*",
                "test_*.py",
                "*_test.py",
                "*_test.go",
                "**/test_*.py",
                "**/*_test.py",
                "**/*_test.go"
              ],
              "max_selected_tests": 200,
              "execution_timeout_seconds": 600,
              "focused_commands": [],
              "full_commands": [],
              "allowed_executables": [
                "python",
                "python3",
                "py",
                "pytest",
                "npm",
                "npx",
                "node",
                "go",
                "cargo",
                "dotnet",
                "mvn",
                "gradle",
                "gradlew",
                "make"
              ]
            },
            "selection_rules": {
              "precedence": [
                "exact_changed",
                "explicit_test_ownership",
                "structural_dependencies",
                "predictive_impact"
              ],
              "require_all_changed_files_mapped": true,
              "widen_before_full": true,
              "predictive_signal_is_sufficient_alone": false
            },
            "fallback": {
              "strategy": "full",
              "conditions": [
                "release",
                "core_change",
                "impact_unavailable",
                "impact_degraded",
                "unmapped_change"
              ]
            },
            "strategy": "full",
            "reason": "core_change",
            "runtime_requests": {},
            "plan_hash": "07a675d388e0ac9aadc407f757ca7ed97d67cf6c349a18b263e808a171739c7a"
          },
          "output_hash": "d7ce03015abd78075d5ac8802937d1e4cfa8263f4d32f9dc4bdc8752c8f933ec",
          "completed_at": "2026-07-23T14:14:28Z"
        },
        {
          "id": "context",
          "action": "substrate.enrich",
          "status": "completed",
          "resolved_input_hash": "5d4f7395785ef8bee3ea8faa739d8c9479b0af76c3703481891dde2b1a608064",
          "started_at": "2026-07-23T14:14:28Z",
          "output": {
            "status": "disabled",
            "results": [],
            "local_source_refs": [
              "scripts/prd_test_scope.py",
              "tests/test_test_scope_execution.py",
              "tests/test_test_scope_guard.py",
              ".prd_plugin/state/releases.json",
              "templates/releases.json",
              "docs/evidence/EV-197.md"
            ]
          },
          "output_hash": "c05b75c4d57ba08fd463244653cc105c8caa033fb85d4992785584ede89c58c7",
          "completed_at": "2026-07-23T14:14:28Z"
        },
        {
          "id": "review",
          "action": "judgment.request",
          "status": "completed",
          "resolved_input_hash": "c35d2fac1a2a4b5418c0ef2ba33e9f1a971f328385efdde2762fc1127c1a1d9e",
          "started_at": "2026-07-23T14:14:28Z",
          "judgment_request": {
            "contract_version": 1,
            "run_id": "WFR-375",
            "step_id": "review",
            "task": "code_review",
            "instructions": "Find material correctness, robustness, security, compatibility, or test gaps; do not restate mechanical facts.",
            "source_refs": [
              "scripts/prd_test_scope.py",
              "tests/test_test_scope_execution.py",
              "tests/test_test_scope_guard.py",
              ".prd_plugin/state/releases.json",
              "templates/releases.json",
              "docs/evidence/EV-197.md"
            ],
            "source_hashes": {
              "scripts/prd_test_scope.py": "5c81fa8a42374128d0338c778086e8a360af80e0613014c95ae0a200cd1b2d98",
              "tests/test_test_scope_execution.py": "9eff27f1c58c3e1bfbacc52d3f8960c251eca6da62def23c9e7e6fd82ed98dc7",
              "tests/test_test_scope_guard.py": "fcfad2dbec9ceff4f63b25a2fe6ac47710710d31774e7c45e9d91caaaf64ae50",
              ".prd_plugin/state/releases.json": "e362fbcbc835c57380ab0bece7525bf0154cfac55e8d0a051906f59cac87f911",
              "templates/releases.json": "f8eba7ffd9aede2b81590cee0e453a7daddd87617618032a6d91be6aab941f6b",
              "docs/evidence/EV-197.md": "75f11d47f6d2079e2d04f9687eb7937fb6d42a40f0659a62eef77e6cb11d26a7"
            },
            "result_schema": {
              "type": "object",
              "required": [
                "summary",
                "findings",
                "source_refs"
              ],
              "properties": {
                "summary": {
                  "type": "string"
                },
                "findings": {
                  "type": "array",
                  "items": {
                    "type": "object"
                  }
                },
                "source_refs": {
                  "type": "array",
                  "items": {
                    "type": "string"
                  }
                }
              }
            },
            "executor": "ai-collab",
            "profile": "fast-capable",
            "constraints": {
              "no_project_state_writes": true,
              "require_source_refs": true
            },
            "request_hash": "1f2aecb466132d9ce7865bf1dabf5fd17a897b244d633b14a4e9d9f680ce22f5"
          },
          "output": {
            "summary": "No blocking or material findings. The final source bundle preserves the allowlist, resolves only the approved executable token without shell interpretation, fails closed when resolution is unavailable, and includes regressions for both Windows shim resolution and discovery failure. The guard test has deterministic Git-state isolation, and 0.16.47 release mirrors are aligned.",
            "findings": [],
            "source_refs": [
              "scripts/prd_test_scope.py",
              "tests/test_test_scope_execution.py",
              "tests/test_test_scope_guard.py",
              ".prd_plugin/state/releases.json",
              "templates/releases.json",
              "docs/evidence/EV-197.md"
            ]
          },
          "output_hash": "cfface81edaaa57a1a5d283fe366ec7b31557fa4b6a667878b4a62cf2537af76",
          "completed_at": "2026-07-23T14:14:44Z",
          "judgment_result": {
            "request_hash": "1f2aecb466132d9ce7865bf1dabf5fd17a897b244d633b14a4e9d9f680ce22f5",
            "executor": "ai-collab",
            "profile": "fast-capable"
          }
        }
      ],
      "completed_at": "2026-07-23T14:14:44Z"
    },
    {
      "id": "WFR-376",
      "schema_version": "1.0",
      "workflow_id": "engineering.verify",
      "workflow_version": 1,
      "definition_hash": "82a795fafbc550f124ec781ea9c5b6170d95b5e687fffadf6939f1f160df5ce1",
      "plan_hash": "4bb158b22c9a87a54832df9b9b6a98a77151ce9005499d6a8337a4c015089e5e",
      "input_hash": "fd934039265310404d648cea4b1eb28964383bb8a97ef14b85b2b85d725d502e",
      "inputs": {
        "base_ref": "",
        "release": false
      },
      "idempotency_key": "codex-verify-req-166-final-20260723",
      "status": "cancelled",
      "attempt": 1,
      "created_at": "2026-07-23T14:15:12Z",
      "updated_at": "2026-07-23T14:18:09Z",
      "receipts": [
        {
          "step_id": "plan",
          "action": "verification.plan",
          "input_hash": "fd934039265310404d648cea4b1eb28964383bb8a97ef14b85b2b85d725d502e",
          "output_hash": "d7ce03015abd78075d5ac8802937d1e4cfa8263f4d32f9dc4bdc8752c8f933ec",
          "completed_at": "2026-07-23T14:15:13Z"
        }
      ],
      "steps": [
        {
          "id": "plan",
          "action": "verification.plan",
          "status": "completed",
          "resolved_input_hash": "fd934039265310404d648cea4b1eb28964383bb8a97ef14b85b2b85d725d502e",
          "started_at": "2026-07-23T14:15:13Z",
          "output": {
            "schema_version": "1.0",
            "contract_version": 1,
            "executor": "ai-collab",
            "changed_files": [
              ".claude-plugin/marketplace.json",
              ".claude-plugin/plugin.json",
              ".codex-plugin/plugin.json",
              ".opencode/plugin.json",
              ".prd_plugin/config.json",
              ".prd_plugin/drift/events.jsonl",
              ".prd_plugin/ids/registry.json",
              ".prd_plugin/state/changelog.json",
              ".prd_plugin/state/evidence.json",
              ".prd_plugin/state/project.json",
              ".prd_plugin/state/releases.json",
              ".prd_plugin/state/requests.json",
              ".prd_plugin/state/tracking.json",
              ".prd_plugin/state/workflow-runs.json",
              "docs/evidence/EV-197.md",
              "index.js",
              "mcp/server.cjs",
              "package.json",
              "scripts/prd_test_scope.py",
              "skills-manifest.json",
              "templates/config.json",
              "templates/project.json",
              "templates/releases.json",
              "templates/repo-skeleton/.claude-plugin/plugin.json",
              "templates/repo-skeleton/.codex-plugin/plugin.json",
              "templates/repo-skeleton/.opencode/plugin.json",
              "templates/repo-skeleton/.prd_plugin/config.json",
              "templates/repo-skeleton/.prd_plugin/state/project.json",
              "templates/repo-skeleton/.prd_plugin/templates/config.json",
              "templates/repo-skeleton/.prd_plugin/templates/project.json",
              "tests/test_test_scope_execution.py",
              "tests/test_test_scope_guard.py"
            ],
            "change_fingerprint": "9791d6cf85c4cd2deea907e069028b4f93b45e45823be3848deebfbb1ac2dfef",
            "policy": {
              "enabled": true,
              "executor": "ai-collab",
              "neighbor_limit": 12,
              "max_changed_files": 25,
              "fallback": "full",
              "full_suite_triggers": [
                "release",
                "core_change",
                "impact_unavailable",
                "impact_degraded",
                "unmapped_change"
              ],
              "core_paths": [
                "package.json",
                "package-lock.json",
                "pyproject.toml",
                "Cargo.toml",
                "go.mod",
                ".github/workflows/**"
              ],
              "test_patterns": [
                "tests/**",
                "test/**",
                "spec/**",
                "**/*.test.*",
                "**/*.spec.*",
                "test_*.py",
                "*_test.py",
                "*_test.go",
                "**/test_*.py",
                "**/*_test.py",
                "**/*_test.go"
              ],
              "max_selected_tests": 200,
              "execution_timeout_seconds": 600,
              "focused_commands": [],
              "full_commands": [],
              "allowed_executables": [
                "python",
                "python3",
                "py",
                "pytest",
                "npm",
                "npx",
                "node",
                "go",
                "cargo",
                "dotnet",
                "mvn",
                "gradle",
                "gradlew",
                "make"
              ]
            },
            "selection_rules": {
              "precedence": [
                "exact_changed",
                "explicit_test_ownership",
                "structural_dependencies",
                "predictive_impact"
              ],
              "require_all_changed_files_mapped": true,
              "widen_before_full": true,
              "predictive_signal_is_sufficient_alone": false
            },
            "fallback": {
              "strategy": "full",
              "conditions": [
                "release",
                "core_change",
                "impact_unavailable",
                "impact_degraded",
                "unmapped_change"
              ]
            },
            "strategy": "full",
            "reason": "core_change",
            "runtime_requests": {},
            "plan_hash": "07a675d388e0ac9aadc407f757ca7ed97d67cf6c349a18b263e808a171739c7a"
          },
          "output_hash": "d7ce03015abd78075d5ac8802937d1e4cfa8263f4d32f9dc4bdc8752c8f933ec",
          "completed_at": "2026-07-23T14:15:13Z"
        },
        {
          "id": "execute",
          "action": "verification.execute",
          "status": "pending"
        },
        {
          "id": "diff",
          "action": "git.diff_check",
          "status": "pending"
        },
        {
          "id": "state",
          "action": "state.consistency",
          "status": "pending"
        },
        {
          "id": "gate",
          "action": "state.gate",
          "status": "pending"
        }
      ],
      "cancelled_at": "2026-07-23T14:18:09Z",
      "cancel_reason": "MCP Python bridge 60-second timeout terminated the caller before verification.execute; superseded by the REQ-166 timeout-bound fix and a fresh final run."
    },
    {
      "id": "WFR-377",
      "schema_version": "1.0",
      "workflow_id": "engineering.verify",
      "workflow_version": 1,
      "definition_hash": "82a795fafbc550f124ec781ea9c5b6170d95b5e687fffadf6939f1f160df5ce1",
      "plan_hash": "4bb158b22c9a87a54832df9b9b6a98a77151ce9005499d6a8337a4c015089e5e",
      "input_hash": "fd934039265310404d648cea4b1eb28964383bb8a97ef14b85b2b85d725d502e",
      "inputs": {
        "base_ref": "",
        "release": false
      },
      "idempotency_key": "codex-verify-req-166-final2-20260723",
      "status": "completed",
      "attempt": 1,
      "created_at": "2026-07-23T14:18:37Z",
      "updated_at": "2026-07-23T14:25:29Z",
      "receipts": [
        {
          "step_id": "plan",
          "action": "verification.plan",
          "input_hash": "fd934039265310404d648cea4b1eb28964383bb8a97ef14b85b2b85d725d502e",
          "output_hash": "e049f334a40c6445a80927a2ef744496511e81515c99c3b6a97813679f1b7955",
          "completed_at": "2026-07-23T14:18:37Z"
        },
        {
          "step_id": "execute",
          "action": "verification.execute",
          "input_hash": "8bfd6a99d1c4b59b04034bcbd4857157463e2f1d6458f8940c98796637e721f7",
          "output_hash": "2000f2f2bc792f824d19a49a701c1a19f203a0e358d5ac8e8f90145ca7617aa4",
          "completed_at": "2026-07-23T14:25:26Z"
        },
        {
          "step_id": "diff",
          "action": "git.diff_check",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "11c11db30f4b3f6c758722ba3e27eea08145b7d212f6a157451e364b48475280",
          "completed_at": "2026-07-23T14:25:27Z"
        },
        {
          "step_id": "state",
          "action": "state.consistency",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "5a1c6e5246defb1b6b6b90ff734db95bece2886b408ab112ed9b8e67222d5568",
          "completed_at": "2026-07-23T14:25:28Z"
        },
        {
          "step_id": "gate",
          "action": "state.gate",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "a705b176b049df02348354c23988d51f616670b7352ad410321cbe0577edf053",
          "completed_at": "2026-07-23T14:25:28Z"
        }
      ],
      "steps": [
        {
          "id": "plan",
          "action": "verification.plan",
          "status": "completed",
          "resolved_input_hash": "fd934039265310404d648cea4b1eb28964383bb8a97ef14b85b2b85d725d502e",
          "started_at": "2026-07-23T14:18:37Z",
          "output": {
            "schema_version": "1.0",
            "contract_version": 1,
            "executor": "ai-collab",
            "changed_files": [
              ".claude-plugin/marketplace.json",
              ".claude-plugin/plugin.json",
              ".codex-plugin/plugin.json",
              ".opencode/plugin.json",
              ".prd_plugin/config.json",
              ".prd_plugin/drift/events.jsonl",
              ".prd_plugin/ids/registry.json",
              ".prd_plugin/state/changelog.json",
              ".prd_plugin/state/evidence.json",
              ".prd_plugin/state/project.json",
              ".prd_plugin/state/releases.json",
              ".prd_plugin/state/requests.json",
              ".prd_plugin/state/tracking.json",
              ".prd_plugin/state/workflow-runs.json",
              "docs/evidence/EV-197.md",
              "index.js",
              "mcp/server.cjs",
              "package.json",
              "scripts/prd_test_scope.py",
              "skills-manifest.json",
              "templates/config.json",
              "templates/project.json",
              "templates/releases.json",
              "templates/repo-skeleton/.claude-plugin/plugin.json",
              "templates/repo-skeleton/.codex-plugin/plugin.json",
              "templates/repo-skeleton/.opencode/plugin.json",
              "templates/repo-skeleton/.prd_plugin/config.json",
              "templates/repo-skeleton/.prd_plugin/state/project.json",
              "templates/repo-skeleton/.prd_plugin/templates/config.json",
              "templates/repo-skeleton/.prd_plugin/templates/project.json",
              "tests/node/server.test.cjs",
              "tests/test_test_scope_execution.py",
              "tests/test_test_scope_guard.py"
            ],
            "change_fingerprint": "e3bb7631d947bc1ca558981a72396887a468966511a9235f91ba573c0cd18cbe",
            "policy": {
              "enabled": true,
              "executor": "ai-collab",
              "neighbor_limit": 12,
              "max_changed_files": 25,
              "fallback": "full",
              "full_suite_triggers": [
                "release",
                "core_change",
                "impact_unavailable",
                "impact_degraded",
                "unmapped_change"
              ],
              "core_paths": [
                "package.json",
                "package-lock.json",
                "pyproject.toml",
                "Cargo.toml",
                "go.mod",
                ".github/workflows/**"
              ],
              "test_patterns": [
                "tests/**",
                "test/**",
                "spec/**",
                "**/*.test.*",
                "**/*.spec.*",
                "test_*.py",
                "*_test.py",
                "*_test.go",
                "**/test_*.py",
                "**/*_test.py",
                "**/*_test.go"
              ],
              "max_selected_tests": 200,
              "execution_timeout_seconds": 600,
              "focused_commands": [],
              "full_commands": [],
              "allowed_executables": [
                "python",
                "python3",
                "py",
                "pytest",
                "npm",
                "npx",
                "node",
                "go",
                "cargo",
                "dotnet",
                "mvn",
                "gradle",
                "gradlew",
                "make"
              ]
            },
            "selection_rules": {
              "precedence": [
                "exact_changed",
                "explicit_test_ownership",
                "structural_dependencies",
                "predictive_impact"
              ],
              "require_all_changed_files_mapped": true,
              "widen_before_full": true,
              "predictive_signal_is_sufficient_alone": false
            },
            "fallback": {
              "strategy": "full",
              "conditions": [
                "release",
                "core_change",
                "impact_unavailable",
                "impact_degraded",
                "unmapped_change"
              ]
            },
            "strategy": "full",
            "reason": "core_change",
            "runtime_requests": {},
            "plan_hash": "55573d1c05610752fed8c39965c3bb485a503d3d2ed78d45681462d59d9bf5b4"
          },
          "output_hash": "e049f334a40c6445a80927a2ef744496511e81515c99c3b6a97813679f1b7955",
          "completed_at": "2026-07-23T14:18:37Z"
        },
        {
          "id": "execute",
          "action": "verification.execute",
          "status": "completed",
          "resolved_input_hash": "8bfd6a99d1c4b59b04034bcbd4857157463e2f1d6458f8940c98796637e721f7",
          "started_at": "2026-07-23T14:18:37Z",
          "output": {
            "status": "passed",
            "strategy": "full",
            "reason": "core_change",
            "selected_tests": [],
            "change_fingerprint": "e3bb7631d947bc1ca558981a72396887a468966511a9235f91ba573c0cd18cbe",
            "plan_hash": "55573d1c05610752fed8c39965c3bb485a503d3d2ed78d45681462d59d9bf5b4",
            "impact_receipts": [],
            "receipts": [
              {
                "command": [
                  "npm",
                  "test"
                ],
                "exit_code": 0,
                "stdout": "\n> prd-plugin@0.16.47 test\n> python -m unittest discover -s tests -v\n\n{\n  \"status\": \"fail\",\n  \"repo_root\": \"C:\\\\Users\\\\marku\\\\AppData\\\\Local\\\\Temp\\\\tmpoztfdonz\",\n  \"summary\": {\n    \"errors\": 1,\n    \"warnings\": 0\n  },\n  \"findings\": [\n    {\n      \"check\": \"duplicate_id\",\n      \"severity\": \"error\",\n      \"summary\": \"Duplicate id REQ-002 in .prd_plugin/state/requests.json.\",\n      \"required_action\": \"Renumber one record so REQ-002 is unique. Allocate IDs with the MCP tool prd_next_id (or the record tools like prd_open_goal) instead of hand-computing them.\"\n    }\n  ]\n}\nautonomy_level set to guided\nautonomy_level set to autonomous\nDESTRUCTIVE RESET REQUESTED: --force --yes will erase protected PRD Plugin project data.\nThe following existing state/configuration files would be replaced with skeleton defaults:\n  - .prd_plugin/state/tracking.json\nThis may erase IDs, tracking, requests, decisions, health findings, configuration, and session memory.\nFor a normal safe update, remove --yes and run: npx prd-install . --force\nPRD Plugin safe update: preserving existing state/config and refreshing plugin files only. Never add --yes to a routine update; it requests a destructive reset.\nPRD Plugin safe update: preserving existing state/config and refreshing plugin files only. Never add --yes to a routine update; it requests a destructive reset.\nPRD Plugin safe update: preserving existing state/config and refreshing plugin files only. Never add --yes to a routine update; it requests a destructive reset.\nPRD Plugin safe update: preserving existing state/config and refreshing plugin files only. Never add --yes to a routine update; it requests a destructive reset.\nPRD Plugin safe update: preserving existing state/config and refreshing plugin files only. Never add --yes to a routine update; it requests a destructive reset.\nPRD Plugin safe update: preserving existing state/config and refreshing plugin files only. Never add --yes to a routine update; it requests a destructive reset.\nPRD Plugin safe update: preserving existing state/config and refreshing plugin files only. Never add --yes to a routine update; it requests a destructive reset.\nPRD Plugin safe update: preserving existing state/config and refreshing plugin files only. Never add --yes to a routine update; it requests a destructive reset.\nPRD Plugin safe update: preserving existing state/config and refreshing plugin files only. Never add --yes to a routine update; it requests a destructive reset.\nPRD Plugin safe update: preserving existing state/config and refreshing plugin files only. Never add --yes to a routine update; it requests a destructive reset.\nPRD Plugin safe update: preserving existing state/config and refreshing plugin files only. Never add --yes to a routine update; it requests a destructive reset.\nPRD Plugin safe update: preserving existing state/config and refreshing plugin files only. Never add --yes to a routine update; it requests a destructive reset.\nPRD Plugin safe update: preserving existing state/config and refreshing plugin files only. Never add --yes to a routine update; it requests a destructive reset.\nPRD Plugin safe update: preserving existing state/config and refreshing plugin files only. Never add --yes to a routine update; it requests a destructive reset.\nPRD Plugin safe update: preserving existing state/config and refreshing plugin files only. Never add --yes to a routine update; it requests a destructive reset.\nPRD Plugin safe update: preserving existing state/config and refreshing plugin files only. Never add --yes to a routine update; it requests a destructive reset.\n{\n  \"published\": false,\n  \"package\": \"prd-plugin\",\n  \"version\": \"9.9.9\",\n  \"version_seen\": null,\n  \"latest_seen\": null,\n  \"attempts_used\": 1\n}\n{\n  \"published\": true,\n  \"package\": \"prd-plugin\",\n  \"version\": \"1.2.3\",\n  \"version_seen\": \"1.2.3\",\n  \"latest_seen\": \"1.2.3\",\n  \"attempts_used\": 1\n}\n{\"decision\": \"block\", \"reason\": \"Autonomous run-until-done: goal TRK-152 is still active. Continue with the next incomplete step toward it \\u2014 do not stop to ask 'shall I proceed?'. If you genuinely need the user (consent floor: push/merge/publish/secrets, or a real blocker), create the file .prd_plugin/local/autonomy-pause with a one-line reason and then stop; the guard will let you. Otherwise keep going.\"}\n",
                "stderr": "nfig.MutationTests.test_manual_set_marks_profile_custom_and_preserves_style) ... ok\ntest_scalar_parent_is_not_clobbered_by_nested_set (test_unified_config.MutationTests.test_scalar_parent_is_not_clobbered_by_nested_set) ... ok\ntest_builtin_profile_dry_run_then_atomic_apply (test_unified_config.ProfileTests.test_builtin_profile_dry_run_then_atomic_apply) ... ok\ntest_invalid_custom_profile_never_partially_writes (test_unified_config.ProfileTests.test_invalid_custom_profile_never_partially_writes) ... ok\ntest_save_show_diff_and_delete_custom_profile (test_unified_config.ProfileTests.test_save_show_diff_and_delete_custom_profile) ... ok\ntest_does_not_flag_canonical_prd_state_paths (test_unsubmitted_plugin_request.UnsubmittedPluginRequestTests.test_does_not_flag_canonical_prd_state_paths) ... ok\ntest_does_not_flag_ordinary_project_requests (test_unsubmitted_plugin_request.UnsubmittedPluginRequestTests.test_does_not_flag_ordinary_project_requests) ... ok\ntest_does_not_flag_rejected_requests (test_unsubmitted_plugin_request.UnsubmittedPluginRequestTests.test_does_not_flag_rejected_requests) ... ok\ntest_does_not_flag_when_already_marked_upstream (test_unsubmitted_plugin_request.UnsubmittedPluginRequestTests.test_does_not_flag_when_already_marked_upstream) ... ok\ntest_flags_a_local_request_about_a_plugin_script (test_unsubmitted_plugin_request.UnsubmittedPluginRequestTests.test_flags_a_local_request_about_a_plugin_script) ... ok\ntest_flags_a_request_that_names_itself_upstream (test_unsubmitted_plugin_request.UnsubmittedPluginRequestTests.test_flags_a_request_that_names_itself_upstream) ... ok\ntest_never_fires_in_the_hub_repo_itself (test_unsubmitted_plugin_request.UnsubmittedPluginRequestTests.test_never_fires_in_the_hub_repo_itself) ... ok\ntest_wired_into_run_checks (test_unsubmitted_plugin_request.UnsubmittedPluginRequestTests.test_wired_into_run_checks) ... ok\ntest_output_writes_lf_and_a_trailing_newline (test_utcp_first_authority.GeneratedArtifactsAreByteStableTests.test_output_writes_lf_and_a_trailing_newline) ... ok\ntest_the_committed_manual_matches_a_fresh_generation (test_utcp_first_authority.GeneratedArtifactsAreByteStableTests.test_the_committed_manual_matches_a_fresh_generation) ... ok\ntest_every_spec_tool_maps_to_a_catalog_capability (test_utcp_first_authority.ParityDirectionTests.test_every_spec_tool_maps_to_a_catalog_capability) ... ok\ntest_server_metadata_matches_the_spec (test_utcp_first_authority.ParityDirectionTests.test_server_metadata_matches_the_spec) ... ok\ntest_python_entry_points_share_the_same_lock (test_utcp_first_authority.SafetyUnchangedTests.test_python_entry_points_share_the_same_lock)\nThe migration target already exists and is proven: prd_reflections ... ok\ntest_the_state_lock_is_still_held_for_mutations (test_utcp_first_authority.SafetyUnchangedTests.test_the_state_lock_is_still_held_for_mutations) ... ok\ntest_no_shipped_tool_metadata_carries_mojibake (test_utcp_first_authority.ShippedTextIsCleanTests.test_no_shipped_tool_metadata_carries_mojibake) ... ok\ntest_shipped_tool_metadata_is_valid_utf8 (test_utcp_first_authority.ShippedTextIsCleanTests.test_shipped_tool_metadata_is_valid_utf8)\nA file written through a cp1252 layer either fails to decode or ... ok\ntest_each_tool_declares_name_description_and_schema (test_utcp_first_authority.SpecIsTheSourceTests.test_each_tool_declares_name_description_and_schema) ... ok\ntest_the_manual_is_generated_from_the_spec_not_the_server (test_utcp_first_authority.SpecIsTheSourceTests.test_the_manual_is_generated_from_the_spec_not_the_server) ... ok\ntest_the_server_no_longer_authors_descriptions (test_utcp_first_authority.SpecIsTheSourceTests.test_the_server_no_longer_authors_descriptions)\nserver.cjs must READ definitions, not declare them. While a tool ... ok\ntest_the_spec_exists_and_declares_every_tool (test_utcp_first_authority.SpecIsTheSourceTests.test_the_spec_exists_and_declares_every_tool) ... ok\ntest_official_bridge_round_trips_cli_and_mcp_templates (test_utcp_first_catalog.BridgeParityTests.test_official_bridge_round_trips_cli_and_mcp_templates) ... C:\\Users\\marku\\AppData\\Local\\Python\\pythoncore-3.14-64\\Lib\\subprocess.py:1139: ResourceWarning: subprocess 32468 is still running\n  _warn(\"subprocess %s is still running\" % self.pid,\nResourceWarning: Enable tracemalloc to get the object allocation traceback\nC:\\Users\\marku\\AppData\\Local\\Python\\pythoncore-3.14-64\\Lib\\unittest\\case.py:615: ResourceWarning: unclosed file <_io.TextIOWrapper name=5 encoding='utf-8'>\n  result = method()\nResourceWarning: Enable tracemalloc to get the object allocation traceback\nC:\\Users\\marku\\AppData\\Local\\Python\\pythoncore-3.14-64\\Lib\\unittest\\case.py:615: ResourceWarning: unclosed file <_io.TextIOWrapper name=4 encoding='utf-8'>\n  result = method()\nResourceWarning: Enable tracemalloc to get the object allocation traceback\nok\ntest_bridged_entries_reuse_server_metadata_verbatim (test_utcp_first_catalog.GeneratedProjectionTests.test_bridged_entries_reuse_server_metadata_verbatim)\nEach bridged manual entry's description and inputs equal the server's ... ok\ntest_checked_in_metadata_matches_live_server (test_utcp_first_catalog.GeneratedProjectionTests.test_checked_in_metadata_matches_live_server)\nThe pinned metadata projection cannot drift behind the live server. ... ok\ntest_mutations_keep_the_validated_handler_path (test_utcp_first_catalog.GuardedMutationTests.test_mutations_keep_the_validated_handler_path)\nEvery manual tool in a non-read capability calls the plugin state ... ok\ntest_read_only_cli_tools_stay_cli (test_utcp_first_catalog.GuardedMutationTests.test_read_only_cli_tools_stay_cli)\nThe 12 cli-native observe/recall tools keep their cli templates. ... ok\ntest_checked_in_metadata_projection_exists (test_utcp_first_catalog.ManualCompletenessTests.test_checked_in_metadata_projection_exists)\nThe server's tool metadata is a checked-in generated artifact so the ... ok\ntest_manual_covers_every_capability_on_both_transports (test_utcp_first_catalog.ManualCompletenessTests.test_manual_covers_every_capability_on_both_transports)\nEvery UTCP and MCP registration in the tool-surface catalog appears ... ok\ntest_appends_version_change_request (test_version_advice.VersionAdviceTests.test_appends_version_change_request) ... ok\ntest_builds_safe_update_advice_for_low_risk_releases (test_version_advice.VersionAdviceTests.test_builds_safe_update_advice_for_low_risk_releases) ... ok\ntest_cli_uses_hub_releases_when_downstream_repo_has_no_releases_file (test_version_advice.VersionAdviceTests.test_cli_uses_hub_releases_when_downstream_repo_has_no_releases_file) ... ok\ntest_detects_installed_version_from_bom_json (test_version_advice.VersionAdviceTests.test_detects_installed_version_from_bom_json) ... ok\ntest_detects_installed_version_from_opencode_plugin_manifest (test_version_advice.VersionAdviceTests.test_detects_installed_version_from_opencode_plugin_manifest) ... ok\ntest_detects_installed_version_from_prd_plugin_config (test_version_advice.VersionAdviceTests.test_detects_installed_version_from_prd_plugin_config) ... ok\ntest_detects_latest_version_from_plugin_manifest (test_version_advice.VersionAdviceTests.test_detects_latest_version_from_plugin_manifest) ... ok\ntest_installed_version_priority_prefers_config_then_codex_then_opencode (test_version_advice.VersionAdviceTests.test_installed_version_priority_prefers_config_then_codex_then_opencode) ... ok\ntest_orders_prerelease_before_final_release (test_version_advice.VersionAdviceTests.test_orders_prerelease_before_final_release) ... ok\ntest_recommends_review_first_for_medium_or_high_risk_release (test_version_advice.VersionAdviceTests.test_recommends_review_first_for_medium_or_high_risk_release) ... ok\ntest_disabled_returns_disabled_and_no_fetch (test_version_check.CheckTests.test_disabled_returns_disabled_and_no_fetch) ... ok\ntest_force_refetches_within_ttl (test_version_check.CheckTests.test_force_refetches_within_ttl) ... ok\ntest_network_failure_is_fail_open (test_version_check.CheckTests.test_network_failure_is_fail_open) ... ok\ntest_no_update_when_current (test_version_check.CheckTests.test_no_update_when_current) ... ok\ntest_status_is_cache_only_no_fetch (test_version_check.CheckTests.test_status_is_cache_only_no_fetch) ... ok\ntest_ttl_cache_avoids_refetch (test_version_check.CheckTests.test_ttl_cache_avoids_refetch) ... ok\ntest_ttl_expiry_refetches (test_version_check.CheckTests.test_ttl_expiry_refetches) ... ok\ntest_update_available_when_npm_is_ahead (test_version_check.CheckTests.test_update_available_when_npm_is_ahead) ... ok\ntest_status_cli_exits_zero (test_version_check.CliTests.test_status_cli_exits_zero) ... ok\ntest_default_ttl_is_responsive_not_a_day (test_version_check.FreshnessTests.test_default_ttl_is_responsive_not_a_day) ... ok\ntest_fetch_latest_accepts_a_timeout (test_version_check.FreshnessTests.test_fetch_latest_accepts_a_timeout) ... ok\ntest_nudge_refreshes_in_session_not_cache_only (test_version_check.FreshnessTests.test_nudge_refreshes_in_session_not_cache_only) ... ok\ntest_registry_default_ttl_matches (test_version_check.FreshnessTests.test_registry_default_ttl_matches) ... ok\ntest_semver_ordering (test_version_check.ParseTests.test_semver_ordering) ... ok\ntest_set_enabled_writes_config (test_version_check.ToggleTests.test_set_enabled_writes_config) ... ok\ntest_config_has_version_check_default_on (test_version_check.WiringTests.test_config_has_version_check_default_on) ... ok\ntest_nudge_surfaces_update_available (test_version_check.WiringTests.test_nudge_surfaces_update_available) ... ok\ntest_prd_version_command_exists (test_version_check.WiringTests.test_prd_version_command_exists) ... ok\ntest_script_registered_downstream (test_version_check.WiringTests.test_script_registered_downstream) ... ok\ntest_plan_cli_emits_json (test_wiki_backfill.CliTests.test_plan_cli_emits_json) ... ok\ntest_status_cli (test_wiki_backfill.CliTests.test_status_cli) ... ok\ntest_marker_written_for_established_repo_gaining_wiki (test_wiki_backfill.InstallerMarkerTests.test_marker_written_for_established_repo_gaining_wiki) ... ok\ntest_no_marker_for_empty_scaffold (test_wiki_backfill.InstallerMarkerTests.test_no_marker_for_empty_scaffold) ... ok\ntest_no_marker_when_wiki_already_exists (test_wiki_backfill.InstallerMarkerTests.test_no_marker_when_wiki_already_exists) ... ok\ntest_no_marker_when_wiki_disabled (test_wiki_backfill.InstallerMarkerTests.test_no_marker_when_wiki_disabled) ... ok\ntest_pending_false_when_absent (test_wiki_backfill.StatusTests.test_pending_false_when_absent) ... ok\ntest_pending_false_when_wiki_already_exists (test_wiki_backfill.StatusTests.test_pending_false_when_wiki_already_exists) ... ok\ntest_pending_true_when_marker_present (test_wiki_backfill.StatusTests.test_pending_true_when_marker_present) ... ok\ntest_plan_excludes_generated_report_artifacts (test_wiki_backfill.SurveyPlanTests.test_plan_excludes_generated_report_artifacts)\nrequest-report/ (incl. its calibration report trees) and docs/evidence/ ... ok\ntest_plan_excludes_plugin_and_vendor_noise (test_wiki_backfill.SurveyPlanTests.test_plan_excludes_plugin_and_vendor_noise) ... ok\ntest_plan_inventories_code_docs_and_state (test_wiki_backfill.SurveyPlanTests.test_plan_inventories_code_docs_and_state) ... ok\ntest_plan_is_read_only (test_wiki_backfill.SurveyPlanTests.test_plan_is_read_only) ... ok\ntest_wiki_drift_in_on_stop_and_default_sets (test_wiki_backfill.WikiDriftMonitorWiringTests.test_wiki_drift_in_on_stop_and_default_sets) ... ok\ntest_current_article_no_drift (test_wiki_backfill.WikiDriftTests.test_current_article_no_drift) ... ok\ntest_drift_cli (test_wiki_backfill.WikiDriftTests.test_drift_cli) ... ok\ntest_far_behind_article_flagged (test_wiki_backfill.WikiDriftTests.test_far_behind_article_flagged) ... ok\ntest_no_wiki_is_ok (test_wiki_backfill.WikiDriftTests.test_no_wiki_is_ok) ... ok\ntest_unlinked_markdown_reference_is_part_of_wiki_drift (test_wiki_backfill.WikiDriftTests.test_unlinked_markdown_reference_is_part_of_wiki_drift) ... ok\ntest_unstamped_article_flagged (test_wiki_backfill.WikiDriftTests.test_unstamped_article_flagged) ... ok\ntest_wiki_drift_uses_configured_wiki_directory (test_wiki_backfill.WikiDriftTests.test_wiki_drift_uses_configured_wiki_directory) ... ok\ntest_ambiguous_reference_is_reported_but_never_guessed (test_wiki_backfill.WikiInlineMarkdownLinkTests.test_ambiguous_reference_is_reported_but_never_guessed) ... ok\ntest_cli_check_fails_and_fix_then_passes (test_wiki_backfill.WikiInlineMarkdownLinkTests.test_cli_check_fails_and_fix_then_passes) ... ok\ntest_existing_inline_links_and_fenced_examples_are_not_findings (test_wiki_backfill.WikiInlineMarkdownLinkTests.test_existing_inline_links_and_fenced_examples_are_not_findings) ... ok\ntest_fix_rewrites_only_unambiguous_references_to_relative_inline_links (test_wiki_backfill.WikiInlineMarkdownLinkTests.test_fix_rewrites_only_unambiguous_references_to_relative_inline_links) ... ok\ntest_reports_resolvable_bare_and_code_wrapped_markdown_references (test_wiki_backfill.WikiInlineMarkdownLinkTests.test_reports_resolvable_bare_and_code_wrapped_markdown_references) ... ok\ntest_nudge_surfaces_pending_backfill (test_wiki_backfill.WiringTests.test_nudge_surfaces_pending_backfill) ... ok\ntest_script_registered_downstream (test_wiki_backfill.WiringTests.test_script_registered_downstream) ... ok\ntest_skill_has_backfill_mode (test_wiki_backfill.WiringTests.test_skill_has_backfill_mode) ... ok\ntest_copy_and_download_controls_are_wired (test_wiki_html_export.WikiHtmlExportTests.test_copy_and_download_controls_are_wired) ... ok\ntest_default_output_lands_in_the_local_runtime_dir (test_wiki_html_export.WikiHtmlExportTests.test_default_output_lands_in_the_local_runtime_dir) ... ok\ntest_every_page_is_embedded_with_exact_markdown (test_wiki_html_export.WikiHtmlExportTests.test_every_page_is_embedded_with_exact_markdown) ... ok\ntest_export_all_generates_viewers_and_super_index (test_wiki_html_export.WikiHtmlExportTests.test_export_all_generates_viewers_and_super_index) ... ok\ntest_export_is_one_self_contained_offline_file (test_wiki_html_export.WikiHtmlExportTests.test_export_is_one_self_contained_offline_file) ... ok\ntest_guest_repo_viewer_is_hosted_by_the_host_repo (test_wiki_html_export.WikiHtmlExportTests.test_guest_repo_viewer_is_hosted_by_the_host_repo)\nA repo without .prd_plugin gets NO new files in its own tree; its ... ok\ntest_hub_repo_exports_all_pages (test_wiki_html_export.WikiHtmlExportTests.test_hub_repo_exports_all_pages) ... ok\ntest_parse_wiki_log_extracts_dated_entries_with_bodies (test_wiki_html_export.WikiHtmlExportTests.test_parse_wiki_log_extracts_dated_entries_with_bodies)\nREQ-112: every workspace log follows '## [date] mode | text'. ... ok\ntest_parse_wiki_log_tolerates_missing_log (test_wiki_html_export.WikiHtmlExportTests.test_parse_wiki_log_tolerates_missing_log) ... ok\ntest_script_content_cannot_break_the_payload (test_wiki_html_export.WikiHtmlExportTests.test_script_content_cannot_break_the_payload) ... ok\ntest_super_index_has_a_combined_changelog (test_wiki_html_export.WikiHtmlExportTests.test_super_index_has_a_combined_changelog) ... ok\ntest_super_index_reports_page_counts (test_wiki_html_export.WikiHtmlExportTests.test_super_index_reports_page_counts) ... ok\ntest_workspace_discovery_uses_the_wiki_convention_marker (test_wiki_html_export.WikiHtmlExportTests.test_workspace_discovery_uses_the_wiki_convention_marker)\nREQ-110 + REQ-111: any immediate child whose wiki follows the ... ok\ntest_a_repo_without_a_wiki_is_not_in_drift (test_wiki_ingest_drift.DetectionTests.test_a_repo_without_a_wiki_is_not_in_drift)\nNo wiki is a legitimate state, not a failure to ingest. ... ok\ntest_fully_ingested_repo_is_clean (test_wiki_ingest_drift.DetectionTests.test_fully_ingested_repo_is_clean) ... ok\ntest_malformed_state_degrades_rather_than_raising (test_wiki_ingest_drift.DetectionTests.test_malformed_state_degrades_rather_than_raising) ... ok\ntest_non_implemented_requests_are_never_expected_in_the_log (test_wiki_ingest_drift.DetectionTests.test_non_implemented_requests_are_never_expected_in_the_log) ... ok\ntest_only_work_since_the_last_ingest_is_actionable (test_wiki_ingest_drift.DetectionTests.test_only_work_since_the_last_ingest_is_actionable)\nRaw counting flags pre-wiki history as drift � ~70 items in the hub, ... ok\ntest_reports_implemented_requests_absent_from_the_log (test_wiki_ingest_drift.DetectionTests.test_reports_implemented_requests_absent_from_the_log) ... ok\ntest_it_runs_against_this_repo_and_returns_a_usable_report (test_wiki_ingest_drift.RealRepoTests.test_it_runs_against_this_repo_and_returns_a_usable_report)\nGrounded against real state, but NOT pinned to a specific gap: a test ... ok\ntest_prd_status_omits_it_when_clean (test_wiki_ingest_drift.SurfaceTests.test_prd_status_omits_it_when_clean) ... ok\ntest_prd_status_reports_the_drift (test_wiki_ingest_drift.SurfaceTests.test_prd_status_reports_the_drift) ... ok\ntest_this_repos_wiki_reads_byte_exact (test_wiki_page_contract.HubRepoSmokeTests.test_this_repos_wiki_reads_byte_exact) ... ok\ntest_list_enumerates_canonical_pages_with_titles (test_wiki_page_contract.WikiPageListTests.test_list_enumerates_canonical_pages_with_titles) ... ok\ntest_boundaries_are_hard (test_wiki_page_contract.WikiPageReadTests.test_boundaries_are_hard) ... ok\ntest_drift_remains_the_default_action (test_wiki_page_contract.WikiPageReadTests.test_drift_remains_the_default_action) ... ok\ntest_read_page_without_stamps_reports_null_provenance (test_wiki_page_contract.WikiPageReadTests.test_read_page_without_stamps_reports_null_provenance) ... ok\ntest_read_requires_a_path (test_wiki_page_contract.WikiPageReadTests.test_read_requires_a_path) ... ok\ntest_read_returns_exact_markdown_with_provenance (test_wiki_page_contract.WikiPageReadTests.test_read_returns_exact_markdown_with_provenance) ... ok\ntest_no_cp1252_unencodable_chars_in_agent_facing_tools (test_windows_console_safe.SourceScanTests.test_no_cp1252_unencodable_chars_in_agent_facing_tools) ... ok\ntest_backfill_pending_status_renders_cp1252_safe (test_windows_console_safe.StatusRenderTests.test_backfill_pending_status_renders_cp1252_safe) ... ok\ntest_repository_workflow_surfaces_are_chml_zero (test_workflow_chml_audit.WorkflowChmlAuditTests.test_repository_workflow_surfaces_are_chml_zero) ... ok\ntest_semantic_skill_finding_is_part_of_workflow_chml (test_workflow_chml_audit.WorkflowChmlAuditTests.test_semantic_skill_finding_is_part_of_workflow_chml) ... ok\ntest_git_workflow_defers_autonomy_to_decision_policy_but_keeps_floor (test_workflow_consistency.AutonomyConflictResolutionTests.test_git_workflow_defers_autonomy_to_decision_policy_but_keeps_floor) ... ok\ntest_request_intake_defers_autonomy_and_owns_graduation (test_workflow_consistency.AutonomyConflictResolutionTests.test_request_intake_defers_autonomy_and_owns_graduation) ... ok\ntest_evidence_pair_states_create_vs_review_boundary (test_workflow_consistency.BoundaryClarityTests.test_evidence_pair_states_create_vs_review_boundary) ... ok\ntest_session_close_states_memory_boundary (test_workflow_consistency.BoundaryClarityTests.test_session_close_states_memory_boundary) ... ok\ntest_document_branch_has_promotion_owner (test_workflow_consistency.DeadEndOwnerTests.test_document_branch_has_promotion_owner) ... ok\ntest_health_findings_have_triage_dispositions (test_workflow_consistency.DeadEndOwnerTests.test_health_findings_have_triage_dispositions) ... ok\ntest_memory_owns_schema_version_changes (test_workflow_consistency.DeadEndOwnerTests.test_memory_owns_schema_version_changes) ... ok\ntest_planning_lifecycle_has_stage_readiness_checkpoints (test_workflow_consistency.DeadEndOwnerTests.test_planning_lifecycle_has_stage_readiness_checkpoints) ... ok\ntest_session_close_runs_traceability_sync (test_workflow_consistency.DeadEndOwnerTests.test_session_close_runs_traceability_sync) ... ok\n\n----------------------------------------------------------------------\nRan 1193 tests in 408.404s\n\nOK\n",
                "receipt_hash": "87d12b6ce7c16c03d00141149165b2c339f1acbf7941fd550574e0968027b70c"
              }
            ],
            "execution_hash": "d94e043747296708f452887c949c2ee8809ac58edeef1aaa2e7dd948294e76db"
          },
          "output_hash": "2000f2f2bc792f824d19a49a701c1a19f203a0e358d5ac8e8f90145ca7617aa4",
          "completed_at": "2026-07-23T14:25:26Z"
        },
        {
          "id": "diff",
          "action": "git.diff_check",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-23T14:25:27Z",
          "output": {
            "passed": true
          },
          "output_hash": "11c11db30f4b3f6c758722ba3e27eea08145b7d212f6a157451e364b48475280",
          "completed_at": "2026-07-23T14:25:27Z"
        },
        {
          "id": "state",
          "action": "state.consistency",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-23T14:25:27Z",
          "output": {
            "status": "ok",
            "repo_root": "D:\\Projects\\prd-plugin",
            "summary": {
              "errors": 0,
              "warnings": 0,
              "infos": 0
            },
            "findings": []
          },
          "output_hash": "5a1c6e5246defb1b6b6b90ff734db95bece2886b408ab112ed9b8e67222d5568",
          "completed_at": "2026-07-23T14:25:28Z"
        },
        {
          "id": "gate",
          "action": "state.gate",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-23T14:25:28Z",
          "output": {
            "status": "ok",
            "repo_root": "D:\\Projects\\prd-plugin",
            "summary": {
              "errors": 0,
              "warnings": 0
            },
            "findings": []
          },
          "output_hash": "a705b176b049df02348354c23988d51f616670b7352ad410321cbe0577edf053",
          "completed_at": "2026-07-23T14:25:28Z"
        }
      ],
      "completed_at": "2026-07-23T14:25:29Z"
    },
    {
      "id": "WFR-378",
      "schema_version": "1.0",
      "workflow_id": "engineering.code-review",
      "workflow_version": 1,
      "definition_hash": "ad3df68a0ff3c3ede35fe5266dcfbffbe7b1ba3e8ada5fc4b9012db9f451212f",
      "plan_hash": "b758160cf929ee2f3b2edb17c81b0c14be1444a342b5a050fa7c9ac4390b3fb2",
      "input_hash": "f42a531cd7812d36d1b7becfd1895313852dc0b723d7dba2035fe5364474637c",
      "inputs": {
        "base_ref": "main",
        "source_refs": [
          "scripts/prd_test_scope.py",
          "mcp/server.cjs",
          "tests/test_test_scope_execution.py",
          "tests/test_test_scope_guard.py",
          "tests/node/server.test.cjs",
          ".prd_plugin/state/releases.json",
          "templates/releases.json",
          "docs/evidence/EV-197.md"
        ]
      },
      "idempotency_key": "codex-review-req-166-complete-20260723",
      "status": "completed",
      "attempt": 1,
      "created_at": "2026-07-23T14:25:38Z",
      "updated_at": "2026-07-23T14:26:57Z",
      "receipts": [
        {
          "step_id": "diff",
          "action": "git.diff_check",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "11c11db30f4b3f6c758722ba3e27eea08145b7d212f6a157451e364b48475280",
          "completed_at": "2026-07-23T14:25:38Z"
        },
        {
          "step_id": "verification",
          "action": "verification.plan",
          "input_hash": "9c8856776a7db6455fee675768cfc615a0fe2a04fb88b9a4fd8e3fce515eaf08",
          "output_hash": "e049f334a40c6445a80927a2ef744496511e81515c99c3b6a97813679f1b7955",
          "completed_at": "2026-07-23T14:25:39Z"
        },
        {
          "step_id": "context",
          "action": "substrate.enrich",
          "input_hash": "8173f0828f223548ad8381795feb4e2f6a147c2f88d0d972bdcd43df058a5037",
          "output_hash": "56f2dbe099c31bcaf58a6b5decd9463503dbcd8c5d2acf73bec8c5639ab31837",
          "completed_at": "2026-07-23T14:25:39Z"
        },
        {
          "step_id": "review",
          "action": "judgment.request",
          "input_hash": "b6d24529de3f2ade99a5bd02068079f3d93a49f3a47f0846f014de3354ec155f",
          "output_hash": "f254c295977b90c7aab8235ee6ac0744f3717cb5599d47f6fa92e4fa2cdb9b81",
          "request_hash": "5ede488066d53f116f45f0a7ff9f75c2aec0397018ed57f53a8ca1d6bb36678c",
          "completed_at": "2026-07-23T14:26:57Z"
        }
      ],
      "steps": [
        {
          "id": "diff",
          "action": "git.diff_check",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-23T14:25:38Z",
          "output": {
            "passed": true
          },
          "output_hash": "11c11db30f4b3f6c758722ba3e27eea08145b7d212f6a157451e364b48475280",
          "completed_at": "2026-07-23T14:25:38Z"
        },
        {
          "id": "verification",
          "action": "verification.plan",
          "status": "completed",
          "resolved_input_hash": "9c8856776a7db6455fee675768cfc615a0fe2a04fb88b9a4fd8e3fce515eaf08",
          "started_at": "2026-07-23T14:25:38Z",
          "output": {
            "schema_version": "1.0",
            "contract_version": 1,
            "executor": "ai-collab",
            "changed_files": [
              ".claude-plugin/marketplace.json",
              ".claude-plugin/plugin.json",
              ".codex-plugin/plugin.json",
              ".opencode/plugin.json",
              ".prd_plugin/config.json",
              ".prd_plugin/drift/events.jsonl",
              ".prd_plugin/ids/registry.json",
              ".prd_plugin/state/changelog.json",
              ".prd_plugin/state/evidence.json",
              ".prd_plugin/state/project.json",
              ".prd_plugin/state/releases.json",
              ".prd_plugin/state/requests.json",
              ".prd_plugin/state/tracking.json",
              ".prd_plugin/state/workflow-runs.json",
              "docs/evidence/EV-197.md",
              "index.js",
              "mcp/server.cjs",
              "package.json",
              "scripts/prd_test_scope.py",
              "skills-manifest.json",
              "templates/config.json",
              "templates/project.json",
              "templates/releases.json",
              "templates/repo-skeleton/.claude-plugin/plugin.json",
              "templates/repo-skeleton/.codex-plugin/plugin.json",
              "templates/repo-skeleton/.opencode/plugin.json",
              "templates/repo-skeleton/.prd_plugin/config.json",
              "templates/repo-skeleton/.prd_plugin/state/project.json",
              "templates/repo-skeleton/.prd_plugin/templates/config.json",
              "templates/repo-skeleton/.prd_plugin/templates/project.json",
              "tests/node/server.test.cjs",
              "tests/test_test_scope_execution.py",
              "tests/test_test_scope_guard.py"
            ],
            "change_fingerprint": "e3bb7631d947bc1ca558981a72396887a468966511a9235f91ba573c0cd18cbe",
            "policy": {
              "enabled": true,
              "executor": "ai-collab",
              "neighbor_limit": 12,
              "max_changed_files": 25,
              "fallback": "full",
              "full_suite_triggers": [
                "release",
                "core_change",
                "impact_unavailable",
                "impact_degraded",
                "unmapped_change"
              ],
              "core_paths": [
                "package.json",
                "package-lock.json",
                "pyproject.toml",
                "Cargo.toml",
                "go.mod",
                ".github/workflows/**"
              ],
              "test_patterns": [
                "tests/**",
                "test/**",
                "spec/**",
                "**/*.test.*",
                "**/*.spec.*",
                "test_*.py",
                "*_test.py",
                "*_test.go",
                "**/test_*.py",
                "**/*_test.py",
                "**/*_test.go"
              ],
              "max_selected_tests": 200,
              "execution_timeout_seconds": 600,
              "focused_commands": [],
              "full_commands": [],
              "allowed_executables": [
                "python",
                "python3",
                "py",
                "pytest",
                "npm",
                "npx",
                "node",
                "go",
                "cargo",
                "dotnet",
                "mvn",
                "gradle",
                "gradlew",
                "make"
              ]
            },
            "selection_rules": {
              "precedence": [
                "exact_changed",
                "explicit_test_ownership",
                "structural_dependencies",
                "predictive_impact"
              ],
              "require_all_changed_files_mapped": true,
              "widen_before_full": true,
              "predictive_signal_is_sufficient_alone": false
            },
            "fallback": {
              "strategy": "full",
              "conditions": [
                "release",
                "core_change",
                "impact_unavailable",
                "impact_degraded",
                "unmapped_change"
              ]
            },
            "strategy": "full",
            "reason": "core_change",
            "runtime_requests": {},
            "plan_hash": "55573d1c05610752fed8c39965c3bb485a503d3d2ed78d45681462d59d9bf5b4"
          },
          "output_hash": "e049f334a40c6445a80927a2ef744496511e81515c99c3b6a97813679f1b7955",
          "completed_at": "2026-07-23T14:25:39Z"
        },
        {
          "id": "context",
          "action": "substrate.enrich",
          "status": "completed",
          "resolved_input_hash": "8173f0828f223548ad8381795feb4e2f6a147c2f88d0d972bdcd43df058a5037",
          "started_at": "2026-07-23T14:25:39Z",
          "output": {
            "status": "disabled",
            "results": [],
            "local_source_refs": [
              "scripts/prd_test_scope.py",
              "mcp/server.cjs",
              "tests/test_test_scope_execution.py",
              "tests/test_test_scope_guard.py",
              "tests/node/server.test.cjs",
              ".prd_plugin/state/releases.json",
              "templates/releases.json",
              "docs/evidence/EV-197.md"
            ]
          },
          "output_hash": "56f2dbe099c31bcaf58a6b5decd9463503dbcd8c5d2acf73bec8c5639ab31837",
          "completed_at": "2026-07-23T14:25:39Z"
        },
        {
          "id": "review",
          "action": "judgment.request",
          "status": "completed",
          "resolved_input_hash": "b6d24529de3f2ade99a5bd02068079f3d93a49f3a47f0846f014de3354ec155f",
          "started_at": "2026-07-23T14:25:39Z",
          "judgment_request": {
            "contract_version": 1,
            "run_id": "WFR-378",
            "step_id": "review",
            "task": "code_review",
            "instructions": "Find material correctness, robustness, security, compatibility, or test gaps; do not restate mechanical facts.",
            "source_refs": [
              "scripts/prd_test_scope.py",
              "mcp/server.cjs",
              "tests/test_test_scope_execution.py",
              "tests/test_test_scope_guard.py",
              "tests/node/server.test.cjs",
              ".prd_plugin/state/releases.json",
              "templates/releases.json",
              "docs/evidence/EV-197.md"
            ],
            "source_hashes": {
              "scripts/prd_test_scope.py": "5c81fa8a42374128d0338c778086e8a360af80e0613014c95ae0a200cd1b2d98",
              "mcp/server.cjs": "cd9ca25857321b1459319bb83fc8de2d03a5faaf4381d9f4de820b60e4b4ac16",
              "tests/test_test_scope_execution.py": "9eff27f1c58c3e1bfbacc52d3f8960c251eca6da62def23c9e7e6fd82ed98dc7",
              "tests/test_test_scope_guard.py": "fcfad2dbec9ceff4f63b25a2fe6ac47710710d31774e7c45e9d91caaaf64ae50",
              "tests/node/server.test.cjs": "54c5da5a7ed7920b638b99c5b7985bf045c000d51a22ecbaf1f1681c33061b21",
              ".prd_plugin/state/releases.json": "f8c4ab2eb94ba3839dd27cad3a453d6173e732572023349f71ed4ffbdb49c66a",
              "templates/releases.json": "50d937b1a96bcac537ae8823f1da6a2aa98adf0ce92e25681010242118453a87",
              "docs/evidence/EV-197.md": "75f11d47f6d2079e2d04f9687eb7937fb6d42a40f0659a62eef77e6cb11d26a7"
            },
            "result_schema": {
              "type": "object",
              "required": [
                "summary",
                "findings",
                "source_refs"
              ],
              "properties": {
                "summary": {
                  "type": "string"
                },
                "findings": {
                  "type": "array",
                  "items": {
                    "type": "object"
                  }
                },
                "source_refs": {
                  "type": "array",
                  "items": {
                    "type": "string"
                  }
                }
              }
            },
            "executor": "ai-collab",
            "profile": "fast-capable",
            "constraints": {
              "no_project_state_writes": true,
              "require_source_refs": true
            },
            "request_hash": "5ede488066d53f116f45f0a7ff9f75c2aec0397018ed57f53a8ca1d6bb36678c"
          },
          "output": {
            "summary": "One material robustness finding: the bridge budget covered only one configured verification command even though the per-command timeout applies independently. This could terminate valid multi-command workflows early.",
            "findings": [
              {
                "severity": "medium",
                "file": "mcp/server.cjs",
                "summary": "Workflow bridge timeout undercounts configured multi-command verification.",
                "resolution": "Fixed test-first by multiplying the validated per-command bound by the largest configured full/focused command list, plus bounded orchestration overhead."
              }
            ],
            "source_refs": [
              "mcp/server.cjs",
              "tests/node/server.test.cjs"
            ]
          },
          "output_hash": "f254c295977b90c7aab8235ee6ac0744f3717cb5599d47f6fa92e4fa2cdb9b81",
          "completed_at": "2026-07-23T14:26:57Z",
          "judgment_result": {
            "request_hash": "5ede488066d53f116f45f0a7ff9f75c2aec0397018ed57f53a8ca1d6bb36678c",
            "executor": "ai-collab",
            "profile": "fast-capable"
          }
        }
      ],
      "completed_at": "2026-07-23T14:26:57Z"
    },
    {
      "id": "WFR-379",
      "schema_version": "1.0",
      "workflow_id": "engineering.code-review",
      "workflow_version": 1,
      "definition_hash": "ad3df68a0ff3c3ede35fe5266dcfbffbe7b1ba3e8ada5fc4b9012db9f451212f",
      "plan_hash": "b758160cf929ee2f3b2edb17c81b0c14be1444a342b5a050fa7c9ac4390b3fb2",
      "input_hash": "f42a531cd7812d36d1b7becfd1895313852dc0b723d7dba2035fe5364474637c",
      "inputs": {
        "base_ref": "main",
        "source_refs": [
          "scripts/prd_test_scope.py",
          "mcp/server.cjs",
          "tests/test_test_scope_execution.py",
          "tests/test_test_scope_guard.py",
          "tests/node/server.test.cjs",
          ".prd_plugin/state/releases.json",
          "templates/releases.json",
          "docs/evidence/EV-197.md"
        ]
      },
      "idempotency_key": "codex-review-req-166-final-post-finding-20260723",
      "status": "completed",
      "attempt": 1,
      "created_at": "2026-07-23T14:27:04Z",
      "updated_at": "2026-07-23T14:27:17Z",
      "receipts": [
        {
          "step_id": "diff",
          "action": "git.diff_check",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "11c11db30f4b3f6c758722ba3e27eea08145b7d212f6a157451e364b48475280",
          "completed_at": "2026-07-23T14:27:04Z"
        },
        {
          "step_id": "verification",
          "action": "verification.plan",
          "input_hash": "9c8856776a7db6455fee675768cfc615a0fe2a04fb88b9a4fd8e3fce515eaf08",
          "output_hash": "e049f334a40c6445a80927a2ef744496511e81515c99c3b6a97813679f1b7955",
          "completed_at": "2026-07-23T14:27:05Z"
        },
        {
          "step_id": "context",
          "action": "substrate.enrich",
          "input_hash": "8173f0828f223548ad8381795feb4e2f6a147c2f88d0d972bdcd43df058a5037",
          "output_hash": "56f2dbe099c31bcaf58a6b5decd9463503dbcd8c5d2acf73bec8c5639ab31837",
          "completed_at": "2026-07-23T14:27:05Z"
        },
        {
          "step_id": "review",
          "action": "judgment.request",
          "input_hash": "b6d24529de3f2ade99a5bd02068079f3d93a49f3a47f0846f014de3354ec155f",
          "output_hash": "4b7f1afc946ddbea78cf81d68fd9c6122bd94c1b9c5bec2bc6c0cf0763b61959",
          "request_hash": "6425ae4e8cacc2f72f59f96631e8c7be3d1f85eae9acc8924b7bde5198793c36",
          "completed_at": "2026-07-23T14:27:17Z"
        }
      ],
      "steps": [
        {
          "id": "diff",
          "action": "git.diff_check",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-23T14:27:04Z",
          "output": {
            "passed": true
          },
          "output_hash": "11c11db30f4b3f6c758722ba3e27eea08145b7d212f6a157451e364b48475280",
          "completed_at": "2026-07-23T14:27:04Z"
        },
        {
          "id": "verification",
          "action": "verification.plan",
          "status": "completed",
          "resolved_input_hash": "9c8856776a7db6455fee675768cfc615a0fe2a04fb88b9a4fd8e3fce515eaf08",
          "started_at": "2026-07-23T14:27:05Z",
          "output": {
            "schema_version": "1.0",
            "contract_version": 1,
            "executor": "ai-collab",
            "changed_files": [
              ".claude-plugin/marketplace.json",
              ".claude-plugin/plugin.json",
              ".codex-plugin/plugin.json",
              ".opencode/plugin.json",
              ".prd_plugin/config.json",
              ".prd_plugin/drift/events.jsonl",
              ".prd_plugin/ids/registry.json",
              ".prd_plugin/state/changelog.json",
              ".prd_plugin/state/evidence.json",
              ".prd_plugin/state/project.json",
              ".prd_plugin/state/releases.json",
              ".prd_plugin/state/requests.json",
              ".prd_plugin/state/tracking.json",
              ".prd_plugin/state/workflow-runs.json",
              "docs/evidence/EV-197.md",
              "index.js",
              "mcp/server.cjs",
              "package.json",
              "scripts/prd_test_scope.py",
              "skills-manifest.json",
              "templates/config.json",
              "templates/project.json",
              "templates/releases.json",
              "templates/repo-skeleton/.claude-plugin/plugin.json",
              "templates/repo-skeleton/.codex-plugin/plugin.json",
              "templates/repo-skeleton/.opencode/plugin.json",
              "templates/repo-skeleton/.prd_plugin/config.json",
              "templates/repo-skeleton/.prd_plugin/state/project.json",
              "templates/repo-skeleton/.prd_plugin/templates/config.json",
              "templates/repo-skeleton/.prd_plugin/templates/project.json",
              "tests/node/server.test.cjs",
              "tests/test_test_scope_execution.py",
              "tests/test_test_scope_guard.py"
            ],
            "change_fingerprint": "e3bb7631d947bc1ca558981a72396887a468966511a9235f91ba573c0cd18cbe",
            "policy": {
              "enabled": true,
              "executor": "ai-collab",
              "neighbor_limit": 12,
              "max_changed_files": 25,
              "fallback": "full",
              "full_suite_triggers": [
                "release",
                "core_change",
                "impact_unavailable",
                "impact_degraded",
                "unmapped_change"
              ],
              "core_paths": [
                "package.json",
                "package-lock.json",
                "pyproject.toml",
                "Cargo.toml",
                "go.mod",
                ".github/workflows/**"
              ],
              "test_patterns": [
                "tests/**",
                "test/**",
                "spec/**",
                "**/*.test.*",
                "**/*.spec.*",
                "test_*.py",
                "*_test.py",
                "*_test.go",
                "**/test_*.py",
                "**/*_test.py",
                "**/*_test.go"
              ],
              "max_selected_tests": 200,
              "execution_timeout_seconds": 600,
              "focused_commands": [],
              "full_commands": [],
              "allowed_executables": [
                "python",
                "python3",
                "py",
                "pytest",
                "npm",
                "npx",
                "node",
                "go",
                "cargo",
                "dotnet",
                "mvn",
                "gradle",
                "gradlew",
                "make"
              ]
            },
            "selection_rules": {
              "precedence": [
                "exact_changed",
                "explicit_test_ownership",
                "structural_dependencies",
                "predictive_impact"
              ],
              "require_all_changed_files_mapped": true,
              "widen_before_full": true,
              "predictive_signal_is_sufficient_alone": false
            },
            "fallback": {
              "strategy": "full",
              "conditions": [
                "release",
                "core_change",
                "impact_unavailable",
                "impact_degraded",
                "unmapped_change"
              ]
            },
            "strategy": "full",
            "reason": "core_change",
            "runtime_requests": {},
            "plan_hash": "55573d1c05610752fed8c39965c3bb485a503d3d2ed78d45681462d59d9bf5b4"
          },
          "output_hash": "e049f334a40c6445a80927a2ef744496511e81515c99c3b6a97813679f1b7955",
          "completed_at": "2026-07-23T14:27:05Z"
        },
        {
          "id": "context",
          "action": "substrate.enrich",
          "status": "completed",
          "resolved_input_hash": "8173f0828f223548ad8381795feb4e2f6a147c2f88d0d972bdcd43df058a5037",
          "started_at": "2026-07-23T14:27:05Z",
          "output": {
            "status": "disabled",
            "results": [],
            "local_source_refs": [
              "scripts/prd_test_scope.py",
              "mcp/server.cjs",
              "tests/test_test_scope_execution.py",
              "tests/test_test_scope_guard.py",
              "tests/node/server.test.cjs",
              ".prd_plugin/state/releases.json",
              "templates/releases.json",
              "docs/evidence/EV-197.md"
            ]
          },
          "output_hash": "56f2dbe099c31bcaf58a6b5decd9463503dbcd8c5d2acf73bec8c5639ab31837",
          "completed_at": "2026-07-23T14:27:05Z"
        },
        {
          "id": "review",
          "action": "judgment.request",
          "status": "completed",
          "resolved_input_hash": "b6d24529de3f2ade99a5bd02068079f3d93a49f3a47f0846f014de3354ec155f",
          "started_at": "2026-07-23T14:27:05Z",
          "judgment_request": {
            "contract_version": 1,
            "run_id": "WFR-379",
            "step_id": "review",
            "task": "code_review",
            "instructions": "Find material correctness, robustness, security, compatibility, or test gaps; do not restate mechanical facts.",
            "source_refs": [
              "scripts/prd_test_scope.py",
              "mcp/server.cjs",
              "tests/test_test_scope_execution.py",
              "tests/test_test_scope_guard.py",
              "tests/node/server.test.cjs",
              ".prd_plugin/state/releases.json",
              "templates/releases.json",
              "docs/evidence/EV-197.md"
            ],
            "source_hashes": {
              "scripts/prd_test_scope.py": "5c81fa8a42374128d0338c778086e8a360af80e0613014c95ae0a200cd1b2d98",
              "mcp/server.cjs": "34e052ac40b1821deb7fd669b244106f879c59de6d94cdc5625caf876aeaca23",
              "tests/test_test_scope_execution.py": "9eff27f1c58c3e1bfbacc52d3f8960c251eca6da62def23c9e7e6fd82ed98dc7",
              "tests/test_test_scope_guard.py": "fcfad2dbec9ceff4f63b25a2fe6ac47710710d31774e7c45e9d91caaaf64ae50",
              "tests/node/server.test.cjs": "ca8ef11ab8d2b04e9b216f4f6691a2d34efcd81a3bea112ecec81b9f75d88c91",
              ".prd_plugin/state/releases.json": "f8c4ab2eb94ba3839dd27cad3a453d6173e732572023349f71ed4ffbdb49c66a",
              "templates/releases.json": "50d937b1a96bcac537ae8823f1da6a2aa98adf0ce92e25681010242118453a87",
              "docs/evidence/EV-197.md": "75f11d47f6d2079e2d04f9687eb7937fb6d42a40f0659a62eef77e6cb11d26a7"
            },
            "result_schema": {
              "type": "object",
              "required": [
                "summary",
                "findings",
                "source_refs"
              ],
              "properties": {
                "summary": {
                  "type": "string"
                },
                "findings": {
                  "type": "array",
                  "items": {
                    "type": "object"
                  }
                },
                "source_refs": {
                  "type": "array",
                  "items": {
                    "type": "string"
                  }
                }
              }
            },
            "executor": "ai-collab",
            "profile": "fast-capable",
            "constraints": {
              "no_project_state_writes": true,
              "require_source_refs": true
            },
            "request_hash": "6425ae4e8cacc2f72f59f96631e8c7be3d1f85eae9acc8924b7bde5198793c36"
          },
          "output": {
            "summary": "No remaining material findings. Executable resolution preserves the allowlist and no-shell boundary, missing executables fail closed, the bridge budget now covers the largest configured command list using the validated per-command bound plus fixed overhead, and both live-state and multi-command regressions are deterministic.",
            "findings": [],
            "source_refs": [
              "scripts/prd_test_scope.py",
              "mcp/server.cjs",
              "tests/test_test_scope_execution.py",
              "tests/test_test_scope_guard.py",
              "tests/node/server.test.cjs",
              ".prd_plugin/state/releases.json",
              "templates/releases.json",
              "docs/evidence/EV-197.md"
            ]
          },
          "output_hash": "4b7f1afc946ddbea78cf81d68fd9c6122bd94c1b9c5bec2bc6c0cf0763b61959",
          "completed_at": "2026-07-23T14:27:17Z",
          "judgment_result": {
            "request_hash": "6425ae4e8cacc2f72f59f96631e8c7be3d1f85eae9acc8924b7bde5198793c36",
            "executor": "ai-collab",
            "profile": "fast-capable"
          }
        }
      ],
      "completed_at": "2026-07-23T14:27:17Z"
    },
    {
      "id": "WFR-380",
      "schema_version": "1.0",
      "workflow_id": "evidence.record",
      "workflow_version": 1,
      "definition_hash": "a6dfcb8faadb669d5c097a0d7fa9a738f20ee98e03b552c9557259a94a197e88",
      "plan_hash": "134394cc381b331a9d699c74610d00e889a940a15336c8ed80dae05114a8d8fc",
      "input_hash": "f97fa30fc45bdfb6fec6cc9b18217f69921aa52a651fe20ba6d88c4827ffe716",
      "inputs": {
        "summary": "Final REQ-166 verification execution path passed full deterministic workflow and source-bound review for 0.16.47.",
        "type": "validation",
        "linked_ids": [
          "REQ-166",
          "TRK-152",
          "CHG-127"
        ],
        "commands": [
          {
            "command": "node --test --test-name-pattern=workflow bridge timeout tests/node/server.test.cjs",
            "outcome": "Regression failed before the bridge implementation, then passed after the bridge budget followed configured verification bounds."
          },
          {
            "command": "node --test tests/node/server.test.cjs",
            "outcome": "61 MCP server tests passed after the multi-command timeout refinement."
          },
          {
            "command": "engineering.verify WFR-377",
            "outcome": "Completed in 412.6 seconds: full npm test passed with 1,193 tests; diff check, state consistency, and state gate all passed with zero findings."
          },
          {
            "command": "engineering.code-review WFR-379",
            "outcome": "Final hash-bound review completed with no remaining material findings."
          }
        ],
        "limitations": "Substrate is configured off, so verification used the deterministic local full-suite fallback. No push, tag, npm publication, or downstream repository mutation was performed."
      },
      "idempotency_key": "codex-evidence-req-166-final-20260723",
      "status": "completed",
      "attempt": 1,
      "created_at": "2026-07-23T14:27:41Z",
      "updated_at": "2026-07-23T14:27:42Z",
      "receipts": [
        {
          "step_id": "record",
          "action": "state.mutate",
          "input_hash": "d104a486427e70b1d48983f389cbf80c59861411ca40cdeb6e3d184fc74bd218",
          "output_hash": "0313f332a35c975e7ddf31453d7110c0916f2be2aa816b608c64661d7addc7be",
          "completed_at": "2026-07-23T14:27:42Z"
        },
        {
          "step_id": "confirm",
          "action": "state.query",
          "input_hash": "8bf4170dc36e3b5f8e95e07152c965d5c77326cdfb9c5fb236cd5e3b54c9b877",
          "output_hash": "e0630954eb35cad0d5299976470199c09b4c9780864c7a1c72eb65a929cf3d8f",
          "completed_at": "2026-07-23T14:27:42Z"
        }
      ],
      "steps": [
        {
          "id": "record",
          "action": "state.mutate",
          "status": "completed",
          "resolved_input_hash": "d104a486427e70b1d48983f389cbf80c59861411ca40cdeb6e3d184fc74bd218",
          "started_at": "2026-07-23T14:27:42Z",
          "execution_token": "3d3b345baaab1b0bbb1e513770f143aee681982403b33cfa465bbcd0a50d0b52",
          "output": {
            "id": "EV-198"
          },
          "output_hash": "0313f332a35c975e7ddf31453d7110c0916f2be2aa816b608c64661d7addc7be",
          "completed_at": "2026-07-23T14:27:42Z"
        },
        {
          "id": "confirm",
          "action": "state.query",
          "status": "completed",
          "resolved_input_hash": "8bf4170dc36e3b5f8e95e07152c965d5c77326cdfb9c5fb236cd5e3b54c9b877",
          "started_at": "2026-07-23T14:27:42Z",
          "output": {
            "kind": "EV",
            "record": {
              "id": "EV-198",
              "type": "validation",
              "summary": "Final REQ-166 verification execution path passed full deterministic workflow and source-bound review for 0.16.47.",
              "linked_ids": [
                "REQ-166",
                "TRK-152",
                "CHG-127"
              ],
              "created_at": "2026-07-23",
              "commands": [
                {
                  "command": "node --test --test-name-pattern=workflow bridge timeout tests/node/server.test.cjs",
                  "outcome": "Regression failed before the bridge implementation, then passed after the bridge budget followed configured verification bounds."
                },
                {
                  "command": "node --test tests/node/server.test.cjs",
                  "outcome": "61 MCP server tests passed after the multi-command timeout refinement."
                },
                {
                  "command": "engineering.verify WFR-377",
                  "outcome": "Completed in 412.6 seconds: full npm test passed with 1,193 tests; diff check, state consistency, and state gate all passed with zero findings."
                },
                {
                  "command": "engineering.code-review WFR-379",
                  "outcome": "Final hash-bound review completed with no remaining material findings."
                }
              ],
              "limitations": "Substrate is configured off, so verification used the deterministic local full-suite fallback. No push, tag, npm publication, or downstream repository mutation was performed."
            }
          },
          "output_hash": "e0630954eb35cad0d5299976470199c09b4c9780864c7a1c72eb65a929cf3d8f",
          "completed_at": "2026-07-23T14:27:42Z"
        }
      ],
      "completed_at": "2026-07-23T14:27:42Z"
    },
    {
      "id": "WFR-381",
      "schema_version": "1.0",
      "workflow_id": "session.stop",
      "workflow_version": 1,
      "definition_hash": "0cef7bb3e28321be8f85375c154955a69310ce297e47de3f3b8dd48f77a2f07d",
      "plan_hash": "a5e1d77ac734217487fc418e29c7163f4e81178e25d171e70cd4c999d527d3e8",
      "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
      "inputs": {},
      "idempotency_key": "hook:Stop:019f8f2a-71a4-7920-94a0-66cf3307c73b",
      "status": "completed",
      "attempt": 1,
      "created_at": "2026-07-23T14:32:22Z",
      "updated_at": "2026-07-23T14:32:25Z",
      "receipts": [
        {
          "step_id": "state",
          "action": "state.consistency",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "5a1c6e5246defb1b6b6b90ff734db95bece2886b408ab112ed9b8e67222d5568",
          "completed_at": "2026-07-23T14:32:24Z"
        },
        {
          "step_id": "goals",
          "action": "substrate.goals",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "cdfd4de44a28140e686159f34f7b47975954c67e1d1efcef666e985acb136ed8",
          "completed_at": "2026-07-23T14:32:24Z"
        },
        {
          "step_id": "staleness",
          "action": "staleness.audit",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "1e81cb0ffd0a4d04626920a203b38d2d23a264cd43e807a85d375d69cae8a658",
          "completed_at": "2026-07-23T14:32:24Z"
        },
        {
          "step_id": "reflections",
          "action": "reflection.list",
          "input_hash": "0172e841ab4c13b3a4061f073f9d68a716ec87a8a5d52fde41823385e0582573",
          "output_hash": "cb4c4ccf633de514fc6bc888209bd1aee7103fd23ca33f9026743bf0607ce05e",
          "completed_at": "2026-07-23T14:32:24Z"
        },
        {
          "step_id": "bundle",
          "action": "reporting.bundle",
          "input_hash": "aed8ebb688dc3c085dd978d7c4120572173c3cb87e75919e4a937dcca6ef9457",
          "output_hash": "2ccd9ba101723fcdffd9fc6f37df27ec89f6b892ef3f5c05a46ed03038f7f357",
          "completed_at": "2026-07-23T14:32:24Z"
        },
        {
          "step_id": "delegated",
          "action": "reporting.delegate",
          "input_hash": "676c577568b24d100ca598d739d6160233336204fce6b7805bd97ddf455d87ad",
          "output_hash": "e6085059f197def80ae95add1f328418107bea5436c9bd002530043646a3a95c",
          "completed_at": "2026-07-23T14:32:25Z"
        }
      ],
      "steps": [
        {
          "id": "state",
          "action": "state.consistency",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-23T14:32:23Z",
          "output": {
            "status": "ok",
            "repo_root": "D:\\Projects\\prd-plugin",
            "summary": {
              "errors": 0,
              "warnings": 0,
              "infos": 0
            },
            "findings": []
          },
          "output_hash": "5a1c6e5246defb1b6b6b90ff734db95bece2886b408ab112ed9b8e67222d5568",
          "completed_at": "2026-07-23T14:32:24Z"
        },
        {
          "id": "goals",
          "action": "substrate.goals",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-23T14:32:24Z",
          "output": {
            "status": "disabled",
            "created": 0,
            "observed": 0,
            "results": []
          },
          "output_hash": "cdfd4de44a28140e686159f34f7b47975954c67e1d1efcef666e985acb136ed8",
          "completed_at": "2026-07-23T14:32:24Z"
        },
        {
          "id": "staleness",
          "action": "staleness.audit",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-23T14:32:24Z",
          "output": {
            "status": "ok",
            "repo_root": "D:\\Projects\\prd-plugin",
            "counts": {
              "stale": 0
            },
            "stale": []
          },
          "output_hash": "1e81cb0ffd0a4d04626920a203b38d2d23a264cd43e807a85d375d69cae8a658",
          "completed_at": "2026-07-23T14:32:24Z"
        },
        {
          "id": "reflections",
          "action": "reflection.list",
          "status": "completed",
          "resolved_input_hash": "0172e841ab4c13b3a4061f073f9d68a716ec87a8a5d52fde41823385e0582573",
          "started_at": "2026-07-23T14:32:24Z",
          "output": {
            "enabled": true,
            "on_stop": true,
            "max_questions_per_stop": 5,
            "categories": [
              {
                "id": "behaviour_quality",
                "name": "Behaviour quality",
                "enabled": true,
                "question_count": 3
              },
              {
                "id": "harness_friction",
                "name": "Harness friction",
                "enabled": true,
                "question_count": 2
              }
            ],
            "questions": [
              {
                "id": "RFQ-001",
                "text": "Based on the work you just carried out, would you classify your behaviour as good? Answer yes or no and cite observable evidence.",
                "enabled": true,
                "category_id": "behaviour_quality",
                "category_name": "Behaviour quality",
                "effective_enabled": true
              },
              {
                "id": "RFQ-002",
                "text": "If you answered no, what could you do differently to correct your behaviour?",
                "enabled": true,
                "category_id": "behaviour_quality",
                "category_name": "Behaviour quality",
                "effective_enabled": true
              },
              {
                "id": "RFQ-003",
                "text": "Would another attempt using the identified good behaviours materially improve the outcome? Answer yes or no and state the next corrective action if yes.",
                "enabled": true,
                "category_id": "behaviour_quality",
                "category_name": "Behaviour quality",
                "effective_enabled": true
              },
              {
                "id": "RFQ-004",
                "text": "What harness friction points made this work more difficult?",
                "enabled": true,
                "category_id": "harness_friction",
                "category_name": "Harness friction",
                "effective_enabled": true
              },
              {
                "id": "RFQ-005",
                "text": "What up to three changes would most improve friction in the harness?",
                "enabled": true,
                "category_id": "harness_friction",
                "category_name": "Harness friction",
                "effective_enabled": true
              }
            ]
          },
          "output_hash": "cb4c4ccf633de514fc6bc888209bd1aee7103fd23ca33f9026743bf0607ce05e",
          "completed_at": "2026-07-23T14:32:24Z"
        },
        {
          "id": "bundle",
          "action": "reporting.bundle",
          "status": "completed",
          "resolved_input_hash": "aed8ebb688dc3c085dd978d7c4120572173c3cb87e75919e4a937dcca6ef9457",
          "started_at": "2026-07-23T14:32:24Z",
          "output": {
            "contract_version": 1,
            "task": "session_summary",
            "repo": "prd-plugin",
            "policy": {
              "enabled": false,
              "executor": "ai-collab",
              "contract_version": 1,
              "profile": "fast-capable",
              "tasks": [
                "report_summary",
                "session_summary",
                "wiki_synthesis",
                "triage_draft"
              ],
              "fallback": "main",
              "require_source_refs": true,
              "max_input_tokens": 12000,
              "max_output_tokens": 1500,
              "timeout_seconds": 30
            },
            "facts": {
              "requests_by_status": {
                "accepted": 1,
                "deferred": 1,
                "implemented": 137,
                "in_review": 2,
                "proposed": 4,
                "rejected": 3
              },
              "active_requests": [
                {
                  "id": "REQ-104",
                  "status": "in_review",
                  "severity": "high",
                  "summary": "Ordinary-workspace chat has no path into the planning pipeline: owner-approved collaboration decisions land in scratchpads, room agents cannot allocate REQ/PRD/TRK ids past the parallel-worker mutation boundary, and goal-administrator grants detach when participant identity changes on runner restart"
                },
                {
                  "id": "REQ-107",
                  "status": "accepted",
                  "severity": "high",
                  "summary": "Adopt the UTCP-first tool architecture (user-directed): one UTCP manual is the source of truth for ALL prd-plugin tools including mutations, the MCP surface is generated by the official @utcp/mcp-bridge, and the 2,323-line hand-written MCP server is retired as a hand-maintained surface"
                },
                {
                  "id": "REQ-129",
                  "status": "in_review",
                  "severity": "high",
                  "summary": "Add a portable agent journal contract, unified journal configuration, reflection linkage, and cross-host lifecycle hook adapters to PRD Plugin."
                },
                {
                  "id": "REQ-157",
                  "status": "proposed",
                  "severity": "low",
                  "summary": "release_check counts post-release evidence bookkeeping as plugin-impacting, so recording that a release published always asks for another version bump"
                },
                {
                  "id": "REQ-162",
                  "status": "proposed",
                  "severity": "high",
                  "summary": "TDD is instruction-only: the commit gate checks bookkeeping but never whether the changed code has a test, so downstream repos run the method and ship untested code"
                },
                {
                  "id": "REQ-164",
                  "status": "proposed",
                  "severity": "high",
                  "summary": "Substrate retrieval unusable from prd-plugin: query embedder points at a dead port, two stale worktree copies bypass the owner provider policy, and this repo was never indexed"
                },
                {
                  "id": "REQ-165",
                  "status": "proposed",
                  "severity": "medium",
                  "summary": "PRD Plugin Hub: a workspace-scoped cross-repo view of every prd-plugin repo's live config toggles, requests and method state - the Knowledge Hub pattern applied to PRD Plugin state"
                }
              ],
              "active_tracking": [],
              "open_health": [
                {
                  "id": "HLT-020",
                  "status": "open",
                  "severity": "medium",
                  "summary": "REQ-107 residual: 32 MCP handlers still execute in hand-written JS across 21 withLock sites, so the canonical write path is not yet reachable through the UTCP manual alone. Definitions are inverted to templates/tool-spec.json; execution migrates tool by tool. Contained: the server is validated and no longer authors definitions, and the target pattern is proven - prd_reflections.py and request_thread.py mutate canonical state under the same .prd_plugin/local/mcp-state.lock.",
                  "recommended_action": "Port the 32 JS handlers to validated native entry points tool by tool, flipping each spec entry from transport=mcp to transport=cli with the suite green at every step."
                },
                {
                  "id": "HLT-021",
                  "status": "open",
                  "severity": "high",
                  "summary": "The commit gate cannot see whether changed source has a test, so a repo can run the method faithfully and still ship untested code. Measured 2026-07-22: AI-Collab-v3 runs prd-plugin with hooks and the gate enabled and carries 0.19 tests per source file, against 6.97 here, 8.38 in Asset-Foundry and 8.48 in GRAPH_LANG. REQ-163 raised test-first to an always-in-force rule in all four instruction files and made that verifiable, which addresses the INSTRUCTION half; the ENFORCEMENT half is still open.",
                  "recommended_action": "Add a gate check that reports when a commit changes source files no test file references - warn by default, error where a repo opts in, and explicit about what it cannot see."
                }
              ],
              "evidence_count": 198,
              "decision_count": 16
            },
            "findings": [
              {
                "id": "HLT-020",
                "severity": "medium",
                "summary": "REQ-107 residual: 32 MCP handlers still execute in hand-written JS across 21 withLock sites, so the canonical write path is not yet reachable through the UTCP manual alone. Definitions are inverted to templates/tool-spec.json; execution migrates tool by tool. Contained: the server is validated and no longer authors definitions, and the target pattern is proven - prd_reflections.py and request_thread.py mutate canonical state under the same .prd_plugin/local/mcp-state.lock.",
                "source_refs": [
                  "HLT-020"
                ]
              },
              {
                "id": "HLT-021",
                "severity": "high",
                "summary": "The commit gate cannot see whether changed source has a test, so a repo can run the method faithfully and still ship untested code. Measured 2026-07-22: AI-Collab-v3 runs prd-plugin with hooks and the gate enabled and carries 0.19 tests per source file, against 6.97 here, 8.38 in Asset-Foundry and 8.48 in GRAPH_LANG. REQ-163 raised test-first to an always-in-force rule in all four instruction files and made that verifiable, which addresses the INSTRUCTION half; the ENFORCEMENT half is still open.",
                "source_refs": [
                  "HLT-021"
                ]
              }
            ],
            "source_refs": [
              ".prd_plugin/config.json",
              ".prd_plugin/state/decisions.json",
              ".prd_plugin/state/evidence.json",
              ".prd_plugin/state/health.json",
              ".prd_plugin/state/requests.json",
              ".prd_plugin/state/tracking.json",
              "HLT-020",
              "HLT-021",
              "REQ-104",
              "REQ-107",
              "REQ-129",
              "REQ-157",
              "REQ-162",
              "REQ-164",
              "REQ-165"
            ],
            "constraints": {
              "max_input_tokens": 12000,
              "max_output_tokens": 1500,
              "timeout_seconds": 30,
              "require_source_refs": true,
              "no_project_state_writes": true,
              "no_secrets_or_local_session_content": true
            }
          },
          "output_hash": "2ccd9ba101723fcdffd9fc6f37df27ec89f6b892ef3f5c05a46ed03038f7f357",
          "completed_at": "2026-07-23T14:32:24Z"
        },
        {
          "id": "delegated",
          "action": "reporting.delegate",
          "status": "completed",
          "resolved_input_hash": "676c577568b24d100ca598d739d6160233336204fce6b7805bd97ddf455d87ad",
          "started_at": "2026-07-23T14:32:25Z",
          "output": {
            "status": "fallback",
            "action": "main",
            "reason": "disabled"
          },
          "output_hash": "e6085059f197def80ae95add1f328418107bea5436c9bd002530043646a3a95c",
          "completed_at": "2026-07-23T14:32:25Z"
        }
      ],
      "completed_at": "2026-07-23T14:32:25Z"
    },
    {
      "id": "WFR-382",
      "schema_version": "1.0",
      "workflow_id": "session.start",
      "workflow_version": 1,
      "definition_hash": "dd0de9444af7b094cc93673d0844fb78c801d87d978cc5f6dd6bf3e3e863917d",
      "plan_hash": "1f4ae0cd6be8385f8a9310e49978bd8d93baa729842eb6df9243665a1b581277",
      "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
      "inputs": {},
      "idempotency_key": "codex-craftesb-prominence-20260723",
      "status": "completed",
      "attempt": 1,
      "created_at": "2026-07-23T17:00:49Z",
      "updated_at": "2026-07-23T17:00:51Z",
      "receipts": [
        {
          "step_id": "mailbox",
          "action": "requests.pull",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "ab8a35139cfd3f5821ebc5138c9a44c899b54e4036790654ff120e79c7ab6223",
          "completed_at": "2026-07-23T17:00:49Z"
        },
        {
          "step_id": "config",
          "action": "config.audit",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "172e2697e5951667d2eafa396cb6a952ff4a8c53ebf5dc228ab999c00692f8d2",
          "completed_at": "2026-07-23T17:00:49Z"
        },
        {
          "step_id": "services",
          "action": "services.audit",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "13dcc58bd528f3efa3e6e0fa0853a6eedc376f1f3685fbd4869cbb2b60382ee3",
          "completed_at": "2026-07-23T17:00:49Z"
        },
        {
          "step_id": "state",
          "action": "state.consistency",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "5a1c6e5246defb1b6b6b90ff734db95bece2886b408ab112ed9b8e67222d5568",
          "completed_at": "2026-07-23T17:00:50Z"
        },
        {
          "step_id": "status",
          "action": "state.query",
          "input_hash": "a15231a2142a2a9a85355a8b9cbbccffe01a9c9c2c2fd8c2bc2987cdc481564a",
          "output_hash": "b0e7a53580785c05407824c4984b40c4173b4fe7ff0e1da75c1a2181d3809f25",
          "completed_at": "2026-07-23T17:00:50Z"
        },
        {
          "step_id": "substrate",
          "action": "substrate.preflight",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "a6df426290b4549a59eecaa0519ead9bcc50b7fcb25bd2185ff6047960f19ccb",
          "completed_at": "2026-07-23T17:00:51Z"
        },
        {
          "step_id": "notices",
          "action": "substrate.notices",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "38b904a1cf83df048360fb2480571b749fd98d57e11f1afdffb5a74a78166fea",
          "completed_at": "2026-07-23T17:00:51Z"
        },
        {
          "step_id": "goals",
          "action": "substrate.goals",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "cdfd4de44a28140e686159f34f7b47975954c67e1d1efcef666e985acb136ed8",
          "completed_at": "2026-07-23T17:00:51Z"
        }
      ],
      "steps": [
        {
          "id": "mailbox",
          "action": "requests.pull",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-23T17:00:49Z",
          "output": {
            "applied": 0,
            "resolved_ids": [],
            "unmatched": [],
            "mailboxes": [],
            "pruned_outbox": [],
            "consumed_mailboxes": [],
            "outbound": {
              "delivered": 0,
              "mailboxes_published": [],
              "undeliverable": [],
              "pending": []
            },
            "addressed": {
              "delivered": 0,
              "destinations": [],
              "undelivered": [
                {
                  "id": "REQ-030",
                  "state": "not_ours_to_send",
                  "target_repo": "prd-plugin",
                  "reason": "REQ-030 was imported from 'ZeusGrid'; its target_repo records who it was addressed to, not somewhere for us to send it. Reply on its thread instead."
                },
                {
                  "id": "REQ-003",
                  "state": "not_ours_to_send",
                  "target_repo": "prd-plugin",
                  "reason": "REQ-003 was imported from 'ZeusGrid'; its target_repo records who it was addressed to, not somewhere for us to send it. Reply on its thread instead."
                },
                {
                  "id": "REQ-004",
                  "state": "not_ours_to_send",
                  "target_repo": "prd-plugin",
                  "reason": "REQ-004 was imported from 'ZeusGrid'; its target_repo records who it was addressed to, not somewhere for us to send it. Reply on its thread instead."
                },
                {
                  "id": "REQ-005",
                  "state": "not_ours_to_send",
                  "target_repo": "prd-plugin",
                  "reason": "REQ-005 was imported from 'GRAPH_LANG'; its target_repo records who it was addressed to, not somewhere for us to send it. Reply on its thread instead."
                },
                {
                  "id": "REQ-002",
                  "state": "self_addressed",
                  "target_repo": "prd-plugin",
                  "reason": "REQ-002 is addressed to this repo ('prd-plugin'); it is already here."
                },
                {
                  "id": "REQ-028",
                  "state": "self_addressed",
                  "target_repo": "prd-plugin",
                  "reason": "REQ-028 is addressed to this repo ('prd-plugin'); it is already here."
                },
                {
                  "id": "REQ-029",
                  "state": "not_ours_to_send",
                  "target_repo": "ai-collab-v3",
                  "reason": "REQ-029 was imported from 'ai-collab-v3'; its target_repo records who it was addressed to, not somewhere for us to send it. Reply on its thread instead."
                },
                {
                  "id": "REQ-138",
                  "state": "terminal",
                  "target_repo": "no-such-repo",
                  "reason": "REQ-138 is 'rejected'; a closed request is not delivered. Reopen it or file a new one if it still needs to travel."
                }
              ],
              "advisories": []
            }
          },
          "output_hash": "ab8a35139cfd3f5821ebc5138c9a44c899b54e4036790654ff120e79c7ab6223",
          "completed_at": "2026-07-23T17:00:49Z"
        },
        {
          "id": "config",
          "action": "config.audit",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-23T17:00:49Z",
          "output": {
            "status": "ok",
            "summary": {
              "settings": 209,
              "mutable": 199,
              "read_only_or_managed": 10,
              "unclassified": 0,
              "unknown": 0,
              "invalid": 0,
              "missing_using_defaults": 0
            },
            "unclassified_keys": [],
            "unknown_keys": [],
            "invalid_values": [],
            "missing_using_defaults": []
          },
          "output_hash": "172e2697e5951667d2eafa396cb6a952ff4a8c53ebf5dc228ab999c00692f8d2",
          "completed_at": "2026-07-23T17:00:49Z"
        },
        {
          "id": "services",
          "action": "services.audit",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-23T17:00:49Z",
          "output": {
            "status": "ok",
            "summary": {
              "critical": 0,
              "high": 0,
              "medium": 0,
              "low": 0
            },
            "findings": []
          },
          "output_hash": "13dcc58bd528f3efa3e6e0fa0853a6eedc376f1f3685fbd4869cbb2b60382ee3",
          "completed_at": "2026-07-23T17:00:49Z"
        },
        {
          "id": "state",
          "action": "state.consistency",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-23T17:00:49Z",
          "output": {
            "status": "ok",
            "repo_root": "D:\\Projects\\prd-plugin",
            "summary": {
              "errors": 0,
              "warnings": 0,
              "infos": 0
            },
            "findings": []
          },
          "output_hash": "5a1c6e5246defb1b6b6b90ff734db95bece2886b408ab112ed9b8e67222d5568",
          "completed_at": "2026-07-23T17:00:50Z"
        },
        {
          "id": "status",
          "action": "state.query",
          "status": "completed",
          "resolved_input_hash": "a15231a2142a2a9a85355a8b9cbbccffe01a9c9c2c2fd8c2bc2987cdc481564a",
          "started_at": "2026-07-23T17:00:50Z",
          "output": {
            "repo_root": "D:\\Projects\\prd-plugin",
            "autonomy_level": "autonomous",
            "requests_by_status": {
              "accepted": 1,
              "deferred": 1,
              "implemented": 137,
              "in_review": 2,
              "proposed": 4,
              "rejected": 3
            },
            "active_tracking": [],
            "tracking_branches": [],
            "tracking_branch_counts": {},
            "tracking_branch_errors": [],
            "open_health": [
              "HLT-020",
              "HLT-021"
            ],
            "stale_count": 0,
            "skill_usage": {
              "project-llm-wiki": 2,
              "project-decision-policy": 1,
              "project-request-intake": 1,
              "project-test-driven-implementation": 1,
              "project-verification-before-completion": 1,
              "artifact-design": 1
            },
            "wiki_backfill_pending": false,
            "wiki_ingest_drift": null,
            "version_update": null
          },
          "output_hash": "b0e7a53580785c05407824c4984b40c4173b4fe7ff0e1da75c1a2181d3809f25",
          "completed_at": "2026-07-23T17:00:50Z"
        },
        {
          "id": "substrate",
          "action": "substrate.preflight",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-23T17:00:51Z",
          "output": {
            "status": "disabled",
            "services": {
              "status": "ok",
              "summary": {
                "critical": 0,
                "high": 0,
                "medium": 0,
                "low": 0
              },
              "findings": []
            },
            "policy": {
              "configured": {
                "enabled": false,
                "mode": "off",
                "capabilities": [
                  "records",
                  "graph",
                  "events"
                ],
                "contract_version": 2,
                "require_source_refs": true,
                "endpoint": "http://127.0.0.1:47124",
                "manual_url": "http://127.0.0.1:47124/utcp.json",
                "knowledge_browse_url": "http://127.0.0.1:5276",
                "auth_env": "AI_COLLAB_API_KEY",
                "timeout_seconds": 5,
                "max_result_bytes": 1048576,
                "cache_ttl_seconds": 60,
                "fallback": "local",
                "automation": {
                  "discovery_on_session_start": true,
                  "knowledge_recall": true,
                  "memory_recall": true,
                  "context_enrichment": true,
                  "notices_on_session_start": false,
                  "goals_sync": false,
                  "telemetry_on_maintenance": false,
                  "reporting_dispatch": true,
                  "judgment_dispatch": true,
                  "verification_execution": true
                }
              },
              "active": false,
              "effective_mode": "off",
              "effective_capabilities": []
            }
          },
          "output_hash": "a6df426290b4549a59eecaa0519ead9bcc50b7fcb25bd2185ff6047960f19ccb",
          "completed_at": "2026-07-23T17:00:51Z"
        },
        {
          "id": "notices",
          "action": "substrate.notices",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-23T17:00:51Z",
          "output": {
            "status": "disabled"
          },
          "output_hash": "38b904a1cf83df048360fb2480571b749fd98d57e11f1afdffb5a74a78166fea",
          "completed_at": "2026-07-23T17:00:51Z"
        },
        {
          "id": "goals",
          "action": "substrate.goals",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-23T17:00:51Z",
          "output": {
            "status": "disabled",
            "created": 0,
            "observed": 0,
            "results": []
          },
          "output_hash": "cdfd4de44a28140e686159f34f7b47975954c67e1d1efcef666e985acb136ed8",
          "completed_at": "2026-07-23T17:00:51Z"
        }
      ],
      "completed_at": "2026-07-23T17:00:51Z"
    },
    {
      "id": "WFR-383",
      "schema_version": "1.0",
      "workflow_id": "request.intake",
      "workflow_version": 1,
      "definition_hash": "b61272f54c5d4778a27afe601feaae39057f75fac2c289858b6caf5f3b2a4fbe",
      "plan_hash": "0bc12edfd06f3ec93de1e75a539687bf368ec54d0cb3ffc47b383a650ced07e6",
      "input_hash": "65cca9986ffca5ba22f48de9cf80ed6b6ad86c4861d027378c2b2c9e8d2659df",
      "inputs": {
        "summary": "Make the full CRAFTESB philosophy prominent near the top of AGENTS.md and CLAUDE.md and enforce its complete delivery",
        "request_type": "method",
        "severity": "high",
        "scope": "upstream",
        "rationale": "CRAFTESB is the core PRD Plugin decision philosophy, but AGENTS.md buries it after operational routing and the parity check proves only a marker exists. A real downstream copy has regressed to CRAFTES with Secure duplicated and Bounded absent. The smallest complete fix is a full near-top section in both host instruction files, mirrored downstream, plus a positional and completeness regression test.",
        "affected_areas": [
          "AGENTS.md",
          "CLAUDE.md",
          "templates/repo-skeleton/AGENTS.md",
          "templates/repo-skeleton/CLAUDE.md",
          "tests/test_instruction_parity.py",
          "templates/agent-rule-parity.json"
        ],
        "expected_behavior": "Every hub and downstream AGENTS.md and CLAUDE.md presents CRAFTESB near the top, spells out all eight dimensions with substantive definitions, and fails validation if the section is missing, incomplete, or demoted below operational instructions."
      },
      "idempotency_key": "codex-craftesb-prominence-intake-20260723",
      "status": "completed",
      "attempt": 1,
      "created_at": "2026-07-23T17:02:33Z",
      "updated_at": "2026-07-23T17:02:34Z",
      "receipts": [
        {
          "step_id": "create",
          "action": "state.mutate",
          "input_hash": "bf1d767e198af2fef45fa4aea1636890c502095e475572e210f21e43d7b052c9",
          "output_hash": "074d38891bdc54080e4375073e51e412e5e0b1cc02d858a2a5940c85ac4729b8",
          "completed_at": "2026-07-23T17:02:34Z"
        },
        {
          "step_id": "confirm",
          "action": "state.query",
          "input_hash": "ed027b6558388c27749074e5b6ddc0ab725219a55bf24ece4a29ce59a8b1fd20",
          "output_hash": "baba84bd8b0d149b9776d05c6b916db18fa88756b7965dbee750c85488d90e45",
          "completed_at": "2026-07-23T17:02:34Z"
        }
      ],
      "steps": [
        {
          "id": "create",
          "action": "state.mutate",
          "status": "completed",
          "resolved_input_hash": "bf1d767e198af2fef45fa4aea1636890c502095e475572e210f21e43d7b052c9",
          "started_at": "2026-07-23T17:02:33Z",
          "execution_token": "7e8bdf259998865ab5c021f53aa56fa24fea698098c439fc60df00cfead78f30",
          "output": {
            "id": "REQ-167",
            "status": "proposed"
          },
          "output_hash": "074d38891bdc54080e4375073e51e412e5e0b1cc02d858a2a5940c85ac4729b8",
          "completed_at": "2026-07-23T17:02:34Z"
        },
        {
          "id": "confirm",
          "action": "state.query",
          "status": "completed",
          "resolved_input_hash": "ed027b6558388c27749074e5b6ddc0ab725219a55bf24ece4a29ce59a8b1fd20",
          "started_at": "2026-07-23T17:02:34Z",
          "output": {
            "kind": "REQ",
            "record": {
              "id": "REQ-167",
              "status": "proposed",
              "request_type": "method",
              "scope": "upstream",
              "visibility": "repo",
              "summary": "Make the full CRAFTESB philosophy prominent near the top of AGENTS.md and CLAUDE.md and enforce its complete delivery",
              "severity": "high",
              "requested_by_agent": "AGENT-MCP",
              "created_at": "2026-07-23",
              "rationale": "CRAFTESB is the core PRD Plugin decision philosophy, but AGENTS.md buries it after operational routing and the parity check proves only a marker exists. A real downstream copy has regressed to CRAFTES with Secure duplicated and Bounded absent. The smallest complete fix is a full near-top section in both host instruction files, mirrored downstream, plus a positional and completeness regression test.",
              "affected_areas": [
                "AGENTS.md",
                "CLAUDE.md",
                "templates/repo-skeleton/AGENTS.md",
                "templates/repo-skeleton/CLAUDE.md",
                "tests/test_instruction_parity.py",
                "templates/agent-rule-parity.json"
              ],
              "expected_behavior": "Every hub and downstream AGENTS.md and CLAUDE.md presents CRAFTESB near the top, spells out all eight dimensions with substantive definitions, and fails validation if the section is missing, incomplete, or demoted below operational instructions."
            }
          },
          "output_hash": "baba84bd8b0d149b9776d05c6b916db18fa88756b7965dbee750c85488d90e45",
          "completed_at": "2026-07-23T17:02:34Z"
        }
      ],
      "completed_at": "2026-07-23T17:02:34Z"
    },
    {
      "id": "WFR-384",
      "schema_version": "1.0",
      "workflow_id": "engineering.code-review",
      "workflow_version": 1,
      "definition_hash": "ad3df68a0ff3c3ede35fe5266dcfbffbe7b1ba3e8ada5fc4b9012db9f451212f",
      "plan_hash": "55504d697df6fc7aa3601fea3cd63f4fc930462b8b92317e215ad05e0cba846a",
      "input_hash": "efe4068fcce8d534eed81a6c723cb92b963b56d86493ec4c453a7105bda82bdc",
      "inputs": {
        "base_ref": "main",
        "source_refs": [
          "AGENTS.md",
          "CLAUDE.md",
          "templates/repo-skeleton/AGENTS.md",
          "templates/repo-skeleton/CLAUDE.md",
          "tests/test_instruction_parity.py",
          "tests/test_prd_install.py",
          ".prd_plugin/state/releases.json",
          "templates/releases.json"
        ]
      },
      "idempotency_key": "codex-review-req-167-20260723",
      "status": "completed",
      "attempt": 1,
      "created_at": "2026-07-23T17:13:29Z",
      "updated_at": "2026-07-23T17:13:46Z",
      "receipts": [
        {
          "step_id": "diff",
          "action": "git.diff_check",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "11c11db30f4b3f6c758722ba3e27eea08145b7d212f6a157451e364b48475280",
          "completed_at": "2026-07-23T17:13:30Z"
        },
        {
          "step_id": "verification",
          "action": "verification.plan",
          "input_hash": "9c8856776a7db6455fee675768cfc615a0fe2a04fb88b9a4fd8e3fce515eaf08",
          "output_hash": "416f871eb8fbb727b33d4edffe5d7219a6165dfb29b6d3708e2b3c37185fa86a",
          "completed_at": "2026-07-23T17:13:30Z"
        },
        {
          "step_id": "context",
          "action": "substrate.enrich",
          "input_hash": "d107a54a5efca081cb479d241a7ff0047bb3450db8a104a38299772d2d6ed95b",
          "output_hash": "e971a45525a65624f26eb3ea6918925704a742911c65569e09eba9fcbb897745",
          "completed_at": "2026-07-23T17:13:30Z"
        },
        {
          "step_id": "review",
          "action": "judgment.request",
          "input_hash": "009cca9bd816f9a78c6166cee9a7d8cc48cf4ce9f5cc69e2a841abf6fc7e417b",
          "output_hash": "b080577879a3187094e05f68d8d3bcbc61b50e0ba172cf007ed04e4ea9bfff8b",
          "request_hash": "1a24a566930547add4d553bbdf668f55e15239401e822028aa779ddae38632d7",
          "completed_at": "2026-07-23T17:13:46Z"
        }
      ],
      "steps": [
        {
          "id": "diff",
          "action": "git.diff_check",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-23T17:13:30Z",
          "output": {
            "passed": true
          },
          "output_hash": "11c11db30f4b3f6c758722ba3e27eea08145b7d212f6a157451e364b48475280",
          "completed_at": "2026-07-23T17:13:30Z"
        },
        {
          "id": "verification",
          "action": "verification.plan",
          "status": "completed",
          "resolved_input_hash": "9c8856776a7db6455fee675768cfc615a0fe2a04fb88b9a4fd8e3fce515eaf08",
          "started_at": "2026-07-23T17:13:30Z",
          "output": {
            "schema_version": "1.0",
            "contract_version": 1,
            "executor": "ai-collab",
            "changed_files": [
              ".claude-plugin/marketplace.json",
              ".claude-plugin/plugin.json",
              ".codex-plugin/plugin.json",
              ".opencode/plugin.json",
              ".prd_plugin/config.json",
              ".prd_plugin/drift/events.jsonl",
              ".prd_plugin/ids/registry.json",
              ".prd_plugin/state/project.json",
              ".prd_plugin/state/releases.json",
              ".prd_plugin/state/requests.json",
              ".prd_plugin/state/tracking.json",
              ".prd_plugin/state/workflow-runs.json",
              "AGENTS.md",
              "CLAUDE.md",
              "index.js",
              "mcp/server.cjs",
              "package.json",
              "skills-manifest.json",
              "templates/config.json",
              "templates/project.json",
              "templates/releases.json",
              "templates/repo-skeleton/.claude-plugin/plugin.json",
              "templates/repo-skeleton/.codex-plugin/plugin.json",
              "templates/repo-skeleton/.opencode/plugin.json",
              "templates/repo-skeleton/.prd_plugin/config.json",
              "templates/repo-skeleton/.prd_plugin/state/project.json",
              "templates/repo-skeleton/.prd_plugin/templates/config.json",
              "templates/repo-skeleton/.prd_plugin/templates/project.json",
              "templates/repo-skeleton/AGENTS.md",
              "templates/repo-skeleton/CLAUDE.md",
              "tests/test_instruction_parity.py",
              "tests/test_prd_install.py"
            ],
            "change_fingerprint": "29e6cadf170b5d4e3664a554e33dce65daf7392ce40f2b42de048c2c46ba21be",
            "policy": {
              "enabled": true,
              "executor": "ai-collab",
              "neighbor_limit": 12,
              "max_changed_files": 25,
              "fallback": "full",
              "full_suite_triggers": [
                "release",
                "core_change",
                "impact_unavailable",
                "impact_degraded",
                "unmapped_change"
              ],
              "core_paths": [
                "package.json",
                "package-lock.json",
                "pyproject.toml",
                "Cargo.toml",
                "go.mod",
                ".github/workflows/**"
              ],
              "test_patterns": [
                "tests/**",
                "test/**",
                "spec/**",
                "**/*.test.*",
                "**/*.spec.*",
                "test_*.py",
                "*_test.py",
                "*_test.go",
                "**/test_*.py",
                "**/*_test.py",
                "**/*_test.go"
              ],
              "max_selected_tests": 200,
              "execution_timeout_seconds": 600,
              "focused_commands": [],
              "full_commands": [],
              "allowed_executables": [
                "python",
                "python3",
                "py",
                "pytest",
                "npm",
                "npx",
                "node",
                "go",
                "cargo",
                "dotnet",
                "mvn",
                "gradle",
                "gradlew",
                "make"
              ]
            },
            "selection_rules": {
              "precedence": [
                "exact_changed",
                "explicit_test_ownership",
                "structural_dependencies",
                "predictive_impact"
              ],
              "require_all_changed_files_mapped": true,
              "widen_before_full": true,
              "predictive_signal_is_sufficient_alone": false
            },
            "fallback": {
              "strategy": "full",
              "conditions": [
                "release",
                "core_change",
                "impact_unavailable",
                "impact_degraded",
                "unmapped_change"
              ]
            },
            "strategy": "full",
            "reason": "core_change",
            "runtime_requests": {},
            "plan_hash": "a06f8a8a2612dc97e98e4ed46b4338c78aa708982cdb08a82a4e0d246eab37f8"
          },
          "output_hash": "416f871eb8fbb727b33d4edffe5d7219a6165dfb29b6d3708e2b3c37185fa86a",
          "completed_at": "2026-07-23T17:13:30Z"
        },
        {
          "id": "context",
          "action": "substrate.enrich",
          "status": "completed",
          "resolved_input_hash": "d107a54a5efca081cb479d241a7ff0047bb3450db8a104a38299772d2d6ed95b",
          "started_at": "2026-07-23T17:13:30Z",
          "output": {
            "status": "disabled",
            "results": [],
            "local_source_refs": [
              "AGENTS.md",
              "CLAUDE.md",
              "templates/repo-skeleton/AGENTS.md",
              "templates/repo-skeleton/CLAUDE.md",
              "tests/test_instruction_parity.py",
              "tests/test_prd_install.py",
              ".prd_plugin/state/releases.json",
              "templates/releases.json"
            ]
          },
          "output_hash": "e971a45525a65624f26eb3ea6918925704a742911c65569e09eba9fcbb897745",
          "completed_at": "2026-07-23T17:13:30Z"
        },
        {
          "id": "review",
          "action": "judgment.request",
          "status": "completed",
          "resolved_input_hash": "009cca9bd816f9a78c6166cee9a7d8cc48cf4ce9f5cc69e2a841abf6fc7e417b",
          "started_at": "2026-07-23T17:13:30Z",
          "judgment_request": {
            "contract_version": 1,
            "run_id": "WFR-384",
            "step_id": "review",
            "task": "code_review",
            "instructions": "Find material correctness, robustness, security, compatibility, or test gaps; do not restate mechanical facts.",
            "source_refs": [
              "AGENTS.md",
              "CLAUDE.md",
              "templates/repo-skeleton/AGENTS.md",
              "templates/repo-skeleton/CLAUDE.md",
              "tests/test_instruction_parity.py",
              "tests/test_prd_install.py",
              ".prd_plugin/state/releases.json",
              "templates/releases.json"
            ],
            "source_hashes": {
              "AGENTS.md": "062b91aae71677d684bf013c269199e1e938c22d9e23ad1ca6bf2ff797d5e113",
              "CLAUDE.md": "24c9c5b894e99899e897b82934580fcf1496f7040dcdcc5eea916a05d7f789e9",
              "templates/repo-skeleton/AGENTS.md": "517ff5b101e42800d5cf738880176ebc0ebb53467aa9a8c47f5f93a9285b45fe",
              "templates/repo-skeleton/CLAUDE.md": "cccfe02b28e18474f63501c6e484fcdf2b5cb89696b1dca75cb1ccc8280cea6e",
              "tests/test_instruction_parity.py": "d834e577f1de119aa16770f2429a8e92c0856a77f512a6a22bdf7b2c94a64901",
              "tests/test_prd_install.py": "0ff5cd64669518ad33f0462dc864959bf9f1f0361fbe90dd35787c49216f6172",
              ".prd_plugin/state/releases.json": "d397b86edf186866d4e1b5976c32c44e7378a4894edc24957f4aadb2308585bc",
              "templates/releases.json": "14baa8ffd221842c891d39c1fb8af3d1e03e43ea4328f45cee500c8120b14b83"
            },
            "result_schema": {
              "type": "object",
              "required": [
                "summary",
                "findings",
                "source_refs"
              ],
              "properties": {
                "summary": {
                  "type": "string"
                },
                "findings": {
                  "type": "array",
                  "items": {
                    "type": "object"
                  }
                },
                "source_refs": {
                  "type": "array",
                  "items": {
                    "type": "string"
                  }
                }
              }
            },
            "executor": "ai-collab",
            "profile": "fast-capable",
            "constraints": {
              "no_project_state_writes": true,
              "require_source_refs": true
            },
            "request_hash": "1a24a566930547add4d553bbdf668f55e15239401e822028aa779ddae38632d7"
          },
          "output": {
            "summary": "No material findings. The complete eight-part CRAFTESB bar is positioned before operational routing in all four hub/downstream instruction files; the regression test enforces position and in-section definitions, and installer coverage proves stale downstream copies are replaced on a force refresh.",
            "findings": [],
            "source_refs": [
              "AGENTS.md",
              "CLAUDE.md",
              "templates/repo-skeleton/AGENTS.md",
              "templates/repo-skeleton/CLAUDE.md",
              "tests/test_instruction_parity.py",
              "tests/test_prd_install.py",
              ".prd_plugin/state/releases.json",
              "templates/releases.json"
            ]
          },
          "output_hash": "b080577879a3187094e05f68d8d3bcbc61b50e0ba172cf007ed04e4ea9bfff8b",
          "completed_at": "2026-07-23T17:13:46Z",
          "judgment_result": {
            "request_hash": "1a24a566930547add4d553bbdf668f55e15239401e822028aa779ddae38632d7",
            "executor": "ai-collab",
            "profile": "fast-capable"
          }
        }
      ],
      "completed_at": "2026-07-23T17:13:46Z"
    },
    {
      "id": "WFR-385",
      "schema_version": "1.0",
      "workflow_id": "engineering.verify",
      "workflow_version": 1,
      "definition_hash": "82a795fafbc550f124ec781ea9c5b6170d95b5e687fffadf6939f1f160df5ce1",
      "plan_hash": "4bb158b22c9a87a54832df9b9b6a98a77151ce9005499d6a8337a4c015089e5e",
      "input_hash": "fd934039265310404d648cea4b1eb28964383bb8a97ef14b85b2b85d725d502e",
      "inputs": {
        "base_ref": "",
        "release": false
      },
      "idempotency_key": "codex-verify-req-167-20260723",
      "status": "completed",
      "attempt": 1,
      "created_at": "2026-07-23T17:13:57Z",
      "updated_at": "2026-07-23T17:20:43Z",
      "receipts": [
        {
          "step_id": "plan",
          "action": "verification.plan",
          "input_hash": "fd934039265310404d648cea4b1eb28964383bb8a97ef14b85b2b85d725d502e",
          "output_hash": "416f871eb8fbb727b33d4edffe5d7219a6165dfb29b6d3708e2b3c37185fa86a",
          "completed_at": "2026-07-23T17:13:58Z"
        },
        {
          "step_id": "execute",
          "action": "verification.execute",
          "input_hash": "fcc26a53ec986f82daa860d4b4fad8069eee1b5a7f0b140d136266d2e7543f96",
          "output_hash": "b824a13c639bae57201f54a6c7c6026a46778145b41ff9c0da4c5084687ecd56",
          "completed_at": "2026-07-23T17:20:42Z"
        },
        {
          "step_id": "diff",
          "action": "git.diff_check",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "11c11db30f4b3f6c758722ba3e27eea08145b7d212f6a157451e364b48475280",
          "completed_at": "2026-07-23T17:20:42Z"
        },
        {
          "step_id": "state",
          "action": "state.consistency",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "5a1c6e5246defb1b6b6b90ff734db95bece2886b408ab112ed9b8e67222d5568",
          "completed_at": "2026-07-23T17:20:43Z"
        },
        {
          "step_id": "gate",
          "action": "state.gate",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "a705b176b049df02348354c23988d51f616670b7352ad410321cbe0577edf053",
          "completed_at": "2026-07-23T17:20:43Z"
        }
      ],
      "steps": [
        {
          "id": "plan",
          "action": "verification.plan",
          "status": "completed",
          "resolved_input_hash": "fd934039265310404d648cea4b1eb28964383bb8a97ef14b85b2b85d725d502e",
          "started_at": "2026-07-23T17:13:57Z",
          "output": {
            "schema_version": "1.0",
            "contract_version": 1,
            "executor": "ai-collab",
            "changed_files": [
              ".claude-plugin/marketplace.json",
              ".claude-plugin/plugin.json",
              ".codex-plugin/plugin.json",
              ".opencode/plugin.json",
              ".prd_plugin/config.json",
              ".prd_plugin/drift/events.jsonl",
              ".prd_plugin/ids/registry.json",
              ".prd_plugin/state/project.json",
              ".prd_plugin/state/releases.json",
              ".prd_plugin/state/requests.json",
              ".prd_plugin/state/tracking.json",
              ".prd_plugin/state/workflow-runs.json",
              "AGENTS.md",
              "CLAUDE.md",
              "index.js",
              "mcp/server.cjs",
              "package.json",
              "skills-manifest.json",
              "templates/config.json",
              "templates/project.json",
              "templates/releases.json",
              "templates/repo-skeleton/.claude-plugin/plugin.json",
              "templates/repo-skeleton/.codex-plugin/plugin.json",
              "templates/repo-skeleton/.opencode/plugin.json",
              "templates/repo-skeleton/.prd_plugin/config.json",
              "templates/repo-skeleton/.prd_plugin/state/project.json",
              "templates/repo-skeleton/.prd_plugin/templates/config.json",
              "templates/repo-skeleton/.prd_plugin/templates/project.json",
              "templates/repo-skeleton/AGENTS.md",
              "templates/repo-skeleton/CLAUDE.md",
              "tests/test_instruction_parity.py",
              "tests/test_prd_install.py"
            ],
            "change_fingerprint": "29e6cadf170b5d4e3664a554e33dce65daf7392ce40f2b42de048c2c46ba21be",
            "policy": {
              "enabled": true,
              "executor": "ai-collab",
              "neighbor_limit": 12,
              "max_changed_files": 25,
              "fallback": "full",
              "full_suite_triggers": [
                "release",
                "core_change",
                "impact_unavailable",
                "impact_degraded",
                "unmapped_change"
              ],
              "core_paths": [
                "package.json",
                "package-lock.json",
                "pyproject.toml",
                "Cargo.toml",
                "go.mod",
                ".github/workflows/**"
              ],
              "test_patterns": [
                "tests/**",
                "test/**",
                "spec/**",
                "**/*.test.*",
                "**/*.spec.*",
                "test_*.py",
                "*_test.py",
                "*_test.go",
                "**/test_*.py",
                "**/*_test.py",
                "**/*_test.go"
              ],
              "max_selected_tests": 200,
              "execution_timeout_seconds": 600,
              "focused_commands": [],
              "full_commands": [],
              "allowed_executables": [
                "python",
                "python3",
                "py",
                "pytest",
                "npm",
                "npx",
                "node",
                "go",
                "cargo",
                "dotnet",
                "mvn",
                "gradle",
                "gradlew",
                "make"
              ]
            },
            "selection_rules": {
              "precedence": [
                "exact_changed",
                "explicit_test_ownership",
                "structural_dependencies",
                "predictive_impact"
              ],
              "require_all_changed_files_mapped": true,
              "widen_before_full": true,
              "predictive_signal_is_sufficient_alone": false
            },
            "fallback": {
              "strategy": "full",
              "conditions": [
                "release",
                "core_change",
                "impact_unavailable",
                "impact_degraded",
                "unmapped_change"
              ]
            },
            "strategy": "full",
            "reason": "core_change",
            "runtime_requests": {},
            "plan_hash": "a06f8a8a2612dc97e98e4ed46b4338c78aa708982cdb08a82a4e0d246eab37f8"
          },
          "output_hash": "416f871eb8fbb727b33d4edffe5d7219a6165dfb29b6d3708e2b3c37185fa86a",
          "completed_at": "2026-07-23T17:13:58Z"
        },
        {
          "id": "execute",
          "action": "verification.execute",
          "status": "completed",
          "resolved_input_hash": "fcc26a53ec986f82daa860d4b4fad8069eee1b5a7f0b140d136266d2e7543f96",
          "started_at": "2026-07-23T17:13:58Z",
          "output": {
            "status": "passed",
            "strategy": "full",
            "reason": "core_change",
            "selected_tests": [],
            "change_fingerprint": "29e6cadf170b5d4e3664a554e33dce65daf7392ce40f2b42de048c2c46ba21be",
            "plan_hash": "a06f8a8a2612dc97e98e4ed46b4338c78aa708982cdb08a82a4e0d246eab37f8",
            "impact_receipts": [],
            "receipts": [
              {
                "command": [
                  "npm",
                  "test"
                ],
                "exit_code": 0,
                "stdout": "\n> prd-plugin@0.16.48 test\n> python -m unittest discover -s tests -v\n\n{\n  \"status\": \"fail\",\n  \"repo_root\": \"C:\\\\Users\\\\marku\\\\AppData\\\\Local\\\\Temp\\\\tmp4_kq18nv\",\n  \"summary\": {\n    \"errors\": 1,\n    \"warnings\": 0\n  },\n  \"findings\": [\n    {\n      \"check\": \"duplicate_id\",\n      \"severity\": \"error\",\n      \"summary\": \"Duplicate id REQ-002 in .prd_plugin/state/requests.json.\",\n      \"required_action\": \"Renumber one record so REQ-002 is unique. Allocate IDs with the MCP tool prd_next_id (or the record tools like prd_open_goal) instead of hand-computing them.\"\n    }\n  ]\n}\nautonomy_level set to guided\nautonomy_level set to autonomous\nDESTRUCTIVE RESET REQUESTED: --force --yes will erase protected PRD Plugin project data.\nThe following existing state/configuration files would be replaced with skeleton defaults:\n  - .prd_plugin/state/tracking.json\nThis may erase IDs, tracking, requests, decisions, health findings, configuration, and session memory.\nFor a normal safe update, remove --yes and run: npx prd-install . --force\nPRD Plugin safe update: preserving existing state/config and refreshing plugin files only. Never add --yes to a routine update; it requests a destructive reset.\nPRD Plugin safe update: preserving existing state/config and refreshing plugin files only. Never add --yes to a routine update; it requests a destructive reset.\nPRD Plugin safe update: preserving existing state/config and refreshing plugin files only. Never add --yes to a routine update; it requests a destructive reset.\nPRD Plugin safe update: preserving existing state/config and refreshing plugin files only. Never add --yes to a routine update; it requests a destructive reset.\nPRD Plugin safe update: preserving existing state/config and refreshing plugin files only. Never add --yes to a routine update; it requests a destructive reset.\nPRD Plugin safe update: preserving existing state/config and refreshing plugin files only. Never add --yes to a routine update; it requests a destructive reset.\nPRD Plugin safe update: preserving existing state/config and refreshing plugin files only. Never add --yes to a routine update; it requests a destructive reset.\nPRD Plugin safe update: preserving existing state/config and refreshing plugin files only. Never add --yes to a routine update; it requests a destructive reset.\nPRD Plugin safe update: preserving existing state/config and refreshing plugin files only. Never add --yes to a routine update; it requests a destructive reset.\nPRD Plugin safe update: preserving existing state/config and refreshing plugin files only. Never add --yes to a routine update; it requests a destructive reset.\nPRD Plugin safe update: preserving existing state/config and refreshing plugin files only. Never add --yes to a routine update; it requests a destructive reset.\nPRD Plugin safe update: preserving existing state/config and refreshing plugin files only. Never add --yes to a routine update; it requests a destructive reset.\nPRD Plugin safe update: preserving existing state/config and refreshing plugin files only. Never add --yes to a routine update; it requests a destructive reset.\nPRD Plugin safe update: preserving existing state/config and refreshing plugin files only. Never add --yes to a routine update; it requests a destructive reset.\nPRD Plugin safe update: preserving existing state/config and refreshing plugin files only. Never add --yes to a routine update; it requests a destructive reset.\nPRD Plugin safe update: preserving existing state/config and refreshing plugin files only. Never add --yes to a routine update; it requests a destructive reset.\n{\n  \"published\": false,\n  \"package\": \"prd-plugin\",\n  \"version\": \"9.9.9\",\n  \"version_seen\": null,\n  \"latest_seen\": null,\n  \"attempts_used\": 1\n}\n{\n  \"published\": true,\n  \"package\": \"prd-plugin\",\n  \"version\": \"1.2.3\",\n  \"version_seen\": \"1.2.3\",\n  \"latest_seen\": \"1.2.3\",\n  \"attempts_used\": 1\n}\n{\"decision\": \"block\", \"reason\": \"Autonomous run-until-done: goal TRK-153 is still active. Continue with the next incomplete step toward it \\u2014 do not stop to ask 'shall I proceed?'. If you genuinely need the user (consent floor: push/merge/publish/secrets, or a real blocker), create the file .prd_plugin/local/autonomy-pause with a one-line reason and then stop; the guard will let you. Otherwise keep going.\"}\n",
                "stderr": "nfig.MutationTests.test_manual_set_marks_profile_custom_and_preserves_style) ... ok\ntest_scalar_parent_is_not_clobbered_by_nested_set (test_unified_config.MutationTests.test_scalar_parent_is_not_clobbered_by_nested_set) ... ok\ntest_builtin_profile_dry_run_then_atomic_apply (test_unified_config.ProfileTests.test_builtin_profile_dry_run_then_atomic_apply) ... ok\ntest_invalid_custom_profile_never_partially_writes (test_unified_config.ProfileTests.test_invalid_custom_profile_never_partially_writes) ... ok\ntest_save_show_diff_and_delete_custom_profile (test_unified_config.ProfileTests.test_save_show_diff_and_delete_custom_profile) ... ok\ntest_does_not_flag_canonical_prd_state_paths (test_unsubmitted_plugin_request.UnsubmittedPluginRequestTests.test_does_not_flag_canonical_prd_state_paths) ... ok\ntest_does_not_flag_ordinary_project_requests (test_unsubmitted_plugin_request.UnsubmittedPluginRequestTests.test_does_not_flag_ordinary_project_requests) ... ok\ntest_does_not_flag_rejected_requests (test_unsubmitted_plugin_request.UnsubmittedPluginRequestTests.test_does_not_flag_rejected_requests) ... ok\ntest_does_not_flag_when_already_marked_upstream (test_unsubmitted_plugin_request.UnsubmittedPluginRequestTests.test_does_not_flag_when_already_marked_upstream) ... ok\ntest_flags_a_local_request_about_a_plugin_script (test_unsubmitted_plugin_request.UnsubmittedPluginRequestTests.test_flags_a_local_request_about_a_plugin_script) ... ok\ntest_flags_a_request_that_names_itself_upstream (test_unsubmitted_plugin_request.UnsubmittedPluginRequestTests.test_flags_a_request_that_names_itself_upstream) ... ok\ntest_never_fires_in_the_hub_repo_itself (test_unsubmitted_plugin_request.UnsubmittedPluginRequestTests.test_never_fires_in_the_hub_repo_itself) ... ok\ntest_wired_into_run_checks (test_unsubmitted_plugin_request.UnsubmittedPluginRequestTests.test_wired_into_run_checks) ... ok\ntest_output_writes_lf_and_a_trailing_newline (test_utcp_first_authority.GeneratedArtifactsAreByteStableTests.test_output_writes_lf_and_a_trailing_newline) ... ok\ntest_the_committed_manual_matches_a_fresh_generation (test_utcp_first_authority.GeneratedArtifactsAreByteStableTests.test_the_committed_manual_matches_a_fresh_generation) ... ok\ntest_every_spec_tool_maps_to_a_catalog_capability (test_utcp_first_authority.ParityDirectionTests.test_every_spec_tool_maps_to_a_catalog_capability) ... ok\ntest_server_metadata_matches_the_spec (test_utcp_first_authority.ParityDirectionTests.test_server_metadata_matches_the_spec) ... ok\ntest_python_entry_points_share_the_same_lock (test_utcp_first_authority.SafetyUnchangedTests.test_python_entry_points_share_the_same_lock)\nThe migration target already exists and is proven: prd_reflections ... ok\ntest_the_state_lock_is_still_held_for_mutations (test_utcp_first_authority.SafetyUnchangedTests.test_the_state_lock_is_still_held_for_mutations) ... ok\ntest_no_shipped_tool_metadata_carries_mojibake (test_utcp_first_authority.ShippedTextIsCleanTests.test_no_shipped_tool_metadata_carries_mojibake) ... ok\ntest_shipped_tool_metadata_is_valid_utf8 (test_utcp_first_authority.ShippedTextIsCleanTests.test_shipped_tool_metadata_is_valid_utf8)\nA file written through a cp1252 layer either fails to decode or ... ok\ntest_each_tool_declares_name_description_and_schema (test_utcp_first_authority.SpecIsTheSourceTests.test_each_tool_declares_name_description_and_schema) ... ok\ntest_the_manual_is_generated_from_the_spec_not_the_server (test_utcp_first_authority.SpecIsTheSourceTests.test_the_manual_is_generated_from_the_spec_not_the_server) ... ok\ntest_the_server_no_longer_authors_descriptions (test_utcp_first_authority.SpecIsTheSourceTests.test_the_server_no_longer_authors_descriptions)\nserver.cjs must READ definitions, not declare them. While a tool ... ok\ntest_the_spec_exists_and_declares_every_tool (test_utcp_first_authority.SpecIsTheSourceTests.test_the_spec_exists_and_declares_every_tool) ... ok\ntest_official_bridge_round_trips_cli_and_mcp_templates (test_utcp_first_catalog.BridgeParityTests.test_official_bridge_round_trips_cli_and_mcp_templates) ... C:\\Users\\marku\\AppData\\Local\\Python\\pythoncore-3.14-64\\Lib\\subprocess.py:1139: ResourceWarning: subprocess 35100 is still running\n  _warn(\"subprocess %s is still running\" % self.pid,\nResourceWarning: Enable tracemalloc to get the object allocation traceback\nC:\\Users\\marku\\AppData\\Local\\Python\\pythoncore-3.14-64\\Lib\\unittest\\case.py:615: ResourceWarning: unclosed file <_io.TextIOWrapper name=5 encoding='utf-8'>\n  result = method()\nResourceWarning: Enable tracemalloc to get the object allocation traceback\nC:\\Users\\marku\\AppData\\Local\\Python\\pythoncore-3.14-64\\Lib\\unittest\\case.py:615: ResourceWarning: unclosed file <_io.TextIOWrapper name=4 encoding='utf-8'>\n  result = method()\nResourceWarning: Enable tracemalloc to get the object allocation traceback\nok\ntest_bridged_entries_reuse_server_metadata_verbatim (test_utcp_first_catalog.GeneratedProjectionTests.test_bridged_entries_reuse_server_metadata_verbatim)\nEach bridged manual entry's description and inputs equal the server's ... ok\ntest_checked_in_metadata_matches_live_server (test_utcp_first_catalog.GeneratedProjectionTests.test_checked_in_metadata_matches_live_server)\nThe pinned metadata projection cannot drift behind the live server. ... ok\ntest_mutations_keep_the_validated_handler_path (test_utcp_first_catalog.GuardedMutationTests.test_mutations_keep_the_validated_handler_path)\nEvery manual tool in a non-read capability calls the plugin state ... ok\ntest_read_only_cli_tools_stay_cli (test_utcp_first_catalog.GuardedMutationTests.test_read_only_cli_tools_stay_cli)\nThe 12 cli-native observe/recall tools keep their cli templates. ... ok\ntest_checked_in_metadata_projection_exists (test_utcp_first_catalog.ManualCompletenessTests.test_checked_in_metadata_projection_exists)\nThe server's tool metadata is a checked-in generated artifact so the ... ok\ntest_manual_covers_every_capability_on_both_transports (test_utcp_first_catalog.ManualCompletenessTests.test_manual_covers_every_capability_on_both_transports)\nEvery UTCP and MCP registration in the tool-surface catalog appears ... ok\ntest_appends_version_change_request (test_version_advice.VersionAdviceTests.test_appends_version_change_request) ... ok\ntest_builds_safe_update_advice_for_low_risk_releases (test_version_advice.VersionAdviceTests.test_builds_safe_update_advice_for_low_risk_releases) ... ok\ntest_cli_uses_hub_releases_when_downstream_repo_has_no_releases_file (test_version_advice.VersionAdviceTests.test_cli_uses_hub_releases_when_downstream_repo_has_no_releases_file) ... ok\ntest_detects_installed_version_from_bom_json (test_version_advice.VersionAdviceTests.test_detects_installed_version_from_bom_json) ... ok\ntest_detects_installed_version_from_opencode_plugin_manifest (test_version_advice.VersionAdviceTests.test_detects_installed_version_from_opencode_plugin_manifest) ... ok\ntest_detects_installed_version_from_prd_plugin_config (test_version_advice.VersionAdviceTests.test_detects_installed_version_from_prd_plugin_config) ... ok\ntest_detects_latest_version_from_plugin_manifest (test_version_advice.VersionAdviceTests.test_detects_latest_version_from_plugin_manifest) ... ok\ntest_installed_version_priority_prefers_config_then_codex_then_opencode (test_version_advice.VersionAdviceTests.test_installed_version_priority_prefers_config_then_codex_then_opencode) ... ok\ntest_orders_prerelease_before_final_release (test_version_advice.VersionAdviceTests.test_orders_prerelease_before_final_release) ... ok\ntest_recommends_review_first_for_medium_or_high_risk_release (test_version_advice.VersionAdviceTests.test_recommends_review_first_for_medium_or_high_risk_release) ... ok\ntest_disabled_returns_disabled_and_no_fetch (test_version_check.CheckTests.test_disabled_returns_disabled_and_no_fetch) ... ok\ntest_force_refetches_within_ttl (test_version_check.CheckTests.test_force_refetches_within_ttl) ... ok\ntest_network_failure_is_fail_open (test_version_check.CheckTests.test_network_failure_is_fail_open) ... ok\ntest_no_update_when_current (test_version_check.CheckTests.test_no_update_when_current) ... ok\ntest_status_is_cache_only_no_fetch (test_version_check.CheckTests.test_status_is_cache_only_no_fetch) ... ok\ntest_ttl_cache_avoids_refetch (test_version_check.CheckTests.test_ttl_cache_avoids_refetch) ... ok\ntest_ttl_expiry_refetches (test_version_check.CheckTests.test_ttl_expiry_refetches) ... ok\ntest_update_available_when_npm_is_ahead (test_version_check.CheckTests.test_update_available_when_npm_is_ahead) ... ok\ntest_status_cli_exits_zero (test_version_check.CliTests.test_status_cli_exits_zero) ... ok\ntest_default_ttl_is_responsive_not_a_day (test_version_check.FreshnessTests.test_default_ttl_is_responsive_not_a_day) ... ok\ntest_fetch_latest_accepts_a_timeout (test_version_check.FreshnessTests.test_fetch_latest_accepts_a_timeout) ... ok\ntest_nudge_refreshes_in_session_not_cache_only (test_version_check.FreshnessTests.test_nudge_refreshes_in_session_not_cache_only) ... ok\ntest_registry_default_ttl_matches (test_version_check.FreshnessTests.test_registry_default_ttl_matches) ... ok\ntest_semver_ordering (test_version_check.ParseTests.test_semver_ordering) ... ok\ntest_set_enabled_writes_config (test_version_check.ToggleTests.test_set_enabled_writes_config) ... ok\ntest_config_has_version_check_default_on (test_version_check.WiringTests.test_config_has_version_check_default_on) ... ok\ntest_nudge_surfaces_update_available (test_version_check.WiringTests.test_nudge_surfaces_update_available) ... ok\ntest_prd_version_command_exists (test_version_check.WiringTests.test_prd_version_command_exists) ... ok\ntest_script_registered_downstream (test_version_check.WiringTests.test_script_registered_downstream) ... ok\ntest_plan_cli_emits_json (test_wiki_backfill.CliTests.test_plan_cli_emits_json) ... ok\ntest_status_cli (test_wiki_backfill.CliTests.test_status_cli) ... ok\ntest_marker_written_for_established_repo_gaining_wiki (test_wiki_backfill.InstallerMarkerTests.test_marker_written_for_established_repo_gaining_wiki) ... ok\ntest_no_marker_for_empty_scaffold (test_wiki_backfill.InstallerMarkerTests.test_no_marker_for_empty_scaffold) ... ok\ntest_no_marker_when_wiki_already_exists (test_wiki_backfill.InstallerMarkerTests.test_no_marker_when_wiki_already_exists) ... ok\ntest_no_marker_when_wiki_disabled (test_wiki_backfill.InstallerMarkerTests.test_no_marker_when_wiki_disabled) ... ok\ntest_pending_false_when_absent (test_wiki_backfill.StatusTests.test_pending_false_when_absent) ... ok\ntest_pending_false_when_wiki_already_exists (test_wiki_backfill.StatusTests.test_pending_false_when_wiki_already_exists) ... ok\ntest_pending_true_when_marker_present (test_wiki_backfill.StatusTests.test_pending_true_when_marker_present) ... ok\ntest_plan_excludes_generated_report_artifacts (test_wiki_backfill.SurveyPlanTests.test_plan_excludes_generated_report_artifacts)\nrequest-report/ (incl. its calibration report trees) and docs/evidence/ ... ok\ntest_plan_excludes_plugin_and_vendor_noise (test_wiki_backfill.SurveyPlanTests.test_plan_excludes_plugin_and_vendor_noise) ... ok\ntest_plan_inventories_code_docs_and_state (test_wiki_backfill.SurveyPlanTests.test_plan_inventories_code_docs_and_state) ... ok\ntest_plan_is_read_only (test_wiki_backfill.SurveyPlanTests.test_plan_is_read_only) ... ok\ntest_wiki_drift_in_on_stop_and_default_sets (test_wiki_backfill.WikiDriftMonitorWiringTests.test_wiki_drift_in_on_stop_and_default_sets) ... ok\ntest_current_article_no_drift (test_wiki_backfill.WikiDriftTests.test_current_article_no_drift) ... ok\ntest_drift_cli (test_wiki_backfill.WikiDriftTests.test_drift_cli) ... ok\ntest_far_behind_article_flagged (test_wiki_backfill.WikiDriftTests.test_far_behind_article_flagged) ... ok\ntest_no_wiki_is_ok (test_wiki_backfill.WikiDriftTests.test_no_wiki_is_ok) ... ok\ntest_unlinked_markdown_reference_is_part_of_wiki_drift (test_wiki_backfill.WikiDriftTests.test_unlinked_markdown_reference_is_part_of_wiki_drift) ... ok\ntest_unstamped_article_flagged (test_wiki_backfill.WikiDriftTests.test_unstamped_article_flagged) ... ok\ntest_wiki_drift_uses_configured_wiki_directory (test_wiki_backfill.WikiDriftTests.test_wiki_drift_uses_configured_wiki_directory) ... ok\ntest_ambiguous_reference_is_reported_but_never_guessed (test_wiki_backfill.WikiInlineMarkdownLinkTests.test_ambiguous_reference_is_reported_but_never_guessed) ... ok\ntest_cli_check_fails_and_fix_then_passes (test_wiki_backfill.WikiInlineMarkdownLinkTests.test_cli_check_fails_and_fix_then_passes) ... ok\ntest_existing_inline_links_and_fenced_examples_are_not_findings (test_wiki_backfill.WikiInlineMarkdownLinkTests.test_existing_inline_links_and_fenced_examples_are_not_findings) ... ok\ntest_fix_rewrites_only_unambiguous_references_to_relative_inline_links (test_wiki_backfill.WikiInlineMarkdownLinkTests.test_fix_rewrites_only_unambiguous_references_to_relative_inline_links) ... ok\ntest_reports_resolvable_bare_and_code_wrapped_markdown_references (test_wiki_backfill.WikiInlineMarkdownLinkTests.test_reports_resolvable_bare_and_code_wrapped_markdown_references) ... ok\ntest_nudge_surfaces_pending_backfill (test_wiki_backfill.WiringTests.test_nudge_surfaces_pending_backfill) ... ok\ntest_script_registered_downstream (test_wiki_backfill.WiringTests.test_script_registered_downstream) ... ok\ntest_skill_has_backfill_mode (test_wiki_backfill.WiringTests.test_skill_has_backfill_mode) ... ok\ntest_copy_and_download_controls_are_wired (test_wiki_html_export.WikiHtmlExportTests.test_copy_and_download_controls_are_wired) ... ok\ntest_default_output_lands_in_the_local_runtime_dir (test_wiki_html_export.WikiHtmlExportTests.test_default_output_lands_in_the_local_runtime_dir) ... ok\ntest_every_page_is_embedded_with_exact_markdown (test_wiki_html_export.WikiHtmlExportTests.test_every_page_is_embedded_with_exact_markdown) ... ok\ntest_export_all_generates_viewers_and_super_index (test_wiki_html_export.WikiHtmlExportTests.test_export_all_generates_viewers_and_super_index) ... ok\ntest_export_is_one_self_contained_offline_file (test_wiki_html_export.WikiHtmlExportTests.test_export_is_one_self_contained_offline_file) ... ok\ntest_guest_repo_viewer_is_hosted_by_the_host_repo (test_wiki_html_export.WikiHtmlExportTests.test_guest_repo_viewer_is_hosted_by_the_host_repo)\nA repo without .prd_plugin gets NO new files in its own tree; its ... ok\ntest_hub_repo_exports_all_pages (test_wiki_html_export.WikiHtmlExportTests.test_hub_repo_exports_all_pages) ... ok\ntest_parse_wiki_log_extracts_dated_entries_with_bodies (test_wiki_html_export.WikiHtmlExportTests.test_parse_wiki_log_extracts_dated_entries_with_bodies)\nREQ-112: every workspace log follows '## [date] mode | text'. ... ok\ntest_parse_wiki_log_tolerates_missing_log (test_wiki_html_export.WikiHtmlExportTests.test_parse_wiki_log_tolerates_missing_log) ... ok\ntest_script_content_cannot_break_the_payload (test_wiki_html_export.WikiHtmlExportTests.test_script_content_cannot_break_the_payload) ... ok\ntest_super_index_has_a_combined_changelog (test_wiki_html_export.WikiHtmlExportTests.test_super_index_has_a_combined_changelog) ... ok\ntest_super_index_reports_page_counts (test_wiki_html_export.WikiHtmlExportTests.test_super_index_reports_page_counts) ... ok\ntest_workspace_discovery_uses_the_wiki_convention_marker (test_wiki_html_export.WikiHtmlExportTests.test_workspace_discovery_uses_the_wiki_convention_marker)\nREQ-110 + REQ-111: any immediate child whose wiki follows the ... ok\ntest_a_repo_without_a_wiki_is_not_in_drift (test_wiki_ingest_drift.DetectionTests.test_a_repo_without_a_wiki_is_not_in_drift)\nNo wiki is a legitimate state, not a failure to ingest. ... ok\ntest_fully_ingested_repo_is_clean (test_wiki_ingest_drift.DetectionTests.test_fully_ingested_repo_is_clean) ... ok\ntest_malformed_state_degrades_rather_than_raising (test_wiki_ingest_drift.DetectionTests.test_malformed_state_degrades_rather_than_raising) ... ok\ntest_non_implemented_requests_are_never_expected_in_the_log (test_wiki_ingest_drift.DetectionTests.test_non_implemented_requests_are_never_expected_in_the_log) ... ok\ntest_only_work_since_the_last_ingest_is_actionable (test_wiki_ingest_drift.DetectionTests.test_only_work_since_the_last_ingest_is_actionable)\nRaw counting flags pre-wiki history as drift � ~70 items in the hub, ... ok\ntest_reports_implemented_requests_absent_from_the_log (test_wiki_ingest_drift.DetectionTests.test_reports_implemented_requests_absent_from_the_log) ... ok\ntest_it_runs_against_this_repo_and_returns_a_usable_report (test_wiki_ingest_drift.RealRepoTests.test_it_runs_against_this_repo_and_returns_a_usable_report)\nGrounded against real state, but NOT pinned to a specific gap: a test ... ok\ntest_prd_status_omits_it_when_clean (test_wiki_ingest_drift.SurfaceTests.test_prd_status_omits_it_when_clean) ... ok\ntest_prd_status_reports_the_drift (test_wiki_ingest_drift.SurfaceTests.test_prd_status_reports_the_drift) ... ok\ntest_this_repos_wiki_reads_byte_exact (test_wiki_page_contract.HubRepoSmokeTests.test_this_repos_wiki_reads_byte_exact) ... ok\ntest_list_enumerates_canonical_pages_with_titles (test_wiki_page_contract.WikiPageListTests.test_list_enumerates_canonical_pages_with_titles) ... ok\ntest_boundaries_are_hard (test_wiki_page_contract.WikiPageReadTests.test_boundaries_are_hard) ... ok\ntest_drift_remains_the_default_action (test_wiki_page_contract.WikiPageReadTests.test_drift_remains_the_default_action) ... ok\ntest_read_page_without_stamps_reports_null_provenance (test_wiki_page_contract.WikiPageReadTests.test_read_page_without_stamps_reports_null_provenance) ... ok\ntest_read_requires_a_path (test_wiki_page_contract.WikiPageReadTests.test_read_requires_a_path) ... ok\ntest_read_returns_exact_markdown_with_provenance (test_wiki_page_contract.WikiPageReadTests.test_read_returns_exact_markdown_with_provenance) ... ok\ntest_no_cp1252_unencodable_chars_in_agent_facing_tools (test_windows_console_safe.SourceScanTests.test_no_cp1252_unencodable_chars_in_agent_facing_tools) ... ok\ntest_backfill_pending_status_renders_cp1252_safe (test_windows_console_safe.StatusRenderTests.test_backfill_pending_status_renders_cp1252_safe) ... ok\ntest_repository_workflow_surfaces_are_chml_zero (test_workflow_chml_audit.WorkflowChmlAuditTests.test_repository_workflow_surfaces_are_chml_zero) ... ok\ntest_semantic_skill_finding_is_part_of_workflow_chml (test_workflow_chml_audit.WorkflowChmlAuditTests.test_semantic_skill_finding_is_part_of_workflow_chml) ... ok\ntest_git_workflow_defers_autonomy_to_decision_policy_but_keeps_floor (test_workflow_consistency.AutonomyConflictResolutionTests.test_git_workflow_defers_autonomy_to_decision_policy_but_keeps_floor) ... ok\ntest_request_intake_defers_autonomy_and_owns_graduation (test_workflow_consistency.AutonomyConflictResolutionTests.test_request_intake_defers_autonomy_and_owns_graduation) ... ok\ntest_evidence_pair_states_create_vs_review_boundary (test_workflow_consistency.BoundaryClarityTests.test_evidence_pair_states_create_vs_review_boundary) ... ok\ntest_session_close_states_memory_boundary (test_workflow_consistency.BoundaryClarityTests.test_session_close_states_memory_boundary) ... ok\ntest_document_branch_has_promotion_owner (test_workflow_consistency.DeadEndOwnerTests.test_document_branch_has_promotion_owner) ... ok\ntest_health_findings_have_triage_dispositions (test_workflow_consistency.DeadEndOwnerTests.test_health_findings_have_triage_dispositions) ... ok\ntest_memory_owns_schema_version_changes (test_workflow_consistency.DeadEndOwnerTests.test_memory_owns_schema_version_changes) ... ok\ntest_planning_lifecycle_has_stage_readiness_checkpoints (test_workflow_consistency.DeadEndOwnerTests.test_planning_lifecycle_has_stage_readiness_checkpoints) ... ok\ntest_session_close_runs_traceability_sync (test_workflow_consistency.DeadEndOwnerTests.test_session_close_runs_traceability_sync) ... ok\n\n----------------------------------------------------------------------\nRan 1194 tests in 403.025s\n\nOK\n",
                "receipt_hash": "10863963f50f1795d0224862a955fc2d81cac223b1312ac41f0b461e2fbf3409"
              }
            ],
            "execution_hash": "ab1af260ffc8f8198dab3c8fa877ac2f79b55f71ec66b99d921f68c145bcd141"
          },
          "output_hash": "b824a13c639bae57201f54a6c7c6026a46778145b41ff9c0da4c5084687ecd56",
          "completed_at": "2026-07-23T17:20:42Z"
        },
        {
          "id": "diff",
          "action": "git.diff_check",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-23T17:20:42Z",
          "output": {
            "passed": true
          },
          "output_hash": "11c11db30f4b3f6c758722ba3e27eea08145b7d212f6a157451e364b48475280",
          "completed_at": "2026-07-23T17:20:42Z"
        },
        {
          "id": "state",
          "action": "state.consistency",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-23T17:20:42Z",
          "output": {
            "status": "ok",
            "repo_root": "D:\\Projects\\prd-plugin",
            "summary": {
              "errors": 0,
              "warnings": 0,
              "infos": 0
            },
            "findings": []
          },
          "output_hash": "5a1c6e5246defb1b6b6b90ff734db95bece2886b408ab112ed9b8e67222d5568",
          "completed_at": "2026-07-23T17:20:43Z"
        },
        {
          "id": "gate",
          "action": "state.gate",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-23T17:20:43Z",
          "output": {
            "status": "ok",
            "repo_root": "D:\\Projects\\prd-plugin",
            "summary": {
              "errors": 0,
              "warnings": 0
            },
            "findings": []
          },
          "output_hash": "a705b176b049df02348354c23988d51f616670b7352ad410321cbe0577edf053",
          "completed_at": "2026-07-23T17:20:43Z"
        }
      ],
      "completed_at": "2026-07-23T17:20:43Z"
    },
    {
      "id": "WFR-386",
      "schema_version": "1.0",
      "workflow_id": "evidence.record",
      "workflow_version": 1,
      "definition_hash": "a6dfcb8faadb669d5c097a0d7fa9a738f20ee98e03b552c9557259a94a197e88",
      "plan_hash": "a44df1b1de5021b342dabcc86e555ec4f08e05ef4652360fade906964a7cc51f",
      "input_hash": "2783468e4c9c681f63b27406b1a589157d9b1c4a3e63b52973d051862bafc9d5",
      "inputs": {
        "summary": "CRAFTESB is a complete near-top core-philosophy section in hub and downstream AGENTS.md/CLAUDE.md; regression and installer coverage pass, the full 1,194-test suite passes, and repository state and completion gates report zero findings.",
        "type": "validation",
        "linked_ids": [
          "REQ-167",
          "TRK-153"
        ],
        "commands": [
          {
            "command": "python -m unittest tests.test_instruction_parity.CraftesbIsCorePhilosophyTests -v",
            "outcome": "RED before implementation: missing prominent CRAFTESB section; PASS after implementation."
          },
          {
            "command": "python -m unittest tests.test_prd_install.PrdInstallTests.test_force_overwrites_existing_plugin_files -v",
            "outcome": "PASS: force refresh replaces stale AGENTS.md and CLAUDE.md with complete CRAFTESB content."
          },
          {
            "command": "python -m unittest tests.test_instruction_parity tests.test_decision_policy tests.test_grounding_estimation tests.test_claude_nudge tests.test_prd_skill_install tests.test_prd_install.PrdInstallTests.test_force_overwrites_existing_plugin_files -q",
            "outcome": "PASS: 73 scoped tests."
          },
          {
            "command": "engineering.verify WFR-385",
            "outcome": "PASS: npm test ran 1,194 tests; state consistency and state gate both returned zero findings."
          },
          {
            "command": "python scripts/gap_audit.py --target-version 0.16.48",
            "outcome": "PASS: no gaps."
          },
          {
            "command": "python scripts/release_check.py",
            "outcome": "PASS: no findings."
          },
          {
            "command": "python scripts/instruction_parity.py --repo-root .",
            "outcome": "PASS: instruction parity is current."
          },
          {
            "command": "python scripts/generate_skills_manifest.py --check",
            "outcome": "PASS: 44-skill manifest current."
          },
          {
            "command": "python scripts/feature_skill_audit.py --repo-root . --format json",
            "outcome": "PASS: all 28 features have zero CHML findings."
          }
        ],
        "limitations": "The downstream consumer repository was inspected read-only. This hub release prepares corrected templates; updating any separate repository remains a distinct authorized operation."
      },
      "idempotency_key": "codex-evidence-req-167-20260723",
      "status": "completed",
      "attempt": 1,
      "created_at": "2026-07-23T17:21:10Z",
      "updated_at": "2026-07-23T17:21:11Z",
      "receipts": [
        {
          "step_id": "record",
          "action": "state.mutate",
          "input_hash": "cd552de85ffc14b0bfcab03d84d11898538a489241ee8b5102207438fbf7875f",
          "output_hash": "6c9682b274a951c5e7b68cc643e3c810119ff59ebc68d47a955142679b543222",
          "completed_at": "2026-07-23T17:21:11Z"
        },
        {
          "step_id": "confirm",
          "action": "state.query",
          "input_hash": "f7c94342e6521735ac7bb3242551b096768075b3867019cc4c37b42d2127b668",
          "output_hash": "6cd228c681ce209de9fd158f61488fa9d20341b0cca5213f56e00ced3de9a7d8",
          "completed_at": "2026-07-23T17:21:11Z"
        }
      ],
      "steps": [
        {
          "id": "record",
          "action": "state.mutate",
          "status": "completed",
          "resolved_input_hash": "cd552de85ffc14b0bfcab03d84d11898538a489241ee8b5102207438fbf7875f",
          "started_at": "2026-07-23T17:21:11Z",
          "execution_token": "73d39b3bfb2bfe5dd556e215411f20869edec3984ecc3e2894954d54fcce0433",
          "output": {
            "id": "EV-199"
          },
          "output_hash": "6c9682b274a951c5e7b68cc643e3c810119ff59ebc68d47a955142679b543222",
          "completed_at": "2026-07-23T17:21:11Z"
        },
        {
          "id": "confirm",
          "action": "state.query",
          "status": "completed",
          "resolved_input_hash": "f7c94342e6521735ac7bb3242551b096768075b3867019cc4c37b42d2127b668",
          "started_at": "2026-07-23T17:21:11Z",
          "output": {
            "kind": "EV",
            "record": {
              "id": "EV-199",
              "type": "validation",
              "summary": "CRAFTESB is a complete near-top core-philosophy section in hub and downstream AGENTS.md/CLAUDE.md; regression and installer coverage pass, the full 1,194-test suite passes, and repository state and completion gates report zero findings.",
              "linked_ids": [
                "REQ-167",
                "TRK-153"
              ],
              "created_at": "2026-07-23",
              "commands": [
                {
                  "command": "python -m unittest tests.test_instruction_parity.CraftesbIsCorePhilosophyTests -v",
                  "outcome": "RED before implementation: missing prominent CRAFTESB section; PASS after implementation."
                },
                {
                  "command": "python -m unittest tests.test_prd_install.PrdInstallTests.test_force_overwrites_existing_plugin_files -v",
                  "outcome": "PASS: force refresh replaces stale AGENTS.md and CLAUDE.md with complete CRAFTESB content."
                },
                {
                  "command": "python -m unittest tests.test_instruction_parity tests.test_decision_policy tests.test_grounding_estimation tests.test_claude_nudge tests.test_prd_skill_install tests.test_prd_install.PrdInstallTests.test_force_overwrites_existing_plugin_files -q",
                  "outcome": "PASS: 73 scoped tests."
                },
                {
                  "command": "engineering.verify WFR-385",
                  "outcome": "PASS: npm test ran 1,194 tests; state consistency and state gate both returned zero findings."
                },
                {
                  "command": "python scripts/gap_audit.py --target-version 0.16.48",
                  "outcome": "PASS: no gaps."
                },
                {
                  "command": "python scripts/release_check.py",
                  "outcome": "PASS: no findings."
                },
                {
                  "command": "python scripts/instruction_parity.py --repo-root .",
                  "outcome": "PASS: instruction parity is current."
                },
                {
                  "command": "python scripts/generate_skills_manifest.py --check",
                  "outcome": "PASS: 44-skill manifest current."
                },
                {
                  "command": "python scripts/feature_skill_audit.py --repo-root . --format json",
                  "outcome": "PASS: all 28 features have zero CHML findings."
                }
              ],
              "limitations": "The downstream consumer repository was inspected read-only. This hub release prepares corrected templates; updating any separate repository remains a distinct authorized operation."
            }
          },
          "output_hash": "6cd228c681ce209de9fd158f61488fa9d20341b0cca5213f56e00ced3de9a7d8",
          "completed_at": "2026-07-23T17:21:11Z"
        }
      ],
      "completed_at": "2026-07-23T17:21:11Z"
    },
    {
      "id": "WFR-387",
      "schema_version": "1.0",
      "workflow_id": "session.start",
      "workflow_version": 1,
      "definition_hash": "dd0de9444af7b094cc93673d0844fb78c801d87d978cc5f6dd6bf3e3e863917d",
      "plan_hash": "1f4ae0cd6be8385f8a9310e49978bd8d93baa729842eb6df9243665a1b581277",
      "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
      "inputs": {},
      "idempotency_key": "codex-session-autonomous-push-20260723",
      "status": "completed",
      "attempt": 1,
      "created_at": "2026-07-23T17:42:11Z",
      "updated_at": "2026-07-23T17:42:15Z",
      "receipts": [
        {
          "step_id": "mailbox",
          "action": "requests.pull",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "ab8a35139cfd3f5821ebc5138c9a44c899b54e4036790654ff120e79c7ab6223",
          "completed_at": "2026-07-23T17:42:12Z"
        },
        {
          "step_id": "config",
          "action": "config.audit",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "172e2697e5951667d2eafa396cb6a952ff4a8c53ebf5dc228ab999c00692f8d2",
          "completed_at": "2026-07-23T17:42:12Z"
        },
        {
          "step_id": "services",
          "action": "services.audit",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "13dcc58bd528f3efa3e6e0fa0853a6eedc376f1f3685fbd4869cbb2b60382ee3",
          "completed_at": "2026-07-23T17:42:12Z"
        },
        {
          "step_id": "state",
          "action": "state.consistency",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "5a1c6e5246defb1b6b6b90ff734db95bece2886b408ab112ed9b8e67222d5568",
          "completed_at": "2026-07-23T17:42:13Z"
        },
        {
          "step_id": "status",
          "action": "state.query",
          "input_hash": "a15231a2142a2a9a85355a8b9cbbccffe01a9c9c2c2fd8c2bc2987cdc481564a",
          "output_hash": "873ab4328757d9301f44b2b6cd8ffd4e14c6fcd4764b86f1a21153835e6e79d4",
          "completed_at": "2026-07-23T17:42:14Z"
        },
        {
          "step_id": "substrate",
          "action": "substrate.preflight",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "a6df426290b4549a59eecaa0519ead9bcc50b7fcb25bd2185ff6047960f19ccb",
          "completed_at": "2026-07-23T17:42:14Z"
        },
        {
          "step_id": "notices",
          "action": "substrate.notices",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "38b904a1cf83df048360fb2480571b749fd98d57e11f1afdffb5a74a78166fea",
          "completed_at": "2026-07-23T17:42:14Z"
        },
        {
          "step_id": "goals",
          "action": "substrate.goals",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "cdfd4de44a28140e686159f34f7b47975954c67e1d1efcef666e985acb136ed8",
          "completed_at": "2026-07-23T17:42:15Z"
        }
      ],
      "steps": [
        {
          "id": "mailbox",
          "action": "requests.pull",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-23T17:42:12Z",
          "output": {
            "applied": 0,
            "resolved_ids": [],
            "unmatched": [],
            "mailboxes": [],
            "pruned_outbox": [],
            "consumed_mailboxes": [],
            "outbound": {
              "delivered": 0,
              "mailboxes_published": [],
              "undeliverable": [],
              "pending": []
            },
            "addressed": {
              "delivered": 0,
              "destinations": [],
              "undelivered": [
                {
                  "id": "REQ-030",
                  "state": "not_ours_to_send",
                  "target_repo": "prd-plugin",
                  "reason": "REQ-030 was imported from 'ZeusGrid'; its target_repo records who it was addressed to, not somewhere for us to send it. Reply on its thread instead."
                },
                {
                  "id": "REQ-003",
                  "state": "not_ours_to_send",
                  "target_repo": "prd-plugin",
                  "reason": "REQ-003 was imported from 'ZeusGrid'; its target_repo records who it was addressed to, not somewhere for us to send it. Reply on its thread instead."
                },
                {
                  "id": "REQ-004",
                  "state": "not_ours_to_send",
                  "target_repo": "prd-plugin",
                  "reason": "REQ-004 was imported from 'ZeusGrid'; its target_repo records who it was addressed to, not somewhere for us to send it. Reply on its thread instead."
                },
                {
                  "id": "REQ-005",
                  "state": "not_ours_to_send",
                  "target_repo": "prd-plugin",
                  "reason": "REQ-005 was imported from 'GRAPH_LANG'; its target_repo records who it was addressed to, not somewhere for us to send it. Reply on its thread instead."
                },
                {
                  "id": "REQ-002",
                  "state": "self_addressed",
                  "target_repo": "prd-plugin",
                  "reason": "REQ-002 is addressed to this repo ('prd-plugin'); it is already here."
                },
                {
                  "id": "REQ-028",
                  "state": "self_addressed",
                  "target_repo": "prd-plugin",
                  "reason": "REQ-028 is addressed to this repo ('prd-plugin'); it is already here."
                },
                {
                  "id": "REQ-029",
                  "state": "not_ours_to_send",
                  "target_repo": "ai-collab-v3",
                  "reason": "REQ-029 was imported from 'ai-collab-v3'; its target_repo records who it was addressed to, not somewhere for us to send it. Reply on its thread instead."
                },
                {
                  "id": "REQ-138",
                  "state": "terminal",
                  "target_repo": "no-such-repo",
                  "reason": "REQ-138 is 'rejected'; a closed request is not delivered. Reopen it or file a new one if it still needs to travel."
                }
              ],
              "advisories": []
            }
          },
          "output_hash": "ab8a35139cfd3f5821ebc5138c9a44c899b54e4036790654ff120e79c7ab6223",
          "completed_at": "2026-07-23T17:42:12Z"
        },
        {
          "id": "config",
          "action": "config.audit",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-23T17:42:12Z",
          "output": {
            "status": "ok",
            "summary": {
              "settings": 209,
              "mutable": 199,
              "read_only_or_managed": 10,
              "unclassified": 0,
              "unknown": 0,
              "invalid": 0,
              "missing_using_defaults": 0
            },
            "unclassified_keys": [],
            "unknown_keys": [],
            "invalid_values": [],
            "missing_using_defaults": []
          },
          "output_hash": "172e2697e5951667d2eafa396cb6a952ff4a8c53ebf5dc228ab999c00692f8d2",
          "completed_at": "2026-07-23T17:42:12Z"
        },
        {
          "id": "services",
          "action": "services.audit",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-23T17:42:12Z",
          "output": {
            "status": "ok",
            "summary": {
              "critical": 0,
              "high": 0,
              "medium": 0,
              "low": 0
            },
            "findings": []
          },
          "output_hash": "13dcc58bd528f3efa3e6e0fa0853a6eedc376f1f3685fbd4869cbb2b60382ee3",
          "completed_at": "2026-07-23T17:42:12Z"
        },
        {
          "id": "state",
          "action": "state.consistency",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-23T17:42:12Z",
          "output": {
            "status": "ok",
            "repo_root": "D:\\Projects\\prd-plugin",
            "summary": {
              "errors": 0,
              "warnings": 0,
              "infos": 0
            },
            "findings": []
          },
          "output_hash": "5a1c6e5246defb1b6b6b90ff734db95bece2886b408ab112ed9b8e67222d5568",
          "completed_at": "2026-07-23T17:42:13Z"
        },
        {
          "id": "status",
          "action": "state.query",
          "status": "completed",
          "resolved_input_hash": "a15231a2142a2a9a85355a8b9cbbccffe01a9c9c2c2fd8c2bc2987cdc481564a",
          "started_at": "2026-07-23T17:42:14Z",
          "output": {
            "repo_root": "D:\\Projects\\prd-plugin",
            "autonomy_level": "autonomous",
            "requests_by_status": {
              "accepted": 1,
              "deferred": 1,
              "implemented": 138,
              "in_review": 2,
              "proposed": 4,
              "rejected": 3
            },
            "active_tracking": [],
            "tracking_branches": [],
            "tracking_branch_counts": {},
            "tracking_branch_errors": [],
            "open_health": [
              "HLT-020",
              "HLT-021"
            ],
            "stale_count": 0,
            "skill_usage": {
              "project-llm-wiki": 2,
              "project-decision-policy": 1,
              "project-request-intake": 1,
              "project-test-driven-implementation": 1,
              "project-verification-before-completion": 1,
              "artifact-design": 1
            },
            "wiki_backfill_pending": false,
            "wiki_ingest_drift": {
              "status": "attention",
              "uningested": [
                "REQ-167"
              ],
              "baseline": "REQ-166",
              "historical_gap": 62
            },
            "version_update": null
          },
          "output_hash": "873ab4328757d9301f44b2b6cd8ffd4e14c6fcd4764b86f1a21153835e6e79d4",
          "completed_at": "2026-07-23T17:42:14Z"
        },
        {
          "id": "substrate",
          "action": "substrate.preflight",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-23T17:42:14Z",
          "output": {
            "status": "disabled",
            "services": {
              "status": "ok",
              "summary": {
                "critical": 0,
                "high": 0,
                "medium": 0,
                "low": 0
              },
              "findings": []
            },
            "policy": {
              "configured": {
                "enabled": false,
                "mode": "off",
                "capabilities": [
                  "records",
                  "graph",
                  "events"
                ],
                "contract_version": 2,
                "require_source_refs": true,
                "endpoint": "http://127.0.0.1:47124",
                "manual_url": "http://127.0.0.1:47124/utcp.json",
                "knowledge_browse_url": "http://127.0.0.1:5276",
                "auth_env": "AI_COLLAB_API_KEY",
                "timeout_seconds": 5,
                "max_result_bytes": 1048576,
                "cache_ttl_seconds": 60,
                "fallback": "local",
                "automation": {
                  "discovery_on_session_start": true,
                  "knowledge_recall": true,
                  "memory_recall": true,
                  "context_enrichment": true,
                  "notices_on_session_start": false,
                  "goals_sync": false,
                  "telemetry_on_maintenance": false,
                  "reporting_dispatch": true,
                  "judgment_dispatch": true,
                  "verification_execution": true
                }
              },
              "active": false,
              "effective_mode": "off",
              "effective_capabilities": []
            }
          },
          "output_hash": "a6df426290b4549a59eecaa0519ead9bcc50b7fcb25bd2185ff6047960f19ccb",
          "completed_at": "2026-07-23T17:42:14Z"
        },
        {
          "id": "notices",
          "action": "substrate.notices",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-23T17:42:14Z",
          "output": {
            "status": "disabled"
          },
          "output_hash": "38b904a1cf83df048360fb2480571b749fd98d57e11f1afdffb5a74a78166fea",
          "completed_at": "2026-07-23T17:42:14Z"
        },
        {
          "id": "goals",
          "action": "substrate.goals",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-23T17:42:14Z",
          "output": {
            "status": "disabled",
            "created": 0,
            "observed": 0,
            "results": []
          },
          "output_hash": "cdfd4de44a28140e686159f34f7b47975954c67e1d1efcef666e985acb136ed8",
          "completed_at": "2026-07-23T17:42:15Z"
        }
      ],
      "completed_at": "2026-07-23T17:42:15Z"
    },
    {
      "id": "WFR-388",
      "schema_version": "1.0",
      "workflow_id": "request.intake",
      "workflow_version": 1,
      "definition_hash": "b61272f54c5d4778a27afe601feaae39057f75fac2c289858b6caf5f3b2a4fbe",
      "plan_hash": "c486264d71babcc63e94ecb04a98b25f82215b5cde811a9ee3ee61aea5676f9f",
      "input_hash": "07a6a9d47ed74fa1181d7852c4e22686db029b56b510209415100fd27532a0c5",
      "inputs": {
        "summary": "Make autonomous git workflow push immediately after a clean verified commit instead of presenting finish options or waiting for redundant consent",
        "request_type": "method",
        "severity": "high",
        "scope": "upstream",
        "rationale": "The git-workflow skill contradicts project-decision-policy: it grants autonomous standing consent but later says every push needs explicit consent and requires finish options. That contradiction caused a verified main commit to remain unpushed.",
        "affected_areas": [
          "skills/project-git-workflow/SKILL.md",
          ".agents/skills/project-git-workflow/SKILL.md",
          "templates/repo-skeleton/.agents/skills/project-git-workflow/SKILL.md",
          "templates/repo-skeleton/.opencode/skill/project-git-workflow/SKILL.md",
          "tests/test_workflow_consistency.py",
          "tests/test_prd_skill_install.py"
        ],
        "expected_behavior": "In autonomous mode, once verification is green and the clean commit is on the intended branch, push it to the configured remote without pausing or presenting options; key_decision and guided still require explicit consent, and force-push always requires explicit consent."
      },
      "idempotency_key": "codex-intake-autonomous-push-20260723",
      "status": "completed",
      "attempt": 1,
      "created_at": "2026-07-23T17:42:45Z",
      "updated_at": "2026-07-23T17:42:46Z",
      "receipts": [
        {
          "step_id": "create",
          "action": "state.mutate",
          "input_hash": "71c57cc9cbc025f8d9c50a90ca0afe0671ab29499551524472ce0d87e172bb56",
          "output_hash": "47c9027b5714b70d8dacad34c77ade291535d104938dc8b34b9bf6dcebd42287",
          "completed_at": "2026-07-23T17:42:45Z"
        },
        {
          "step_id": "confirm",
          "action": "state.query",
          "input_hash": "921bc95a86b0d55d5d4ba7fcbc7bc5238eff359933ea0103f0676e3a6e0e3487",
          "output_hash": "f59be00c57048f158ab4040800e079f82f4d60a7aa9ce46062e118a3bfc173c0",
          "completed_at": "2026-07-23T17:42:46Z"
        }
      ],
      "steps": [
        {
          "id": "create",
          "action": "state.mutate",
          "status": "completed",
          "resolved_input_hash": "71c57cc9cbc025f8d9c50a90ca0afe0671ab29499551524472ce0d87e172bb56",
          "started_at": "2026-07-23T17:42:45Z",
          "execution_token": "ff16cbd832cca6f4c291fd19061f8f6071cac270e7ea3fd3a2488c2fe7034895",
          "output": {
            "id": "REQ-168",
            "status": "proposed"
          },
          "output_hash": "47c9027b5714b70d8dacad34c77ade291535d104938dc8b34b9bf6dcebd42287",
          "completed_at": "2026-07-23T17:42:45Z"
        },
        {
          "id": "confirm",
          "action": "state.query",
          "status": "completed",
          "resolved_input_hash": "921bc95a86b0d55d5d4ba7fcbc7bc5238eff359933ea0103f0676e3a6e0e3487",
          "started_at": "2026-07-23T17:42:46Z",
          "output": {
            "kind": "REQ",
            "record": {
              "id": "REQ-168",
              "status": "proposed",
              "request_type": "method",
              "scope": "upstream",
              "visibility": "repo",
              "summary": "Make autonomous git workflow push immediately after a clean verified commit instead of presenting finish options or waiting for redundant consent",
              "severity": "high",
              "requested_by_agent": "AGENT-MCP",
              "created_at": "2026-07-23",
              "rationale": "The git-workflow skill contradicts project-decision-policy: it grants autonomous standing consent but later says every push needs explicit consent and requires finish options. That contradiction caused a verified main commit to remain unpushed.",
              "affected_areas": [
                "skills/project-git-workflow/SKILL.md",
                ".agents/skills/project-git-workflow/SKILL.md",
                "templates/repo-skeleton/.agents/skills/project-git-workflow/SKILL.md",
                "templates/repo-skeleton/.opencode/skill/project-git-workflow/SKILL.md",
                "tests/test_workflow_consistency.py",
                "tests/test_prd_skill_install.py"
              ],
              "expected_behavior": "In autonomous mode, once verification is green and the clean commit is on the intended branch, push it to the configured remote without pausing or presenting options; key_decision and guided still require explicit consent, and force-push always requires explicit consent."
            }
          },
          "output_hash": "f59be00c57048f158ab4040800e079f82f4d60a7aa9ce46062e118a3bfc173c0",
          "completed_at": "2026-07-23T17:42:46Z"
        }
      ],
      "completed_at": "2026-07-23T17:42:46Z"
    },
    {
      "id": "WFR-389",
      "schema_version": "1.0",
      "workflow_id": "engineering.code-review",
      "workflow_version": 1,
      "definition_hash": "ad3df68a0ff3c3ede35fe5266dcfbffbe7b1ba3e8ada5fc4b9012db9f451212f",
      "plan_hash": "e7daa4c63caf1ba2920ac14a0ce6afaa38156e37cde95da4d748d59d3bc02737",
      "input_hash": "5d05f57f6bc01994aaa3ea4ca7647b53411ae07fb3e841f176d71562a8632c44",
      "inputs": {
        "base_ref": "main",
        "source_refs": [
          "skills/project-git-workflow/SKILL.md",
          ".agents/skills/project-git-workflow/SKILL.md",
          ".claude/skills/project-git-workflow/SKILL.md",
          ".opencode/skill/project-git-workflow/SKILL.md",
          "templates/repo-skeleton/.agents/skills/project-git-workflow/SKILL.md",
          "templates/repo-skeleton/.claude/skills/project-git-workflow/SKILL.md",
          "templates/repo-skeleton/.opencode/skill/project-git-workflow/SKILL.md",
          "tests/test_workflow_consistency.py",
          "tests/test_prd_skill_install.py",
          ".prd_plugin/state/releases.json",
          "templates/releases.json"
        ]
      },
      "idempotency_key": "codex-review-req-168-20260723",
      "status": "completed",
      "attempt": 1,
      "created_at": "2026-07-23T17:47:47Z",
      "updated_at": "2026-07-23T17:48:03Z",
      "receipts": [
        {
          "step_id": "diff",
          "action": "git.diff_check",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "11c11db30f4b3f6c758722ba3e27eea08145b7d212f6a157451e364b48475280",
          "completed_at": "2026-07-23T17:47:48Z"
        },
        {
          "step_id": "verification",
          "action": "verification.plan",
          "input_hash": "9c8856776a7db6455fee675768cfc615a0fe2a04fb88b9a4fd8e3fce515eaf08",
          "output_hash": "6b7209653f1429ad3c4114599c8de65aad50dba91dc6b8746d5b1b5ce589d29d",
          "completed_at": "2026-07-23T17:47:48Z"
        },
        {
          "step_id": "context",
          "action": "substrate.enrich",
          "input_hash": "144eb01dd5c61286689197f8b7d2061e2ab9949f35741c6477efbe3d39a7b577",
          "output_hash": "6d52e7c920b919c51551b036b01410429c0605abbd50ea98347da31ad3433e89",
          "completed_at": "2026-07-23T17:47:49Z"
        },
        {
          "step_id": "review",
          "action": "judgment.request",
          "input_hash": "d481042ae2f4995b18bfe4aecdd2a69806cbfefa9e9f62452b457ea2b9e34525",
          "output_hash": "39f149318a8f7534354a1550bb33e9312da76c6184671ffbcf321b294b9327d3",
          "request_hash": "5bfb83194adbbc343ee3252ed12f4c457d6ab82879423c9c590eba747a18f3a7",
          "completed_at": "2026-07-23T17:48:02Z"
        }
      ],
      "steps": [
        {
          "id": "diff",
          "action": "git.diff_check",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-23T17:47:48Z",
          "output": {
            "passed": true
          },
          "output_hash": "11c11db30f4b3f6c758722ba3e27eea08145b7d212f6a157451e364b48475280",
          "completed_at": "2026-07-23T17:47:48Z"
        },
        {
          "id": "verification",
          "action": "verification.plan",
          "status": "completed",
          "resolved_input_hash": "9c8856776a7db6455fee675768cfc615a0fe2a04fb88b9a4fd8e3fce515eaf08",
          "started_at": "2026-07-23T17:47:48Z",
          "output": {
            "schema_version": "1.0",
            "contract_version": 1,
            "executor": "ai-collab",
            "changed_files": [
              ".agents/skills/project-git-workflow/SKILL.md",
              ".claude-plugin/marketplace.json",
              ".claude-plugin/plugin.json",
              ".claude/skills/project-git-workflow/SKILL.md",
              ".codex-plugin/plugin.json",
              ".opencode/plugin.json",
              ".opencode/skill/project-git-workflow/SKILL.md",
              ".prd_plugin/config.json",
              ".prd_plugin/drift/events.jsonl",
              ".prd_plugin/ids/registry.json",
              ".prd_plugin/state/project.json",
              ".prd_plugin/state/releases.json",
              ".prd_plugin/state/requests.json",
              ".prd_plugin/state/tracking.json",
              ".prd_plugin/state/workflow-runs.json",
              "index.js",
              "mcp/server.cjs",
              "package.json",
              "skills-manifest.json",
              "skills/project-git-workflow/SKILL.md",
              "templates/config.json",
              "templates/project.json",
              "templates/releases.json",
              "templates/repo-skeleton/.agents/skills/project-git-workflow/SKILL.md",
              "templates/repo-skeleton/.claude-plugin/plugin.json",
              "templates/repo-skeleton/.claude/skills/project-git-workflow/SKILL.md",
              "templates/repo-skeleton/.codex-plugin/plugin.json",
              "templates/repo-skeleton/.opencode/plugin.json",
              "templates/repo-skeleton/.opencode/skill/project-git-workflow/SKILL.md",
              "templates/repo-skeleton/.prd_plugin/config.json",
              "templates/repo-skeleton/.prd_plugin/state/project.json",
              "templates/repo-skeleton/.prd_plugin/templates/config.json",
              "templates/repo-skeleton/.prd_plugin/templates/project.json",
              "tests/test_prd_skill_install.py",
              "tests/test_workflow_consistency.py"
            ],
            "change_fingerprint": "0962388a3345c75f6bd62d11caba99b53013f0b55255e328bb375c3e85e057b7",
            "policy": {
              "enabled": true,
              "executor": "ai-collab",
              "neighbor_limit": 12,
              "max_changed_files": 25,
              "fallback": "full",
              "full_suite_triggers": [
                "release",
                "core_change",
                "impact_unavailable",
                "impact_degraded",
                "unmapped_change"
              ],
              "core_paths": [
                "package.json",
                "package-lock.json",
                "pyproject.toml",
                "Cargo.toml",
                "go.mod",
                ".github/workflows/**"
              ],
              "test_patterns": [
                "tests/**",
                "test/**",
                "spec/**",
                "**/*.test.*",
                "**/*.spec.*",
                "test_*.py",
                "*_test.py",
                "*_test.go",
                "**/test_*.py",
                "**/*_test.py",
                "**/*_test.go"
              ],
              "max_selected_tests": 200,
              "execution_timeout_seconds": 600,
              "focused_commands": [],
              "full_commands": [],
              "allowed_executables": [
                "python",
                "python3",
                "py",
                "pytest",
                "npm",
                "npx",
                "node",
                "go",
                "cargo",
                "dotnet",
                "mvn",
                "gradle",
                "gradlew",
                "make"
              ]
            },
            "selection_rules": {
              "precedence": [
                "exact_changed",
                "explicit_test_ownership",
                "structural_dependencies",
                "predictive_impact"
              ],
              "require_all_changed_files_mapped": true,
              "widen_before_full": true,
              "predictive_signal_is_sufficient_alone": false
            },
            "fallback": {
              "strategy": "full",
              "conditions": [
                "release",
                "core_change",
                "impact_unavailable",
                "impact_degraded",
                "unmapped_change"
              ]
            },
            "strategy": "full",
            "reason": "core_change",
            "runtime_requests": {},
            "plan_hash": "0efa265eb2d26260ae4519e238ace95b500ec306fe87d774fd6423900d7d3ee9"
          },
          "output_hash": "6b7209653f1429ad3c4114599c8de65aad50dba91dc6b8746d5b1b5ce589d29d",
          "completed_at": "2026-07-23T17:47:48Z"
        },
        {
          "id": "context",
          "action": "substrate.enrich",
          "status": "completed",
          "resolved_input_hash": "144eb01dd5c61286689197f8b7d2061e2ab9949f35741c6477efbe3d39a7b577",
          "started_at": "2026-07-23T17:47:48Z",
          "output": {
            "status": "disabled",
            "results": [],
            "local_source_refs": [
              "skills/project-git-workflow/SKILL.md",
              ".agents/skills/project-git-workflow/SKILL.md",
              ".claude/skills/project-git-workflow/SKILL.md",
              ".opencode/skill/project-git-workflow/SKILL.md",
              "templates/repo-skeleton/.agents/skills/project-git-workflow/SKILL.md",
              "templates/repo-skeleton/.claude/skills/project-git-workflow/SKILL.md",
              "templates/repo-skeleton/.opencode/skill/project-git-workflow/SKILL.md",
              "tests/test_workflow_consistency.py",
              "tests/test_prd_skill_install.py",
              ".prd_plugin/state/releases.json",
              "templates/releases.json"
            ]
          },
          "output_hash": "6d52e7c920b919c51551b036b01410429c0605abbd50ea98347da31ad3433e89",
          "completed_at": "2026-07-23T17:47:49Z"
        },
        {
          "id": "review",
          "action": "judgment.request",
          "status": "completed",
          "resolved_input_hash": "d481042ae2f4995b18bfe4aecdd2a69806cbfefa9e9f62452b457ea2b9e34525",
          "started_at": "2026-07-23T17:47:49Z",
          "judgment_request": {
            "contract_version": 1,
            "run_id": "WFR-389",
            "step_id": "review",
            "task": "code_review",
            "instructions": "Find material correctness, robustness, security, compatibility, or test gaps; do not restate mechanical facts.",
            "source_refs": [
              "skills/project-git-workflow/SKILL.md",
              ".agents/skills/project-git-workflow/SKILL.md",
              ".claude/skills/project-git-workflow/SKILL.md",
              ".opencode/skill/project-git-workflow/SKILL.md",
              "templates/repo-skeleton/.agents/skills/project-git-workflow/SKILL.md",
              "templates/repo-skeleton/.claude/skills/project-git-workflow/SKILL.md",
              "templates/repo-skeleton/.opencode/skill/project-git-workflow/SKILL.md",
              "tests/test_workflow_consistency.py",
              "tests/test_prd_skill_install.py",
              ".prd_plugin/state/releases.json",
              "templates/releases.json"
            ],
            "source_hashes": {
              "skills/project-git-workflow/SKILL.md": "39c76a466d09915d1839c42e3ec652ee93ae5999ad3feedfdb681d770ca2a147",
              ".agents/skills/project-git-workflow/SKILL.md": "39c76a466d09915d1839c42e3ec652ee93ae5999ad3feedfdb681d770ca2a147",
              ".claude/skills/project-git-workflow/SKILL.md": "39c76a466d09915d1839c42e3ec652ee93ae5999ad3feedfdb681d770ca2a147",
              ".opencode/skill/project-git-workflow/SKILL.md": "39c76a466d09915d1839c42e3ec652ee93ae5999ad3feedfdb681d770ca2a147",
              "templates/repo-skeleton/.agents/skills/project-git-workflow/SKILL.md": "9e173f0f087c39697f39361be52895fe784b683e9c8fc06f9505a8f3da8f5ad0",
              "templates/repo-skeleton/.claude/skills/project-git-workflow/SKILL.md": "9e173f0f087c39697f39361be52895fe784b683e9c8fc06f9505a8f3da8f5ad0",
              "templates/repo-skeleton/.opencode/skill/project-git-workflow/SKILL.md": "9e173f0f087c39697f39361be52895fe784b683e9c8fc06f9505a8f3da8f5ad0",
              "tests/test_workflow_consistency.py": "20fad3df4d610a506cd898d6dd6d1d26aa28860af44117ba74ba2923794608ad",
              "tests/test_prd_skill_install.py": "5771b6c6f249bcb6a70a290ffb6fae69e7df7678f231002f3c66c491188bfc4c",
              ".prd_plugin/state/releases.json": "8c65ee2bbe172f88785018830871f755b5187fd088007bae36c3f15b476e75a3",
              "templates/releases.json": "3c1cc871fae5bb89ef08ae7a0ef39e781743def0350b54911bb19c011d2ab68c"
            },
            "result_schema": {
              "type": "object",
              "required": [
                "summary",
                "findings",
                "source_refs"
              ],
              "properties": {
                "summary": {
                  "type": "string"
                },
                "findings": {
                  "type": "array",
                  "items": {
                    "type": "object"
                  }
                },
                "source_refs": {
                  "type": "array",
                  "items": {
                    "type": "string"
                  }
                }
              }
            },
            "executor": "ai-collab",
            "profile": "fast-capable",
            "constraints": {
              "no_project_state_writes": true,
              "require_source_refs": true
            },
            "request_hash": "5bfb83194adbbc343ee3252ed12f4c457d6ab82879423c9c590eba747a18f3a7"
          },
          "output": {
            "summary": "No material findings. The prior blanket push-consent contradiction is removed from every host-discovery copy. Autonomous runs now have an affirmative clean-commit push requirement, key_decision/guided retain their consent checkpoint, and force-push remains explicitly consent-gated.",
            "findings": [],
            "source_refs": [
              "skills/project-git-workflow/SKILL.md",
              ".agents/skills/project-git-workflow/SKILL.md",
              ".claude/skills/project-git-workflow/SKILL.md",
              ".opencode/skill/project-git-workflow/SKILL.md",
              "templates/repo-skeleton/.agents/skills/project-git-workflow/SKILL.md",
              "templates/repo-skeleton/.claude/skills/project-git-workflow/SKILL.md",
              "templates/repo-skeleton/.opencode/skill/project-git-workflow/SKILL.md",
              "tests/test_workflow_consistency.py",
              "tests/test_prd_skill_install.py",
              ".prd_plugin/state/releases.json",
              "templates/releases.json"
            ]
          },
          "output_hash": "39f149318a8f7534354a1550bb33e9312da76c6184671ffbcf321b294b9327d3",
          "completed_at": "2026-07-23T17:48:02Z",
          "judgment_result": {
            "request_hash": "5bfb83194adbbc343ee3252ed12f4c457d6ab82879423c9c590eba747a18f3a7",
            "executor": "ai-collab",
            "profile": "fast-capable"
          }
        }
      ],
      "completed_at": "2026-07-23T17:48:03Z"
    },
    {
      "id": "WFR-390",
      "schema_version": "1.0",
      "workflow_id": "engineering.verify",
      "workflow_version": 1,
      "definition_hash": "82a795fafbc550f124ec781ea9c5b6170d95b5e687fffadf6939f1f160df5ce1",
      "plan_hash": "4bb158b22c9a87a54832df9b9b6a98a77151ce9005499d6a8337a4c015089e5e",
      "input_hash": "fd934039265310404d648cea4b1eb28964383bb8a97ef14b85b2b85d725d502e",
      "inputs": {
        "base_ref": "",
        "release": false
      },
      "idempotency_key": "codex-verify-req-168-20260723",
      "status": "completed",
      "attempt": 1,
      "created_at": "2026-07-23T17:48:26Z",
      "updated_at": "2026-07-23T17:55:18Z",
      "receipts": [
        {
          "step_id": "plan",
          "action": "verification.plan",
          "input_hash": "fd934039265310404d648cea4b1eb28964383bb8a97ef14b85b2b85d725d502e",
          "output_hash": "6b7209653f1429ad3c4114599c8de65aad50dba91dc6b8746d5b1b5ce589d29d",
          "completed_at": "2026-07-23T17:48:26Z"
        },
        {
          "step_id": "execute",
          "action": "verification.execute",
          "input_hash": "30520461fe6e281e9b6ff1fe15c6bdbefe218e0bb9b5d0feaf70136667d5c583",
          "output_hash": "3a839a63ccbaf0d381fa67c6c548420aa9ba4eaee8c0dd9a2ead52623a04307d",
          "completed_at": "2026-07-23T17:55:14Z"
        },
        {
          "step_id": "diff",
          "action": "git.diff_check",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "11c11db30f4b3f6c758722ba3e27eea08145b7d212f6a157451e364b48475280",
          "completed_at": "2026-07-23T17:55:14Z"
        },
        {
          "step_id": "state",
          "action": "state.consistency",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "5a1c6e5246defb1b6b6b90ff734db95bece2886b408ab112ed9b8e67222d5568",
          "completed_at": "2026-07-23T17:55:16Z"
        },
        {
          "step_id": "gate",
          "action": "state.gate",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "a705b176b049df02348354c23988d51f616670b7352ad410321cbe0577edf053",
          "completed_at": "2026-07-23T17:55:17Z"
        }
      ],
      "steps": [
        {
          "id": "plan",
          "action": "verification.plan",
          "status": "completed",
          "resolved_input_hash": "fd934039265310404d648cea4b1eb28964383bb8a97ef14b85b2b85d725d502e",
          "started_at": "2026-07-23T17:48:26Z",
          "output": {
            "schema_version": "1.0",
            "contract_version": 1,
            "executor": "ai-collab",
            "changed_files": [
              ".agents/skills/project-git-workflow/SKILL.md",
              ".claude-plugin/marketplace.json",
              ".claude-plugin/plugin.json",
              ".claude/skills/project-git-workflow/SKILL.md",
              ".codex-plugin/plugin.json",
              ".opencode/plugin.json",
              ".opencode/skill/project-git-workflow/SKILL.md",
              ".prd_plugin/config.json",
              ".prd_plugin/drift/events.jsonl",
              ".prd_plugin/ids/registry.json",
              ".prd_plugin/state/project.json",
              ".prd_plugin/state/releases.json",
              ".prd_plugin/state/requests.json",
              ".prd_plugin/state/tracking.json",
              ".prd_plugin/state/workflow-runs.json",
              "index.js",
              "mcp/server.cjs",
              "package.json",
              "skills-manifest.json",
              "skills/project-git-workflow/SKILL.md",
              "templates/config.json",
              "templates/project.json",
              "templates/releases.json",
              "templates/repo-skeleton/.agents/skills/project-git-workflow/SKILL.md",
              "templates/repo-skeleton/.claude-plugin/plugin.json",
              "templates/repo-skeleton/.claude/skills/project-git-workflow/SKILL.md",
              "templates/repo-skeleton/.codex-plugin/plugin.json",
              "templates/repo-skeleton/.opencode/plugin.json",
              "templates/repo-skeleton/.opencode/skill/project-git-workflow/SKILL.md",
              "templates/repo-skeleton/.prd_plugin/config.json",
              "templates/repo-skeleton/.prd_plugin/state/project.json",
              "templates/repo-skeleton/.prd_plugin/templates/config.json",
              "templates/repo-skeleton/.prd_plugin/templates/project.json",
              "tests/test_prd_skill_install.py",
              "tests/test_workflow_consistency.py"
            ],
            "change_fingerprint": "0962388a3345c75f6bd62d11caba99b53013f0b55255e328bb375c3e85e057b7",
            "policy": {
              "enabled": true,
              "executor": "ai-collab",
              "neighbor_limit": 12,
              "max_changed_files": 25,
              "fallback": "full",
              "full_suite_triggers": [
                "release",
                "core_change",
                "impact_unavailable",
                "impact_degraded",
                "unmapped_change"
              ],
              "core_paths": [
                "package.json",
                "package-lock.json",
                "pyproject.toml",
                "Cargo.toml",
                "go.mod",
                ".github/workflows/**"
              ],
              "test_patterns": [
                "tests/**",
                "test/**",
                "spec/**",
                "**/*.test.*",
                "**/*.spec.*",
                "test_*.py",
                "*_test.py",
                "*_test.go",
                "**/test_*.py",
                "**/*_test.py",
                "**/*_test.go"
              ],
              "max_selected_tests": 200,
              "execution_timeout_seconds": 600,
              "focused_commands": [],
              "full_commands": [],
              "allowed_executables": [
                "python",
                "python3",
                "py",
                "pytest",
                "npm",
                "npx",
                "node",
                "go",
                "cargo",
                "dotnet",
                "mvn",
                "gradle",
                "gradlew",
                "make"
              ]
            },
            "selection_rules": {
              "precedence": [
                "exact_changed",
                "explicit_test_ownership",
                "structural_dependencies",
                "predictive_impact"
              ],
              "require_all_changed_files_mapped": true,
              "widen_before_full": true,
              "predictive_signal_is_sufficient_alone": false
            },
            "fallback": {
              "strategy": "full",
              "conditions": [
                "release",
                "core_change",
                "impact_unavailable",
                "impact_degraded",
                "unmapped_change"
              ]
            },
            "strategy": "full",
            "reason": "core_change",
            "runtime_requests": {},
            "plan_hash": "0efa265eb2d26260ae4519e238ace95b500ec306fe87d774fd6423900d7d3ee9"
          },
          "output_hash": "6b7209653f1429ad3c4114599c8de65aad50dba91dc6b8746d5b1b5ce589d29d",
          "completed_at": "2026-07-23T17:48:26Z"
        },
        {
          "id": "execute",
          "action": "verification.execute",
          "status": "completed",
          "resolved_input_hash": "30520461fe6e281e9b6ff1fe15c6bdbefe218e0bb9b5d0feaf70136667d5c583",
          "started_at": "2026-07-23T17:48:26Z",
          "output": {
            "status": "passed",
            "strategy": "full",
            "reason": "core_change",
            "selected_tests": [],
            "change_fingerprint": "0962388a3345c75f6bd62d11caba99b53013f0b55255e328bb375c3e85e057b7",
            "plan_hash": "0efa265eb2d26260ae4519e238ace95b500ec306fe87d774fd6423900d7d3ee9",
            "impact_receipts": [],
            "receipts": [
              {
                "command": [
                  "npm",
                  "test"
                ],
                "exit_code": 0,
                "stdout": "\n> prd-plugin@0.16.49 test\n> python -m unittest discover -s tests -v\n\n{\n  \"status\": \"fail\",\n  \"repo_root\": \"C:\\\\Users\\\\marku\\\\AppData\\\\Local\\\\Temp\\\\tmpntya0e8o\",\n  \"summary\": {\n    \"errors\": 1,\n    \"warnings\": 0\n  },\n  \"findings\": [\n    {\n      \"check\": \"duplicate_id\",\n      \"severity\": \"error\",\n      \"summary\": \"Duplicate id REQ-002 in .prd_plugin/state/requests.json.\",\n      \"required_action\": \"Renumber one record so REQ-002 is unique. Allocate IDs with the MCP tool prd_next_id (or the record tools like prd_open_goal) instead of hand-computing them.\"\n    }\n  ]\n}\nautonomy_level set to guided\nautonomy_level set to autonomous\nDESTRUCTIVE RESET REQUESTED: --force --yes will erase protected PRD Plugin project data.\nThe following existing state/configuration files would be replaced with skeleton defaults:\n  - .prd_plugin/state/tracking.json\nThis may erase IDs, tracking, requests, decisions, health findings, configuration, and session memory.\nFor a normal safe update, remove --yes and run: npx prd-install . --force\nPRD Plugin safe update: preserving existing state/config and refreshing plugin files only. Never add --yes to a routine update; it requests a destructive reset.\nPRD Plugin safe update: preserving existing state/config and refreshing plugin files only. Never add --yes to a routine update; it requests a destructive reset.\nPRD Plugin safe update: preserving existing state/config and refreshing plugin files only. Never add --yes to a routine update; it requests a destructive reset.\nPRD Plugin safe update: preserving existing state/config and refreshing plugin files only. Never add --yes to a routine update; it requests a destructive reset.\nPRD Plugin safe update: preserving existing state/config and refreshing plugin files only. Never add --yes to a routine update; it requests a destructive reset.\nPRD Plugin safe update: preserving existing state/config and refreshing plugin files only. Never add --yes to a routine update; it requests a destructive reset.\nPRD Plugin safe update: preserving existing state/config and refreshing plugin files only. Never add --yes to a routine update; it requests a destructive reset.\nPRD Plugin safe update: preserving existing state/config and refreshing plugin files only. Never add --yes to a routine update; it requests a destructive reset.\nPRD Plugin safe update: preserving existing state/config and refreshing plugin files only. Never add --yes to a routine update; it requests a destructive reset.\nPRD Plugin safe update: preserving existing state/config and refreshing plugin files only. Never add --yes to a routine update; it requests a destructive reset.\nPRD Plugin safe update: preserving existing state/config and refreshing plugin files only. Never add --yes to a routine update; it requests a destructive reset.\nPRD Plugin safe update: preserving existing state/config and refreshing plugin files only. Never add --yes to a routine update; it requests a destructive reset.\nPRD Plugin safe update: preserving existing state/config and refreshing plugin files only. Never add --yes to a routine update; it requests a destructive reset.\nPRD Plugin safe update: preserving existing state/config and refreshing plugin files only. Never add --yes to a routine update; it requests a destructive reset.\nPRD Plugin safe update: preserving existing state/config and refreshing plugin files only. Never add --yes to a routine update; it requests a destructive reset.\nPRD Plugin safe update: preserving existing state/config and refreshing plugin files only. Never add --yes to a routine update; it requests a destructive reset.\n{\n  \"published\": false,\n  \"package\": \"prd-plugin\",\n  \"version\": \"9.9.9\",\n  \"version_seen\": null,\n  \"latest_seen\": null,\n  \"attempts_used\": 1\n}\n{\n  \"published\": true,\n  \"package\": \"prd-plugin\",\n  \"version\": \"1.2.3\",\n  \"version_seen\": \"1.2.3\",\n  \"latest_seen\": \"1.2.3\",\n  \"attempts_used\": 1\n}\n{\"decision\": \"block\", \"reason\": \"Autonomous run-until-done: goal TRK-154 is still active. Continue with the next incomplete step toward it \\u2014 do not stop to ask 'shall I proceed?'. If you genuinely need the user (consent floor: push/merge/publish/secrets, or a real blocker), create the file .prd_plugin/local/autonomy-pause with a one-line reason and then stop; the guard will let you. Otherwise keep going.\"}\n",
                "stderr": "est_unified_config.MutationTests.test_manual_set_marks_profile_custom_and_preserves_style) ... ok\ntest_scalar_parent_is_not_clobbered_by_nested_set (test_unified_config.MutationTests.test_scalar_parent_is_not_clobbered_by_nested_set) ... ok\ntest_builtin_profile_dry_run_then_atomic_apply (test_unified_config.ProfileTests.test_builtin_profile_dry_run_then_atomic_apply) ... ok\ntest_invalid_custom_profile_never_partially_writes (test_unified_config.ProfileTests.test_invalid_custom_profile_never_partially_writes) ... ok\ntest_save_show_diff_and_delete_custom_profile (test_unified_config.ProfileTests.test_save_show_diff_and_delete_custom_profile) ... ok\ntest_does_not_flag_canonical_prd_state_paths (test_unsubmitted_plugin_request.UnsubmittedPluginRequestTests.test_does_not_flag_canonical_prd_state_paths) ... ok\ntest_does_not_flag_ordinary_project_requests (test_unsubmitted_plugin_request.UnsubmittedPluginRequestTests.test_does_not_flag_ordinary_project_requests) ... ok\ntest_does_not_flag_rejected_requests (test_unsubmitted_plugin_request.UnsubmittedPluginRequestTests.test_does_not_flag_rejected_requests) ... ok\ntest_does_not_flag_when_already_marked_upstream (test_unsubmitted_plugin_request.UnsubmittedPluginRequestTests.test_does_not_flag_when_already_marked_upstream) ... ok\ntest_flags_a_local_request_about_a_plugin_script (test_unsubmitted_plugin_request.UnsubmittedPluginRequestTests.test_flags_a_local_request_about_a_plugin_script) ... ok\ntest_flags_a_request_that_names_itself_upstream (test_unsubmitted_plugin_request.UnsubmittedPluginRequestTests.test_flags_a_request_that_names_itself_upstream) ... ok\ntest_never_fires_in_the_hub_repo_itself (test_unsubmitted_plugin_request.UnsubmittedPluginRequestTests.test_never_fires_in_the_hub_repo_itself) ... ok\ntest_wired_into_run_checks (test_unsubmitted_plugin_request.UnsubmittedPluginRequestTests.test_wired_into_run_checks) ... ok\ntest_output_writes_lf_and_a_trailing_newline (test_utcp_first_authority.GeneratedArtifactsAreByteStableTests.test_output_writes_lf_and_a_trailing_newline) ... ok\ntest_the_committed_manual_matches_a_fresh_generation (test_utcp_first_authority.GeneratedArtifactsAreByteStableTests.test_the_committed_manual_matches_a_fresh_generation) ... ok\ntest_every_spec_tool_maps_to_a_catalog_capability (test_utcp_first_authority.ParityDirectionTests.test_every_spec_tool_maps_to_a_catalog_capability) ... ok\ntest_server_metadata_matches_the_spec (test_utcp_first_authority.ParityDirectionTests.test_server_metadata_matches_the_spec) ... ok\ntest_python_entry_points_share_the_same_lock (test_utcp_first_authority.SafetyUnchangedTests.test_python_entry_points_share_the_same_lock)\nThe migration target already exists and is proven: prd_reflections ... ok\ntest_the_state_lock_is_still_held_for_mutations (test_utcp_first_authority.SafetyUnchangedTests.test_the_state_lock_is_still_held_for_mutations) ... ok\ntest_no_shipped_tool_metadata_carries_mojibake (test_utcp_first_authority.ShippedTextIsCleanTests.test_no_shipped_tool_metadata_carries_mojibake) ... ok\ntest_shipped_tool_metadata_is_valid_utf8 (test_utcp_first_authority.ShippedTextIsCleanTests.test_shipped_tool_metadata_is_valid_utf8)\nA file written through a cp1252 layer either fails to decode or ... ok\ntest_each_tool_declares_name_description_and_schema (test_utcp_first_authority.SpecIsTheSourceTests.test_each_tool_declares_name_description_and_schema) ... ok\ntest_the_manual_is_generated_from_the_spec_not_the_server (test_utcp_first_authority.SpecIsTheSourceTests.test_the_manual_is_generated_from_the_spec_not_the_server) ... ok\ntest_the_server_no_longer_authors_descriptions (test_utcp_first_authority.SpecIsTheSourceTests.test_the_server_no_longer_authors_descriptions)\nserver.cjs must READ definitions, not declare them. While a tool ... ok\ntest_the_spec_exists_and_declares_every_tool (test_utcp_first_authority.SpecIsTheSourceTests.test_the_spec_exists_and_declares_every_tool) ... ok\ntest_official_bridge_round_trips_cli_and_mcp_templates (test_utcp_first_catalog.BridgeParityTests.test_official_bridge_round_trips_cli_and_mcp_templates) ... C:\\Users\\marku\\AppData\\Local\\Python\\pythoncore-3.14-64\\Lib\\subprocess.py:1139: ResourceWarning: subprocess 16680 is still running\n  _warn(\"subprocess %s is still running\" % self.pid,\nResourceWarning: Enable tracemalloc to get the object allocation traceback\nC:\\Users\\marku\\AppData\\Local\\Python\\pythoncore-3.14-64\\Lib\\unittest\\case.py:615: ResourceWarning: unclosed file <_io.TextIOWrapper name=5 encoding='utf-8'>\n  result = method()\nResourceWarning: Enable tracemalloc to get the object allocation traceback\nC:\\Users\\marku\\AppData\\Local\\Python\\pythoncore-3.14-64\\Lib\\unittest\\case.py:615: ResourceWarning: unclosed file <_io.TextIOWrapper name=4 encoding='utf-8'>\n  result = method()\nResourceWarning: Enable tracemalloc to get the object allocation traceback\nok\ntest_bridged_entries_reuse_server_metadata_verbatim (test_utcp_first_catalog.GeneratedProjectionTests.test_bridged_entries_reuse_server_metadata_verbatim)\nEach bridged manual entry's description and inputs equal the server's ... ok\ntest_checked_in_metadata_matches_live_server (test_utcp_first_catalog.GeneratedProjectionTests.test_checked_in_metadata_matches_live_server)\nThe pinned metadata projection cannot drift behind the live server. ... ok\ntest_mutations_keep_the_validated_handler_path (test_utcp_first_catalog.GuardedMutationTests.test_mutations_keep_the_validated_handler_path)\nEvery manual tool in a non-read capability calls the plugin state ... ok\ntest_read_only_cli_tools_stay_cli (test_utcp_first_catalog.GuardedMutationTests.test_read_only_cli_tools_stay_cli)\nThe 12 cli-native observe/recall tools keep their cli templates. ... ok\ntest_checked_in_metadata_projection_exists (test_utcp_first_catalog.ManualCompletenessTests.test_checked_in_metadata_projection_exists)\nThe server's tool metadata is a checked-in generated artifact so the ... ok\ntest_manual_covers_every_capability_on_both_transports (test_utcp_first_catalog.ManualCompletenessTests.test_manual_covers_every_capability_on_both_transports)\nEvery UTCP and MCP registration in the tool-surface catalog appears ... ok\ntest_appends_version_change_request (test_version_advice.VersionAdviceTests.test_appends_version_change_request) ... ok\ntest_builds_safe_update_advice_for_low_risk_releases (test_version_advice.VersionAdviceTests.test_builds_safe_update_advice_for_low_risk_releases) ... ok\ntest_cli_uses_hub_releases_when_downstream_repo_has_no_releases_file (test_version_advice.VersionAdviceTests.test_cli_uses_hub_releases_when_downstream_repo_has_no_releases_file) ... ok\ntest_detects_installed_version_from_bom_json (test_version_advice.VersionAdviceTests.test_detects_installed_version_from_bom_json) ... ok\ntest_detects_installed_version_from_opencode_plugin_manifest (test_version_advice.VersionAdviceTests.test_detects_installed_version_from_opencode_plugin_manifest) ... ok\ntest_detects_installed_version_from_prd_plugin_config (test_version_advice.VersionAdviceTests.test_detects_installed_version_from_prd_plugin_config) ... ok\ntest_detects_latest_version_from_plugin_manifest (test_version_advice.VersionAdviceTests.test_detects_latest_version_from_plugin_manifest) ... ok\ntest_installed_version_priority_prefers_config_then_codex_then_opencode (test_version_advice.VersionAdviceTests.test_installed_version_priority_prefers_config_then_codex_then_opencode) ... ok\ntest_orders_prerelease_before_final_release (test_version_advice.VersionAdviceTests.test_orders_prerelease_before_final_release) ... ok\ntest_recommends_review_first_for_medium_or_high_risk_release (test_version_advice.VersionAdviceTests.test_recommends_review_first_for_medium_or_high_risk_release) ... ok\ntest_disabled_returns_disabled_and_no_fetch (test_version_check.CheckTests.test_disabled_returns_disabled_and_no_fetch) ... ok\ntest_force_refetches_within_ttl (test_version_check.CheckTests.test_force_refetches_within_ttl) ... ok\ntest_network_failure_is_fail_open (test_version_check.CheckTests.test_network_failure_is_fail_open) ... ok\ntest_no_update_when_current (test_version_check.CheckTests.test_no_update_when_current) ... ok\ntest_status_is_cache_only_no_fetch (test_version_check.CheckTests.test_status_is_cache_only_no_fetch) ... ok\ntest_ttl_cache_avoids_refetch (test_version_check.CheckTests.test_ttl_cache_avoids_refetch) ... ok\ntest_ttl_expiry_refetches (test_version_check.CheckTests.test_ttl_expiry_refetches) ... ok\ntest_update_available_when_npm_is_ahead (test_version_check.CheckTests.test_update_available_when_npm_is_ahead) ... ok\ntest_status_cli_exits_zero (test_version_check.CliTests.test_status_cli_exits_zero) ... ok\ntest_default_ttl_is_responsive_not_a_day (test_version_check.FreshnessTests.test_default_ttl_is_responsive_not_a_day) ... ok\ntest_fetch_latest_accepts_a_timeout (test_version_check.FreshnessTests.test_fetch_latest_accepts_a_timeout) ... ok\ntest_nudge_refreshes_in_session_not_cache_only (test_version_check.FreshnessTests.test_nudge_refreshes_in_session_not_cache_only) ... ok\ntest_registry_default_ttl_matches (test_version_check.FreshnessTests.test_registry_default_ttl_matches) ... ok\ntest_semver_ordering (test_version_check.ParseTests.test_semver_ordering) ... ok\ntest_set_enabled_writes_config (test_version_check.ToggleTests.test_set_enabled_writes_config) ... ok\ntest_config_has_version_check_default_on (test_version_check.WiringTests.test_config_has_version_check_default_on) ... ok\ntest_nudge_surfaces_update_available (test_version_check.WiringTests.test_nudge_surfaces_update_available) ... ok\ntest_prd_version_command_exists (test_version_check.WiringTests.test_prd_version_command_exists) ... ok\ntest_script_registered_downstream (test_version_check.WiringTests.test_script_registered_downstream) ... ok\ntest_plan_cli_emits_json (test_wiki_backfill.CliTests.test_plan_cli_emits_json) ... ok\ntest_status_cli (test_wiki_backfill.CliTests.test_status_cli) ... ok\ntest_marker_written_for_established_repo_gaining_wiki (test_wiki_backfill.InstallerMarkerTests.test_marker_written_for_established_repo_gaining_wiki) ... ok\ntest_no_marker_for_empty_scaffold (test_wiki_backfill.InstallerMarkerTests.test_no_marker_for_empty_scaffold) ... ok\ntest_no_marker_when_wiki_already_exists (test_wiki_backfill.InstallerMarkerTests.test_no_marker_when_wiki_already_exists) ... ok\ntest_no_marker_when_wiki_disabled (test_wiki_backfill.InstallerMarkerTests.test_no_marker_when_wiki_disabled) ... ok\ntest_pending_false_when_absent (test_wiki_backfill.StatusTests.test_pending_false_when_absent) ... ok\ntest_pending_false_when_wiki_already_exists (test_wiki_backfill.StatusTests.test_pending_false_when_wiki_already_exists) ... ok\ntest_pending_true_when_marker_present (test_wiki_backfill.StatusTests.test_pending_true_when_marker_present) ... ok\ntest_plan_excludes_generated_report_artifacts (test_wiki_backfill.SurveyPlanTests.test_plan_excludes_generated_report_artifacts)\nrequest-report/ (incl. its calibration report trees) and docs/evidence/ ... ok\ntest_plan_excludes_plugin_and_vendor_noise (test_wiki_backfill.SurveyPlanTests.test_plan_excludes_plugin_and_vendor_noise) ... ok\ntest_plan_inventories_code_docs_and_state (test_wiki_backfill.SurveyPlanTests.test_plan_inventories_code_docs_and_state) ... ok\ntest_plan_is_read_only (test_wiki_backfill.SurveyPlanTests.test_plan_is_read_only) ... ok\ntest_wiki_drift_in_on_stop_and_default_sets (test_wiki_backfill.WikiDriftMonitorWiringTests.test_wiki_drift_in_on_stop_and_default_sets) ... ok\ntest_current_article_no_drift (test_wiki_backfill.WikiDriftTests.test_current_article_no_drift) ... ok\ntest_drift_cli (test_wiki_backfill.WikiDriftTests.test_drift_cli) ... ok\ntest_far_behind_article_flagged (test_wiki_backfill.WikiDriftTests.test_far_behind_article_flagged) ... ok\ntest_no_wiki_is_ok (test_wiki_backfill.WikiDriftTests.test_no_wiki_is_ok) ... ok\ntest_unlinked_markdown_reference_is_part_of_wiki_drift (test_wiki_backfill.WikiDriftTests.test_unlinked_markdown_reference_is_part_of_wiki_drift) ... ok\ntest_unstamped_article_flagged (test_wiki_backfill.WikiDriftTests.test_unstamped_article_flagged) ... ok\ntest_wiki_drift_uses_configured_wiki_directory (test_wiki_backfill.WikiDriftTests.test_wiki_drift_uses_configured_wiki_directory) ... ok\ntest_ambiguous_reference_is_reported_but_never_guessed (test_wiki_backfill.WikiInlineMarkdownLinkTests.test_ambiguous_reference_is_reported_but_never_guessed) ... ok\ntest_cli_check_fails_and_fix_then_passes (test_wiki_backfill.WikiInlineMarkdownLinkTests.test_cli_check_fails_and_fix_then_passes) ... ok\ntest_existing_inline_links_and_fenced_examples_are_not_findings (test_wiki_backfill.WikiInlineMarkdownLinkTests.test_existing_inline_links_and_fenced_examples_are_not_findings) ... ok\ntest_fix_rewrites_only_unambiguous_references_to_relative_inline_links (test_wiki_backfill.WikiInlineMarkdownLinkTests.test_fix_rewrites_only_unambiguous_references_to_relative_inline_links) ... ok\ntest_reports_resolvable_bare_and_code_wrapped_markdown_references (test_wiki_backfill.WikiInlineMarkdownLinkTests.test_reports_resolvable_bare_and_code_wrapped_markdown_references) ... ok\ntest_nudge_surfaces_pending_backfill (test_wiki_backfill.WiringTests.test_nudge_surfaces_pending_backfill) ... ok\ntest_script_registered_downstream (test_wiki_backfill.WiringTests.test_script_registered_downstream) ... ok\ntest_skill_has_backfill_mode (test_wiki_backfill.WiringTests.test_skill_has_backfill_mode) ... ok\ntest_copy_and_download_controls_are_wired (test_wiki_html_export.WikiHtmlExportTests.test_copy_and_download_controls_are_wired) ... ok\ntest_default_output_lands_in_the_local_runtime_dir (test_wiki_html_export.WikiHtmlExportTests.test_default_output_lands_in_the_local_runtime_dir) ... ok\ntest_every_page_is_embedded_with_exact_markdown (test_wiki_html_export.WikiHtmlExportTests.test_every_page_is_embedded_with_exact_markdown) ... ok\ntest_export_all_generates_viewers_and_super_index (test_wiki_html_export.WikiHtmlExportTests.test_export_all_generates_viewers_and_super_index) ... ok\ntest_export_is_one_self_contained_offline_file (test_wiki_html_export.WikiHtmlExportTests.test_export_is_one_self_contained_offline_file) ... ok\ntest_guest_repo_viewer_is_hosted_by_the_host_repo (test_wiki_html_export.WikiHtmlExportTests.test_guest_repo_viewer_is_hosted_by_the_host_repo)\nA repo without .prd_plugin gets NO new files in its own tree; its ... ok\ntest_hub_repo_exports_all_pages (test_wiki_html_export.WikiHtmlExportTests.test_hub_repo_exports_all_pages) ... ok\ntest_parse_wiki_log_extracts_dated_entries_with_bodies (test_wiki_html_export.WikiHtmlExportTests.test_parse_wiki_log_extracts_dated_entries_with_bodies)\nREQ-112: every workspace log follows '## [date] mode | text'. ... ok\ntest_parse_wiki_log_tolerates_missing_log (test_wiki_html_export.WikiHtmlExportTests.test_parse_wiki_log_tolerates_missing_log) ... ok\ntest_script_content_cannot_break_the_payload (test_wiki_html_export.WikiHtmlExportTests.test_script_content_cannot_break_the_payload) ... ok\ntest_super_index_has_a_combined_changelog (test_wiki_html_export.WikiHtmlExportTests.test_super_index_has_a_combined_changelog) ... ok\ntest_super_index_reports_page_counts (test_wiki_html_export.WikiHtmlExportTests.test_super_index_reports_page_counts) ... ok\ntest_workspace_discovery_uses_the_wiki_convention_marker (test_wiki_html_export.WikiHtmlExportTests.test_workspace_discovery_uses_the_wiki_convention_marker)\nREQ-110 + REQ-111: any immediate child whose wiki follows the ... ok\ntest_a_repo_without_a_wiki_is_not_in_drift (test_wiki_ingest_drift.DetectionTests.test_a_repo_without_a_wiki_is_not_in_drift)\nNo wiki is a legitimate state, not a failure to ingest. ... ok\ntest_fully_ingested_repo_is_clean (test_wiki_ingest_drift.DetectionTests.test_fully_ingested_repo_is_clean) ... ok\ntest_malformed_state_degrades_rather_than_raising (test_wiki_ingest_drift.DetectionTests.test_malformed_state_degrades_rather_than_raising) ... ok\ntest_non_implemented_requests_are_never_expected_in_the_log (test_wiki_ingest_drift.DetectionTests.test_non_implemented_requests_are_never_expected_in_the_log) ... ok\ntest_only_work_since_the_last_ingest_is_actionable (test_wiki_ingest_drift.DetectionTests.test_only_work_since_the_last_ingest_is_actionable)\nRaw counting flags pre-wiki history as drift � ~70 items in the hub, ... ok\ntest_reports_implemented_requests_absent_from_the_log (test_wiki_ingest_drift.DetectionTests.test_reports_implemented_requests_absent_from_the_log) ... ok\ntest_it_runs_against_this_repo_and_returns_a_usable_report (test_wiki_ingest_drift.RealRepoTests.test_it_runs_against_this_repo_and_returns_a_usable_report)\nGrounded against real state, but NOT pinned to a specific gap: a test ... ok\ntest_prd_status_omits_it_when_clean (test_wiki_ingest_drift.SurfaceTests.test_prd_status_omits_it_when_clean) ... ok\ntest_prd_status_reports_the_drift (test_wiki_ingest_drift.SurfaceTests.test_prd_status_reports_the_drift) ... ok\ntest_this_repos_wiki_reads_byte_exact (test_wiki_page_contract.HubRepoSmokeTests.test_this_repos_wiki_reads_byte_exact) ... ok\ntest_list_enumerates_canonical_pages_with_titles (test_wiki_page_contract.WikiPageListTests.test_list_enumerates_canonical_pages_with_titles) ... ok\ntest_boundaries_are_hard (test_wiki_page_contract.WikiPageReadTests.test_boundaries_are_hard) ... ok\ntest_drift_remains_the_default_action (test_wiki_page_contract.WikiPageReadTests.test_drift_remains_the_default_action) ... ok\ntest_read_page_without_stamps_reports_null_provenance (test_wiki_page_contract.WikiPageReadTests.test_read_page_without_stamps_reports_null_provenance) ... ok\ntest_read_requires_a_path (test_wiki_page_contract.WikiPageReadTests.test_read_requires_a_path) ... ok\ntest_read_returns_exact_markdown_with_provenance (test_wiki_page_contract.WikiPageReadTests.test_read_returns_exact_markdown_with_provenance) ... ok\ntest_no_cp1252_unencodable_chars_in_agent_facing_tools (test_windows_console_safe.SourceScanTests.test_no_cp1252_unencodable_chars_in_agent_facing_tools) ... ok\ntest_backfill_pending_status_renders_cp1252_safe (test_windows_console_safe.StatusRenderTests.test_backfill_pending_status_renders_cp1252_safe) ... ok\ntest_repository_workflow_surfaces_are_chml_zero (test_workflow_chml_audit.WorkflowChmlAuditTests.test_repository_workflow_surfaces_are_chml_zero) ... ok\ntest_semantic_skill_finding_is_part_of_workflow_chml (test_workflow_chml_audit.WorkflowChmlAuditTests.test_semantic_skill_finding_is_part_of_workflow_chml) ... ok\ntest_git_workflow_pushes_clean_verified_commits_in_autonomous (test_workflow_consistency.AutonomyConflictResolutionTests.test_git_workflow_pushes_clean_verified_commits_in_autonomous) ... ok\ntest_request_intake_defers_autonomy_and_owns_graduation (test_workflow_consistency.AutonomyConflictResolutionTests.test_request_intake_defers_autonomy_and_owns_graduation) ... ok\ntest_evidence_pair_states_create_vs_review_boundary (test_workflow_consistency.BoundaryClarityTests.test_evidence_pair_states_create_vs_review_boundary) ... ok\ntest_session_close_states_memory_boundary (test_workflow_consistency.BoundaryClarityTests.test_session_close_states_memory_boundary) ... ok\ntest_document_branch_has_promotion_owner (test_workflow_consistency.DeadEndOwnerTests.test_document_branch_has_promotion_owner) ... ok\ntest_health_findings_have_triage_dispositions (test_workflow_consistency.DeadEndOwnerTests.test_health_findings_have_triage_dispositions) ... ok\ntest_memory_owns_schema_version_changes (test_workflow_consistency.DeadEndOwnerTests.test_memory_owns_schema_version_changes) ... ok\ntest_planning_lifecycle_has_stage_readiness_checkpoints (test_workflow_consistency.DeadEndOwnerTests.test_planning_lifecycle_has_stage_readiness_checkpoints) ... ok\ntest_session_close_runs_traceability_sync (test_workflow_consistency.DeadEndOwnerTests.test_session_close_runs_traceability_sync) ... ok\n\n----------------------------------------------------------------------\nRan 1194 tests in 406.396s\n\nOK\n",
                "receipt_hash": "a9574aef7cb45d81e44f1e8e0c2d92576fee2e8f68030c2428190789681b2756"
              }
            ],
            "execution_hash": "4da7df3645be2e67651d9efc2283def3bacee98e3a1a7c6394ac663f24d4c0b8"
          },
          "output_hash": "3a839a63ccbaf0d381fa67c6c548420aa9ba4eaee8c0dd9a2ead52623a04307d",
          "completed_at": "2026-07-23T17:55:14Z"
        },
        {
          "id": "diff",
          "action": "git.diff_check",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-23T17:55:14Z",
          "output": {
            "passed": true
          },
          "output_hash": "11c11db30f4b3f6c758722ba3e27eea08145b7d212f6a157451e364b48475280",
          "completed_at": "2026-07-23T17:55:14Z"
        },
        {
          "id": "state",
          "action": "state.consistency",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-23T17:55:14Z",
          "output": {
            "status": "ok",
            "repo_root": "D:\\Projects\\prd-plugin",
            "summary": {
              "errors": 0,
              "warnings": 0,
              "infos": 0
            },
            "findings": []
          },
          "output_hash": "5a1c6e5246defb1b6b6b90ff734db95bece2886b408ab112ed9b8e67222d5568",
          "completed_at": "2026-07-23T17:55:16Z"
        },
        {
          "id": "gate",
          "action": "state.gate",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-23T17:55:16Z",
          "output": {
            "status": "ok",
            "repo_root": "D:\\Projects\\prd-plugin",
            "summary": {
              "errors": 0,
              "warnings": 0
            },
            "findings": []
          },
          "output_hash": "a705b176b049df02348354c23988d51f616670b7352ad410321cbe0577edf053",
          "completed_at": "2026-07-23T17:55:17Z"
        }
      ],
      "completed_at": "2026-07-23T17:55:18Z"
    },
    {
      "id": "WFR-391",
      "schema_version": "1.0",
      "workflow_id": "evidence.record",
      "workflow_version": 1,
      "definition_hash": "a6dfcb8faadb669d5c097a0d7fa9a738f20ee98e03b552c9557259a94a197e88",
      "plan_hash": "cd5d33a164a231280ebf906fafd0a93d47f0e451617ee64896d1e4bcd33098f5",
      "input_hash": "e2a4b7fc90a987f351fb18ee253eb1809f1482f6394a98ff76007461bcd72e4a",
      "inputs": {
        "summary": "Autonomous git workflow now requires pushing a clean verified commit without redundant finish options across all seven host-discovery copies; regression, policy, wiki, release, full-suite, state, and gate checks pass.",
        "type": "validation",
        "linked_ids": [
          "REQ-168",
          "TRK-154"
        ],
        "commands": [
          {
            "command": "targeted autonomous-push regression",
            "outcome": "RED against all stale skill copies before implementation; PASS after all seven copies were updated."
          },
          {
            "command": "python -m unittest tests.test_workflow_consistency tests.test_prd_skill_install tests.test_release_publication_policy tests.test_decision_policy -q",
            "outcome": "PASS: 49 tests."
          },
          {
            "command": "engineering.verify WFR-390",
            "outcome": "PASS: full npm test suite ran 1,194 tests; state consistency and state gate returned zero findings."
          },
          {
            "command": "python -m unittest tests.test_workflow_consistency tests.test_prd_skill_install tests.test_release_publication_policy tests.test_decision_policy tests.test_llm_wiki tests.test_wiki_backfill tests.test_wiki_page_contract -q",
            "outcome": "PASS: 106 scoped policy, skill-delivery, and wiki tests."
          },
          {
            "command": "python scripts/prd_wiki_backfill.py --lint-links --fix --format json",
            "outcome": "PASS: zero unlinked or fixed findings."
          },
          {
            "command": "python scripts/gap_audit.py --target-version 0.16.49",
            "outcome": "PASS: no findings."
          },
          {
            "command": "python scripts/release_check.py",
            "outcome": "PASS: no findings."
          }
        ],
        "limitations": "Normal autonomous push and merge are tier-governed; force-push, secrets, cross-repository edits, and other hard-floor actions still require explicit authority."
      },
      "idempotency_key": "codex-evidence-req-168-20260723",
      "status": "completed",
      "attempt": 1,
      "created_at": "2026-07-23T17:57:24Z",
      "updated_at": "2026-07-23T17:57:24Z",
      "receipts": [
        {
          "step_id": "record",
          "action": "state.mutate",
          "input_hash": "78fa81ec866a015bb5375ea6ae04e89ae3ae02ff12716bc1de9d421ad7cb14d0",
          "output_hash": "33df77d4dcd768528d369d96499760a1da78b113d8948aab0fee578243aeec8b",
          "completed_at": "2026-07-23T17:57:24Z"
        },
        {
          "step_id": "confirm",
          "action": "state.query",
          "input_hash": "0b44844c9d69edf4453ae02301ce471807ec398b700742da3cc6e59942338131",
          "output_hash": "32747da9fef21b2cfc1523e5c776189e4098abdc3aedf8ee89aa92b7344e4996",
          "completed_at": "2026-07-23T17:57:24Z"
        }
      ],
      "steps": [
        {
          "id": "record",
          "action": "state.mutate",
          "status": "completed",
          "resolved_input_hash": "78fa81ec866a015bb5375ea6ae04e89ae3ae02ff12716bc1de9d421ad7cb14d0",
          "started_at": "2026-07-23T17:57:24Z",
          "execution_token": "227172036147dcf01138eed44b4f44b6351884793171176ecab2d180cda08bce",
          "output": {
            "id": "EV-200"
          },
          "output_hash": "33df77d4dcd768528d369d96499760a1da78b113d8948aab0fee578243aeec8b",
          "completed_at": "2026-07-23T17:57:24Z"
        },
        {
          "id": "confirm",
          "action": "state.query",
          "status": "completed",
          "resolved_input_hash": "0b44844c9d69edf4453ae02301ce471807ec398b700742da3cc6e59942338131",
          "started_at": "2026-07-23T17:57:24Z",
          "output": {
            "kind": "EV",
            "record": {
              "id": "EV-200",
              "type": "validation",
              "summary": "Autonomous git workflow now requires pushing a clean verified commit without redundant finish options across all seven host-discovery copies; regression, policy, wiki, release, full-suite, state, and gate checks pass.",
              "linked_ids": [
                "REQ-168",
                "TRK-154"
              ],
              "created_at": "2026-07-23",
              "commands": [
                {
                  "command": "targeted autonomous-push regression",
                  "outcome": "RED against all stale skill copies before implementation; PASS after all seven copies were updated."
                },
                {
                  "command": "python -m unittest tests.test_workflow_consistency tests.test_prd_skill_install tests.test_release_publication_policy tests.test_decision_policy -q",
                  "outcome": "PASS: 49 tests."
                },
                {
                  "command": "engineering.verify WFR-390",
                  "outcome": "PASS: full npm test suite ran 1,194 tests; state consistency and state gate returned zero findings."
                },
                {
                  "command": "python -m unittest tests.test_workflow_consistency tests.test_prd_skill_install tests.test_release_publication_policy tests.test_decision_policy tests.test_llm_wiki tests.test_wiki_backfill tests.test_wiki_page_contract -q",
                  "outcome": "PASS: 106 scoped policy, skill-delivery, and wiki tests."
                },
                {
                  "command": "python scripts/prd_wiki_backfill.py --lint-links --fix --format json",
                  "outcome": "PASS: zero unlinked or fixed findings."
                },
                {
                  "command": "python scripts/gap_audit.py --target-version 0.16.49",
                  "outcome": "PASS: no findings."
                },
                {
                  "command": "python scripts/release_check.py",
                  "outcome": "PASS: no findings."
                }
              ],
              "limitations": "Normal autonomous push and merge are tier-governed; force-push, secrets, cross-repository edits, and other hard-floor actions still require explicit authority."
            }
          },
          "output_hash": "32747da9fef21b2cfc1523e5c776189e4098abdc3aedf8ee89aa92b7344e4996",
          "completed_at": "2026-07-23T17:57:24Z"
        }
      ],
      "completed_at": "2026-07-23T17:57:24Z"
    },
    {
      "id": "WFR-392",
      "schema_version": "1.0",
      "workflow_id": "hub.release",
      "workflow_version": 1,
      "definition_hash": "ab6ae2afcb0128db8d994b6b397e543c7490017bd3d1b15309079edc6be94d9a",
      "plan_hash": "02bcb9cb71ca5641cc12e6270fee67758c0051b183e4204137993cd57b89a7bd",
      "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
      "inputs": {},
      "idempotency_key": "req-169-human-readable-ui-v1",
      "status": "completed",
      "attempt": 1,
      "created_at": "2026-07-24T05:00:29Z",
      "updated_at": "2026-07-24T05:07:36Z",
      "receipts": [
        {
          "step_id": "diff",
          "action": "git.diff_check",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "11c11db30f4b3f6c758722ba3e27eea08145b7d212f6a157451e364b48475280",
          "completed_at": "2026-07-24T05:00:29Z"
        },
        {
          "step_id": "config",
          "action": "config.audit",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "172e2697e5951667d2eafa396cb6a952ff4a8c53ebf5dc228ab999c00692f8d2",
          "completed_at": "2026-07-24T05:00:30Z"
        },
        {
          "step_id": "state",
          "action": "state.consistency",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "9963110856ca8182da0dfdbb22f6960618b55dbc121be0dce0066a7c7a389b10",
          "completed_at": "2026-07-24T05:00:32Z"
        },
        {
          "step_id": "workflow_audit",
          "action": "process.fixed",
          "input_hash": "edf19b269a54d72753f1abc2b8ffcb810c2b7bc377cee7e1698c939f17e0be94",
          "output_hash": "231b43ed70e09c4e7cbcda1094b00e0274dd4a22ff8324da2eb907f705c1316a",
          "completed_at": "2026-07-24T05:00:33Z"
        },
        {
          "step_id": "substrate_audit",
          "action": "process.fixed",
          "input_hash": "4998f71d2d3f6ac7dd50e10d37f60ae32d54898949950e484da9de113e18a979",
          "output_hash": "4176fd7e9d2d33bd61e5fd6bb8d392a63eaa5b2cb65b750eeb348b9dd55fe220",
          "completed_at": "2026-07-24T05:00:33Z"
        },
        {
          "step_id": "suite",
          "action": "process.fixed",
          "input_hash": "954e575e48145853f5681eda189186c95a053267158fae669114320f2e53794a",
          "output_hash": "f88f1db2f50542eec2e576c3ef46be7a445e638ecbe7efcafa234cf014c36f05",
          "completed_at": "2026-07-24T05:07:32Z"
        },
        {
          "step_id": "release",
          "action": "process.fixed",
          "input_hash": "1e5b0c18d93eb4c2248f9a00adbd438e52f3ef02137477fb8376c69cfe86fc9b",
          "output_hash": "547259f5d0ab28825f789eb4dac69e3a7ff74c1fa23517cde7681202cd1e82f6",
          "completed_at": "2026-07-24T05:07:33Z"
        },
        {
          "step_id": "gaps",
          "action": "process.fixed",
          "input_hash": "577241909238eeb55683f89d2d2216648dad2e3127397993e22493829a1307a4",
          "output_hash": "4592ef9e65533ff6d91627a77bcfbd85c1fcfeb85065b33e38a42f51cb3ae240",
          "completed_at": "2026-07-24T05:07:33Z"
        },
        {
          "step_id": "package",
          "action": "process.fixed",
          "input_hash": "06cd12e1f3db3d985f9150520afa60f288297ff0ca01a8e813e9bb6291aa8836",
          "output_hash": "d51b135bc922028919544f3b5cedfa31c550c7ca045a3394e2d67e7d846c41e4",
          "completed_at": "2026-07-24T05:07:35Z"
        },
        {
          "step_id": "gate",
          "action": "state.gate",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "6a0ed3d65779be265214a0e8395ab03978b9f7b91da9ffb59b257b73f82d087d",
          "completed_at": "2026-07-24T05:07:36Z"
        }
      ],
      "steps": [
        {
          "id": "diff",
          "action": "git.diff_check",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-24T05:00:29Z",
          "output": {
            "passed": true
          },
          "output_hash": "11c11db30f4b3f6c758722ba3e27eea08145b7d212f6a157451e364b48475280",
          "completed_at": "2026-07-24T05:00:29Z"
        },
        {
          "id": "config",
          "action": "config.audit",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-24T05:00:30Z",
          "output": {
            "status": "ok",
            "summary": {
              "settings": 209,
              "mutable": 199,
              "read_only_or_managed": 10,
              "unclassified": 0,
              "unknown": 0,
              "invalid": 0,
              "missing_using_defaults": 0
            },
            "unclassified_keys": [],
            "unknown_keys": [],
            "invalid_values": [],
            "missing_using_defaults": []
          },
          "output_hash": "172e2697e5951667d2eafa396cb6a952ff4a8c53ebf5dc228ab999c00692f8d2",
          "completed_at": "2026-07-24T05:00:30Z"
        },
        {
          "id": "state",
          "action": "state.consistency",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-24T05:00:30Z",
          "output": {
            "status": "ok",
            "repo_root": "D:\\Projects\\prd-plugin",
            "summary": {
              "errors": 0,
              "warnings": 0,
              "infos": 1
            },
            "findings": [
              {
                "id": "CONS-INFO-001",
                "severity": "info",
                "path": "docs/evidence/EV-200.md",
                "summary": "File references 2 canonical IDs across 2 prefix(es); treated as a positive signal of extra work.",
                "referenced_prefixes": [
                  "CHG",
                  "TRK"
                ],
                "referenced_id_count": 2,
                "required_action": "No action required; this is an informational signal."
              }
            ]
          },
          "output_hash": "9963110856ca8182da0dfdbb22f6960618b55dbc121be0dce0066a7c7a389b10",
          "completed_at": "2026-07-24T05:00:32Z"
        },
        {
          "id": "workflow_audit",
          "action": "process.fixed",
          "status": "completed",
          "resolved_input_hash": "edf19b269a54d72753f1abc2b8ffcb810c2b7bc377cee7e1698c939f17e0be94",
          "started_at": "2026-07-24T05:00:32Z",
          "output": {
            "operation": "workflow_chml_audit",
            "command": [
              "python",
              "scripts/workflow_chml_audit.py",
              "--repo-root",
              ".",
              "--format",
              "json"
            ],
            "exit_code": 0,
            "stdout": "{\n  \"status\": \"ok\",\n  \"repo_root\": \"D:\\\\Projects\\\\prd-plugin\",\n  \"summary\": {\n    \"critical\": 0,\n    \"high\": 0,\n    \"medium\": 0,\n    \"low\": 0\n  },\n  \"findings\": []\n}\n",
            "stderr": ""
          },
          "output_hash": "231b43ed70e09c4e7cbcda1094b00e0274dd4a22ff8324da2eb907f705c1316a",
          "completed_at": "2026-07-24T05:00:33Z"
        },
        {
          "id": "substrate_audit",
          "action": "process.fixed",
          "status": "completed",
          "resolved_input_hash": "4998f71d2d3f6ac7dd50e10d37f60ae32d54898949950e484da9de113e18a979",
          "started_at": "2026-07-24T05:00:33Z",
          "output": {
            "operation": "substrate_capability_audit",
            "command": [
              "python",
              "scripts/prd_substrate_catalog.py",
              "--repo-root",
              ".",
              "audit"
            ],
            "exit_code": 0,
            "stdout": "{\n  \"status\": \"ok\",\n  \"schema_version\": \"1.0\",\n  \"capability_count\": 26,\n  \"runtime_tool_count\": 103,\n  \"intent_count\": 31,\n  \"summary\": {\n    \"critical\": 0,\n    \"high\": 0,\n    \"medium\": 0,\n    \"low\": 0\n  },\n  \"findings\": []\n}\n",
            "stderr": ""
          },
          "output_hash": "4176fd7e9d2d33bd61e5fd6bb8d392a63eaa5b2cb65b750eeb348b9dd55fe220",
          "completed_at": "2026-07-24T05:00:33Z"
        },
        {
          "id": "suite",
          "action": "process.fixed",
          "status": "completed",
          "resolved_input_hash": "954e575e48145853f5681eda189186c95a053267158fae669114320f2e53794a",
          "started_at": "2026-07-24T05:00:33Z",
          "output": {
            "operation": "local_workflow_check",
            "command": [
              "python",
              "scripts/local_workflow_check.py"
            ],
            "exit_code": 0,
            "stdout": "Structured file validation passed.\n$ python -m unittest discover -s tests -v\n{\n  \"status\": \"fail\",\n  \"repo_root\": \"C:\\\\Users\\\\marku\\\\AppData\\\\Local\\\\Temp\\\\tmpgh9g9ej6\",\n  \"summary\": {\n    \"errors\": 1,\n    \"warnings\": 0\n  },\n  \"findings\": [\n    {\n      \"check\": \"duplicate_id\",\n      \"severity\": \"error\",\n      \"summary\": \"Duplicate id REQ-002 in .prd_plugin/state/requests.json.\",\n      \"required_action\": \"Renumber one record so REQ-002 is unique. Allocate IDs with the MCP tool prd_next_id (or the record tools like prd_open_goal) instead of hand-computing them.\"\n    }\n  ]\n}\nautonomy_level set to guided\nautonomy_level set to autonomous\nDESTRUCTIVE RESET REQUESTED: --force --yes will erase protected PRD Plugin project data.\nThe following existing state/configuration files would be replaced with skeleton defaults:\n  - .prd_plugin/state/tracking.json\nThis may erase IDs, tracking, requests, decisions, health findings, configuration, and session memory.\nFor a normal safe update, remove --yes and run: npx prd-install . --force\nPRD Plugin safe update: preserving existing state/config and refreshing plugin files only. Never add --yes to a routine update; it requests a destructive reset.\nPRD Plugin safe update: preserving existing state/config and refreshing plugin files only. Never add --yes to a routine update; it requests a destructive reset.\nPRD Plugin safe update: preserving existing state/config and refreshing plugin files only. Never add --yes to a routine update; it requests a destructive reset.\nPRD Plugin safe update: preserving existing state/config and refreshing plugin files only. Never add --yes to a routine update; it requests a destructive reset.\nPRD Plugin safe update: preserving existing state/config and refreshing plugin files only. Never add --yes to a routine update; it requests a destructive reset.\nPRD Plugin safe update: preserving existing state/config and refreshing plugin files only. Never add --yes to a routine update; it requests a destructive reset.\nPRD Plugin safe update: preserving existing state/config and refreshing plugin files only. Never add --yes to a routine update; it requests a destructive reset.\nPRD Plugin safe update: preserving existing state/config and refreshing plugin files only. Never add --yes to a routine update; it requests a destructive reset.\nPRD Plugin safe update: preserving existing state/config and refreshing plugin files only. Never add --yes to a routine update; it requests a destructive reset.\nPRD Plugin safe update: preserving existing state/config and refreshing plugin files only. Never add --yes to a routine update; it requests a destructive reset.\nPRD Plugin safe update: preserving existing state/config and refreshing plugin files only. Never add --yes to a routine update; it requests a destructive reset.\nPRD Plugin safe update: preserving existing state/config and refreshing plugin files only. Never add --yes to a routine update; it requests a destructive reset.\nPRD Plugin safe update: preserving existing state/config and refreshing plugin files only. Never add --yes to a routine update; it requests a destructive reset.\nPRD Plugin safe update: preserving existing state/config and refreshing plugin files only. Never add --yes to a routine update; it requests a destructive reset.\nPRD Plugin safe update: preserving existing state/config and refreshing plugin files only. Never add --yes to a routine update; it requests a destructive reset.\nPRD Plugin safe update: preserving existing state/config and refreshing plugin files only. Never add --yes to a routine update; it requests a destructive reset.\n{\n  \"published\": false,\n  \"package\": \"prd-plugin\",\n  \"version\": \"9.9.9\",\n  \"version_seen\": null,\n  \"latest_seen\": null,\n  \"attempts_used\": 1\n}\n{\n  \"published\": true,\n  \"package\": \"prd-plugin\",\n  \"version\": \"1.2.3\",\n  \"version_seen\": \"1.2.3\",\n  \"latest_seen\": \"1.2.3\",\n  \"attempts_used\": 1\n}\n{\"decision\": \"block\", \"reason\": \"Autonomous run-until-done: goal TRK-155 is still active. Continue with the next incomplete step toward it \\u2014 do not stop to ask 'shall I proceed?'. If you genuinely need the user (consent floor: push/merge/publish/secrets, or a real blocker), create the file .prd_plugin/local/autonomy-pause with a one-line reason and then stop; the guard will let you. Otherwise keep going.\"}\n$ python scripts/feature_skill_audit.py --repo-root . --format json\n{\n  \"status\": \"ok\",\n  \"repo_root\": \"D:\\\\Projects\\\\prd-plugin\",\n  \"contract\": \"templates/feature-skill-map.json\",\n  \"feature_count\": 28,\n  \"summary\": {\n    \"critical\": 0,\n    \"high\": 0,\n    \"medium\": 0,\n    \"low\": 0\n  },\n  \"findings\": []\n}\n$ python scripts/gap_audit.py --target-version 0.16.50\n# PRD Plugin Gap Audit\n\nTarget version: `0.16.50`\n\n## Findings\n\n- None\n$ python scripts/version_advice.py --installed-repo . --format json --output request-report/version-advice.json\n$ python scripts/release_check.py --output request-report/release-hygiene.md\n$ python scripts/prd_doctor.py --repo-root . --format json --output request-report/prd-doctor.json\n$ python scripts/state_consistency_check.py --repo-root . --format json --output request-report/state-consistency.json\n$ python scripts/prd_install_skills.py --repo-root . --dry-run\n{\n  \"status\": \"dry_run\",\n  \"target_agent\": \"codex\",\n  \"targets\": [\n    {\n      \"agent\": \"codex\",\n      \"target\": \".agents\\\\skills\",\n      \"would_install\": [\n        \"project-architecture\",\n        \"project-blocker-resolution\",\n        \"project-brainstorm\",\n        \"project-change-request\",\n        \"project-code-review\",\n        \"project-decision-ledger\",\n        \"project-decision-policy\",\n        \"project-deterministic-workflows\",\n        \"project-document-branch\",\n        \"project-evidence\",\n        \"project-evidence-ledger\",\n        \"project-git-workflow\",\n        \"project-health\",\n        \"project-implementation-plan\",\n        \"project-llm-wiki\",\n        \"project-local-integration\",\n        \"project-memory\",\n        \"project-planning-lifecycle\",\n        \"project-prd\",\n        \"project-prd-plugin-setup\",\n        \"project-request-intake\",\n        \"project-session-close\",\n        \"project-systematic-debugging\",\n        \"project-test-driven-implementation\",\n        \"project-traceability-review\",\n        \"project-traceability-sync\",\n        \"project-verification-before-completion\",\n        \"source-command-prd-autonomy\",\n        \"source-command-prd-close\",\n        \"source-command-prd-config\",\n        \"source-command-prd-drift\",\n        \"source-command-prd-graph\",\n        \"source-command-prd-hooks\",\n        \"source-command-prd-new\",\n        \"source-command-prd-off\",\n        \"source-command-prd-on\",\n        \"source-command-prd-reflections\",\n        \"source-command-prd-report\",\n        \"source-command-prd-status\",\n        \"source-command-prd-track\",\n        \"source-command-prd-version\",\n        \"source-command-prd-workflow\"\n      ],\n      \"would_remove\": [\n        \"project-fold-it-in\",\n        \"project-self-audit\"\n      ]\n    }\n  ],\n  \"installed_count\": 0,\n  \"target\": \".agents\\\\skills\",\n  \"installed\": [],\n  \"removed\": [],\n  \"would_install\": [\n    \"project-architecture\",\n    \"project-blocker-resolution\",\n    \"project-brainstorm\",\n    \"project-change-request\",\n    \"project-code-review\",\n    \"project-decision-ledger\",\n    \"project-decision-policy\",\n    \"project-deterministic-workflows\",\n    \"project-document-branch\",\n    \"project-evidence\",\n    \"project-evidence-ledger\",\n    \"project-git-workflow\",\n    \"project-health\",\n    \"project-implementation-plan\",\n    \"project-llm-wiki\",\n    \"project-local-integration\",\n    \"project-memory\",\n    \"project-planning-lifecycle\",\n    \"project-prd\",\n    \"project-prd-plugin-setup\",\n    \"project-request-intake\",\n    \"project-session-close\",\n    \"project-systematic-debugging\",\n    \"project-test-driven-implementation\",\n    \"project-traceability-review\",\n    \"project-traceability-sync\",\n    \"project-verification-before-completion\",\n    \"source-command-prd-autonomy\",\n    \"source-command-prd-close\",\n    \"source-command-prd-config\",\n    \"source-command-prd-drift\",\n    \"source-command-prd-graph\",\n    \"source-command-prd-hooks\",\n    \"source-command-prd-new\",\n    \"source-command-prd-off\",\n    \"source-command-prd-on\",\n    \"source-command-prd-reflections\",\n    \"source-command-prd-report\",\n    \"source-command-prd-status\",\n    \"source-command-prd-track\",\n    \"source-command-prd-version\",\n    \"source-command-prd-workflow\"\n  ],\n  \"would_remove\": [\n    \"project-fold-it-in\",\n    \"project-self-audit\"\n  ]\n}\n$ python scripts/request_report.py --config .prd_plugin/config.json --format markdown --output request-report/request-report.md\n$ python scripts/request_report.py --config .prd_plugin/config.json --format json --output request-report/request-report.json\n$ python scripts/message_check.py --config .prd_plugin/config.json --format json --output request-report/message-check.json\nLocal workflow check completed.\n",
            "stderr": "est_unified_config.MutationTests.test_manual_set_marks_profile_custom_and_preserves_style) ... ok\ntest_scalar_parent_is_not_clobbered_by_nested_set (test_unified_config.MutationTests.test_scalar_parent_is_not_clobbered_by_nested_set) ... ok\ntest_builtin_profile_dry_run_then_atomic_apply (test_unified_config.ProfileTests.test_builtin_profile_dry_run_then_atomic_apply) ... ok\ntest_invalid_custom_profile_never_partially_writes (test_unified_config.ProfileTests.test_invalid_custom_profile_never_partially_writes) ... ok\ntest_save_show_diff_and_delete_custom_profile (test_unified_config.ProfileTests.test_save_show_diff_and_delete_custom_profile) ... ok\ntest_does_not_flag_canonical_prd_state_paths (test_unsubmitted_plugin_request.UnsubmittedPluginRequestTests.test_does_not_flag_canonical_prd_state_paths) ... ok\ntest_does_not_flag_ordinary_project_requests (test_unsubmitted_plugin_request.UnsubmittedPluginRequestTests.test_does_not_flag_ordinary_project_requests) ... ok\ntest_does_not_flag_rejected_requests (test_unsubmitted_plugin_request.UnsubmittedPluginRequestTests.test_does_not_flag_rejected_requests) ... ok\ntest_does_not_flag_when_already_marked_upstream (test_unsubmitted_plugin_request.UnsubmittedPluginRequestTests.test_does_not_flag_when_already_marked_upstream) ... ok\ntest_flags_a_local_request_about_a_plugin_script (test_unsubmitted_plugin_request.UnsubmittedPluginRequestTests.test_flags_a_local_request_about_a_plugin_script) ... ok\ntest_flags_a_request_that_names_itself_upstream (test_unsubmitted_plugin_request.UnsubmittedPluginRequestTests.test_flags_a_request_that_names_itself_upstream) ... ok\ntest_never_fires_in_the_hub_repo_itself (test_unsubmitted_plugin_request.UnsubmittedPluginRequestTests.test_never_fires_in_the_hub_repo_itself) ... ok\ntest_wired_into_run_checks (test_unsubmitted_plugin_request.UnsubmittedPluginRequestTests.test_wired_into_run_checks) ... ok\ntest_output_writes_lf_and_a_trailing_newline (test_utcp_first_authority.GeneratedArtifactsAreByteStableTests.test_output_writes_lf_and_a_trailing_newline) ... ok\ntest_the_committed_manual_matches_a_fresh_generation (test_utcp_first_authority.GeneratedArtifactsAreByteStableTests.test_the_committed_manual_matches_a_fresh_generation) ... ok\ntest_every_spec_tool_maps_to_a_catalog_capability (test_utcp_first_authority.ParityDirectionTests.test_every_spec_tool_maps_to_a_catalog_capability) ... ok\ntest_server_metadata_matches_the_spec (test_utcp_first_authority.ParityDirectionTests.test_server_metadata_matches_the_spec) ... ok\ntest_python_entry_points_share_the_same_lock (test_utcp_first_authority.SafetyUnchangedTests.test_python_entry_points_share_the_same_lock)\nThe migration target already exists and is proven: prd_reflections ... ok\ntest_the_state_lock_is_still_held_for_mutations (test_utcp_first_authority.SafetyUnchangedTests.test_the_state_lock_is_still_held_for_mutations) ... ok\ntest_no_shipped_tool_metadata_carries_mojibake (test_utcp_first_authority.ShippedTextIsCleanTests.test_no_shipped_tool_metadata_carries_mojibake) ... ok\ntest_shipped_tool_metadata_is_valid_utf8 (test_utcp_first_authority.ShippedTextIsCleanTests.test_shipped_tool_metadata_is_valid_utf8)\nA file written through a cp1252 layer either fails to decode or ... ok\ntest_each_tool_declares_name_description_and_schema (test_utcp_first_authority.SpecIsTheSourceTests.test_each_tool_declares_name_description_and_schema) ... ok\ntest_the_manual_is_generated_from_the_spec_not_the_server (test_utcp_first_authority.SpecIsTheSourceTests.test_the_manual_is_generated_from_the_spec_not_the_server) ... ok\ntest_the_server_no_longer_authors_descriptions (test_utcp_first_authority.SpecIsTheSourceTests.test_the_server_no_longer_authors_descriptions)\nserver.cjs must READ definitions, not declare them. While a tool ... ok\ntest_the_spec_exists_and_declares_every_tool (test_utcp_first_authority.SpecIsTheSourceTests.test_the_spec_exists_and_declares_every_tool) ... ok\ntest_official_bridge_round_trips_cli_and_mcp_templates (test_utcp_first_catalog.BridgeParityTests.test_official_bridge_round_trips_cli_and_mcp_templates) ... C:\\Users\\marku\\AppData\\Local\\Python\\pythoncore-3.14-64\\Lib\\subprocess.py:1139: ResourceWarning: subprocess 41096 is still running\n  _warn(\"subprocess %s is still running\" % self.pid,\nResourceWarning: Enable tracemalloc to get the object allocation traceback\nC:\\Users\\marku\\AppData\\Local\\Python\\pythoncore-3.14-64\\Lib\\unittest\\case.py:615: ResourceWarning: unclosed file <_io.TextIOWrapper name=5 encoding='utf-8'>\n  result = method()\nResourceWarning: Enable tracemalloc to get the object allocation traceback\nC:\\Users\\marku\\AppData\\Local\\Python\\pythoncore-3.14-64\\Lib\\unittest\\case.py:615: ResourceWarning: unclosed file <_io.TextIOWrapper name=4 encoding='utf-8'>\n  result = method()\nResourceWarning: Enable tracemalloc to get the object allocation traceback\nok\ntest_bridged_entries_reuse_server_metadata_verbatim (test_utcp_first_catalog.GeneratedProjectionTests.test_bridged_entries_reuse_server_metadata_verbatim)\nEach bridged manual entry's description and inputs equal the server's ... ok\ntest_checked_in_metadata_matches_live_server (test_utcp_first_catalog.GeneratedProjectionTests.test_checked_in_metadata_matches_live_server)\nThe pinned metadata projection cannot drift behind the live server. ... ok\ntest_mutations_keep_the_validated_handler_path (test_utcp_first_catalog.GuardedMutationTests.test_mutations_keep_the_validated_handler_path)\nEvery manual tool in a non-read capability calls the plugin state ... ok\ntest_read_only_cli_tools_stay_cli (test_utcp_first_catalog.GuardedMutationTests.test_read_only_cli_tools_stay_cli)\nThe 12 cli-native observe/recall tools keep their cli templates. ... ok\ntest_checked_in_metadata_projection_exists (test_utcp_first_catalog.ManualCompletenessTests.test_checked_in_metadata_projection_exists)\nThe server's tool metadata is a checked-in generated artifact so the ... ok\ntest_manual_covers_every_capability_on_both_transports (test_utcp_first_catalog.ManualCompletenessTests.test_manual_covers_every_capability_on_both_transports)\nEvery UTCP and MCP registration in the tool-surface catalog appears ... ok\ntest_appends_version_change_request (test_version_advice.VersionAdviceTests.test_appends_version_change_request) ... ok\ntest_builds_safe_update_advice_for_low_risk_releases (test_version_advice.VersionAdviceTests.test_builds_safe_update_advice_for_low_risk_releases) ... ok\ntest_cli_uses_hub_releases_when_downstream_repo_has_no_releases_file (test_version_advice.VersionAdviceTests.test_cli_uses_hub_releases_when_downstream_repo_has_no_releases_file) ... ok\ntest_detects_installed_version_from_bom_json (test_version_advice.VersionAdviceTests.test_detects_installed_version_from_bom_json) ... ok\ntest_detects_installed_version_from_opencode_plugin_manifest (test_version_advice.VersionAdviceTests.test_detects_installed_version_from_opencode_plugin_manifest) ... ok\ntest_detects_installed_version_from_prd_plugin_config (test_version_advice.VersionAdviceTests.test_detects_installed_version_from_prd_plugin_config) ... ok\ntest_detects_latest_version_from_plugin_manifest (test_version_advice.VersionAdviceTests.test_detects_latest_version_from_plugin_manifest) ... ok\ntest_installed_version_priority_prefers_config_then_codex_then_opencode (test_version_advice.VersionAdviceTests.test_installed_version_priority_prefers_config_then_codex_then_opencode) ... ok\ntest_orders_prerelease_before_final_release (test_version_advice.VersionAdviceTests.test_orders_prerelease_before_final_release) ... ok\ntest_recommends_review_first_for_medium_or_high_risk_release (test_version_advice.VersionAdviceTests.test_recommends_review_first_for_medium_or_high_risk_release) ... ok\ntest_disabled_returns_disabled_and_no_fetch (test_version_check.CheckTests.test_disabled_returns_disabled_and_no_fetch) ... ok\ntest_force_refetches_within_ttl (test_version_check.CheckTests.test_force_refetches_within_ttl) ... ok\ntest_network_failure_is_fail_open (test_version_check.CheckTests.test_network_failure_is_fail_open) ... ok\ntest_no_update_when_current (test_version_check.CheckTests.test_no_update_when_current) ... ok\ntest_status_is_cache_only_no_fetch (test_version_check.CheckTests.test_status_is_cache_only_no_fetch) ... ok\ntest_ttl_cache_avoids_refetch (test_version_check.CheckTests.test_ttl_cache_avoids_refetch) ... ok\ntest_ttl_expiry_refetches (test_version_check.CheckTests.test_ttl_expiry_refetches) ... ok\ntest_update_available_when_npm_is_ahead (test_version_check.CheckTests.test_update_available_when_npm_is_ahead) ... ok\ntest_status_cli_exits_zero (test_version_check.CliTests.test_status_cli_exits_zero) ... ok\ntest_default_ttl_is_responsive_not_a_day (test_version_check.FreshnessTests.test_default_ttl_is_responsive_not_a_day) ... ok\ntest_fetch_latest_accepts_a_timeout (test_version_check.FreshnessTests.test_fetch_latest_accepts_a_timeout) ... ok\ntest_nudge_refreshes_in_session_not_cache_only (test_version_check.FreshnessTests.test_nudge_refreshes_in_session_not_cache_only) ... ok\ntest_registry_default_ttl_matches (test_version_check.FreshnessTests.test_registry_default_ttl_matches) ... ok\ntest_semver_ordering (test_version_check.ParseTests.test_semver_ordering) ... ok\ntest_set_enabled_writes_config (test_version_check.ToggleTests.test_set_enabled_writes_config) ... ok\ntest_config_has_version_check_default_on (test_version_check.WiringTests.test_config_has_version_check_default_on) ... ok\ntest_nudge_surfaces_update_available (test_version_check.WiringTests.test_nudge_surfaces_update_available) ... ok\ntest_prd_version_command_exists (test_version_check.WiringTests.test_prd_version_command_exists) ... ok\ntest_script_registered_downstream (test_version_check.WiringTests.test_script_registered_downstream) ... ok\ntest_plan_cli_emits_json (test_wiki_backfill.CliTests.test_plan_cli_emits_json) ... ok\ntest_status_cli (test_wiki_backfill.CliTests.test_status_cli) ... ok\ntest_marker_written_for_established_repo_gaining_wiki (test_wiki_backfill.InstallerMarkerTests.test_marker_written_for_established_repo_gaining_wiki) ... ok\ntest_no_marker_for_empty_scaffold (test_wiki_backfill.InstallerMarkerTests.test_no_marker_for_empty_scaffold) ... ok\ntest_no_marker_when_wiki_already_exists (test_wiki_backfill.InstallerMarkerTests.test_no_marker_when_wiki_already_exists) ... ok\ntest_no_marker_when_wiki_disabled (test_wiki_backfill.InstallerMarkerTests.test_no_marker_when_wiki_disabled) ... ok\ntest_pending_false_when_absent (test_wiki_backfill.StatusTests.test_pending_false_when_absent) ... ok\ntest_pending_false_when_wiki_already_exists (test_wiki_backfill.StatusTests.test_pending_false_when_wiki_already_exists) ... ok\ntest_pending_true_when_marker_present (test_wiki_backfill.StatusTests.test_pending_true_when_marker_present) ... ok\ntest_plan_excludes_generated_report_artifacts (test_wiki_backfill.SurveyPlanTests.test_plan_excludes_generated_report_artifacts)\nrequest-report/ (incl. its calibration report trees) and docs/evidence/ ... ok\ntest_plan_excludes_plugin_and_vendor_noise (test_wiki_backfill.SurveyPlanTests.test_plan_excludes_plugin_and_vendor_noise) ... ok\ntest_plan_inventories_code_docs_and_state (test_wiki_backfill.SurveyPlanTests.test_plan_inventories_code_docs_and_state) ... ok\ntest_plan_is_read_only (test_wiki_backfill.SurveyPlanTests.test_plan_is_read_only) ... ok\ntest_wiki_drift_in_on_stop_and_default_sets (test_wiki_backfill.WikiDriftMonitorWiringTests.test_wiki_drift_in_on_stop_and_default_sets) ... ok\ntest_current_article_no_drift (test_wiki_backfill.WikiDriftTests.test_current_article_no_drift) ... ok\ntest_drift_cli (test_wiki_backfill.WikiDriftTests.test_drift_cli) ... ok\ntest_far_behind_article_flagged (test_wiki_backfill.WikiDriftTests.test_far_behind_article_flagged) ... ok\ntest_no_wiki_is_ok (test_wiki_backfill.WikiDriftTests.test_no_wiki_is_ok) ... ok\ntest_unlinked_markdown_reference_is_part_of_wiki_drift (test_wiki_backfill.WikiDriftTests.test_unlinked_markdown_reference_is_part_of_wiki_drift) ... ok\ntest_unstamped_article_flagged (test_wiki_backfill.WikiDriftTests.test_unstamped_article_flagged) ... ok\ntest_wiki_drift_uses_configured_wiki_directory (test_wiki_backfill.WikiDriftTests.test_wiki_drift_uses_configured_wiki_directory) ... ok\ntest_ambiguous_reference_is_reported_but_never_guessed (test_wiki_backfill.WikiInlineMarkdownLinkTests.test_ambiguous_reference_is_reported_but_never_guessed) ... ok\ntest_cli_check_fails_and_fix_then_passes (test_wiki_backfill.WikiInlineMarkdownLinkTests.test_cli_check_fails_and_fix_then_passes) ... ok\ntest_existing_inline_links_and_fenced_examples_are_not_findings (test_wiki_backfill.WikiInlineMarkdownLinkTests.test_existing_inline_links_and_fenced_examples_are_not_findings) ... ok\ntest_fix_rewrites_only_unambiguous_references_to_relative_inline_links (test_wiki_backfill.WikiInlineMarkdownLinkTests.test_fix_rewrites_only_unambiguous_references_to_relative_inline_links) ... ok\ntest_reports_resolvable_bare_and_code_wrapped_markdown_references (test_wiki_backfill.WikiInlineMarkdownLinkTests.test_reports_resolvable_bare_and_code_wrapped_markdown_references) ... ok\ntest_nudge_surfaces_pending_backfill (test_wiki_backfill.WiringTests.test_nudge_surfaces_pending_backfill) ... ok\ntest_script_registered_downstream (test_wiki_backfill.WiringTests.test_script_registered_downstream) ... ok\ntest_skill_has_backfill_mode (test_wiki_backfill.WiringTests.test_skill_has_backfill_mode) ... ok\ntest_copy_and_download_controls_are_wired (test_wiki_html_export.WikiHtmlExportTests.test_copy_and_download_controls_are_wired) ... ok\ntest_default_output_lands_in_the_local_runtime_dir (test_wiki_html_export.WikiHtmlExportTests.test_default_output_lands_in_the_local_runtime_dir) ... ok\ntest_every_page_is_embedded_with_exact_markdown (test_wiki_html_export.WikiHtmlExportTests.test_every_page_is_embedded_with_exact_markdown) ... ok\ntest_export_all_generates_viewers_and_super_index (test_wiki_html_export.WikiHtmlExportTests.test_export_all_generates_viewers_and_super_index) ... ok\ntest_export_is_one_self_contained_offline_file (test_wiki_html_export.WikiHtmlExportTests.test_export_is_one_self_contained_offline_file) ... ok\ntest_guest_repo_viewer_is_hosted_by_the_host_repo (test_wiki_html_export.WikiHtmlExportTests.test_guest_repo_viewer_is_hosted_by_the_host_repo)\nA repo without .prd_plugin gets NO new files in its own tree; its ... ok\ntest_hub_repo_exports_all_pages (test_wiki_html_export.WikiHtmlExportTests.test_hub_repo_exports_all_pages) ... ok\ntest_parse_wiki_log_extracts_dated_entries_with_bodies (test_wiki_html_export.WikiHtmlExportTests.test_parse_wiki_log_extracts_dated_entries_with_bodies)\nREQ-112: every workspace log follows '## [date] mode | text'. ... ok\ntest_parse_wiki_log_tolerates_missing_log (test_wiki_html_export.WikiHtmlExportTests.test_parse_wiki_log_tolerates_missing_log) ... ok\ntest_script_content_cannot_break_the_payload (test_wiki_html_export.WikiHtmlExportTests.test_script_content_cannot_break_the_payload) ... ok\ntest_super_index_has_a_combined_changelog (test_wiki_html_export.WikiHtmlExportTests.test_super_index_has_a_combined_changelog) ... ok\ntest_super_index_reports_page_counts (test_wiki_html_export.WikiHtmlExportTests.test_super_index_reports_page_counts) ... ok\ntest_workspace_discovery_uses_the_wiki_convention_marker (test_wiki_html_export.WikiHtmlExportTests.test_workspace_discovery_uses_the_wiki_convention_marker)\nREQ-110 + REQ-111: any immediate child whose wiki follows the ... ok\ntest_a_repo_without_a_wiki_is_not_in_drift (test_wiki_ingest_drift.DetectionTests.test_a_repo_without_a_wiki_is_not_in_drift)\nNo wiki is a legitimate state, not a failure to ingest. ... ok\ntest_fully_ingested_repo_is_clean (test_wiki_ingest_drift.DetectionTests.test_fully_ingested_repo_is_clean) ... ok\ntest_malformed_state_degrades_rather_than_raising (test_wiki_ingest_drift.DetectionTests.test_malformed_state_degrades_rather_than_raising) ... ok\ntest_non_implemented_requests_are_never_expected_in_the_log (test_wiki_ingest_drift.DetectionTests.test_non_implemented_requests_are_never_expected_in_the_log) ... ok\ntest_only_work_since_the_last_ingest_is_actionable (test_wiki_ingest_drift.DetectionTests.test_only_work_since_the_last_ingest_is_actionable)\nRaw counting flags pre-wiki history as drift � ~70 items in the hub, ... ok\ntest_reports_implemented_requests_absent_from_the_log (test_wiki_ingest_drift.DetectionTests.test_reports_implemented_requests_absent_from_the_log) ... ok\ntest_it_runs_against_this_repo_and_returns_a_usable_report (test_wiki_ingest_drift.RealRepoTests.test_it_runs_against_this_repo_and_returns_a_usable_report)\nGrounded against real state, but NOT pinned to a specific gap: a test ... ok\ntest_prd_status_omits_it_when_clean (test_wiki_ingest_drift.SurfaceTests.test_prd_status_omits_it_when_clean) ... ok\ntest_prd_status_reports_the_drift (test_wiki_ingest_drift.SurfaceTests.test_prd_status_reports_the_drift) ... ok\ntest_this_repos_wiki_reads_byte_exact (test_wiki_page_contract.HubRepoSmokeTests.test_this_repos_wiki_reads_byte_exact) ... ok\ntest_list_enumerates_canonical_pages_with_titles (test_wiki_page_contract.WikiPageListTests.test_list_enumerates_canonical_pages_with_titles) ... ok\ntest_boundaries_are_hard (test_wiki_page_contract.WikiPageReadTests.test_boundaries_are_hard) ... ok\ntest_drift_remains_the_default_action (test_wiki_page_contract.WikiPageReadTests.test_drift_remains_the_default_action) ... ok\ntest_read_page_without_stamps_reports_null_provenance (test_wiki_page_contract.WikiPageReadTests.test_read_page_without_stamps_reports_null_provenance) ... ok\ntest_read_requires_a_path (test_wiki_page_contract.WikiPageReadTests.test_read_requires_a_path) ... ok\ntest_read_returns_exact_markdown_with_provenance (test_wiki_page_contract.WikiPageReadTests.test_read_returns_exact_markdown_with_provenance) ... ok\ntest_no_cp1252_unencodable_chars_in_agent_facing_tools (test_windows_console_safe.SourceScanTests.test_no_cp1252_unencodable_chars_in_agent_facing_tools) ... ok\ntest_backfill_pending_status_renders_cp1252_safe (test_windows_console_safe.StatusRenderTests.test_backfill_pending_status_renders_cp1252_safe) ... ok\ntest_repository_workflow_surfaces_are_chml_zero (test_workflow_chml_audit.WorkflowChmlAuditTests.test_repository_workflow_surfaces_are_chml_zero) ... ok\ntest_semantic_skill_finding_is_part_of_workflow_chml (test_workflow_chml_audit.WorkflowChmlAuditTests.test_semantic_skill_finding_is_part_of_workflow_chml) ... ok\ntest_git_workflow_pushes_clean_verified_commits_in_autonomous (test_workflow_consistency.AutonomyConflictResolutionTests.test_git_workflow_pushes_clean_verified_commits_in_autonomous) ... ok\ntest_request_intake_defers_autonomy_and_owns_graduation (test_workflow_consistency.AutonomyConflictResolutionTests.test_request_intake_defers_autonomy_and_owns_graduation) ... ok\ntest_evidence_pair_states_create_vs_review_boundary (test_workflow_consistency.BoundaryClarityTests.test_evidence_pair_states_create_vs_review_boundary) ... ok\ntest_session_close_states_memory_boundary (test_workflow_consistency.BoundaryClarityTests.test_session_close_states_memory_boundary) ... ok\ntest_document_branch_has_promotion_owner (test_workflow_consistency.DeadEndOwnerTests.test_document_branch_has_promotion_owner) ... ok\ntest_health_findings_have_triage_dispositions (test_workflow_consistency.DeadEndOwnerTests.test_health_findings_have_triage_dispositions) ... ok\ntest_memory_owns_schema_version_changes (test_workflow_consistency.DeadEndOwnerTests.test_memory_owns_schema_version_changes) ... ok\ntest_planning_lifecycle_has_stage_readiness_checkpoints (test_workflow_consistency.DeadEndOwnerTests.test_planning_lifecycle_has_stage_readiness_checkpoints) ... ok\ntest_session_close_runs_traceability_sync (test_workflow_consistency.DeadEndOwnerTests.test_session_close_runs_traceability_sync) ... ok\n\n----------------------------------------------------------------------\nRan 1194 tests in 414.869s\n\nOK\n"
          },
          "output_hash": "f88f1db2f50542eec2e576c3ef46be7a445e638ecbe7efcafa234cf014c36f05",
          "completed_at": "2026-07-24T05:07:32Z"
        },
        {
          "id": "release",
          "action": "process.fixed",
          "status": "completed",
          "resolved_input_hash": "1e5b0c18d93eb4c2248f9a00adbd438e52f3ef02137477fb8376c69cfe86fc9b",
          "started_at": "2026-07-24T05:07:32Z",
          "output": {
            "operation": "release_check",
            "command": [
              "python",
              "scripts/release_check.py"
            ],
            "exit_code": 0,
            "stdout": "# Release Hygiene Report\n\nBase version: `0.16.46`\nHead version: `0.16.50`\nChanged files checked: 58\n\n## Findings\n\n- None\n",
            "stderr": ""
          },
          "output_hash": "547259f5d0ab28825f789eb4dac69e3a7ff74c1fa23517cde7681202cd1e82f6",
          "completed_at": "2026-07-24T05:07:33Z"
        },
        {
          "id": "gaps",
          "action": "process.fixed",
          "status": "completed",
          "resolved_input_hash": "577241909238eeb55683f89d2d2216648dad2e3127397993e22493829a1307a4",
          "started_at": "2026-07-24T05:07:33Z",
          "output": {
            "operation": "gap_audit",
            "command": [
              "python",
              "scripts/gap_audit.py",
              "--target-version",
              "0.16.50",
              "--config",
              ".prd_plugin/config.json",
              "--releases",
              ".prd_plugin/state/releases.json"
            ],
            "exit_code": 0,
            "stdout": "# PRD Plugin Gap Audit\n\nTarget version: `0.16.50`\n\n## Findings\n\n- None\n",
            "stderr": ""
          },
          "output_hash": "4592ef9e65533ff6d91627a77bcfbd85c1fcfeb85065b33e38a42f51cb3ae240",
          "completed_at": "2026-07-24T05:07:33Z"
        },
        {
          "id": "package",
          "action": "process.fixed",
          "status": "completed",
          "resolved_input_hash": "06cd12e1f3db3d985f9150520afa60f288297ff0ca01a8e813e9bb6291aa8836",
          "started_at": "2026-07-24T05:07:33Z",
          "output": {
            "operation": "package_check",
            "command": [
              "npm",
              "pack",
              "--dry-run"
            ],
            "exit_code": 0,
            "stdout": "prd-plugin-0.16.50.tgz\n",
            "stderr": "17B templates/repo-skeleton/.agents/skills/project-llm-wiki/references/raw-template.md\nnpm notice 17.0kB templates/repo-skeleton/.agents/skills/project-llm-wiki/SKILL.md\nnpm notice 7.4kB templates/repo-skeleton/.agents/skills/project-local-integration/SKILL.md\nnpm notice 8.1kB templates/repo-skeleton/.agents/skills/project-memory/SKILL.md\nnpm notice 6.2kB templates/repo-skeleton/.agents/skills/project-planning-lifecycle/SKILL.md\nnpm notice 6.0kB templates/repo-skeleton/.agents/skills/project-prd-plugin-setup/SKILL.md\nnpm notice 3.5kB templates/repo-skeleton/.agents/skills/project-prd/SKILL.md\nnpm notice 27.5kB templates/repo-skeleton/.agents/skills/project-request-intake/SKILL.md\nnpm notice 4.8kB templates/repo-skeleton/.agents/skills/project-session-close/SKILL.md\nnpm notice 10.3kB templates/repo-skeleton/.agents/skills/project-systematic-debugging/SKILL.md\nnpm notice 4.8kB templates/repo-skeleton/.agents/skills/project-test-driven-implementation/SKILL.md\nnpm notice 3.7kB templates/repo-skeleton/.agents/skills/project-traceability-review/SKILL.md\nnpm notice 2.5kB templates/repo-skeleton/.agents/skills/project-traceability-sync/SKILL.md\nnpm notice 6.6kB templates/repo-skeleton/.agents/skills/project-verification-before-completion/SKILL.md\nnpm notice 1.5kB templates/repo-skeleton/.agents/skills/source-command-prd-autonomy/SKILL.md\nnpm notice 1.2kB templates/repo-skeleton/.agents/skills/source-command-prd-close/SKILL.md\nnpm notice 3.3kB templates/repo-skeleton/.agents/skills/source-command-prd-config/SKILL.md\nnpm notice 2.4kB templates/repo-skeleton/.agents/skills/source-command-prd-drift/SKILL.md\nnpm notice 2.1kB templates/repo-skeleton/.agents/skills/source-command-prd-graph/SKILL.md\nnpm notice 2.2kB templates/repo-skeleton/.agents/skills/source-command-prd-hooks/SKILL.md\nnpm notice 1.3kB templates/repo-skeleton/.agents/skills/source-command-prd-new/SKILL.md\nnpm notice 2.0kB templates/repo-skeleton/.agents/skills/source-command-prd-off/SKILL.md\nnpm notice 1.5kB templates/repo-skeleton/.agents/skills/source-command-prd-on/SKILL.md\nnpm notice 2.3kB templates/repo-skeleton/.agents/skills/source-command-prd-reflections/SKILL.md\nnpm notice 2.5kB templates/repo-skeleton/.agents/skills/source-command-prd-report/SKILL.md\nnpm notice 1.2kB templates/repo-skeleton/.agents/skills/source-command-prd-status/SKILL.md\nnpm notice 1.7kB templates/repo-skeleton/.agents/skills/source-command-prd-track/SKILL.md\nnpm notice 1.8kB templates/repo-skeleton/.agents/skills/source-command-prd-version/SKILL.md\nnpm notice 1.7kB templates/repo-skeleton/.agents/skills/source-command-prd-workflow/SKILL.md\nnpm notice 872B templates/repo-skeleton/.claude-plugin/plugin.json\nnpm notice 772B templates/repo-skeleton/.claude/commands/prd-autonomy.md\nnpm notice 493B templates/repo-skeleton/.claude/commands/prd-close.md\nnpm notice 2.5kB templates/repo-skeleton/.claude/commands/prd-config.md\nnpm notice 1.6kB templates/repo-skeleton/.claude/commands/prd-drift.md\nnpm notice 1.4kB templates/repo-skeleton/.claude/commands/prd-graph.md\nnpm notice 1.6kB templates/repo-skeleton/.claude/commands/prd-hooks.md\nnpm notice 639B templates/repo-skeleton/.claude/commands/prd-new.md\nnpm notice 1.4kB templates/repo-skeleton/.claude/commands/prd-off.md\nnpm notice 862B templates/repo-skeleton/.claude/commands/prd-on.md\nnpm notice 1.6kB templates/repo-skeleton/.claude/commands/prd-reflections.md\nnpm notice 1.8kB templates/repo-skeleton/.claude/commands/prd-report.md\nnpm notice 549B templates/repo-skeleton/.claude/commands/prd-status.md\nnpm notice 974B templates/repo-skeleton/.claude/commands/prd-track.md\nnpm notice 1.0kB templates/repo-skeleton/.claude/commands/prd-version.md\nnpm notice 938B templates/repo-skeleton/.claude/commands/prd-workflow.md\nnpm notice 1.6kB templates/repo-skeleton/.claude/hooks/prd_drift_check.py\nnpm notice 2.0kB templates/repo-skeleton/.claude/hooks/prd_log_skill.py\nnpm notice 4.1kB templates/repo-skeleton/.claude/hooks/prd_nudge.py\nnpm notice 3.7kB templates/repo-skeleton/.claude/hooks/prd_precommit_gate.py\nnpm notice 6.1kB templates/repo-skeleton/.claude/hooks/prd_reflection.py\nnpm notice 3.5kB templates/repo-skeleton/.claude/hooks/prd_session_report.py\nnpm notice 15.8kB templates/repo-skeleton/.claude/hooks/prd_stop_guard.py\nnpm notice 1.3kB templates/repo-skeleton/.claude/settings.json\nnpm notice 3.0kB templates/repo-skeleton/.claude/skills/project-architecture/SKILL.md\nnpm notice 7.4kB templates/repo-skeleton/.claude/skills/project-blocker-resolution/SKILL.md\nnpm notice 2.8kB templates/repo-skeleton/.claude/skills/project-brainstorm/SKILL.md\nnpm notice 5.5kB templates/repo-skeleton/.claude/skills/project-change-request/SKILL.md\nnpm notice 6.3kB templates/repo-skeleton/.claude/skills/project-code-review/SKILL.md\nnpm notice 2.7kB templates/repo-skeleton/.claude/skills/project-decision-ledger/SKILL.md\nnpm notice 23.6kB templates/repo-skeleton/.claude/skills/project-decision-policy/SKILL.md\nnpm notice 4.4kB templates/repo-skeleton/.claude/skills/project-deterministic-workflows/SKILL.md\nnpm notice 5.2kB templates/repo-skeleton/.claude/skills/project-document-branch/SKILL.md\nnpm notice 2.8kB templates/repo-skeleton/.claude/skills/project-evidence-ledger/SKILL.md\nnpm notice 3.3kB templates/repo-skeleton/.claude/skills/project-evidence/SKILL.md\nnpm notice 11.9kB templates/repo-skeleton/.claude/skills/project-git-workflow/SKILL.md\nnpm notice 7.4kB templates/repo-skeleton/.claude/skills/project-health/SKILL.md\nnpm notice 6.0kB templates/repo-skeleton/.claude/skills/project-implementation-plan/SKILL.md\nnpm notice 1.1kB templates/repo-skeleton/.claude/skills/project-llm-wiki/LICENSE\nnpm notice 842B templates/repo-skeleton/.claude/skills/project-llm-wiki/references/archive-template.md\nnpm notice 843B templates/repo-skeleton/.claude/skills/project-llm-wiki/references/article-template.md\nnpm notice 559B templates/repo-skeleton/.claude/skills/project-llm-wiki/references/index-template.md\nnpm notice 317B templates/repo-skeleton/.claude/skills/project-llm-wiki/references/raw-template.md\nnpm notice 17.0kB templates/repo-skeleton/.claude/skills/project-llm-wiki/SKILL.md\nnpm notice 7.4kB templates/repo-skeleton/.claude/skills/project-local-integration/SKILL.md\nnpm notice 8.1kB templates/repo-skeleton/.claude/skills/project-memory/SKILL.md\nnpm notice 6.2kB templates/repo-skeleton/.claude/skills/project-planning-lifecycle/SKILL.md\nnpm notice 6.0kB templates/repo-skeleton/.claude/skills/project-prd-plugin-setup/SKILL.md\nnpm notice 3.5kB templates/repo-skeleton/.claude/skills/project-prd/SKILL.md\nnpm notice 27.5kB templates/repo-skeleton/.claude/skills/project-request-intake/SKILL.md\nnpm notice 4.8kB templates/repo-skeleton/.claude/skills/project-session-close/SKILL.md\nnpm notice 10.3kB templates/repo-skeleton/.claude/skills/project-systematic-debugging/SKILL.md\nnpm notice 4.8kB templates/repo-skeleton/.claude/skills/project-test-driven-implementation/SKILL.md\nnpm notice 3.7kB templates/repo-skeleton/.claude/skills/project-traceability-review/SKILL.md\nnpm notice 2.5kB templates/repo-skeleton/.claude/skills/project-traceability-sync/SKILL.md\nnpm notice 6.6kB templates/repo-skeleton/.claude/skills/project-verification-before-completion/SKILL.md\nnpm notice 1.5kB templates/repo-skeleton/.claude/skills/source-command-prd-autonomy/SKILL.md\nnpm notice 1.2kB templates/repo-skeleton/.claude/skills/source-command-prd-close/SKILL.md\nnpm notice 3.3kB templates/repo-skeleton/.claude/skills/source-command-prd-config/SKILL.md\nnpm notice 2.4kB templates/repo-skeleton/.claude/skills/source-command-prd-drift/SKILL.md\nnpm notice 2.1kB templates/repo-skeleton/.claude/skills/source-command-prd-graph/SKILL.md\nnpm notice 2.2kB templates/repo-skeleton/.claude/skills/source-command-prd-hooks/SKILL.md\nnpm notice 1.3kB templates/repo-skeleton/.claude/skills/source-command-prd-new/SKILL.md\nnpm notice 2.0kB templates/repo-skeleton/.claude/skills/source-command-prd-off/SKILL.md\nnpm notice 1.5kB templates/repo-skeleton/.claude/skills/source-command-prd-on/SKILL.md\nnpm notice 2.3kB templates/repo-skeleton/.claude/skills/source-command-prd-reflections/SKILL.md\nnpm notice 2.5kB templates/repo-skeleton/.claude/skills/source-command-prd-report/SKILL.md\nnpm notice 1.2kB templates/repo-skeleton/.claude/skills/source-command-prd-status/SKILL.md\nnpm notice 1.7kB templates/repo-skeleton/.claude/skills/source-command-prd-track/SKILL.md\nnpm notice 1.8kB templates/repo-skeleton/.claude/skills/source-command-prd-version/SKILL.md\nnpm notice 1.7kB templates/repo-skeleton/.claude/skills/source-command-prd-workflow/SKILL.md\nnpm notice 3.2kB templates/repo-skeleton/.codex-plugin/plugin.json\nnpm notice 3.2kB templates/repo-skeleton/.codex/hooks.json\nnpm notice 743B templates/repo-skeleton/.githooks/pre-commit\nnpm notice 734B templates/repo-skeleton/.github/workflows/prd-gate.yml\nnpm notice 3.2kB templates/repo-skeleton/.opencode/plugin.json\nnpm notice 3.3kB templates/repo-skeleton/.opencode/plugins/prd-hooks.js\nnpm notice 3.0kB templates/repo-skeleton/.opencode/skill/project-architecture/SKILL.md\nnpm notice 7.4kB templates/repo-skeleton/.opencode/skill/project-blocker-resolution/SKILL.md\nnpm notice 2.8kB templates/repo-skeleton/.opencode/skill/project-brainstorm/SKILL.md\nnpm notice 5.5kB templates/repo-skeleton/.opencode/skill/project-change-request/SKILL.md\nnpm notice 6.3kB templates/repo-skeleton/.opencode/skill/project-code-review/SKILL.md\nnpm notice 2.7kB templates/repo-skeleton/.opencode/skill/project-decision-ledger/SKILL.md\nnpm notice 23.6kB templates/repo-skeleton/.opencode/skill/project-decision-policy/SKILL.md\nnpm notice 4.4kB templates/repo-skeleton/.opencode/skill/project-deterministic-workflows/SKILL.md\nnpm notice 5.2kB templates/repo-skeleton/.opencode/skill/project-document-branch/SKILL.md\nnpm notice 2.8kB templates/repo-skeleton/.opencode/skill/project-evidence-ledger/SKILL.md\nnpm notice 3.3kB templates/repo-skeleton/.opencode/skill/project-evidence/SKILL.md\nnpm notice 11.9kB templates/repo-skeleton/.opencode/skill/project-git-workflow/SKILL.md\nnpm notice 7.4kB templates/repo-skeleton/.opencode/skill/project-health/SKILL.md\nnpm notice 6.0kB templates/repo-skeleton/.opencode/skill/project-implementation-plan/SKILL.md\nnpm notice 1.1kB templates/repo-skeleton/.opencode/skill/project-llm-wiki/LICENSE\nnpm notice 842B templates/repo-skeleton/.opencode/skill/project-llm-wiki/references/archive-template.md\nnpm notice 843B templates/repo-skeleton/.opencode/skill/project-llm-wiki/references/article-template.md\nnpm notice 559B templates/repo-skeleton/.opencode/skill/project-llm-wiki/references/index-template.md\nnpm notice 317B templates/repo-skeleton/.opencode/skill/project-llm-wiki/references/raw-template.md\nnpm notice 17.0kB templates/repo-skeleton/.opencode/skill/project-llm-wiki/SKILL.md\nnpm notice 7.4kB templates/repo-skeleton/.opencode/skill/project-local-integration/SKILL.md\nnpm notice 8.1kB templates/repo-skeleton/.opencode/skill/project-memory/SKILL.md\nnpm notice 6.2kB templates/repo-skeleton/.opencode/skill/project-planning-lifecycle/SKILL.md\nnpm notice 6.0kB templates/repo-skeleton/.opencode/skill/project-prd-plugin-setup/SKILL.md\nnpm notice 3.5kB templates/repo-skeleton/.opencode/skill/project-prd/SKILL.md\nnpm notice 27.5kB templates/repo-skeleton/.opencode/skill/project-request-intake/SKILL.md\nnpm notice 4.8kB templates/repo-skeleton/.opencode/skill/project-session-close/SKILL.md\nnpm notice 10.3kB templates/repo-skeleton/.opencode/skill/project-systematic-debugging/SKILL.md\nnpm notice 4.8kB templates/repo-skeleton/.opencode/skill/project-test-driven-implementation/SKILL.md\nnpm notice 3.7kB templates/repo-skeleton/.opencode/skill/project-traceability-review/SKILL.md\nnpm notice 2.5kB templates/repo-skeleton/.opencode/skill/project-traceability-sync/SKILL.md\nnpm notice 6.6kB templates/repo-skeleton/.opencode/skill/project-verification-before-completion/SKILL.md\nnpm notice 1.5kB templates/repo-skeleton/.opencode/skill/source-command-prd-autonomy/SKILL.md\nnpm notice 1.2kB templates/repo-skeleton/.opencode/skill/source-command-prd-close/SKILL.md\nnpm notice 3.3kB templates/repo-skeleton/.opencode/skill/source-command-prd-config/SKILL.md\nnpm notice 2.4kB templates/repo-skeleton/.opencode/skill/source-command-prd-drift/SKILL.md\nnpm notice 2.1kB templates/repo-skeleton/.opencode/skill/source-command-prd-graph/SKILL.md\nnpm notice 2.2kB templates/repo-skeleton/.opencode/skill/source-command-prd-hooks/SKILL.md\nnpm notice 1.3kB templates/repo-skeleton/.opencode/skill/source-command-prd-new/SKILL.md\nnpm notice 2.0kB templates/repo-skeleton/.opencode/skill/source-command-prd-off/SKILL.md\nnpm notice 1.5kB templates/repo-skeleton/.opencode/skill/source-command-prd-on/SKILL.md\nnpm notice 2.3kB templates/repo-skeleton/.opencode/skill/source-command-prd-reflections/SKILL.md\nnpm notice 2.5kB templates/repo-skeleton/.opencode/skill/source-command-prd-report/SKILL.md\nnpm notice 1.2kB templates/repo-skeleton/.opencode/skill/source-command-prd-status/SKILL.md\nnpm notice 1.7kB templates/repo-skeleton/.opencode/skill/source-command-prd-track/SKILL.md\nnpm notice 1.8kB templates/repo-skeleton/.opencode/skill/source-command-prd-version/SKILL.md\nnpm notice 1.7kB templates/repo-skeleton/.opencode/skill/source-command-prd-workflow/SKILL.md\nnpm notice 14.6kB templates/repo-skeleton/.prd_plugin/config.json\nnpm notice 1.6kB templates/repo-skeleton/.prd_plugin/hooks/prd_drift_check.py\nnpm notice 11.5kB templates/repo-skeleton/.prd_plugin/hooks/prd_hook_dispatch.py\nnpm notice 2.0kB templates/repo-skeleton/.prd_plugin/hooks/prd_log_skill.py\nnpm notice 4.1kB templates/repo-skeleton/.prd_plugin/hooks/prd_nudge.py\nnpm notice 3.7kB templates/repo-skeleton/.prd_plugin/hooks/prd_precommit_gate.py\nnpm notice 6.1kB templates/repo-skeleton/.prd_plugin/hooks/prd_reflection.py\nnpm notice 3.5kB templates/repo-skeleton/.prd_plugin/hooks/prd_session_report.py\nnpm notice 15.8kB templates/repo-skeleton/.prd_plugin/hooks/prd_stop_guard.py\nnpm notice 8.0kB templates/repo-skeleton/.prd_plugin/hooks/prd_test_scope_guard.py\nnpm notice 3.7kB templates/repo-skeleton/.prd_plugin/ID-SCHEME.md\nnpm notice 581B templates/repo-skeleton/.prd_plugin/ids/registry.json\nnpm notice 12.6kB templates/repo-skeleton/.prd_plugin/METHOD.md\nnpm notice 725B templates/repo-skeleton/.prd_plugin/method/artifact-format.md\nnpm notice 1.5kB templates/repo-skeleton/.prd_plugin/method/completion-gate.md\nnpm notice 3.6kB templates/repo-skeleton/.prd_plugin/method/deterministic-workflows.md\nnpm notice 1.2kB templates/repo-skeleton/.prd_plugin/method/estimation.md\nnpm notice 2.1kB templates/repo-skeleton/.prd_plugin/method/grounding.md\nnpm notice 3.2kB templates/repo-skeleton/.prd_plugin/method/reporting.md\nnpm notice 4.1kB templates/repo-skeleton/.prd_plugin/method/self-service.md\nnpm notice 1.6kB templates/repo-skeleton/.prd_plugin/method/staleness-rules.md\nnpm notice 1.0kB templates/repo-skeleton/.prd_plugin/method/state-validation.md\nnpm notice 3.0kB templates/repo-skeleton/.prd_plugin/method/subagents.md\nnpm notice 1.3kB templates/repo-skeleton/.prd_plugin/services.json\nnpm notice 47B templates/repo-skeleton/.prd_plugin/state/changelog.json\nnpm notice 49B templates/repo-skeleton/.prd_plugin/state/decisions.json\nnpm notice 157B templates/repo-skeleton/.prd_plugin/state/health.json\nnpm notice 47B templates/repo-skeleton/.prd_plugin/state/memory.json\nnpm notice 287B templates/repo-skeleton/.prd_plugin/state/project.json\nnpm notice 48B templates/repo-skeleton/.prd_plugin/state/releases.json\nnpm notice 48B templates/repo-skeleton/.prd_plugin/state/requests.json\nnpm notice 214B templates/repo-skeleton/.prd_plugin/state/sessions/shared/promoted-session-summaries.jsonl\nnpm notice 49B templates/repo-skeleton/.prd_plugin/state/substrate-links.json\nnpm notice 51B templates/repo-skeleton/.prd_plugin/state/tracking.json\nnpm notice 48B templates/repo-skeleton/.prd_plugin/state/workflow-runs.json\nnpm notice 167B templates/repo-skeleton/.prd_plugin/templates/architecture-delta.md\nnpm notice 1.4kB templates/repo-skeleton/.prd_plugin/templates/architecture.json\nnpm notice 368B templates/repo-skeleton/.prd_plugin/templates/brainstorm.md\nnpm notice 274B templates/repo-skeleton/.prd_plugin/templates/changelog.json\nnpm notice 14.8kB templates/repo-skeleton/.prd_plugin/templates/config.json\nnpm notice 265B templates/repo-skeleton/.prd_plugin/templates/decision-record.md\nnpm notice 398B templates/repo-skeleton/.prd_plugin/templates/decisions.json\nnpm notice 372B templates/repo-skeleton/.prd_plugin/templates/doc-branch.json\nnpm notice 313B templates/repo-skeleton/.prd_plugin/templates/doc-branch.md\nnpm notice 115B templates/repo-skeleton/.prd_plugin/templates/evidence.md\nnpm notice 249B templates/repo-skeleton/.prd_plugin/templates/handoff.json\nnpm notice 407B templates/repo-skeleton/.prd_plugin/templates/health.json\nnpm notice 695B templates/repo-skeleton/.prd_plugin/templates/human-exports/architecture.md\nnpm notice 626B templates/repo-skeleton/.prd_plugin/templates/human-exports/implementation-plan.md\nnpm notice 580B templates/repo-skeleton/.prd_plugin/templates/human-exports/prd.md\nnpm notice 1.4kB templates/repo-skeleton/.prd_plugin/templates/implementation-plan.json\nnpm notice 65B templates/repo-skeleton/.prd_plugin/templates/mailbox.json\nnpm notice 348B templates/repo-skeleton/.prd_plugin/templates/memory.json\nnpm notice 471B templates/repo-skeleton/.prd_plugin/templates/merge-checklist.md\nnpm notice 163B templates/repo-skeleton/.prd_plugin/templates/plan-delta.md\nnpm notice 139B templates/repo-skeleton/.prd_plugin/templates/prd-delta.md\nnpm notice 1.3kB templates/repo-skeleton/.prd_plugin/templates/prd.json\nnpm notice 455B templates/repo-skeleton/.prd_plugin/templates/project.json\nnpm notice 125B templates/repo-skeleton/.prd_plugin/templates/promoted-session-summary.jsonl\nnpm notice 923B templates/repo-skeleton/.prd_plugin/templates/releases.json\nnpm notice 1.4kB templates/repo-skeleton/.prd_plugin/templates/request.json\nnpm notice 1.7kB templates/repo-skeleton/.prd_plugin/templates/requests.json\nnpm notice 23.1kB templates/repo-skeleton/.prd_plugin/templates/script-install-scope.json\nnpm notice 235B templates/repo-skeleton/.prd_plugin/templates/session.json\nnpm notice 15.6kB templates/repo-skeleton/.prd_plugin/templates/skill-install-scope.json\nnpm notice 317B templates/repo-skeleton/.prd_plugin/templates/submission-package.json\nnpm notice 5.7kB templates/repo-skeleton/.prd_plugin/templates/tool-surface.json\nnpm notice 225B templates/repo-skeleton/.prd_plugin/templates/traceability-matrix.md\nnpm notice 321B templates/repo-skeleton/.prd_plugin/templates/tracking.json\nnpm notice 375B templates/repo-skeleton/.prd_plugin/templates/utcp-config.json\nnpm notice 22.2kB templates/repo-skeleton/.prd_plugin/workflows.json\nnpm notice 13.5kB templates/repo-skeleton/AGENTS.md\nnpm notice 10.2kB templates/repo-skeleton/CLAUDE.md\nnpm notice 12.0kB templates/repo-skeleton/docs/INSTALL-MATRIX.md\nnpm notice 2.7kB templates/repo-skeleton/hooks/hooks.json\nnpm notice 1.4kB templates/request.json\nnpm notice 1.7kB templates/requests.json\nnpm notice 23.1kB templates/script-install-scope.json\nnpm notice 1.3kB templates/services.json\nnpm notice 235B templates/session.json\nnpm notice 15.6kB templates/skill-install-scope.json\nnpm notice 317B templates/submission-package.json\nnpm notice 10.4kB templates/substrate-capabilities.json\nnpm notice 48.5kB templates/tool-spec.json\nnpm notice 7.9kB templates/tool-surface.json\nnpm notice 225B templates/traceability-matrix.md\nnpm notice 321B templates/tracking.json\nnpm notice 375B templates/utcp-config.json\nnpm notice 22.2kB templates/workflows.json\nnpm notice Tarball Details\nnpm notice name: prd-plugin\nnpm notice version: 0.16.50\nnpm notice filename: prd-plugin-0.16.50.tgz\nnpm notice package size: 1.6 MB\nnpm notice unpacked size: 9.8 MB\nnpm notice shasum: 52e7ced9bb89d45c02fbb7386e4249220a644d5b\nnpm notice integrity: sha512-nbGCp6Suv3KJ0[...]9/LoyLM+eDwbQ==\nnpm notice total files: 639\nnpm notice\n"
          },
          "output_hash": "d51b135bc922028919544f3b5cedfa31c550c7ca045a3394e2d67e7d846c41e4",
          "completed_at": "2026-07-24T05:07:35Z"
        },
        {
          "id": "gate",
          "action": "state.gate",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-24T05:07:35Z",
          "output": {
            "status": "attention",
            "repo_root": "D:\\Projects\\prd-plugin",
            "summary": {
              "errors": 0,
              "warnings": 0
            },
            "findings": [
              {
                "check": "state_consistency",
                "severity": "info",
                "summary": "File references 2 canonical IDs across 2 prefix(es); treated as a positive signal of extra work.",
                "required_action": "No action required; this is an informational signal."
              }
            ]
          },
          "output_hash": "6a0ed3d65779be265214a0e8395ab03978b9f7b91da9ffb59b257b73f82d087d",
          "completed_at": "2026-07-24T05:07:36Z"
        }
      ],
      "completed_at": "2026-07-24T05:07:36Z"
    },
    {
      "id": "WFR-393",
      "schema_version": "1.0",
      "workflow_id": "session.start",
      "workflow_version": 1,
      "definition_hash": "dd0de9444af7b094cc93673d0844fb78c801d87d978cc5f6dd6bf3e3e863917d",
      "plan_hash": "1f4ae0cd6be8385f8a9310e49978bd8d93baa729842eb6df9243665a1b581277",
      "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
      "inputs": {},
      "idempotency_key": "config-ui-categories-2026-07-24",
      "status": "completed",
      "attempt": 1,
      "created_at": "2026-07-24T08:03:01Z",
      "updated_at": "2026-07-24T08:03:06Z",
      "receipts": [
        {
          "step_id": "mailbox",
          "action": "requests.pull",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "ab8a35139cfd3f5821ebc5138c9a44c899b54e4036790654ff120e79c7ab6223",
          "completed_at": "2026-07-24T08:03:01Z"
        },
        {
          "step_id": "config",
          "action": "config.audit",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "172e2697e5951667d2eafa396cb6a952ff4a8c53ebf5dc228ab999c00692f8d2",
          "completed_at": "2026-07-24T08:03:01Z"
        },
        {
          "step_id": "services",
          "action": "services.audit",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "13dcc58bd528f3efa3e6e0fa0853a6eedc376f1f3685fbd4869cbb2b60382ee3",
          "completed_at": "2026-07-24T08:03:01Z"
        },
        {
          "step_id": "state",
          "action": "state.consistency",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "9963110856ca8182da0dfdbb22f6960618b55dbc121be0dce0066a7c7a389b10",
          "completed_at": "2026-07-24T08:03:04Z"
        },
        {
          "step_id": "status",
          "action": "state.query",
          "input_hash": "a15231a2142a2a9a85355a8b9cbbccffe01a9c9c2c2fd8c2bc2987cdc481564a",
          "output_hash": "ae44d72baf112f44fc30083ef0f072eca67ca0865248a090780ade4eb93a0ca0",
          "completed_at": "2026-07-24T08:03:05Z"
        },
        {
          "step_id": "substrate",
          "action": "substrate.preflight",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "a6df426290b4549a59eecaa0519ead9bcc50b7fcb25bd2185ff6047960f19ccb",
          "completed_at": "2026-07-24T08:03:05Z"
        },
        {
          "step_id": "notices",
          "action": "substrate.notices",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "38b904a1cf83df048360fb2480571b749fd98d57e11f1afdffb5a74a78166fea",
          "completed_at": "2026-07-24T08:03:05Z"
        },
        {
          "step_id": "goals",
          "action": "substrate.goals",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "cdfd4de44a28140e686159f34f7b47975954c67e1d1efcef666e985acb136ed8",
          "completed_at": "2026-07-24T08:03:05Z"
        }
      ],
      "steps": [
        {
          "id": "mailbox",
          "action": "requests.pull",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-24T08:03:01Z",
          "output": {
            "applied": 0,
            "resolved_ids": [],
            "unmatched": [],
            "mailboxes": [],
            "pruned_outbox": [],
            "consumed_mailboxes": [],
            "outbound": {
              "delivered": 0,
              "mailboxes_published": [],
              "undeliverable": [],
              "pending": []
            },
            "addressed": {
              "delivered": 0,
              "destinations": [],
              "undelivered": [
                {
                  "id": "REQ-030",
                  "state": "not_ours_to_send",
                  "target_repo": "prd-plugin",
                  "reason": "REQ-030 was imported from 'ZeusGrid'; its target_repo records who it was addressed to, not somewhere for us to send it. Reply on its thread instead."
                },
                {
                  "id": "REQ-003",
                  "state": "not_ours_to_send",
                  "target_repo": "prd-plugin",
                  "reason": "REQ-003 was imported from 'ZeusGrid'; its target_repo records who it was addressed to, not somewhere for us to send it. Reply on its thread instead."
                },
                {
                  "id": "REQ-004",
                  "state": "not_ours_to_send",
                  "target_repo": "prd-plugin",
                  "reason": "REQ-004 was imported from 'ZeusGrid'; its target_repo records who it was addressed to, not somewhere for us to send it. Reply on its thread instead."
                },
                {
                  "id": "REQ-005",
                  "state": "not_ours_to_send",
                  "target_repo": "prd-plugin",
                  "reason": "REQ-005 was imported from 'GRAPH_LANG'; its target_repo records who it was addressed to, not somewhere for us to send it. Reply on its thread instead."
                },
                {
                  "id": "REQ-002",
                  "state": "self_addressed",
                  "target_repo": "prd-plugin",
                  "reason": "REQ-002 is addressed to this repo ('prd-plugin'); it is already here."
                },
                {
                  "id": "REQ-028",
                  "state": "self_addressed",
                  "target_repo": "prd-plugin",
                  "reason": "REQ-028 is addressed to this repo ('prd-plugin'); it is already here."
                },
                {
                  "id": "REQ-029",
                  "state": "not_ours_to_send",
                  "target_repo": "ai-collab-v3",
                  "reason": "REQ-029 was imported from 'ai-collab-v3'; its target_repo records who it was addressed to, not somewhere for us to send it. Reply on its thread instead."
                },
                {
                  "id": "REQ-138",
                  "state": "terminal",
                  "target_repo": "no-such-repo",
                  "reason": "REQ-138 is 'rejected'; a closed request is not delivered. Reopen it or file a new one if it still needs to travel."
                }
              ],
              "advisories": []
            }
          },
          "output_hash": "ab8a35139cfd3f5821ebc5138c9a44c899b54e4036790654ff120e79c7ab6223",
          "completed_at": "2026-07-24T08:03:01Z"
        },
        {
          "id": "config",
          "action": "config.audit",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-24T08:03:01Z",
          "output": {
            "status": "ok",
            "summary": {
              "settings": 209,
              "mutable": 199,
              "read_only_or_managed": 10,
              "unclassified": 0,
              "unknown": 0,
              "invalid": 0,
              "missing_using_defaults": 0
            },
            "unclassified_keys": [],
            "unknown_keys": [],
            "invalid_values": [],
            "missing_using_defaults": []
          },
          "output_hash": "172e2697e5951667d2eafa396cb6a952ff4a8c53ebf5dc228ab999c00692f8d2",
          "completed_at": "2026-07-24T08:03:01Z"
        },
        {
          "id": "services",
          "action": "services.audit",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-24T08:03:01Z",
          "output": {
            "status": "ok",
            "summary": {
              "critical": 0,
              "high": 0,
              "medium": 0,
              "low": 0
            },
            "findings": []
          },
          "output_hash": "13dcc58bd528f3efa3e6e0fa0853a6eedc376f1f3685fbd4869cbb2b60382ee3",
          "completed_at": "2026-07-24T08:03:01Z"
        },
        {
          "id": "state",
          "action": "state.consistency",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-24T08:03:01Z",
          "output": {
            "status": "ok",
            "repo_root": "D:\\Projects\\prd-plugin",
            "summary": {
              "errors": 0,
              "warnings": 0,
              "infos": 1
            },
            "findings": [
              {
                "id": "CONS-INFO-001",
                "severity": "info",
                "path": "docs/evidence/EV-200.md",
                "summary": "File references 2 canonical IDs across 2 prefix(es); treated as a positive signal of extra work.",
                "referenced_prefixes": [
                  "CHG",
                  "TRK"
                ],
                "referenced_id_count": 2,
                "required_action": "No action required; this is an informational signal."
              }
            ]
          },
          "output_hash": "9963110856ca8182da0dfdbb22f6960618b55dbc121be0dce0066a7c7a389b10",
          "completed_at": "2026-07-24T08:03:04Z"
        },
        {
          "id": "status",
          "action": "state.query",
          "status": "completed",
          "resolved_input_hash": "a15231a2142a2a9a85355a8b9cbbccffe01a9c9c2c2fd8c2bc2987cdc481564a",
          "started_at": "2026-07-24T08:03:05Z",
          "output": {
            "repo_root": "D:\\Projects\\prd-plugin",
            "autonomy_level": "autonomous",
            "requests_by_status": {
              "accepted": 1,
              "deferred": 1,
              "implemented": 140,
              "in_review": 2,
              "proposed": 4,
              "rejected": 3
            },
            "active_tracking": [],
            "tracking_branches": [],
            "tracking_branch_counts": {},
            "tracking_branch_errors": [],
            "open_health": [
              "HLT-020",
              "HLT-021"
            ],
            "stale_count": 0,
            "skill_usage": {
              "project-llm-wiki": 2,
              "project-decision-policy": 1,
              "project-request-intake": 1,
              "project-test-driven-implementation": 1,
              "project-verification-before-completion": 1,
              "artifact-design": 1
            },
            "wiki_backfill_pending": false,
            "wiki_ingest_drift": {
              "status": "attention",
              "uningested": [
                "REQ-169"
              ],
              "baseline": "REQ-168",
              "historical_gap": 63
            },
            "version_update": {
              "host_plugin": {
                "installed": "0.16.46",
                "latest": "0.16.50",
                "action": "the user plugin install is on 0.16.46 but 0.16.50 is published. Run `claude plugin update prd-plugin@prd-plugin` and restart the host to apply it."
              }
            }
          },
          "output_hash": "ae44d72baf112f44fc30083ef0f072eca67ca0865248a090780ade4eb93a0ca0",
          "completed_at": "2026-07-24T08:03:05Z"
        },
        {
          "id": "substrate",
          "action": "substrate.preflight",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-24T08:03:05Z",
          "output": {
            "status": "disabled",
            "services": {
              "status": "ok",
              "summary": {
                "critical": 0,
                "high": 0,
                "medium": 0,
                "low": 0
              },
              "findings": []
            },
            "policy": {
              "configured": {
                "enabled": false,
                "mode": "off",
                "capabilities": [
                  "records",
                  "graph",
                  "events"
                ],
                "contract_version": 2,
                "require_source_refs": true,
                "endpoint": "http://127.0.0.1:47124",
                "manual_url": "http://127.0.0.1:47124/utcp.json",
                "knowledge_browse_url": "http://127.0.0.1:5276",
                "auth_env": "AI_COLLAB_API_KEY",
                "timeout_seconds": 5,
                "max_result_bytes": 1048576,
                "cache_ttl_seconds": 60,
                "fallback": "local",
                "automation": {
                  "discovery_on_session_start": true,
                  "knowledge_recall": true,
                  "memory_recall": true,
                  "context_enrichment": true,
                  "notices_on_session_start": false,
                  "goals_sync": false,
                  "telemetry_on_maintenance": false,
                  "reporting_dispatch": true,
                  "judgment_dispatch": true,
                  "verification_execution": true
                }
              },
              "active": false,
              "effective_mode": "off",
              "effective_capabilities": []
            }
          },
          "output_hash": "a6df426290b4549a59eecaa0519ead9bcc50b7fcb25bd2185ff6047960f19ccb",
          "completed_at": "2026-07-24T08:03:05Z"
        },
        {
          "id": "notices",
          "action": "substrate.notices",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-24T08:03:05Z",
          "output": {
            "status": "disabled"
          },
          "output_hash": "38b904a1cf83df048360fb2480571b749fd98d57e11f1afdffb5a74a78166fea",
          "completed_at": "2026-07-24T08:03:05Z"
        },
        {
          "id": "goals",
          "action": "substrate.goals",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-24T08:03:05Z",
          "output": {
            "status": "disabled",
            "created": 0,
            "observed": 0,
            "results": []
          },
          "output_hash": "cdfd4de44a28140e686159f34f7b47975954c67e1d1efcef666e985acb136ed8",
          "completed_at": "2026-07-24T08:03:05Z"
        }
      ],
      "completed_at": "2026-07-24T08:03:06Z"
    },
    {
      "id": "WFR-394",
      "schema_version": "1.0",
      "workflow_id": "request.intake",
      "workflow_version": 1,
      "definition_hash": "b61272f54c5d4778a27afe601feaae39057f75fac2c289858b6caf5f3b2a4fbe",
      "plan_hash": "58af0498aec76e03df27036cb7b4277134f279799dd47f47d8e244372589038c",
      "input_hash": "5e004b980cb392b4182c2df53dc16749dc9ace12d1cdd0ac343907c8ff4c2e7a",
      "inputs": {
        "summary": "Improve the PRD Plugin settings UI with human-purpose collapsible categories and decision guidance that explains use cases, on/off behavior, and latency trade-offs without inventing measurements.",
        "request_type": "feature",
        "severity": "medium",
        "scope": "upstream",
        "rationale": "The current page technically groups settings by the first config-key segment, but related controls such as autonomy and its Stop guard remain split, and rows expose only terse control text plus a vague high-latency badge. Operators need semantic grouping and enough consequence and latency context to choose deliberately.",
        "affected_areas": [
          "scripts/prd_ui_export.py",
          "tests/test_prd_ui_export.py",
          "wiki/delivery/plugin-ui.md"
        ],
        "expected_behavior": "The settings view keeps its compatible technical category field but renders collapsed human-purpose groups such as Agent autonomy, Logging and audit, and Reporting and reflection. Important toggles expose use-case, enabled effect, disabled effect, and latency guidance. Known configured timeout bounds are shown; unmeasured environment-dependent latency is identified honestly."
      },
      "idempotency_key": "config-ui-decision-guidance-2026-07-24",
      "status": "completed",
      "attempt": 1,
      "created_at": "2026-07-24T08:08:11Z",
      "updated_at": "2026-07-24T08:08:12Z",
      "receipts": [
        {
          "step_id": "create",
          "action": "state.mutate",
          "input_hash": "84de2ce43209ec4b5578b1a803f8c0b3aec99132f93bd9608928748404fa353b",
          "output_hash": "c7760c1f4c24c2f665443bb4d240137da7a42e33cf2dc486556d015eacafc8db",
          "completed_at": "2026-07-24T08:08:12Z"
        },
        {
          "step_id": "confirm",
          "action": "state.query",
          "input_hash": "ab21a767480190c1467a10808145a425e983c1934e62630d64bf435cb31b0ced",
          "output_hash": "defa4bc83a35ec91f12e856e706b4eeb615f30347ae257948368dd3a8b36857d",
          "completed_at": "2026-07-24T08:08:12Z"
        }
      ],
      "steps": [
        {
          "id": "create",
          "action": "state.mutate",
          "status": "completed",
          "resolved_input_hash": "84de2ce43209ec4b5578b1a803f8c0b3aec99132f93bd9608928748404fa353b",
          "started_at": "2026-07-24T08:08:11Z",
          "execution_token": "f9f684f4f89def5e43739023ab9b3160c2e68252a5bcd5cc6bb00470708eb9c8",
          "output": {
            "id": "REQ-170",
            "status": "proposed"
          },
          "output_hash": "c7760c1f4c24c2f665443bb4d240137da7a42e33cf2dc486556d015eacafc8db",
          "completed_at": "2026-07-24T08:08:12Z"
        },
        {
          "id": "confirm",
          "action": "state.query",
          "status": "completed",
          "resolved_input_hash": "ab21a767480190c1467a10808145a425e983c1934e62630d64bf435cb31b0ced",
          "started_at": "2026-07-24T08:08:12Z",
          "output": {
            "kind": "REQ",
            "record": {
              "id": "REQ-170",
              "status": "proposed",
              "request_type": "feature",
              "scope": "upstream",
              "visibility": "repo",
              "summary": "Improve the PRD Plugin settings UI with human-purpose collapsible categories and decision guidance that explains use cases, on/off behavior, and latency trade-offs without inventing measurements.",
              "severity": "medium",
              "requested_by_agent": "AGENT-MCP",
              "created_at": "2026-07-24",
              "rationale": "The current page technically groups settings by the first config-key segment, but related controls such as autonomy and its Stop guard remain split, and rows expose only terse control text plus a vague high-latency badge. Operators need semantic grouping and enough consequence and latency context to choose deliberately.",
              "affected_areas": [
                "scripts/prd_ui_export.py",
                "tests/test_prd_ui_export.py",
                "wiki/delivery/plugin-ui.md"
              ],
              "expected_behavior": "The settings view keeps its compatible technical category field but renders collapsed human-purpose groups such as Agent autonomy, Logging and audit, and Reporting and reflection. Important toggles expose use-case, enabled effect, disabled effect, and latency guidance. Known configured timeout bounds are shown; unmeasured environment-dependent latency is identified honestly."
            }
          },
          "output_hash": "defa4bc83a35ec91f12e856e706b4eeb615f30347ae257948368dd3a8b36857d",
          "completed_at": "2026-07-24T08:08:12Z"
        }
      ],
      "completed_at": "2026-07-24T08:08:12Z"
    },
    {
      "id": "WFR-395",
      "schema_version": "1.0",
      "workflow_id": "engineering.code-review",
      "workflow_version": 1,
      "definition_hash": "ad3df68a0ff3c3ede35fe5266dcfbffbe7b1ba3e8ada5fc4b9012db9f451212f",
      "plan_hash": "ebd955b81fad4b7cce83b0b2f27b8f295e39fd49ccffa7e3fe0830cbf0ac9e54",
      "input_hash": "cefbf6f5c539bcab183740b2d36c5b578409b8b21debadb993924afc42390fdc",
      "inputs": {
        "base_ref": "main",
        "source_refs": [
          "scripts/prd_ui_export.py",
          "tests/test_prd_ui_export.py",
          "wiki/delivery/plugin-ui.md",
          "raw/delivery/2026-07-24-prd-plugin-settings-decision-guidance.md",
          "REQ-170"
        ]
      },
      "idempotency_key": "req-170-config-ui-review-v1",
      "status": "completed",
      "attempt": 2,
      "created_at": "2026-07-24T08:36:33Z",
      "updated_at": "2026-07-24T08:37:36Z",
      "receipts": [
        {
          "step_id": "diff",
          "action": "git.diff_check",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "11c11db30f4b3f6c758722ba3e27eea08145b7d212f6a157451e364b48475280",
          "completed_at": "2026-07-24T08:36:33Z"
        },
        {
          "step_id": "verification",
          "action": "verification.plan",
          "input_hash": "9c8856776a7db6455fee675768cfc615a0fe2a04fb88b9a4fd8e3fce515eaf08",
          "output_hash": "66fe34b9ad5c56d462111d718b6ea94d848688d69e0270a2670b015b762fab7c",
          "completed_at": "2026-07-24T08:36:47Z"
        },
        {
          "step_id": "context",
          "action": "substrate.enrich",
          "input_hash": "ef0df66ea1bf20c8f03867744dc541545e4563bb7f76714b4d965b8b7d15d651",
          "output_hash": "a1a5560f3ebcd84adf800fac3148b827185fba0b530ec1fcdef5887eb3939d3d",
          "completed_at": "2026-07-24T08:36:48Z"
        },
        {
          "step_id": "review",
          "action": "judgment.request",
          "input_hash": "cf763f10ac00dffe2893d27f7516cdbe4336b6f09902afc40309aa3cb87d88dc",
          "output_hash": "44a5ac0792bf814798be75c2b03dabd3290fdbb6babfba890965920081951b1b",
          "request_hash": "5be6736f935982b9dab33fd77b883a4e277c56de7be9d7606a0452e422e67729",
          "completed_at": "2026-07-24T08:37:36Z"
        }
      ],
      "steps": [
        {
          "id": "diff",
          "action": "git.diff_check",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-24T08:36:33Z",
          "output": {
            "passed": true
          },
          "output_hash": "11c11db30f4b3f6c758722ba3e27eea08145b7d212f6a157451e364b48475280",
          "completed_at": "2026-07-24T08:36:33Z"
        },
        {
          "id": "verification",
          "action": "verification.plan",
          "status": "completed",
          "resolved_input_hash": "9c8856776a7db6455fee675768cfc615a0fe2a04fb88b9a4fd8e3fce515eaf08",
          "started_at": "2026-07-24T08:36:47Z",
          "output": {
            "schema_version": "1.0",
            "contract_version": 1,
            "executor": "ai-collab",
            "changed_files": [
              ".claude-plugin/marketplace.json",
              ".claude-plugin/plugin.json",
              ".codex-plugin/plugin.json",
              ".opencode/plugin.json",
              ".prd_plugin/config.json",
              ".prd_plugin/drift/events.jsonl",
              ".prd_plugin/ids/registry.json",
              ".prd_plugin/state/project.json",
              ".prd_plugin/state/releases.json",
              ".prd_plugin/state/requests.json",
              ".prd_plugin/state/tracking.json",
              ".prd_plugin/state/workflow-runs.json",
              "index.js",
              "mcp/server.cjs",
              "package.json",
              "raw/delivery/2026-07-24-prd-plugin-settings-decision-guidance.md",
              "scripts/prd_ui_export.py",
              "skills-manifest.json",
              "templates/config.json",
              "templates/project.json",
              "templates/releases.json",
              "templates/repo-skeleton/.claude-plugin/plugin.json",
              "templates/repo-skeleton/.codex-plugin/plugin.json",
              "templates/repo-skeleton/.opencode/plugin.json",
              "templates/repo-skeleton/.prd_plugin/config.json",
              "templates/repo-skeleton/.prd_plugin/state/project.json",
              "templates/repo-skeleton/.prd_plugin/templates/config.json",
              "templates/repo-skeleton/.prd_plugin/templates/project.json",
              "tests/test_prd_ui_export.py",
              "wiki/delivery/plugin-ui.md",
              "wiki/index.md",
              "wiki/log.md"
            ],
            "change_fingerprint": "53e3db38e946d59b55d1c52f56f50b47ec1fe2913ab6586c31d4f4705647bae9",
            "policy": {
              "enabled": true,
              "executor": "ai-collab",
              "neighbor_limit": 12,
              "max_changed_files": 25,
              "fallback": "full",
              "full_suite_triggers": [
                "release",
                "core_change",
                "impact_unavailable",
                "impact_degraded",
                "unmapped_change"
              ],
              "core_paths": [
                "package.json",
                "package-lock.json",
                "pyproject.toml",
                "Cargo.toml",
                "go.mod",
                ".github/workflows/**"
              ],
              "test_patterns": [
                "tests/**",
                "test/**",
                "spec/**",
                "**/*.test.*",
                "**/*.spec.*",
                "test_*.py",
                "*_test.py",
                "*_test.go",
                "**/test_*.py",
                "**/*_test.py",
                "**/*_test.go"
              ],
              "max_selected_tests": 200,
              "execution_timeout_seconds": 600,
              "focused_commands": [],
              "full_commands": [],
              "allowed_executables": [
                "python",
                "python3",
                "py",
                "pytest",
                "npm",
                "npx",
                "node",
                "go",
                "cargo",
                "dotnet",
                "mvn",
                "gradle",
                "gradlew",
                "make"
              ]
            },
            "selection_rules": {
              "precedence": [
                "exact_changed",
                "explicit_test_ownership",
                "structural_dependencies",
                "predictive_impact"
              ],
              "require_all_changed_files_mapped": true,
              "widen_before_full": true,
              "predictive_signal_is_sufficient_alone": false
            },
            "fallback": {
              "strategy": "full",
              "conditions": [
                "release",
                "core_change",
                "impact_unavailable",
                "impact_degraded",
                "unmapped_change"
              ]
            },
            "strategy": "full",
            "reason": "core_change",
            "runtime_requests": {},
            "plan_hash": "f7f516c85c0a495864ef5421cc956b6b82947ff8b1affa356a825f4e5a87c416"
          },
          "output_hash": "66fe34b9ad5c56d462111d718b6ea94d848688d69e0270a2670b015b762fab7c",
          "completed_at": "2026-07-24T08:36:47Z"
        },
        {
          "id": "context",
          "action": "substrate.enrich",
          "status": "completed",
          "resolved_input_hash": "ef0df66ea1bf20c8f03867744dc541545e4563bb7f76714b4d965b8b7d15d651",
          "started_at": "2026-07-24T08:36:48Z",
          "output": {
            "status": "disabled",
            "results": [],
            "local_source_refs": [
              "scripts/prd_ui_export.py",
              "tests/test_prd_ui_export.py",
              "wiki/delivery/plugin-ui.md",
              "raw/delivery/2026-07-24-prd-plugin-settings-decision-guidance.md",
              "REQ-170"
            ]
          },
          "output_hash": "a1a5560f3ebcd84adf800fac3148b827185fba0b530ec1fcdef5887eb3939d3d",
          "completed_at": "2026-07-24T08:36:48Z"
        },
        {
          "id": "review",
          "action": "judgment.request",
          "status": "completed",
          "resolved_input_hash": "cf763f10ac00dffe2893d27f7516cdbe4336b6f09902afc40309aa3cb87d88dc",
          "started_at": "2026-07-24T08:36:48Z",
          "judgment_request": {
            "contract_version": 1,
            "run_id": "WFR-395",
            "step_id": "review",
            "task": "code_review",
            "instructions": "Find material correctness, robustness, security, compatibility, or test gaps; do not restate mechanical facts.",
            "source_refs": [
              "scripts/prd_ui_export.py",
              "tests/test_prd_ui_export.py",
              "wiki/delivery/plugin-ui.md",
              "raw/delivery/2026-07-24-prd-plugin-settings-decision-guidance.md",
              "REQ-170"
            ],
            "source_hashes": {
              "scripts/prd_ui_export.py": "d148691885e463c74e8d103845cb1d58440e82d2dd12e8e703b1ae621f4142a1",
              "tests/test_prd_ui_export.py": "7c1fd31d3791f52812aa57749144f2da8aef41d2756ab43a071b92592e859bda",
              "wiki/delivery/plugin-ui.md": "091a27daeab7603ab6ad47a964763fd400ce77a6b71ce26a2c9681e9c34d705d",
              "raw/delivery/2026-07-24-prd-plugin-settings-decision-guidance.md": "c64c56877a58e131fb688ed08c5344f8749a882164bfcad9d578f6bfde43ef34"
            },
            "result_schema": {
              "type": "object",
              "required": [
                "summary",
                "findings",
                "source_refs"
              ],
              "properties": {
                "summary": {
                  "type": "string"
                },
                "findings": {
                  "type": "array",
                  "items": {
                    "type": "object"
                  }
                },
                "source_refs": {
                  "type": "array",
                  "items": {
                    "type": "string"
                  }
                }
              }
            },
            "executor": "ai-collab",
            "profile": "fast-capable",
            "constraints": {
              "no_project_state_writes": true,
              "require_source_refs": true
            },
            "request_hash": "5be6736f935982b9dab33fd77b883a4e277c56de7be9d7606a0452e422e67729"
          },
          "output": {
            "summary": "No material findings. The semantic projection preserves the existing technical category and family fields, every current setting remains represented exactly once, UI content is escaped before insertion, accessible names prefer readable labels, and latency copy uses configured bounds only where available while explicitly marking environment-dependent costs. Focused tests and browser checks cover grouping, collapsed state, guidance content, responsive layout, and control names.",
            "findings": [],
            "source_refs": [
              "scripts/prd_ui_export.py",
              "tests/test_prd_ui_export.py",
              "wiki/delivery/plugin-ui.md",
              "raw/delivery/2026-07-24-prd-plugin-settings-decision-guidance.md"
            ]
          },
          "output_hash": "44a5ac0792bf814798be75c2b03dabd3290fdbb6babfba890965920081951b1b",
          "completed_at": "2026-07-24T08:37:36Z",
          "judgment_result": {
            "request_hash": "5be6736f935982b9dab33fd77b883a4e277c56de7be9d7606a0452e422e67729",
            "executor": "ai-collab",
            "profile": "fast-capable"
          }
        }
      ],
      "completed_at": "2026-07-24T08:37:36Z"
    },
    {
      "id": "WFR-396",
      "schema_version": "1.0",
      "workflow_id": "engineering.verify",
      "workflow_version": 1,
      "definition_hash": "82a795fafbc550f124ec781ea9c5b6170d95b5e687fffadf6939f1f160df5ce1",
      "plan_hash": "4bb158b22c9a87a54832df9b9b6a98a77151ce9005499d6a8337a4c015089e5e",
      "input_hash": "fd934039265310404d648cea4b1eb28964383bb8a97ef14b85b2b85d725d502e",
      "inputs": {
        "base_ref": "",
        "release": false
      },
      "idempotency_key": "req-170-config-ui-verify-v1",
      "status": "completed",
      "attempt": 1,
      "created_at": "2026-07-24T08:37:54Z",
      "updated_at": "2026-07-24T08:44:59Z",
      "receipts": [
        {
          "step_id": "plan",
          "action": "verification.plan",
          "input_hash": "fd934039265310404d648cea4b1eb28964383bb8a97ef14b85b2b85d725d502e",
          "output_hash": "66fe34b9ad5c56d462111d718b6ea94d848688d69e0270a2670b015b762fab7c",
          "completed_at": "2026-07-24T08:37:55Z"
        },
        {
          "step_id": "execute",
          "action": "verification.execute",
          "input_hash": "e15c919d60cf89d2d1f5da57704a32b57c0bcd85378cae9f91218a5b4602c06b",
          "output_hash": "2a84237aa413470f40c0e7f4620072f8d7cf6362024e93237e33d23418875a6a",
          "completed_at": "2026-07-24T08:44:56Z"
        },
        {
          "step_id": "diff",
          "action": "git.diff_check",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "11c11db30f4b3f6c758722ba3e27eea08145b7d212f6a157451e364b48475280",
          "completed_at": "2026-07-24T08:44:56Z"
        },
        {
          "step_id": "state",
          "action": "state.consistency",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "9963110856ca8182da0dfdbb22f6960618b55dbc121be0dce0066a7c7a389b10",
          "completed_at": "2026-07-24T08:44:57Z"
        },
        {
          "step_id": "gate",
          "action": "state.gate",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "6a0ed3d65779be265214a0e8395ab03978b9f7b91da9ffb59b257b73f82d087d",
          "completed_at": "2026-07-24T08:44:58Z"
        }
      ],
      "steps": [
        {
          "id": "plan",
          "action": "verification.plan",
          "status": "completed",
          "resolved_input_hash": "fd934039265310404d648cea4b1eb28964383bb8a97ef14b85b2b85d725d502e",
          "started_at": "2026-07-24T08:37:55Z",
          "output": {
            "schema_version": "1.0",
            "contract_version": 1,
            "executor": "ai-collab",
            "changed_files": [
              ".claude-plugin/marketplace.json",
              ".claude-plugin/plugin.json",
              ".codex-plugin/plugin.json",
              ".opencode/plugin.json",
              ".prd_plugin/config.json",
              ".prd_plugin/drift/events.jsonl",
              ".prd_plugin/ids/registry.json",
              ".prd_plugin/state/project.json",
              ".prd_plugin/state/releases.json",
              ".prd_plugin/state/requests.json",
              ".prd_plugin/state/tracking.json",
              ".prd_plugin/state/workflow-runs.json",
              "index.js",
              "mcp/server.cjs",
              "package.json",
              "raw/delivery/2026-07-24-prd-plugin-settings-decision-guidance.md",
              "scripts/prd_ui_export.py",
              "skills-manifest.json",
              "templates/config.json",
              "templates/project.json",
              "templates/releases.json",
              "templates/repo-skeleton/.claude-plugin/plugin.json",
              "templates/repo-skeleton/.codex-plugin/plugin.json",
              "templates/repo-skeleton/.opencode/plugin.json",
              "templates/repo-skeleton/.prd_plugin/config.json",
              "templates/repo-skeleton/.prd_plugin/state/project.json",
              "templates/repo-skeleton/.prd_plugin/templates/config.json",
              "templates/repo-skeleton/.prd_plugin/templates/project.json",
              "tests/test_prd_ui_export.py",
              "wiki/delivery/plugin-ui.md",
              "wiki/index.md",
              "wiki/log.md"
            ],
            "change_fingerprint": "53e3db38e946d59b55d1c52f56f50b47ec1fe2913ab6586c31d4f4705647bae9",
            "policy": {
              "enabled": true,
              "executor": "ai-collab",
              "neighbor_limit": 12,
              "max_changed_files": 25,
              "fallback": "full",
              "full_suite_triggers": [
                "release",
                "core_change",
                "impact_unavailable",
                "impact_degraded",
                "unmapped_change"
              ],
              "core_paths": [
                "package.json",
                "package-lock.json",
                "pyproject.toml",
                "Cargo.toml",
                "go.mod",
                ".github/workflows/**"
              ],
              "test_patterns": [
                "tests/**",
                "test/**",
                "spec/**",
                "**/*.test.*",
                "**/*.spec.*",
                "test_*.py",
                "*_test.py",
                "*_test.go",
                "**/test_*.py",
                "**/*_test.py",
                "**/*_test.go"
              ],
              "max_selected_tests": 200,
              "execution_timeout_seconds": 600,
              "focused_commands": [],
              "full_commands": [],
              "allowed_executables": [
                "python",
                "python3",
                "py",
                "pytest",
                "npm",
                "npx",
                "node",
                "go",
                "cargo",
                "dotnet",
                "mvn",
                "gradle",
                "gradlew",
                "make"
              ]
            },
            "selection_rules": {
              "precedence": [
                "exact_changed",
                "explicit_test_ownership",
                "structural_dependencies",
                "predictive_impact"
              ],
              "require_all_changed_files_mapped": true,
              "widen_before_full": true,
              "predictive_signal_is_sufficient_alone": false
            },
            "fallback": {
              "strategy": "full",
              "conditions": [
                "release",
                "core_change",
                "impact_unavailable",
                "impact_degraded",
                "unmapped_change"
              ]
            },
            "strategy": "full",
            "reason": "core_change",
            "runtime_requests": {},
            "plan_hash": "f7f516c85c0a495864ef5421cc956b6b82947ff8b1affa356a825f4e5a87c416"
          },
          "output_hash": "66fe34b9ad5c56d462111d718b6ea94d848688d69e0270a2670b015b762fab7c",
          "completed_at": "2026-07-24T08:37:55Z"
        },
        {
          "id": "execute",
          "action": "verification.execute",
          "status": "completed",
          "resolved_input_hash": "e15c919d60cf89d2d1f5da57704a32b57c0bcd85378cae9f91218a5b4602c06b",
          "started_at": "2026-07-24T08:37:55Z",
          "output": {
            "status": "passed",
            "strategy": "full",
            "reason": "core_change",
            "selected_tests": [],
            "change_fingerprint": "53e3db38e946d59b55d1c52f56f50b47ec1fe2913ab6586c31d4f4705647bae9",
            "plan_hash": "f7f516c85c0a495864ef5421cc956b6b82947ff8b1affa356a825f4e5a87c416",
            "impact_receipts": [],
            "receipts": [
              {
                "command": [
                  "npm",
                  "test"
                ],
                "exit_code": 0,
                "stdout": "\n> prd-plugin@0.16.51 test\n> python -m unittest discover -s tests -v\n\n{\n  \"status\": \"fail\",\n  \"repo_root\": \"C:\\\\Users\\\\marku\\\\AppData\\\\Local\\\\Temp\\\\tmp0lu7x5st\",\n  \"summary\": {\n    \"errors\": 1,\n    \"warnings\": 0\n  },\n  \"findings\": [\n    {\n      \"check\": \"duplicate_id\",\n      \"severity\": \"error\",\n      \"summary\": \"Duplicate id REQ-002 in .prd_plugin/state/requests.json.\",\n      \"required_action\": \"Renumber one record so REQ-002 is unique. Allocate IDs with the MCP tool prd_next_id (or the record tools like prd_open_goal) instead of hand-computing them.\"\n    }\n  ]\n}\nautonomy_level set to guided\nautonomy_level set to autonomous\nDESTRUCTIVE RESET REQUESTED: --force --yes will erase protected PRD Plugin project data.\nThe following existing state/configuration files would be replaced with skeleton defaults:\n  - .prd_plugin/state/tracking.json\nThis may erase IDs, tracking, requests, decisions, health findings, configuration, and session memory.\nFor a normal safe update, remove --yes and run: npx prd-install . --force\nPRD Plugin safe update: preserving existing state/config and refreshing plugin files only. Never add --yes to a routine update; it requests a destructive reset.\nPRD Plugin safe update: preserving existing state/config and refreshing plugin files only. Never add --yes to a routine update; it requests a destructive reset.\nPRD Plugin safe update: preserving existing state/config and refreshing plugin files only. Never add --yes to a routine update; it requests a destructive reset.\nPRD Plugin safe update: preserving existing state/config and refreshing plugin files only. Never add --yes to a routine update; it requests a destructive reset.\nPRD Plugin safe update: preserving existing state/config and refreshing plugin files only. Never add --yes to a routine update; it requests a destructive reset.\nPRD Plugin safe update: preserving existing state/config and refreshing plugin files only. Never add --yes to a routine update; it requests a destructive reset.\nPRD Plugin safe update: preserving existing state/config and refreshing plugin files only. Never add --yes to a routine update; it requests a destructive reset.\nPRD Plugin safe update: preserving existing state/config and refreshing plugin files only. Never add --yes to a routine update; it requests a destructive reset.\nPRD Plugin safe update: preserving existing state/config and refreshing plugin files only. Never add --yes to a routine update; it requests a destructive reset.\nPRD Plugin safe update: preserving existing state/config and refreshing plugin files only. Never add --yes to a routine update; it requests a destructive reset.\nPRD Plugin safe update: preserving existing state/config and refreshing plugin files only. Never add --yes to a routine update; it requests a destructive reset.\nPRD Plugin safe update: preserving existing state/config and refreshing plugin files only. Never add --yes to a routine update; it requests a destructive reset.\nPRD Plugin safe update: preserving existing state/config and refreshing plugin files only. Never add --yes to a routine update; it requests a destructive reset.\nPRD Plugin safe update: preserving existing state/config and refreshing plugin files only. Never add --yes to a routine update; it requests a destructive reset.\nPRD Plugin safe update: preserving existing state/config and refreshing plugin files only. Never add --yes to a routine update; it requests a destructive reset.\nPRD Plugin safe update: preserving existing state/config and refreshing plugin files only. Never add --yes to a routine update; it requests a destructive reset.\n{\n  \"published\": false,\n  \"package\": \"prd-plugin\",\n  \"version\": \"9.9.9\",\n  \"version_seen\": null,\n  \"latest_seen\": null,\n  \"attempts_used\": 1\n}\n{\n  \"published\": true,\n  \"package\": \"prd-plugin\",\n  \"version\": \"1.2.3\",\n  \"version_seen\": \"1.2.3\",\n  \"latest_seen\": \"1.2.3\",\n  \"attempts_used\": 1\n}\n{\"decision\": \"block\", \"reason\": \"Autonomous run-until-done: goal TRK-156 is still active. Continue with the next incomplete step toward it \\u2014 do not stop to ask 'shall I proceed?'. If you genuinely need the user (consent floor: push/merge/publish/secrets, or a real blocker), create the file .prd_plugin/local/autonomy-pause with a one-line reason and then stop; the guard will let you. Otherwise keep going.\"}\n",
                "stderr": "est_unified_config.MutationTests.test_manual_set_marks_profile_custom_and_preserves_style) ... ok\ntest_scalar_parent_is_not_clobbered_by_nested_set (test_unified_config.MutationTests.test_scalar_parent_is_not_clobbered_by_nested_set) ... ok\ntest_builtin_profile_dry_run_then_atomic_apply (test_unified_config.ProfileTests.test_builtin_profile_dry_run_then_atomic_apply) ... ok\ntest_invalid_custom_profile_never_partially_writes (test_unified_config.ProfileTests.test_invalid_custom_profile_never_partially_writes) ... ok\ntest_save_show_diff_and_delete_custom_profile (test_unified_config.ProfileTests.test_save_show_diff_and_delete_custom_profile) ... ok\ntest_does_not_flag_canonical_prd_state_paths (test_unsubmitted_plugin_request.UnsubmittedPluginRequestTests.test_does_not_flag_canonical_prd_state_paths) ... ok\ntest_does_not_flag_ordinary_project_requests (test_unsubmitted_plugin_request.UnsubmittedPluginRequestTests.test_does_not_flag_ordinary_project_requests) ... ok\ntest_does_not_flag_rejected_requests (test_unsubmitted_plugin_request.UnsubmittedPluginRequestTests.test_does_not_flag_rejected_requests) ... ok\ntest_does_not_flag_when_already_marked_upstream (test_unsubmitted_plugin_request.UnsubmittedPluginRequestTests.test_does_not_flag_when_already_marked_upstream) ... ok\ntest_flags_a_local_request_about_a_plugin_script (test_unsubmitted_plugin_request.UnsubmittedPluginRequestTests.test_flags_a_local_request_about_a_plugin_script) ... ok\ntest_flags_a_request_that_names_itself_upstream (test_unsubmitted_plugin_request.UnsubmittedPluginRequestTests.test_flags_a_request_that_names_itself_upstream) ... ok\ntest_never_fires_in_the_hub_repo_itself (test_unsubmitted_plugin_request.UnsubmittedPluginRequestTests.test_never_fires_in_the_hub_repo_itself) ... ok\ntest_wired_into_run_checks (test_unsubmitted_plugin_request.UnsubmittedPluginRequestTests.test_wired_into_run_checks) ... ok\ntest_output_writes_lf_and_a_trailing_newline (test_utcp_first_authority.GeneratedArtifactsAreByteStableTests.test_output_writes_lf_and_a_trailing_newline) ... ok\ntest_the_committed_manual_matches_a_fresh_generation (test_utcp_first_authority.GeneratedArtifactsAreByteStableTests.test_the_committed_manual_matches_a_fresh_generation) ... ok\ntest_every_spec_tool_maps_to_a_catalog_capability (test_utcp_first_authority.ParityDirectionTests.test_every_spec_tool_maps_to_a_catalog_capability) ... ok\ntest_server_metadata_matches_the_spec (test_utcp_first_authority.ParityDirectionTests.test_server_metadata_matches_the_spec) ... ok\ntest_python_entry_points_share_the_same_lock (test_utcp_first_authority.SafetyUnchangedTests.test_python_entry_points_share_the_same_lock)\nThe migration target already exists and is proven: prd_reflections ... ok\ntest_the_state_lock_is_still_held_for_mutations (test_utcp_first_authority.SafetyUnchangedTests.test_the_state_lock_is_still_held_for_mutations) ... ok\ntest_no_shipped_tool_metadata_carries_mojibake (test_utcp_first_authority.ShippedTextIsCleanTests.test_no_shipped_tool_metadata_carries_mojibake) ... ok\ntest_shipped_tool_metadata_is_valid_utf8 (test_utcp_first_authority.ShippedTextIsCleanTests.test_shipped_tool_metadata_is_valid_utf8)\nA file written through a cp1252 layer either fails to decode or ... ok\ntest_each_tool_declares_name_description_and_schema (test_utcp_first_authority.SpecIsTheSourceTests.test_each_tool_declares_name_description_and_schema) ... ok\ntest_the_manual_is_generated_from_the_spec_not_the_server (test_utcp_first_authority.SpecIsTheSourceTests.test_the_manual_is_generated_from_the_spec_not_the_server) ... ok\ntest_the_server_no_longer_authors_descriptions (test_utcp_first_authority.SpecIsTheSourceTests.test_the_server_no_longer_authors_descriptions)\nserver.cjs must READ definitions, not declare them. While a tool ... ok\ntest_the_spec_exists_and_declares_every_tool (test_utcp_first_authority.SpecIsTheSourceTests.test_the_spec_exists_and_declares_every_tool) ... ok\ntest_official_bridge_round_trips_cli_and_mcp_templates (test_utcp_first_catalog.BridgeParityTests.test_official_bridge_round_trips_cli_and_mcp_templates) ... C:\\Users\\marku\\AppData\\Local\\Python\\pythoncore-3.14-64\\Lib\\subprocess.py:1139: ResourceWarning: subprocess 22468 is still running\n  _warn(\"subprocess %s is still running\" % self.pid,\nResourceWarning: Enable tracemalloc to get the object allocation traceback\nC:\\Users\\marku\\AppData\\Local\\Python\\pythoncore-3.14-64\\Lib\\unittest\\case.py:615: ResourceWarning: unclosed file <_io.TextIOWrapper name=5 encoding='utf-8'>\n  result = method()\nResourceWarning: Enable tracemalloc to get the object allocation traceback\nC:\\Users\\marku\\AppData\\Local\\Python\\pythoncore-3.14-64\\Lib\\unittest\\case.py:615: ResourceWarning: unclosed file <_io.TextIOWrapper name=4 encoding='utf-8'>\n  result = method()\nResourceWarning: Enable tracemalloc to get the object allocation traceback\nok\ntest_bridged_entries_reuse_server_metadata_verbatim (test_utcp_first_catalog.GeneratedProjectionTests.test_bridged_entries_reuse_server_metadata_verbatim)\nEach bridged manual entry's description and inputs equal the server's ... ok\ntest_checked_in_metadata_matches_live_server (test_utcp_first_catalog.GeneratedProjectionTests.test_checked_in_metadata_matches_live_server)\nThe pinned metadata projection cannot drift behind the live server. ... ok\ntest_mutations_keep_the_validated_handler_path (test_utcp_first_catalog.GuardedMutationTests.test_mutations_keep_the_validated_handler_path)\nEvery manual tool in a non-read capability calls the plugin state ... ok\ntest_read_only_cli_tools_stay_cli (test_utcp_first_catalog.GuardedMutationTests.test_read_only_cli_tools_stay_cli)\nThe 12 cli-native observe/recall tools keep their cli templates. ... ok\ntest_checked_in_metadata_projection_exists (test_utcp_first_catalog.ManualCompletenessTests.test_checked_in_metadata_projection_exists)\nThe server's tool metadata is a checked-in generated artifact so the ... ok\ntest_manual_covers_every_capability_on_both_transports (test_utcp_first_catalog.ManualCompletenessTests.test_manual_covers_every_capability_on_both_transports)\nEvery UTCP and MCP registration in the tool-surface catalog appears ... ok\ntest_appends_version_change_request (test_version_advice.VersionAdviceTests.test_appends_version_change_request) ... ok\ntest_builds_safe_update_advice_for_low_risk_releases (test_version_advice.VersionAdviceTests.test_builds_safe_update_advice_for_low_risk_releases) ... ok\ntest_cli_uses_hub_releases_when_downstream_repo_has_no_releases_file (test_version_advice.VersionAdviceTests.test_cli_uses_hub_releases_when_downstream_repo_has_no_releases_file) ... ok\ntest_detects_installed_version_from_bom_json (test_version_advice.VersionAdviceTests.test_detects_installed_version_from_bom_json) ... ok\ntest_detects_installed_version_from_opencode_plugin_manifest (test_version_advice.VersionAdviceTests.test_detects_installed_version_from_opencode_plugin_manifest) ... ok\ntest_detects_installed_version_from_prd_plugin_config (test_version_advice.VersionAdviceTests.test_detects_installed_version_from_prd_plugin_config) ... ok\ntest_detects_latest_version_from_plugin_manifest (test_version_advice.VersionAdviceTests.test_detects_latest_version_from_plugin_manifest) ... ok\ntest_installed_version_priority_prefers_config_then_codex_then_opencode (test_version_advice.VersionAdviceTests.test_installed_version_priority_prefers_config_then_codex_then_opencode) ... ok\ntest_orders_prerelease_before_final_release (test_version_advice.VersionAdviceTests.test_orders_prerelease_before_final_release) ... ok\ntest_recommends_review_first_for_medium_or_high_risk_release (test_version_advice.VersionAdviceTests.test_recommends_review_first_for_medium_or_high_risk_release) ... ok\ntest_disabled_returns_disabled_and_no_fetch (test_version_check.CheckTests.test_disabled_returns_disabled_and_no_fetch) ... ok\ntest_force_refetches_within_ttl (test_version_check.CheckTests.test_force_refetches_within_ttl) ... ok\ntest_network_failure_is_fail_open (test_version_check.CheckTests.test_network_failure_is_fail_open) ... ok\ntest_no_update_when_current (test_version_check.CheckTests.test_no_update_when_current) ... ok\ntest_status_is_cache_only_no_fetch (test_version_check.CheckTests.test_status_is_cache_only_no_fetch) ... ok\ntest_ttl_cache_avoids_refetch (test_version_check.CheckTests.test_ttl_cache_avoids_refetch) ... ok\ntest_ttl_expiry_refetches (test_version_check.CheckTests.test_ttl_expiry_refetches) ... ok\ntest_update_available_when_npm_is_ahead (test_version_check.CheckTests.test_update_available_when_npm_is_ahead) ... ok\ntest_status_cli_exits_zero (test_version_check.CliTests.test_status_cli_exits_zero) ... ok\ntest_default_ttl_is_responsive_not_a_day (test_version_check.FreshnessTests.test_default_ttl_is_responsive_not_a_day) ... ok\ntest_fetch_latest_accepts_a_timeout (test_version_check.FreshnessTests.test_fetch_latest_accepts_a_timeout) ... ok\ntest_nudge_refreshes_in_session_not_cache_only (test_version_check.FreshnessTests.test_nudge_refreshes_in_session_not_cache_only) ... ok\ntest_registry_default_ttl_matches (test_version_check.FreshnessTests.test_registry_default_ttl_matches) ... ok\ntest_semver_ordering (test_version_check.ParseTests.test_semver_ordering) ... ok\ntest_set_enabled_writes_config (test_version_check.ToggleTests.test_set_enabled_writes_config) ... ok\ntest_config_has_version_check_default_on (test_version_check.WiringTests.test_config_has_version_check_default_on) ... ok\ntest_nudge_surfaces_update_available (test_version_check.WiringTests.test_nudge_surfaces_update_available) ... ok\ntest_prd_version_command_exists (test_version_check.WiringTests.test_prd_version_command_exists) ... ok\ntest_script_registered_downstream (test_version_check.WiringTests.test_script_registered_downstream) ... ok\ntest_plan_cli_emits_json (test_wiki_backfill.CliTests.test_plan_cli_emits_json) ... ok\ntest_status_cli (test_wiki_backfill.CliTests.test_status_cli) ... ok\ntest_marker_written_for_established_repo_gaining_wiki (test_wiki_backfill.InstallerMarkerTests.test_marker_written_for_established_repo_gaining_wiki) ... ok\ntest_no_marker_for_empty_scaffold (test_wiki_backfill.InstallerMarkerTests.test_no_marker_for_empty_scaffold) ... ok\ntest_no_marker_when_wiki_already_exists (test_wiki_backfill.InstallerMarkerTests.test_no_marker_when_wiki_already_exists) ... ok\ntest_no_marker_when_wiki_disabled (test_wiki_backfill.InstallerMarkerTests.test_no_marker_when_wiki_disabled) ... ok\ntest_pending_false_when_absent (test_wiki_backfill.StatusTests.test_pending_false_when_absent) ... ok\ntest_pending_false_when_wiki_already_exists (test_wiki_backfill.StatusTests.test_pending_false_when_wiki_already_exists) ... ok\ntest_pending_true_when_marker_present (test_wiki_backfill.StatusTests.test_pending_true_when_marker_present) ... ok\ntest_plan_excludes_generated_report_artifacts (test_wiki_backfill.SurveyPlanTests.test_plan_excludes_generated_report_artifacts)\nrequest-report/ (incl. its calibration report trees) and docs/evidence/ ... ok\ntest_plan_excludes_plugin_and_vendor_noise (test_wiki_backfill.SurveyPlanTests.test_plan_excludes_plugin_and_vendor_noise) ... ok\ntest_plan_inventories_code_docs_and_state (test_wiki_backfill.SurveyPlanTests.test_plan_inventories_code_docs_and_state) ... ok\ntest_plan_is_read_only (test_wiki_backfill.SurveyPlanTests.test_plan_is_read_only) ... ok\ntest_wiki_drift_in_on_stop_and_default_sets (test_wiki_backfill.WikiDriftMonitorWiringTests.test_wiki_drift_in_on_stop_and_default_sets) ... ok\ntest_current_article_no_drift (test_wiki_backfill.WikiDriftTests.test_current_article_no_drift) ... ok\ntest_drift_cli (test_wiki_backfill.WikiDriftTests.test_drift_cli) ... ok\ntest_far_behind_article_flagged (test_wiki_backfill.WikiDriftTests.test_far_behind_article_flagged) ... ok\ntest_no_wiki_is_ok (test_wiki_backfill.WikiDriftTests.test_no_wiki_is_ok) ... ok\ntest_unlinked_markdown_reference_is_part_of_wiki_drift (test_wiki_backfill.WikiDriftTests.test_unlinked_markdown_reference_is_part_of_wiki_drift) ... ok\ntest_unstamped_article_flagged (test_wiki_backfill.WikiDriftTests.test_unstamped_article_flagged) ... ok\ntest_wiki_drift_uses_configured_wiki_directory (test_wiki_backfill.WikiDriftTests.test_wiki_drift_uses_configured_wiki_directory) ... ok\ntest_ambiguous_reference_is_reported_but_never_guessed (test_wiki_backfill.WikiInlineMarkdownLinkTests.test_ambiguous_reference_is_reported_but_never_guessed) ... ok\ntest_cli_check_fails_and_fix_then_passes (test_wiki_backfill.WikiInlineMarkdownLinkTests.test_cli_check_fails_and_fix_then_passes) ... ok\ntest_existing_inline_links_and_fenced_examples_are_not_findings (test_wiki_backfill.WikiInlineMarkdownLinkTests.test_existing_inline_links_and_fenced_examples_are_not_findings) ... ok\ntest_fix_rewrites_only_unambiguous_references_to_relative_inline_links (test_wiki_backfill.WikiInlineMarkdownLinkTests.test_fix_rewrites_only_unambiguous_references_to_relative_inline_links) ... ok\ntest_reports_resolvable_bare_and_code_wrapped_markdown_references (test_wiki_backfill.WikiInlineMarkdownLinkTests.test_reports_resolvable_bare_and_code_wrapped_markdown_references) ... ok\ntest_nudge_surfaces_pending_backfill (test_wiki_backfill.WiringTests.test_nudge_surfaces_pending_backfill) ... ok\ntest_script_registered_downstream (test_wiki_backfill.WiringTests.test_script_registered_downstream) ... ok\ntest_skill_has_backfill_mode (test_wiki_backfill.WiringTests.test_skill_has_backfill_mode) ... ok\ntest_copy_and_download_controls_are_wired (test_wiki_html_export.WikiHtmlExportTests.test_copy_and_download_controls_are_wired) ... ok\ntest_default_output_lands_in_the_local_runtime_dir (test_wiki_html_export.WikiHtmlExportTests.test_default_output_lands_in_the_local_runtime_dir) ... ok\ntest_every_page_is_embedded_with_exact_markdown (test_wiki_html_export.WikiHtmlExportTests.test_every_page_is_embedded_with_exact_markdown) ... ok\ntest_export_all_generates_viewers_and_super_index (test_wiki_html_export.WikiHtmlExportTests.test_export_all_generates_viewers_and_super_index) ... ok\ntest_export_is_one_self_contained_offline_file (test_wiki_html_export.WikiHtmlExportTests.test_export_is_one_self_contained_offline_file) ... ok\ntest_guest_repo_viewer_is_hosted_by_the_host_repo (test_wiki_html_export.WikiHtmlExportTests.test_guest_repo_viewer_is_hosted_by_the_host_repo)\nA repo without .prd_plugin gets NO new files in its own tree; its ... ok\ntest_hub_repo_exports_all_pages (test_wiki_html_export.WikiHtmlExportTests.test_hub_repo_exports_all_pages) ... ok\ntest_parse_wiki_log_extracts_dated_entries_with_bodies (test_wiki_html_export.WikiHtmlExportTests.test_parse_wiki_log_extracts_dated_entries_with_bodies)\nREQ-112: every workspace log follows '## [date] mode | text'. ... ok\ntest_parse_wiki_log_tolerates_missing_log (test_wiki_html_export.WikiHtmlExportTests.test_parse_wiki_log_tolerates_missing_log) ... ok\ntest_script_content_cannot_break_the_payload (test_wiki_html_export.WikiHtmlExportTests.test_script_content_cannot_break_the_payload) ... ok\ntest_super_index_has_a_combined_changelog (test_wiki_html_export.WikiHtmlExportTests.test_super_index_has_a_combined_changelog) ... ok\ntest_super_index_reports_page_counts (test_wiki_html_export.WikiHtmlExportTests.test_super_index_reports_page_counts) ... ok\ntest_workspace_discovery_uses_the_wiki_convention_marker (test_wiki_html_export.WikiHtmlExportTests.test_workspace_discovery_uses_the_wiki_convention_marker)\nREQ-110 + REQ-111: any immediate child whose wiki follows the ... ok\ntest_a_repo_without_a_wiki_is_not_in_drift (test_wiki_ingest_drift.DetectionTests.test_a_repo_without_a_wiki_is_not_in_drift)\nNo wiki is a legitimate state, not a failure to ingest. ... ok\ntest_fully_ingested_repo_is_clean (test_wiki_ingest_drift.DetectionTests.test_fully_ingested_repo_is_clean) ... ok\ntest_malformed_state_degrades_rather_than_raising (test_wiki_ingest_drift.DetectionTests.test_malformed_state_degrades_rather_than_raising) ... ok\ntest_non_implemented_requests_are_never_expected_in_the_log (test_wiki_ingest_drift.DetectionTests.test_non_implemented_requests_are_never_expected_in_the_log) ... ok\ntest_only_work_since_the_last_ingest_is_actionable (test_wiki_ingest_drift.DetectionTests.test_only_work_since_the_last_ingest_is_actionable)\nRaw counting flags pre-wiki history as drift � ~70 items in the hub, ... ok\ntest_reports_implemented_requests_absent_from_the_log (test_wiki_ingest_drift.DetectionTests.test_reports_implemented_requests_absent_from_the_log) ... ok\ntest_it_runs_against_this_repo_and_returns_a_usable_report (test_wiki_ingest_drift.RealRepoTests.test_it_runs_against_this_repo_and_returns_a_usable_report)\nGrounded against real state, but NOT pinned to a specific gap: a test ... ok\ntest_prd_status_omits_it_when_clean (test_wiki_ingest_drift.SurfaceTests.test_prd_status_omits_it_when_clean) ... ok\ntest_prd_status_reports_the_drift (test_wiki_ingest_drift.SurfaceTests.test_prd_status_reports_the_drift) ... ok\ntest_this_repos_wiki_reads_byte_exact (test_wiki_page_contract.HubRepoSmokeTests.test_this_repos_wiki_reads_byte_exact) ... ok\ntest_list_enumerates_canonical_pages_with_titles (test_wiki_page_contract.WikiPageListTests.test_list_enumerates_canonical_pages_with_titles) ... ok\ntest_boundaries_are_hard (test_wiki_page_contract.WikiPageReadTests.test_boundaries_are_hard) ... ok\ntest_drift_remains_the_default_action (test_wiki_page_contract.WikiPageReadTests.test_drift_remains_the_default_action) ... ok\ntest_read_page_without_stamps_reports_null_provenance (test_wiki_page_contract.WikiPageReadTests.test_read_page_without_stamps_reports_null_provenance) ... ok\ntest_read_requires_a_path (test_wiki_page_contract.WikiPageReadTests.test_read_requires_a_path) ... ok\ntest_read_returns_exact_markdown_with_provenance (test_wiki_page_contract.WikiPageReadTests.test_read_returns_exact_markdown_with_provenance) ... ok\ntest_no_cp1252_unencodable_chars_in_agent_facing_tools (test_windows_console_safe.SourceScanTests.test_no_cp1252_unencodable_chars_in_agent_facing_tools) ... ok\ntest_backfill_pending_status_renders_cp1252_safe (test_windows_console_safe.StatusRenderTests.test_backfill_pending_status_renders_cp1252_safe) ... ok\ntest_repository_workflow_surfaces_are_chml_zero (test_workflow_chml_audit.WorkflowChmlAuditTests.test_repository_workflow_surfaces_are_chml_zero) ... ok\ntest_semantic_skill_finding_is_part_of_workflow_chml (test_workflow_chml_audit.WorkflowChmlAuditTests.test_semantic_skill_finding_is_part_of_workflow_chml) ... ok\ntest_git_workflow_pushes_clean_verified_commits_in_autonomous (test_workflow_consistency.AutonomyConflictResolutionTests.test_git_workflow_pushes_clean_verified_commits_in_autonomous) ... ok\ntest_request_intake_defers_autonomy_and_owns_graduation (test_workflow_consistency.AutonomyConflictResolutionTests.test_request_intake_defers_autonomy_and_owns_graduation) ... ok\ntest_evidence_pair_states_create_vs_review_boundary (test_workflow_consistency.BoundaryClarityTests.test_evidence_pair_states_create_vs_review_boundary) ... ok\ntest_session_close_states_memory_boundary (test_workflow_consistency.BoundaryClarityTests.test_session_close_states_memory_boundary) ... ok\ntest_document_branch_has_promotion_owner (test_workflow_consistency.DeadEndOwnerTests.test_document_branch_has_promotion_owner) ... ok\ntest_health_findings_have_triage_dispositions (test_workflow_consistency.DeadEndOwnerTests.test_health_findings_have_triage_dispositions) ... ok\ntest_memory_owns_schema_version_changes (test_workflow_consistency.DeadEndOwnerTests.test_memory_owns_schema_version_changes) ... ok\ntest_planning_lifecycle_has_stage_readiness_checkpoints (test_workflow_consistency.DeadEndOwnerTests.test_planning_lifecycle_has_stage_readiness_checkpoints) ... ok\ntest_session_close_runs_traceability_sync (test_workflow_consistency.DeadEndOwnerTests.test_session_close_runs_traceability_sync) ... ok\n\n----------------------------------------------------------------------\nRan 1199 tests in 419.975s\n\nOK\n",
                "receipt_hash": "2dc45f3f9134a41b8b21cbe424b93e2574a27481113f724170e97d4499f05d65"
              }
            ],
            "execution_hash": "933dacd0bc0813bb8dbbcc3b935df58cb08a45ac523bcd3292aa735668755b01"
          },
          "output_hash": "2a84237aa413470f40c0e7f4620072f8d7cf6362024e93237e33d23418875a6a",
          "completed_at": "2026-07-24T08:44:56Z"
        },
        {
          "id": "diff",
          "action": "git.diff_check",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-24T08:44:56Z",
          "output": {
            "passed": true
          },
          "output_hash": "11c11db30f4b3f6c758722ba3e27eea08145b7d212f6a157451e364b48475280",
          "completed_at": "2026-07-24T08:44:56Z"
        },
        {
          "id": "state",
          "action": "state.consistency",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-24T08:44:57Z",
          "output": {
            "status": "ok",
            "repo_root": "D:\\Projects\\prd-plugin",
            "summary": {
              "errors": 0,
              "warnings": 0,
              "infos": 1
            },
            "findings": [
              {
                "id": "CONS-INFO-001",
                "severity": "info",
                "path": "docs/evidence/EV-200.md",
                "summary": "File references 2 canonical IDs across 2 prefix(es); treated as a positive signal of extra work.",
                "referenced_prefixes": [
                  "CHG",
                  "TRK"
                ],
                "referenced_id_count": 2,
                "required_action": "No action required; this is an informational signal."
              }
            ]
          },
          "output_hash": "9963110856ca8182da0dfdbb22f6960618b55dbc121be0dce0066a7c7a389b10",
          "completed_at": "2026-07-24T08:44:57Z"
        },
        {
          "id": "gate",
          "action": "state.gate",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-24T08:44:57Z",
          "output": {
            "status": "attention",
            "repo_root": "D:\\Projects\\prd-plugin",
            "summary": {
              "errors": 0,
              "warnings": 0
            },
            "findings": [
              {
                "check": "state_consistency",
                "severity": "info",
                "summary": "File references 2 canonical IDs across 2 prefix(es); treated as a positive signal of extra work.",
                "required_action": "No action required; this is an informational signal."
              }
            ]
          },
          "output_hash": "6a0ed3d65779be265214a0e8395ab03978b9f7b91da9ffb59b257b73f82d087d",
          "completed_at": "2026-07-24T08:44:58Z"
        }
      ],
      "completed_at": "2026-07-24T08:44:59Z"
    },
    {
      "id": "WFR-397",
      "schema_version": "1.0",
      "workflow_id": "hub.release",
      "workflow_version": 1,
      "definition_hash": "ab6ae2afcb0128db8d994b6b397e543c7490017bd3d1b15309079edc6be94d9a",
      "plan_hash": "02bcb9cb71ca5641cc12e6270fee67758c0051b183e4204137993cd57b89a7bd",
      "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
      "inputs": {},
      "idempotency_key": "req-170-config-ui-release-v1",
      "status": "completed",
      "attempt": 1,
      "created_at": "2026-07-24T08:46:08Z",
      "updated_at": "2026-07-24T08:53:27Z",
      "receipts": [
        {
          "step_id": "diff",
          "action": "git.diff_check",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "11c11db30f4b3f6c758722ba3e27eea08145b7d212f6a157451e364b48475280",
          "completed_at": "2026-07-24T08:46:09Z"
        },
        {
          "step_id": "config",
          "action": "config.audit",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "172e2697e5951667d2eafa396cb6a952ff4a8c53ebf5dc228ab999c00692f8d2",
          "completed_at": "2026-07-24T08:46:09Z"
        },
        {
          "step_id": "state",
          "action": "state.consistency",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "9963110856ca8182da0dfdbb22f6960618b55dbc121be0dce0066a7c7a389b10",
          "completed_at": "2026-07-24T08:46:10Z"
        },
        {
          "step_id": "workflow_audit",
          "action": "process.fixed",
          "input_hash": "edf19b269a54d72753f1abc2b8ffcb810c2b7bc377cee7e1698c939f17e0be94",
          "output_hash": "231b43ed70e09c4e7cbcda1094b00e0274dd4a22ff8324da2eb907f705c1316a",
          "completed_at": "2026-07-24T08:46:11Z"
        },
        {
          "step_id": "substrate_audit",
          "action": "process.fixed",
          "input_hash": "4998f71d2d3f6ac7dd50e10d37f60ae32d54898949950e484da9de113e18a979",
          "output_hash": "4176fd7e9d2d33bd61e5fd6bb8d392a63eaa5b2cb65b750eeb348b9dd55fe220",
          "completed_at": "2026-07-24T08:46:11Z"
        },
        {
          "step_id": "suite",
          "action": "process.fixed",
          "input_hash": "954e575e48145853f5681eda189186c95a053267158fae669114320f2e53794a",
          "output_hash": "7f861a717fb8a5a91addfe546ca56ec06286ca0168e6368bbc69d0bfcdc742a4",
          "completed_at": "2026-07-24T08:53:23Z"
        },
        {
          "step_id": "release",
          "action": "process.fixed",
          "input_hash": "1e5b0c18d93eb4c2248f9a00adbd438e52f3ef02137477fb8376c69cfe86fc9b",
          "output_hash": "597d91b9a20a154260216e9b987c177bae8bd15d1a1ac07942eb24999fd6ce2a",
          "completed_at": "2026-07-24T08:53:23Z"
        },
        {
          "step_id": "gaps",
          "action": "process.fixed",
          "input_hash": "577241909238eeb55683f89d2d2216648dad2e3127397993e22493829a1307a4",
          "output_hash": "257a9535feab2394eee63c6461d130a3e970cd753086cba754f7ff4859bc0162",
          "completed_at": "2026-07-24T08:53:24Z"
        },
        {
          "step_id": "package",
          "action": "process.fixed",
          "input_hash": "06cd12e1f3db3d985f9150520afa60f288297ff0ca01a8e813e9bb6291aa8836",
          "output_hash": "82e18eb8a47f906b516bd972eedbf3565dbfdd9220aa55d4b29881028702fccd",
          "completed_at": "2026-07-24T08:53:26Z"
        },
        {
          "step_id": "gate",
          "action": "state.gate",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "6a0ed3d65779be265214a0e8395ab03978b9f7b91da9ffb59b257b73f82d087d",
          "completed_at": "2026-07-24T08:53:27Z"
        }
      ],
      "steps": [
        {
          "id": "diff",
          "action": "git.diff_check",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-24T08:46:09Z",
          "output": {
            "passed": true
          },
          "output_hash": "11c11db30f4b3f6c758722ba3e27eea08145b7d212f6a157451e364b48475280",
          "completed_at": "2026-07-24T08:46:09Z"
        },
        {
          "id": "config",
          "action": "config.audit",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-24T08:46:09Z",
          "output": {
            "status": "ok",
            "summary": {
              "settings": 209,
              "mutable": 199,
              "read_only_or_managed": 10,
              "unclassified": 0,
              "unknown": 0,
              "invalid": 0,
              "missing_using_defaults": 0
            },
            "unclassified_keys": [],
            "unknown_keys": [],
            "invalid_values": [],
            "missing_using_defaults": []
          },
          "output_hash": "172e2697e5951667d2eafa396cb6a952ff4a8c53ebf5dc228ab999c00692f8d2",
          "completed_at": "2026-07-24T08:46:09Z"
        },
        {
          "id": "state",
          "action": "state.consistency",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-24T08:46:09Z",
          "output": {
            "status": "ok",
            "repo_root": "D:\\Projects\\prd-plugin",
            "summary": {
              "errors": 0,
              "warnings": 0,
              "infos": 1
            },
            "findings": [
              {
                "id": "CONS-INFO-001",
                "severity": "info",
                "path": "docs/evidence/EV-200.md",
                "summary": "File references 2 canonical IDs across 2 prefix(es); treated as a positive signal of extra work.",
                "referenced_prefixes": [
                  "CHG",
                  "TRK"
                ],
                "referenced_id_count": 2,
                "required_action": "No action required; this is an informational signal."
              }
            ]
          },
          "output_hash": "9963110856ca8182da0dfdbb22f6960618b55dbc121be0dce0066a7c7a389b10",
          "completed_at": "2026-07-24T08:46:10Z"
        },
        {
          "id": "workflow_audit",
          "action": "process.fixed",
          "status": "completed",
          "resolved_input_hash": "edf19b269a54d72753f1abc2b8ffcb810c2b7bc377cee7e1698c939f17e0be94",
          "started_at": "2026-07-24T08:46:10Z",
          "output": {
            "operation": "workflow_chml_audit",
            "command": [
              "python",
              "scripts/workflow_chml_audit.py",
              "--repo-root",
              ".",
              "--format",
              "json"
            ],
            "exit_code": 0,
            "stdout": "{\n  \"status\": \"ok\",\n  \"repo_root\": \"D:\\\\Projects\\\\prd-plugin\",\n  \"summary\": {\n    \"critical\": 0,\n    \"high\": 0,\n    \"medium\": 0,\n    \"low\": 0\n  },\n  \"findings\": []\n}\n",
            "stderr": ""
          },
          "output_hash": "231b43ed70e09c4e7cbcda1094b00e0274dd4a22ff8324da2eb907f705c1316a",
          "completed_at": "2026-07-24T08:46:11Z"
        },
        {
          "id": "substrate_audit",
          "action": "process.fixed",
          "status": "completed",
          "resolved_input_hash": "4998f71d2d3f6ac7dd50e10d37f60ae32d54898949950e484da9de113e18a979",
          "started_at": "2026-07-24T08:46:11Z",
          "output": {
            "operation": "substrate_capability_audit",
            "command": [
              "python",
              "scripts/prd_substrate_catalog.py",
              "--repo-root",
              ".",
              "audit"
            ],
            "exit_code": 0,
            "stdout": "{\n  \"status\": \"ok\",\n  \"schema_version\": \"1.0\",\n  \"capability_count\": 26,\n  \"runtime_tool_count\": 103,\n  \"intent_count\": 31,\n  \"summary\": {\n    \"critical\": 0,\n    \"high\": 0,\n    \"medium\": 0,\n    \"low\": 0\n  },\n  \"findings\": []\n}\n",
            "stderr": ""
          },
          "output_hash": "4176fd7e9d2d33bd61e5fd6bb8d392a63eaa5b2cb65b750eeb348b9dd55fe220",
          "completed_at": "2026-07-24T08:46:11Z"
        },
        {
          "id": "suite",
          "action": "process.fixed",
          "status": "completed",
          "resolved_input_hash": "954e575e48145853f5681eda189186c95a053267158fae669114320f2e53794a",
          "started_at": "2026-07-24T08:46:11Z",
          "output": {
            "operation": "local_workflow_check",
            "command": [
              "python",
              "scripts/local_workflow_check.py"
            ],
            "exit_code": 0,
            "stdout": "Structured file validation passed.\n$ python -m unittest discover -s tests -v\n{\n  \"status\": \"fail\",\n  \"repo_root\": \"C:\\\\Users\\\\marku\\\\AppData\\\\Local\\\\Temp\\\\tmpa44ckax9\",\n  \"summary\": {\n    \"errors\": 1,\n    \"warnings\": 0\n  },\n  \"findings\": [\n    {\n      \"check\": \"duplicate_id\",\n      \"severity\": \"error\",\n      \"summary\": \"Duplicate id REQ-002 in .prd_plugin/state/requests.json.\",\n      \"required_action\": \"Renumber one record so REQ-002 is unique. Allocate IDs with the MCP tool prd_next_id (or the record tools like prd_open_goal) instead of hand-computing them.\"\n    }\n  ]\n}\nautonomy_level set to guided\nautonomy_level set to autonomous\nDESTRUCTIVE RESET REQUESTED: --force --yes will erase protected PRD Plugin project data.\nThe following existing state/configuration files would be replaced with skeleton defaults:\n  - .prd_plugin/state/tracking.json\nThis may erase IDs, tracking, requests, decisions, health findings, configuration, and session memory.\nFor a normal safe update, remove --yes and run: npx prd-install . --force\nPRD Plugin safe update: preserving existing state/config and refreshing plugin files only. Never add --yes to a routine update; it requests a destructive reset.\nPRD Plugin safe update: preserving existing state/config and refreshing plugin files only. Never add --yes to a routine update; it requests a destructive reset.\nPRD Plugin safe update: preserving existing state/config and refreshing plugin files only. Never add --yes to a routine update; it requests a destructive reset.\nPRD Plugin safe update: preserving existing state/config and refreshing plugin files only. Never add --yes to a routine update; it requests a destructive reset.\nPRD Plugin safe update: preserving existing state/config and refreshing plugin files only. Never add --yes to a routine update; it requests a destructive reset.\nPRD Plugin safe update: preserving existing state/config and refreshing plugin files only. Never add --yes to a routine update; it requests a destructive reset.\nPRD Plugin safe update: preserving existing state/config and refreshing plugin files only. Never add --yes to a routine update; it requests a destructive reset.\nPRD Plugin safe update: preserving existing state/config and refreshing plugin files only. Never add --yes to a routine update; it requests a destructive reset.\nPRD Plugin safe update: preserving existing state/config and refreshing plugin files only. Never add --yes to a routine update; it requests a destructive reset.\nPRD Plugin safe update: preserving existing state/config and refreshing plugin files only. Never add --yes to a routine update; it requests a destructive reset.\nPRD Plugin safe update: preserving existing state/config and refreshing plugin files only. Never add --yes to a routine update; it requests a destructive reset.\nPRD Plugin safe update: preserving existing state/config and refreshing plugin files only. Never add --yes to a routine update; it requests a destructive reset.\nPRD Plugin safe update: preserving existing state/config and refreshing plugin files only. Never add --yes to a routine update; it requests a destructive reset.\nPRD Plugin safe update: preserving existing state/config and refreshing plugin files only. Never add --yes to a routine update; it requests a destructive reset.\nPRD Plugin safe update: preserving existing state/config and refreshing plugin files only. Never add --yes to a routine update; it requests a destructive reset.\nPRD Plugin safe update: preserving existing state/config and refreshing plugin files only. Never add --yes to a routine update; it requests a destructive reset.\n{\n  \"published\": false,\n  \"package\": \"prd-plugin\",\n  \"version\": \"9.9.9\",\n  \"version_seen\": null,\n  \"latest_seen\": null,\n  \"attempts_used\": 1\n}\n{\n  \"published\": true,\n  \"package\": \"prd-plugin\",\n  \"version\": \"1.2.3\",\n  \"version_seen\": \"1.2.3\",\n  \"latest_seen\": \"1.2.3\",\n  \"attempts_used\": 1\n}\n{\"decision\": \"block\", \"reason\": \"Autonomous run-until-done: goal TRK-156 is still active. Continue with the next incomplete step toward it \\u2014 do not stop to ask 'shall I proceed?'. If you genuinely need the user (consent floor: push/merge/publish/secrets, or a real blocker), create the file .prd_plugin/local/autonomy-pause with a one-line reason and then stop; the guard will let you. Otherwise keep going.\"}\n$ python scripts/feature_skill_audit.py --repo-root . --format json\n{\n  \"status\": \"ok\",\n  \"repo_root\": \"D:\\\\Projects\\\\prd-plugin\",\n  \"contract\": \"templates/feature-skill-map.json\",\n  \"feature_count\": 28,\n  \"summary\": {\n    \"critical\": 0,\n    \"high\": 0,\n    \"medium\": 0,\n    \"low\": 0\n  },\n  \"findings\": []\n}\n$ python scripts/gap_audit.py --target-version 0.16.51\n# PRD Plugin Gap Audit\n\nTarget version: `0.16.51`\n\n## Findings\n\n- None\n$ python scripts/version_advice.py --installed-repo . --format json --output request-report/version-advice.json\n$ python scripts/release_check.py --output request-report/release-hygiene.md\n$ python scripts/prd_doctor.py --repo-root . --format json --output request-report/prd-doctor.json\n$ python scripts/state_consistency_check.py --repo-root . --format json --output request-report/state-consistency.json\n$ python scripts/prd_install_skills.py --repo-root . --dry-run\n{\n  \"status\": \"dry_run\",\n  \"target_agent\": \"codex\",\n  \"targets\": [\n    {\n      \"agent\": \"codex\",\n      \"target\": \".agents\\\\skills\",\n      \"would_install\": [\n        \"project-architecture\",\n        \"project-blocker-resolution\",\n        \"project-brainstorm\",\n        \"project-change-request\",\n        \"project-code-review\",\n        \"project-decision-ledger\",\n        \"project-decision-policy\",\n        \"project-deterministic-workflows\",\n        \"project-document-branch\",\n        \"project-evidence\",\n        \"project-evidence-ledger\",\n        \"project-git-workflow\",\n        \"project-health\",\n        \"project-implementation-plan\",\n        \"project-llm-wiki\",\n        \"project-local-integration\",\n        \"project-memory\",\n        \"project-planning-lifecycle\",\n        \"project-prd\",\n        \"project-prd-plugin-setup\",\n        \"project-request-intake\",\n        \"project-session-close\",\n        \"project-systematic-debugging\",\n        \"project-test-driven-implementation\",\n        \"project-traceability-review\",\n        \"project-traceability-sync\",\n        \"project-verification-before-completion\",\n        \"source-command-prd-autonomy\",\n        \"source-command-prd-close\",\n        \"source-command-prd-config\",\n        \"source-command-prd-drift\",\n        \"source-command-prd-graph\",\n        \"source-command-prd-hooks\",\n        \"source-command-prd-new\",\n        \"source-command-prd-off\",\n        \"source-command-prd-on\",\n        \"source-command-prd-reflections\",\n        \"source-command-prd-report\",\n        \"source-command-prd-status\",\n        \"source-command-prd-track\",\n        \"source-command-prd-version\",\n        \"source-command-prd-workflow\"\n      ],\n      \"would_remove\": [\n        \"project-fold-it-in\",\n        \"project-self-audit\"\n      ]\n    }\n  ],\n  \"installed_count\": 0,\n  \"target\": \".agents\\\\skills\",\n  \"installed\": [],\n  \"removed\": [],\n  \"would_install\": [\n    \"project-architecture\",\n    \"project-blocker-resolution\",\n    \"project-brainstorm\",\n    \"project-change-request\",\n    \"project-code-review\",\n    \"project-decision-ledger\",\n    \"project-decision-policy\",\n    \"project-deterministic-workflows\",\n    \"project-document-branch\",\n    \"project-evidence\",\n    \"project-evidence-ledger\",\n    \"project-git-workflow\",\n    \"project-health\",\n    \"project-implementation-plan\",\n    \"project-llm-wiki\",\n    \"project-local-integration\",\n    \"project-memory\",\n    \"project-planning-lifecycle\",\n    \"project-prd\",\n    \"project-prd-plugin-setup\",\n    \"project-request-intake\",\n    \"project-session-close\",\n    \"project-systematic-debugging\",\n    \"project-test-driven-implementation\",\n    \"project-traceability-review\",\n    \"project-traceability-sync\",\n    \"project-verification-before-completion\",\n    \"source-command-prd-autonomy\",\n    \"source-command-prd-close\",\n    \"source-command-prd-config\",\n    \"source-command-prd-drift\",\n    \"source-command-prd-graph\",\n    \"source-command-prd-hooks\",\n    \"source-command-prd-new\",\n    \"source-command-prd-off\",\n    \"source-command-prd-on\",\n    \"source-command-prd-reflections\",\n    \"source-command-prd-report\",\n    \"source-command-prd-status\",\n    \"source-command-prd-track\",\n    \"source-command-prd-version\",\n    \"source-command-prd-workflow\"\n  ],\n  \"would_remove\": [\n    \"project-fold-it-in\",\n    \"project-self-audit\"\n  ]\n}\n$ python scripts/request_report.py --config .prd_plugin/config.json --format markdown --output request-report/request-report.md\n$ python scripts/request_report.py --config .prd_plugin/config.json --format json --output request-report/request-report.json\n$ python scripts/message_check.py --config .prd_plugin/config.json --format json --output request-report/message-check.json\nLocal workflow check completed.\n",
            "stderr": "est_unified_config.MutationTests.test_manual_set_marks_profile_custom_and_preserves_style) ... ok\ntest_scalar_parent_is_not_clobbered_by_nested_set (test_unified_config.MutationTests.test_scalar_parent_is_not_clobbered_by_nested_set) ... ok\ntest_builtin_profile_dry_run_then_atomic_apply (test_unified_config.ProfileTests.test_builtin_profile_dry_run_then_atomic_apply) ... ok\ntest_invalid_custom_profile_never_partially_writes (test_unified_config.ProfileTests.test_invalid_custom_profile_never_partially_writes) ... ok\ntest_save_show_diff_and_delete_custom_profile (test_unified_config.ProfileTests.test_save_show_diff_and_delete_custom_profile) ... ok\ntest_does_not_flag_canonical_prd_state_paths (test_unsubmitted_plugin_request.UnsubmittedPluginRequestTests.test_does_not_flag_canonical_prd_state_paths) ... ok\ntest_does_not_flag_ordinary_project_requests (test_unsubmitted_plugin_request.UnsubmittedPluginRequestTests.test_does_not_flag_ordinary_project_requests) ... ok\ntest_does_not_flag_rejected_requests (test_unsubmitted_plugin_request.UnsubmittedPluginRequestTests.test_does_not_flag_rejected_requests) ... ok\ntest_does_not_flag_when_already_marked_upstream (test_unsubmitted_plugin_request.UnsubmittedPluginRequestTests.test_does_not_flag_when_already_marked_upstream) ... ok\ntest_flags_a_local_request_about_a_plugin_script (test_unsubmitted_plugin_request.UnsubmittedPluginRequestTests.test_flags_a_local_request_about_a_plugin_script) ... ok\ntest_flags_a_request_that_names_itself_upstream (test_unsubmitted_plugin_request.UnsubmittedPluginRequestTests.test_flags_a_request_that_names_itself_upstream) ... ok\ntest_never_fires_in_the_hub_repo_itself (test_unsubmitted_plugin_request.UnsubmittedPluginRequestTests.test_never_fires_in_the_hub_repo_itself) ... ok\ntest_wired_into_run_checks (test_unsubmitted_plugin_request.UnsubmittedPluginRequestTests.test_wired_into_run_checks) ... ok\ntest_output_writes_lf_and_a_trailing_newline (test_utcp_first_authority.GeneratedArtifactsAreByteStableTests.test_output_writes_lf_and_a_trailing_newline) ... ok\ntest_the_committed_manual_matches_a_fresh_generation (test_utcp_first_authority.GeneratedArtifactsAreByteStableTests.test_the_committed_manual_matches_a_fresh_generation) ... ok\ntest_every_spec_tool_maps_to_a_catalog_capability (test_utcp_first_authority.ParityDirectionTests.test_every_spec_tool_maps_to_a_catalog_capability) ... ok\ntest_server_metadata_matches_the_spec (test_utcp_first_authority.ParityDirectionTests.test_server_metadata_matches_the_spec) ... ok\ntest_python_entry_points_share_the_same_lock (test_utcp_first_authority.SafetyUnchangedTests.test_python_entry_points_share_the_same_lock)\nThe migration target already exists and is proven: prd_reflections ... ok\ntest_the_state_lock_is_still_held_for_mutations (test_utcp_first_authority.SafetyUnchangedTests.test_the_state_lock_is_still_held_for_mutations) ... ok\ntest_no_shipped_tool_metadata_carries_mojibake (test_utcp_first_authority.ShippedTextIsCleanTests.test_no_shipped_tool_metadata_carries_mojibake) ... ok\ntest_shipped_tool_metadata_is_valid_utf8 (test_utcp_first_authority.ShippedTextIsCleanTests.test_shipped_tool_metadata_is_valid_utf8)\nA file written through a cp1252 layer either fails to decode or ... ok\ntest_each_tool_declares_name_description_and_schema (test_utcp_first_authority.SpecIsTheSourceTests.test_each_tool_declares_name_description_and_schema) ... ok\ntest_the_manual_is_generated_from_the_spec_not_the_server (test_utcp_first_authority.SpecIsTheSourceTests.test_the_manual_is_generated_from_the_spec_not_the_server) ... ok\ntest_the_server_no_longer_authors_descriptions (test_utcp_first_authority.SpecIsTheSourceTests.test_the_server_no_longer_authors_descriptions)\nserver.cjs must READ definitions, not declare them. While a tool ... ok\ntest_the_spec_exists_and_declares_every_tool (test_utcp_first_authority.SpecIsTheSourceTests.test_the_spec_exists_and_declares_every_tool) ... ok\ntest_official_bridge_round_trips_cli_and_mcp_templates (test_utcp_first_catalog.BridgeParityTests.test_official_bridge_round_trips_cli_and_mcp_templates) ... C:\\Users\\marku\\AppData\\Local\\Python\\pythoncore-3.14-64\\Lib\\subprocess.py:1139: ResourceWarning: subprocess 38508 is still running\n  _warn(\"subprocess %s is still running\" % self.pid,\nResourceWarning: Enable tracemalloc to get the object allocation traceback\nC:\\Users\\marku\\AppData\\Local\\Python\\pythoncore-3.14-64\\Lib\\unittest\\case.py:615: ResourceWarning: unclosed file <_io.TextIOWrapper name=5 encoding='utf-8'>\n  result = method()\nResourceWarning: Enable tracemalloc to get the object allocation traceback\nC:\\Users\\marku\\AppData\\Local\\Python\\pythoncore-3.14-64\\Lib\\unittest\\case.py:615: ResourceWarning: unclosed file <_io.TextIOWrapper name=4 encoding='utf-8'>\n  result = method()\nResourceWarning: Enable tracemalloc to get the object allocation traceback\nok\ntest_bridged_entries_reuse_server_metadata_verbatim (test_utcp_first_catalog.GeneratedProjectionTests.test_bridged_entries_reuse_server_metadata_verbatim)\nEach bridged manual entry's description and inputs equal the server's ... ok\ntest_checked_in_metadata_matches_live_server (test_utcp_first_catalog.GeneratedProjectionTests.test_checked_in_metadata_matches_live_server)\nThe pinned metadata projection cannot drift behind the live server. ... ok\ntest_mutations_keep_the_validated_handler_path (test_utcp_first_catalog.GuardedMutationTests.test_mutations_keep_the_validated_handler_path)\nEvery manual tool in a non-read capability calls the plugin state ... ok\ntest_read_only_cli_tools_stay_cli (test_utcp_first_catalog.GuardedMutationTests.test_read_only_cli_tools_stay_cli)\nThe 12 cli-native observe/recall tools keep their cli templates. ... ok\ntest_checked_in_metadata_projection_exists (test_utcp_first_catalog.ManualCompletenessTests.test_checked_in_metadata_projection_exists)\nThe server's tool metadata is a checked-in generated artifact so the ... ok\ntest_manual_covers_every_capability_on_both_transports (test_utcp_first_catalog.ManualCompletenessTests.test_manual_covers_every_capability_on_both_transports)\nEvery UTCP and MCP registration in the tool-surface catalog appears ... ok\ntest_appends_version_change_request (test_version_advice.VersionAdviceTests.test_appends_version_change_request) ... ok\ntest_builds_safe_update_advice_for_low_risk_releases (test_version_advice.VersionAdviceTests.test_builds_safe_update_advice_for_low_risk_releases) ... ok\ntest_cli_uses_hub_releases_when_downstream_repo_has_no_releases_file (test_version_advice.VersionAdviceTests.test_cli_uses_hub_releases_when_downstream_repo_has_no_releases_file) ... ok\ntest_detects_installed_version_from_bom_json (test_version_advice.VersionAdviceTests.test_detects_installed_version_from_bom_json) ... ok\ntest_detects_installed_version_from_opencode_plugin_manifest (test_version_advice.VersionAdviceTests.test_detects_installed_version_from_opencode_plugin_manifest) ... ok\ntest_detects_installed_version_from_prd_plugin_config (test_version_advice.VersionAdviceTests.test_detects_installed_version_from_prd_plugin_config) ... ok\ntest_detects_latest_version_from_plugin_manifest (test_version_advice.VersionAdviceTests.test_detects_latest_version_from_plugin_manifest) ... ok\ntest_installed_version_priority_prefers_config_then_codex_then_opencode (test_version_advice.VersionAdviceTests.test_installed_version_priority_prefers_config_then_codex_then_opencode) ... ok\ntest_orders_prerelease_before_final_release (test_version_advice.VersionAdviceTests.test_orders_prerelease_before_final_release) ... ok\ntest_recommends_review_first_for_medium_or_high_risk_release (test_version_advice.VersionAdviceTests.test_recommends_review_first_for_medium_or_high_risk_release) ... ok\ntest_disabled_returns_disabled_and_no_fetch (test_version_check.CheckTests.test_disabled_returns_disabled_and_no_fetch) ... ok\ntest_force_refetches_within_ttl (test_version_check.CheckTests.test_force_refetches_within_ttl) ... ok\ntest_network_failure_is_fail_open (test_version_check.CheckTests.test_network_failure_is_fail_open) ... ok\ntest_no_update_when_current (test_version_check.CheckTests.test_no_update_when_current) ... ok\ntest_status_is_cache_only_no_fetch (test_version_check.CheckTests.test_status_is_cache_only_no_fetch) ... ok\ntest_ttl_cache_avoids_refetch (test_version_check.CheckTests.test_ttl_cache_avoids_refetch) ... ok\ntest_ttl_expiry_refetches (test_version_check.CheckTests.test_ttl_expiry_refetches) ... ok\ntest_update_available_when_npm_is_ahead (test_version_check.CheckTests.test_update_available_when_npm_is_ahead) ... ok\ntest_status_cli_exits_zero (test_version_check.CliTests.test_status_cli_exits_zero) ... ok\ntest_default_ttl_is_responsive_not_a_day (test_version_check.FreshnessTests.test_default_ttl_is_responsive_not_a_day) ... ok\ntest_fetch_latest_accepts_a_timeout (test_version_check.FreshnessTests.test_fetch_latest_accepts_a_timeout) ... ok\ntest_nudge_refreshes_in_session_not_cache_only (test_version_check.FreshnessTests.test_nudge_refreshes_in_session_not_cache_only) ... ok\ntest_registry_default_ttl_matches (test_version_check.FreshnessTests.test_registry_default_ttl_matches) ... ok\ntest_semver_ordering (test_version_check.ParseTests.test_semver_ordering) ... ok\ntest_set_enabled_writes_config (test_version_check.ToggleTests.test_set_enabled_writes_config) ... ok\ntest_config_has_version_check_default_on (test_version_check.WiringTests.test_config_has_version_check_default_on) ... ok\ntest_nudge_surfaces_update_available (test_version_check.WiringTests.test_nudge_surfaces_update_available) ... ok\ntest_prd_version_command_exists (test_version_check.WiringTests.test_prd_version_command_exists) ... ok\ntest_script_registered_downstream (test_version_check.WiringTests.test_script_registered_downstream) ... ok\ntest_plan_cli_emits_json (test_wiki_backfill.CliTests.test_plan_cli_emits_json) ... ok\ntest_status_cli (test_wiki_backfill.CliTests.test_status_cli) ... ok\ntest_marker_written_for_established_repo_gaining_wiki (test_wiki_backfill.InstallerMarkerTests.test_marker_written_for_established_repo_gaining_wiki) ... ok\ntest_no_marker_for_empty_scaffold (test_wiki_backfill.InstallerMarkerTests.test_no_marker_for_empty_scaffold) ... ok\ntest_no_marker_when_wiki_already_exists (test_wiki_backfill.InstallerMarkerTests.test_no_marker_when_wiki_already_exists) ... ok\ntest_no_marker_when_wiki_disabled (test_wiki_backfill.InstallerMarkerTests.test_no_marker_when_wiki_disabled) ... ok\ntest_pending_false_when_absent (test_wiki_backfill.StatusTests.test_pending_false_when_absent) ... ok\ntest_pending_false_when_wiki_already_exists (test_wiki_backfill.StatusTests.test_pending_false_when_wiki_already_exists) ... ok\ntest_pending_true_when_marker_present (test_wiki_backfill.StatusTests.test_pending_true_when_marker_present) ... ok\ntest_plan_excludes_generated_report_artifacts (test_wiki_backfill.SurveyPlanTests.test_plan_excludes_generated_report_artifacts)\nrequest-report/ (incl. its calibration report trees) and docs/evidence/ ... ok\ntest_plan_excludes_plugin_and_vendor_noise (test_wiki_backfill.SurveyPlanTests.test_plan_excludes_plugin_and_vendor_noise) ... ok\ntest_plan_inventories_code_docs_and_state (test_wiki_backfill.SurveyPlanTests.test_plan_inventories_code_docs_and_state) ... ok\ntest_plan_is_read_only (test_wiki_backfill.SurveyPlanTests.test_plan_is_read_only) ... ok\ntest_wiki_drift_in_on_stop_and_default_sets (test_wiki_backfill.WikiDriftMonitorWiringTests.test_wiki_drift_in_on_stop_and_default_sets) ... ok\ntest_current_article_no_drift (test_wiki_backfill.WikiDriftTests.test_current_article_no_drift) ... ok\ntest_drift_cli (test_wiki_backfill.WikiDriftTests.test_drift_cli) ... ok\ntest_far_behind_article_flagged (test_wiki_backfill.WikiDriftTests.test_far_behind_article_flagged) ... ok\ntest_no_wiki_is_ok (test_wiki_backfill.WikiDriftTests.test_no_wiki_is_ok) ... ok\ntest_unlinked_markdown_reference_is_part_of_wiki_drift (test_wiki_backfill.WikiDriftTests.test_unlinked_markdown_reference_is_part_of_wiki_drift) ... ok\ntest_unstamped_article_flagged (test_wiki_backfill.WikiDriftTests.test_unstamped_article_flagged) ... ok\ntest_wiki_drift_uses_configured_wiki_directory (test_wiki_backfill.WikiDriftTests.test_wiki_drift_uses_configured_wiki_directory) ... ok\ntest_ambiguous_reference_is_reported_but_never_guessed (test_wiki_backfill.WikiInlineMarkdownLinkTests.test_ambiguous_reference_is_reported_but_never_guessed) ... ok\ntest_cli_check_fails_and_fix_then_passes (test_wiki_backfill.WikiInlineMarkdownLinkTests.test_cli_check_fails_and_fix_then_passes) ... ok\ntest_existing_inline_links_and_fenced_examples_are_not_findings (test_wiki_backfill.WikiInlineMarkdownLinkTests.test_existing_inline_links_and_fenced_examples_are_not_findings) ... ok\ntest_fix_rewrites_only_unambiguous_references_to_relative_inline_links (test_wiki_backfill.WikiInlineMarkdownLinkTests.test_fix_rewrites_only_unambiguous_references_to_relative_inline_links) ... ok\ntest_reports_resolvable_bare_and_code_wrapped_markdown_references (test_wiki_backfill.WikiInlineMarkdownLinkTests.test_reports_resolvable_bare_and_code_wrapped_markdown_references) ... ok\ntest_nudge_surfaces_pending_backfill (test_wiki_backfill.WiringTests.test_nudge_surfaces_pending_backfill) ... ok\ntest_script_registered_downstream (test_wiki_backfill.WiringTests.test_script_registered_downstream) ... ok\ntest_skill_has_backfill_mode (test_wiki_backfill.WiringTests.test_skill_has_backfill_mode) ... ok\ntest_copy_and_download_controls_are_wired (test_wiki_html_export.WikiHtmlExportTests.test_copy_and_download_controls_are_wired) ... ok\ntest_default_output_lands_in_the_local_runtime_dir (test_wiki_html_export.WikiHtmlExportTests.test_default_output_lands_in_the_local_runtime_dir) ... ok\ntest_every_page_is_embedded_with_exact_markdown (test_wiki_html_export.WikiHtmlExportTests.test_every_page_is_embedded_with_exact_markdown) ... ok\ntest_export_all_generates_viewers_and_super_index (test_wiki_html_export.WikiHtmlExportTests.test_export_all_generates_viewers_and_super_index) ... ok\ntest_export_is_one_self_contained_offline_file (test_wiki_html_export.WikiHtmlExportTests.test_export_is_one_self_contained_offline_file) ... ok\ntest_guest_repo_viewer_is_hosted_by_the_host_repo (test_wiki_html_export.WikiHtmlExportTests.test_guest_repo_viewer_is_hosted_by_the_host_repo)\nA repo without .prd_plugin gets NO new files in its own tree; its ... ok\ntest_hub_repo_exports_all_pages (test_wiki_html_export.WikiHtmlExportTests.test_hub_repo_exports_all_pages) ... ok\ntest_parse_wiki_log_extracts_dated_entries_with_bodies (test_wiki_html_export.WikiHtmlExportTests.test_parse_wiki_log_extracts_dated_entries_with_bodies)\nREQ-112: every workspace log follows '## [date] mode | text'. ... ok\ntest_parse_wiki_log_tolerates_missing_log (test_wiki_html_export.WikiHtmlExportTests.test_parse_wiki_log_tolerates_missing_log) ... ok\ntest_script_content_cannot_break_the_payload (test_wiki_html_export.WikiHtmlExportTests.test_script_content_cannot_break_the_payload) ... ok\ntest_super_index_has_a_combined_changelog (test_wiki_html_export.WikiHtmlExportTests.test_super_index_has_a_combined_changelog) ... ok\ntest_super_index_reports_page_counts (test_wiki_html_export.WikiHtmlExportTests.test_super_index_reports_page_counts) ... ok\ntest_workspace_discovery_uses_the_wiki_convention_marker (test_wiki_html_export.WikiHtmlExportTests.test_workspace_discovery_uses_the_wiki_convention_marker)\nREQ-110 + REQ-111: any immediate child whose wiki follows the ... ok\ntest_a_repo_without_a_wiki_is_not_in_drift (test_wiki_ingest_drift.DetectionTests.test_a_repo_without_a_wiki_is_not_in_drift)\nNo wiki is a legitimate state, not a failure to ingest. ... ok\ntest_fully_ingested_repo_is_clean (test_wiki_ingest_drift.DetectionTests.test_fully_ingested_repo_is_clean) ... ok\ntest_malformed_state_degrades_rather_than_raising (test_wiki_ingest_drift.DetectionTests.test_malformed_state_degrades_rather_than_raising) ... ok\ntest_non_implemented_requests_are_never_expected_in_the_log (test_wiki_ingest_drift.DetectionTests.test_non_implemented_requests_are_never_expected_in_the_log) ... ok\ntest_only_work_since_the_last_ingest_is_actionable (test_wiki_ingest_drift.DetectionTests.test_only_work_since_the_last_ingest_is_actionable)\nRaw counting flags pre-wiki history as drift � ~70 items in the hub, ... ok\ntest_reports_implemented_requests_absent_from_the_log (test_wiki_ingest_drift.DetectionTests.test_reports_implemented_requests_absent_from_the_log) ... ok\ntest_it_runs_against_this_repo_and_returns_a_usable_report (test_wiki_ingest_drift.RealRepoTests.test_it_runs_against_this_repo_and_returns_a_usable_report)\nGrounded against real state, but NOT pinned to a specific gap: a test ... ok\ntest_prd_status_omits_it_when_clean (test_wiki_ingest_drift.SurfaceTests.test_prd_status_omits_it_when_clean) ... ok\ntest_prd_status_reports_the_drift (test_wiki_ingest_drift.SurfaceTests.test_prd_status_reports_the_drift) ... ok\ntest_this_repos_wiki_reads_byte_exact (test_wiki_page_contract.HubRepoSmokeTests.test_this_repos_wiki_reads_byte_exact) ... ok\ntest_list_enumerates_canonical_pages_with_titles (test_wiki_page_contract.WikiPageListTests.test_list_enumerates_canonical_pages_with_titles) ... ok\ntest_boundaries_are_hard (test_wiki_page_contract.WikiPageReadTests.test_boundaries_are_hard) ... ok\ntest_drift_remains_the_default_action (test_wiki_page_contract.WikiPageReadTests.test_drift_remains_the_default_action) ... ok\ntest_read_page_without_stamps_reports_null_provenance (test_wiki_page_contract.WikiPageReadTests.test_read_page_without_stamps_reports_null_provenance) ... ok\ntest_read_requires_a_path (test_wiki_page_contract.WikiPageReadTests.test_read_requires_a_path) ... ok\ntest_read_returns_exact_markdown_with_provenance (test_wiki_page_contract.WikiPageReadTests.test_read_returns_exact_markdown_with_provenance) ... ok\ntest_no_cp1252_unencodable_chars_in_agent_facing_tools (test_windows_console_safe.SourceScanTests.test_no_cp1252_unencodable_chars_in_agent_facing_tools) ... ok\ntest_backfill_pending_status_renders_cp1252_safe (test_windows_console_safe.StatusRenderTests.test_backfill_pending_status_renders_cp1252_safe) ... ok\ntest_repository_workflow_surfaces_are_chml_zero (test_workflow_chml_audit.WorkflowChmlAuditTests.test_repository_workflow_surfaces_are_chml_zero) ... ok\ntest_semantic_skill_finding_is_part_of_workflow_chml (test_workflow_chml_audit.WorkflowChmlAuditTests.test_semantic_skill_finding_is_part_of_workflow_chml) ... ok\ntest_git_workflow_pushes_clean_verified_commits_in_autonomous (test_workflow_consistency.AutonomyConflictResolutionTests.test_git_workflow_pushes_clean_verified_commits_in_autonomous) ... ok\ntest_request_intake_defers_autonomy_and_owns_graduation (test_workflow_consistency.AutonomyConflictResolutionTests.test_request_intake_defers_autonomy_and_owns_graduation) ... ok\ntest_evidence_pair_states_create_vs_review_boundary (test_workflow_consistency.BoundaryClarityTests.test_evidence_pair_states_create_vs_review_boundary) ... ok\ntest_session_close_states_memory_boundary (test_workflow_consistency.BoundaryClarityTests.test_session_close_states_memory_boundary) ... ok\ntest_document_branch_has_promotion_owner (test_workflow_consistency.DeadEndOwnerTests.test_document_branch_has_promotion_owner) ... ok\ntest_health_findings_have_triage_dispositions (test_workflow_consistency.DeadEndOwnerTests.test_health_findings_have_triage_dispositions) ... ok\ntest_memory_owns_schema_version_changes (test_workflow_consistency.DeadEndOwnerTests.test_memory_owns_schema_version_changes) ... ok\ntest_planning_lifecycle_has_stage_readiness_checkpoints (test_workflow_consistency.DeadEndOwnerTests.test_planning_lifecycle_has_stage_readiness_checkpoints) ... ok\ntest_session_close_runs_traceability_sync (test_workflow_consistency.DeadEndOwnerTests.test_session_close_runs_traceability_sync) ... ok\n\n----------------------------------------------------------------------\nRan 1199 tests in 427.216s\n\nOK\n"
          },
          "output_hash": "7f861a717fb8a5a91addfe546ca56ec06286ca0168e6368bbc69d0bfcdc742a4",
          "completed_at": "2026-07-24T08:53:23Z"
        },
        {
          "id": "release",
          "action": "process.fixed",
          "status": "completed",
          "resolved_input_hash": "1e5b0c18d93eb4c2248f9a00adbd438e52f3ef02137477fb8376c69cfe86fc9b",
          "started_at": "2026-07-24T08:53:23Z",
          "output": {
            "operation": "release_check",
            "command": [
              "python",
              "scripts/release_check.py"
            ],
            "exit_code": 0,
            "stdout": "# Release Hygiene Report\n\nBase version: `0.16.46`\nHead version: `0.16.51`\nChanged files checked: 63\n\n## Findings\n\n- None\n",
            "stderr": ""
          },
          "output_hash": "597d91b9a20a154260216e9b987c177bae8bd15d1a1ac07942eb24999fd6ce2a",
          "completed_at": "2026-07-24T08:53:23Z"
        },
        {
          "id": "gaps",
          "action": "process.fixed",
          "status": "completed",
          "resolved_input_hash": "577241909238eeb55683f89d2d2216648dad2e3127397993e22493829a1307a4",
          "started_at": "2026-07-24T08:53:24Z",
          "output": {
            "operation": "gap_audit",
            "command": [
              "python",
              "scripts/gap_audit.py",
              "--target-version",
              "0.16.51",
              "--config",
              ".prd_plugin/config.json",
              "--releases",
              ".prd_plugin/state/releases.json"
            ],
            "exit_code": 0,
            "stdout": "# PRD Plugin Gap Audit\n\nTarget version: `0.16.51`\n\n## Findings\n\n- None\n",
            "stderr": ""
          },
          "output_hash": "257a9535feab2394eee63c6461d130a3e970cd753086cba754f7ff4859bc0162",
          "completed_at": "2026-07-24T08:53:24Z"
        },
        {
          "id": "package",
          "action": "process.fixed",
          "status": "completed",
          "resolved_input_hash": "06cd12e1f3db3d985f9150520afa60f288297ff0ca01a8e813e9bb6291aa8836",
          "started_at": "2026-07-24T08:53:24Z",
          "output": {
            "operation": "package_check",
            "command": [
              "npm",
              "pack",
              "--dry-run"
            ],
            "exit_code": 0,
            "stdout": "prd-plugin-0.16.51.tgz\n",
            "stderr": "17B templates/repo-skeleton/.agents/skills/project-llm-wiki/references/raw-template.md\nnpm notice 17.0kB templates/repo-skeleton/.agents/skills/project-llm-wiki/SKILL.md\nnpm notice 7.4kB templates/repo-skeleton/.agents/skills/project-local-integration/SKILL.md\nnpm notice 8.1kB templates/repo-skeleton/.agents/skills/project-memory/SKILL.md\nnpm notice 6.2kB templates/repo-skeleton/.agents/skills/project-planning-lifecycle/SKILL.md\nnpm notice 6.0kB templates/repo-skeleton/.agents/skills/project-prd-plugin-setup/SKILL.md\nnpm notice 3.5kB templates/repo-skeleton/.agents/skills/project-prd/SKILL.md\nnpm notice 27.5kB templates/repo-skeleton/.agents/skills/project-request-intake/SKILL.md\nnpm notice 4.8kB templates/repo-skeleton/.agents/skills/project-session-close/SKILL.md\nnpm notice 10.3kB templates/repo-skeleton/.agents/skills/project-systematic-debugging/SKILL.md\nnpm notice 4.8kB templates/repo-skeleton/.agents/skills/project-test-driven-implementation/SKILL.md\nnpm notice 3.7kB templates/repo-skeleton/.agents/skills/project-traceability-review/SKILL.md\nnpm notice 2.5kB templates/repo-skeleton/.agents/skills/project-traceability-sync/SKILL.md\nnpm notice 6.6kB templates/repo-skeleton/.agents/skills/project-verification-before-completion/SKILL.md\nnpm notice 1.5kB templates/repo-skeleton/.agents/skills/source-command-prd-autonomy/SKILL.md\nnpm notice 1.2kB templates/repo-skeleton/.agents/skills/source-command-prd-close/SKILL.md\nnpm notice 3.3kB templates/repo-skeleton/.agents/skills/source-command-prd-config/SKILL.md\nnpm notice 2.4kB templates/repo-skeleton/.agents/skills/source-command-prd-drift/SKILL.md\nnpm notice 2.1kB templates/repo-skeleton/.agents/skills/source-command-prd-graph/SKILL.md\nnpm notice 2.2kB templates/repo-skeleton/.agents/skills/source-command-prd-hooks/SKILL.md\nnpm notice 1.3kB templates/repo-skeleton/.agents/skills/source-command-prd-new/SKILL.md\nnpm notice 2.0kB templates/repo-skeleton/.agents/skills/source-command-prd-off/SKILL.md\nnpm notice 1.5kB templates/repo-skeleton/.agents/skills/source-command-prd-on/SKILL.md\nnpm notice 2.3kB templates/repo-skeleton/.agents/skills/source-command-prd-reflections/SKILL.md\nnpm notice 2.5kB templates/repo-skeleton/.agents/skills/source-command-prd-report/SKILL.md\nnpm notice 1.2kB templates/repo-skeleton/.agents/skills/source-command-prd-status/SKILL.md\nnpm notice 1.7kB templates/repo-skeleton/.agents/skills/source-command-prd-track/SKILL.md\nnpm notice 1.8kB templates/repo-skeleton/.agents/skills/source-command-prd-version/SKILL.md\nnpm notice 1.7kB templates/repo-skeleton/.agents/skills/source-command-prd-workflow/SKILL.md\nnpm notice 872B templates/repo-skeleton/.claude-plugin/plugin.json\nnpm notice 772B templates/repo-skeleton/.claude/commands/prd-autonomy.md\nnpm notice 493B templates/repo-skeleton/.claude/commands/prd-close.md\nnpm notice 2.5kB templates/repo-skeleton/.claude/commands/prd-config.md\nnpm notice 1.6kB templates/repo-skeleton/.claude/commands/prd-drift.md\nnpm notice 1.4kB templates/repo-skeleton/.claude/commands/prd-graph.md\nnpm notice 1.6kB templates/repo-skeleton/.claude/commands/prd-hooks.md\nnpm notice 639B templates/repo-skeleton/.claude/commands/prd-new.md\nnpm notice 1.4kB templates/repo-skeleton/.claude/commands/prd-off.md\nnpm notice 862B templates/repo-skeleton/.claude/commands/prd-on.md\nnpm notice 1.6kB templates/repo-skeleton/.claude/commands/prd-reflections.md\nnpm notice 1.8kB templates/repo-skeleton/.claude/commands/prd-report.md\nnpm notice 549B templates/repo-skeleton/.claude/commands/prd-status.md\nnpm notice 974B templates/repo-skeleton/.claude/commands/prd-track.md\nnpm notice 1.0kB templates/repo-skeleton/.claude/commands/prd-version.md\nnpm notice 938B templates/repo-skeleton/.claude/commands/prd-workflow.md\nnpm notice 1.6kB templates/repo-skeleton/.claude/hooks/prd_drift_check.py\nnpm notice 2.0kB templates/repo-skeleton/.claude/hooks/prd_log_skill.py\nnpm notice 4.1kB templates/repo-skeleton/.claude/hooks/prd_nudge.py\nnpm notice 3.7kB templates/repo-skeleton/.claude/hooks/prd_precommit_gate.py\nnpm notice 6.1kB templates/repo-skeleton/.claude/hooks/prd_reflection.py\nnpm notice 3.5kB templates/repo-skeleton/.claude/hooks/prd_session_report.py\nnpm notice 15.8kB templates/repo-skeleton/.claude/hooks/prd_stop_guard.py\nnpm notice 1.3kB templates/repo-skeleton/.claude/settings.json\nnpm notice 3.0kB templates/repo-skeleton/.claude/skills/project-architecture/SKILL.md\nnpm notice 7.4kB templates/repo-skeleton/.claude/skills/project-blocker-resolution/SKILL.md\nnpm notice 2.8kB templates/repo-skeleton/.claude/skills/project-brainstorm/SKILL.md\nnpm notice 5.5kB templates/repo-skeleton/.claude/skills/project-change-request/SKILL.md\nnpm notice 6.3kB templates/repo-skeleton/.claude/skills/project-code-review/SKILL.md\nnpm notice 2.7kB templates/repo-skeleton/.claude/skills/project-decision-ledger/SKILL.md\nnpm notice 23.6kB templates/repo-skeleton/.claude/skills/project-decision-policy/SKILL.md\nnpm notice 4.4kB templates/repo-skeleton/.claude/skills/project-deterministic-workflows/SKILL.md\nnpm notice 5.2kB templates/repo-skeleton/.claude/skills/project-document-branch/SKILL.md\nnpm notice 2.8kB templates/repo-skeleton/.claude/skills/project-evidence-ledger/SKILL.md\nnpm notice 3.3kB templates/repo-skeleton/.claude/skills/project-evidence/SKILL.md\nnpm notice 11.9kB templates/repo-skeleton/.claude/skills/project-git-workflow/SKILL.md\nnpm notice 7.4kB templates/repo-skeleton/.claude/skills/project-health/SKILL.md\nnpm notice 6.0kB templates/repo-skeleton/.claude/skills/project-implementation-plan/SKILL.md\nnpm notice 1.1kB templates/repo-skeleton/.claude/skills/project-llm-wiki/LICENSE\nnpm notice 842B templates/repo-skeleton/.claude/skills/project-llm-wiki/references/archive-template.md\nnpm notice 843B templates/repo-skeleton/.claude/skills/project-llm-wiki/references/article-template.md\nnpm notice 559B templates/repo-skeleton/.claude/skills/project-llm-wiki/references/index-template.md\nnpm notice 317B templates/repo-skeleton/.claude/skills/project-llm-wiki/references/raw-template.md\nnpm notice 17.0kB templates/repo-skeleton/.claude/skills/project-llm-wiki/SKILL.md\nnpm notice 7.4kB templates/repo-skeleton/.claude/skills/project-local-integration/SKILL.md\nnpm notice 8.1kB templates/repo-skeleton/.claude/skills/project-memory/SKILL.md\nnpm notice 6.2kB templates/repo-skeleton/.claude/skills/project-planning-lifecycle/SKILL.md\nnpm notice 6.0kB templates/repo-skeleton/.claude/skills/project-prd-plugin-setup/SKILL.md\nnpm notice 3.5kB templates/repo-skeleton/.claude/skills/project-prd/SKILL.md\nnpm notice 27.5kB templates/repo-skeleton/.claude/skills/project-request-intake/SKILL.md\nnpm notice 4.8kB templates/repo-skeleton/.claude/skills/project-session-close/SKILL.md\nnpm notice 10.3kB templates/repo-skeleton/.claude/skills/project-systematic-debugging/SKILL.md\nnpm notice 4.8kB templates/repo-skeleton/.claude/skills/project-test-driven-implementation/SKILL.md\nnpm notice 3.7kB templates/repo-skeleton/.claude/skills/project-traceability-review/SKILL.md\nnpm notice 2.5kB templates/repo-skeleton/.claude/skills/project-traceability-sync/SKILL.md\nnpm notice 6.6kB templates/repo-skeleton/.claude/skills/project-verification-before-completion/SKILL.md\nnpm notice 1.5kB templates/repo-skeleton/.claude/skills/source-command-prd-autonomy/SKILL.md\nnpm notice 1.2kB templates/repo-skeleton/.claude/skills/source-command-prd-close/SKILL.md\nnpm notice 3.3kB templates/repo-skeleton/.claude/skills/source-command-prd-config/SKILL.md\nnpm notice 2.4kB templates/repo-skeleton/.claude/skills/source-command-prd-drift/SKILL.md\nnpm notice 2.1kB templates/repo-skeleton/.claude/skills/source-command-prd-graph/SKILL.md\nnpm notice 2.2kB templates/repo-skeleton/.claude/skills/source-command-prd-hooks/SKILL.md\nnpm notice 1.3kB templates/repo-skeleton/.claude/skills/source-command-prd-new/SKILL.md\nnpm notice 2.0kB templates/repo-skeleton/.claude/skills/source-command-prd-off/SKILL.md\nnpm notice 1.5kB templates/repo-skeleton/.claude/skills/source-command-prd-on/SKILL.md\nnpm notice 2.3kB templates/repo-skeleton/.claude/skills/source-command-prd-reflections/SKILL.md\nnpm notice 2.5kB templates/repo-skeleton/.claude/skills/source-command-prd-report/SKILL.md\nnpm notice 1.2kB templates/repo-skeleton/.claude/skills/source-command-prd-status/SKILL.md\nnpm notice 1.7kB templates/repo-skeleton/.claude/skills/source-command-prd-track/SKILL.md\nnpm notice 1.8kB templates/repo-skeleton/.claude/skills/source-command-prd-version/SKILL.md\nnpm notice 1.7kB templates/repo-skeleton/.claude/skills/source-command-prd-workflow/SKILL.md\nnpm notice 3.2kB templates/repo-skeleton/.codex-plugin/plugin.json\nnpm notice 3.2kB templates/repo-skeleton/.codex/hooks.json\nnpm notice 743B templates/repo-skeleton/.githooks/pre-commit\nnpm notice 734B templates/repo-skeleton/.github/workflows/prd-gate.yml\nnpm notice 3.2kB templates/repo-skeleton/.opencode/plugin.json\nnpm notice 3.3kB templates/repo-skeleton/.opencode/plugins/prd-hooks.js\nnpm notice 3.0kB templates/repo-skeleton/.opencode/skill/project-architecture/SKILL.md\nnpm notice 7.4kB templates/repo-skeleton/.opencode/skill/project-blocker-resolution/SKILL.md\nnpm notice 2.8kB templates/repo-skeleton/.opencode/skill/project-brainstorm/SKILL.md\nnpm notice 5.5kB templates/repo-skeleton/.opencode/skill/project-change-request/SKILL.md\nnpm notice 6.3kB templates/repo-skeleton/.opencode/skill/project-code-review/SKILL.md\nnpm notice 2.7kB templates/repo-skeleton/.opencode/skill/project-decision-ledger/SKILL.md\nnpm notice 23.6kB templates/repo-skeleton/.opencode/skill/project-decision-policy/SKILL.md\nnpm notice 4.4kB templates/repo-skeleton/.opencode/skill/project-deterministic-workflows/SKILL.md\nnpm notice 5.2kB templates/repo-skeleton/.opencode/skill/project-document-branch/SKILL.md\nnpm notice 2.8kB templates/repo-skeleton/.opencode/skill/project-evidence-ledger/SKILL.md\nnpm notice 3.3kB templates/repo-skeleton/.opencode/skill/project-evidence/SKILL.md\nnpm notice 11.9kB templates/repo-skeleton/.opencode/skill/project-git-workflow/SKILL.md\nnpm notice 7.4kB templates/repo-skeleton/.opencode/skill/project-health/SKILL.md\nnpm notice 6.0kB templates/repo-skeleton/.opencode/skill/project-implementation-plan/SKILL.md\nnpm notice 1.1kB templates/repo-skeleton/.opencode/skill/project-llm-wiki/LICENSE\nnpm notice 842B templates/repo-skeleton/.opencode/skill/project-llm-wiki/references/archive-template.md\nnpm notice 843B templates/repo-skeleton/.opencode/skill/project-llm-wiki/references/article-template.md\nnpm notice 559B templates/repo-skeleton/.opencode/skill/project-llm-wiki/references/index-template.md\nnpm notice 317B templates/repo-skeleton/.opencode/skill/project-llm-wiki/references/raw-template.md\nnpm notice 17.0kB templates/repo-skeleton/.opencode/skill/project-llm-wiki/SKILL.md\nnpm notice 7.4kB templates/repo-skeleton/.opencode/skill/project-local-integration/SKILL.md\nnpm notice 8.1kB templates/repo-skeleton/.opencode/skill/project-memory/SKILL.md\nnpm notice 6.2kB templates/repo-skeleton/.opencode/skill/project-planning-lifecycle/SKILL.md\nnpm notice 6.0kB templates/repo-skeleton/.opencode/skill/project-prd-plugin-setup/SKILL.md\nnpm notice 3.5kB templates/repo-skeleton/.opencode/skill/project-prd/SKILL.md\nnpm notice 27.5kB templates/repo-skeleton/.opencode/skill/project-request-intake/SKILL.md\nnpm notice 4.8kB templates/repo-skeleton/.opencode/skill/project-session-close/SKILL.md\nnpm notice 10.3kB templates/repo-skeleton/.opencode/skill/project-systematic-debugging/SKILL.md\nnpm notice 4.8kB templates/repo-skeleton/.opencode/skill/project-test-driven-implementation/SKILL.md\nnpm notice 3.7kB templates/repo-skeleton/.opencode/skill/project-traceability-review/SKILL.md\nnpm notice 2.5kB templates/repo-skeleton/.opencode/skill/project-traceability-sync/SKILL.md\nnpm notice 6.6kB templates/repo-skeleton/.opencode/skill/project-verification-before-completion/SKILL.md\nnpm notice 1.5kB templates/repo-skeleton/.opencode/skill/source-command-prd-autonomy/SKILL.md\nnpm notice 1.2kB templates/repo-skeleton/.opencode/skill/source-command-prd-close/SKILL.md\nnpm notice 3.3kB templates/repo-skeleton/.opencode/skill/source-command-prd-config/SKILL.md\nnpm notice 2.4kB templates/repo-skeleton/.opencode/skill/source-command-prd-drift/SKILL.md\nnpm notice 2.1kB templates/repo-skeleton/.opencode/skill/source-command-prd-graph/SKILL.md\nnpm notice 2.2kB templates/repo-skeleton/.opencode/skill/source-command-prd-hooks/SKILL.md\nnpm notice 1.3kB templates/repo-skeleton/.opencode/skill/source-command-prd-new/SKILL.md\nnpm notice 2.0kB templates/repo-skeleton/.opencode/skill/source-command-prd-off/SKILL.md\nnpm notice 1.5kB templates/repo-skeleton/.opencode/skill/source-command-prd-on/SKILL.md\nnpm notice 2.3kB templates/repo-skeleton/.opencode/skill/source-command-prd-reflections/SKILL.md\nnpm notice 2.5kB templates/repo-skeleton/.opencode/skill/source-command-prd-report/SKILL.md\nnpm notice 1.2kB templates/repo-skeleton/.opencode/skill/source-command-prd-status/SKILL.md\nnpm notice 1.7kB templates/repo-skeleton/.opencode/skill/source-command-prd-track/SKILL.md\nnpm notice 1.8kB templates/repo-skeleton/.opencode/skill/source-command-prd-version/SKILL.md\nnpm notice 1.7kB templates/repo-skeleton/.opencode/skill/source-command-prd-workflow/SKILL.md\nnpm notice 14.6kB templates/repo-skeleton/.prd_plugin/config.json\nnpm notice 1.6kB templates/repo-skeleton/.prd_plugin/hooks/prd_drift_check.py\nnpm notice 11.5kB templates/repo-skeleton/.prd_plugin/hooks/prd_hook_dispatch.py\nnpm notice 2.0kB templates/repo-skeleton/.prd_plugin/hooks/prd_log_skill.py\nnpm notice 4.1kB templates/repo-skeleton/.prd_plugin/hooks/prd_nudge.py\nnpm notice 3.7kB templates/repo-skeleton/.prd_plugin/hooks/prd_precommit_gate.py\nnpm notice 6.1kB templates/repo-skeleton/.prd_plugin/hooks/prd_reflection.py\nnpm notice 3.5kB templates/repo-skeleton/.prd_plugin/hooks/prd_session_report.py\nnpm notice 15.8kB templates/repo-skeleton/.prd_plugin/hooks/prd_stop_guard.py\nnpm notice 8.0kB templates/repo-skeleton/.prd_plugin/hooks/prd_test_scope_guard.py\nnpm notice 3.7kB templates/repo-skeleton/.prd_plugin/ID-SCHEME.md\nnpm notice 581B templates/repo-skeleton/.prd_plugin/ids/registry.json\nnpm notice 12.6kB templates/repo-skeleton/.prd_plugin/METHOD.md\nnpm notice 725B templates/repo-skeleton/.prd_plugin/method/artifact-format.md\nnpm notice 1.5kB templates/repo-skeleton/.prd_plugin/method/completion-gate.md\nnpm notice 3.6kB templates/repo-skeleton/.prd_plugin/method/deterministic-workflows.md\nnpm notice 1.2kB templates/repo-skeleton/.prd_plugin/method/estimation.md\nnpm notice 2.1kB templates/repo-skeleton/.prd_plugin/method/grounding.md\nnpm notice 3.2kB templates/repo-skeleton/.prd_plugin/method/reporting.md\nnpm notice 4.1kB templates/repo-skeleton/.prd_plugin/method/self-service.md\nnpm notice 1.6kB templates/repo-skeleton/.prd_plugin/method/staleness-rules.md\nnpm notice 1.0kB templates/repo-skeleton/.prd_plugin/method/state-validation.md\nnpm notice 3.0kB templates/repo-skeleton/.prd_plugin/method/subagents.md\nnpm notice 1.3kB templates/repo-skeleton/.prd_plugin/services.json\nnpm notice 47B templates/repo-skeleton/.prd_plugin/state/changelog.json\nnpm notice 49B templates/repo-skeleton/.prd_plugin/state/decisions.json\nnpm notice 157B templates/repo-skeleton/.prd_plugin/state/health.json\nnpm notice 47B templates/repo-skeleton/.prd_plugin/state/memory.json\nnpm notice 287B templates/repo-skeleton/.prd_plugin/state/project.json\nnpm notice 48B templates/repo-skeleton/.prd_plugin/state/releases.json\nnpm notice 48B templates/repo-skeleton/.prd_plugin/state/requests.json\nnpm notice 214B templates/repo-skeleton/.prd_plugin/state/sessions/shared/promoted-session-summaries.jsonl\nnpm notice 49B templates/repo-skeleton/.prd_plugin/state/substrate-links.json\nnpm notice 51B templates/repo-skeleton/.prd_plugin/state/tracking.json\nnpm notice 48B templates/repo-skeleton/.prd_plugin/state/workflow-runs.json\nnpm notice 167B templates/repo-skeleton/.prd_plugin/templates/architecture-delta.md\nnpm notice 1.4kB templates/repo-skeleton/.prd_plugin/templates/architecture.json\nnpm notice 368B templates/repo-skeleton/.prd_plugin/templates/brainstorm.md\nnpm notice 274B templates/repo-skeleton/.prd_plugin/templates/changelog.json\nnpm notice 14.8kB templates/repo-skeleton/.prd_plugin/templates/config.json\nnpm notice 265B templates/repo-skeleton/.prd_plugin/templates/decision-record.md\nnpm notice 398B templates/repo-skeleton/.prd_plugin/templates/decisions.json\nnpm notice 372B templates/repo-skeleton/.prd_plugin/templates/doc-branch.json\nnpm notice 313B templates/repo-skeleton/.prd_plugin/templates/doc-branch.md\nnpm notice 115B templates/repo-skeleton/.prd_plugin/templates/evidence.md\nnpm notice 249B templates/repo-skeleton/.prd_plugin/templates/handoff.json\nnpm notice 407B templates/repo-skeleton/.prd_plugin/templates/health.json\nnpm notice 695B templates/repo-skeleton/.prd_plugin/templates/human-exports/architecture.md\nnpm notice 626B templates/repo-skeleton/.prd_plugin/templates/human-exports/implementation-plan.md\nnpm notice 580B templates/repo-skeleton/.prd_plugin/templates/human-exports/prd.md\nnpm notice 1.4kB templates/repo-skeleton/.prd_plugin/templates/implementation-plan.json\nnpm notice 65B templates/repo-skeleton/.prd_plugin/templates/mailbox.json\nnpm notice 348B templates/repo-skeleton/.prd_plugin/templates/memory.json\nnpm notice 471B templates/repo-skeleton/.prd_plugin/templates/merge-checklist.md\nnpm notice 163B templates/repo-skeleton/.prd_plugin/templates/plan-delta.md\nnpm notice 139B templates/repo-skeleton/.prd_plugin/templates/prd-delta.md\nnpm notice 1.3kB templates/repo-skeleton/.prd_plugin/templates/prd.json\nnpm notice 455B templates/repo-skeleton/.prd_plugin/templates/project.json\nnpm notice 125B templates/repo-skeleton/.prd_plugin/templates/promoted-session-summary.jsonl\nnpm notice 923B templates/repo-skeleton/.prd_plugin/templates/releases.json\nnpm notice 1.4kB templates/repo-skeleton/.prd_plugin/templates/request.json\nnpm notice 1.7kB templates/repo-skeleton/.prd_plugin/templates/requests.json\nnpm notice 23.1kB templates/repo-skeleton/.prd_plugin/templates/script-install-scope.json\nnpm notice 235B templates/repo-skeleton/.prd_plugin/templates/session.json\nnpm notice 15.6kB templates/repo-skeleton/.prd_plugin/templates/skill-install-scope.json\nnpm notice 317B templates/repo-skeleton/.prd_plugin/templates/submission-package.json\nnpm notice 5.7kB templates/repo-skeleton/.prd_plugin/templates/tool-surface.json\nnpm notice 225B templates/repo-skeleton/.prd_plugin/templates/traceability-matrix.md\nnpm notice 321B templates/repo-skeleton/.prd_plugin/templates/tracking.json\nnpm notice 375B templates/repo-skeleton/.prd_plugin/templates/utcp-config.json\nnpm notice 22.2kB templates/repo-skeleton/.prd_plugin/workflows.json\nnpm notice 13.8kB templates/repo-skeleton/AGENTS.md\nnpm notice 10.2kB templates/repo-skeleton/CLAUDE.md\nnpm notice 12.0kB templates/repo-skeleton/docs/INSTALL-MATRIX.md\nnpm notice 2.7kB templates/repo-skeleton/hooks/hooks.json\nnpm notice 1.4kB templates/request.json\nnpm notice 1.7kB templates/requests.json\nnpm notice 23.1kB templates/script-install-scope.json\nnpm notice 1.3kB templates/services.json\nnpm notice 235B templates/session.json\nnpm notice 15.6kB templates/skill-install-scope.json\nnpm notice 317B templates/submission-package.json\nnpm notice 10.4kB templates/substrate-capabilities.json\nnpm notice 48.5kB templates/tool-spec.json\nnpm notice 7.9kB templates/tool-surface.json\nnpm notice 225B templates/traceability-matrix.md\nnpm notice 321B templates/tracking.json\nnpm notice 375B templates/utcp-config.json\nnpm notice 22.2kB templates/workflows.json\nnpm notice Tarball Details\nnpm notice name: prd-plugin\nnpm notice version: 0.16.51\nnpm notice filename: prd-plugin-0.16.51.tgz\nnpm notice package size: 1.6 MB\nnpm notice unpacked size: 9.9 MB\nnpm notice shasum: ac33a847dc69334bda4fb972a0e2b3efb2b44262\nnpm notice integrity: sha512-7u8hmamIqBUsC[...]6zm2QGdL051EA==\nnpm notice total files: 639\nnpm notice\n"
          },
          "output_hash": "82e18eb8a47f906b516bd972eedbf3565dbfdd9220aa55d4b29881028702fccd",
          "completed_at": "2026-07-24T08:53:26Z"
        },
        {
          "id": "gate",
          "action": "state.gate",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-24T08:53:26Z",
          "output": {
            "status": "attention",
            "repo_root": "D:\\Projects\\prd-plugin",
            "summary": {
              "errors": 0,
              "warnings": 0
            },
            "findings": [
              {
                "check": "state_consistency",
                "severity": "info",
                "summary": "File references 2 canonical IDs across 2 prefix(es); treated as a positive signal of extra work.",
                "required_action": "No action required; this is an informational signal."
              }
            ]
          },
          "output_hash": "6a0ed3d65779be265214a0e8395ab03978b9f7b91da9ffb59b257b73f82d087d",
          "completed_at": "2026-07-24T08:53:27Z"
        }
      ],
      "completed_at": "2026-07-24T08:53:27Z"
    },
    {
      "id": "WFR-398",
      "schema_version": "1.0",
      "workflow_id": "session.start",
      "workflow_version": 1,
      "definition_hash": "dd0de9444af7b094cc93673d0844fb78c801d87d978cc5f6dd6bf3e3e863917d",
      "plan_hash": "1f4ae0cd6be8385f8a9310e49978bd8d93baa729842eb6df9243665a1b581277",
      "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
      "inputs": {},
      "idempotency_key": "req-171-reasoning-guard-planning-session-v1",
      "status": "completed",
      "attempt": 1,
      "created_at": "2026-07-24T11:17:54Z",
      "updated_at": "2026-07-24T11:17:57Z",
      "receipts": [
        {
          "step_id": "mailbox",
          "action": "requests.pull",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "ab8a35139cfd3f5821ebc5138c9a44c899b54e4036790654ff120e79c7ab6223",
          "completed_at": "2026-07-24T11:17:55Z"
        },
        {
          "step_id": "config",
          "action": "config.audit",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "172e2697e5951667d2eafa396cb6a952ff4a8c53ebf5dc228ab999c00692f8d2",
          "completed_at": "2026-07-24T11:17:55Z"
        },
        {
          "step_id": "services",
          "action": "services.audit",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "13dcc58bd528f3efa3e6e0fa0853a6eedc376f1f3685fbd4869cbb2b60382ee3",
          "completed_at": "2026-07-24T11:17:55Z"
        },
        {
          "step_id": "state",
          "action": "state.consistency",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "9963110856ca8182da0dfdbb22f6960618b55dbc121be0dce0066a7c7a389b10",
          "completed_at": "2026-07-24T11:17:56Z"
        },
        {
          "step_id": "status",
          "action": "state.query",
          "input_hash": "a15231a2142a2a9a85355a8b9cbbccffe01a9c9c2c2fd8c2bc2987cdc481564a",
          "output_hash": "ebd65d33b3010126b68e0fcb17da350991e3b93105bfb5cc94662d61b5c7fd52",
          "completed_at": "2026-07-24T11:17:56Z"
        },
        {
          "step_id": "substrate",
          "action": "substrate.preflight",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "a6df426290b4549a59eecaa0519ead9bcc50b7fcb25bd2185ff6047960f19ccb",
          "completed_at": "2026-07-24T11:17:57Z"
        },
        {
          "step_id": "notices",
          "action": "substrate.notices",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "38b904a1cf83df048360fb2480571b749fd98d57e11f1afdffb5a74a78166fea",
          "completed_at": "2026-07-24T11:17:57Z"
        },
        {
          "step_id": "goals",
          "action": "substrate.goals",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "cdfd4de44a28140e686159f34f7b47975954c67e1d1efcef666e985acb136ed8",
          "completed_at": "2026-07-24T11:17:57Z"
        }
      ],
      "steps": [
        {
          "id": "mailbox",
          "action": "requests.pull",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-24T11:17:55Z",
          "output": {
            "applied": 0,
            "resolved_ids": [],
            "unmatched": [],
            "mailboxes": [],
            "pruned_outbox": [],
            "consumed_mailboxes": [],
            "outbound": {
              "delivered": 0,
              "mailboxes_published": [],
              "undeliverable": [],
              "pending": []
            },
            "addressed": {
              "delivered": 0,
              "destinations": [],
              "undelivered": [
                {
                  "id": "REQ-030",
                  "state": "not_ours_to_send",
                  "target_repo": "prd-plugin",
                  "reason": "REQ-030 was imported from 'ZeusGrid'; its target_repo records who it was addressed to, not somewhere for us to send it. Reply on its thread instead."
                },
                {
                  "id": "REQ-003",
                  "state": "not_ours_to_send",
                  "target_repo": "prd-plugin",
                  "reason": "REQ-003 was imported from 'ZeusGrid'; its target_repo records who it was addressed to, not somewhere for us to send it. Reply on its thread instead."
                },
                {
                  "id": "REQ-004",
                  "state": "not_ours_to_send",
                  "target_repo": "prd-plugin",
                  "reason": "REQ-004 was imported from 'ZeusGrid'; its target_repo records who it was addressed to, not somewhere for us to send it. Reply on its thread instead."
                },
                {
                  "id": "REQ-005",
                  "state": "not_ours_to_send",
                  "target_repo": "prd-plugin",
                  "reason": "REQ-005 was imported from 'GRAPH_LANG'; its target_repo records who it was addressed to, not somewhere for us to send it. Reply on its thread instead."
                },
                {
                  "id": "REQ-002",
                  "state": "self_addressed",
                  "target_repo": "prd-plugin",
                  "reason": "REQ-002 is addressed to this repo ('prd-plugin'); it is already here."
                },
                {
                  "id": "REQ-028",
                  "state": "self_addressed",
                  "target_repo": "prd-plugin",
                  "reason": "REQ-028 is addressed to this repo ('prd-plugin'); it is already here."
                },
                {
                  "id": "REQ-029",
                  "state": "not_ours_to_send",
                  "target_repo": "ai-collab-v3",
                  "reason": "REQ-029 was imported from 'ai-collab-v3'; its target_repo records who it was addressed to, not somewhere for us to send it. Reply on its thread instead."
                },
                {
                  "id": "REQ-138",
                  "state": "terminal",
                  "target_repo": "no-such-repo",
                  "reason": "REQ-138 is 'rejected'; a closed request is not delivered. Reopen it or file a new one if it still needs to travel."
                }
              ],
              "advisories": []
            }
          },
          "output_hash": "ab8a35139cfd3f5821ebc5138c9a44c899b54e4036790654ff120e79c7ab6223",
          "completed_at": "2026-07-24T11:17:55Z"
        },
        {
          "id": "config",
          "action": "config.audit",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-24T11:17:55Z",
          "output": {
            "status": "ok",
            "summary": {
              "settings": 209,
              "mutable": 199,
              "read_only_or_managed": 10,
              "unclassified": 0,
              "unknown": 0,
              "invalid": 0,
              "missing_using_defaults": 0
            },
            "unclassified_keys": [],
            "unknown_keys": [],
            "invalid_values": [],
            "missing_using_defaults": []
          },
          "output_hash": "172e2697e5951667d2eafa396cb6a952ff4a8c53ebf5dc228ab999c00692f8d2",
          "completed_at": "2026-07-24T11:17:55Z"
        },
        {
          "id": "services",
          "action": "services.audit",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-24T11:17:55Z",
          "output": {
            "status": "ok",
            "summary": {
              "critical": 0,
              "high": 0,
              "medium": 0,
              "low": 0
            },
            "findings": []
          },
          "output_hash": "13dcc58bd528f3efa3e6e0fa0853a6eedc376f1f3685fbd4869cbb2b60382ee3",
          "completed_at": "2026-07-24T11:17:55Z"
        },
        {
          "id": "state",
          "action": "state.consistency",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-24T11:17:55Z",
          "output": {
            "status": "ok",
            "repo_root": "D:\\Projects\\prd-plugin",
            "summary": {
              "errors": 0,
              "warnings": 0,
              "infos": 1
            },
            "findings": [
              {
                "id": "CONS-INFO-001",
                "severity": "info",
                "path": "docs/evidence/EV-200.md",
                "summary": "File references 2 canonical IDs across 2 prefix(es); treated as a positive signal of extra work.",
                "referenced_prefixes": [
                  "CHG",
                  "TRK"
                ],
                "referenced_id_count": 2,
                "required_action": "No action required; this is an informational signal."
              }
            ]
          },
          "output_hash": "9963110856ca8182da0dfdbb22f6960618b55dbc121be0dce0066a7c7a389b10",
          "completed_at": "2026-07-24T11:17:56Z"
        },
        {
          "id": "status",
          "action": "state.query",
          "status": "completed",
          "resolved_input_hash": "a15231a2142a2a9a85355a8b9cbbccffe01a9c9c2c2fd8c2bc2987cdc481564a",
          "started_at": "2026-07-24T11:17:56Z",
          "output": {
            "repo_root": "D:\\Projects\\prd-plugin",
            "autonomy_level": "autonomous",
            "requests_by_status": {
              "accepted": 1,
              "deferred": 1,
              "implemented": 141,
              "in_review": 2,
              "proposed": 5,
              "rejected": 3
            },
            "active_tracking": [],
            "tracking_branches": [],
            "tracking_branch_counts": {},
            "tracking_branch_errors": [],
            "open_health": [
              "HLT-020",
              "HLT-021"
            ],
            "stale_count": 0,
            "skill_usage": {
              "project-llm-wiki": 2,
              "project-decision-policy": 1,
              "project-request-intake": 1,
              "project-test-driven-implementation": 1,
              "project-verification-before-completion": 1,
              "artifact-design": 1
            },
            "wiki_backfill_pending": false,
            "wiki_ingest_drift": null,
            "version_update": {
              "host_plugin": {
                "installed": "0.16.46",
                "latest": "0.16.51",
                "action": "the user plugin install is on 0.16.46 but 0.16.51 is published. Run `claude plugin update prd-plugin@prd-plugin` and restart the host to apply it."
              }
            }
          },
          "output_hash": "ebd65d33b3010126b68e0fcb17da350991e3b93105bfb5cc94662d61b5c7fd52",
          "completed_at": "2026-07-24T11:17:56Z"
        },
        {
          "id": "substrate",
          "action": "substrate.preflight",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-24T11:17:57Z",
          "output": {
            "status": "disabled",
            "services": {
              "status": "ok",
              "summary": {
                "critical": 0,
                "high": 0,
                "medium": 0,
                "low": 0
              },
              "findings": []
            },
            "policy": {
              "configured": {
                "enabled": false,
                "mode": "off",
                "capabilities": [
                  "records",
                  "graph",
                  "events"
                ],
                "contract_version": 2,
                "require_source_refs": true,
                "endpoint": "http://127.0.0.1:47124",
                "manual_url": "http://127.0.0.1:47124/utcp.json",
                "knowledge_browse_url": "http://127.0.0.1:5276",
                "auth_env": "AI_COLLAB_API_KEY",
                "timeout_seconds": 5,
                "max_result_bytes": 1048576,
                "cache_ttl_seconds": 60,
                "fallback": "local",
                "automation": {
                  "discovery_on_session_start": true,
                  "knowledge_recall": true,
                  "memory_recall": true,
                  "context_enrichment": true,
                  "notices_on_session_start": false,
                  "goals_sync": false,
                  "telemetry_on_maintenance": false,
                  "reporting_dispatch": true,
                  "judgment_dispatch": true,
                  "verification_execution": true
                }
              },
              "active": false,
              "effective_mode": "off",
              "effective_capabilities": []
            }
          },
          "output_hash": "a6df426290b4549a59eecaa0519ead9bcc50b7fcb25bd2185ff6047960f19ccb",
          "completed_at": "2026-07-24T11:17:57Z"
        },
        {
          "id": "notices",
          "action": "substrate.notices",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-24T11:17:57Z",
          "output": {
            "status": "disabled"
          },
          "output_hash": "38b904a1cf83df048360fb2480571b749fd98d57e11f1afdffb5a74a78166fea",
          "completed_at": "2026-07-24T11:17:57Z"
        },
        {
          "id": "goals",
          "action": "substrate.goals",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-24T11:17:57Z",
          "output": {
            "status": "disabled",
            "created": 0,
            "observed": 0,
            "results": []
          },
          "output_hash": "cdfd4de44a28140e686159f34f7b47975954c67e1d1efcef666e985acb136ed8",
          "completed_at": "2026-07-24T11:17:57Z"
        }
      ],
      "completed_at": "2026-07-24T11:17:57Z"
    },
    {
      "id": "WFR-399",
      "schema_version": "1.0",
      "workflow_id": "planning.requirements",
      "workflow_version": 1,
      "definition_hash": "daa4833c9f8905528cd972d56f2868eb1e535dcbb47db1a5a09f7114a6e5c83e",
      "plan_hash": "181fd374cfdcd4282ef2d493a9ceddabd5a85e2f03b22f94f1e8da2487e87fd5",
      "input_hash": "9e8514c1cf72226b22b2a96f8d8c3694f10674e94e5006b6d8e7e34cfdbc05b7",
      "inputs": {
        "instructions": "Derive a draft, approval-gated implementation plan for REQ-171 Reasoning Guard. Preserve modes, visible-signal-only privacy, bounded obligations, evidence binding, host limits, atomic sanitized local-only state, unified config and latency disclosure, UTCP-first tools, TDD, delivery parity, and no implementation or acceptance before owner approval.",
        "source_refs": [
          "REQ-171",
          "REQ-107",
          "DEC-015",
          "HLT-020",
          "HLT-021",
          "wiki/hooks/claude-code-hooks.md",
          "wiki/integrations/unified-configuration.md",
          "wiki/workflows/deterministic-workflow-engine.md",
          "wiki/integrations/optional-integrations.md",
          "wiki/delivery/multi-host-skill-delivery.md",
          "wiki/delivery/per-provider-delivery.md",
          ".prd_plugin/hooks/prd_hook_dispatch.py",
          ".claude/settings.json",
          ".codex/hooks.json",
          ".opencode/plugins/prd-hooks.js",
          "scripts/prd_config.py",
          "tests/test_hook_dispatcher.py",
          "tests/test_cross_host_hook_parity.py"
        ]
      },
      "idempotency_key": "req-171:draft-requirements:v1",
      "status": "completed",
      "attempt": 1,
      "created_at": "2026-07-24T11:21:52Z",
      "updated_at": "2026-07-24T11:24:44Z",
      "receipts": [
        {
          "step_id": "state",
          "action": "state.consistency",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "9963110856ca8182da0dfdbb22f6960618b55dbc121be0dce0066a7c7a389b10",
          "completed_at": "2026-07-24T11:21:53Z"
        },
        {
          "step_id": "context",
          "action": "substrate.enrich",
          "input_hash": "7b70be5700c691692679868e9b871d54284f37f099f214d7c46ef43072ceca0f",
          "output_hash": "87686f59e213d65d9dd78f1337702f6ac4f7e87499a2e09a48e7af87c13e0d9c",
          "completed_at": "2026-07-24T11:21:53Z"
        },
        {
          "step_id": "requirements",
          "action": "judgment.request",
          "input_hash": "37f7b84bb78fbac48dc0d7c1bf47487a8b7306e804850a55173d18bc9c5ac918",
          "output_hash": "7a4a66fb6381eed90c99368896c514c8c70bc267df7767d3d484825f3cf7317d",
          "request_hash": "4395b2a65600014f3ba0b7105691c1cd5b83a6281f60d92d4d5bc219778271ac",
          "completed_at": "2026-07-24T11:24:44Z"
        }
      ],
      "steps": [
        {
          "id": "state",
          "action": "state.consistency",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-24T11:21:52Z",
          "output": {
            "status": "ok",
            "repo_root": "D:\\Projects\\prd-plugin",
            "summary": {
              "errors": 0,
              "warnings": 0,
              "infos": 1
            },
            "findings": [
              {
                "id": "CONS-INFO-001",
                "severity": "info",
                "path": "docs/evidence/EV-200.md",
                "summary": "File references 2 canonical IDs across 2 prefix(es); treated as a positive signal of extra work.",
                "referenced_prefixes": [
                  "CHG",
                  "TRK"
                ],
                "referenced_id_count": 2,
                "required_action": "No action required; this is an informational signal."
              }
            ]
          },
          "output_hash": "9963110856ca8182da0dfdbb22f6960618b55dbc121be0dce0066a7c7a389b10",
          "completed_at": "2026-07-24T11:21:53Z"
        },
        {
          "id": "context",
          "action": "substrate.enrich",
          "status": "completed",
          "resolved_input_hash": "7b70be5700c691692679868e9b871d54284f37f099f214d7c46ef43072ceca0f",
          "started_at": "2026-07-24T11:21:53Z",
          "output": {
            "status": "disabled",
            "results": [],
            "local_source_refs": [
              "REQ-171",
              "REQ-107",
              "DEC-015",
              "HLT-020",
              "HLT-021",
              "wiki/hooks/claude-code-hooks.md",
              "wiki/integrations/unified-configuration.md",
              "wiki/workflows/deterministic-workflow-engine.md",
              "wiki/integrations/optional-integrations.md",
              "wiki/delivery/multi-host-skill-delivery.md",
              "wiki/delivery/per-provider-delivery.md",
              ".prd_plugin/hooks/prd_hook_dispatch.py",
              ".claude/settings.json",
              ".codex/hooks.json",
              ".opencode/plugins/prd-hooks.js",
              "scripts/prd_config.py",
              "tests/test_hook_dispatcher.py",
              "tests/test_cross_host_hook_parity.py"
            ]
          },
          "output_hash": "87686f59e213d65d9dd78f1337702f6ac4f7e87499a2e09a48e7af87c13e0d9c",
          "completed_at": "2026-07-24T11:21:53Z"
        },
        {
          "id": "requirements",
          "action": "judgment.request",
          "status": "completed",
          "resolved_input_hash": "37f7b84bb78fbac48dc0d7c1bf47487a8b7306e804850a55173d18bc9c5ac918",
          "started_at": "2026-07-24T11:21:53Z",
          "judgment_request": {
            "contract_version": 1,
            "run_id": "WFR-399",
            "step_id": "requirements",
            "task": "requirements",
            "instructions": "Derive a draft, approval-gated implementation plan for REQ-171 Reasoning Guard. Preserve modes, visible-signal-only privacy, bounded obligations, evidence binding, host limits, atomic sanitized local-only state, unified config and latency disclosure, UTCP-first tools, TDD, delivery parity, and no implementation or acceptance before owner approval.",
            "source_refs": [
              "REQ-171",
              "REQ-107",
              "DEC-015",
              "HLT-020",
              "HLT-021",
              "wiki/hooks/claude-code-hooks.md",
              "wiki/integrations/unified-configuration.md",
              "wiki/workflows/deterministic-workflow-engine.md",
              "wiki/integrations/optional-integrations.md",
              "wiki/delivery/multi-host-skill-delivery.md",
              "wiki/delivery/per-provider-delivery.md",
              ".prd_plugin/hooks/prd_hook_dispatch.py",
              ".claude/settings.json",
              ".codex/hooks.json",
              ".opencode/plugins/prd-hooks.js",
              "scripts/prd_config.py",
              "tests/test_hook_dispatcher.py",
              "tests/test_cross_host_hook_parity.py"
            ],
            "source_hashes": {
              "wiki/hooks/claude-code-hooks.md": "6978380586ba5a878309e3511c1f02e524ae75b49a79caf9c308691cf803e029",
              "wiki/integrations/unified-configuration.md": "ccd8e901f035017f549f748d3eacfa979778ac00e45cc6df1812518c8ff28f81",
              "wiki/workflows/deterministic-workflow-engine.md": "881b638e6357d80611f076c746f3ef09e8c206948979ed217b151afcc756466e",
              "wiki/integrations/optional-integrations.md": "49ba0bfa91bae536e78cf248f4e1b71826ef18804a64ad14fed9c6e261094b2a",
              "wiki/delivery/multi-host-skill-delivery.md": "1bdeaed169b41aec6499048e31072a2e456b36e272745fcde38919593adff226",
              "wiki/delivery/per-provider-delivery.md": "1d30d7644ac9f3f53d7a753fcd2ff52b52c38a2297ff52fe3b03aa2bce8cf9f3",
              ".prd_plugin/hooks/prd_hook_dispatch.py": "e26faa30c62a0eaad4ca74b1bc3e94098ab9c0027bb08e36594ad02214970946",
              ".claude/settings.json": "4c401cec20fcaa1955a13d0c429164d2cf6c0e39792aff8a8b4d0165c7518c3a",
              ".codex/hooks.json": "33aff75c6d604b4e9cb2852eb6f7f66baf20c4b9514582d3d524173484544a3c",
              ".opencode/plugins/prd-hooks.js": "80bb48d48277c540ff5b1c84dd362a146cc19dab6dd70f21fc5e9bb3deb98b26",
              "scripts/prd_config.py": "b56f14e43b703d1cc1aa5876205fe95c371c48a4fec31d408816a541e83c309b",
              "tests/test_hook_dispatcher.py": "43932db5ef81593e54c24f5df2a1df194e2db13533eb763b31d2cbfdced78ff1",
              "tests/test_cross_host_hook_parity.py": "3da541a09b279ab3cb38602fcc4fbdb03673b923517b896d74d5b8ab02b83605"
            },
            "result_schema": {
              "type": "object",
              "required": [
                "summary",
                "requirements",
                "source_refs"
              ],
              "properties": {
                "summary": {
                  "type": "string"
                },
                "requirements": {
                  "type": "array",
                  "items": {
                    "type": "object"
                  }
                },
                "source_refs": {
                  "type": "array",
                  "items": {
                    "type": "string"
                  }
                }
              }
            },
            "executor": "ai-collab",
            "profile": "fast-capable",
            "constraints": {
              "no_project_state_writes": true,
              "require_source_refs": true
            },
            "request_hash": "4395b2a65600014f3ba0b7105691c1cd5b83a6281f60d92d4d5bc219778271ac"
          },
          "output": {
            "summary": "A high-precision deterministic guard should track only explicit, bounded and decision-relevant investigation obligations, reconcile them against matching evidence, and intervene only at guarded decision boundaries. The safe rollout is report-first, capability-aware, local-only, and integrated through existing hook/config/status surfaces.",
            "requirements": [
              {
                "key": "modes",
                "must": "Expose exactly on, off, and report. On and report run the same deterministic analysis and atomically maintain a valid local report, including empty reports; report never influences execution; off performs no analysis or writes and preserves existing state.",
                "sources": [
                  "REQ-171",
                  "wiki/integrations/optional-integrations.md"
                ]
              },
              {
                "key": "bounded-obligations",
                "must": "Create obligations only for agent-stated plausible hypotheses that are decision-relevant and have a bounded discriminating check; record explicit commitment, alternatives, expected result, and decision impact using visible signals only.",
                "sources": [
                  "REQ-171"
                ]
              },
              {
                "key": "lifecycle",
                "must": "Track IDENTIFIED, PLANNED, EXECUTED, EVIDENCED, RESOLVED, and explicitly DEFERRED transitions; a tool call can establish execution but cannot establish evidence or resolution without a matching result and observable conclusion.",
                "sources": [
                  "REQ-171"
                ]
              },
              {
                "key": "boundaries",
                "must": "In on mode gate unsupported causal conclusions, permanent configuration or routing mutations, component replacement or disablement, root-cause claims, and final completion; allow temporary fail-closed mitigation only when labelled mitigation and root cause remains unresolved.",
                "sources": [
                  "REQ-171"
                ]
              },
              {
                "key": "host-capabilities",
                "must": "Normalize host events into one deterministic envelope, use post-tool reconciliation where supported, and report per-session coverage honestly. OpenCode must add its documented tool.execute.after path but still use idle reprompt rather than claiming a vetoable Stop.",
                "sources": [
                  "REQ-171",
                  "DEC-015",
                  ".opencode/plugins/prd-hooks.js",
                  ".claude/settings.json",
                  ".codex/hooks.json"
                ]
              },
              {
                "key": "privacy",
                "must": "Persist only bounded sanitized summaries, event identifiers or digests, evidence bindings, state transitions, violations, actions, coverage and counts under .prd_plugin/local; never persist private chain-of-thought, raw prompts, credentials, secrets, or unbounded tool output.",
                "sources": [
                  "REQ-171"
                ]
              },
              {
                "key": "state-safety",
                "must": "Use a schema-versioned, lock-protected, atomic and idempotent state update that tolerates concurrent tool events, deduplicates retries, bounds retention, and produces explicit malformed-state diagnostics. On fails closed at guarded boundaries; report remains observation-only.",
                "sources": [
                  "REQ-171",
                  ".prd_plugin/hooks/prd_hook_dispatch.py"
                ]
              },
              {
                "key": "operator-surface",
                "must": "Add the mode to the unified configuration catalog, profiles, status, and grouped UI. The UI must explain use cases, on/report/off behavior and latency using measured local observations or an explicit not-yet-measured statement rather than invented universal numbers.",
                "sources": [
                  "REQ-171",
                  "wiki/integrations/unified-configuration.md",
                  "scripts/prd_config.py"
                ]
              },
              {
                "key": "architecture-fit",
                "must": "Reuse the single shared hook dispatcher and existing validated configuration/status tool surfaces. Do not add a hand-written MCP-only control; any agent-invocable extension must remain UTCP-first and generated to compatibility transports.",
                "sources": [
                  "REQ-107",
                  "HLT-020",
                  ".prd_plugin/hooks/prd_hook_dispatch.py",
                  "wiki/workflows/deterministic-workflow-engine.md"
                ]
              },
              {
                "key": "tests",
                "must": "Start each increment with a failing test and cover the motivating identical-payload benchmark abandonment sequence, all modes, lifecycle and evidence binding, deferral, mitigation, irrelevant-hypothesis false positives, empty reports, atomicity, idempotency, concurrency, malformed state, redaction, latency accounting and host degradation.",
                "sources": [
                  "REQ-171",
                  "HLT-021",
                  "tests/test_hook_dispatcher.py",
                  "tests/test_cross_host_hook_parity.py"
                ]
              },
              {
                "key": "delivery",
                "must": "Fold changes through canonical hooks, downstream skeleton, all host adapters, unified config templates and profiles, UI export, install/ignore behavior, method documentation, tests, changelog and release hygiene with parity checks.",
                "sources": [
                  "wiki/delivery/multi-host-skill-delivery.md",
                  "wiki/delivery/per-provider-delivery.md"
                ]
              },
              {
                "key": "approval-boundary",
                "must": "Keep REQ-171 proposed, create no implementation goal, and make no runtime implementation until the owner approves this draft plan.",
                "sources": [
                  "REQ-171"
                ]
              }
            ],
            "source_refs": [
              "REQ-171",
              "REQ-107",
              "DEC-015",
              "HLT-020",
              "HLT-021",
              "wiki/hooks/claude-code-hooks.md",
              "wiki/integrations/unified-configuration.md",
              "wiki/workflows/deterministic-workflow-engine.md",
              "wiki/integrations/optional-integrations.md",
              "wiki/delivery/multi-host-skill-delivery.md",
              "wiki/delivery/per-provider-delivery.md",
              ".prd_plugin/hooks/prd_hook_dispatch.py",
              ".claude/settings.json",
              ".codex/hooks.json",
              ".opencode/plugins/prd-hooks.js",
              "scripts/prd_config.py",
              "tests/test_hook_dispatcher.py",
              "tests/test_cross_host_hook_parity.py"
            ]
          },
          "output_hash": "7a4a66fb6381eed90c99368896c514c8c70bc267df7767d3d484825f3cf7317d",
          "completed_at": "2026-07-24T11:24:44Z",
          "judgment_result": {
            "request_hash": "4395b2a65600014f3ba0b7105691c1cd5b83a6281f60d92d4d5bc219778271ac",
            "executor": "ai-collab",
            "profile": "fast-capable"
          }
        }
      ],
      "completed_at": "2026-07-24T11:24:44Z"
    },
    {
      "id": "WFR-400",
      "schema_version": "1.0",
      "workflow_id": "engineering.verify",
      "workflow_version": 1,
      "definition_hash": "82a795fafbc550f124ec781ea9c5b6170d95b5e687fffadf6939f1f160df5ce1",
      "plan_hash": "6e07f10f7a01ae405db7844a57be2a825b63a5fd758d3324d2d16b6b0a4a9ad5",
      "input_hash": "50b1cdc6fcd0865de81f5b96b3893646869a06307d7d462304a10a8336f9c48d",
      "inputs": {
        "base_ref": "",
        "release": true
      },
      "idempotency_key": "req-171-engineering-verify-v1",
      "status": "completed",
      "attempt": 1,
      "created_at": "2026-07-24T12:38:04Z",
      "updated_at": "2026-07-24T12:40:09Z",
      "receipts": [
        {
          "step_id": "plan",
          "action": "verification.plan",
          "input_hash": "50b1cdc6fcd0865de81f5b96b3893646869a06307d7d462304a10a8336f9c48d",
          "output_hash": "7d66627470e92a535af8e8e595dcade8dd20aabb1e8f8b3f1215d5b38303a38c",
          "completed_at": "2026-07-24T12:38:05Z"
        },
        {
          "step_id": "execute",
          "action": "verification.execute",
          "input_hash": "d57ec05c3b19c8039183fbf072f3f7faa3dd70d22e392db37e1a4de37509f7eb",
          "output_hash": "f136e6c6748ddd43496b576ed21d2c449f7a4a67ed24a0186bbb9efb6bd601f7",
          "completed_at": "2026-07-24T12:40:07Z"
        },
        {
          "step_id": "diff",
          "action": "git.diff_check",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "11c11db30f4b3f6c758722ba3e27eea08145b7d212f6a157451e364b48475280",
          "completed_at": "2026-07-24T12:40:07Z"
        },
        {
          "step_id": "state",
          "action": "state.consistency",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "9963110856ca8182da0dfdbb22f6960618b55dbc121be0dce0066a7c7a389b10",
          "completed_at": "2026-07-24T12:40:08Z"
        },
        {
          "step_id": "gate",
          "action": "state.gate",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "6a0ed3d65779be265214a0e8395ab03978b9f7b91da9ffb59b257b73f82d087d",
          "completed_at": "2026-07-24T12:40:09Z"
        }
      ],
      "steps": [
        {
          "id": "plan",
          "action": "verification.plan",
          "status": "completed",
          "resolved_input_hash": "50b1cdc6fcd0865de81f5b96b3893646869a06307d7d462304a10a8336f9c48d",
          "started_at": "2026-07-24T12:38:05Z",
          "output": {
            "schema_version": "1.0",
            "contract_version": 1,
            "executor": "ai-collab",
            "changed_files": [
              ".claude-plugin/marketplace.json",
              ".claude-plugin/plugin.json",
              ".claude/settings.json",
              ".codex-plugin/plugin.json",
              ".codex/hooks.json",
              ".opencode/plugin.json",
              ".opencode/plugins/prd-hooks.js",
              ".prd_plugin/config.json",
              ".prd_plugin/drift/events.jsonl",
              ".prd_plugin/hooks/prd_hook_dispatch.py",
              ".prd_plugin/hooks/prd_reason_guard.py",
              ".prd_plugin/ids/registry.json",
              ".prd_plugin/state/health.json",
              ".prd_plugin/state/project.json",
              ".prd_plugin/state/releases.json",
              ".prd_plugin/state/requests.json",
              ".prd_plugin/state/tracking.json",
              ".prd_plugin/state/workflow-runs.json",
              "AGENTS.md",
              "CLAUDE.md",
              "docs/REASONING-GUARD.md",
              "hooks/hooks.json",
              "index.js",
              "mcp/server.cjs",
              "package.json",
              "raw/hooks/2026-07-24-reasoning-guard.md",
              "README.md",
              "scripts/prd_config.py",
              "scripts/prd_install.py",
              "scripts/prd_status.py",
              "scripts/prd_ui_export.py",
              "skills-manifest.json",
              "templates/config.json",
              "templates/project.json",
              "templates/releases.json",
              "templates/repo-skeleton/.claude-plugin/plugin.json",
              "templates/repo-skeleton/.claude/settings.json",
              "templates/repo-skeleton/.codex-plugin/plugin.json",
              "templates/repo-skeleton/.codex/hooks.json",
              "templates/repo-skeleton/.opencode/plugin.json",
              "templates/repo-skeleton/.opencode/plugins/prd-hooks.js",
              "templates/repo-skeleton/.prd_plugin/config.json",
              "templates/repo-skeleton/.prd_plugin/hooks/prd_hook_dispatch.py",
              "templates/repo-skeleton/.prd_plugin/hooks/prd_reason_guard.py",
              "templates/repo-skeleton/.prd_plugin/state/project.json",
              "templates/repo-skeleton/.prd_plugin/templates/config.json",
              "templates/repo-skeleton/.prd_plugin/templates/project.json",
              "templates/repo-skeleton/AGENTS.md",
              "templates/repo-skeleton/CLAUDE.md",
              "templates/repo-skeleton/hooks/hooks.json",
              "tests/test_config_toggles.py",
              "tests/test_cross_host_hook_parity.py",
              "tests/test_hook_dispatcher.py",
              "tests/test_prd_install.py",
              "tests/test_prd_ui_export.py",
              "tests/test_reason_guard.py",
              "tests/test_tracking_commands.py",
              "tests/test_utcp_first_catalog.py",
              "wiki/hooks/claude-code-hooks.md",
              "wiki/hooks/reasoning-guard.md",
              "wiki/index.md",
              "wiki/log.md"
            ],
            "change_fingerprint": "2421b20dd28543ea799e2c6ae11a57daafb4758c2486954b83b5902ccdfb7973",
            "policy": {
              "enabled": true,
              "executor": "ai-collab",
              "neighbor_limit": 12,
              "max_changed_files": 25,
              "fallback": "full",
              "full_suite_triggers": [
                "release",
                "core_change",
                "impact_unavailable",
                "impact_degraded",
                "unmapped_change"
              ],
              "core_paths": [
                "package.json",
                "package-lock.json",
                "pyproject.toml",
                "Cargo.toml",
                "go.mod",
                ".github/workflows/**"
              ],
              "test_patterns": [
                "tests/**",
                "test/**",
                "spec/**",
                "**/*.test.*",
                "**/*.spec.*",
                "test_*.py",
                "*_test.py",
                "*_test.go",
                "**/test_*.py",
                "**/*_test.py",
                "**/*_test.go"
              ],
              "max_selected_tests": 200,
              "execution_timeout_seconds": 600,
              "focused_commands": [],
              "full_commands": [],
              "allowed_executables": [
                "python",
                "python3",
                "py",
                "pytest",
                "npm",
                "npx",
                "node",
                "go",
                "cargo",
                "dotnet",
                "mvn",
                "gradle",
                "gradlew",
                "make"
              ]
            },
            "selection_rules": {
              "precedence": [
                "exact_changed",
                "explicit_test_ownership",
                "structural_dependencies",
                "predictive_impact"
              ],
              "require_all_changed_files_mapped": true,
              "widen_before_full": true,
              "predictive_signal_is_sufficient_alone": false
            },
            "fallback": {
              "strategy": "full",
              "conditions": [
                "release",
                "core_change",
                "impact_unavailable",
                "impact_degraded",
                "unmapped_change"
              ]
            },
            "strategy": "full",
            "reason": "release",
            "runtime_requests": {},
            "plan_hash": "a07bf90e8748455117995709c915da020c9b3b26e24b3d30edfb199385610302"
          },
          "output_hash": "7d66627470e92a535af8e8e595dcade8dd20aabb1e8f8b3f1215d5b38303a38c",
          "completed_at": "2026-07-24T12:38:05Z"
        },
        {
          "id": "execute",
          "action": "verification.execute",
          "status": "completed",
          "resolved_input_hash": "d57ec05c3b19c8039183fbf072f3f7faa3dd70d22e392db37e1a4de37509f7eb",
          "started_at": "2026-07-24T12:38:05Z",
          "output": {
            "status": "passed",
            "strategy": "full",
            "reason": "release",
            "selected_tests": [],
            "change_fingerprint": "2421b20dd28543ea799e2c6ae11a57daafb4758c2486954b83b5902ccdfb7973",
            "plan_hash": "a07bf90e8748455117995709c915da020c9b3b26e24b3d30edfb199385610302",
            "impact_receipts": [],
            "receipts": [
              {
                "command": [
                  "npm",
                  "test"
                ],
                "exit_code": 0,
                "stdout": "\n> prd-plugin@0.16.52 test\n> python -m unittest discover -s tests -v\n\n{\n  \"status\": \"fail\",\n  \"repo_root\": \"C:\\\\Users\\\\marku\\\\AppData\\\\Local\\\\Temp\\\\tmpxj7_d7sf\",\n  \"summary\": {\n    \"errors\": 1,\n    \"warnings\": 0\n  },\n  \"findings\": [\n    {\n      \"check\": \"duplicate_id\",\n      \"severity\": \"error\",\n      \"summary\": \"Duplicate id REQ-002 in .prd_plugin/state/requests.json.\",\n      \"required_action\": \"Renumber one record so REQ-002 is unique. Allocate IDs with the MCP tool prd_next_id (or the record tools like prd_open_goal) instead of hand-computing them.\"\n    }\n  ]\n}\nautonomy_level set to guided\nautonomy_level set to autonomous\nDESTRUCTIVE RESET REQUESTED: --force --yes will erase protected PRD Plugin project data.\nThe following existing state/configuration files would be replaced with skeleton defaults:\n  - .prd_plugin/state/tracking.json\nThis may erase IDs, tracking, requests, decisions, health findings, configuration, and session memory.\nFor a normal safe update, remove --yes and run: npx prd-install . --force\nPRD Plugin safe update: preserving existing state/config and refreshing plugin files only. Never add --yes to a routine update; it requests a destructive reset.\nPRD Plugin safe update: preserving existing state/config and refreshing plugin files only. Never add --yes to a routine update; it requests a destructive reset.\nPRD Plugin safe update: preserving existing state/config and refreshing plugin files only. Never add --yes to a routine update; it requests a destructive reset.\nPRD Plugin safe update: preserving existing state/config and refreshing plugin files only. Never add --yes to a routine update; it requests a destructive reset.\nPRD Plugin safe update: preserving existing state/config and refreshing plugin files only. Never add --yes to a routine update; it requests a destructive reset.\nPRD Plugin safe update: preserving existing state/config and refreshing plugin files only. Never add --yes to a routine update; it requests a destructive reset.\nPRD Plugin safe update: preserving existing state/config and refreshing plugin files only. Never add --yes to a routine update; it requests a destructive reset.\nPRD Plugin safe update: preserving existing state/config and refreshing plugin files only. Never add --yes to a routine update; it requests a destructive reset.\nPRD Plugin safe update: preserving existing state/config and refreshing plugin files only. Never add --yes to a routine update; it requests a destructive reset.\nPRD Plugin safe update: preserving existing state/config and refreshing plugin files only. Never add --yes to a routine update; it requests a destructive reset.\nPRD Plugin safe update: preserving existing state/config and refreshing plugin files only. Never add --yes to a routine update; it requests a destructive reset.\nPRD Plugin safe update: preserving existing state/config and refreshing plugin files only. Never add --yes to a routine update; it requests a destructive reset.\nPRD Plugin safe update: preserving existing state/config and refreshing plugin files only. Never add --yes to a routine update; it requests a destructive reset.\nPRD Plugin safe update: preserving existing state/config and refreshing plugin files only. Never add --yes to a routine update; it requests a destructive reset.\nPRD Plugin safe update: preserving existing state/config and refreshing plugin files only. Never add --yes to a routine update; it requests a destructive reset.\nPRD Plugin safe update: preserving existing state/config and refreshing plugin files only. Never add --yes to a routine update; it requests a destructive reset.\nPRD Plugin safe update: preserving existing state/config and refreshing plugin files only. Never add --yes to a routine update; it requests a destructive reset.\n{\n  \"published\": false,\n  \"package\": \"prd-plugin\",\n  \"version\": \"9.9.9\",\n  \"version_seen\": null,\n  \"latest_seen\": null,\n  \"attempts_used\": 1\n}\n{\n  \"published\": true,\n  \"package\": \"prd-plugin\",\n  \"version\": \"1.2.3\",\n  \"version_seen\": \"1.2.3\",\n  \"latest_seen\": \"1.2.3\",\n  \"attempts_used\": 1\n}\n{\"decision\": \"block\", \"reason\": \"Autonomous run-until-done: goal TRK-157 is still active. Continue with the next incomplete step toward it \\u2014 do not stop to ask 'shall I proceed?'. If you genuinely need the user (consent floor: push/merge/publish/secrets, or a real blocker), create the file .prd_plugin/local/autonomy-pause with a one-line reason and then stop; the guard will let you. Otherwise keep going.\"}\n",
                "stderr": "ng (test_unified_config.MutationTests.test_audit_reports_scalar_configuration_section_without_crashing) ... ok\ntest_audit_reports_unknown_and_invalid_values (test_unified_config.MutationTests.test_audit_reports_unknown_and_invalid_values) ... ok\ntest_enable_disable_only_accept_mutable_booleans (test_unified_config.MutationTests.test_enable_disable_only_accept_mutable_booleans) ... ok\ntest_failed_atomic_replace_leaves_original_config_untouched (test_unified_config.MutationTests.test_failed_atomic_replace_leaves_original_config_untouched) ... ok\ntest_malformed_config_is_never_replaced_by_a_mutation (test_unified_config.MutationTests.test_malformed_config_is_never_replaced_by_a_mutation) ... ok\ntest_manual_set_marks_profile_custom_and_preserves_style (test_unified_config.MutationTests.test_manual_set_marks_profile_custom_and_preserves_style) ... ok\ntest_scalar_parent_is_not_clobbered_by_nested_set (test_unified_config.MutationTests.test_scalar_parent_is_not_clobbered_by_nested_set) ... ok\ntest_builtin_profile_dry_run_then_atomic_apply (test_unified_config.ProfileTests.test_builtin_profile_dry_run_then_atomic_apply) ... ok\ntest_invalid_custom_profile_never_partially_writes (test_unified_config.ProfileTests.test_invalid_custom_profile_never_partially_writes) ... ok\ntest_save_show_diff_and_delete_custom_profile (test_unified_config.ProfileTests.test_save_show_diff_and_delete_custom_profile) ... ok\ntest_does_not_flag_canonical_prd_state_paths (test_unsubmitted_plugin_request.UnsubmittedPluginRequestTests.test_does_not_flag_canonical_prd_state_paths) ... ok\ntest_does_not_flag_ordinary_project_requests (test_unsubmitted_plugin_request.UnsubmittedPluginRequestTests.test_does_not_flag_ordinary_project_requests) ... ok\ntest_does_not_flag_rejected_requests (test_unsubmitted_plugin_request.UnsubmittedPluginRequestTests.test_does_not_flag_rejected_requests) ... ok\ntest_does_not_flag_when_already_marked_upstream (test_unsubmitted_plugin_request.UnsubmittedPluginRequestTests.test_does_not_flag_when_already_marked_upstream) ... ok\ntest_flags_a_local_request_about_a_plugin_script (test_unsubmitted_plugin_request.UnsubmittedPluginRequestTests.test_flags_a_local_request_about_a_plugin_script) ... ok\ntest_flags_a_request_that_names_itself_upstream (test_unsubmitted_plugin_request.UnsubmittedPluginRequestTests.test_flags_a_request_that_names_itself_upstream) ... ok\ntest_never_fires_in_the_hub_repo_itself (test_unsubmitted_plugin_request.UnsubmittedPluginRequestTests.test_never_fires_in_the_hub_repo_itself) ... ok\ntest_wired_into_run_checks (test_unsubmitted_plugin_request.UnsubmittedPluginRequestTests.test_wired_into_run_checks) ... ok\ntest_output_writes_lf_and_a_trailing_newline (test_utcp_first_authority.GeneratedArtifactsAreByteStableTests.test_output_writes_lf_and_a_trailing_newline) ... ok\ntest_the_committed_manual_matches_a_fresh_generation (test_utcp_first_authority.GeneratedArtifactsAreByteStableTests.test_the_committed_manual_matches_a_fresh_generation) ... ok\ntest_every_spec_tool_maps_to_a_catalog_capability (test_utcp_first_authority.ParityDirectionTests.test_every_spec_tool_maps_to_a_catalog_capability) ... ok\ntest_server_metadata_matches_the_spec (test_utcp_first_authority.ParityDirectionTests.test_server_metadata_matches_the_spec) ... ok\ntest_python_entry_points_share_the_same_lock (test_utcp_first_authority.SafetyUnchangedTests.test_python_entry_points_share_the_same_lock)\nThe migration target already exists and is proven: prd_reflections ... ok\ntest_the_state_lock_is_still_held_for_mutations (test_utcp_first_authority.SafetyUnchangedTests.test_the_state_lock_is_still_held_for_mutations) ... ok\ntest_no_shipped_tool_metadata_carries_mojibake (test_utcp_first_authority.ShippedTextIsCleanTests.test_no_shipped_tool_metadata_carries_mojibake) ... ok\ntest_shipped_tool_metadata_is_valid_utf8 (test_utcp_first_authority.ShippedTextIsCleanTests.test_shipped_tool_metadata_is_valid_utf8)\nA file written through a cp1252 layer either fails to decode or ... ok\ntest_each_tool_declares_name_description_and_schema (test_utcp_first_authority.SpecIsTheSourceTests.test_each_tool_declares_name_description_and_schema) ... ok\ntest_the_manual_is_generated_from_the_spec_not_the_server (test_utcp_first_authority.SpecIsTheSourceTests.test_the_manual_is_generated_from_the_spec_not_the_server) ... ok\ntest_the_server_no_longer_authors_descriptions (test_utcp_first_authority.SpecIsTheSourceTests.test_the_server_no_longer_authors_descriptions)\nserver.cjs must READ definitions, not declare them. While a tool ... ok\ntest_the_spec_exists_and_declares_every_tool (test_utcp_first_authority.SpecIsTheSourceTests.test_the_spec_exists_and_declares_every_tool) ... ok\ntest_official_bridge_round_trips_cli_and_mcp_templates (test_utcp_first_catalog.BridgeParityTests.test_official_bridge_round_trips_cli_and_mcp_templates) ... ok\ntest_bridged_entries_reuse_server_metadata_verbatim (test_utcp_first_catalog.GeneratedProjectionTests.test_bridged_entries_reuse_server_metadata_verbatim)\nEach bridged manual entry's description and inputs equal the server's ... ok\ntest_checked_in_metadata_matches_live_server (test_utcp_first_catalog.GeneratedProjectionTests.test_checked_in_metadata_matches_live_server)\nThe pinned metadata projection cannot drift behind the live server. ... ok\ntest_mutations_keep_the_validated_handler_path (test_utcp_first_catalog.GuardedMutationTests.test_mutations_keep_the_validated_handler_path)\nEvery manual tool in a non-read capability calls the plugin state ... ok\ntest_read_only_cli_tools_stay_cli (test_utcp_first_catalog.GuardedMutationTests.test_read_only_cli_tools_stay_cli)\nThe 12 cli-native observe/recall tools keep their cli templates. ... ok\ntest_checked_in_metadata_projection_exists (test_utcp_first_catalog.ManualCompletenessTests.test_checked_in_metadata_projection_exists)\nThe server's tool metadata is a checked-in generated artifact so the ... ok\ntest_manual_covers_every_capability_on_both_transports (test_utcp_first_catalog.ManualCompletenessTests.test_manual_covers_every_capability_on_both_transports)\nEvery UTCP and MCP registration in the tool-surface catalog appears ... ok\ntest_appends_version_change_request (test_version_advice.VersionAdviceTests.test_appends_version_change_request) ... ok\ntest_builds_safe_update_advice_for_low_risk_releases (test_version_advice.VersionAdviceTests.test_builds_safe_update_advice_for_low_risk_releases) ... ok\ntest_cli_uses_hub_releases_when_downstream_repo_has_no_releases_file (test_version_advice.VersionAdviceTests.test_cli_uses_hub_releases_when_downstream_repo_has_no_releases_file) ... ok\ntest_detects_installed_version_from_bom_json (test_version_advice.VersionAdviceTests.test_detects_installed_version_from_bom_json) ... ok\ntest_detects_installed_version_from_opencode_plugin_manifest (test_version_advice.VersionAdviceTests.test_detects_installed_version_from_opencode_plugin_manifest) ... ok\ntest_detects_installed_version_from_prd_plugin_config (test_version_advice.VersionAdviceTests.test_detects_installed_version_from_prd_plugin_config) ... ok\ntest_detects_latest_version_from_plugin_manifest (test_version_advice.VersionAdviceTests.test_detects_latest_version_from_plugin_manifest) ... ok\ntest_installed_version_priority_prefers_config_then_codex_then_opencode (test_version_advice.VersionAdviceTests.test_installed_version_priority_prefers_config_then_codex_then_opencode) ... ok\ntest_orders_prerelease_before_final_release (test_version_advice.VersionAdviceTests.test_orders_prerelease_before_final_release) ... ok\ntest_recommends_review_first_for_medium_or_high_risk_release (test_version_advice.VersionAdviceTests.test_recommends_review_first_for_medium_or_high_risk_release) ... ok\ntest_disabled_returns_disabled_and_no_fetch (test_version_check.CheckTests.test_disabled_returns_disabled_and_no_fetch) ... ok\ntest_force_refetches_within_ttl (test_version_check.CheckTests.test_force_refetches_within_ttl) ... ok\ntest_network_failure_is_fail_open (test_version_check.CheckTests.test_network_failure_is_fail_open) ... ok\ntest_no_update_when_current (test_version_check.CheckTests.test_no_update_when_current) ... ok\ntest_status_is_cache_only_no_fetch (test_version_check.CheckTests.test_status_is_cache_only_no_fetch) ... ok\ntest_ttl_cache_avoids_refetch (test_version_check.CheckTests.test_ttl_cache_avoids_refetch) ... ok\ntest_ttl_expiry_refetches (test_version_check.CheckTests.test_ttl_expiry_refetches) ... ok\ntest_update_available_when_npm_is_ahead (test_version_check.CheckTests.test_update_available_when_npm_is_ahead) ... ok\ntest_status_cli_exits_zero (test_version_check.CliTests.test_status_cli_exits_zero) ... ok\ntest_default_ttl_is_responsive_not_a_day (test_version_check.FreshnessTests.test_default_ttl_is_responsive_not_a_day) ... ok\ntest_fetch_latest_accepts_a_timeout (test_version_check.FreshnessTests.test_fetch_latest_accepts_a_timeout) ... ok\ntest_nudge_refreshes_in_session_not_cache_only (test_version_check.FreshnessTests.test_nudge_refreshes_in_session_not_cache_only) ... ok\ntest_registry_default_ttl_matches (test_version_check.FreshnessTests.test_registry_default_ttl_matches) ... ok\ntest_semver_ordering (test_version_check.ParseTests.test_semver_ordering) ... ok\ntest_set_enabled_writes_config (test_version_check.ToggleTests.test_set_enabled_writes_config) ... ok\ntest_config_has_version_check_default_on (test_version_check.WiringTests.test_config_has_version_check_default_on) ... ok\ntest_nudge_surfaces_update_available (test_version_check.WiringTests.test_nudge_surfaces_update_available) ... ok\ntest_prd_version_command_exists (test_version_check.WiringTests.test_prd_version_command_exists) ... ok\ntest_script_registered_downstream (test_version_check.WiringTests.test_script_registered_downstream) ... ok\ntest_plan_cli_emits_json (test_wiki_backfill.CliTests.test_plan_cli_emits_json) ... ok\ntest_status_cli (test_wiki_backfill.CliTests.test_status_cli) ... ok\ntest_marker_written_for_established_repo_gaining_wiki (test_wiki_backfill.InstallerMarkerTests.test_marker_written_for_established_repo_gaining_wiki) ... ok\ntest_no_marker_for_empty_scaffold (test_wiki_backfill.InstallerMarkerTests.test_no_marker_for_empty_scaffold) ... ok\ntest_no_marker_when_wiki_already_exists (test_wiki_backfill.InstallerMarkerTests.test_no_marker_when_wiki_already_exists) ... ok\ntest_no_marker_when_wiki_disabled (test_wiki_backfill.InstallerMarkerTests.test_no_marker_when_wiki_disabled) ... ok\ntest_pending_false_when_absent (test_wiki_backfill.StatusTests.test_pending_false_when_absent) ... ok\ntest_pending_false_when_wiki_already_exists (test_wiki_backfill.StatusTests.test_pending_false_when_wiki_already_exists) ... ok\ntest_pending_true_when_marker_present (test_wiki_backfill.StatusTests.test_pending_true_when_marker_present) ... ok\ntest_plan_excludes_generated_report_artifacts (test_wiki_backfill.SurveyPlanTests.test_plan_excludes_generated_report_artifacts)\nrequest-report/ (incl. its calibration report trees) and docs/evidence/ ... ok\ntest_plan_excludes_plugin_and_vendor_noise (test_wiki_backfill.SurveyPlanTests.test_plan_excludes_plugin_and_vendor_noise) ... ok\ntest_plan_inventories_code_docs_and_state (test_wiki_backfill.SurveyPlanTests.test_plan_inventories_code_docs_and_state) ... ok\ntest_plan_is_read_only (test_wiki_backfill.SurveyPlanTests.test_plan_is_read_only) ... ok\ntest_wiki_drift_in_on_stop_and_default_sets (test_wiki_backfill.WikiDriftMonitorWiringTests.test_wiki_drift_in_on_stop_and_default_sets) ... ok\ntest_current_article_no_drift (test_wiki_backfill.WikiDriftTests.test_current_article_no_drift) ... ok\ntest_drift_cli (test_wiki_backfill.WikiDriftTests.test_drift_cli) ... ok\ntest_far_behind_article_flagged (test_wiki_backfill.WikiDriftTests.test_far_behind_article_flagged) ... ok\ntest_no_wiki_is_ok (test_wiki_backfill.WikiDriftTests.test_no_wiki_is_ok) ... ok\ntest_unlinked_markdown_reference_is_part_of_wiki_drift (test_wiki_backfill.WikiDriftTests.test_unlinked_markdown_reference_is_part_of_wiki_drift) ... ok\ntest_unstamped_article_flagged (test_wiki_backfill.WikiDriftTests.test_unstamped_article_flagged) ... ok\ntest_wiki_drift_uses_configured_wiki_directory (test_wiki_backfill.WikiDriftTests.test_wiki_drift_uses_configured_wiki_directory) ... ok\ntest_ambiguous_reference_is_reported_but_never_guessed (test_wiki_backfill.WikiInlineMarkdownLinkTests.test_ambiguous_reference_is_reported_but_never_guessed) ... ok\ntest_cli_check_fails_and_fix_then_passes (test_wiki_backfill.WikiInlineMarkdownLinkTests.test_cli_check_fails_and_fix_then_passes) ... ok\ntest_existing_inline_links_and_fenced_examples_are_not_findings (test_wiki_backfill.WikiInlineMarkdownLinkTests.test_existing_inline_links_and_fenced_examples_are_not_findings) ... ok\ntest_fix_rewrites_only_unambiguous_references_to_relative_inline_links (test_wiki_backfill.WikiInlineMarkdownLinkTests.test_fix_rewrites_only_unambiguous_references_to_relative_inline_links) ... ok\ntest_reports_resolvable_bare_and_code_wrapped_markdown_references (test_wiki_backfill.WikiInlineMarkdownLinkTests.test_reports_resolvable_bare_and_code_wrapped_markdown_references) ... ok\ntest_nudge_surfaces_pending_backfill (test_wiki_backfill.WiringTests.test_nudge_surfaces_pending_backfill) ... ok\ntest_script_registered_downstream (test_wiki_backfill.WiringTests.test_script_registered_downstream) ... ok\ntest_skill_has_backfill_mode (test_wiki_backfill.WiringTests.test_skill_has_backfill_mode) ... ok\ntest_copy_and_download_controls_are_wired (test_wiki_html_export.WikiHtmlExportTests.test_copy_and_download_controls_are_wired) ... ok\ntest_default_output_lands_in_the_local_runtime_dir (test_wiki_html_export.WikiHtmlExportTests.test_default_output_lands_in_the_local_runtime_dir) ... ok\ntest_every_page_is_embedded_with_exact_markdown (test_wiki_html_export.WikiHtmlExportTests.test_every_page_is_embedded_with_exact_markdown) ... ok\ntest_export_all_generates_viewers_and_super_index (test_wiki_html_export.WikiHtmlExportTests.test_export_all_generates_viewers_and_super_index) ... ok\ntest_export_is_one_self_contained_offline_file (test_wiki_html_export.WikiHtmlExportTests.test_export_is_one_self_contained_offline_file) ... ok\ntest_guest_repo_viewer_is_hosted_by_the_host_repo (test_wiki_html_export.WikiHtmlExportTests.test_guest_repo_viewer_is_hosted_by_the_host_repo)\nA repo without .prd_plugin gets NO new files in its own tree; its ... ok\ntest_hub_repo_exports_all_pages (test_wiki_html_export.WikiHtmlExportTests.test_hub_repo_exports_all_pages) ... ok\ntest_parse_wiki_log_extracts_dated_entries_with_bodies (test_wiki_html_export.WikiHtmlExportTests.test_parse_wiki_log_extracts_dated_entries_with_bodies)\nREQ-112: every workspace log follows '## [date] mode | text'. ... ok\ntest_parse_wiki_log_tolerates_missing_log (test_wiki_html_export.WikiHtmlExportTests.test_parse_wiki_log_tolerates_missing_log) ... ok\ntest_script_content_cannot_break_the_payload (test_wiki_html_export.WikiHtmlExportTests.test_script_content_cannot_break_the_payload) ... ok\ntest_super_index_has_a_combined_changelog (test_wiki_html_export.WikiHtmlExportTests.test_super_index_has_a_combined_changelog) ... ok\ntest_super_index_reports_page_counts (test_wiki_html_export.WikiHtmlExportTests.test_super_index_reports_page_counts) ... ok\ntest_workspace_discovery_uses_the_wiki_convention_marker (test_wiki_html_export.WikiHtmlExportTests.test_workspace_discovery_uses_the_wiki_convention_marker)\nREQ-110 + REQ-111: any immediate child whose wiki follows the ... ok\ntest_a_repo_without_a_wiki_is_not_in_drift (test_wiki_ingest_drift.DetectionTests.test_a_repo_without_a_wiki_is_not_in_drift)\nNo wiki is a legitimate state, not a failure to ingest. ... ok\ntest_fully_ingested_repo_is_clean (test_wiki_ingest_drift.DetectionTests.test_fully_ingested_repo_is_clean) ... ok\ntest_malformed_state_degrades_rather_than_raising (test_wiki_ingest_drift.DetectionTests.test_malformed_state_degrades_rather_than_raising) ... ok\ntest_non_implemented_requests_are_never_expected_in_the_log (test_wiki_ingest_drift.DetectionTests.test_non_implemented_requests_are_never_expected_in_the_log) ... ok\ntest_only_work_since_the_last_ingest_is_actionable (test_wiki_ingest_drift.DetectionTests.test_only_work_since_the_last_ingest_is_actionable)\nRaw counting flags pre-wiki history as drift � ~70 items in the hub, ... ok\ntest_reports_implemented_requests_absent_from_the_log (test_wiki_ingest_drift.DetectionTests.test_reports_implemented_requests_absent_from_the_log) ... ok\ntest_it_runs_against_this_repo_and_returns_a_usable_report (test_wiki_ingest_drift.RealRepoTests.test_it_runs_against_this_repo_and_returns_a_usable_report)\nGrounded against real state, but NOT pinned to a specific gap: a test ... ok\ntest_prd_status_omits_it_when_clean (test_wiki_ingest_drift.SurfaceTests.test_prd_status_omits_it_when_clean) ... ok\ntest_prd_status_reports_the_drift (test_wiki_ingest_drift.SurfaceTests.test_prd_status_reports_the_drift) ... ok\ntest_this_repos_wiki_reads_byte_exact (test_wiki_page_contract.HubRepoSmokeTests.test_this_repos_wiki_reads_byte_exact) ... ok\ntest_list_enumerates_canonical_pages_with_titles (test_wiki_page_contract.WikiPageListTests.test_list_enumerates_canonical_pages_with_titles) ... ok\ntest_boundaries_are_hard (test_wiki_page_contract.WikiPageReadTests.test_boundaries_are_hard) ... ok\ntest_drift_remains_the_default_action (test_wiki_page_contract.WikiPageReadTests.test_drift_remains_the_default_action) ... ok\ntest_read_page_without_stamps_reports_null_provenance (test_wiki_page_contract.WikiPageReadTests.test_read_page_without_stamps_reports_null_provenance) ... ok\ntest_read_requires_a_path (test_wiki_page_contract.WikiPageReadTests.test_read_requires_a_path) ... ok\ntest_read_returns_exact_markdown_with_provenance (test_wiki_page_contract.WikiPageReadTests.test_read_returns_exact_markdown_with_provenance) ... ok\ntest_no_cp1252_unencodable_chars_in_agent_facing_tools (test_windows_console_safe.SourceScanTests.test_no_cp1252_unencodable_chars_in_agent_facing_tools) ... ok\ntest_backfill_pending_status_renders_cp1252_safe (test_windows_console_safe.StatusRenderTests.test_backfill_pending_status_renders_cp1252_safe) ... ok\ntest_repository_workflow_surfaces_are_chml_zero (test_workflow_chml_audit.WorkflowChmlAuditTests.test_repository_workflow_surfaces_are_chml_zero) ... ok\ntest_semantic_skill_finding_is_part_of_workflow_chml (test_workflow_chml_audit.WorkflowChmlAuditTests.test_semantic_skill_finding_is_part_of_workflow_chml) ... ok\ntest_git_workflow_pushes_clean_verified_commits_in_autonomous (test_workflow_consistency.AutonomyConflictResolutionTests.test_git_workflow_pushes_clean_verified_commits_in_autonomous) ... ok\ntest_request_intake_defers_autonomy_and_owns_graduation (test_workflow_consistency.AutonomyConflictResolutionTests.test_request_intake_defers_autonomy_and_owns_graduation) ... ok\ntest_evidence_pair_states_create_vs_review_boundary (test_workflow_consistency.BoundaryClarityTests.test_evidence_pair_states_create_vs_review_boundary) ... ok\ntest_session_close_states_memory_boundary (test_workflow_consistency.BoundaryClarityTests.test_session_close_states_memory_boundary) ... ok\ntest_document_branch_has_promotion_owner (test_workflow_consistency.DeadEndOwnerTests.test_document_branch_has_promotion_owner) ... ok\ntest_health_findings_have_triage_dispositions (test_workflow_consistency.DeadEndOwnerTests.test_health_findings_have_triage_dispositions) ... ok\ntest_memory_owns_schema_version_changes (test_workflow_consistency.DeadEndOwnerTests.test_memory_owns_schema_version_changes) ... ok\ntest_planning_lifecycle_has_stage_readiness_checkpoints (test_workflow_consistency.DeadEndOwnerTests.test_planning_lifecycle_has_stage_readiness_checkpoints) ... ok\ntest_session_close_runs_traceability_sync (test_workflow_consistency.DeadEndOwnerTests.test_session_close_runs_traceability_sync) ... ok\n\n----------------------------------------------------------------------\nRan 1230 tests in 120.588s\n\nOK\n",
                "receipt_hash": "f5ca99e49495cee6f255532be0f29c39075bdc07346cf4d4d3604d9d77a8934c"
              }
            ],
            "execution_hash": "b9b4dda2aacf1c54f33fd16b8214f5d4a4c317624151682944840a10698483a8"
          },
          "output_hash": "f136e6c6748ddd43496b576ed21d2c449f7a4a67ed24a0186bbb9efb6bd601f7",
          "completed_at": "2026-07-24T12:40:07Z"
        },
        {
          "id": "diff",
          "action": "git.diff_check",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-24T12:40:07Z",
          "output": {
            "passed": true
          },
          "output_hash": "11c11db30f4b3f6c758722ba3e27eea08145b7d212f6a157451e364b48475280",
          "completed_at": "2026-07-24T12:40:07Z"
        },
        {
          "id": "state",
          "action": "state.consistency",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-24T12:40:07Z",
          "output": {
            "status": "ok",
            "repo_root": "D:\\Projects\\prd-plugin",
            "summary": {
              "errors": 0,
              "warnings": 0,
              "infos": 1
            },
            "findings": [
              {
                "id": "CONS-INFO-001",
                "severity": "info",
                "path": "docs/evidence/EV-200.md",
                "summary": "File references 2 canonical IDs across 2 prefix(es); treated as a positive signal of extra work.",
                "referenced_prefixes": [
                  "CHG",
                  "TRK"
                ],
                "referenced_id_count": 2,
                "required_action": "No action required; this is an informational signal."
              }
            ]
          },
          "output_hash": "9963110856ca8182da0dfdbb22f6960618b55dbc121be0dce0066a7c7a389b10",
          "completed_at": "2026-07-24T12:40:08Z"
        },
        {
          "id": "gate",
          "action": "state.gate",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-24T12:40:08Z",
          "output": {
            "status": "attention",
            "repo_root": "D:\\Projects\\prd-plugin",
            "summary": {
              "errors": 0,
              "warnings": 0
            },
            "findings": [
              {
                "check": "state_consistency",
                "severity": "info",
                "summary": "File references 2 canonical IDs across 2 prefix(es); treated as a positive signal of extra work.",
                "required_action": "No action required; this is an informational signal."
              }
            ]
          },
          "output_hash": "6a0ed3d65779be265214a0e8395ab03978b9f7b91da9ffb59b257b73f82d087d",
          "completed_at": "2026-07-24T12:40:09Z"
        }
      ],
      "completed_at": "2026-07-24T12:40:09Z"
    },
    {
      "id": "WFR-401",
      "schema_version": "1.0",
      "workflow_id": "engineering.code-review",
      "workflow_version": 1,
      "definition_hash": "ad3df68a0ff3c3ede35fe5266dcfbffbe7b1ba3e8ada5fc4b9012db9f451212f",
      "plan_hash": "1a103f5a3f56ef0bb0f9c12ef6fa0f8c8cd17594ff8dad35c5e1226c0e6b4d25",
      "input_hash": "f117f2f91157031082c065249e59cd3d4c304ea15505d087a9c781c7b1a3765c",
      "inputs": {
        "base_ref": "origin/main",
        "source_refs": [
          ".prd_plugin/hooks/prd_reason_guard.py",
          ".prd_plugin/hooks/prd_hook_dispatch.py",
          ".opencode/plugins/prd-hooks.js",
          "scripts/prd_config.py",
          "scripts/prd_status.py",
          "scripts/prd_ui_export.py",
          "tests/test_reason_guard.py",
          "docs/REASONING-GUARD.md"
        ]
      },
      "idempotency_key": "req-171-code-review-v1",
      "status": "cancelled",
      "attempt": 1,
      "created_at": "2026-07-24T12:40:21Z",
      "updated_at": "2026-07-24T12:45:20Z",
      "receipts": [
        {
          "step_id": "diff",
          "action": "git.diff_check",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "11c11db30f4b3f6c758722ba3e27eea08145b7d212f6a157451e364b48475280",
          "completed_at": "2026-07-24T12:40:22Z"
        },
        {
          "step_id": "verification",
          "action": "verification.plan",
          "input_hash": "896ba721326661835264dfc8b368f18e4c2f504219052efc7dded35d5e5da01f",
          "output_hash": "b021d3e1e7aae773b6e131cbaeec1470d43be59b59e42241a40884c35a9c0444",
          "completed_at": "2026-07-24T12:40:22Z"
        },
        {
          "step_id": "context",
          "action": "substrate.enrich",
          "input_hash": "048349dc3ee40eaa0b70b0c01994ce39deebb8873e355fa21e01b315137d7db8",
          "output_hash": "d656a660ee2c4ccee07b364b6176e415330bb541ef2a0262344bd35b4383cf04",
          "completed_at": "2026-07-24T12:40:22Z"
        }
      ],
      "steps": [
        {
          "id": "diff",
          "action": "git.diff_check",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-24T12:40:22Z",
          "output": {
            "passed": true
          },
          "output_hash": "11c11db30f4b3f6c758722ba3e27eea08145b7d212f6a157451e364b48475280",
          "completed_at": "2026-07-24T12:40:22Z"
        },
        {
          "id": "verification",
          "action": "verification.plan",
          "status": "completed",
          "resolved_input_hash": "896ba721326661835264dfc8b368f18e4c2f504219052efc7dded35d5e5da01f",
          "started_at": "2026-07-24T12:40:22Z",
          "output": {
            "schema_version": "1.0",
            "contract_version": 1,
            "executor": "ai-collab",
            "changed_files": [
              ".claude-plugin/marketplace.json",
              ".claude-plugin/plugin.json",
              ".claude/settings.json",
              ".codex-plugin/plugin.json",
              ".codex/hooks.json",
              ".opencode/plugin.json",
              ".opencode/plugins/prd-hooks.js",
              ".prd_plugin/config.json",
              ".prd_plugin/drift/events.jsonl",
              ".prd_plugin/hooks/prd_hook_dispatch.py",
              ".prd_plugin/hooks/prd_reason_guard.py",
              ".prd_plugin/ids/registry.json",
              ".prd_plugin/state/health.json",
              ".prd_plugin/state/project.json",
              ".prd_plugin/state/releases.json",
              ".prd_plugin/state/requests.json",
              ".prd_plugin/state/tracking.json",
              ".prd_plugin/state/workflow-runs.json",
              "AGENTS.md",
              "CLAUDE.md",
              "docs/REASONING-GUARD.md",
              "hooks/hooks.json",
              "index.js",
              "mcp/server.cjs",
              "package.json",
              "raw/hooks/2026-07-24-reasoning-guard.md",
              "README.md",
              "scripts/prd_config.py",
              "scripts/prd_install.py",
              "scripts/prd_status.py",
              "scripts/prd_ui_export.py",
              "skills-manifest.json",
              "templates/config.json",
              "templates/project.json",
              "templates/releases.json",
              "templates/repo-skeleton/.claude-plugin/plugin.json",
              "templates/repo-skeleton/.claude/settings.json",
              "templates/repo-skeleton/.codex-plugin/plugin.json",
              "templates/repo-skeleton/.codex/hooks.json",
              "templates/repo-skeleton/.opencode/plugin.json",
              "templates/repo-skeleton/.opencode/plugins/prd-hooks.js",
              "templates/repo-skeleton/.prd_plugin/config.json",
              "templates/repo-skeleton/.prd_plugin/hooks/prd_hook_dispatch.py",
              "templates/repo-skeleton/.prd_plugin/hooks/prd_reason_guard.py",
              "templates/repo-skeleton/.prd_plugin/state/project.json",
              "templates/repo-skeleton/.prd_plugin/templates/config.json",
              "templates/repo-skeleton/.prd_plugin/templates/project.json",
              "templates/repo-skeleton/AGENTS.md",
              "templates/repo-skeleton/CLAUDE.md",
              "templates/repo-skeleton/hooks/hooks.json",
              "tests/test_config_toggles.py",
              "tests/test_cross_host_hook_parity.py",
              "tests/test_hook_dispatcher.py",
              "tests/test_prd_install.py",
              "tests/test_prd_ui_export.py",
              "tests/test_reason_guard.py",
              "tests/test_tracking_commands.py",
              "tests/test_utcp_first_catalog.py",
              "wiki/hooks/claude-code-hooks.md",
              "wiki/hooks/reasoning-guard.md",
              "wiki/index.md",
              "wiki/log.md"
            ],
            "change_fingerprint": "2421b20dd28543ea799e2c6ae11a57daafb4758c2486954b83b5902ccdfb7973",
            "policy": {
              "enabled": true,
              "executor": "ai-collab",
              "neighbor_limit": 12,
              "max_changed_files": 25,
              "fallback": "full",
              "full_suite_triggers": [
                "release",
                "core_change",
                "impact_unavailable",
                "impact_degraded",
                "unmapped_change"
              ],
              "core_paths": [
                "package.json",
                "package-lock.json",
                "pyproject.toml",
                "Cargo.toml",
                "go.mod",
                ".github/workflows/**"
              ],
              "test_patterns": [
                "tests/**",
                "test/**",
                "spec/**",
                "**/*.test.*",
                "**/*.spec.*",
                "test_*.py",
                "*_test.py",
                "*_test.go",
                "**/test_*.py",
                "**/*_test.py",
                "**/*_test.go"
              ],
              "max_selected_tests": 200,
              "execution_timeout_seconds": 600,
              "focused_commands": [],
              "full_commands": [],
              "allowed_executables": [
                "python",
                "python3",
                "py",
                "pytest",
                "npm",
                "npx",
                "node",
                "go",
                "cargo",
                "dotnet",
                "mvn",
                "gradle",
                "gradlew",
                "make"
              ]
            },
            "selection_rules": {
              "precedence": [
                "exact_changed",
                "explicit_test_ownership",
                "structural_dependencies",
                "predictive_impact"
              ],
              "require_all_changed_files_mapped": true,
              "widen_before_full": true,
              "predictive_signal_is_sufficient_alone": false
            },
            "fallback": {
              "strategy": "full",
              "conditions": [
                "release",
                "core_change",
                "impact_unavailable",
                "impact_degraded",
                "unmapped_change"
              ]
            },
            "strategy": "full",
            "reason": "core_change",
            "runtime_requests": {},
            "plan_hash": "80094f62c32e5d21e633445e6e38ccb23209ec5a41b46de7cb02a13d80ac55e8"
          },
          "output_hash": "b021d3e1e7aae773b6e131cbaeec1470d43be59b59e42241a40884c35a9c0444",
          "completed_at": "2026-07-24T12:40:22Z"
        },
        {
          "id": "context",
          "action": "substrate.enrich",
          "status": "completed",
          "resolved_input_hash": "048349dc3ee40eaa0b70b0c01994ce39deebb8873e355fa21e01b315137d7db8",
          "started_at": "2026-07-24T12:40:22Z",
          "output": {
            "status": "disabled",
            "results": [],
            "local_source_refs": [
              ".prd_plugin/hooks/prd_reason_guard.py",
              ".prd_plugin/hooks/prd_hook_dispatch.py",
              ".opencode/plugins/prd-hooks.js",
              "scripts/prd_config.py",
              "scripts/prd_status.py",
              "scripts/prd_ui_export.py",
              "tests/test_reason_guard.py",
              "docs/REASONING-GUARD.md"
            ]
          },
          "output_hash": "d656a660ee2c4ccee07b364b6176e415330bb541ef2a0262344bd35b4383cf04",
          "completed_at": "2026-07-24T12:40:22Z"
        },
        {
          "id": "review",
          "action": "judgment.request",
          "status": "waiting_judgment",
          "resolved_input_hash": "97e823758b9190dd310b43c5f18cc419d53df3c98b070bdbf2545135d07d3646",
          "started_at": "2026-07-24T12:40:23Z",
          "judgment_request": {
            "contract_version": 1,
            "run_id": "WFR-401",
            "step_id": "review",
            "task": "code_review",
            "instructions": "Find material correctness, robustness, security, compatibility, or test gaps; do not restate mechanical facts.",
            "source_refs": [
              ".prd_plugin/hooks/prd_reason_guard.py",
              ".prd_plugin/hooks/prd_hook_dispatch.py",
              ".opencode/plugins/prd-hooks.js",
              "scripts/prd_config.py",
              "scripts/prd_status.py",
              "scripts/prd_ui_export.py",
              "tests/test_reason_guard.py",
              "docs/REASONING-GUARD.md"
            ],
            "source_hashes": {
              ".prd_plugin/hooks/prd_reason_guard.py": "d992fb9356519f07c14e52cd5c3dabaace8930268da814a962bd378d579e7147",
              ".prd_plugin/hooks/prd_hook_dispatch.py": "08ecbbcad626421009f96482e9642b2e6413cc366e615184b558a4f566305236",
              ".opencode/plugins/prd-hooks.js": "cda63031acd4145eb03a378698e0f027cfed749e03bc9c361159f022e6170a4b",
              "scripts/prd_config.py": "0d3a46004514c2f5a9d44c1d24cea5c341cb8952170518e932ba27e3207062a5",
              "scripts/prd_status.py": "4064367860cdccc6cc8535e2484c6de15eb51bd28084ea0bab9372649ab35133",
              "scripts/prd_ui_export.py": "c86ca8c807c2706bb2c673eb0da391edb9086f1d14cb68497210b358fbaf7fc9",
              "tests/test_reason_guard.py": "1c1af4d5be47c29fd42e23adb3a7318181436e20c4009b81bb7ea8e96b28df99",
              "docs/REASONING-GUARD.md": "bd76460680f329db008d2da993fa8962461e2fc4dc290d92a0525f2742419d2d"
            },
            "result_schema": {
              "type": "object",
              "required": [
                "summary",
                "findings",
                "source_refs"
              ],
              "properties": {
                "summary": {
                  "type": "string"
                },
                "findings": {
                  "type": "array",
                  "items": {
                    "type": "object"
                  }
                },
                "source_refs": {
                  "type": "array",
                  "items": {
                    "type": "string"
                  }
                }
              }
            },
            "executor": "ai-collab",
            "profile": "fast-capable",
            "constraints": {
              "no_project_state_writes": true,
              "require_source_refs": true
            },
            "request_hash": "2d97d5b3b4628f6f5402f1faddffc9a6996d18bcc867ae7debbc707688c3d2ca"
          }
        }
      ],
      "pending_judgment": {
        "contract_version": 1,
        "run_id": "WFR-401",
        "step_id": "review",
        "task": "code_review",
        "instructions": "Find material correctness, robustness, security, compatibility, or test gaps; do not restate mechanical facts.",
        "source_refs": [
          ".prd_plugin/hooks/prd_reason_guard.py",
          ".prd_plugin/hooks/prd_hook_dispatch.py",
          ".opencode/plugins/prd-hooks.js",
          "scripts/prd_config.py",
          "scripts/prd_status.py",
          "scripts/prd_ui_export.py",
          "tests/test_reason_guard.py",
          "docs/REASONING-GUARD.md"
        ],
        "source_hashes": {
          ".prd_plugin/hooks/prd_reason_guard.py": "d992fb9356519f07c14e52cd5c3dabaace8930268da814a962bd378d579e7147",
          ".prd_plugin/hooks/prd_hook_dispatch.py": "08ecbbcad626421009f96482e9642b2e6413cc366e615184b558a4f566305236",
          ".opencode/plugins/prd-hooks.js": "cda63031acd4145eb03a378698e0f027cfed749e03bc9c361159f022e6170a4b",
          "scripts/prd_config.py": "0d3a46004514c2f5a9d44c1d24cea5c341cb8952170518e932ba27e3207062a5",
          "scripts/prd_status.py": "4064367860cdccc6cc8535e2484c6de15eb51bd28084ea0bab9372649ab35133",
          "scripts/prd_ui_export.py": "c86ca8c807c2706bb2c673eb0da391edb9086f1d14cb68497210b358fbaf7fc9",
          "tests/test_reason_guard.py": "1c1af4d5be47c29fd42e23adb3a7318181436e20c4009b81bb7ea8e96b28df99",
          "docs/REASONING-GUARD.md": "bd76460680f329db008d2da993fa8962461e2fc4dc290d92a0525f2742419d2d"
        },
        "result_schema": {
          "type": "object",
          "required": [
            "summary",
            "findings",
            "source_refs"
          ],
          "properties": {
            "summary": {
              "type": "string"
            },
            "findings": {
              "type": "array",
              "items": {
                "type": "object"
              }
            },
            "source_refs": {
              "type": "array",
              "items": {
                "type": "string"
              }
            }
          }
        },
        "executor": "ai-collab",
        "profile": "fast-capable",
        "constraints": {
          "no_project_state_writes": true,
          "require_source_refs": true
        },
        "request_hash": "2d97d5b3b4628f6f5402f1faddffc9a6996d18bcc867ae7debbc707688c3d2ca"
      },
      "cancelled_at": "2026-07-24T12:45:20Z",
      "cancel_reason": "Source-bound review found defects; implementation and tests changed, so a new hash-bound review is required."
    },
    {
      "id": "WFR-402",
      "schema_version": "1.0",
      "workflow_id": "engineering.code-review",
      "workflow_version": 1,
      "definition_hash": "ad3df68a0ff3c3ede35fe5266dcfbffbe7b1ba3e8ada5fc4b9012db9f451212f",
      "plan_hash": "1a103f5a3f56ef0bb0f9c12ef6fa0f8c8cd17594ff8dad35c5e1226c0e6b4d25",
      "input_hash": "f117f2f91157031082c065249e59cd3d4c304ea15505d087a9c781c7b1a3765c",
      "inputs": {
        "base_ref": "origin/main",
        "source_refs": [
          ".prd_plugin/hooks/prd_reason_guard.py",
          ".prd_plugin/hooks/prd_hook_dispatch.py",
          ".opencode/plugins/prd-hooks.js",
          "scripts/prd_config.py",
          "scripts/prd_status.py",
          "scripts/prd_ui_export.py",
          "tests/test_reason_guard.py",
          "docs/REASONING-GUARD.md"
        ]
      },
      "idempotency_key": "req-171-code-review-v2",
      "status": "completed",
      "attempt": 1,
      "created_at": "2026-07-24T12:45:21Z",
      "updated_at": "2026-07-24T12:46:09Z",
      "receipts": [
        {
          "step_id": "diff",
          "action": "git.diff_check",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "11c11db30f4b3f6c758722ba3e27eea08145b7d212f6a157451e364b48475280",
          "completed_at": "2026-07-24T12:45:21Z"
        },
        {
          "step_id": "verification",
          "action": "verification.plan",
          "input_hash": "896ba721326661835264dfc8b368f18e4c2f504219052efc7dded35d5e5da01f",
          "output_hash": "b021d3e1e7aae773b6e131cbaeec1470d43be59b59e42241a40884c35a9c0444",
          "completed_at": "2026-07-24T12:45:22Z"
        },
        {
          "step_id": "context",
          "action": "substrate.enrich",
          "input_hash": "048349dc3ee40eaa0b70b0c01994ce39deebb8873e355fa21e01b315137d7db8",
          "output_hash": "d656a660ee2c4ccee07b364b6176e415330bb541ef2a0262344bd35b4383cf04",
          "completed_at": "2026-07-24T12:45:22Z"
        },
        {
          "step_id": "review",
          "action": "judgment.request",
          "input_hash": "97e823758b9190dd310b43c5f18cc419d53df3c98b070bdbf2545135d07d3646",
          "output_hash": "8e5cb1dab6dc77ac3ef4594d78f23eb6ca1a909a92f47233e01e444d844b6e69",
          "request_hash": "96e4bc71d5015d5b971e2c002950223a6ce424945ff78597993d3adb1c106978",
          "completed_at": "2026-07-24T12:46:09Z"
        }
      ],
      "steps": [
        {
          "id": "diff",
          "action": "git.diff_check",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-24T12:45:21Z",
          "output": {
            "passed": true
          },
          "output_hash": "11c11db30f4b3f6c758722ba3e27eea08145b7d212f6a157451e364b48475280",
          "completed_at": "2026-07-24T12:45:21Z"
        },
        {
          "id": "verification",
          "action": "verification.plan",
          "status": "completed",
          "resolved_input_hash": "896ba721326661835264dfc8b368f18e4c2f504219052efc7dded35d5e5da01f",
          "started_at": "2026-07-24T12:45:21Z",
          "output": {
            "schema_version": "1.0",
            "contract_version": 1,
            "executor": "ai-collab",
            "changed_files": [
              ".claude-plugin/marketplace.json",
              ".claude-plugin/plugin.json",
              ".claude/settings.json",
              ".codex-plugin/plugin.json",
              ".codex/hooks.json",
              ".opencode/plugin.json",
              ".opencode/plugins/prd-hooks.js",
              ".prd_plugin/config.json",
              ".prd_plugin/drift/events.jsonl",
              ".prd_plugin/hooks/prd_hook_dispatch.py",
              ".prd_plugin/hooks/prd_reason_guard.py",
              ".prd_plugin/ids/registry.json",
              ".prd_plugin/state/health.json",
              ".prd_plugin/state/project.json",
              ".prd_plugin/state/releases.json",
              ".prd_plugin/state/requests.json",
              ".prd_plugin/state/tracking.json",
              ".prd_plugin/state/workflow-runs.json",
              "AGENTS.md",
              "CLAUDE.md",
              "docs/REASONING-GUARD.md",
              "hooks/hooks.json",
              "index.js",
              "mcp/server.cjs",
              "package.json",
              "raw/hooks/2026-07-24-reasoning-guard.md",
              "README.md",
              "scripts/prd_config.py",
              "scripts/prd_install.py",
              "scripts/prd_status.py",
              "scripts/prd_ui_export.py",
              "skills-manifest.json",
              "templates/config.json",
              "templates/project.json",
              "templates/releases.json",
              "templates/repo-skeleton/.claude-plugin/plugin.json",
              "templates/repo-skeleton/.claude/settings.json",
              "templates/repo-skeleton/.codex-plugin/plugin.json",
              "templates/repo-skeleton/.codex/hooks.json",
              "templates/repo-skeleton/.opencode/plugin.json",
              "templates/repo-skeleton/.opencode/plugins/prd-hooks.js",
              "templates/repo-skeleton/.prd_plugin/config.json",
              "templates/repo-skeleton/.prd_plugin/hooks/prd_hook_dispatch.py",
              "templates/repo-skeleton/.prd_plugin/hooks/prd_reason_guard.py",
              "templates/repo-skeleton/.prd_plugin/state/project.json",
              "templates/repo-skeleton/.prd_plugin/templates/config.json",
              "templates/repo-skeleton/.prd_plugin/templates/project.json",
              "templates/repo-skeleton/AGENTS.md",
              "templates/repo-skeleton/CLAUDE.md",
              "templates/repo-skeleton/hooks/hooks.json",
              "tests/test_config_toggles.py",
              "tests/test_cross_host_hook_parity.py",
              "tests/test_hook_dispatcher.py",
              "tests/test_prd_install.py",
              "tests/test_prd_ui_export.py",
              "tests/test_reason_guard.py",
              "tests/test_tracking_commands.py",
              "tests/test_utcp_first_catalog.py",
              "wiki/hooks/claude-code-hooks.md",
              "wiki/hooks/reasoning-guard.md",
              "wiki/index.md",
              "wiki/log.md"
            ],
            "change_fingerprint": "2421b20dd28543ea799e2c6ae11a57daafb4758c2486954b83b5902ccdfb7973",
            "policy": {
              "enabled": true,
              "executor": "ai-collab",
              "neighbor_limit": 12,
              "max_changed_files": 25,
              "fallback": "full",
              "full_suite_triggers": [
                "release",
                "core_change",
                "impact_unavailable",
                "impact_degraded",
                "unmapped_change"
              ],
              "core_paths": [
                "package.json",
                "package-lock.json",
                "pyproject.toml",
                "Cargo.toml",
                "go.mod",
                ".github/workflows/**"
              ],
              "test_patterns": [
                "tests/**",
                "test/**",
                "spec/**",
                "**/*.test.*",
                "**/*.spec.*",
                "test_*.py",
                "*_test.py",
                "*_test.go",
                "**/test_*.py",
                "**/*_test.py",
                "**/*_test.go"
              ],
              "max_selected_tests": 200,
              "execution_timeout_seconds": 600,
              "focused_commands": [],
              "full_commands": [],
              "allowed_executables": [
                "python",
                "python3",
                "py",
                "pytest",
                "npm",
                "npx",
                "node",
                "go",
                "cargo",
                "dotnet",
                "mvn",
                "gradle",
                "gradlew",
                "make"
              ]
            },
            "selection_rules": {
              "precedence": [
                "exact_changed",
                "explicit_test_ownership",
                "structural_dependencies",
                "predictive_impact"
              ],
              "require_all_changed_files_mapped": true,
              "widen_before_full": true,
              "predictive_signal_is_sufficient_alone": false
            },
            "fallback": {
              "strategy": "full",
              "conditions": [
                "release",
                "core_change",
                "impact_unavailable",
                "impact_degraded",
                "unmapped_change"
              ]
            },
            "strategy": "full",
            "reason": "core_change",
            "runtime_requests": {},
            "plan_hash": "80094f62c32e5d21e633445e6e38ccb23209ec5a41b46de7cb02a13d80ac55e8"
          },
          "output_hash": "b021d3e1e7aae773b6e131cbaeec1470d43be59b59e42241a40884c35a9c0444",
          "completed_at": "2026-07-24T12:45:22Z"
        },
        {
          "id": "context",
          "action": "substrate.enrich",
          "status": "completed",
          "resolved_input_hash": "048349dc3ee40eaa0b70b0c01994ce39deebb8873e355fa21e01b315137d7db8",
          "started_at": "2026-07-24T12:45:22Z",
          "output": {
            "status": "disabled",
            "results": [],
            "local_source_refs": [
              ".prd_plugin/hooks/prd_reason_guard.py",
              ".prd_plugin/hooks/prd_hook_dispatch.py",
              ".opencode/plugins/prd-hooks.js",
              "scripts/prd_config.py",
              "scripts/prd_status.py",
              "scripts/prd_ui_export.py",
              "tests/test_reason_guard.py",
              "docs/REASONING-GUARD.md"
            ]
          },
          "output_hash": "d656a660ee2c4ccee07b364b6176e415330bb541ef2a0262344bd35b4383cf04",
          "completed_at": "2026-07-24T12:45:22Z"
        },
        {
          "id": "review",
          "action": "judgment.request",
          "status": "completed",
          "resolved_input_hash": "97e823758b9190dd310b43c5f18cc419d53df3c98b070bdbf2545135d07d3646",
          "started_at": "2026-07-24T12:45:22Z",
          "judgment_request": {
            "contract_version": 1,
            "run_id": "WFR-402",
            "step_id": "review",
            "task": "code_review",
            "instructions": "Find material correctness, robustness, security, compatibility, or test gaps; do not restate mechanical facts.",
            "source_refs": [
              ".prd_plugin/hooks/prd_reason_guard.py",
              ".prd_plugin/hooks/prd_hook_dispatch.py",
              ".opencode/plugins/prd-hooks.js",
              "scripts/prd_config.py",
              "scripts/prd_status.py",
              "scripts/prd_ui_export.py",
              "tests/test_reason_guard.py",
              "docs/REASONING-GUARD.md"
            ],
            "source_hashes": {
              ".prd_plugin/hooks/prd_reason_guard.py": "db5ba42e6a46f524ab45b0022d42723938db9a5b83fc6ba23e7d80d499cefd9c",
              ".prd_plugin/hooks/prd_hook_dispatch.py": "08ecbbcad626421009f96482e9642b2e6413cc366e615184b558a4f566305236",
              ".opencode/plugins/prd-hooks.js": "f5630f1662d122e96054ecfef1700f972a3ce8d6dbcb32a6720877466d239b03",
              "scripts/prd_config.py": "0d3a46004514c2f5a9d44c1d24cea5c341cb8952170518e932ba27e3207062a5",
              "scripts/prd_status.py": "4064367860cdccc6cc8535e2484c6de15eb51bd28084ea0bab9372649ab35133",
              "scripts/prd_ui_export.py": "c86ca8c807c2706bb2c673eb0da391edb9086f1d14cb68497210b358fbaf7fc9",
              "tests/test_reason_guard.py": "a6d7e4691e0f30ee557b785e55078b704d4f68268a3ce9f3c2c804ede185bb5a",
              "docs/REASONING-GUARD.md": "bd76460680f329db008d2da993fa8962461e2fc4dc290d92a0525f2742419d2d"
            },
            "result_schema": {
              "type": "object",
              "required": [
                "summary",
                "findings",
                "source_refs"
              ],
              "properties": {
                "summary": {
                  "type": "string"
                },
                "findings": {
                  "type": "array",
                  "items": {
                    "type": "object"
                  }
                },
                "source_refs": {
                  "type": "array",
                  "items": {
                    "type": "string"
                  }
                }
              }
            },
            "executor": "ai-collab",
            "profile": "fast-capable",
            "constraints": {
              "no_project_state_writes": true,
              "require_source_refs": true
            },
            "request_hash": "96e4bc71d5015d5b971e2c002950223a6ce424945ff78597993d3adb1c106978"
          },
          "output": {
            "summary": "No remaining material correctness, robustness, security, compatibility, or test gaps were found in the hash-bound source set. The prior review found and the implementation now fixes resolution self-reopening, loose no-ID evidence binding, older-obligation selection, cross-session interference, and cross-session event-ID collisions; focused regression coverage is green.",
            "findings": [],
            "source_refs": [
              ".prd_plugin/hooks/prd_reason_guard.py",
              ".prd_plugin/hooks/prd_hook_dispatch.py",
              ".opencode/plugins/prd-hooks.js",
              "scripts/prd_config.py",
              "scripts/prd_status.py",
              "scripts/prd_ui_export.py",
              "tests/test_reason_guard.py",
              "docs/REASONING-GUARD.md"
            ]
          },
          "output_hash": "8e5cb1dab6dc77ac3ef4594d78f23eb6ca1a909a92f47233e01e444d844b6e69",
          "completed_at": "2026-07-24T12:46:09Z",
          "judgment_result": {
            "request_hash": "96e4bc71d5015d5b971e2c002950223a6ce424945ff78597993d3adb1c106978",
            "executor": "ai-collab",
            "profile": "fast-capable"
          }
        }
      ],
      "completed_at": "2026-07-24T12:46:09Z"
    },
    {
      "id": "WFR-403",
      "schema_version": "1.0",
      "workflow_id": "hub.release",
      "workflow_version": 1,
      "definition_hash": "ab6ae2afcb0128db8d994b6b397e543c7490017bd3d1b15309079edc6be94d9a",
      "plan_hash": "02bcb9cb71ca5641cc12e6270fee67758c0051b183e4204137993cd57b89a7bd",
      "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
      "inputs": {},
      "idempotency_key": "req-171-hub-release-v1",
      "status": "completed",
      "attempt": 1,
      "created_at": "2026-07-24T12:49:19Z",
      "updated_at": "2026-07-24T12:51:40Z",
      "receipts": [
        {
          "step_id": "diff",
          "action": "git.diff_check",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "11c11db30f4b3f6c758722ba3e27eea08145b7d212f6a157451e364b48475280",
          "completed_at": "2026-07-24T12:49:20Z"
        },
        {
          "step_id": "config",
          "action": "config.audit",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "ef2327bf3ea9c100a1a525c09e426de9703016f1b7c177b0df10c0b7cf3f33c9",
          "completed_at": "2026-07-24T12:49:20Z"
        },
        {
          "step_id": "state",
          "action": "state.consistency",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "9963110856ca8182da0dfdbb22f6960618b55dbc121be0dce0066a7c7a389b10",
          "completed_at": "2026-07-24T12:49:21Z"
        },
        {
          "step_id": "workflow_audit",
          "action": "process.fixed",
          "input_hash": "edf19b269a54d72753f1abc2b8ffcb810c2b7bc377cee7e1698c939f17e0be94",
          "output_hash": "231b43ed70e09c4e7cbcda1094b00e0274dd4a22ff8324da2eb907f705c1316a",
          "completed_at": "2026-07-24T12:49:22Z"
        },
        {
          "step_id": "substrate_audit",
          "action": "process.fixed",
          "input_hash": "4998f71d2d3f6ac7dd50e10d37f60ae32d54898949950e484da9de113e18a979",
          "output_hash": "4176fd7e9d2d33bd61e5fd6bb8d392a63eaa5b2cb65b750eeb348b9dd55fe220",
          "completed_at": "2026-07-24T12:49:22Z"
        },
        {
          "step_id": "suite",
          "action": "process.fixed",
          "input_hash": "954e575e48145853f5681eda189186c95a053267158fae669114320f2e53794a",
          "output_hash": "6a71bfce6151aaced74c513f7872c3bec91bc411f6d97f23ab16e4cab1aedb2a",
          "completed_at": "2026-07-24T12:51:35Z"
        },
        {
          "step_id": "release",
          "action": "process.fixed",
          "input_hash": "1e5b0c18d93eb4c2248f9a00adbd438e52f3ef02137477fb8376c69cfe86fc9b",
          "output_hash": "572b5409034a6cf4a9e07e6019970c207157ae549838c5ff67c4ff8d790eb5a9",
          "completed_at": "2026-07-24T12:51:36Z"
        },
        {
          "step_id": "gaps",
          "action": "process.fixed",
          "input_hash": "577241909238eeb55683f89d2d2216648dad2e3127397993e22493829a1307a4",
          "output_hash": "a27151aa46f7f726af5dce611fe75f5db8d923f7a620151633742b637e97c021",
          "completed_at": "2026-07-24T12:51:36Z"
        },
        {
          "step_id": "package",
          "action": "process.fixed",
          "input_hash": "06cd12e1f3db3d985f9150520afa60f288297ff0ca01a8e813e9bb6291aa8836",
          "output_hash": "a9bc9cb7f44e0492e97829d5c93e31d5cef9ff575bdac83f8fe280d95175c2b3",
          "completed_at": "2026-07-24T12:51:39Z"
        },
        {
          "step_id": "gate",
          "action": "state.gate",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "6a0ed3d65779be265214a0e8395ab03978b9f7b91da9ffb59b257b73f82d087d",
          "completed_at": "2026-07-24T12:51:40Z"
        }
      ],
      "steps": [
        {
          "id": "diff",
          "action": "git.diff_check",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-24T12:49:20Z",
          "output": {
            "passed": true
          },
          "output_hash": "11c11db30f4b3f6c758722ba3e27eea08145b7d212f6a157451e364b48475280",
          "completed_at": "2026-07-24T12:49:20Z"
        },
        {
          "id": "config",
          "action": "config.audit",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-24T12:49:20Z",
          "output": {
            "status": "ok",
            "summary": {
              "settings": 214,
              "mutable": 204,
              "read_only_or_managed": 10,
              "unclassified": 0,
              "unknown": 0,
              "invalid": 0,
              "missing_using_defaults": 0
            },
            "unclassified_keys": [],
            "unknown_keys": [],
            "invalid_values": [],
            "missing_using_defaults": []
          },
          "output_hash": "ef2327bf3ea9c100a1a525c09e426de9703016f1b7c177b0df10c0b7cf3f33c9",
          "completed_at": "2026-07-24T12:49:20Z"
        },
        {
          "id": "state",
          "action": "state.consistency",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-24T12:49:20Z",
          "output": {
            "status": "ok",
            "repo_root": "D:\\Projects\\prd-plugin",
            "summary": {
              "errors": 0,
              "warnings": 0,
              "infos": 1
            },
            "findings": [
              {
                "id": "CONS-INFO-001",
                "severity": "info",
                "path": "docs/evidence/EV-200.md",
                "summary": "File references 2 canonical IDs across 2 prefix(es); treated as a positive signal of extra work.",
                "referenced_prefixes": [
                  "CHG",
                  "TRK"
                ],
                "referenced_id_count": 2,
                "required_action": "No action required; this is an informational signal."
              }
            ]
          },
          "output_hash": "9963110856ca8182da0dfdbb22f6960618b55dbc121be0dce0066a7c7a389b10",
          "completed_at": "2026-07-24T12:49:21Z"
        },
        {
          "id": "workflow_audit",
          "action": "process.fixed",
          "status": "completed",
          "resolved_input_hash": "edf19b269a54d72753f1abc2b8ffcb810c2b7bc377cee7e1698c939f17e0be94",
          "started_at": "2026-07-24T12:49:21Z",
          "output": {
            "operation": "workflow_chml_audit",
            "command": [
              "python",
              "scripts/workflow_chml_audit.py",
              "--repo-root",
              ".",
              "--format",
              "json"
            ],
            "exit_code": 0,
            "stdout": "{\n  \"status\": \"ok\",\n  \"repo_root\": \"D:\\\\Projects\\\\prd-plugin\",\n  \"summary\": {\n    \"critical\": 0,\n    \"high\": 0,\n    \"medium\": 0,\n    \"low\": 0\n  },\n  \"findings\": []\n}\n",
            "stderr": ""
          },
          "output_hash": "231b43ed70e09c4e7cbcda1094b00e0274dd4a22ff8324da2eb907f705c1316a",
          "completed_at": "2026-07-24T12:49:22Z"
        },
        {
          "id": "substrate_audit",
          "action": "process.fixed",
          "status": "completed",
          "resolved_input_hash": "4998f71d2d3f6ac7dd50e10d37f60ae32d54898949950e484da9de113e18a979",
          "started_at": "2026-07-24T12:49:22Z",
          "output": {
            "operation": "substrate_capability_audit",
            "command": [
              "python",
              "scripts/prd_substrate_catalog.py",
              "--repo-root",
              ".",
              "audit"
            ],
            "exit_code": 0,
            "stdout": "{\n  \"status\": \"ok\",\n  \"schema_version\": \"1.0\",\n  \"capability_count\": 26,\n  \"runtime_tool_count\": 103,\n  \"intent_count\": 31,\n  \"summary\": {\n    \"critical\": 0,\n    \"high\": 0,\n    \"medium\": 0,\n    \"low\": 0\n  },\n  \"findings\": []\n}\n",
            "stderr": ""
          },
          "output_hash": "4176fd7e9d2d33bd61e5fd6bb8d392a63eaa5b2cb65b750eeb348b9dd55fe220",
          "completed_at": "2026-07-24T12:49:22Z"
        },
        {
          "id": "suite",
          "action": "process.fixed",
          "status": "completed",
          "resolved_input_hash": "954e575e48145853f5681eda189186c95a053267158fae669114320f2e53794a",
          "started_at": "2026-07-24T12:49:22Z",
          "output": {
            "operation": "local_workflow_check",
            "command": [
              "python",
              "scripts/local_workflow_check.py"
            ],
            "exit_code": 0,
            "stdout": "Structured file validation passed.\n$ python -m unittest discover -s tests -v\n{\n  \"status\": \"fail\",\n  \"repo_root\": \"C:\\\\Users\\\\marku\\\\AppData\\\\Local\\\\Temp\\\\tmp_of48ynu\",\n  \"summary\": {\n    \"errors\": 1,\n    \"warnings\": 0\n  },\n  \"findings\": [\n    {\n      \"check\": \"duplicate_id\",\n      \"severity\": \"error\",\n      \"summary\": \"Duplicate id REQ-002 in .prd_plugin/state/requests.json.\",\n      \"required_action\": \"Renumber one record so REQ-002 is unique. Allocate IDs with the MCP tool prd_next_id (or the record tools like prd_open_goal) instead of hand-computing them.\"\n    }\n  ]\n}\nautonomy_level set to guided\nautonomy_level set to autonomous\nDESTRUCTIVE RESET REQUESTED: --force --yes will erase protected PRD Plugin project data.\nThe following existing state/configuration files would be replaced with skeleton defaults:\n  - .prd_plugin/state/tracking.json\nThis may erase IDs, tracking, requests, decisions, health findings, configuration, and session memory.\nFor a normal safe update, remove --yes and run: npx prd-install . --force\nPRD Plugin safe update: preserving existing state/config and refreshing plugin files only. Never add --yes to a routine update; it requests a destructive reset.\nPRD Plugin safe update: preserving existing state/config and refreshing plugin files only. Never add --yes to a routine update; it requests a destructive reset.\nPRD Plugin safe update: preserving existing state/config and refreshing plugin files only. Never add --yes to a routine update; it requests a destructive reset.\nPRD Plugin safe update: preserving existing state/config and refreshing plugin files only. Never add --yes to a routine update; it requests a destructive reset.\nPRD Plugin safe update: preserving existing state/config and refreshing plugin files only. Never add --yes to a routine update; it requests a destructive reset.\nPRD Plugin safe update: preserving existing state/config and refreshing plugin files only. Never add --yes to a routine update; it requests a destructive reset.\nPRD Plugin safe update: preserving existing state/config and refreshing plugin files only. Never add --yes to a routine update; it requests a destructive reset.\nPRD Plugin safe update: preserving existing state/config and refreshing plugin files only. Never add --yes to a routine update; it requests a destructive reset.\nPRD Plugin safe update: preserving existing state/config and refreshing plugin files only. Never add --yes to a routine update; it requests a destructive reset.\nPRD Plugin safe update: preserving existing state/config and refreshing plugin files only. Never add --yes to a routine update; it requests a destructive reset.\nPRD Plugin safe update: preserving existing state/config and refreshing plugin files only. Never add --yes to a routine update; it requests a destructive reset.\nPRD Plugin safe update: preserving existing state/config and refreshing plugin files only. Never add --yes to a routine update; it requests a destructive reset.\nPRD Plugin safe update: preserving existing state/config and refreshing plugin files only. Never add --yes to a routine update; it requests a destructive reset.\nPRD Plugin safe update: preserving existing state/config and refreshing plugin files only. Never add --yes to a routine update; it requests a destructive reset.\nPRD Plugin safe update: preserving existing state/config and refreshing plugin files only. Never add --yes to a routine update; it requests a destructive reset.\nPRD Plugin safe update: preserving existing state/config and refreshing plugin files only. Never add --yes to a routine update; it requests a destructive reset.\nPRD Plugin safe update: preserving existing state/config and refreshing plugin files only. Never add --yes to a routine update; it requests a destructive reset.\n{\n  \"published\": false,\n  \"package\": \"prd-plugin\",\n  \"version\": \"9.9.9\",\n  \"version_seen\": null,\n  \"latest_seen\": null,\n  \"attempts_used\": 1\n}\n{\n  \"published\": true,\n  \"package\": \"prd-plugin\",\n  \"version\": \"1.2.3\",\n  \"version_seen\": \"1.2.3\",\n  \"latest_seen\": \"1.2.3\",\n  \"attempts_used\": 1\n}\n{\"decision\": \"block\", \"reason\": \"Autonomous run-until-done: goal TRK-157 is still active. Continue with the next incomplete step toward it \\u2014 do not stop to ask 'shall I proceed?'. If you genuinely need the user (consent floor: push/merge/publish/secrets, or a real blocker), create the file .prd_plugin/local/autonomy-pause with a one-line reason and then stop; the guard will let you. Otherwise keep going.\"}\n$ python scripts/feature_skill_audit.py --repo-root . --format json\n{\n  \"status\": \"ok\",\n  \"repo_root\": \"D:\\\\Projects\\\\prd-plugin\",\n  \"contract\": \"templates/feature-skill-map.json\",\n  \"feature_count\": 28,\n  \"summary\": {\n    \"critical\": 0,\n    \"high\": 0,\n    \"medium\": 0,\n    \"low\": 0\n  },\n  \"findings\": []\n}\n$ python scripts/gap_audit.py --target-version 0.16.52\n# PRD Plugin Gap Audit\n\nTarget version: `0.16.52`\n\n## Findings\n\n- None\n$ python scripts/version_advice.py --installed-repo . --format json --output request-report/version-advice.json\n$ python scripts/release_check.py --output request-report/release-hygiene.md\n$ python scripts/prd_doctor.py --repo-root . --format json --output request-report/prd-doctor.json\n$ python scripts/state_consistency_check.py --repo-root . --format json --output request-report/state-consistency.json\n$ python scripts/prd_install_skills.py --repo-root . --dry-run\n{\n  \"status\": \"dry_run\",\n  \"target_agent\": \"codex\",\n  \"targets\": [\n    {\n      \"agent\": \"codex\",\n      \"target\": \".agents\\\\skills\",\n      \"would_install\": [\n        \"project-architecture\",\n        \"project-blocker-resolution\",\n        \"project-brainstorm\",\n        \"project-change-request\",\n        \"project-code-review\",\n        \"project-decision-ledger\",\n        \"project-decision-policy\",\n        \"project-deterministic-workflows\",\n        \"project-document-branch\",\n        \"project-evidence\",\n        \"project-evidence-ledger\",\n        \"project-git-workflow\",\n        \"project-health\",\n        \"project-implementation-plan\",\n        \"project-llm-wiki\",\n        \"project-local-integration\",\n        \"project-memory\",\n        \"project-planning-lifecycle\",\n        \"project-prd\",\n        \"project-prd-plugin-setup\",\n        \"project-request-intake\",\n        \"project-session-close\",\n        \"project-systematic-debugging\",\n        \"project-test-driven-implementation\",\n        \"project-traceability-review\",\n        \"project-traceability-sync\",\n        \"project-verification-before-completion\",\n        \"source-command-prd-autonomy\",\n        \"source-command-prd-close\",\n        \"source-command-prd-config\",\n        \"source-command-prd-drift\",\n        \"source-command-prd-graph\",\n        \"source-command-prd-hooks\",\n        \"source-command-prd-new\",\n        \"source-command-prd-off\",\n        \"source-command-prd-on\",\n        \"source-command-prd-reflections\",\n        \"source-command-prd-report\",\n        \"source-command-prd-status\",\n        \"source-command-prd-track\",\n        \"source-command-prd-version\",\n        \"source-command-prd-workflow\"\n      ],\n      \"would_remove\": [\n        \"project-fold-it-in\",\n        \"project-self-audit\"\n      ]\n    }\n  ],\n  \"installed_count\": 0,\n  \"target\": \".agents\\\\skills\",\n  \"installed\": [],\n  \"removed\": [],\n  \"would_install\": [\n    \"project-architecture\",\n    \"project-blocker-resolution\",\n    \"project-brainstorm\",\n    \"project-change-request\",\n    \"project-code-review\",\n    \"project-decision-ledger\",\n    \"project-decision-policy\",\n    \"project-deterministic-workflows\",\n    \"project-document-branch\",\n    \"project-evidence\",\n    \"project-evidence-ledger\",\n    \"project-git-workflow\",\n    \"project-health\",\n    \"project-implementation-plan\",\n    \"project-llm-wiki\",\n    \"project-local-integration\",\n    \"project-memory\",\n    \"project-planning-lifecycle\",\n    \"project-prd\",\n    \"project-prd-plugin-setup\",\n    \"project-request-intake\",\n    \"project-session-close\",\n    \"project-systematic-debugging\",\n    \"project-test-driven-implementation\",\n    \"project-traceability-review\",\n    \"project-traceability-sync\",\n    \"project-verification-before-completion\",\n    \"source-command-prd-autonomy\",\n    \"source-command-prd-close\",\n    \"source-command-prd-config\",\n    \"source-command-prd-drift\",\n    \"source-command-prd-graph\",\n    \"source-command-prd-hooks\",\n    \"source-command-prd-new\",\n    \"source-command-prd-off\",\n    \"source-command-prd-on\",\n    \"source-command-prd-reflections\",\n    \"source-command-prd-report\",\n    \"source-command-prd-status\",\n    \"source-command-prd-track\",\n    \"source-command-prd-version\",\n    \"source-command-prd-workflow\"\n  ],\n  \"would_remove\": [\n    \"project-fold-it-in\",\n    \"project-self-audit\"\n  ]\n}\n$ python scripts/request_report.py --config .prd_plugin/config.json --format markdown --output request-report/request-report.md\n$ python scripts/request_report.py --config .prd_plugin/config.json --format json --output request-report/request-report.json\n$ python scripts/message_check.py --config .prd_plugin/config.json --format json --output request-report/message-check.json\nLocal workflow check completed.\n",
            "stderr": "ng (test_unified_config.MutationTests.test_audit_reports_scalar_configuration_section_without_crashing) ... ok\ntest_audit_reports_unknown_and_invalid_values (test_unified_config.MutationTests.test_audit_reports_unknown_and_invalid_values) ... ok\ntest_enable_disable_only_accept_mutable_booleans (test_unified_config.MutationTests.test_enable_disable_only_accept_mutable_booleans) ... ok\ntest_failed_atomic_replace_leaves_original_config_untouched (test_unified_config.MutationTests.test_failed_atomic_replace_leaves_original_config_untouched) ... ok\ntest_malformed_config_is_never_replaced_by_a_mutation (test_unified_config.MutationTests.test_malformed_config_is_never_replaced_by_a_mutation) ... ok\ntest_manual_set_marks_profile_custom_and_preserves_style (test_unified_config.MutationTests.test_manual_set_marks_profile_custom_and_preserves_style) ... ok\ntest_scalar_parent_is_not_clobbered_by_nested_set (test_unified_config.MutationTests.test_scalar_parent_is_not_clobbered_by_nested_set) ... ok\ntest_builtin_profile_dry_run_then_atomic_apply (test_unified_config.ProfileTests.test_builtin_profile_dry_run_then_atomic_apply) ... ok\ntest_invalid_custom_profile_never_partially_writes (test_unified_config.ProfileTests.test_invalid_custom_profile_never_partially_writes) ... ok\ntest_save_show_diff_and_delete_custom_profile (test_unified_config.ProfileTests.test_save_show_diff_and_delete_custom_profile) ... ok\ntest_does_not_flag_canonical_prd_state_paths (test_unsubmitted_plugin_request.UnsubmittedPluginRequestTests.test_does_not_flag_canonical_prd_state_paths) ... ok\ntest_does_not_flag_ordinary_project_requests (test_unsubmitted_plugin_request.UnsubmittedPluginRequestTests.test_does_not_flag_ordinary_project_requests) ... ok\ntest_does_not_flag_rejected_requests (test_unsubmitted_plugin_request.UnsubmittedPluginRequestTests.test_does_not_flag_rejected_requests) ... ok\ntest_does_not_flag_when_already_marked_upstream (test_unsubmitted_plugin_request.UnsubmittedPluginRequestTests.test_does_not_flag_when_already_marked_upstream) ... ok\ntest_flags_a_local_request_about_a_plugin_script (test_unsubmitted_plugin_request.UnsubmittedPluginRequestTests.test_flags_a_local_request_about_a_plugin_script) ... ok\ntest_flags_a_request_that_names_itself_upstream (test_unsubmitted_plugin_request.UnsubmittedPluginRequestTests.test_flags_a_request_that_names_itself_upstream) ... ok\ntest_never_fires_in_the_hub_repo_itself (test_unsubmitted_plugin_request.UnsubmittedPluginRequestTests.test_never_fires_in_the_hub_repo_itself) ... ok\ntest_wired_into_run_checks (test_unsubmitted_plugin_request.UnsubmittedPluginRequestTests.test_wired_into_run_checks) ... ok\ntest_output_writes_lf_and_a_trailing_newline (test_utcp_first_authority.GeneratedArtifactsAreByteStableTests.test_output_writes_lf_and_a_trailing_newline) ... ok\ntest_the_committed_manual_matches_a_fresh_generation (test_utcp_first_authority.GeneratedArtifactsAreByteStableTests.test_the_committed_manual_matches_a_fresh_generation) ... ok\ntest_every_spec_tool_maps_to_a_catalog_capability (test_utcp_first_authority.ParityDirectionTests.test_every_spec_tool_maps_to_a_catalog_capability) ... ok\ntest_server_metadata_matches_the_spec (test_utcp_first_authority.ParityDirectionTests.test_server_metadata_matches_the_spec) ... ok\ntest_python_entry_points_share_the_same_lock (test_utcp_first_authority.SafetyUnchangedTests.test_python_entry_points_share_the_same_lock)\nThe migration target already exists and is proven: prd_reflections ... ok\ntest_the_state_lock_is_still_held_for_mutations (test_utcp_first_authority.SafetyUnchangedTests.test_the_state_lock_is_still_held_for_mutations) ... ok\ntest_no_shipped_tool_metadata_carries_mojibake (test_utcp_first_authority.ShippedTextIsCleanTests.test_no_shipped_tool_metadata_carries_mojibake) ... ok\ntest_shipped_tool_metadata_is_valid_utf8 (test_utcp_first_authority.ShippedTextIsCleanTests.test_shipped_tool_metadata_is_valid_utf8)\nA file written through a cp1252 layer either fails to decode or ... ok\ntest_each_tool_declares_name_description_and_schema (test_utcp_first_authority.SpecIsTheSourceTests.test_each_tool_declares_name_description_and_schema) ... ok\ntest_the_manual_is_generated_from_the_spec_not_the_server (test_utcp_first_authority.SpecIsTheSourceTests.test_the_manual_is_generated_from_the_spec_not_the_server) ... ok\ntest_the_server_no_longer_authors_descriptions (test_utcp_first_authority.SpecIsTheSourceTests.test_the_server_no_longer_authors_descriptions)\nserver.cjs must READ definitions, not declare them. While a tool ... ok\ntest_the_spec_exists_and_declares_every_tool (test_utcp_first_authority.SpecIsTheSourceTests.test_the_spec_exists_and_declares_every_tool) ... ok\ntest_official_bridge_round_trips_cli_and_mcp_templates (test_utcp_first_catalog.BridgeParityTests.test_official_bridge_round_trips_cli_and_mcp_templates) ... ok\ntest_bridged_entries_reuse_server_metadata_verbatim (test_utcp_first_catalog.GeneratedProjectionTests.test_bridged_entries_reuse_server_metadata_verbatim)\nEach bridged manual entry's description and inputs equal the server's ... ok\ntest_checked_in_metadata_matches_live_server (test_utcp_first_catalog.GeneratedProjectionTests.test_checked_in_metadata_matches_live_server)\nThe pinned metadata projection cannot drift behind the live server. ... ok\ntest_mutations_keep_the_validated_handler_path (test_utcp_first_catalog.GuardedMutationTests.test_mutations_keep_the_validated_handler_path)\nEvery manual tool in a non-read capability calls the plugin state ... ok\ntest_read_only_cli_tools_stay_cli (test_utcp_first_catalog.GuardedMutationTests.test_read_only_cli_tools_stay_cli)\nThe 12 cli-native observe/recall tools keep their cli templates. ... ok\ntest_checked_in_metadata_projection_exists (test_utcp_first_catalog.ManualCompletenessTests.test_checked_in_metadata_projection_exists)\nThe server's tool metadata is a checked-in generated artifact so the ... ok\ntest_manual_covers_every_capability_on_both_transports (test_utcp_first_catalog.ManualCompletenessTests.test_manual_covers_every_capability_on_both_transports)\nEvery UTCP and MCP registration in the tool-surface catalog appears ... ok\ntest_appends_version_change_request (test_version_advice.VersionAdviceTests.test_appends_version_change_request) ... ok\ntest_builds_safe_update_advice_for_low_risk_releases (test_version_advice.VersionAdviceTests.test_builds_safe_update_advice_for_low_risk_releases) ... ok\ntest_cli_uses_hub_releases_when_downstream_repo_has_no_releases_file (test_version_advice.VersionAdviceTests.test_cli_uses_hub_releases_when_downstream_repo_has_no_releases_file) ... ok\ntest_detects_installed_version_from_bom_json (test_version_advice.VersionAdviceTests.test_detects_installed_version_from_bom_json) ... ok\ntest_detects_installed_version_from_opencode_plugin_manifest (test_version_advice.VersionAdviceTests.test_detects_installed_version_from_opencode_plugin_manifest) ... ok\ntest_detects_installed_version_from_prd_plugin_config (test_version_advice.VersionAdviceTests.test_detects_installed_version_from_prd_plugin_config) ... ok\ntest_detects_latest_version_from_plugin_manifest (test_version_advice.VersionAdviceTests.test_detects_latest_version_from_plugin_manifest) ... ok\ntest_installed_version_priority_prefers_config_then_codex_then_opencode (test_version_advice.VersionAdviceTests.test_installed_version_priority_prefers_config_then_codex_then_opencode) ... ok\ntest_orders_prerelease_before_final_release (test_version_advice.VersionAdviceTests.test_orders_prerelease_before_final_release) ... ok\ntest_recommends_review_first_for_medium_or_high_risk_release (test_version_advice.VersionAdviceTests.test_recommends_review_first_for_medium_or_high_risk_release) ... ok\ntest_disabled_returns_disabled_and_no_fetch (test_version_check.CheckTests.test_disabled_returns_disabled_and_no_fetch) ... ok\ntest_force_refetches_within_ttl (test_version_check.CheckTests.test_force_refetches_within_ttl) ... ok\ntest_network_failure_is_fail_open (test_version_check.CheckTests.test_network_failure_is_fail_open) ... ok\ntest_no_update_when_current (test_version_check.CheckTests.test_no_update_when_current) ... ok\ntest_status_is_cache_only_no_fetch (test_version_check.CheckTests.test_status_is_cache_only_no_fetch) ... ok\ntest_ttl_cache_avoids_refetch (test_version_check.CheckTests.test_ttl_cache_avoids_refetch) ... ok\ntest_ttl_expiry_refetches (test_version_check.CheckTests.test_ttl_expiry_refetches) ... ok\ntest_update_available_when_npm_is_ahead (test_version_check.CheckTests.test_update_available_when_npm_is_ahead) ... ok\ntest_status_cli_exits_zero (test_version_check.CliTests.test_status_cli_exits_zero) ... ok\ntest_default_ttl_is_responsive_not_a_day (test_version_check.FreshnessTests.test_default_ttl_is_responsive_not_a_day) ... ok\ntest_fetch_latest_accepts_a_timeout (test_version_check.FreshnessTests.test_fetch_latest_accepts_a_timeout) ... ok\ntest_nudge_refreshes_in_session_not_cache_only (test_version_check.FreshnessTests.test_nudge_refreshes_in_session_not_cache_only) ... ok\ntest_registry_default_ttl_matches (test_version_check.FreshnessTests.test_registry_default_ttl_matches) ... ok\ntest_semver_ordering (test_version_check.ParseTests.test_semver_ordering) ... ok\ntest_set_enabled_writes_config (test_version_check.ToggleTests.test_set_enabled_writes_config) ... ok\ntest_config_has_version_check_default_on (test_version_check.WiringTests.test_config_has_version_check_default_on) ... ok\ntest_nudge_surfaces_update_available (test_version_check.WiringTests.test_nudge_surfaces_update_available) ... ok\ntest_prd_version_command_exists (test_version_check.WiringTests.test_prd_version_command_exists) ... ok\ntest_script_registered_downstream (test_version_check.WiringTests.test_script_registered_downstream) ... ok\ntest_plan_cli_emits_json (test_wiki_backfill.CliTests.test_plan_cli_emits_json) ... ok\ntest_status_cli (test_wiki_backfill.CliTests.test_status_cli) ... ok\ntest_marker_written_for_established_repo_gaining_wiki (test_wiki_backfill.InstallerMarkerTests.test_marker_written_for_established_repo_gaining_wiki) ... ok\ntest_no_marker_for_empty_scaffold (test_wiki_backfill.InstallerMarkerTests.test_no_marker_for_empty_scaffold) ... ok\ntest_no_marker_when_wiki_already_exists (test_wiki_backfill.InstallerMarkerTests.test_no_marker_when_wiki_already_exists) ... ok\ntest_no_marker_when_wiki_disabled (test_wiki_backfill.InstallerMarkerTests.test_no_marker_when_wiki_disabled) ... ok\ntest_pending_false_when_absent (test_wiki_backfill.StatusTests.test_pending_false_when_absent) ... ok\ntest_pending_false_when_wiki_already_exists (test_wiki_backfill.StatusTests.test_pending_false_when_wiki_already_exists) ... ok\ntest_pending_true_when_marker_present (test_wiki_backfill.StatusTests.test_pending_true_when_marker_present) ... ok\ntest_plan_excludes_generated_report_artifacts (test_wiki_backfill.SurveyPlanTests.test_plan_excludes_generated_report_artifacts)\nrequest-report/ (incl. its calibration report trees) and docs/evidence/ ... ok\ntest_plan_excludes_plugin_and_vendor_noise (test_wiki_backfill.SurveyPlanTests.test_plan_excludes_plugin_and_vendor_noise) ... ok\ntest_plan_inventories_code_docs_and_state (test_wiki_backfill.SurveyPlanTests.test_plan_inventories_code_docs_and_state) ... ok\ntest_plan_is_read_only (test_wiki_backfill.SurveyPlanTests.test_plan_is_read_only) ... ok\ntest_wiki_drift_in_on_stop_and_default_sets (test_wiki_backfill.WikiDriftMonitorWiringTests.test_wiki_drift_in_on_stop_and_default_sets) ... ok\ntest_current_article_no_drift (test_wiki_backfill.WikiDriftTests.test_current_article_no_drift) ... ok\ntest_drift_cli (test_wiki_backfill.WikiDriftTests.test_drift_cli) ... ok\ntest_far_behind_article_flagged (test_wiki_backfill.WikiDriftTests.test_far_behind_article_flagged) ... ok\ntest_no_wiki_is_ok (test_wiki_backfill.WikiDriftTests.test_no_wiki_is_ok) ... ok\ntest_unlinked_markdown_reference_is_part_of_wiki_drift (test_wiki_backfill.WikiDriftTests.test_unlinked_markdown_reference_is_part_of_wiki_drift) ... ok\ntest_unstamped_article_flagged (test_wiki_backfill.WikiDriftTests.test_unstamped_article_flagged) ... ok\ntest_wiki_drift_uses_configured_wiki_directory (test_wiki_backfill.WikiDriftTests.test_wiki_drift_uses_configured_wiki_directory) ... ok\ntest_ambiguous_reference_is_reported_but_never_guessed (test_wiki_backfill.WikiInlineMarkdownLinkTests.test_ambiguous_reference_is_reported_but_never_guessed) ... ok\ntest_cli_check_fails_and_fix_then_passes (test_wiki_backfill.WikiInlineMarkdownLinkTests.test_cli_check_fails_and_fix_then_passes) ... ok\ntest_existing_inline_links_and_fenced_examples_are_not_findings (test_wiki_backfill.WikiInlineMarkdownLinkTests.test_existing_inline_links_and_fenced_examples_are_not_findings) ... ok\ntest_fix_rewrites_only_unambiguous_references_to_relative_inline_links (test_wiki_backfill.WikiInlineMarkdownLinkTests.test_fix_rewrites_only_unambiguous_references_to_relative_inline_links) ... ok\ntest_reports_resolvable_bare_and_code_wrapped_markdown_references (test_wiki_backfill.WikiInlineMarkdownLinkTests.test_reports_resolvable_bare_and_code_wrapped_markdown_references) ... ok\ntest_nudge_surfaces_pending_backfill (test_wiki_backfill.WiringTests.test_nudge_surfaces_pending_backfill) ... ok\ntest_script_registered_downstream (test_wiki_backfill.WiringTests.test_script_registered_downstream) ... ok\ntest_skill_has_backfill_mode (test_wiki_backfill.WiringTests.test_skill_has_backfill_mode) ... ok\ntest_copy_and_download_controls_are_wired (test_wiki_html_export.WikiHtmlExportTests.test_copy_and_download_controls_are_wired) ... ok\ntest_default_output_lands_in_the_local_runtime_dir (test_wiki_html_export.WikiHtmlExportTests.test_default_output_lands_in_the_local_runtime_dir) ... ok\ntest_every_page_is_embedded_with_exact_markdown (test_wiki_html_export.WikiHtmlExportTests.test_every_page_is_embedded_with_exact_markdown) ... ok\ntest_export_all_generates_viewers_and_super_index (test_wiki_html_export.WikiHtmlExportTests.test_export_all_generates_viewers_and_super_index) ... ok\ntest_export_is_one_self_contained_offline_file (test_wiki_html_export.WikiHtmlExportTests.test_export_is_one_self_contained_offline_file) ... ok\ntest_guest_repo_viewer_is_hosted_by_the_host_repo (test_wiki_html_export.WikiHtmlExportTests.test_guest_repo_viewer_is_hosted_by_the_host_repo)\nA repo without .prd_plugin gets NO new files in its own tree; its ... ok\ntest_hub_repo_exports_all_pages (test_wiki_html_export.WikiHtmlExportTests.test_hub_repo_exports_all_pages) ... ok\ntest_parse_wiki_log_extracts_dated_entries_with_bodies (test_wiki_html_export.WikiHtmlExportTests.test_parse_wiki_log_extracts_dated_entries_with_bodies)\nREQ-112: every workspace log follows '## [date] mode | text'. ... ok\ntest_parse_wiki_log_tolerates_missing_log (test_wiki_html_export.WikiHtmlExportTests.test_parse_wiki_log_tolerates_missing_log) ... ok\ntest_script_content_cannot_break_the_payload (test_wiki_html_export.WikiHtmlExportTests.test_script_content_cannot_break_the_payload) ... ok\ntest_super_index_has_a_combined_changelog (test_wiki_html_export.WikiHtmlExportTests.test_super_index_has_a_combined_changelog) ... ok\ntest_super_index_reports_page_counts (test_wiki_html_export.WikiHtmlExportTests.test_super_index_reports_page_counts) ... ok\ntest_workspace_discovery_uses_the_wiki_convention_marker (test_wiki_html_export.WikiHtmlExportTests.test_workspace_discovery_uses_the_wiki_convention_marker)\nREQ-110 + REQ-111: any immediate child whose wiki follows the ... ok\ntest_a_repo_without_a_wiki_is_not_in_drift (test_wiki_ingest_drift.DetectionTests.test_a_repo_without_a_wiki_is_not_in_drift)\nNo wiki is a legitimate state, not a failure to ingest. ... ok\ntest_fully_ingested_repo_is_clean (test_wiki_ingest_drift.DetectionTests.test_fully_ingested_repo_is_clean) ... ok\ntest_malformed_state_degrades_rather_than_raising (test_wiki_ingest_drift.DetectionTests.test_malformed_state_degrades_rather_than_raising) ... ok\ntest_non_implemented_requests_are_never_expected_in_the_log (test_wiki_ingest_drift.DetectionTests.test_non_implemented_requests_are_never_expected_in_the_log) ... ok\ntest_only_work_since_the_last_ingest_is_actionable (test_wiki_ingest_drift.DetectionTests.test_only_work_since_the_last_ingest_is_actionable)\nRaw counting flags pre-wiki history as drift � ~70 items in the hub, ... ok\ntest_reports_implemented_requests_absent_from_the_log (test_wiki_ingest_drift.DetectionTests.test_reports_implemented_requests_absent_from_the_log) ... ok\ntest_it_runs_against_this_repo_and_returns_a_usable_report (test_wiki_ingest_drift.RealRepoTests.test_it_runs_against_this_repo_and_returns_a_usable_report)\nGrounded against real state, but NOT pinned to a specific gap: a test ... ok\ntest_prd_status_omits_it_when_clean (test_wiki_ingest_drift.SurfaceTests.test_prd_status_omits_it_when_clean) ... ok\ntest_prd_status_reports_the_drift (test_wiki_ingest_drift.SurfaceTests.test_prd_status_reports_the_drift) ... ok\ntest_this_repos_wiki_reads_byte_exact (test_wiki_page_contract.HubRepoSmokeTests.test_this_repos_wiki_reads_byte_exact) ... ok\ntest_list_enumerates_canonical_pages_with_titles (test_wiki_page_contract.WikiPageListTests.test_list_enumerates_canonical_pages_with_titles) ... ok\ntest_boundaries_are_hard (test_wiki_page_contract.WikiPageReadTests.test_boundaries_are_hard) ... ok\ntest_drift_remains_the_default_action (test_wiki_page_contract.WikiPageReadTests.test_drift_remains_the_default_action) ... ok\ntest_read_page_without_stamps_reports_null_provenance (test_wiki_page_contract.WikiPageReadTests.test_read_page_without_stamps_reports_null_provenance) ... ok\ntest_read_requires_a_path (test_wiki_page_contract.WikiPageReadTests.test_read_requires_a_path) ... ok\ntest_read_returns_exact_markdown_with_provenance (test_wiki_page_contract.WikiPageReadTests.test_read_returns_exact_markdown_with_provenance) ... ok\ntest_no_cp1252_unencodable_chars_in_agent_facing_tools (test_windows_console_safe.SourceScanTests.test_no_cp1252_unencodable_chars_in_agent_facing_tools) ... ok\ntest_backfill_pending_status_renders_cp1252_safe (test_windows_console_safe.StatusRenderTests.test_backfill_pending_status_renders_cp1252_safe) ... ok\ntest_repository_workflow_surfaces_are_chml_zero (test_workflow_chml_audit.WorkflowChmlAuditTests.test_repository_workflow_surfaces_are_chml_zero) ... ok\ntest_semantic_skill_finding_is_part_of_workflow_chml (test_workflow_chml_audit.WorkflowChmlAuditTests.test_semantic_skill_finding_is_part_of_workflow_chml) ... ok\ntest_git_workflow_pushes_clean_verified_commits_in_autonomous (test_workflow_consistency.AutonomyConflictResolutionTests.test_git_workflow_pushes_clean_verified_commits_in_autonomous) ... ok\ntest_request_intake_defers_autonomy_and_owns_graduation (test_workflow_consistency.AutonomyConflictResolutionTests.test_request_intake_defers_autonomy_and_owns_graduation) ... ok\ntest_evidence_pair_states_create_vs_review_boundary (test_workflow_consistency.BoundaryClarityTests.test_evidence_pair_states_create_vs_review_boundary) ... ok\ntest_session_close_states_memory_boundary (test_workflow_consistency.BoundaryClarityTests.test_session_close_states_memory_boundary) ... ok\ntest_document_branch_has_promotion_owner (test_workflow_consistency.DeadEndOwnerTests.test_document_branch_has_promotion_owner) ... ok\ntest_health_findings_have_triage_dispositions (test_workflow_consistency.DeadEndOwnerTests.test_health_findings_have_triage_dispositions) ... ok\ntest_memory_owns_schema_version_changes (test_workflow_consistency.DeadEndOwnerTests.test_memory_owns_schema_version_changes) ... ok\ntest_planning_lifecycle_has_stage_readiness_checkpoints (test_workflow_consistency.DeadEndOwnerTests.test_planning_lifecycle_has_stage_readiness_checkpoints) ... ok\ntest_session_close_runs_traceability_sync (test_workflow_consistency.DeadEndOwnerTests.test_session_close_runs_traceability_sync) ... ok\n\n----------------------------------------------------------------------\nRan 1234 tests in 129.348s\n\nOK\n"
          },
          "output_hash": "6a71bfce6151aaced74c513f7872c3bec91bc411f6d97f23ab16e4cab1aedb2a",
          "completed_at": "2026-07-24T12:51:35Z"
        },
        {
          "id": "release",
          "action": "process.fixed",
          "status": "completed",
          "resolved_input_hash": "1e5b0c18d93eb4c2248f9a00adbd438e52f3ef02137477fb8376c69cfe86fc9b",
          "started_at": "2026-07-24T12:51:36Z",
          "output": {
            "operation": "release_check",
            "command": [
              "python",
              "scripts/release_check.py"
            ],
            "exit_code": 0,
            "stdout": "# Release Hygiene Report\n\nBase version: `0.16.51`\nHead version: `0.16.52`\nChanged files checked: 6\n\n## Findings\n\n- None\n",
            "stderr": ""
          },
          "output_hash": "572b5409034a6cf4a9e07e6019970c207157ae549838c5ff67c4ff8d790eb5a9",
          "completed_at": "2026-07-24T12:51:36Z"
        },
        {
          "id": "gaps",
          "action": "process.fixed",
          "status": "completed",
          "resolved_input_hash": "577241909238eeb55683f89d2d2216648dad2e3127397993e22493829a1307a4",
          "started_at": "2026-07-24T12:51:36Z",
          "output": {
            "operation": "gap_audit",
            "command": [
              "python",
              "scripts/gap_audit.py",
              "--target-version",
              "0.16.52",
              "--config",
              ".prd_plugin/config.json",
              "--releases",
              ".prd_plugin/state/releases.json"
            ],
            "exit_code": 0,
            "stdout": "# PRD Plugin Gap Audit\n\nTarget version: `0.16.52`\n\n## Findings\n\n- None\n",
            "stderr": ""
          },
          "output_hash": "a27151aa46f7f726af5dce611fe75f5db8d923f7a620151633742b637e97c021",
          "completed_at": "2026-07-24T12:51:36Z"
        },
        {
          "id": "package",
          "action": "process.fixed",
          "status": "completed",
          "resolved_input_hash": "06cd12e1f3db3d985f9150520afa60f288297ff0ca01a8e813e9bb6291aa8836",
          "started_at": "2026-07-24T12:51:36Z",
          "output": {
            "operation": "package_check",
            "command": [
              "npm",
              "pack",
              "--dry-run"
            ],
            "exit_code": 0,
            "stdout": "prd-plugin-0.16.52.tgz\n",
            "stderr": "te.md\nnpm notice 17.0kB templates/repo-skeleton/.agents/skills/project-llm-wiki/SKILL.md\nnpm notice 7.4kB templates/repo-skeleton/.agents/skills/project-local-integration/SKILL.md\nnpm notice 8.1kB templates/repo-skeleton/.agents/skills/project-memory/SKILL.md\nnpm notice 6.2kB templates/repo-skeleton/.agents/skills/project-planning-lifecycle/SKILL.md\nnpm notice 6.0kB templates/repo-skeleton/.agents/skills/project-prd-plugin-setup/SKILL.md\nnpm notice 3.5kB templates/repo-skeleton/.agents/skills/project-prd/SKILL.md\nnpm notice 27.5kB templates/repo-skeleton/.agents/skills/project-request-intake/SKILL.md\nnpm notice 4.8kB templates/repo-skeleton/.agents/skills/project-session-close/SKILL.md\nnpm notice 10.3kB templates/repo-skeleton/.agents/skills/project-systematic-debugging/SKILL.md\nnpm notice 4.8kB templates/repo-skeleton/.agents/skills/project-test-driven-implementation/SKILL.md\nnpm notice 3.7kB templates/repo-skeleton/.agents/skills/project-traceability-review/SKILL.md\nnpm notice 2.5kB templates/repo-skeleton/.agents/skills/project-traceability-sync/SKILL.md\nnpm notice 6.6kB templates/repo-skeleton/.agents/skills/project-verification-before-completion/SKILL.md\nnpm notice 1.5kB templates/repo-skeleton/.agents/skills/source-command-prd-autonomy/SKILL.md\nnpm notice 1.2kB templates/repo-skeleton/.agents/skills/source-command-prd-close/SKILL.md\nnpm notice 3.3kB templates/repo-skeleton/.agents/skills/source-command-prd-config/SKILL.md\nnpm notice 2.4kB templates/repo-skeleton/.agents/skills/source-command-prd-drift/SKILL.md\nnpm notice 2.1kB templates/repo-skeleton/.agents/skills/source-command-prd-graph/SKILL.md\nnpm notice 2.2kB templates/repo-skeleton/.agents/skills/source-command-prd-hooks/SKILL.md\nnpm notice 1.3kB templates/repo-skeleton/.agents/skills/source-command-prd-new/SKILL.md\nnpm notice 2.0kB templates/repo-skeleton/.agents/skills/source-command-prd-off/SKILL.md\nnpm notice 1.5kB templates/repo-skeleton/.agents/skills/source-command-prd-on/SKILL.md\nnpm notice 2.3kB templates/repo-skeleton/.agents/skills/source-command-prd-reflections/SKILL.md\nnpm notice 2.5kB templates/repo-skeleton/.agents/skills/source-command-prd-report/SKILL.md\nnpm notice 1.2kB templates/repo-skeleton/.agents/skills/source-command-prd-status/SKILL.md\nnpm notice 1.7kB templates/repo-skeleton/.agents/skills/source-command-prd-track/SKILL.md\nnpm notice 1.8kB templates/repo-skeleton/.agents/skills/source-command-prd-version/SKILL.md\nnpm notice 1.7kB templates/repo-skeleton/.agents/skills/source-command-prd-workflow/SKILL.md\nnpm notice 763B templates/repo-skeleton/.claude-plugin/plugin.json\nnpm notice 772B templates/repo-skeleton/.claude/commands/prd-autonomy.md\nnpm notice 493B templates/repo-skeleton/.claude/commands/prd-close.md\nnpm notice 2.5kB templates/repo-skeleton/.claude/commands/prd-config.md\nnpm notice 1.6kB templates/repo-skeleton/.claude/commands/prd-drift.md\nnpm notice 1.4kB templates/repo-skeleton/.claude/commands/prd-graph.md\nnpm notice 1.6kB templates/repo-skeleton/.claude/commands/prd-hooks.md\nnpm notice 639B templates/repo-skeleton/.claude/commands/prd-new.md\nnpm notice 1.4kB templates/repo-skeleton/.claude/commands/prd-off.md\nnpm notice 862B templates/repo-skeleton/.claude/commands/prd-on.md\nnpm notice 1.6kB templates/repo-skeleton/.claude/commands/prd-reflections.md\nnpm notice 1.8kB templates/repo-skeleton/.claude/commands/prd-report.md\nnpm notice 549B templates/repo-skeleton/.claude/commands/prd-status.md\nnpm notice 974B templates/repo-skeleton/.claude/commands/prd-track.md\nnpm notice 1.0kB templates/repo-skeleton/.claude/commands/prd-version.md\nnpm notice 938B templates/repo-skeleton/.claude/commands/prd-workflow.md\nnpm notice 1.6kB templates/repo-skeleton/.claude/hooks/prd_drift_check.py\nnpm notice 2.0kB templates/repo-skeleton/.claude/hooks/prd_log_skill.py\nnpm notice 4.1kB templates/repo-skeleton/.claude/hooks/prd_nudge.py\nnpm notice 3.7kB templates/repo-skeleton/.claude/hooks/prd_precommit_gate.py\nnpm notice 6.1kB templates/repo-skeleton/.claude/hooks/prd_reflection.py\nnpm notice 3.5kB templates/repo-skeleton/.claude/hooks/prd_session_report.py\nnpm notice 15.8kB templates/repo-skeleton/.claude/hooks/prd_stop_guard.py\nnpm notice 1.2kB templates/repo-skeleton/.claude/settings.json\nnpm notice 3.0kB templates/repo-skeleton/.claude/skills/project-architecture/SKILL.md\nnpm notice 7.4kB templates/repo-skeleton/.claude/skills/project-blocker-resolution/SKILL.md\nnpm notice 2.8kB templates/repo-skeleton/.claude/skills/project-brainstorm/SKILL.md\nnpm notice 5.5kB templates/repo-skeleton/.claude/skills/project-change-request/SKILL.md\nnpm notice 6.3kB templates/repo-skeleton/.claude/skills/project-code-review/SKILL.md\nnpm notice 2.7kB templates/repo-skeleton/.claude/skills/project-decision-ledger/SKILL.md\nnpm notice 23.6kB templates/repo-skeleton/.claude/skills/project-decision-policy/SKILL.md\nnpm notice 4.4kB templates/repo-skeleton/.claude/skills/project-deterministic-workflows/SKILL.md\nnpm notice 5.2kB templates/repo-skeleton/.claude/skills/project-document-branch/SKILL.md\nnpm notice 2.8kB templates/repo-skeleton/.claude/skills/project-evidence-ledger/SKILL.md\nnpm notice 3.3kB templates/repo-skeleton/.claude/skills/project-evidence/SKILL.md\nnpm notice 11.9kB templates/repo-skeleton/.claude/skills/project-git-workflow/SKILL.md\nnpm notice 7.4kB templates/repo-skeleton/.claude/skills/project-health/SKILL.md\nnpm notice 6.0kB templates/repo-skeleton/.claude/skills/project-implementation-plan/SKILL.md\nnpm notice 1.1kB templates/repo-skeleton/.claude/skills/project-llm-wiki/LICENSE\nnpm notice 842B templates/repo-skeleton/.claude/skills/project-llm-wiki/references/archive-template.md\nnpm notice 843B templates/repo-skeleton/.claude/skills/project-llm-wiki/references/article-template.md\nnpm notice 559B templates/repo-skeleton/.claude/skills/project-llm-wiki/references/index-template.md\nnpm notice 317B templates/repo-skeleton/.claude/skills/project-llm-wiki/references/raw-template.md\nnpm notice 17.0kB templates/repo-skeleton/.claude/skills/project-llm-wiki/SKILL.md\nnpm notice 7.4kB templates/repo-skeleton/.claude/skills/project-local-integration/SKILL.md\nnpm notice 8.1kB templates/repo-skeleton/.claude/skills/project-memory/SKILL.md\nnpm notice 6.2kB templates/repo-skeleton/.claude/skills/project-planning-lifecycle/SKILL.md\nnpm notice 6.0kB templates/repo-skeleton/.claude/skills/project-prd-plugin-setup/SKILL.md\nnpm notice 3.5kB templates/repo-skeleton/.claude/skills/project-prd/SKILL.md\nnpm notice 27.5kB templates/repo-skeleton/.claude/skills/project-request-intake/SKILL.md\nnpm notice 4.8kB templates/repo-skeleton/.claude/skills/project-session-close/SKILL.md\nnpm notice 10.3kB templates/repo-skeleton/.claude/skills/project-systematic-debugging/SKILL.md\nnpm notice 4.8kB templates/repo-skeleton/.claude/skills/project-test-driven-implementation/SKILL.md\nnpm notice 3.7kB templates/repo-skeleton/.claude/skills/project-traceability-review/SKILL.md\nnpm notice 2.5kB templates/repo-skeleton/.claude/skills/project-traceability-sync/SKILL.md\nnpm notice 6.6kB templates/repo-skeleton/.claude/skills/project-verification-before-completion/SKILL.md\nnpm notice 1.5kB templates/repo-skeleton/.claude/skills/source-command-prd-autonomy/SKILL.md\nnpm notice 1.2kB templates/repo-skeleton/.claude/skills/source-command-prd-close/SKILL.md\nnpm notice 3.3kB templates/repo-skeleton/.claude/skills/source-command-prd-config/SKILL.md\nnpm notice 2.4kB templates/repo-skeleton/.claude/skills/source-command-prd-drift/SKILL.md\nnpm notice 2.1kB templates/repo-skeleton/.claude/skills/source-command-prd-graph/SKILL.md\nnpm notice 2.2kB templates/repo-skeleton/.claude/skills/source-command-prd-hooks/SKILL.md\nnpm notice 1.3kB templates/repo-skeleton/.claude/skills/source-command-prd-new/SKILL.md\nnpm notice 2.0kB templates/repo-skeleton/.claude/skills/source-command-prd-off/SKILL.md\nnpm notice 1.5kB templates/repo-skeleton/.claude/skills/source-command-prd-on/SKILL.md\nnpm notice 2.3kB templates/repo-skeleton/.claude/skills/source-command-prd-reflections/SKILL.md\nnpm notice 2.5kB templates/repo-skeleton/.claude/skills/source-command-prd-report/SKILL.md\nnpm notice 1.2kB templates/repo-skeleton/.claude/skills/source-command-prd-status/SKILL.md\nnpm notice 1.7kB templates/repo-skeleton/.claude/skills/source-command-prd-track/SKILL.md\nnpm notice 1.8kB templates/repo-skeleton/.claude/skills/source-command-prd-version/SKILL.md\nnpm notice 1.7kB templates/repo-skeleton/.claude/skills/source-command-prd-workflow/SKILL.md\nnpm notice 3.2kB templates/repo-skeleton/.codex-plugin/plugin.json\nnpm notice 3.3kB templates/repo-skeleton/.codex/hooks.json\nnpm notice 743B templates/repo-skeleton/.githooks/pre-commit\nnpm notice 734B templates/repo-skeleton/.github/workflows/prd-gate.yml\nnpm notice 3.2kB templates/repo-skeleton/.opencode/plugin.json\nnpm notice 4.3kB templates/repo-skeleton/.opencode/plugins/prd-hooks.js\nnpm notice 3.0kB templates/repo-skeleton/.opencode/skill/project-architecture/SKILL.md\nnpm notice 7.4kB templates/repo-skeleton/.opencode/skill/project-blocker-resolution/SKILL.md\nnpm notice 2.8kB templates/repo-skeleton/.opencode/skill/project-brainstorm/SKILL.md\nnpm notice 5.5kB templates/repo-skeleton/.opencode/skill/project-change-request/SKILL.md\nnpm notice 6.3kB templates/repo-skeleton/.opencode/skill/project-code-review/SKILL.md\nnpm notice 2.7kB templates/repo-skeleton/.opencode/skill/project-decision-ledger/SKILL.md\nnpm notice 23.6kB templates/repo-skeleton/.opencode/skill/project-decision-policy/SKILL.md\nnpm notice 4.4kB templates/repo-skeleton/.opencode/skill/project-deterministic-workflows/SKILL.md\nnpm notice 5.2kB templates/repo-skeleton/.opencode/skill/project-document-branch/SKILL.md\nnpm notice 2.8kB templates/repo-skeleton/.opencode/skill/project-evidence-ledger/SKILL.md\nnpm notice 3.3kB templates/repo-skeleton/.opencode/skill/project-evidence/SKILL.md\nnpm notice 11.9kB templates/repo-skeleton/.opencode/skill/project-git-workflow/SKILL.md\nnpm notice 7.4kB templates/repo-skeleton/.opencode/skill/project-health/SKILL.md\nnpm notice 6.0kB templates/repo-skeleton/.opencode/skill/project-implementation-plan/SKILL.md\nnpm notice 1.1kB templates/repo-skeleton/.opencode/skill/project-llm-wiki/LICENSE\nnpm notice 842B templates/repo-skeleton/.opencode/skill/project-llm-wiki/references/archive-template.md\nnpm notice 843B templates/repo-skeleton/.opencode/skill/project-llm-wiki/references/article-template.md\nnpm notice 559B templates/repo-skeleton/.opencode/skill/project-llm-wiki/references/index-template.md\nnpm notice 317B templates/repo-skeleton/.opencode/skill/project-llm-wiki/references/raw-template.md\nnpm notice 17.0kB templates/repo-skeleton/.opencode/skill/project-llm-wiki/SKILL.md\nnpm notice 7.4kB templates/repo-skeleton/.opencode/skill/project-local-integration/SKILL.md\nnpm notice 8.1kB templates/repo-skeleton/.opencode/skill/project-memory/SKILL.md\nnpm notice 6.2kB templates/repo-skeleton/.opencode/skill/project-planning-lifecycle/SKILL.md\nnpm notice 6.0kB templates/repo-skeleton/.opencode/skill/project-prd-plugin-setup/SKILL.md\nnpm notice 3.5kB templates/repo-skeleton/.opencode/skill/project-prd/SKILL.md\nnpm notice 27.5kB templates/repo-skeleton/.opencode/skill/project-request-intake/SKILL.md\nnpm notice 4.8kB templates/repo-skeleton/.opencode/skill/project-session-close/SKILL.md\nnpm notice 10.3kB templates/repo-skeleton/.opencode/skill/project-systematic-debugging/SKILL.md\nnpm notice 4.8kB templates/repo-skeleton/.opencode/skill/project-test-driven-implementation/SKILL.md\nnpm notice 3.7kB templates/repo-skeleton/.opencode/skill/project-traceability-review/SKILL.md\nnpm notice 2.5kB templates/repo-skeleton/.opencode/skill/project-traceability-sync/SKILL.md\nnpm notice 6.6kB templates/repo-skeleton/.opencode/skill/project-verification-before-completion/SKILL.md\nnpm notice 1.5kB templates/repo-skeleton/.opencode/skill/source-command-prd-autonomy/SKILL.md\nnpm notice 1.2kB templates/repo-skeleton/.opencode/skill/source-command-prd-close/SKILL.md\nnpm notice 3.3kB templates/repo-skeleton/.opencode/skill/source-command-prd-config/SKILL.md\nnpm notice 2.4kB templates/repo-skeleton/.opencode/skill/source-command-prd-drift/SKILL.md\nnpm notice 2.1kB templates/repo-skeleton/.opencode/skill/source-command-prd-graph/SKILL.md\nnpm notice 2.2kB templates/repo-skeleton/.opencode/skill/source-command-prd-hooks/SKILL.md\nnpm notice 1.3kB templates/repo-skeleton/.opencode/skill/source-command-prd-new/SKILL.md\nnpm notice 2.0kB templates/repo-skeleton/.opencode/skill/source-command-prd-off/SKILL.md\nnpm notice 1.5kB templates/repo-skeleton/.opencode/skill/source-command-prd-on/SKILL.md\nnpm notice 2.3kB templates/repo-skeleton/.opencode/skill/source-command-prd-reflections/SKILL.md\nnpm notice 2.5kB templates/repo-skeleton/.opencode/skill/source-command-prd-report/SKILL.md\nnpm notice 1.2kB templates/repo-skeleton/.opencode/skill/source-command-prd-status/SKILL.md\nnpm notice 1.7kB templates/repo-skeleton/.opencode/skill/source-command-prd-track/SKILL.md\nnpm notice 1.8kB templates/repo-skeleton/.opencode/skill/source-command-prd-version/SKILL.md\nnpm notice 1.7kB templates/repo-skeleton/.opencode/skill/source-command-prd-workflow/SKILL.md\nnpm notice 14.8kB templates/repo-skeleton/.prd_plugin/config.json\nnpm notice 1.6kB templates/repo-skeleton/.prd_plugin/hooks/prd_drift_check.py\nnpm notice 11.9kB templates/repo-skeleton/.prd_plugin/hooks/prd_hook_dispatch.py\nnpm notice 2.0kB templates/repo-skeleton/.prd_plugin/hooks/prd_log_skill.py\nnpm notice 4.1kB templates/repo-skeleton/.prd_plugin/hooks/prd_nudge.py\nnpm notice 3.7kB templates/repo-skeleton/.prd_plugin/hooks/prd_precommit_gate.py\nnpm notice 26.7kB templates/repo-skeleton/.prd_plugin/hooks/prd_reason_guard.py\nnpm notice 6.1kB templates/repo-skeleton/.prd_plugin/hooks/prd_reflection.py\nnpm notice 3.5kB templates/repo-skeleton/.prd_plugin/hooks/prd_session_report.py\nnpm notice 15.8kB templates/repo-skeleton/.prd_plugin/hooks/prd_stop_guard.py\nnpm notice 8.0kB templates/repo-skeleton/.prd_plugin/hooks/prd_test_scope_guard.py\nnpm notice 3.7kB templates/repo-skeleton/.prd_plugin/ID-SCHEME.md\nnpm notice 581B templates/repo-skeleton/.prd_plugin/ids/registry.json\nnpm notice 12.6kB templates/repo-skeleton/.prd_plugin/METHOD.md\nnpm notice 725B templates/repo-skeleton/.prd_plugin/method/artifact-format.md\nnpm notice 1.5kB templates/repo-skeleton/.prd_plugin/method/completion-gate.md\nnpm notice 3.6kB templates/repo-skeleton/.prd_plugin/method/deterministic-workflows.md\nnpm notice 1.2kB templates/repo-skeleton/.prd_plugin/method/estimation.md\nnpm notice 2.1kB templates/repo-skeleton/.prd_plugin/method/grounding.md\nnpm notice 3.2kB templates/repo-skeleton/.prd_plugin/method/reporting.md\nnpm notice 4.1kB templates/repo-skeleton/.prd_plugin/method/self-service.md\nnpm notice 1.6kB templates/repo-skeleton/.prd_plugin/method/staleness-rules.md\nnpm notice 1.0kB templates/repo-skeleton/.prd_plugin/method/state-validation.md\nnpm notice 3.0kB templates/repo-skeleton/.prd_plugin/method/subagents.md\nnpm notice 1.3kB templates/repo-skeleton/.prd_plugin/services.json\nnpm notice 47B templates/repo-skeleton/.prd_plugin/state/changelog.json\nnpm notice 49B templates/repo-skeleton/.prd_plugin/state/decisions.json\nnpm notice 157B templates/repo-skeleton/.prd_plugin/state/health.json\nnpm notice 47B templates/repo-skeleton/.prd_plugin/state/memory.json\nnpm notice 287B templates/repo-skeleton/.prd_plugin/state/project.json\nnpm notice 48B templates/repo-skeleton/.prd_plugin/state/releases.json\nnpm notice 48B templates/repo-skeleton/.prd_plugin/state/requests.json\nnpm notice 214B templates/repo-skeleton/.prd_plugin/state/sessions/shared/promoted-session-summaries.jsonl\nnpm notice 49B templates/repo-skeleton/.prd_plugin/state/substrate-links.json\nnpm notice 51B templates/repo-skeleton/.prd_plugin/state/tracking.json\nnpm notice 48B templates/repo-skeleton/.prd_plugin/state/workflow-runs.json\nnpm notice 167B templates/repo-skeleton/.prd_plugin/templates/architecture-delta.md\nnpm notice 1.4kB templates/repo-skeleton/.prd_plugin/templates/architecture.json\nnpm notice 368B templates/repo-skeleton/.prd_plugin/templates/brainstorm.md\nnpm notice 274B templates/repo-skeleton/.prd_plugin/templates/changelog.json\nnpm notice 15.0kB templates/repo-skeleton/.prd_plugin/templates/config.json\nnpm notice 265B templates/repo-skeleton/.prd_plugin/templates/decision-record.md\nnpm notice 398B templates/repo-skeleton/.prd_plugin/templates/decisions.json\nnpm notice 372B templates/repo-skeleton/.prd_plugin/templates/doc-branch.json\nnpm notice 313B templates/repo-skeleton/.prd_plugin/templates/doc-branch.md\nnpm notice 115B templates/repo-skeleton/.prd_plugin/templates/evidence.md\nnpm notice 249B templates/repo-skeleton/.prd_plugin/templates/handoff.json\nnpm notice 407B templates/repo-skeleton/.prd_plugin/templates/health.json\nnpm notice 695B templates/repo-skeleton/.prd_plugin/templates/human-exports/architecture.md\nnpm notice 626B templates/repo-skeleton/.prd_plugin/templates/human-exports/implementation-plan.md\nnpm notice 580B templates/repo-skeleton/.prd_plugin/templates/human-exports/prd.md\nnpm notice 1.4kB templates/repo-skeleton/.prd_plugin/templates/implementation-plan.json\nnpm notice 65B templates/repo-skeleton/.prd_plugin/templates/mailbox.json\nnpm notice 348B templates/repo-skeleton/.prd_plugin/templates/memory.json\nnpm notice 471B templates/repo-skeleton/.prd_plugin/templates/merge-checklist.md\nnpm notice 163B templates/repo-skeleton/.prd_plugin/templates/plan-delta.md\nnpm notice 139B templates/repo-skeleton/.prd_plugin/templates/prd-delta.md\nnpm notice 1.3kB templates/repo-skeleton/.prd_plugin/templates/prd.json\nnpm notice 455B templates/repo-skeleton/.prd_plugin/templates/project.json\nnpm notice 125B templates/repo-skeleton/.prd_plugin/templates/promoted-session-summary.jsonl\nnpm notice 923B templates/repo-skeleton/.prd_plugin/templates/releases.json\nnpm notice 1.4kB templates/repo-skeleton/.prd_plugin/templates/request.json\nnpm notice 1.7kB templates/repo-skeleton/.prd_plugin/templates/requests.json\nnpm notice 23.1kB templates/repo-skeleton/.prd_plugin/templates/script-install-scope.json\nnpm notice 235B templates/repo-skeleton/.prd_plugin/templates/session.json\nnpm notice 15.6kB templates/repo-skeleton/.prd_plugin/templates/skill-install-scope.json\nnpm notice 317B templates/repo-skeleton/.prd_plugin/templates/submission-package.json\nnpm notice 5.7kB templates/repo-skeleton/.prd_plugin/templates/tool-surface.json\nnpm notice 225B templates/repo-skeleton/.prd_plugin/templates/traceability-matrix.md\nnpm notice 321B templates/repo-skeleton/.prd_plugin/templates/tracking.json\nnpm notice 375B templates/repo-skeleton/.prd_plugin/templates/utcp-config.json\nnpm notice 22.2kB templates/repo-skeleton/.prd_plugin/workflows.json\nnpm notice 14.5kB templates/repo-skeleton/AGENTS.md\nnpm notice 10.8kB templates/repo-skeleton/CLAUDE.md\nnpm notice 12.0kB templates/repo-skeleton/docs/INSTALL-MATRIX.md\nnpm notice 2.7kB templates/repo-skeleton/hooks/hooks.json\nnpm notice 1.4kB templates/request.json\nnpm notice 1.7kB templates/requests.json\nnpm notice 23.1kB templates/script-install-scope.json\nnpm notice 1.3kB templates/services.json\nnpm notice 235B templates/session.json\nnpm notice 15.6kB templates/skill-install-scope.json\nnpm notice 317B templates/submission-package.json\nnpm notice 10.4kB templates/substrate-capabilities.json\nnpm notice 48.5kB templates/tool-spec.json\nnpm notice 7.9kB templates/tool-surface.json\nnpm notice 225B templates/traceability-matrix.md\nnpm notice 321B templates/tracking.json\nnpm notice 375B templates/utcp-config.json\nnpm notice 22.2kB templates/workflows.json\nnpm notice Tarball Details\nnpm notice name: prd-plugin\nnpm notice version: 0.16.52\nnpm notice filename: prd-plugin-0.16.52.tgz\nnpm notice package size: 1.6 MB\nnpm notice unpacked size: 10.2 MB\nnpm notice shasum: 9ba086bf6d082c4a41196649433a68498173f93a\nnpm notice integrity: sha512-hxxeSnberuNh4[...]+ycthFC0Ms2MA==\nnpm notice total files: 642\nnpm notice\n"
          },
          "output_hash": "a9bc9cb7f44e0492e97829d5c93e31d5cef9ff575bdac83f8fe280d95175c2b3",
          "completed_at": "2026-07-24T12:51:39Z"
        },
        {
          "id": "gate",
          "action": "state.gate",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-24T12:51:39Z",
          "output": {
            "status": "attention",
            "repo_root": "D:\\Projects\\prd-plugin",
            "summary": {
              "errors": 0,
              "warnings": 0
            },
            "findings": [
              {
                "check": "state_consistency",
                "severity": "info",
                "summary": "File references 2 canonical IDs across 2 prefix(es); treated as a positive signal of extra work.",
                "required_action": "No action required; this is an informational signal."
              }
            ]
          },
          "output_hash": "6a0ed3d65779be265214a0e8395ab03978b9f7b91da9ffb59b257b73f82d087d",
          "completed_at": "2026-07-24T12:51:40Z"
        }
      ],
      "completed_at": "2026-07-24T12:51:40Z"
    },
    {
      "id": "WFR-404",
      "schema_version": "1.0",
      "workflow_id": "hub.release",
      "workflow_version": 1,
      "definition_hash": "ab6ae2afcb0128db8d994b6b397e543c7490017bd3d1b15309079edc6be94d9a",
      "plan_hash": "02bcb9cb71ca5641cc12e6270fee67758c0051b183e4204137993cd57b89a7bd",
      "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
      "inputs": {},
      "idempotency_key": "req-171-hub-release-v2",
      "status": "completed",
      "attempt": 1,
      "created_at": "2026-07-24T12:53:40Z",
      "updated_at": "2026-07-24T12:55:56Z",
      "receipts": [
        {
          "step_id": "diff",
          "action": "git.diff_check",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "11c11db30f4b3f6c758722ba3e27eea08145b7d212f6a157451e364b48475280",
          "completed_at": "2026-07-24T12:53:41Z"
        },
        {
          "step_id": "config",
          "action": "config.audit",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "ef2327bf3ea9c100a1a525c09e426de9703016f1b7c177b0df10c0b7cf3f33c9",
          "completed_at": "2026-07-24T12:53:41Z"
        },
        {
          "step_id": "state",
          "action": "state.consistency",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "9963110856ca8182da0dfdbb22f6960618b55dbc121be0dce0066a7c7a389b10",
          "completed_at": "2026-07-24T12:53:42Z"
        },
        {
          "step_id": "workflow_audit",
          "action": "process.fixed",
          "input_hash": "edf19b269a54d72753f1abc2b8ffcb810c2b7bc377cee7e1698c939f17e0be94",
          "output_hash": "231b43ed70e09c4e7cbcda1094b00e0274dd4a22ff8324da2eb907f705c1316a",
          "completed_at": "2026-07-24T12:53:42Z"
        },
        {
          "step_id": "substrate_audit",
          "action": "process.fixed",
          "input_hash": "4998f71d2d3f6ac7dd50e10d37f60ae32d54898949950e484da9de113e18a979",
          "output_hash": "4176fd7e9d2d33bd61e5fd6bb8d392a63eaa5b2cb65b750eeb348b9dd55fe220",
          "completed_at": "2026-07-24T12:53:43Z"
        },
        {
          "step_id": "suite",
          "action": "process.fixed",
          "input_hash": "954e575e48145853f5681eda189186c95a053267158fae669114320f2e53794a",
          "output_hash": "62d01929a4576b94eeb7cfeaa0d5c410af56f6686a5e5f72fe38b2de030b8c19",
          "completed_at": "2026-07-24T12:55:52Z"
        },
        {
          "step_id": "release",
          "action": "process.fixed",
          "input_hash": "1e5b0c18d93eb4c2248f9a00adbd438e52f3ef02137477fb8376c69cfe86fc9b",
          "output_hash": "572b5409034a6cf4a9e07e6019970c207157ae549838c5ff67c4ff8d790eb5a9",
          "completed_at": "2026-07-24T12:55:52Z"
        },
        {
          "step_id": "gaps",
          "action": "process.fixed",
          "input_hash": "577241909238eeb55683f89d2d2216648dad2e3127397993e22493829a1307a4",
          "output_hash": "a27151aa46f7f726af5dce611fe75f5db8d923f7a620151633742b637e97c021",
          "completed_at": "2026-07-24T12:55:53Z"
        },
        {
          "step_id": "package",
          "action": "process.fixed",
          "input_hash": "06cd12e1f3db3d985f9150520afa60f288297ff0ca01a8e813e9bb6291aa8836",
          "output_hash": "e5eac35d70ff4b77ee0035cf4a31efb0aad629a36d82c00cf3d267203b07b117",
          "completed_at": "2026-07-24T12:55:55Z"
        },
        {
          "step_id": "gate",
          "action": "state.gate",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "6a0ed3d65779be265214a0e8395ab03978b9f7b91da9ffb59b257b73f82d087d",
          "completed_at": "2026-07-24T12:55:56Z"
        }
      ],
      "steps": [
        {
          "id": "diff",
          "action": "git.diff_check",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-24T12:53:40Z",
          "output": {
            "passed": true
          },
          "output_hash": "11c11db30f4b3f6c758722ba3e27eea08145b7d212f6a157451e364b48475280",
          "completed_at": "2026-07-24T12:53:41Z"
        },
        {
          "id": "config",
          "action": "config.audit",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-24T12:53:41Z",
          "output": {
            "status": "ok",
            "summary": {
              "settings": 214,
              "mutable": 204,
              "read_only_or_managed": 10,
              "unclassified": 0,
              "unknown": 0,
              "invalid": 0,
              "missing_using_defaults": 0
            },
            "unclassified_keys": [],
            "unknown_keys": [],
            "invalid_values": [],
            "missing_using_defaults": []
          },
          "output_hash": "ef2327bf3ea9c100a1a525c09e426de9703016f1b7c177b0df10c0b7cf3f33c9",
          "completed_at": "2026-07-24T12:53:41Z"
        },
        {
          "id": "state",
          "action": "state.consistency",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-24T12:53:41Z",
          "output": {
            "status": "ok",
            "repo_root": "D:\\Projects\\prd-plugin",
            "summary": {
              "errors": 0,
              "warnings": 0,
              "infos": 1
            },
            "findings": [
              {
                "id": "CONS-INFO-001",
                "severity": "info",
                "path": "docs/evidence/EV-200.md",
                "summary": "File references 2 canonical IDs across 2 prefix(es); treated as a positive signal of extra work.",
                "referenced_prefixes": [
                  "CHG",
                  "TRK"
                ],
                "referenced_id_count": 2,
                "required_action": "No action required; this is an informational signal."
              }
            ]
          },
          "output_hash": "9963110856ca8182da0dfdbb22f6960618b55dbc121be0dce0066a7c7a389b10",
          "completed_at": "2026-07-24T12:53:42Z"
        },
        {
          "id": "workflow_audit",
          "action": "process.fixed",
          "status": "completed",
          "resolved_input_hash": "edf19b269a54d72753f1abc2b8ffcb810c2b7bc377cee7e1698c939f17e0be94",
          "started_at": "2026-07-24T12:53:42Z",
          "output": {
            "operation": "workflow_chml_audit",
            "command": [
              "python",
              "scripts/workflow_chml_audit.py",
              "--repo-root",
              ".",
              "--format",
              "json"
            ],
            "exit_code": 0,
            "stdout": "{\n  \"status\": \"ok\",\n  \"repo_root\": \"D:\\\\Projects\\\\prd-plugin\",\n  \"summary\": {\n    \"critical\": 0,\n    \"high\": 0,\n    \"medium\": 0,\n    \"low\": 0\n  },\n  \"findings\": []\n}\n",
            "stderr": ""
          },
          "output_hash": "231b43ed70e09c4e7cbcda1094b00e0274dd4a22ff8324da2eb907f705c1316a",
          "completed_at": "2026-07-24T12:53:42Z"
        },
        {
          "id": "substrate_audit",
          "action": "process.fixed",
          "status": "completed",
          "resolved_input_hash": "4998f71d2d3f6ac7dd50e10d37f60ae32d54898949950e484da9de113e18a979",
          "started_at": "2026-07-24T12:53:43Z",
          "output": {
            "operation": "substrate_capability_audit",
            "command": [
              "python",
              "scripts/prd_substrate_catalog.py",
              "--repo-root",
              ".",
              "audit"
            ],
            "exit_code": 0,
            "stdout": "{\n  \"status\": \"ok\",\n  \"schema_version\": \"1.0\",\n  \"capability_count\": 26,\n  \"runtime_tool_count\": 103,\n  \"intent_count\": 31,\n  \"summary\": {\n    \"critical\": 0,\n    \"high\": 0,\n    \"medium\": 0,\n    \"low\": 0\n  },\n  \"findings\": []\n}\n",
            "stderr": ""
          },
          "output_hash": "4176fd7e9d2d33bd61e5fd6bb8d392a63eaa5b2cb65b750eeb348b9dd55fe220",
          "completed_at": "2026-07-24T12:53:43Z"
        },
        {
          "id": "suite",
          "action": "process.fixed",
          "status": "completed",
          "resolved_input_hash": "954e575e48145853f5681eda189186c95a053267158fae669114320f2e53794a",
          "started_at": "2026-07-24T12:53:43Z",
          "output": {
            "operation": "local_workflow_check",
            "command": [
              "python",
              "scripts/local_workflow_check.py"
            ],
            "exit_code": 0,
            "stdout": "Structured file validation passed.\n$ python -m unittest discover -s tests -v\n{\n  \"status\": \"fail\",\n  \"repo_root\": \"C:\\\\Users\\\\marku\\\\AppData\\\\Local\\\\Temp\\\\tmpyopy9ha3\",\n  \"summary\": {\n    \"errors\": 1,\n    \"warnings\": 0\n  },\n  \"findings\": [\n    {\n      \"check\": \"duplicate_id\",\n      \"severity\": \"error\",\n      \"summary\": \"Duplicate id REQ-002 in .prd_plugin/state/requests.json.\",\n      \"required_action\": \"Renumber one record so REQ-002 is unique. Allocate IDs with the MCP tool prd_next_id (or the record tools like prd_open_goal) instead of hand-computing them.\"\n    }\n  ]\n}\nautonomy_level set to guided\nautonomy_level set to autonomous\nDESTRUCTIVE RESET REQUESTED: --force --yes will erase protected PRD Plugin project data.\nThe following existing state/configuration files would be replaced with skeleton defaults:\n  - .prd_plugin/state/tracking.json\nThis may erase IDs, tracking, requests, decisions, health findings, configuration, and session memory.\nFor a normal safe update, remove --yes and run: npx prd-install . --force\nPRD Plugin safe update: preserving existing state/config and refreshing plugin files only. Never add --yes to a routine update; it requests a destructive reset.\nPRD Plugin safe update: preserving existing state/config and refreshing plugin files only. Never add --yes to a routine update; it requests a destructive reset.\nPRD Plugin safe update: preserving existing state/config and refreshing plugin files only. Never add --yes to a routine update; it requests a destructive reset.\nPRD Plugin safe update: preserving existing state/config and refreshing plugin files only. Never add --yes to a routine update; it requests a destructive reset.\nPRD Plugin safe update: preserving existing state/config and refreshing plugin files only. Never add --yes to a routine update; it requests a destructive reset.\nPRD Plugin safe update: preserving existing state/config and refreshing plugin files only. Never add --yes to a routine update; it requests a destructive reset.\nPRD Plugin safe update: preserving existing state/config and refreshing plugin files only. Never add --yes to a routine update; it requests a destructive reset.\nPRD Plugin safe update: preserving existing state/config and refreshing plugin files only. Never add --yes to a routine update; it requests a destructive reset.\nPRD Plugin safe update: preserving existing state/config and refreshing plugin files only. Never add --yes to a routine update; it requests a destructive reset.\nPRD Plugin safe update: preserving existing state/config and refreshing plugin files only. Never add --yes to a routine update; it requests a destructive reset.\nPRD Plugin safe update: preserving existing state/config and refreshing plugin files only. Never add --yes to a routine update; it requests a destructive reset.\nPRD Plugin safe update: preserving existing state/config and refreshing plugin files only. Never add --yes to a routine update; it requests a destructive reset.\nPRD Plugin safe update: preserving existing state/config and refreshing plugin files only. Never add --yes to a routine update; it requests a destructive reset.\nPRD Plugin safe update: preserving existing state/config and refreshing plugin files only. Never add --yes to a routine update; it requests a destructive reset.\nPRD Plugin safe update: preserving existing state/config and refreshing plugin files only. Never add --yes to a routine update; it requests a destructive reset.\nPRD Plugin safe update: preserving existing state/config and refreshing plugin files only. Never add --yes to a routine update; it requests a destructive reset.\nPRD Plugin safe update: preserving existing state/config and refreshing plugin files only. Never add --yes to a routine update; it requests a destructive reset.\n{\n  \"published\": false,\n  \"package\": \"prd-plugin\",\n  \"version\": \"9.9.9\",\n  \"version_seen\": null,\n  \"latest_seen\": null,\n  \"attempts_used\": 1\n}\n{\n  \"published\": true,\n  \"package\": \"prd-plugin\",\n  \"version\": \"1.2.3\",\n  \"version_seen\": \"1.2.3\",\n  \"latest_seen\": \"1.2.3\",\n  \"attempts_used\": 1\n}\n{\"decision\": \"block\", \"reason\": \"Autonomous run-until-done: goal TRK-157 is still active. Continue with the next incomplete step toward it \\u2014 do not stop to ask 'shall I proceed?'. If you genuinely need the user (consent floor: push/merge/publish/secrets, or a real blocker), create the file .prd_plugin/local/autonomy-pause with a one-line reason and then stop; the guard will let you. Otherwise keep going.\"}\n$ python scripts/feature_skill_audit.py --repo-root . --format json\n{\n  \"status\": \"ok\",\n  \"repo_root\": \"D:\\\\Projects\\\\prd-plugin\",\n  \"contract\": \"templates/feature-skill-map.json\",\n  \"feature_count\": 28,\n  \"summary\": {\n    \"critical\": 0,\n    \"high\": 0,\n    \"medium\": 0,\n    \"low\": 0\n  },\n  \"findings\": []\n}\n$ python scripts/gap_audit.py --target-version 0.16.52\n# PRD Plugin Gap Audit\n\nTarget version: `0.16.52`\n\n## Findings\n\n- None\n$ python scripts/version_advice.py --installed-repo . --format json --output request-report/version-advice.json\n$ python scripts/release_check.py --output request-report/release-hygiene.md\n$ python scripts/prd_doctor.py --repo-root . --format json --output request-report/prd-doctor.json\n$ python scripts/state_consistency_check.py --repo-root . --format json --output request-report/state-consistency.json\n$ python scripts/prd_install_skills.py --repo-root . --dry-run\n{\n  \"status\": \"dry_run\",\n  \"target_agent\": \"codex\",\n  \"targets\": [\n    {\n      \"agent\": \"codex\",\n      \"target\": \".agents\\\\skills\",\n      \"would_install\": [\n        \"project-architecture\",\n        \"project-blocker-resolution\",\n        \"project-brainstorm\",\n        \"project-change-request\",\n        \"project-code-review\",\n        \"project-decision-ledger\",\n        \"project-decision-policy\",\n        \"project-deterministic-workflows\",\n        \"project-document-branch\",\n        \"project-evidence\",\n        \"project-evidence-ledger\",\n        \"project-git-workflow\",\n        \"project-health\",\n        \"project-implementation-plan\",\n        \"project-llm-wiki\",\n        \"project-local-integration\",\n        \"project-memory\",\n        \"project-planning-lifecycle\",\n        \"project-prd\",\n        \"project-prd-plugin-setup\",\n        \"project-request-intake\",\n        \"project-session-close\",\n        \"project-systematic-debugging\",\n        \"project-test-driven-implementation\",\n        \"project-traceability-review\",\n        \"project-traceability-sync\",\n        \"project-verification-before-completion\",\n        \"source-command-prd-autonomy\",\n        \"source-command-prd-close\",\n        \"source-command-prd-config\",\n        \"source-command-prd-drift\",\n        \"source-command-prd-graph\",\n        \"source-command-prd-hooks\",\n        \"source-command-prd-new\",\n        \"source-command-prd-off\",\n        \"source-command-prd-on\",\n        \"source-command-prd-reflections\",\n        \"source-command-prd-report\",\n        \"source-command-prd-status\",\n        \"source-command-prd-track\",\n        \"source-command-prd-version\",\n        \"source-command-prd-workflow\"\n      ],\n      \"would_remove\": [\n        \"project-fold-it-in\",\n        \"project-self-audit\"\n      ]\n    }\n  ],\n  \"installed_count\": 0,\n  \"target\": \".agents\\\\skills\",\n  \"installed\": [],\n  \"removed\": [],\n  \"would_install\": [\n    \"project-architecture\",\n    \"project-blocker-resolution\",\n    \"project-brainstorm\",\n    \"project-change-request\",\n    \"project-code-review\",\n    \"project-decision-ledger\",\n    \"project-decision-policy\",\n    \"project-deterministic-workflows\",\n    \"project-document-branch\",\n    \"project-evidence\",\n    \"project-evidence-ledger\",\n    \"project-git-workflow\",\n    \"project-health\",\n    \"project-implementation-plan\",\n    \"project-llm-wiki\",\n    \"project-local-integration\",\n    \"project-memory\",\n    \"project-planning-lifecycle\",\n    \"project-prd\",\n    \"project-prd-plugin-setup\",\n    \"project-request-intake\",\n    \"project-session-close\",\n    \"project-systematic-debugging\",\n    \"project-test-driven-implementation\",\n    \"project-traceability-review\",\n    \"project-traceability-sync\",\n    \"project-verification-before-completion\",\n    \"source-command-prd-autonomy\",\n    \"source-command-prd-close\",\n    \"source-command-prd-config\",\n    \"source-command-prd-drift\",\n    \"source-command-prd-graph\",\n    \"source-command-prd-hooks\",\n    \"source-command-prd-new\",\n    \"source-command-prd-off\",\n    \"source-command-prd-on\",\n    \"source-command-prd-reflections\",\n    \"source-command-prd-report\",\n    \"source-command-prd-status\",\n    \"source-command-prd-track\",\n    \"source-command-prd-version\",\n    \"source-command-prd-workflow\"\n  ],\n  \"would_remove\": [\n    \"project-fold-it-in\",\n    \"project-self-audit\"\n  ]\n}\n$ python scripts/request_report.py --config .prd_plugin/config.json --format markdown --output request-report/request-report.md\n$ python scripts/request_report.py --config .prd_plugin/config.json --format json --output request-report/request-report.json\n$ python scripts/message_check.py --config .prd_plugin/config.json --format json --output request-report/message-check.json\nLocal workflow check completed.\n",
            "stderr": "es (test_unified_config.MutationTests.test_audit_reports_unknown_and_invalid_values) ... ok\ntest_enable_disable_only_accept_mutable_booleans (test_unified_config.MutationTests.test_enable_disable_only_accept_mutable_booleans) ... ok\ntest_failed_atomic_replace_leaves_original_config_untouched (test_unified_config.MutationTests.test_failed_atomic_replace_leaves_original_config_untouched) ... ok\ntest_malformed_config_is_never_replaced_by_a_mutation (test_unified_config.MutationTests.test_malformed_config_is_never_replaced_by_a_mutation) ... ok\ntest_manual_set_marks_profile_custom_and_preserves_style (test_unified_config.MutationTests.test_manual_set_marks_profile_custom_and_preserves_style) ... ok\ntest_scalar_parent_is_not_clobbered_by_nested_set (test_unified_config.MutationTests.test_scalar_parent_is_not_clobbered_by_nested_set) ... ok\ntest_builtin_profile_dry_run_then_atomic_apply (test_unified_config.ProfileTests.test_builtin_profile_dry_run_then_atomic_apply) ... ok\ntest_invalid_custom_profile_never_partially_writes (test_unified_config.ProfileTests.test_invalid_custom_profile_never_partially_writes) ... ok\ntest_save_show_diff_and_delete_custom_profile (test_unified_config.ProfileTests.test_save_show_diff_and_delete_custom_profile) ... ok\ntest_does_not_flag_canonical_prd_state_paths (test_unsubmitted_plugin_request.UnsubmittedPluginRequestTests.test_does_not_flag_canonical_prd_state_paths) ... ok\ntest_does_not_flag_ordinary_project_requests (test_unsubmitted_plugin_request.UnsubmittedPluginRequestTests.test_does_not_flag_ordinary_project_requests) ... ok\ntest_does_not_flag_rejected_requests (test_unsubmitted_plugin_request.UnsubmittedPluginRequestTests.test_does_not_flag_rejected_requests) ... ok\ntest_does_not_flag_when_already_marked_upstream (test_unsubmitted_plugin_request.UnsubmittedPluginRequestTests.test_does_not_flag_when_already_marked_upstream) ... ok\ntest_flags_a_local_request_about_a_plugin_script (test_unsubmitted_plugin_request.UnsubmittedPluginRequestTests.test_flags_a_local_request_about_a_plugin_script) ... ok\ntest_flags_a_request_that_names_itself_upstream (test_unsubmitted_plugin_request.UnsubmittedPluginRequestTests.test_flags_a_request_that_names_itself_upstream) ... ok\ntest_never_fires_in_the_hub_repo_itself (test_unsubmitted_plugin_request.UnsubmittedPluginRequestTests.test_never_fires_in_the_hub_repo_itself) ... ok\ntest_wired_into_run_checks (test_unsubmitted_plugin_request.UnsubmittedPluginRequestTests.test_wired_into_run_checks) ... ok\ntest_output_writes_lf_and_a_trailing_newline (test_utcp_first_authority.GeneratedArtifactsAreByteStableTests.test_output_writes_lf_and_a_trailing_newline) ... ok\ntest_the_committed_manual_matches_a_fresh_generation (test_utcp_first_authority.GeneratedArtifactsAreByteStableTests.test_the_committed_manual_matches_a_fresh_generation) ... ok\ntest_every_spec_tool_maps_to_a_catalog_capability (test_utcp_first_authority.ParityDirectionTests.test_every_spec_tool_maps_to_a_catalog_capability) ... ok\ntest_server_metadata_matches_the_spec (test_utcp_first_authority.ParityDirectionTests.test_server_metadata_matches_the_spec) ... ok\ntest_python_entry_points_share_the_same_lock (test_utcp_first_authority.SafetyUnchangedTests.test_python_entry_points_share_the_same_lock)\nThe migration target already exists and is proven: prd_reflections ... ok\ntest_the_state_lock_is_still_held_for_mutations (test_utcp_first_authority.SafetyUnchangedTests.test_the_state_lock_is_still_held_for_mutations) ... ok\ntest_no_shipped_tool_metadata_carries_mojibake (test_utcp_first_authority.ShippedTextIsCleanTests.test_no_shipped_tool_metadata_carries_mojibake) ... ok\ntest_shipped_tool_metadata_is_valid_utf8 (test_utcp_first_authority.ShippedTextIsCleanTests.test_shipped_tool_metadata_is_valid_utf8)\nA file written through a cp1252 layer either fails to decode or ... ok\ntest_each_tool_declares_name_description_and_schema (test_utcp_first_authority.SpecIsTheSourceTests.test_each_tool_declares_name_description_and_schema) ... ok\ntest_the_manual_is_generated_from_the_spec_not_the_server (test_utcp_first_authority.SpecIsTheSourceTests.test_the_manual_is_generated_from_the_spec_not_the_server) ... ok\ntest_the_server_no_longer_authors_descriptions (test_utcp_first_authority.SpecIsTheSourceTests.test_the_server_no_longer_authors_descriptions)\nserver.cjs must READ definitions, not declare them. While a tool ... ok\ntest_the_spec_exists_and_declares_every_tool (test_utcp_first_authority.SpecIsTheSourceTests.test_the_spec_exists_and_declares_every_tool) ... ok\ntest_official_bridge_round_trips_cli_and_mcp_templates (test_utcp_first_catalog.BridgeParityTests.test_official_bridge_round_trips_cli_and_mcp_templates) ... ok\ntest_bridged_entries_reuse_server_metadata_verbatim (test_utcp_first_catalog.GeneratedProjectionTests.test_bridged_entries_reuse_server_metadata_verbatim)\nEach bridged manual entry's description and inputs equal the server's ... ok\ntest_checked_in_metadata_matches_live_server (test_utcp_first_catalog.GeneratedProjectionTests.test_checked_in_metadata_matches_live_server)\nThe pinned metadata projection cannot drift behind the live server. ... ok\ntest_mutations_keep_the_validated_handler_path (test_utcp_first_catalog.GuardedMutationTests.test_mutations_keep_the_validated_handler_path)\nEvery manual tool in a non-read capability calls the plugin state ... ok\ntest_read_only_cli_tools_stay_cli (test_utcp_first_catalog.GuardedMutationTests.test_read_only_cli_tools_stay_cli)\nThe 12 cli-native observe/recall tools keep their cli templates. ... ok\ntest_checked_in_metadata_projection_exists (test_utcp_first_catalog.ManualCompletenessTests.test_checked_in_metadata_projection_exists)\nThe server's tool metadata is a checked-in generated artifact so the ... ok\ntest_manual_covers_every_capability_on_both_transports (test_utcp_first_catalog.ManualCompletenessTests.test_manual_covers_every_capability_on_both_transports)\nEvery UTCP and MCP registration in the tool-surface catalog appears ... ok\ntest_appends_version_change_request (test_version_advice.VersionAdviceTests.test_appends_version_change_request) ... ok\ntest_builds_safe_update_advice_for_low_risk_releases (test_version_advice.VersionAdviceTests.test_builds_safe_update_advice_for_low_risk_releases) ... ok\ntest_cli_uses_hub_releases_when_downstream_repo_has_no_releases_file (test_version_advice.VersionAdviceTests.test_cli_uses_hub_releases_when_downstream_repo_has_no_releases_file) ... ok\ntest_detects_installed_version_from_bom_json (test_version_advice.VersionAdviceTests.test_detects_installed_version_from_bom_json) ... ok\ntest_detects_installed_version_from_opencode_plugin_manifest (test_version_advice.VersionAdviceTests.test_detects_installed_version_from_opencode_plugin_manifest) ... ok\ntest_detects_installed_version_from_prd_plugin_config (test_version_advice.VersionAdviceTests.test_detects_installed_version_from_prd_plugin_config) ... ok\ntest_detects_latest_version_from_plugin_manifest (test_version_advice.VersionAdviceTests.test_detects_latest_version_from_plugin_manifest) ... ok\ntest_installed_version_priority_prefers_config_then_codex_then_opencode (test_version_advice.VersionAdviceTests.test_installed_version_priority_prefers_config_then_codex_then_opencode) ... ok\ntest_orders_prerelease_before_final_release (test_version_advice.VersionAdviceTests.test_orders_prerelease_before_final_release) ... ok\ntest_recommends_review_first_for_medium_or_high_risk_release (test_version_advice.VersionAdviceTests.test_recommends_review_first_for_medium_or_high_risk_release) ... ok\ntest_disabled_returns_disabled_and_no_fetch (test_version_check.CheckTests.test_disabled_returns_disabled_and_no_fetch) ... ok\ntest_force_refetches_within_ttl (test_version_check.CheckTests.test_force_refetches_within_ttl) ... ok\ntest_network_failure_is_fail_open (test_version_check.CheckTests.test_network_failure_is_fail_open) ... ok\ntest_no_update_when_current (test_version_check.CheckTests.test_no_update_when_current) ... ok\ntest_status_is_cache_only_no_fetch (test_version_check.CheckTests.test_status_is_cache_only_no_fetch) ... ok\ntest_ttl_cache_avoids_refetch (test_version_check.CheckTests.test_ttl_cache_avoids_refetch) ... ok\ntest_ttl_expiry_refetches (test_version_check.CheckTests.test_ttl_expiry_refetches) ... ok\ntest_update_available_when_npm_is_ahead (test_version_check.CheckTests.test_update_available_when_npm_is_ahead) ... ok\ntest_status_cli_exits_zero (test_version_check.CliTests.test_status_cli_exits_zero) ... ok\ntest_default_ttl_is_responsive_not_a_day (test_version_check.FreshnessTests.test_default_ttl_is_responsive_not_a_day) ... ok\ntest_fetch_latest_accepts_a_timeout (test_version_check.FreshnessTests.test_fetch_latest_accepts_a_timeout) ... ok\ntest_nudge_refreshes_in_session_not_cache_only (test_version_check.FreshnessTests.test_nudge_refreshes_in_session_not_cache_only) ... ok\ntest_registry_default_ttl_matches (test_version_check.FreshnessTests.test_registry_default_ttl_matches) ... ok\ntest_semver_ordering (test_version_check.ParseTests.test_semver_ordering) ... ok\ntest_set_enabled_writes_config (test_version_check.ToggleTests.test_set_enabled_writes_config) ... ok\ntest_config_has_version_check_default_on (test_version_check.WiringTests.test_config_has_version_check_default_on) ... ok\ntest_nudge_surfaces_update_available (test_version_check.WiringTests.test_nudge_surfaces_update_available) ... ok\ntest_prd_version_command_exists (test_version_check.WiringTests.test_prd_version_command_exists) ... ok\ntest_script_registered_downstream (test_version_check.WiringTests.test_script_registered_downstream) ... ok\ntest_plan_cli_emits_json (test_wiki_backfill.CliTests.test_plan_cli_emits_json) ... ok\ntest_status_cli (test_wiki_backfill.CliTests.test_status_cli) ... ok\ntest_marker_written_for_established_repo_gaining_wiki (test_wiki_backfill.InstallerMarkerTests.test_marker_written_for_established_repo_gaining_wiki) ... ok\ntest_no_marker_for_empty_scaffold (test_wiki_backfill.InstallerMarkerTests.test_no_marker_for_empty_scaffold) ... ok\ntest_no_marker_when_wiki_already_exists (test_wiki_backfill.InstallerMarkerTests.test_no_marker_when_wiki_already_exists) ... ok\ntest_no_marker_when_wiki_disabled (test_wiki_backfill.InstallerMarkerTests.test_no_marker_when_wiki_disabled) ... ok\ntest_pending_false_when_absent (test_wiki_backfill.StatusTests.test_pending_false_when_absent) ... ok\ntest_pending_false_when_wiki_already_exists (test_wiki_backfill.StatusTests.test_pending_false_when_wiki_already_exists) ... ok\ntest_pending_true_when_marker_present (test_wiki_backfill.StatusTests.test_pending_true_when_marker_present) ... ok\ntest_plan_excludes_generated_report_artifacts (test_wiki_backfill.SurveyPlanTests.test_plan_excludes_generated_report_artifacts)\nrequest-report/ (incl. its calibration report trees) and docs/evidence/ ... ok\ntest_plan_excludes_plugin_and_vendor_noise (test_wiki_backfill.SurveyPlanTests.test_plan_excludes_plugin_and_vendor_noise) ... ok\ntest_plan_inventories_code_docs_and_state (test_wiki_backfill.SurveyPlanTests.test_plan_inventories_code_docs_and_state) ... ok\ntest_plan_is_read_only (test_wiki_backfill.SurveyPlanTests.test_plan_is_read_only) ... ok\ntest_wiki_drift_in_on_stop_and_default_sets (test_wiki_backfill.WikiDriftMonitorWiringTests.test_wiki_drift_in_on_stop_and_default_sets) ... ok\ntest_current_article_no_drift (test_wiki_backfill.WikiDriftTests.test_current_article_no_drift) ... ok\ntest_drift_cli (test_wiki_backfill.WikiDriftTests.test_drift_cli) ... ok\ntest_far_behind_article_flagged (test_wiki_backfill.WikiDriftTests.test_far_behind_article_flagged) ... ok\ntest_no_wiki_is_ok (test_wiki_backfill.WikiDriftTests.test_no_wiki_is_ok) ... ok\ntest_unlinked_markdown_reference_is_part_of_wiki_drift (test_wiki_backfill.WikiDriftTests.test_unlinked_markdown_reference_is_part_of_wiki_drift) ... ok\ntest_unstamped_article_flagged (test_wiki_backfill.WikiDriftTests.test_unstamped_article_flagged) ... ok\ntest_wiki_drift_uses_configured_wiki_directory (test_wiki_backfill.WikiDriftTests.test_wiki_drift_uses_configured_wiki_directory) ... ok\ntest_ambiguous_reference_is_reported_but_never_guessed (test_wiki_backfill.WikiInlineMarkdownLinkTests.test_ambiguous_reference_is_reported_but_never_guessed) ... ok\ntest_cli_check_fails_and_fix_then_passes (test_wiki_backfill.WikiInlineMarkdownLinkTests.test_cli_check_fails_and_fix_then_passes) ... ok\ntest_existing_inline_links_and_fenced_examples_are_not_findings (test_wiki_backfill.WikiInlineMarkdownLinkTests.test_existing_inline_links_and_fenced_examples_are_not_findings) ... ok\ntest_fix_rewrites_only_unambiguous_references_to_relative_inline_links (test_wiki_backfill.WikiInlineMarkdownLinkTests.test_fix_rewrites_only_unambiguous_references_to_relative_inline_links) ... ok\ntest_reports_resolvable_bare_and_code_wrapped_markdown_references (test_wiki_backfill.WikiInlineMarkdownLinkTests.test_reports_resolvable_bare_and_code_wrapped_markdown_references) ... ok\ntest_nudge_surfaces_pending_backfill (test_wiki_backfill.WiringTests.test_nudge_surfaces_pending_backfill) ... ok\ntest_script_registered_downstream (test_wiki_backfill.WiringTests.test_script_registered_downstream) ... ok\ntest_skill_has_backfill_mode (test_wiki_backfill.WiringTests.test_skill_has_backfill_mode) ... ok\ntest_copy_and_download_controls_are_wired (test_wiki_html_export.WikiHtmlExportTests.test_copy_and_download_controls_are_wired) ... ok\ntest_default_output_lands_in_the_local_runtime_dir (test_wiki_html_export.WikiHtmlExportTests.test_default_output_lands_in_the_local_runtime_dir) ... ok\ntest_every_page_is_embedded_with_exact_markdown (test_wiki_html_export.WikiHtmlExportTests.test_every_page_is_embedded_with_exact_markdown) ... ok\ntest_export_all_generates_viewers_and_super_index (test_wiki_html_export.WikiHtmlExportTests.test_export_all_generates_viewers_and_super_index) ... ok\ntest_export_is_one_self_contained_offline_file (test_wiki_html_export.WikiHtmlExportTests.test_export_is_one_self_contained_offline_file) ... ok\ntest_guest_repo_viewer_is_hosted_by_the_host_repo (test_wiki_html_export.WikiHtmlExportTests.test_guest_repo_viewer_is_hosted_by_the_host_repo)\nA repo without .prd_plugin gets NO new files in its own tree; its ... ok\ntest_hub_repo_exports_all_pages (test_wiki_html_export.WikiHtmlExportTests.test_hub_repo_exports_all_pages) ... ok\ntest_parse_wiki_log_extracts_dated_entries_with_bodies (test_wiki_html_export.WikiHtmlExportTests.test_parse_wiki_log_extracts_dated_entries_with_bodies)\nREQ-112: every workspace log follows '## [date] mode | text'. ... ok\ntest_parse_wiki_log_tolerates_missing_log (test_wiki_html_export.WikiHtmlExportTests.test_parse_wiki_log_tolerates_missing_log) ... ok\ntest_script_content_cannot_break_the_payload (test_wiki_html_export.WikiHtmlExportTests.test_script_content_cannot_break_the_payload) ... ok\ntest_super_index_has_a_combined_changelog (test_wiki_html_export.WikiHtmlExportTests.test_super_index_has_a_combined_changelog) ... ok\ntest_super_index_reports_page_counts (test_wiki_html_export.WikiHtmlExportTests.test_super_index_reports_page_counts) ... ok\ntest_workspace_discovery_uses_the_wiki_convention_marker (test_wiki_html_export.WikiHtmlExportTests.test_workspace_discovery_uses_the_wiki_convention_marker)\nREQ-110 + REQ-111: any immediate child whose wiki follows the ... ok\ntest_a_repo_without_a_wiki_is_not_in_drift (test_wiki_ingest_drift.DetectionTests.test_a_repo_without_a_wiki_is_not_in_drift)\nNo wiki is a legitimate state, not a failure to ingest. ... ok\ntest_fully_ingested_repo_is_clean (test_wiki_ingest_drift.DetectionTests.test_fully_ingested_repo_is_clean) ... ok\ntest_malformed_state_degrades_rather_than_raising (test_wiki_ingest_drift.DetectionTests.test_malformed_state_degrades_rather_than_raising) ... ok\ntest_non_implemented_requests_are_never_expected_in_the_log (test_wiki_ingest_drift.DetectionTests.test_non_implemented_requests_are_never_expected_in_the_log) ... ok\ntest_only_work_since_the_last_ingest_is_actionable (test_wiki_ingest_drift.DetectionTests.test_only_work_since_the_last_ingest_is_actionable)\nRaw counting flags pre-wiki history as drift � ~70 items in the hub, ... ok\ntest_reports_implemented_requests_absent_from_the_log (test_wiki_ingest_drift.DetectionTests.test_reports_implemented_requests_absent_from_the_log) ... ok\ntest_it_runs_against_this_repo_and_returns_a_usable_report (test_wiki_ingest_drift.RealRepoTests.test_it_runs_against_this_repo_and_returns_a_usable_report)\nGrounded against real state, but NOT pinned to a specific gap: a test ... ok\ntest_prd_status_omits_it_when_clean (test_wiki_ingest_drift.SurfaceTests.test_prd_status_omits_it_when_clean) ... ok\ntest_prd_status_reports_the_drift (test_wiki_ingest_drift.SurfaceTests.test_prd_status_reports_the_drift) ... ok\ntest_this_repos_wiki_reads_byte_exact (test_wiki_page_contract.HubRepoSmokeTests.test_this_repos_wiki_reads_byte_exact) ... ok\ntest_list_enumerates_canonical_pages_with_titles (test_wiki_page_contract.WikiPageListTests.test_list_enumerates_canonical_pages_with_titles) ... ok\ntest_boundaries_are_hard (test_wiki_page_contract.WikiPageReadTests.test_boundaries_are_hard) ... ok\ntest_drift_remains_the_default_action (test_wiki_page_contract.WikiPageReadTests.test_drift_remains_the_default_action) ... ok\ntest_read_page_without_stamps_reports_null_provenance (test_wiki_page_contract.WikiPageReadTests.test_read_page_without_stamps_reports_null_provenance) ... ok\ntest_read_requires_a_path (test_wiki_page_contract.WikiPageReadTests.test_read_requires_a_path) ... ok\ntest_read_returns_exact_markdown_with_provenance (test_wiki_page_contract.WikiPageReadTests.test_read_returns_exact_markdown_with_provenance) ... ok\ntest_no_cp1252_unencodable_chars_in_agent_facing_tools (test_windows_console_safe.SourceScanTests.test_no_cp1252_unencodable_chars_in_agent_facing_tools) ... ok\ntest_backfill_pending_status_renders_cp1252_safe (test_windows_console_safe.StatusRenderTests.test_backfill_pending_status_renders_cp1252_safe) ... ok\ntest_json_output_escapes_non_console_characters (test_windows_console_safe.WorkflowCliRenderTests.test_json_output_escapes_non_console_characters) ... ok\ntest_repository_workflow_surfaces_are_chml_zero (test_workflow_chml_audit.WorkflowChmlAuditTests.test_repository_workflow_surfaces_are_chml_zero) ... ok\ntest_semantic_skill_finding_is_part_of_workflow_chml (test_workflow_chml_audit.WorkflowChmlAuditTests.test_semantic_skill_finding_is_part_of_workflow_chml) ... ok\ntest_git_workflow_pushes_clean_verified_commits_in_autonomous (test_workflow_consistency.AutonomyConflictResolutionTests.test_git_workflow_pushes_clean_verified_commits_in_autonomous) ... ok\ntest_request_intake_defers_autonomy_and_owns_graduation (test_workflow_consistency.AutonomyConflictResolutionTests.test_request_intake_defers_autonomy_and_owns_graduation) ... ok\ntest_evidence_pair_states_create_vs_review_boundary (test_workflow_consistency.BoundaryClarityTests.test_evidence_pair_states_create_vs_review_boundary) ... ok\ntest_session_close_states_memory_boundary (test_workflow_consistency.BoundaryClarityTests.test_session_close_states_memory_boundary) ... ok\ntest_document_branch_has_promotion_owner (test_workflow_consistency.DeadEndOwnerTests.test_document_branch_has_promotion_owner) ... ok\ntest_health_findings_have_triage_dispositions (test_workflow_consistency.DeadEndOwnerTests.test_health_findings_have_triage_dispositions) ... ok\ntest_memory_owns_schema_version_changes (test_workflow_consistency.DeadEndOwnerTests.test_memory_owns_schema_version_changes) ... ok\ntest_planning_lifecycle_has_stage_readiness_checkpoints (test_workflow_consistency.DeadEndOwnerTests.test_planning_lifecycle_has_stage_readiness_checkpoints) ... ok\ntest_session_close_runs_traceability_sync (test_workflow_consistency.DeadEndOwnerTests.test_session_close_runs_traceability_sync) ... ok\n\n----------------------------------------------------------------------\nRan 1235 tests in 124.071s\n\nOK\n"
          },
          "output_hash": "62d01929a4576b94eeb7cfeaa0d5c410af56f6686a5e5f72fe38b2de030b8c19",
          "completed_at": "2026-07-24T12:55:52Z"
        },
        {
          "id": "release",
          "action": "process.fixed",
          "status": "completed",
          "resolved_input_hash": "1e5b0c18d93eb4c2248f9a00adbd438e52f3ef02137477fb8376c69cfe86fc9b",
          "started_at": "2026-07-24T12:55:52Z",
          "output": {
            "operation": "release_check",
            "command": [
              "python",
              "scripts/release_check.py"
            ],
            "exit_code": 0,
            "stdout": "# Release Hygiene Report\n\nBase version: `0.16.51`\nHead version: `0.16.52`\nChanged files checked: 6\n\n## Findings\n\n- None\n",
            "stderr": ""
          },
          "output_hash": "572b5409034a6cf4a9e07e6019970c207157ae549838c5ff67c4ff8d790eb5a9",
          "completed_at": "2026-07-24T12:55:52Z"
        },
        {
          "id": "gaps",
          "action": "process.fixed",
          "status": "completed",
          "resolved_input_hash": "577241909238eeb55683f89d2d2216648dad2e3127397993e22493829a1307a4",
          "started_at": "2026-07-24T12:55:53Z",
          "output": {
            "operation": "gap_audit",
            "command": [
              "python",
              "scripts/gap_audit.py",
              "--target-version",
              "0.16.52",
              "--config",
              ".prd_plugin/config.json",
              "--releases",
              ".prd_plugin/state/releases.json"
            ],
            "exit_code": 0,
            "stdout": "# PRD Plugin Gap Audit\n\nTarget version: `0.16.52`\n\n## Findings\n\n- None\n",
            "stderr": ""
          },
          "output_hash": "a27151aa46f7f726af5dce611fe75f5db8d923f7a620151633742b637e97c021",
          "completed_at": "2026-07-24T12:55:53Z"
        },
        {
          "id": "package",
          "action": "process.fixed",
          "status": "completed",
          "resolved_input_hash": "06cd12e1f3db3d985f9150520afa60f288297ff0ca01a8e813e9bb6291aa8836",
          "started_at": "2026-07-24T12:55:53Z",
          "output": {
            "operation": "package_check",
            "command": [
              "npm",
              "pack",
              "--dry-run"
            ],
            "exit_code": 0,
            "stdout": "prd-plugin-0.16.52.tgz\n",
            "stderr": "te.md\nnpm notice 17.0kB templates/repo-skeleton/.agents/skills/project-llm-wiki/SKILL.md\nnpm notice 7.4kB templates/repo-skeleton/.agents/skills/project-local-integration/SKILL.md\nnpm notice 8.1kB templates/repo-skeleton/.agents/skills/project-memory/SKILL.md\nnpm notice 6.2kB templates/repo-skeleton/.agents/skills/project-planning-lifecycle/SKILL.md\nnpm notice 6.0kB templates/repo-skeleton/.agents/skills/project-prd-plugin-setup/SKILL.md\nnpm notice 3.5kB templates/repo-skeleton/.agents/skills/project-prd/SKILL.md\nnpm notice 27.5kB templates/repo-skeleton/.agents/skills/project-request-intake/SKILL.md\nnpm notice 4.8kB templates/repo-skeleton/.agents/skills/project-session-close/SKILL.md\nnpm notice 10.3kB templates/repo-skeleton/.agents/skills/project-systematic-debugging/SKILL.md\nnpm notice 4.8kB templates/repo-skeleton/.agents/skills/project-test-driven-implementation/SKILL.md\nnpm notice 3.7kB templates/repo-skeleton/.agents/skills/project-traceability-review/SKILL.md\nnpm notice 2.5kB templates/repo-skeleton/.agents/skills/project-traceability-sync/SKILL.md\nnpm notice 6.6kB templates/repo-skeleton/.agents/skills/project-verification-before-completion/SKILL.md\nnpm notice 1.5kB templates/repo-skeleton/.agents/skills/source-command-prd-autonomy/SKILL.md\nnpm notice 1.2kB templates/repo-skeleton/.agents/skills/source-command-prd-close/SKILL.md\nnpm notice 3.3kB templates/repo-skeleton/.agents/skills/source-command-prd-config/SKILL.md\nnpm notice 2.4kB templates/repo-skeleton/.agents/skills/source-command-prd-drift/SKILL.md\nnpm notice 2.1kB templates/repo-skeleton/.agents/skills/source-command-prd-graph/SKILL.md\nnpm notice 2.2kB templates/repo-skeleton/.agents/skills/source-command-prd-hooks/SKILL.md\nnpm notice 1.3kB templates/repo-skeleton/.agents/skills/source-command-prd-new/SKILL.md\nnpm notice 2.0kB templates/repo-skeleton/.agents/skills/source-command-prd-off/SKILL.md\nnpm notice 1.5kB templates/repo-skeleton/.agents/skills/source-command-prd-on/SKILL.md\nnpm notice 2.3kB templates/repo-skeleton/.agents/skills/source-command-prd-reflections/SKILL.md\nnpm notice 2.5kB templates/repo-skeleton/.agents/skills/source-command-prd-report/SKILL.md\nnpm notice 1.2kB templates/repo-skeleton/.agents/skills/source-command-prd-status/SKILL.md\nnpm notice 1.7kB templates/repo-skeleton/.agents/skills/source-command-prd-track/SKILL.md\nnpm notice 1.8kB templates/repo-skeleton/.agents/skills/source-command-prd-version/SKILL.md\nnpm notice 1.7kB templates/repo-skeleton/.agents/skills/source-command-prd-workflow/SKILL.md\nnpm notice 763B templates/repo-skeleton/.claude-plugin/plugin.json\nnpm notice 772B templates/repo-skeleton/.claude/commands/prd-autonomy.md\nnpm notice 493B templates/repo-skeleton/.claude/commands/prd-close.md\nnpm notice 2.5kB templates/repo-skeleton/.claude/commands/prd-config.md\nnpm notice 1.6kB templates/repo-skeleton/.claude/commands/prd-drift.md\nnpm notice 1.4kB templates/repo-skeleton/.claude/commands/prd-graph.md\nnpm notice 1.6kB templates/repo-skeleton/.claude/commands/prd-hooks.md\nnpm notice 639B templates/repo-skeleton/.claude/commands/prd-new.md\nnpm notice 1.4kB templates/repo-skeleton/.claude/commands/prd-off.md\nnpm notice 862B templates/repo-skeleton/.claude/commands/prd-on.md\nnpm notice 1.6kB templates/repo-skeleton/.claude/commands/prd-reflections.md\nnpm notice 1.8kB templates/repo-skeleton/.claude/commands/prd-report.md\nnpm notice 549B templates/repo-skeleton/.claude/commands/prd-status.md\nnpm notice 974B templates/repo-skeleton/.claude/commands/prd-track.md\nnpm notice 1.0kB templates/repo-skeleton/.claude/commands/prd-version.md\nnpm notice 938B templates/repo-skeleton/.claude/commands/prd-workflow.md\nnpm notice 1.6kB templates/repo-skeleton/.claude/hooks/prd_drift_check.py\nnpm notice 2.0kB templates/repo-skeleton/.claude/hooks/prd_log_skill.py\nnpm notice 4.1kB templates/repo-skeleton/.claude/hooks/prd_nudge.py\nnpm notice 3.7kB templates/repo-skeleton/.claude/hooks/prd_precommit_gate.py\nnpm notice 6.1kB templates/repo-skeleton/.claude/hooks/prd_reflection.py\nnpm notice 3.5kB templates/repo-skeleton/.claude/hooks/prd_session_report.py\nnpm notice 15.8kB templates/repo-skeleton/.claude/hooks/prd_stop_guard.py\nnpm notice 1.2kB templates/repo-skeleton/.claude/settings.json\nnpm notice 3.0kB templates/repo-skeleton/.claude/skills/project-architecture/SKILL.md\nnpm notice 7.4kB templates/repo-skeleton/.claude/skills/project-blocker-resolution/SKILL.md\nnpm notice 2.8kB templates/repo-skeleton/.claude/skills/project-brainstorm/SKILL.md\nnpm notice 5.5kB templates/repo-skeleton/.claude/skills/project-change-request/SKILL.md\nnpm notice 6.3kB templates/repo-skeleton/.claude/skills/project-code-review/SKILL.md\nnpm notice 2.7kB templates/repo-skeleton/.claude/skills/project-decision-ledger/SKILL.md\nnpm notice 23.6kB templates/repo-skeleton/.claude/skills/project-decision-policy/SKILL.md\nnpm notice 4.4kB templates/repo-skeleton/.claude/skills/project-deterministic-workflows/SKILL.md\nnpm notice 5.2kB templates/repo-skeleton/.claude/skills/project-document-branch/SKILL.md\nnpm notice 2.8kB templates/repo-skeleton/.claude/skills/project-evidence-ledger/SKILL.md\nnpm notice 3.3kB templates/repo-skeleton/.claude/skills/project-evidence/SKILL.md\nnpm notice 11.9kB templates/repo-skeleton/.claude/skills/project-git-workflow/SKILL.md\nnpm notice 7.4kB templates/repo-skeleton/.claude/skills/project-health/SKILL.md\nnpm notice 6.0kB templates/repo-skeleton/.claude/skills/project-implementation-plan/SKILL.md\nnpm notice 1.1kB templates/repo-skeleton/.claude/skills/project-llm-wiki/LICENSE\nnpm notice 842B templates/repo-skeleton/.claude/skills/project-llm-wiki/references/archive-template.md\nnpm notice 843B templates/repo-skeleton/.claude/skills/project-llm-wiki/references/article-template.md\nnpm notice 559B templates/repo-skeleton/.claude/skills/project-llm-wiki/references/index-template.md\nnpm notice 317B templates/repo-skeleton/.claude/skills/project-llm-wiki/references/raw-template.md\nnpm notice 17.0kB templates/repo-skeleton/.claude/skills/project-llm-wiki/SKILL.md\nnpm notice 7.4kB templates/repo-skeleton/.claude/skills/project-local-integration/SKILL.md\nnpm notice 8.1kB templates/repo-skeleton/.claude/skills/project-memory/SKILL.md\nnpm notice 6.2kB templates/repo-skeleton/.claude/skills/project-planning-lifecycle/SKILL.md\nnpm notice 6.0kB templates/repo-skeleton/.claude/skills/project-prd-plugin-setup/SKILL.md\nnpm notice 3.5kB templates/repo-skeleton/.claude/skills/project-prd/SKILL.md\nnpm notice 27.5kB templates/repo-skeleton/.claude/skills/project-request-intake/SKILL.md\nnpm notice 4.8kB templates/repo-skeleton/.claude/skills/project-session-close/SKILL.md\nnpm notice 10.3kB templates/repo-skeleton/.claude/skills/project-systematic-debugging/SKILL.md\nnpm notice 4.8kB templates/repo-skeleton/.claude/skills/project-test-driven-implementation/SKILL.md\nnpm notice 3.7kB templates/repo-skeleton/.claude/skills/project-traceability-review/SKILL.md\nnpm notice 2.5kB templates/repo-skeleton/.claude/skills/project-traceability-sync/SKILL.md\nnpm notice 6.6kB templates/repo-skeleton/.claude/skills/project-verification-before-completion/SKILL.md\nnpm notice 1.5kB templates/repo-skeleton/.claude/skills/source-command-prd-autonomy/SKILL.md\nnpm notice 1.2kB templates/repo-skeleton/.claude/skills/source-command-prd-close/SKILL.md\nnpm notice 3.3kB templates/repo-skeleton/.claude/skills/source-command-prd-config/SKILL.md\nnpm notice 2.4kB templates/repo-skeleton/.claude/skills/source-command-prd-drift/SKILL.md\nnpm notice 2.1kB templates/repo-skeleton/.claude/skills/source-command-prd-graph/SKILL.md\nnpm notice 2.2kB templates/repo-skeleton/.claude/skills/source-command-prd-hooks/SKILL.md\nnpm notice 1.3kB templates/repo-skeleton/.claude/skills/source-command-prd-new/SKILL.md\nnpm notice 2.0kB templates/repo-skeleton/.claude/skills/source-command-prd-off/SKILL.md\nnpm notice 1.5kB templates/repo-skeleton/.claude/skills/source-command-prd-on/SKILL.md\nnpm notice 2.3kB templates/repo-skeleton/.claude/skills/source-command-prd-reflections/SKILL.md\nnpm notice 2.5kB templates/repo-skeleton/.claude/skills/source-command-prd-report/SKILL.md\nnpm notice 1.2kB templates/repo-skeleton/.claude/skills/source-command-prd-status/SKILL.md\nnpm notice 1.7kB templates/repo-skeleton/.claude/skills/source-command-prd-track/SKILL.md\nnpm notice 1.8kB templates/repo-skeleton/.claude/skills/source-command-prd-version/SKILL.md\nnpm notice 1.7kB templates/repo-skeleton/.claude/skills/source-command-prd-workflow/SKILL.md\nnpm notice 3.2kB templates/repo-skeleton/.codex-plugin/plugin.json\nnpm notice 3.3kB templates/repo-skeleton/.codex/hooks.json\nnpm notice 743B templates/repo-skeleton/.githooks/pre-commit\nnpm notice 734B templates/repo-skeleton/.github/workflows/prd-gate.yml\nnpm notice 3.2kB templates/repo-skeleton/.opencode/plugin.json\nnpm notice 4.3kB templates/repo-skeleton/.opencode/plugins/prd-hooks.js\nnpm notice 3.0kB templates/repo-skeleton/.opencode/skill/project-architecture/SKILL.md\nnpm notice 7.4kB templates/repo-skeleton/.opencode/skill/project-blocker-resolution/SKILL.md\nnpm notice 2.8kB templates/repo-skeleton/.opencode/skill/project-brainstorm/SKILL.md\nnpm notice 5.5kB templates/repo-skeleton/.opencode/skill/project-change-request/SKILL.md\nnpm notice 6.3kB templates/repo-skeleton/.opencode/skill/project-code-review/SKILL.md\nnpm notice 2.7kB templates/repo-skeleton/.opencode/skill/project-decision-ledger/SKILL.md\nnpm notice 23.6kB templates/repo-skeleton/.opencode/skill/project-decision-policy/SKILL.md\nnpm notice 4.4kB templates/repo-skeleton/.opencode/skill/project-deterministic-workflows/SKILL.md\nnpm notice 5.2kB templates/repo-skeleton/.opencode/skill/project-document-branch/SKILL.md\nnpm notice 2.8kB templates/repo-skeleton/.opencode/skill/project-evidence-ledger/SKILL.md\nnpm notice 3.3kB templates/repo-skeleton/.opencode/skill/project-evidence/SKILL.md\nnpm notice 11.9kB templates/repo-skeleton/.opencode/skill/project-git-workflow/SKILL.md\nnpm notice 7.4kB templates/repo-skeleton/.opencode/skill/project-health/SKILL.md\nnpm notice 6.0kB templates/repo-skeleton/.opencode/skill/project-implementation-plan/SKILL.md\nnpm notice 1.1kB templates/repo-skeleton/.opencode/skill/project-llm-wiki/LICENSE\nnpm notice 842B templates/repo-skeleton/.opencode/skill/project-llm-wiki/references/archive-template.md\nnpm notice 843B templates/repo-skeleton/.opencode/skill/project-llm-wiki/references/article-template.md\nnpm notice 559B templates/repo-skeleton/.opencode/skill/project-llm-wiki/references/index-template.md\nnpm notice 317B templates/repo-skeleton/.opencode/skill/project-llm-wiki/references/raw-template.md\nnpm notice 17.0kB templates/repo-skeleton/.opencode/skill/project-llm-wiki/SKILL.md\nnpm notice 7.4kB templates/repo-skeleton/.opencode/skill/project-local-integration/SKILL.md\nnpm notice 8.1kB templates/repo-skeleton/.opencode/skill/project-memory/SKILL.md\nnpm notice 6.2kB templates/repo-skeleton/.opencode/skill/project-planning-lifecycle/SKILL.md\nnpm notice 6.0kB templates/repo-skeleton/.opencode/skill/project-prd-plugin-setup/SKILL.md\nnpm notice 3.5kB templates/repo-skeleton/.opencode/skill/project-prd/SKILL.md\nnpm notice 27.5kB templates/repo-skeleton/.opencode/skill/project-request-intake/SKILL.md\nnpm notice 4.8kB templates/repo-skeleton/.opencode/skill/project-session-close/SKILL.md\nnpm notice 10.3kB templates/repo-skeleton/.opencode/skill/project-systematic-debugging/SKILL.md\nnpm notice 4.8kB templates/repo-skeleton/.opencode/skill/project-test-driven-implementation/SKILL.md\nnpm notice 3.7kB templates/repo-skeleton/.opencode/skill/project-traceability-review/SKILL.md\nnpm notice 2.5kB templates/repo-skeleton/.opencode/skill/project-traceability-sync/SKILL.md\nnpm notice 6.6kB templates/repo-skeleton/.opencode/skill/project-verification-before-completion/SKILL.md\nnpm notice 1.5kB templates/repo-skeleton/.opencode/skill/source-command-prd-autonomy/SKILL.md\nnpm notice 1.2kB templates/repo-skeleton/.opencode/skill/source-command-prd-close/SKILL.md\nnpm notice 3.3kB templates/repo-skeleton/.opencode/skill/source-command-prd-config/SKILL.md\nnpm notice 2.4kB templates/repo-skeleton/.opencode/skill/source-command-prd-drift/SKILL.md\nnpm notice 2.1kB templates/repo-skeleton/.opencode/skill/source-command-prd-graph/SKILL.md\nnpm notice 2.2kB templates/repo-skeleton/.opencode/skill/source-command-prd-hooks/SKILL.md\nnpm notice 1.3kB templates/repo-skeleton/.opencode/skill/source-command-prd-new/SKILL.md\nnpm notice 2.0kB templates/repo-skeleton/.opencode/skill/source-command-prd-off/SKILL.md\nnpm notice 1.5kB templates/repo-skeleton/.opencode/skill/source-command-prd-on/SKILL.md\nnpm notice 2.3kB templates/repo-skeleton/.opencode/skill/source-command-prd-reflections/SKILL.md\nnpm notice 2.5kB templates/repo-skeleton/.opencode/skill/source-command-prd-report/SKILL.md\nnpm notice 1.2kB templates/repo-skeleton/.opencode/skill/source-command-prd-status/SKILL.md\nnpm notice 1.7kB templates/repo-skeleton/.opencode/skill/source-command-prd-track/SKILL.md\nnpm notice 1.8kB templates/repo-skeleton/.opencode/skill/source-command-prd-version/SKILL.md\nnpm notice 1.7kB templates/repo-skeleton/.opencode/skill/source-command-prd-workflow/SKILL.md\nnpm notice 14.8kB templates/repo-skeleton/.prd_plugin/config.json\nnpm notice 1.6kB templates/repo-skeleton/.prd_plugin/hooks/prd_drift_check.py\nnpm notice 11.9kB templates/repo-skeleton/.prd_plugin/hooks/prd_hook_dispatch.py\nnpm notice 2.0kB templates/repo-skeleton/.prd_plugin/hooks/prd_log_skill.py\nnpm notice 4.1kB templates/repo-skeleton/.prd_plugin/hooks/prd_nudge.py\nnpm notice 3.7kB templates/repo-skeleton/.prd_plugin/hooks/prd_precommit_gate.py\nnpm notice 26.7kB templates/repo-skeleton/.prd_plugin/hooks/prd_reason_guard.py\nnpm notice 6.1kB templates/repo-skeleton/.prd_plugin/hooks/prd_reflection.py\nnpm notice 3.5kB templates/repo-skeleton/.prd_plugin/hooks/prd_session_report.py\nnpm notice 15.8kB templates/repo-skeleton/.prd_plugin/hooks/prd_stop_guard.py\nnpm notice 8.0kB templates/repo-skeleton/.prd_plugin/hooks/prd_test_scope_guard.py\nnpm notice 3.7kB templates/repo-skeleton/.prd_plugin/ID-SCHEME.md\nnpm notice 581B templates/repo-skeleton/.prd_plugin/ids/registry.json\nnpm notice 12.6kB templates/repo-skeleton/.prd_plugin/METHOD.md\nnpm notice 725B templates/repo-skeleton/.prd_plugin/method/artifact-format.md\nnpm notice 1.5kB templates/repo-skeleton/.prd_plugin/method/completion-gate.md\nnpm notice 3.6kB templates/repo-skeleton/.prd_plugin/method/deterministic-workflows.md\nnpm notice 1.2kB templates/repo-skeleton/.prd_plugin/method/estimation.md\nnpm notice 2.1kB templates/repo-skeleton/.prd_plugin/method/grounding.md\nnpm notice 3.2kB templates/repo-skeleton/.prd_plugin/method/reporting.md\nnpm notice 4.1kB templates/repo-skeleton/.prd_plugin/method/self-service.md\nnpm notice 1.6kB templates/repo-skeleton/.prd_plugin/method/staleness-rules.md\nnpm notice 1.0kB templates/repo-skeleton/.prd_plugin/method/state-validation.md\nnpm notice 3.0kB templates/repo-skeleton/.prd_plugin/method/subagents.md\nnpm notice 1.3kB templates/repo-skeleton/.prd_plugin/services.json\nnpm notice 47B templates/repo-skeleton/.prd_plugin/state/changelog.json\nnpm notice 49B templates/repo-skeleton/.prd_plugin/state/decisions.json\nnpm notice 157B templates/repo-skeleton/.prd_plugin/state/health.json\nnpm notice 47B templates/repo-skeleton/.prd_plugin/state/memory.json\nnpm notice 287B templates/repo-skeleton/.prd_plugin/state/project.json\nnpm notice 48B templates/repo-skeleton/.prd_plugin/state/releases.json\nnpm notice 48B templates/repo-skeleton/.prd_plugin/state/requests.json\nnpm notice 214B templates/repo-skeleton/.prd_plugin/state/sessions/shared/promoted-session-summaries.jsonl\nnpm notice 49B templates/repo-skeleton/.prd_plugin/state/substrate-links.json\nnpm notice 51B templates/repo-skeleton/.prd_plugin/state/tracking.json\nnpm notice 48B templates/repo-skeleton/.prd_plugin/state/workflow-runs.json\nnpm notice 167B templates/repo-skeleton/.prd_plugin/templates/architecture-delta.md\nnpm notice 1.4kB templates/repo-skeleton/.prd_plugin/templates/architecture.json\nnpm notice 368B templates/repo-skeleton/.prd_plugin/templates/brainstorm.md\nnpm notice 274B templates/repo-skeleton/.prd_plugin/templates/changelog.json\nnpm notice 15.0kB templates/repo-skeleton/.prd_plugin/templates/config.json\nnpm notice 265B templates/repo-skeleton/.prd_plugin/templates/decision-record.md\nnpm notice 398B templates/repo-skeleton/.prd_plugin/templates/decisions.json\nnpm notice 372B templates/repo-skeleton/.prd_plugin/templates/doc-branch.json\nnpm notice 313B templates/repo-skeleton/.prd_plugin/templates/doc-branch.md\nnpm notice 115B templates/repo-skeleton/.prd_plugin/templates/evidence.md\nnpm notice 249B templates/repo-skeleton/.prd_plugin/templates/handoff.json\nnpm notice 407B templates/repo-skeleton/.prd_plugin/templates/health.json\nnpm notice 695B templates/repo-skeleton/.prd_plugin/templates/human-exports/architecture.md\nnpm notice 626B templates/repo-skeleton/.prd_plugin/templates/human-exports/implementation-plan.md\nnpm notice 580B templates/repo-skeleton/.prd_plugin/templates/human-exports/prd.md\nnpm notice 1.4kB templates/repo-skeleton/.prd_plugin/templates/implementation-plan.json\nnpm notice 65B templates/repo-skeleton/.prd_plugin/templates/mailbox.json\nnpm notice 348B templates/repo-skeleton/.prd_plugin/templates/memory.json\nnpm notice 471B templates/repo-skeleton/.prd_plugin/templates/merge-checklist.md\nnpm notice 163B templates/repo-skeleton/.prd_plugin/templates/plan-delta.md\nnpm notice 139B templates/repo-skeleton/.prd_plugin/templates/prd-delta.md\nnpm notice 1.3kB templates/repo-skeleton/.prd_plugin/templates/prd.json\nnpm notice 455B templates/repo-skeleton/.prd_plugin/templates/project.json\nnpm notice 125B templates/repo-skeleton/.prd_plugin/templates/promoted-session-summary.jsonl\nnpm notice 923B templates/repo-skeleton/.prd_plugin/templates/releases.json\nnpm notice 1.4kB templates/repo-skeleton/.prd_plugin/templates/request.json\nnpm notice 1.7kB templates/repo-skeleton/.prd_plugin/templates/requests.json\nnpm notice 23.1kB templates/repo-skeleton/.prd_plugin/templates/script-install-scope.json\nnpm notice 235B templates/repo-skeleton/.prd_plugin/templates/session.json\nnpm notice 15.6kB templates/repo-skeleton/.prd_plugin/templates/skill-install-scope.json\nnpm notice 317B templates/repo-skeleton/.prd_plugin/templates/submission-package.json\nnpm notice 5.7kB templates/repo-skeleton/.prd_plugin/templates/tool-surface.json\nnpm notice 225B templates/repo-skeleton/.prd_plugin/templates/traceability-matrix.md\nnpm notice 321B templates/repo-skeleton/.prd_plugin/templates/tracking.json\nnpm notice 375B templates/repo-skeleton/.prd_plugin/templates/utcp-config.json\nnpm notice 22.2kB templates/repo-skeleton/.prd_plugin/workflows.json\nnpm notice 14.5kB templates/repo-skeleton/AGENTS.md\nnpm notice 10.8kB templates/repo-skeleton/CLAUDE.md\nnpm notice 12.0kB templates/repo-skeleton/docs/INSTALL-MATRIX.md\nnpm notice 2.7kB templates/repo-skeleton/hooks/hooks.json\nnpm notice 1.4kB templates/request.json\nnpm notice 1.7kB templates/requests.json\nnpm notice 23.1kB templates/script-install-scope.json\nnpm notice 1.3kB templates/services.json\nnpm notice 235B templates/session.json\nnpm notice 15.6kB templates/skill-install-scope.json\nnpm notice 317B templates/submission-package.json\nnpm notice 10.4kB templates/substrate-capabilities.json\nnpm notice 48.5kB templates/tool-spec.json\nnpm notice 7.9kB templates/tool-surface.json\nnpm notice 225B templates/traceability-matrix.md\nnpm notice 321B templates/tracking.json\nnpm notice 375B templates/utcp-config.json\nnpm notice 22.2kB templates/workflows.json\nnpm notice Tarball Details\nnpm notice name: prd-plugin\nnpm notice version: 0.16.52\nnpm notice filename: prd-plugin-0.16.52.tgz\nnpm notice package size: 1.6 MB\nnpm notice unpacked size: 10.3 MB\nnpm notice shasum: 109e11534e3fa19be8f277d5011db21ac2e0ffbc\nnpm notice integrity: sha512-T849EWkT9Djl1[...]7do4/+oNIeV6Q==\nnpm notice total files: 642\nnpm notice\n"
          },
          "output_hash": "e5eac35d70ff4b77ee0035cf4a31efb0aad629a36d82c00cf3d267203b07b117",
          "completed_at": "2026-07-24T12:55:55Z"
        },
        {
          "id": "gate",
          "action": "state.gate",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-24T12:55:55Z",
          "output": {
            "status": "attention",
            "repo_root": "D:\\Projects\\prd-plugin",
            "summary": {
              "errors": 0,
              "warnings": 0
            },
            "findings": [
              {
                "check": "state_consistency",
                "severity": "info",
                "summary": "File references 2 canonical IDs across 2 prefix(es); treated as a positive signal of extra work.",
                "required_action": "No action required; this is an informational signal."
              }
            ]
          },
          "output_hash": "6a0ed3d65779be265214a0e8395ab03978b9f7b91da9ffb59b257b73f82d087d",
          "completed_at": "2026-07-24T12:55:56Z"
        }
      ],
      "completed_at": "2026-07-24T12:55:56Z"
    },
    {
      "id": "WFR-405",
      "schema_version": "1.0",
      "workflow_id": "request.intake",
      "workflow_version": 1,
      "definition_hash": "b61272f54c5d4778a27afe601feaae39057f75fac2c289858b6caf5f3b2a4fbe",
      "plan_hash": "84e445ca60cabb3fe98d038b61572fba6e672d03bfdd154c66caf02dfdbfb1fa",
      "input_hash": "c4e1975b0822ec4c0b8d18e99d4e7c83fc637cbe417e127b380a8a437b59eab0",
      "inputs": {
        "summary": "Fix Reasoning Guard Codex coverage so visible reasoning summaries are mapped and retained across events",
        "request_type": "bug",
        "severity": "medium",
        "scope": "upstream",
        "rationale": "Codex produces visible reasoning-summary events, but the hook bridge forwards raw event payloads without mapping them; the guard recognizes only an exact top-level reasoning_summary field and overwrites session coverage from each latest event, so later tool events falsely downgrade coverage.",
        "affected_areas": [
          ".prd_plugin/hooks/prd_reason_guard.py",
          ".prd_plugin/hooks/prd_hook_dispatch.py",
          ".codex/hooks.json",
          "templates/repo-skeleton",
          "tests/test_reason_guard.py",
          "docs/REASONING-GUARD.md"
        ],
        "expected_behavior": "The guard must recognize supported visible Codex reasoning-summary shapes without accessing private chain-of-thought, preserve cumulative session coverage across events, distinguish current-event coverage from session coverage, and keep Claude/OpenCode behavior compatible."
      },
      "idempotency_key": "reason-guard-codex-summary-coverage-20260724",
      "status": "completed",
      "attempt": 1,
      "created_at": "2026-07-24T17:33:22Z",
      "updated_at": "2026-07-24T17:33:24Z",
      "receipts": [
        {
          "step_id": "create",
          "action": "state.mutate",
          "input_hash": "0b0c32da08bc8888a932b582c45c72990d76005ed25233776bc3fc7c43799d1e",
          "output_hash": "3d796d8568a92500770fb0d3ec1feece617bb054d69511132504d575c410e0d4",
          "completed_at": "2026-07-24T17:33:23Z"
        },
        {
          "step_id": "confirm",
          "action": "state.query",
          "input_hash": "bcbbe1f86ae35ce68ec5c293a24217c556ab6e6f4c4f4e894f7aad6d70d89b11",
          "output_hash": "e51e98222b869df4122fb35e695d8f79c23cd79ed94c81dde931a30690bee19a",
          "completed_at": "2026-07-24T17:33:23Z"
        }
      ],
      "steps": [
        {
          "id": "create",
          "action": "state.mutate",
          "status": "completed",
          "resolved_input_hash": "0b0c32da08bc8888a932b582c45c72990d76005ed25233776bc3fc7c43799d1e",
          "started_at": "2026-07-24T17:33:22Z",
          "execution_token": "bf85825c3a8539fc9ddd15fe54ff72d2ef7415be920621b73a0b21e1a1d54663",
          "output": {
            "id": "REQ-172",
            "status": "proposed"
          },
          "output_hash": "3d796d8568a92500770fb0d3ec1feece617bb054d69511132504d575c410e0d4",
          "completed_at": "2026-07-24T17:33:23Z"
        },
        {
          "id": "confirm",
          "action": "state.query",
          "status": "completed",
          "resolved_input_hash": "bcbbe1f86ae35ce68ec5c293a24217c556ab6e6f4c4f4e894f7aad6d70d89b11",
          "started_at": "2026-07-24T17:33:23Z",
          "output": {
            "kind": "REQ",
            "record": {
              "id": "REQ-172",
              "status": "proposed",
              "request_type": "bug",
              "scope": "upstream",
              "visibility": "repo",
              "summary": "Fix Reasoning Guard Codex coverage so visible reasoning summaries are mapped and retained across events",
              "severity": "medium",
              "requested_by_agent": "AGENT-MCP",
              "created_at": "2026-07-24",
              "rationale": "Codex produces visible reasoning-summary events, but the hook bridge forwards raw event payloads without mapping them; the guard recognizes only an exact top-level reasoning_summary field and overwrites session coverage from each latest event, so later tool events falsely downgrade coverage.",
              "affected_areas": [
                ".prd_plugin/hooks/prd_reason_guard.py",
                ".prd_plugin/hooks/prd_hook_dispatch.py",
                ".codex/hooks.json",
                "templates/repo-skeleton",
                "tests/test_reason_guard.py",
                "docs/REASONING-GUARD.md"
              ],
              "expected_behavior": "The guard must recognize supported visible Codex reasoning-summary shapes without accessing private chain-of-thought, preserve cumulative session coverage across events, distinguish current-event coverage from session coverage, and keep Claude/OpenCode behavior compatible."
            }
          },
          "output_hash": "e51e98222b869df4122fb35e695d8f79c23cd79ed94c81dde931a30690bee19a",
          "completed_at": "2026-07-24T17:33:23Z"
        }
      ],
      "completed_at": "2026-07-24T17:33:24Z"
    },
    {
      "id": "WFR-406",
      "schema_version": "1.0",
      "workflow_id": "session.start",
      "workflow_version": 1,
      "definition_hash": "dd0de9444af7b094cc93673d0844fb78c801d87d978cc5f6dd6bf3e3e863917d",
      "plan_hash": "1f4ae0cd6be8385f8a9310e49978bd8d93baa729842eb6df9243665a1b581277",
      "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
      "inputs": {},
      "idempotency_key": "reason-diagnostic-kernel-planning-session-20260724",
      "status": "completed",
      "attempt": 1,
      "created_at": "2026-07-24T18:15:56Z",
      "updated_at": "2026-07-24T18:16:02Z",
      "receipts": [
        {
          "step_id": "mailbox",
          "action": "requests.pull",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "ab8a35139cfd3f5821ebc5138c9a44c899b54e4036790654ff120e79c7ab6223",
          "completed_at": "2026-07-24T18:15:57Z"
        },
        {
          "step_id": "config",
          "action": "config.audit",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "ef2327bf3ea9c100a1a525c09e426de9703016f1b7c177b0df10c0b7cf3f33c9",
          "completed_at": "2026-07-24T18:15:57Z"
        },
        {
          "step_id": "services",
          "action": "services.audit",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "13dcc58bd528f3efa3e6e0fa0853a6eedc376f1f3685fbd4869cbb2b60382ee3",
          "completed_at": "2026-07-24T18:15:57Z"
        },
        {
          "step_id": "state",
          "action": "state.consistency",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "9963110856ca8182da0dfdbb22f6960618b55dbc121be0dce0066a7c7a389b10",
          "completed_at": "2026-07-24T18:16:01Z"
        },
        {
          "step_id": "status",
          "action": "state.query",
          "input_hash": "a15231a2142a2a9a85355a8b9cbbccffe01a9c9c2c2fd8c2bc2987cdc481564a",
          "output_hash": "7462d7dcf345e6ab09e9d9908def2ff678ddb74b9b341975e6f62d6d00b12fe3",
          "completed_at": "2026-07-24T18:16:01Z"
        },
        {
          "step_id": "substrate",
          "action": "substrate.preflight",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "a6df426290b4549a59eecaa0519ead9bcc50b7fcb25bd2185ff6047960f19ccb",
          "completed_at": "2026-07-24T18:16:01Z"
        },
        {
          "step_id": "notices",
          "action": "substrate.notices",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "38b904a1cf83df048360fb2480571b749fd98d57e11f1afdffb5a74a78166fea",
          "completed_at": "2026-07-24T18:16:02Z"
        },
        {
          "step_id": "goals",
          "action": "substrate.goals",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "cdfd4de44a28140e686159f34f7b47975954c67e1d1efcef666e985acb136ed8",
          "completed_at": "2026-07-24T18:16:02Z"
        }
      ],
      "steps": [
        {
          "id": "mailbox",
          "action": "requests.pull",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-24T18:15:57Z",
          "output": {
            "applied": 0,
            "resolved_ids": [],
            "unmatched": [],
            "mailboxes": [],
            "pruned_outbox": [],
            "consumed_mailboxes": [],
            "outbound": {
              "delivered": 0,
              "mailboxes_published": [],
              "undeliverable": [],
              "pending": []
            },
            "addressed": {
              "delivered": 0,
              "destinations": [],
              "undelivered": [
                {
                  "id": "REQ-030",
                  "state": "not_ours_to_send",
                  "target_repo": "prd-plugin",
                  "reason": "REQ-030 was imported from 'ZeusGrid'; its target_repo records who it was addressed to, not somewhere for us to send it. Reply on its thread instead."
                },
                {
                  "id": "REQ-003",
                  "state": "not_ours_to_send",
                  "target_repo": "prd-plugin",
                  "reason": "REQ-003 was imported from 'ZeusGrid'; its target_repo records who it was addressed to, not somewhere for us to send it. Reply on its thread instead."
                },
                {
                  "id": "REQ-004",
                  "state": "not_ours_to_send",
                  "target_repo": "prd-plugin",
                  "reason": "REQ-004 was imported from 'ZeusGrid'; its target_repo records who it was addressed to, not somewhere for us to send it. Reply on its thread instead."
                },
                {
                  "id": "REQ-005",
                  "state": "not_ours_to_send",
                  "target_repo": "prd-plugin",
                  "reason": "REQ-005 was imported from 'GRAPH_LANG'; its target_repo records who it was addressed to, not somewhere for us to send it. Reply on its thread instead."
                },
                {
                  "id": "REQ-002",
                  "state": "self_addressed",
                  "target_repo": "prd-plugin",
                  "reason": "REQ-002 is addressed to this repo ('prd-plugin'); it is already here."
                },
                {
                  "id": "REQ-028",
                  "state": "self_addressed",
                  "target_repo": "prd-plugin",
                  "reason": "REQ-028 is addressed to this repo ('prd-plugin'); it is already here."
                },
                {
                  "id": "REQ-029",
                  "state": "not_ours_to_send",
                  "target_repo": "ai-collab-v3",
                  "reason": "REQ-029 was imported from 'ai-collab-v3'; its target_repo records who it was addressed to, not somewhere for us to send it. Reply on its thread instead."
                },
                {
                  "id": "REQ-138",
                  "state": "terminal",
                  "target_repo": "no-such-repo",
                  "reason": "REQ-138 is 'rejected'; a closed request is not delivered. Reopen it or file a new one if it still needs to travel."
                }
              ],
              "advisories": []
            }
          },
          "output_hash": "ab8a35139cfd3f5821ebc5138c9a44c899b54e4036790654ff120e79c7ab6223",
          "completed_at": "2026-07-24T18:15:57Z"
        },
        {
          "id": "config",
          "action": "config.audit",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-24T18:15:57Z",
          "output": {
            "status": "ok",
            "summary": {
              "settings": 214,
              "mutable": 204,
              "read_only_or_managed": 10,
              "unclassified": 0,
              "unknown": 0,
              "invalid": 0,
              "missing_using_defaults": 0
            },
            "unclassified_keys": [],
            "unknown_keys": [],
            "invalid_values": [],
            "missing_using_defaults": []
          },
          "output_hash": "ef2327bf3ea9c100a1a525c09e426de9703016f1b7c177b0df10c0b7cf3f33c9",
          "completed_at": "2026-07-24T18:15:57Z"
        },
        {
          "id": "services",
          "action": "services.audit",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-24T18:15:57Z",
          "output": {
            "status": "ok",
            "summary": {
              "critical": 0,
              "high": 0,
              "medium": 0,
              "low": 0
            },
            "findings": []
          },
          "output_hash": "13dcc58bd528f3efa3e6e0fa0853a6eedc376f1f3685fbd4869cbb2b60382ee3",
          "completed_at": "2026-07-24T18:15:57Z"
        },
        {
          "id": "state",
          "action": "state.consistency",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-24T18:15:57Z",
          "output": {
            "status": "ok",
            "repo_root": "D:\\Projects\\prd-plugin",
            "summary": {
              "errors": 0,
              "warnings": 0,
              "infos": 1
            },
            "findings": [
              {
                "id": "CONS-INFO-001",
                "severity": "info",
                "path": "docs/evidence/EV-200.md",
                "summary": "File references 2 canonical IDs across 2 prefix(es); treated as a positive signal of extra work.",
                "referenced_prefixes": [
                  "CHG",
                  "TRK"
                ],
                "referenced_id_count": 2,
                "required_action": "No action required; this is an informational signal."
              }
            ]
          },
          "output_hash": "9963110856ca8182da0dfdbb22f6960618b55dbc121be0dce0066a7c7a389b10",
          "completed_at": "2026-07-24T18:16:01Z"
        },
        {
          "id": "status",
          "action": "state.query",
          "status": "completed",
          "resolved_input_hash": "a15231a2142a2a9a85355a8b9cbbccffe01a9c9c2c2fd8c2bc2987cdc481564a",
          "started_at": "2026-07-24T18:16:01Z",
          "output": {
            "repo_root": "D:\\Projects\\prd-plugin",
            "autonomy_level": "autonomous",
            "reasoning_guard": {
              "mode": "report",
              "categories": {
                "evidence_follow_through": "inherit",
                "causal_claims": "inherit",
                "permanent_mutations": "inherit",
                "completion_claims": "inherit"
              },
              "effective_modes": {
                "evidence_follow_through": "report",
                "causal_claims": "report",
                "permanent_mutations": "report",
                "completion_claims": "report"
              },
              "report_available": true,
              "coverage": {
                "host": "codex",
                "level": "reduced",
                "missing": [
                  "no visible reasoning summaries have reached the guard in this session"
                ],
                "observed": [
                  "visible hook events"
                ]
              },
              "summary": {
                "blocked": 0,
                "deferred": 0,
                "open": 1,
                "violations": 10
              },
              "latency": {
                "p50_ms": 12.63,
                "p95_ms": 23.481,
                "samples_ms": [
                  10.011,
                  12.428,
                  10.936,
                  14.303,
                  14.13,
                  13.44,
                  10.846,
                  4.712,
                  9.182,
                  16.719,
                  13.488,
                  13.856,
                  9.406,
                  10.143,
                  10.062,
                  14.506,
                  14.077,
                  10.184,
                  11.395,
                  12.135,
                  17.04,
                  10.802,
                  12.191,
                  14.327,
                  1.976,
                  11.564,
                  12.633,
                  13.24,
                  16.307,
                  19.531,
                  13.145,
                  9.887,
                  13.758,
                  12.846,
                  17.582,
                  10.71,
                  2.186,
                  12.762,
                  11.563,
                  9.784,
                  14.339,
                  13.507,
                  16.035,
                  10.649,
                  13.997,
                  9.241,
                  13.015,
                  10.247,
                  10.214,
                  11.975,
                  14.238,
                  10.808,
                  12.683,
                  11.17,
                  11.004,
                  12.955,
                  10.907,
                  14.314,
                  15.472,
                  15.716,
                  9.611,
                  2.294,
                  12.409,
                  11.296,
                  11.48,
                  11.615,
                  10.769,
                  10.436,
                  12.103,
                  13.05,
                  12.773,
                  11.455,
                  11.131,
                  11.036,
                  11.75,
                  10.816,
                  11.568,
                  11.86,
                  20.126,
                  11.851,
                  23.481,
                  12.505,
                  12.52,
                  11.773,
                  17.141,
                  12.63,
                  11.886,
                  11.906,
                  10.756,
                  13.464,
                  12.312,
                  9,
                  10.587,
                  16.754,
                  11.709,
                  14.204,
                  15.705,
                  11.516,
                  15.698,
                  9.612,
                  16.398,
                  9.381,
                  17.645,
                  18.272,
                  20.87,
                  15.84,
                  14.092,
                  55.867,
                  30.527,
                  16.406,
                  36.146,
                  15.816,
                  17.749,
                  38.732,
                  18.411,
                  22.376,
                  22.634,
                  2.291,
                  2.835,
                  29.987,
                  20.209,
                  2.72,
                  3.017,
                  24.491,
                  14.954,
                  16.553,
                  15.41,
                  13.269
                ]
              }
            },
            "requests_by_status": {
              "accepted": 1,
              "deferred": 1,
              "implemented": 143,
              "in_review": 2,
              "proposed": 4,
              "rejected": 3
            },
            "active_tracking": [],
            "tracking_branches": [],
            "tracking_branch_counts": {},
            "tracking_branch_errors": [],
            "open_health": [
              "HLT-020",
              "HLT-021",
              "HLT-022",
              "HLT-023"
            ],
            "stale_count": 0,
            "skill_usage": {
              "project-llm-wiki": 2,
              "project-decision-policy": 1,
              "project-request-intake": 1,
              "project-test-driven-implementation": 1,
              "project-verification-before-completion": 1,
              "artifact-design": 1
            },
            "wiki_backfill_pending": false,
            "wiki_ingest_drift": null,
            "version_update": {
              "host_plugin": {
                "installed": "0.16.46",
                "latest": "0.16.53",
                "action": "the user plugin install is on 0.16.46 but 0.16.53 is published. Run `claude plugin update prd-plugin@prd-plugin` and restart the host to apply it."
              }
            }
          },
          "output_hash": "7462d7dcf345e6ab09e9d9908def2ff678ddb74b9b341975e6f62d6d00b12fe3",
          "completed_at": "2026-07-24T18:16:01Z"
        },
        {
          "id": "substrate",
          "action": "substrate.preflight",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-24T18:16:01Z",
          "output": {
            "status": "disabled",
            "services": {
              "status": "ok",
              "summary": {
                "critical": 0,
                "high": 0,
                "medium": 0,
                "low": 0
              },
              "findings": []
            },
            "policy": {
              "configured": {
                "enabled": false,
                "mode": "off",
                "capabilities": [
                  "records",
                  "graph",
                  "events"
                ],
                "contract_version": 2,
                "require_source_refs": true,
                "endpoint": "http://127.0.0.1:47124",
                "manual_url": "http://127.0.0.1:47124/utcp.json",
                "knowledge_browse_url": "http://127.0.0.1:5276",
                "auth_env": "AI_COLLAB_API_KEY",
                "timeout_seconds": 5,
                "max_result_bytes": 1048576,
                "cache_ttl_seconds": 60,
                "fallback": "local",
                "automation": {
                  "discovery_on_session_start": true,
                  "knowledge_recall": true,
                  "memory_recall": true,
                  "context_enrichment": true,
                  "notices_on_session_start": false,
                  "goals_sync": false,
                  "telemetry_on_maintenance": false,
                  "reporting_dispatch": true,
                  "judgment_dispatch": true,
                  "verification_execution": true
                }
              },
              "active": false,
              "effective_mode": "off",
              "effective_capabilities": []
            }
          },
          "output_hash": "a6df426290b4549a59eecaa0519ead9bcc50b7fcb25bd2185ff6047960f19ccb",
          "completed_at": "2026-07-24T18:16:01Z"
        },
        {
          "id": "notices",
          "action": "substrate.notices",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-24T18:16:02Z",
          "output": {
            "status": "disabled"
          },
          "output_hash": "38b904a1cf83df048360fb2480571b749fd98d57e11f1afdffb5a74a78166fea",
          "completed_at": "2026-07-24T18:16:02Z"
        },
        {
          "id": "goals",
          "action": "substrate.goals",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-24T18:16:02Z",
          "output": {
            "status": "disabled",
            "created": 0,
            "observed": 0,
            "results": []
          },
          "output_hash": "cdfd4de44a28140e686159f34f7b47975954c67e1d1efcef666e985acb136ed8",
          "completed_at": "2026-07-24T18:16:02Z"
        }
      ],
      "completed_at": "2026-07-24T18:16:02Z"
    },
    {
      "id": "WFR-407",
      "schema_version": "1.0",
      "workflow_id": "request.intake",
      "workflow_version": 1,
      "definition_hash": "b61272f54c5d4778a27afe601feaae39057f75fac2c289858b6caf5f3b2a4fbe",
      "plan_hash": "20b41d75e59146e4e0895d91a2f7bdffd5ecf7aca49abbd22cd67547976e5d47",
      "input_hash": "e25d7067da0ce372a45f835ce532abf242cc9434a8d49b204245956e33d57fdc",
      "inputs": {
        "summary": "Expand Reason Guard into a local structured Reasoning Diagnostic kernel with deterministic obligations, coalesced diagnostics, and completion clearance receipts, explicitly excluding any RSP or standalone server",
        "request_type": "feature",
        "severity": "high",
        "scope": "upstream",
        "rationale": "Reason Guard already owns the low-latency cross-host hook, session state, evidence lifecycle, enforcement modes, privacy boundary, and completion gate, but its obligations are extracted as truncated prose, expected results require a literal expected: marker, evidence acceptance is not typed, and repeated boundary findings create separate violation rows. The next bounded evolution should strengthen this existing local engine rather than create a new service: structured explicit evidence-check directives, typed and bounded evidence acceptance, obligation-scoped diagnostic coalescing, and an honest completion-clearance receipt that reports coverage and limitations. The user explicitly excludes RSP/server work. Changed-symbol impact analysis, remote event ingestion, context brokerage, and generic code actions are later scope and must not enter this delivery slice.",
        "affected_areas": [
          ".prd_plugin/hooks/prd_reason_guard.py",
          "templates/repo-skeleton/.prd_plugin/hooks/prd_reason_guard.py",
          "cross-host hook adapters",
          "Reason Guard local state schema and migration",
          "configuration/status/UI reporting",
          "tests/test_reason_guard.py",
          "tests/test_hook_dispatcher.py",
          "docs/REASONING-GUARD.md",
          "wiki/hooks/reasoning-guard.md",
          "release and installer parity"
        ],
        "expected_behavior": "Reason Guard remains a local deterministic hook engine with report as the default. It accepts an explicit host-neutral structured evidence-check directive while retaining conservative heuristic detection as lower-confidence fallback; stores bounded structured obligations with claim, kind, required evidence, typed acceptance, expected result, blocking policy, and observed evidence; binds evidence to host tool identity and evaluates only allowlisted deterministic predicates; coalesces repeated findings into one active diagnostic per code and obligation with bounded occurrence history; migrates existing local schema safely without exposing private reasoning, prompts, transcript content, secrets, or raw tool output; and emits a completion-clearance receipt only when blocking obligations and diagnostics are clear, always including coverage, mode, deferred work, and limitations. Reduced coverage must never be represented as an unconditional certificate. Claude, Codex, and OpenCode behavior, mode semantics, replay safety, latency measurement, downstream templates, docs, status, and UI remain in parity. No RSP, standalone server, remote ingestion, changed-symbol impact engine, context request broker, or generic code-action service is included."
      },
      "idempotency_key": "reasoning-diagnostic-kernel-request-20260724",
      "status": "completed",
      "attempt": 1,
      "created_at": "2026-07-24T18:17:26Z",
      "updated_at": "2026-07-24T18:17:27Z",
      "receipts": [
        {
          "step_id": "create",
          "action": "state.mutate",
          "input_hash": "eaf6096cc81ff0d29efd694a600b2143a798644ee992e48f63f2f78b1708141c",
          "output_hash": "6550716c1af60a516dc065f016d831fb9c7a55366214f4ecd2f31ff4bf970ed2",
          "completed_at": "2026-07-24T18:17:27Z"
        },
        {
          "step_id": "confirm",
          "action": "state.query",
          "input_hash": "507181e2e38935bb463a290a5fe970130e8d32b277851a5a6da06e38f0b22bc9",
          "output_hash": "2b7b1221dbe0b130858c2129283362d7f846faa2560f2effcdf4f6b952aaeb2a",
          "completed_at": "2026-07-24T18:17:27Z"
        }
      ],
      "steps": [
        {
          "id": "create",
          "action": "state.mutate",
          "status": "completed",
          "resolved_input_hash": "eaf6096cc81ff0d29efd694a600b2143a798644ee992e48f63f2f78b1708141c",
          "started_at": "2026-07-24T18:17:26Z",
          "execution_token": "6ec34304f6f9ea02b91f4b5c8698f4e143ff450e62995470484bdbfcbb2a2c28",
          "output": {
            "id": "REQ-173",
            "status": "proposed"
          },
          "output_hash": "6550716c1af60a516dc065f016d831fb9c7a55366214f4ecd2f31ff4bf970ed2",
          "completed_at": "2026-07-24T18:17:27Z"
        },
        {
          "id": "confirm",
          "action": "state.query",
          "status": "completed",
          "resolved_input_hash": "507181e2e38935bb463a290a5fe970130e8d32b277851a5a6da06e38f0b22bc9",
          "started_at": "2026-07-24T18:17:27Z",
          "output": {
            "kind": "REQ",
            "record": {
              "id": "REQ-173",
              "status": "proposed",
              "request_type": "feature",
              "scope": "upstream",
              "visibility": "repo",
              "summary": "Expand Reason Guard into a local structured Reasoning Diagnostic kernel with deterministic obligations, coalesced diagnostics, and completion clearance receipts, explicitly excluding any RSP or standalone server",
              "severity": "high",
              "requested_by_agent": "AGENT-MCP",
              "created_at": "2026-07-24",
              "rationale": "Reason Guard already owns the low-latency cross-host hook, session state, evidence lifecycle, enforcement modes, privacy boundary, and completion gate, but its obligations are extracted as truncated prose, expected results require a literal expected: marker, evidence acceptance is not typed, and repeated boundary findings create separate violation rows. The next bounded evolution should strengthen this existing local engine rather than create a new service: structured explicit evidence-check directives, typed and bounded evidence acceptance, obligation-scoped diagnostic coalescing, and an honest completion-clearance receipt that reports coverage and limitations. The user explicitly excludes RSP/server work. Changed-symbol impact analysis, remote event ingestion, context brokerage, and generic code actions are later scope and must not enter this delivery slice.",
              "affected_areas": [
                ".prd_plugin/hooks/prd_reason_guard.py",
                "templates/repo-skeleton/.prd_plugin/hooks/prd_reason_guard.py",
                "cross-host hook adapters",
                "Reason Guard local state schema and migration",
                "configuration/status/UI reporting",
                "tests/test_reason_guard.py",
                "tests/test_hook_dispatcher.py",
                "docs/REASONING-GUARD.md",
                "wiki/hooks/reasoning-guard.md",
                "release and installer parity"
              ],
              "expected_behavior": "Reason Guard remains a local deterministic hook engine with report as the default. It accepts an explicit host-neutral structured evidence-check directive while retaining conservative heuristic detection as lower-confidence fallback; stores bounded structured obligations with claim, kind, required evidence, typed acceptance, expected result, blocking policy, and observed evidence; binds evidence to host tool identity and evaluates only allowlisted deterministic predicates; coalesces repeated findings into one active diagnostic per code and obligation with bounded occurrence history; migrates existing local schema safely without exposing private reasoning, prompts, transcript content, secrets, or raw tool output; and emits a completion-clearance receipt only when blocking obligations and diagnostics are clear, always including coverage, mode, deferred work, and limitations. Reduced coverage must never be represented as an unconditional certificate. Claude, Codex, and OpenCode behavior, mode semantics, replay safety, latency measurement, downstream templates, docs, status, and UI remain in parity. No RSP, standalone server, remote ingestion, changed-symbol impact engine, context request broker, or generic code-action service is included."
            }
          },
          "output_hash": "2b7b1221dbe0b130858c2129283362d7f846faa2560f2effcdf4f6b952aaeb2a",
          "completed_at": "2026-07-24T18:17:27Z"
        }
      ],
      "completed_at": "2026-07-24T18:17:27Z"
    },
    {
      "id": "WFR-408",
      "schema_version": "1.0",
      "workflow_id": "planning.requirements",
      "workflow_version": 1,
      "definition_hash": "daa4833c9f8905528cd972d56f2868eb1e535dcbb47db1a5a09f7114a6e5c83e",
      "plan_hash": "78986aeb29f5003da72b4604e2d504fb70a901cc9ec2ff3d4ea188022e5343c0",
      "input_hash": "713b623ba17d53d625e597451e12c94368bc6b1decf9b1b989447feb8b0c98cf",
      "inputs": {
        "instructions": "Produce the bounded requirements judgment for REQ-173. Evolve the existing local Reason Guard kernel into structured deterministic reasoning diagnostics: explicit host-neutral evidence-check directives, conservative heuristic fallback, bounded structured obligations, allowlisted typed evidence acceptance, obligation-scoped diagnostic coalescing, safe local-state migration, and a coverage-qualified completion-clearance receipt. Preserve report as default, Claude/Codex/OpenCode parity, privacy boundaries, replay/concurrency safety, latency visibility, downstream template/install parity, human-readable UI, and current mode semantics. Explicitly exclude any RSP or standalone/network server, remote ingestion, changed-symbol impact analysis, context brokerage, generic code actions, model calls on the hook path, and storage of raw/private reasoning, prompts, transcripts, secrets, or raw tool output.",
        "source_refs": [
          "REQ-173",
          "REQ-171",
          "REQ-172",
          ".prd_plugin/hooks/prd_reason_guard.py",
          "templates/repo-skeleton/.prd_plugin/hooks/prd_reason_guard.py",
          "tests/test_reason_guard.py",
          "tests/test_hook_dispatcher.py",
          "docs/REASONING-GUARD.md",
          "wiki/hooks/reasoning-guard.md"
        ]
      },
      "idempotency_key": "reasoning-diagnostic-kernel-requirements-20260724",
      "status": "completed",
      "attempt": 1,
      "created_at": "2026-07-24T18:19:44Z",
      "updated_at": "2026-07-24T18:20:47Z",
      "receipts": [
        {
          "step_id": "state",
          "action": "state.consistency",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "9963110856ca8182da0dfdbb22f6960618b55dbc121be0dce0066a7c7a389b10",
          "completed_at": "2026-07-24T18:19:48Z"
        },
        {
          "step_id": "context",
          "action": "substrate.enrich",
          "input_hash": "243f0806b35125ff85f14aba861334ded4f62eadab07a234f7aacd4ccfef8249",
          "output_hash": "af094da06485702985bf400330c5fa3f2fc26f5ed1d83f2672fcb8e28d032449",
          "completed_at": "2026-07-24T18:19:49Z"
        },
        {
          "step_id": "requirements",
          "action": "judgment.request",
          "input_hash": "f039342ba472481a6d9224cccc10feeb54305ab826623e2c43d9b5d0d8a73421",
          "output_hash": "35b014519de495aea5703b5a330d884fad8619fedb27a28c60b65a9fb6ae2523",
          "request_hash": "a6fcfcf8a7d6c91f9bc60b97e2cf2c76a4cca82a52c4e16fb7f5e70ea27b4a32",
          "completed_at": "2026-07-24T18:20:47Z"
        }
      ],
      "steps": [
        {
          "id": "state",
          "action": "state.consistency",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-24T18:19:45Z",
          "output": {
            "status": "ok",
            "repo_root": "D:\\Projects\\prd-plugin",
            "summary": {
              "errors": 0,
              "warnings": 0,
              "infos": 1
            },
            "findings": [
              {
                "id": "CONS-INFO-001",
                "severity": "info",
                "path": "docs/evidence/EV-200.md",
                "summary": "File references 2 canonical IDs across 2 prefix(es); treated as a positive signal of extra work.",
                "referenced_prefixes": [
                  "CHG",
                  "TRK"
                ],
                "referenced_id_count": 2,
                "required_action": "No action required; this is an informational signal."
              }
            ]
          },
          "output_hash": "9963110856ca8182da0dfdbb22f6960618b55dbc121be0dce0066a7c7a389b10",
          "completed_at": "2026-07-24T18:19:48Z"
        },
        {
          "id": "context",
          "action": "substrate.enrich",
          "status": "completed",
          "resolved_input_hash": "243f0806b35125ff85f14aba861334ded4f62eadab07a234f7aacd4ccfef8249",
          "started_at": "2026-07-24T18:19:48Z",
          "output": {
            "status": "disabled",
            "results": [],
            "local_source_refs": [
              "REQ-173",
              "REQ-171",
              "REQ-172",
              ".prd_plugin/hooks/prd_reason_guard.py",
              "templates/repo-skeleton/.prd_plugin/hooks/prd_reason_guard.py",
              "tests/test_reason_guard.py",
              "tests/test_hook_dispatcher.py",
              "docs/REASONING-GUARD.md",
              "wiki/hooks/reasoning-guard.md"
            ]
          },
          "output_hash": "af094da06485702985bf400330c5fa3f2fc26f5ed1d83f2672fcb8e28d032449",
          "completed_at": "2026-07-24T18:19:49Z"
        },
        {
          "id": "requirements",
          "action": "judgment.request",
          "status": "completed",
          "resolved_input_hash": "f039342ba472481a6d9224cccc10feeb54305ab826623e2c43d9b5d0d8a73421",
          "started_at": "2026-07-24T18:19:49Z",
          "judgment_request": {
            "contract_version": 1,
            "run_id": "WFR-408",
            "step_id": "requirements",
            "task": "requirements",
            "instructions": "Produce the bounded requirements judgment for REQ-173. Evolve the existing local Reason Guard kernel into structured deterministic reasoning diagnostics: explicit host-neutral evidence-check directives, conservative heuristic fallback, bounded structured obligations, allowlisted typed evidence acceptance, obligation-scoped diagnostic coalescing, safe local-state migration, and a coverage-qualified completion-clearance receipt. Preserve report as default, Claude/Codex/OpenCode parity, privacy boundaries, replay/concurrency safety, latency visibility, downstream template/install parity, human-readable UI, and current mode semantics. Explicitly exclude any RSP or standalone/network server, remote ingestion, changed-symbol impact analysis, context brokerage, generic code actions, model calls on the hook path, and storage of raw/private reasoning, prompts, transcripts, secrets, or raw tool output.",
            "source_refs": [
              "REQ-173",
              "REQ-171",
              "REQ-172",
              ".prd_plugin/hooks/prd_reason_guard.py",
              "templates/repo-skeleton/.prd_plugin/hooks/prd_reason_guard.py",
              "tests/test_reason_guard.py",
              "tests/test_hook_dispatcher.py",
              "docs/REASONING-GUARD.md",
              "wiki/hooks/reasoning-guard.md"
            ],
            "source_hashes": {
              ".prd_plugin/hooks/prd_reason_guard.py": "5f305b085235556f21a068edf0e81b9ae1d96cec075377f684ad76b6dd87c58e",
              "templates/repo-skeleton/.prd_plugin/hooks/prd_reason_guard.py": "5f305b085235556f21a068edf0e81b9ae1d96cec075377f684ad76b6dd87c58e",
              "tests/test_reason_guard.py": "e525eaa634ab2659fade35f354be43871718c6f58fa7d5ebc8bfe79a58c56f00",
              "tests/test_hook_dispatcher.py": "56ef1604e2c8fc64ca56f8a17d7750a7952a48e7f57b168c4c905ab63c0f6953",
              "docs/REASONING-GUARD.md": "0a289ade4080118e34c2c0f5ede1ee32b1c7baf43528b22f9f41993e540093c3",
              "wiki/hooks/reasoning-guard.md": "7bd92ec50911f7d9ea7ebfcac19854393bebbdeeedfe015acd6a7eb508a236b8"
            },
            "result_schema": {
              "type": "object",
              "required": [
                "summary",
                "requirements",
                "source_refs"
              ],
              "properties": {
                "summary": {
                  "type": "string"
                },
                "requirements": {
                  "type": "array",
                  "items": {
                    "type": "object"
                  }
                },
                "source_refs": {
                  "type": "array",
                  "items": {
                    "type": "string"
                  }
                }
              }
            },
            "executor": "ai-collab",
            "profile": "fast-capable",
            "constraints": {
              "no_project_state_writes": true,
              "require_source_refs": true
            },
            "request_hash": "a6fcfcf8a7d6c91f9bc60b97e2cf2c76a4cca82a52c4e16fb7f5e70ea27b4a32"
          },
          "output": {
            "summary": "Extend the existing local Reason Guard into a deterministic structured diagnostic kernel without creating a server. The bounded slice adds explicit structured evidence obligations, conservative heuristic fallback, allowlisted evidence matching, coalesced diagnostics, schema migration, and coverage-qualified completion clearance while preserving privacy, report-by-default behavior, cross-host parity, and bounded latency.",
            "requirements": [
              {
                "key": "structured-directive",
                "summary": "Accept a versioned host-neutral evidence-check directive with bounded fields for kind, claim, required evidence, acceptance predicates, expected result, blocking policy, and source confidence.",
                "priority": "must",
                "source_refs": [
                  "REQ-173",
                  "REQ-171",
                  ".prd_plugin/hooks/prd_reason_guard.py"
                ]
              },
              {
                "key": "heuristic-fallback",
                "summary": "Retain conservative prose inference only as explicitly labelled lower-confidence fallback; inferred obligations default to report-only and cannot independently hard-block completion.",
                "priority": "must",
                "source_refs": [
                  "REQ-173",
                  ".prd_plugin/hooks/prd_reason_guard.py",
                  "docs/REASONING-GUARD.md"
                ]
              },
              {
                "key": "evidence-matching",
                "summary": "Bind observed evidence to host tool identity and outcome and evaluate only a fixed allowlist of bounded deterministic predicates; never execute arbitrary expressions, regex programs, model calls, or network calls.",
                "priority": "must",
                "source_refs": [
                  "REQ-173",
                  "REQ-171",
                  "tests/test_reason_guard.py"
                ]
              },
              {
                "key": "diagnostic-coalescing",
                "summary": "Represent repeated findings as one active diagnostic per diagnostic code and obligation, with bounded occurrence count and first/last-seen metadata while retaining audit value.",
                "priority": "must",
                "source_refs": [
                  "REQ-173",
                  "tests/test_reason_guard.py"
                ]
              },
              {
                "key": "migration",
                "summary": "Migrate existing local Reason Guard state safely and atomically, preserve supported obligation/evidence history, reject malformed or future schemas safely, and retain replay/concurrency guarantees.",
                "priority": "must",
                "source_refs": [
                  "REQ-173",
                  "REQ-171",
                  ".prd_plugin/hooks/prd_reason_guard.py"
                ]
              },
              {
                "key": "clearance-receipt",
                "summary": "Emit a completion-clearance receipt with clear, conditional, or blocked status, mode, coverage, limitations, open blocking obligations, deferred count, and report digest; reduced coverage can never produce unconditional clearance.",
                "priority": "must",
                "source_refs": [
                  "REQ-173",
                  "REQ-172",
                  "docs/REASONING-GUARD.md"
                ]
              },
              {
                "key": "privacy-security",
                "summary": "Persist only bounded summaries, identifiers, digests, accepted predicate results, and sanitized metadata; never persist raw/private reasoning, prompts, transcripts, secrets, credentials, or raw tool output.",
                "priority": "must",
                "source_refs": [
                  "REQ-173",
                  "REQ-171",
                  "docs/REASONING-GUARD.md"
                ]
              },
              {
                "key": "parity-surfaces",
                "summary": "Preserve Claude, Codex, and OpenCode parity plus downstream template/install parity; expose human-readable status and UI explanations through existing configuration and status surfaces without making internal IDs primary UI content.",
                "priority": "must",
                "source_refs": [
                  "REQ-173",
                  "REQ-172",
                  "templates/repo-skeleton/.prd_plugin/hooks/prd_reason_guard.py",
                  "tests/test_hook_dispatcher.py"
                ]
              },
              {
                "key": "performance-bounds",
                "summary": "Keep the hook local, deterministic, bounded, and model/network-free; retain measured latency reporting and prove bounded work and no material regression against the checked-in benchmark methodology before release.",
                "priority": "must",
                "source_refs": [
                  "REQ-173",
                  "REQ-171",
                  "tests/test_reason_guard.py"
                ]
              },
              {
                "key": "non-goals",
                "summary": "Do not implement an RSP/standalone/network server, remote ingestion, changed-symbol impact engine, context broker, generic code-action service, or any new model call on the hook path.",
                "priority": "must-not",
                "source_refs": [
                  "REQ-173"
                ]
              }
            ],
            "source_refs": [
              "REQ-173",
              "REQ-171",
              "REQ-172",
              ".prd_plugin/hooks/prd_reason_guard.py",
              "templates/repo-skeleton/.prd_plugin/hooks/prd_reason_guard.py",
              "tests/test_reason_guard.py",
              "tests/test_hook_dispatcher.py",
              "docs/REASONING-GUARD.md",
              "wiki/hooks/reasoning-guard.md"
            ]
          },
          "output_hash": "35b014519de495aea5703b5a330d884fad8619fedb27a28c60b65a9fb6ae2523",
          "completed_at": "2026-07-24T18:20:47Z",
          "judgment_result": {
            "request_hash": "a6fcfcf8a7d6c91f9bc60b97e2cf2c76a4cca82a52c4e16fb7f5e70ea27b4a32",
            "executor": "ai-collab",
            "profile": "fast-capable"
          }
        }
      ],
      "completed_at": "2026-07-24T18:20:47Z"
    },
    {
      "id": "WFR-409",
      "schema_version": "1.0",
      "workflow_id": "engineering.code-review",
      "workflow_version": 1,
      "definition_hash": "ad3df68a0ff3c3ede35fe5266dcfbffbe7b1ba3e8ada5fc4b9012db9f451212f",
      "plan_hash": "2f83b649f6fdde11677e08d785261fbaef649b69bd3d0acbb1b8c37b8da66744",
      "input_hash": "7467f19d3a195b7512b410ee4290a25a531d7da423b4a132663b00b91ff83ced",
      "inputs": {
        "base_ref": "v0.16.53",
        "source_refs": [
          "REQ-173",
          "PRD-011",
          "ARCH-011",
          "IMP-013",
          ".prd_plugin/hooks/prd_reason_guard.py",
          "scripts/prd_status.py",
          "scripts/prd_ui_export.py",
          "tests/test_reason_guard.py",
          "tests/test_hook_dispatcher.py",
          "tests/test_prd_install.py",
          "docs/REASONING-GUARD.md"
        ]
      },
      "idempotency_key": "req-173-code-review-v1",
      "status": "completed",
      "attempt": 2,
      "created_at": "2026-07-24T19:41:18Z",
      "updated_at": "2026-07-24T19:42:23Z",
      "receipts": [
        {
          "step_id": "diff",
          "action": "git.diff_check",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "11c11db30f4b3f6c758722ba3e27eea08145b7d212f6a157451e364b48475280",
          "completed_at": "2026-07-24T19:41:18Z"
        },
        {
          "step_id": "verification",
          "action": "verification.plan",
          "input_hash": "2022c88d1d735738a78fe474f34a1cb199fbea3208f5821288f501a58bfa7be4",
          "output_hash": "6ee1865e66f9cc9b54aa9e240b4b77920db7f106395599eba53ca731d5a40773",
          "completed_at": "2026-07-24T19:41:25Z"
        },
        {
          "step_id": "context",
          "action": "substrate.enrich",
          "input_hash": "16673f670e255212c07effeececa3a404f4fb9562bbc7bdc84c1a6fcc98bf8d4",
          "output_hash": "0746f62a0b2a0888b81bc162f2d426abdbbee6d577a5fcdbc2bd323772f47226",
          "completed_at": "2026-07-24T19:41:26Z"
        },
        {
          "step_id": "review",
          "action": "judgment.request",
          "input_hash": "fb643862a798c717c6073d630085c9e5096bfd7eb7f0e6ab5daeeb34243c3f11",
          "output_hash": "989dbdce40ce6a5365c9fa7fee1ebaca3963929068fe90c750250a69597fe594",
          "request_hash": "1b14d3e59880438ba133c5670e60609e5c94aa8a65dcc4415fb3b1bfba55da64",
          "completed_at": "2026-07-24T19:42:22Z"
        }
      ],
      "steps": [
        {
          "id": "diff",
          "action": "git.diff_check",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-24T19:41:18Z",
          "output": {
            "passed": true
          },
          "output_hash": "11c11db30f4b3f6c758722ba3e27eea08145b7d212f6a157451e364b48475280",
          "completed_at": "2026-07-24T19:41:18Z"
        },
        {
          "id": "verification",
          "action": "verification.plan",
          "status": "completed",
          "resolved_input_hash": "2022c88d1d735738a78fe474f34a1cb199fbea3208f5821288f501a58bfa7be4",
          "started_at": "2026-07-24T19:41:25Z",
          "output": {
            "schema_version": "1.0",
            "contract_version": 1,
            "executor": "ai-collab",
            "changed_files": [
              ".prd_plugin/drift/events.jsonl",
              ".prd_plugin/hooks/prd_reason_guard.py",
              ".prd_plugin/ids/registry.json",
              ".prd_plugin/state/artifacts/architecture/ARCH-011.json",
              ".prd_plugin/state/artifacts/implementation_plan/IMP-013.json",
              ".prd_plugin/state/artifacts/prd/PRD-011.json",
              ".prd_plugin/state/requests.json",
              ".prd_plugin/state/tracking.json",
              ".prd_plugin/state/workflow-runs.json",
              "AGENTS.md",
              "CLAUDE.md",
              "docs/REASONING-GUARD.md",
              "raw/hooks/2026-07-24-structured-reasoning-diagnostic-kernel.md",
              "scripts/prd_status.py",
              "scripts/prd_ui_export.py",
              "templates/feature-skill-map.json",
              "templates/repo-skeleton/.prd_plugin/hooks/prd_reason_guard.py",
              "templates/repo-skeleton/AGENTS.md",
              "templates/repo-skeleton/CLAUDE.md",
              "tests/test_feature_skill_audit.py",
              "tests/test_hook_dispatcher.py",
              "tests/test_prd_install.py",
              "tests/test_prd_ui_export.py",
              "tests/test_reason_guard.py",
              "tests/test_tracking_commands.py",
              "wiki/hooks/reasoning-guard.md",
              "wiki/index.md",
              "wiki/log.md"
            ],
            "change_fingerprint": "6a90c1034d937e6c031f4034afd1dd8a983bc826a5363589563122362206f120",
            "policy": {
              "enabled": true,
              "executor": "ai-collab",
              "neighbor_limit": 12,
              "max_changed_files": 25,
              "fallback": "full",
              "full_suite_triggers": [
                "release",
                "core_change",
                "impact_unavailable",
                "impact_degraded",
                "unmapped_change"
              ],
              "core_paths": [
                "package.json",
                "package-lock.json",
                "pyproject.toml",
                "Cargo.toml",
                "go.mod",
                ".github/workflows/**"
              ],
              "test_patterns": [
                "tests/**",
                "test/**",
                "spec/**",
                "**/*.test.*",
                "**/*.spec.*",
                "test_*.py",
                "*_test.py",
                "*_test.go",
                "**/test_*.py",
                "**/*_test.py",
                "**/*_test.go"
              ],
              "max_selected_tests": 200,
              "execution_timeout_seconds": 600,
              "focused_commands": [],
              "full_commands": [],
              "allowed_executables": [
                "python",
                "python3",
                "py",
                "pytest",
                "npm",
                "npx",
                "node",
                "go",
                "cargo",
                "dotnet",
                "mvn",
                "gradle",
                "gradlew",
                "make"
              ]
            },
            "selection_rules": {
              "precedence": [
                "exact_changed",
                "explicit_test_ownership",
                "structural_dependencies",
                "predictive_impact"
              ],
              "require_all_changed_files_mapped": true,
              "widen_before_full": true,
              "predictive_signal_is_sufficient_alone": false
            },
            "fallback": {
              "strategy": "full",
              "conditions": [
                "release",
                "core_change",
                "impact_unavailable",
                "impact_degraded",
                "unmapped_change"
              ]
            },
            "strategy": "full",
            "reason": "max_changed_files_exceeded",
            "runtime_requests": {},
            "plan_hash": "271c2ac8744e7f3ec771608eca651aa06cc5877bcd26bb5439872238f065dec9"
          },
          "output_hash": "6ee1865e66f9cc9b54aa9e240b4b77920db7f106395599eba53ca731d5a40773",
          "completed_at": "2026-07-24T19:41:25Z"
        },
        {
          "id": "context",
          "action": "substrate.enrich",
          "status": "completed",
          "resolved_input_hash": "16673f670e255212c07effeececa3a404f4fb9562bbc7bdc84c1a6fcc98bf8d4",
          "started_at": "2026-07-24T19:41:26Z",
          "output": {
            "status": "disabled",
            "results": [],
            "local_source_refs": [
              "REQ-173",
              "PRD-011",
              "ARCH-011",
              "IMP-013",
              ".prd_plugin/hooks/prd_reason_guard.py",
              "scripts/prd_status.py",
              "scripts/prd_ui_export.py",
              "tests/test_reason_guard.py",
              "tests/test_hook_dispatcher.py",
              "tests/test_prd_install.py",
              "docs/REASONING-GUARD.md"
            ]
          },
          "output_hash": "0746f62a0b2a0888b81bc162f2d426abdbbee6d577a5fcdbc2bd323772f47226",
          "completed_at": "2026-07-24T19:41:26Z"
        },
        {
          "id": "review",
          "action": "judgment.request",
          "status": "completed",
          "resolved_input_hash": "fb643862a798c717c6073d630085c9e5096bfd7eb7f0e6ab5daeeb34243c3f11",
          "started_at": "2026-07-24T19:41:26Z",
          "judgment_request": {
            "contract_version": 1,
            "run_id": "WFR-409",
            "step_id": "review",
            "task": "code_review",
            "instructions": "Find material correctness, robustness, security, compatibility, or test gaps; do not restate mechanical facts.",
            "source_refs": [
              "REQ-173",
              "PRD-011",
              "ARCH-011",
              "IMP-013",
              ".prd_plugin/hooks/prd_reason_guard.py",
              "scripts/prd_status.py",
              "scripts/prd_ui_export.py",
              "tests/test_reason_guard.py",
              "tests/test_hook_dispatcher.py",
              "tests/test_prd_install.py",
              "docs/REASONING-GUARD.md"
            ],
            "source_hashes": {
              ".prd_plugin/hooks/prd_reason_guard.py": "67925c621f7fb6107ccd857dc79ef1bb653a055a3398df44e47e113a2bd17725",
              "scripts/prd_status.py": "deae49d711b7ae6c2f2bbd06e7fea59912fb8f59ba1e4621f4afa984fb0292cd",
              "scripts/prd_ui_export.py": "a4acb5d25e6591b78f0e53aed3d87b007e36176a6b10cc19a84521afcf14b647",
              "tests/test_reason_guard.py": "bbce9c3131160d6f7fe33d57e0db1047ec800fc2e66aee0f850898c4f9d479f5",
              "tests/test_hook_dispatcher.py": "3da98118bda9ae5664587149206433da06aa296c1bc36056d0970c525c680384",
              "tests/test_prd_install.py": "603aec403a21e21d5fd57b47bdd524e66b9b323d7d04d29635ed0ec5a11e5253",
              "docs/REASONING-GUARD.md": "e4261d651af22a378cc67b011d0f0591823171c82d15590a51085cdb93abcbed"
            },
            "result_schema": {
              "type": "object",
              "required": [
                "summary",
                "findings",
                "source_refs"
              ],
              "properties": {
                "summary": {
                  "type": "string"
                },
                "findings": {
                  "type": "array",
                  "items": {
                    "type": "object"
                  }
                },
                "source_refs": {
                  "type": "array",
                  "items": {
                    "type": "string"
                  }
                }
              }
            },
            "executor": "ai-collab",
            "profile": "fast-capable",
            "constraints": {
              "no_project_state_writes": true,
              "require_source_refs": true
            },
            "request_hash": "1b14d3e59880438ba133c5670e60609e5c94aa8a65dcc4415fb3b1bfba55da64"
          },
          "output": {
            "summary": "Three bounded contract defects require correction before release.",
            "findings": [
              {
                "severity": "high",
                "path": ".prd_plugin/hooks/prd_reason_guard.py",
                "summary": "Direct object directives bypass the documented 4 KiB aggregate bound."
              },
              {
                "severity": "high",
                "path": ".prd_plugin/hooks/prd_reason_guard.py",
                "summary": "The eight-predicate limit is enforced per evidence entry rather than across the directive."
              },
              {
                "severity": "medium",
                "path": ".prd_plugin/hooks/prd_reason_guard.py",
                "summary": "An explicitly present empty successful result cannot satisfy outcome_is success."
              }
            ],
            "source_refs": [
              ".prd_plugin/hooks/prd_reason_guard.py",
              "tests/test_reason_guard.py",
              "docs/REASONING-GUARD.md"
            ]
          },
          "output_hash": "989dbdce40ce6a5365c9fa7fee1ebaca3963929068fe90c750250a69597fe594",
          "completed_at": "2026-07-24T19:42:22Z",
          "judgment_result": {
            "request_hash": "1b14d3e59880438ba133c5670e60609e5c94aa8a65dcc4415fb3b1bfba55da64",
            "executor": "ai-collab",
            "profile": "fast-capable"
          }
        }
      ],
      "completed_at": "2026-07-24T19:42:23Z"
    },
    {
      "id": "WFR-410",
      "schema_version": "1.0",
      "workflow_id": "engineering.code-review",
      "workflow_version": 1,
      "definition_hash": "ad3df68a0ff3c3ede35fe5266dcfbffbe7b1ba3e8ada5fc4b9012db9f451212f",
      "plan_hash": "3109c1e535170e4330071318464f38512e35eaa4bbee10e4b0d3d4140ce531bf",
      "input_hash": "b01091fa1ec57ff93e295d6b5a0c005d6b4e3dc53e4301b298a1c807c9981499",
      "inputs": {
        "base_ref": "v0.16.53",
        "source_refs": [
          "REQ-173",
          "PRD-011",
          "ARCH-011",
          "IMP-013",
          ".prd_plugin/hooks/prd_reason_guard.py",
          "scripts/prd_status.py",
          "scripts/prd_ui_export.py",
          "scripts/reason_guard_benchmark.py",
          "tests/test_reason_guard.py",
          "tests/test_reason_guard_benchmark.py",
          "tests/test_hook_dispatcher.py",
          "tests/test_prd_install.py",
          "docs/REASONING-GUARD.md"
        ]
      },
      "idempotency_key": "req-173-code-review-v2",
      "status": "completed",
      "attempt": 1,
      "created_at": "2026-07-24T19:48:58Z",
      "updated_at": "2026-07-24T19:49:35Z",
      "receipts": [
        {
          "step_id": "diff",
          "action": "git.diff_check",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "11c11db30f4b3f6c758722ba3e27eea08145b7d212f6a157451e364b48475280",
          "completed_at": "2026-07-24T19:48:58Z"
        },
        {
          "step_id": "verification",
          "action": "verification.plan",
          "input_hash": "2022c88d1d735738a78fe474f34a1cb199fbea3208f5821288f501a58bfa7be4",
          "output_hash": "e64176ce68c8cc5feab588e2ac1831b2ba91b36d2a48f0352a70b600e7471a8f",
          "completed_at": "2026-07-24T19:48:59Z"
        },
        {
          "step_id": "context",
          "action": "substrate.enrich",
          "input_hash": "0446a7d5e9b2840abcc76cfc797e3f2cbb12212af2a8bdd02c66439fa667bc57",
          "output_hash": "4bfb063f1b33e08711ae2c883255fcc5fb5348c6f252966bac7219b4c88863ae",
          "completed_at": "2026-07-24T19:48:59Z"
        },
        {
          "step_id": "review",
          "action": "judgment.request",
          "input_hash": "6defd5b2c66e0a1910a5c443569174a57b2a38321c1804ffe8f67f7f65d83a20",
          "output_hash": "fb0c3cdb228cae3ed6ca07be4b03ab60b97175d40d9568c842194ae9743429c7",
          "request_hash": "d3c81ac1ec4a71bf2aba166c633dde8aa43698c8f55f2f5f9fd84b21361c1b77",
          "completed_at": "2026-07-24T19:49:35Z"
        }
      ],
      "steps": [
        {
          "id": "diff",
          "action": "git.diff_check",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-24T19:48:58Z",
          "output": {
            "passed": true
          },
          "output_hash": "11c11db30f4b3f6c758722ba3e27eea08145b7d212f6a157451e364b48475280",
          "completed_at": "2026-07-24T19:48:58Z"
        },
        {
          "id": "verification",
          "action": "verification.plan",
          "status": "completed",
          "resolved_input_hash": "2022c88d1d735738a78fe474f34a1cb199fbea3208f5821288f501a58bfa7be4",
          "started_at": "2026-07-24T19:48:59Z",
          "output": {
            "schema_version": "1.0",
            "contract_version": 1,
            "executor": "ai-collab",
            "changed_files": [
              ".prd_plugin/drift/events.jsonl",
              ".prd_plugin/hooks/prd_reason_guard.py",
              ".prd_plugin/ids/registry.json",
              ".prd_plugin/state/artifacts/architecture/ARCH-011.json",
              ".prd_plugin/state/artifacts/implementation_plan/IMP-013.json",
              ".prd_plugin/state/artifacts/prd/PRD-011.json",
              ".prd_plugin/state/requests.json",
              ".prd_plugin/state/tracking.json",
              ".prd_plugin/state/workflow-runs.json",
              "AGENTS.md",
              "CLAUDE.md",
              "docs/REASONING-GUARD.md",
              "raw/hooks/2026-07-24-reasoning-guard-benchmark.md",
              "raw/hooks/2026-07-24-structured-reasoning-diagnostic-kernel.md",
              "scripts/prd_status.py",
              "scripts/prd_ui_export.py",
              "scripts/reason_guard_benchmark.py",
              "templates/feature-skill-map.json",
              "templates/repo-skeleton/.prd_plugin/hooks/prd_reason_guard.py",
              "templates/repo-skeleton/AGENTS.md",
              "templates/repo-skeleton/CLAUDE.md",
              "tests/test_feature_skill_audit.py",
              "tests/test_hook_dispatcher.py",
              "tests/test_prd_install.py",
              "tests/test_prd_ui_export.py",
              "tests/test_reason_guard.py",
              "tests/test_reason_guard_benchmark.py",
              "tests/test_tracking_commands.py",
              "wiki/hooks/reasoning-guard.md",
              "wiki/index.md",
              "wiki/log.md"
            ],
            "change_fingerprint": "0fbbc44319da6b117069fb861edf26902196fb645e05abd73c7ebadac192c6fa",
            "policy": {
              "enabled": true,
              "executor": "ai-collab",
              "neighbor_limit": 12,
              "max_changed_files": 25,
              "fallback": "full",
              "full_suite_triggers": [
                "release",
                "core_change",
                "impact_unavailable",
                "impact_degraded",
                "unmapped_change"
              ],
              "core_paths": [
                "package.json",
                "package-lock.json",
                "pyproject.toml",
                "Cargo.toml",
                "go.mod",
                ".github/workflows/**"
              ],
              "test_patterns": [
                "tests/**",
                "test/**",
                "spec/**",
                "**/*.test.*",
                "**/*.spec.*",
                "test_*.py",
                "*_test.py",
                "*_test.go",
                "**/test_*.py",
                "**/*_test.py",
                "**/*_test.go"
              ],
              "max_selected_tests": 200,
              "execution_timeout_seconds": 600,
              "focused_commands": [],
              "full_commands": [],
              "allowed_executables": [
                "python",
                "python3",
                "py",
                "pytest",
                "npm",
                "npx",
                "node",
                "go",
                "cargo",
                "dotnet",
                "mvn",
                "gradle",
                "gradlew",
                "make"
              ]
            },
            "selection_rules": {
              "precedence": [
                "exact_changed",
                "explicit_test_ownership",
                "structural_dependencies",
                "predictive_impact"
              ],
              "require_all_changed_files_mapped": true,
              "widen_before_full": true,
              "predictive_signal_is_sufficient_alone": false
            },
            "fallback": {
              "strategy": "full",
              "conditions": [
                "release",
                "core_change",
                "impact_unavailable",
                "impact_degraded",
                "unmapped_change"
              ]
            },
            "strategy": "full",
            "reason": "max_changed_files_exceeded",
            "runtime_requests": {},
            "plan_hash": "823802ada8155e43a0efb2dd3d421cb71532c5abf8c5ca42a88f3b0e3cec6f7f"
          },
          "output_hash": "e64176ce68c8cc5feab588e2ac1831b2ba91b36d2a48f0352a70b600e7471a8f",
          "completed_at": "2026-07-24T19:48:59Z"
        },
        {
          "id": "context",
          "action": "substrate.enrich",
          "status": "completed",
          "resolved_input_hash": "0446a7d5e9b2840abcc76cfc797e3f2cbb12212af2a8bdd02c66439fa667bc57",
          "started_at": "2026-07-24T19:48:59Z",
          "output": {
            "status": "disabled",
            "results": [],
            "local_source_refs": [
              "REQ-173",
              "PRD-011",
              "ARCH-011",
              "IMP-013",
              ".prd_plugin/hooks/prd_reason_guard.py",
              "scripts/prd_status.py",
              "scripts/prd_ui_export.py",
              "scripts/reason_guard_benchmark.py",
              "tests/test_reason_guard.py",
              "tests/test_reason_guard_benchmark.py",
              "tests/test_hook_dispatcher.py",
              "tests/test_prd_install.py",
              "docs/REASONING-GUARD.md"
            ]
          },
          "output_hash": "4bfb063f1b33e08711ae2c883255fcc5fb5348c6f252966bac7219b4c88863ae",
          "completed_at": "2026-07-24T19:48:59Z"
        },
        {
          "id": "review",
          "action": "judgment.request",
          "status": "completed",
          "resolved_input_hash": "6defd5b2c66e0a1910a5c443569174a57b2a38321c1804ffe8f67f7f65d83a20",
          "started_at": "2026-07-24T19:48:59Z",
          "judgment_request": {
            "contract_version": 1,
            "run_id": "WFR-410",
            "step_id": "review",
            "task": "code_review",
            "instructions": "Find material correctness, robustness, security, compatibility, or test gaps; do not restate mechanical facts.",
            "source_refs": [
              "REQ-173",
              "PRD-011",
              "ARCH-011",
              "IMP-013",
              ".prd_plugin/hooks/prd_reason_guard.py",
              "scripts/prd_status.py",
              "scripts/prd_ui_export.py",
              "scripts/reason_guard_benchmark.py",
              "tests/test_reason_guard.py",
              "tests/test_reason_guard_benchmark.py",
              "tests/test_hook_dispatcher.py",
              "tests/test_prd_install.py",
              "docs/REASONING-GUARD.md"
            ],
            "source_hashes": {
              ".prd_plugin/hooks/prd_reason_guard.py": "5c6085787d0999ff346f78baf3c15c472207c78f3e0c6a56ec84b88205358348",
              "scripts/prd_status.py": "deae49d711b7ae6c2f2bbd06e7fea59912fb8f59ba1e4621f4afa984fb0292cd",
              "scripts/prd_ui_export.py": "a4acb5d25e6591b78f0e53aed3d87b007e36176a6b10cc19a84521afcf14b647",
              "scripts/reason_guard_benchmark.py": "990f101f9973a59f0df88fa47c8fc884e144461c547796301ea3ef510ad861ee",
              "tests/test_reason_guard.py": "249ebf39e754d420165c77791cc270e4dddfef068d1f9f8b3788f63623a194dd",
              "tests/test_reason_guard_benchmark.py": "9dcff511dd5345504ac80747348d4dd15f179cb4ebfb3584ea0880178e34166f",
              "tests/test_hook_dispatcher.py": "3da98118bda9ae5664587149206433da06aa296c1bc36056d0970c525c680384",
              "tests/test_prd_install.py": "603aec403a21e21d5fd57b47bdd524e66b9b323d7d04d29635ed0ec5a11e5253",
              "docs/REASONING-GUARD.md": "9a95259089bfb88bb73406c4461287e537cc39de2a5d2211a169c4167be9ea94"
            },
            "result_schema": {
              "type": "object",
              "required": [
                "summary",
                "findings",
                "source_refs"
              ],
              "properties": {
                "summary": {
                  "type": "string"
                },
                "findings": {
                  "type": "array",
                  "items": {
                    "type": "object"
                  }
                },
                "source_refs": {
                  "type": "array",
                  "items": {
                    "type": "string"
                  }
                }
              }
            },
            "executor": "ai-collab",
            "profile": "fast-capable",
            "constraints": {
              "no_project_state_writes": true,
              "require_source_refs": true
            },
            "request_hash": "d3c81ac1ec4a71bf2aba166c633dde8aa43698c8f55f2f5f9fd84b21361c1b77"
          },
          "output": {
            "summary": "Kernel corrections are sound; one explicit acceptance-fixture gap remains.",
            "findings": [
              {
                "severity": "high",
                "path": "tests/test_reason_guard.py",
                "summary": "Approved acceptance requires explicit fixtures for unknown directive version/key, invalid blocking type, and future report schema recovery."
              }
            ],
            "source_refs": [
              "PRD-011",
              "tests/test_reason_guard.py",
              ".prd_plugin/hooks/prd_reason_guard.py"
            ]
          },
          "output_hash": "fb0c3cdb228cae3ed6ca07be4b03ab60b97175d40d9568c842194ae9743429c7",
          "completed_at": "2026-07-24T19:49:35Z",
          "judgment_result": {
            "request_hash": "d3c81ac1ec4a71bf2aba166c633dde8aa43698c8f55f2f5f9fd84b21361c1b77",
            "executor": "ai-collab",
            "profile": "fast-capable"
          }
        }
      ],
      "completed_at": "2026-07-24T19:49:35Z"
    },
    {
      "id": "WFR-411",
      "schema_version": "1.0",
      "workflow_id": "engineering.code-review",
      "workflow_version": 1,
      "definition_hash": "ad3df68a0ff3c3ede35fe5266dcfbffbe7b1ba3e8ada5fc4b9012db9f451212f",
      "plan_hash": "3109c1e535170e4330071318464f38512e35eaa4bbee10e4b0d3d4140ce531bf",
      "input_hash": "b01091fa1ec57ff93e295d6b5a0c005d6b4e3dc53e4301b298a1c807c9981499",
      "inputs": {
        "base_ref": "v0.16.53",
        "source_refs": [
          "REQ-173",
          "PRD-011",
          "ARCH-011",
          "IMP-013",
          ".prd_plugin/hooks/prd_reason_guard.py",
          "scripts/prd_status.py",
          "scripts/prd_ui_export.py",
          "scripts/reason_guard_benchmark.py",
          "tests/test_reason_guard.py",
          "tests/test_reason_guard_benchmark.py",
          "tests/test_hook_dispatcher.py",
          "tests/test_prd_install.py",
          "docs/REASONING-GUARD.md"
        ]
      },
      "idempotency_key": "req-173-code-review-v3",
      "status": "completed",
      "attempt": 1,
      "created_at": "2026-07-24T19:50:18Z",
      "updated_at": "2026-07-24T19:50:59Z",
      "receipts": [
        {
          "step_id": "diff",
          "action": "git.diff_check",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "11c11db30f4b3f6c758722ba3e27eea08145b7d212f6a157451e364b48475280",
          "completed_at": "2026-07-24T19:50:18Z"
        },
        {
          "step_id": "verification",
          "action": "verification.plan",
          "input_hash": "2022c88d1d735738a78fe474f34a1cb199fbea3208f5821288f501a58bfa7be4",
          "output_hash": "e64176ce68c8cc5feab588e2ac1831b2ba91b36d2a48f0352a70b600e7471a8f",
          "completed_at": "2026-07-24T19:50:19Z"
        },
        {
          "step_id": "context",
          "action": "substrate.enrich",
          "input_hash": "0446a7d5e9b2840abcc76cfc797e3f2cbb12212af2a8bdd02c66439fa667bc57",
          "output_hash": "4bfb063f1b33e08711ae2c883255fcc5fb5348c6f252966bac7219b4c88863ae",
          "completed_at": "2026-07-24T19:50:19Z"
        },
        {
          "step_id": "review",
          "action": "judgment.request",
          "input_hash": "6defd5b2c66e0a1910a5c443569174a57b2a38321c1804ffe8f67f7f65d83a20",
          "output_hash": "e52718a199ab54e083e6dd48871128c484f28ac70e74615db221c20c6bdf5677",
          "request_hash": "11b8a5581be8517d70f82718148b8d478f04c490816dd012dd483459b8dc907c",
          "completed_at": "2026-07-24T19:50:59Z"
        }
      ],
      "steps": [
        {
          "id": "diff",
          "action": "git.diff_check",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-24T19:50:18Z",
          "output": {
            "passed": true
          },
          "output_hash": "11c11db30f4b3f6c758722ba3e27eea08145b7d212f6a157451e364b48475280",
          "completed_at": "2026-07-24T19:50:18Z"
        },
        {
          "id": "verification",
          "action": "verification.plan",
          "status": "completed",
          "resolved_input_hash": "2022c88d1d735738a78fe474f34a1cb199fbea3208f5821288f501a58bfa7be4",
          "started_at": "2026-07-24T19:50:19Z",
          "output": {
            "schema_version": "1.0",
            "contract_version": 1,
            "executor": "ai-collab",
            "changed_files": [
              ".prd_plugin/drift/events.jsonl",
              ".prd_plugin/hooks/prd_reason_guard.py",
              ".prd_plugin/ids/registry.json",
              ".prd_plugin/state/artifacts/architecture/ARCH-011.json",
              ".prd_plugin/state/artifacts/implementation_plan/IMP-013.json",
              ".prd_plugin/state/artifacts/prd/PRD-011.json",
              ".prd_plugin/state/requests.json",
              ".prd_plugin/state/tracking.json",
              ".prd_plugin/state/workflow-runs.json",
              "AGENTS.md",
              "CLAUDE.md",
              "docs/REASONING-GUARD.md",
              "raw/hooks/2026-07-24-reasoning-guard-benchmark.md",
              "raw/hooks/2026-07-24-structured-reasoning-diagnostic-kernel.md",
              "scripts/prd_status.py",
              "scripts/prd_ui_export.py",
              "scripts/reason_guard_benchmark.py",
              "templates/feature-skill-map.json",
              "templates/repo-skeleton/.prd_plugin/hooks/prd_reason_guard.py",
              "templates/repo-skeleton/AGENTS.md",
              "templates/repo-skeleton/CLAUDE.md",
              "tests/test_feature_skill_audit.py",
              "tests/test_hook_dispatcher.py",
              "tests/test_prd_install.py",
              "tests/test_prd_ui_export.py",
              "tests/test_reason_guard.py",
              "tests/test_reason_guard_benchmark.py",
              "tests/test_tracking_commands.py",
              "wiki/hooks/reasoning-guard.md",
              "wiki/index.md",
              "wiki/log.md"
            ],
            "change_fingerprint": "0fbbc44319da6b117069fb861edf26902196fb645e05abd73c7ebadac192c6fa",
            "policy": {
              "enabled": true,
              "executor": "ai-collab",
              "neighbor_limit": 12,
              "max_changed_files": 25,
              "fallback": "full",
              "full_suite_triggers": [
                "release",
                "core_change",
                "impact_unavailable",
                "impact_degraded",
                "unmapped_change"
              ],
              "core_paths": [
                "package.json",
                "package-lock.json",
                "pyproject.toml",
                "Cargo.toml",
                "go.mod",
                ".github/workflows/**"
              ],
              "test_patterns": [
                "tests/**",
                "test/**",
                "spec/**",
                "**/*.test.*",
                "**/*.spec.*",
                "test_*.py",
                "*_test.py",
                "*_test.go",
                "**/test_*.py",
                "**/*_test.py",
                "**/*_test.go"
              ],
              "max_selected_tests": 200,
              "execution_timeout_seconds": 600,
              "focused_commands": [],
              "full_commands": [],
              "allowed_executables": [
                "python",
                "python3",
                "py",
                "pytest",
                "npm",
                "npx",
                "node",
                "go",
                "cargo",
                "dotnet",
                "mvn",
                "gradle",
                "gradlew",
                "make"
              ]
            },
            "selection_rules": {
              "precedence": [
                "exact_changed",
                "explicit_test_ownership",
                "structural_dependencies",
                "predictive_impact"
              ],
              "require_all_changed_files_mapped": true,
              "widen_before_full": true,
              "predictive_signal_is_sufficient_alone": false
            },
            "fallback": {
              "strategy": "full",
              "conditions": [
                "release",
                "core_change",
                "impact_unavailable",
                "impact_degraded",
                "unmapped_change"
              ]
            },
            "strategy": "full",
            "reason": "max_changed_files_exceeded",
            "runtime_requests": {},
            "plan_hash": "823802ada8155e43a0efb2dd3d421cb71532c5abf8c5ca42a88f3b0e3cec6f7f"
          },
          "output_hash": "e64176ce68c8cc5feab588e2ac1831b2ba91b36d2a48f0352a70b600e7471a8f",
          "completed_at": "2026-07-24T19:50:19Z"
        },
        {
          "id": "context",
          "action": "substrate.enrich",
          "status": "completed",
          "resolved_input_hash": "0446a7d5e9b2840abcc76cfc797e3f2cbb12212af2a8bdd02c66439fa667bc57",
          "started_at": "2026-07-24T19:50:19Z",
          "output": {
            "status": "disabled",
            "results": [],
            "local_source_refs": [
              "REQ-173",
              "PRD-011",
              "ARCH-011",
              "IMP-013",
              ".prd_plugin/hooks/prd_reason_guard.py",
              "scripts/prd_status.py",
              "scripts/prd_ui_export.py",
              "scripts/reason_guard_benchmark.py",
              "tests/test_reason_guard.py",
              "tests/test_reason_guard_benchmark.py",
              "tests/test_hook_dispatcher.py",
              "tests/test_prd_install.py",
              "docs/REASONING-GUARD.md"
            ]
          },
          "output_hash": "4bfb063f1b33e08711ae2c883255fcc5fb5348c6f252966bac7219b4c88863ae",
          "completed_at": "2026-07-24T19:50:19Z"
        },
        {
          "id": "review",
          "action": "judgment.request",
          "status": "completed",
          "resolved_input_hash": "6defd5b2c66e0a1910a5c443569174a57b2a38321c1804ffe8f67f7f65d83a20",
          "started_at": "2026-07-24T19:50:19Z",
          "judgment_request": {
            "contract_version": 1,
            "run_id": "WFR-411",
            "step_id": "review",
            "task": "code_review",
            "instructions": "Find material correctness, robustness, security, compatibility, or test gaps; do not restate mechanical facts.",
            "source_refs": [
              "REQ-173",
              "PRD-011",
              "ARCH-011",
              "IMP-013",
              ".prd_plugin/hooks/prd_reason_guard.py",
              "scripts/prd_status.py",
              "scripts/prd_ui_export.py",
              "scripts/reason_guard_benchmark.py",
              "tests/test_reason_guard.py",
              "tests/test_reason_guard_benchmark.py",
              "tests/test_hook_dispatcher.py",
              "tests/test_prd_install.py",
              "docs/REASONING-GUARD.md"
            ],
            "source_hashes": {
              ".prd_plugin/hooks/prd_reason_guard.py": "5c6085787d0999ff346f78baf3c15c472207c78f3e0c6a56ec84b88205358348",
              "scripts/prd_status.py": "deae49d711b7ae6c2f2bbd06e7fea59912fb8f59ba1e4621f4afa984fb0292cd",
              "scripts/prd_ui_export.py": "a4acb5d25e6591b78f0e53aed3d87b007e36176a6b10cc19a84521afcf14b647",
              "scripts/reason_guard_benchmark.py": "990f101f9973a59f0df88fa47c8fc884e144461c547796301ea3ef510ad861ee",
              "tests/test_reason_guard.py": "dcf64c1ed7a739f432fad716e148505bc91f69876ca78821c6f63d52cf8d05ea",
              "tests/test_reason_guard_benchmark.py": "9dcff511dd5345504ac80747348d4dd15f179cb4ebfb3584ea0880178e34166f",
              "tests/test_hook_dispatcher.py": "3da98118bda9ae5664587149206433da06aa296c1bc36056d0970c525c680384",
              "tests/test_prd_install.py": "603aec403a21e21d5fd57b47bdd524e66b9b323d7d04d29635ed0ec5a11e5253",
              "docs/REASONING-GUARD.md": "9a95259089bfb88bb73406c4461287e537cc39de2a5d2211a169c4167be9ea94"
            },
            "result_schema": {
              "type": "object",
              "required": [
                "summary",
                "findings",
                "source_refs"
              ],
              "properties": {
                "summary": {
                  "type": "string"
                },
                "findings": {
                  "type": "array",
                  "items": {
                    "type": "object"
                  }
                },
                "source_refs": {
                  "type": "array",
                  "items": {
                    "type": "string"
                  }
                }
              }
            },
            "executor": "ai-collab",
            "profile": "fast-capable",
            "constraints": {
              "no_project_state_writes": true,
              "require_source_refs": true
            },
            "request_hash": "11b8a5581be8517d70f82718148b8d478f04c490816dd012dd483459b8dc907c"
          },
          "output": {
            "summary": "No material correctness, robustness, security, compatibility, or acceptance-test findings remain after the two fix loops.",
            "findings": [],
            "source_refs": [
              "REQ-173",
              "PRD-011",
              "ARCH-011",
              "IMP-013",
              ".prd_plugin/hooks/prd_reason_guard.py",
              "scripts/prd_status.py",
              "scripts/prd_ui_export.py",
              "scripts/reason_guard_benchmark.py",
              "tests/test_reason_guard.py",
              "tests/test_reason_guard_benchmark.py",
              "tests/test_hook_dispatcher.py",
              "tests/test_prd_install.py",
              "docs/REASONING-GUARD.md"
            ]
          },
          "output_hash": "e52718a199ab54e083e6dd48871128c484f28ac70e74615db221c20c6bdf5677",
          "completed_at": "2026-07-24T19:50:59Z",
          "judgment_result": {
            "request_hash": "11b8a5581be8517d70f82718148b8d478f04c490816dd012dd483459b8dc907c",
            "executor": "ai-collab",
            "profile": "fast-capable"
          }
        }
      ],
      "completed_at": "2026-07-24T19:50:59Z"
    },
    {
      "id": "WFR-412",
      "schema_version": "1.0",
      "workflow_id": "engineering.verify",
      "workflow_version": 1,
      "definition_hash": "82a795fafbc550f124ec781ea9c5b6170d95b5e687fffadf6939f1f160df5ce1",
      "plan_hash": "4bb158b22c9a87a54832df9b9b6a98a77151ce9005499d6a8337a4c015089e5e",
      "input_hash": "fd934039265310404d648cea4b1eb28964383bb8a97ef14b85b2b85d725d502e",
      "inputs": {
        "base_ref": "",
        "release": false
      },
      "idempotency_key": "req-173-final-verify-0.16.54",
      "status": "completed",
      "attempt": 1,
      "created_at": "2026-07-24T19:57:34Z",
      "updated_at": "2026-07-24T19:59:25Z",
      "receipts": [
        {
          "step_id": "plan",
          "action": "verification.plan",
          "input_hash": "fd934039265310404d648cea4b1eb28964383bb8a97ef14b85b2b85d725d502e",
          "output_hash": "f8c64c2efa1fe5c8160bc28a969f6c01c45aa2c2ad68a93c7f4165c555be25b0",
          "completed_at": "2026-07-24T19:57:34Z"
        },
        {
          "step_id": "execute",
          "action": "verification.execute",
          "input_hash": "63e55beb89e93e846016733de98f96ab40f41a54680ff7dc077acf7140f3bafb",
          "output_hash": "cce5f999790ba8db3f014ebec35330789fa62e83ffef7f4667654dedb6f1c695",
          "completed_at": "2026-07-24T19:59:22Z"
        },
        {
          "step_id": "diff",
          "action": "git.diff_check",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "11c11db30f4b3f6c758722ba3e27eea08145b7d212f6a157451e364b48475280",
          "completed_at": "2026-07-24T19:59:22Z"
        },
        {
          "step_id": "state",
          "action": "state.consistency",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "9963110856ca8182da0dfdbb22f6960618b55dbc121be0dce0066a7c7a389b10",
          "completed_at": "2026-07-24T19:59:23Z"
        },
        {
          "step_id": "gate",
          "action": "state.gate",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "6a0ed3d65779be265214a0e8395ab03978b9f7b91da9ffb59b257b73f82d087d",
          "completed_at": "2026-07-24T19:59:24Z"
        }
      ],
      "steps": [
        {
          "id": "plan",
          "action": "verification.plan",
          "status": "completed",
          "resolved_input_hash": "fd934039265310404d648cea4b1eb28964383bb8a97ef14b85b2b85d725d502e",
          "started_at": "2026-07-24T19:57:34Z",
          "output": {
            "schema_version": "1.0",
            "contract_version": 1,
            "executor": "ai-collab",
            "changed_files": [
              ".prd_plugin/ids/registry.json",
              ".prd_plugin/state/workflow-runs.json"
            ],
            "change_fingerprint": "1d5f4b269e0059f4d5d614a65bed63c249a98ea6d46b06ed5d2ef6cd50cef0d4",
            "policy": {
              "enabled": true,
              "executor": "ai-collab",
              "neighbor_limit": 12,
              "max_changed_files": 25,
              "fallback": "full",
              "full_suite_triggers": [
                "release",
                "core_change",
                "impact_unavailable",
                "impact_degraded",
                "unmapped_change"
              ],
              "core_paths": [
                "package.json",
                "package-lock.json",
                "pyproject.toml",
                "Cargo.toml",
                "go.mod",
                ".github/workflows/**"
              ],
              "test_patterns": [
                "tests/**",
                "test/**",
                "spec/**",
                "**/*.test.*",
                "**/*.spec.*",
                "test_*.py",
                "*_test.py",
                "*_test.go",
                "**/test_*.py",
                "**/*_test.py",
                "**/*_test.go"
              ],
              "max_selected_tests": 200,
              "execution_timeout_seconds": 600,
              "focused_commands": [],
              "full_commands": [],
              "allowed_executables": [
                "python",
                "python3",
                "py",
                "pytest",
                "npm",
                "npx",
                "node",
                "go",
                "cargo",
                "dotnet",
                "mvn",
                "gradle",
                "gradlew",
                "make"
              ]
            },
            "selection_rules": {
              "precedence": [
                "exact_changed",
                "explicit_test_ownership",
                "structural_dependencies",
                "predictive_impact"
              ],
              "require_all_changed_files_mapped": true,
              "widen_before_full": true,
              "predictive_signal_is_sufficient_alone": false
            },
            "fallback": {
              "strategy": "full",
              "conditions": [
                "release",
                "core_change",
                "impact_unavailable",
                "impact_degraded",
                "unmapped_change"
              ]
            },
            "strategy": "full",
            "reason": "executor_unavailable",
            "runtime_requests": {},
            "plan_hash": "de8dbab7f527d9e65618def9e1cb1ff034ece07a3c8789e070adb2708362b053"
          },
          "output_hash": "f8c64c2efa1fe5c8160bc28a969f6c01c45aa2c2ad68a93c7f4165c555be25b0",
          "completed_at": "2026-07-24T19:57:34Z"
        },
        {
          "id": "execute",
          "action": "verification.execute",
          "status": "completed",
          "resolved_input_hash": "63e55beb89e93e846016733de98f96ab40f41a54680ff7dc077acf7140f3bafb",
          "started_at": "2026-07-24T19:57:34Z",
          "output": {
            "status": "passed",
            "strategy": "full",
            "reason": "executor_unavailable",
            "selected_tests": [],
            "change_fingerprint": "1d5f4b269e0059f4d5d614a65bed63c249a98ea6d46b06ed5d2ef6cd50cef0d4",
            "plan_hash": "de8dbab7f527d9e65618def9e1cb1ff034ece07a3c8789e070adb2708362b053",
            "impact_receipts": [],
            "receipts": [
              {
                "command": [
                  "npm",
                  "test"
                ],
                "exit_code": 0,
                "stdout": "\n> prd-plugin@0.16.54 test\n> python -m unittest discover -s tests -v\n\n{\n  \"status\": \"fail\",\n  \"repo_root\": \"C:\\\\Users\\\\marku\\\\AppData\\\\Local\\\\Temp\\\\tmpco0mlf5e\",\n  \"summary\": {\n    \"errors\": 1,\n    \"warnings\": 0\n  },\n  \"findings\": [\n    {\n      \"check\": \"duplicate_id\",\n      \"severity\": \"error\",\n      \"summary\": \"Duplicate id REQ-002 in .prd_plugin/state/requests.json.\",\n      \"required_action\": \"Renumber one record so REQ-002 is unique. Allocate IDs with the MCP tool prd_next_id (or the record tools like prd_open_goal) instead of hand-computing them.\"\n    }\n  ]\n}\nautonomy_level set to guided\nautonomy_level set to autonomous\nDESTRUCTIVE RESET REQUESTED: --force --yes will erase protected PRD Plugin project data.\nThe following existing state/configuration files would be replaced with skeleton defaults:\n  - .prd_plugin/state/tracking.json\nThis may erase IDs, tracking, requests, decisions, health findings, configuration, and session memory.\nFor a normal safe update, remove --yes and run: npx prd-install . --force\nPRD Plugin safe update: preserving existing state/config and refreshing plugin files only. Never add --yes to a routine update; it requests a destructive reset.\nPRD Plugin safe update: preserving existing state/config and refreshing plugin files only. Never add --yes to a routine update; it requests a destructive reset.\nPRD Plugin safe update: preserving existing state/config and refreshing plugin files only. Never add --yes to a routine update; it requests a destructive reset.\nPRD Plugin safe update: preserving existing state/config and refreshing plugin files only. Never add --yes to a routine update; it requests a destructive reset.\nPRD Plugin safe update: preserving existing state/config and refreshing plugin files only. Never add --yes to a routine update; it requests a destructive reset.\nPRD Plugin safe update: preserving existing state/config and refreshing plugin files only. Never add --yes to a routine update; it requests a destructive reset.\nPRD Plugin safe update: preserving existing state/config and refreshing plugin files only. Never add --yes to a routine update; it requests a destructive reset.\nPRD Plugin safe update: preserving existing state/config and refreshing plugin files only. Never add --yes to a routine update; it requests a destructive reset.\nPRD Plugin safe update: preserving existing state/config and refreshing plugin files only. Never add --yes to a routine update; it requests a destructive reset.\nPRD Plugin safe update: preserving existing state/config and refreshing plugin files only. Never add --yes to a routine update; it requests a destructive reset.\nPRD Plugin safe update: preserving existing state/config and refreshing plugin files only. Never add --yes to a routine update; it requests a destructive reset.\nPRD Plugin safe update: preserving existing state/config and refreshing plugin files only. Never add --yes to a routine update; it requests a destructive reset.\nPRD Plugin safe update: preserving existing state/config and refreshing plugin files only. Never add --yes to a routine update; it requests a destructive reset.\nPRD Plugin safe update: preserving existing state/config and refreshing plugin files only. Never add --yes to a routine update; it requests a destructive reset.\nPRD Plugin safe update: preserving existing state/config and refreshing plugin files only. Never add --yes to a routine update; it requests a destructive reset.\nPRD Plugin safe update: preserving existing state/config and refreshing plugin files only. Never add --yes to a routine update; it requests a destructive reset.\nPRD Plugin safe update: preserving existing state/config and refreshing plugin files only. Never add --yes to a routine update; it requests a destructive reset.\n{\n  \"published\": false,\n  \"package\": \"prd-plugin\",\n  \"version\": \"9.9.9\",\n  \"version_seen\": null,\n  \"latest_seen\": null,\n  \"attempts_used\": 1\n}\n{\n  \"published\": true,\n  \"package\": \"prd-plugin\",\n  \"version\": \"1.2.3\",\n  \"version_seen\": \"1.2.3\",\n  \"latest_seen\": \"1.2.3\",\n  \"attempts_used\": 1\n}\n{\"decision\": \"block\", \"reason\": \"Autonomous run-until-done: goal TRK-159 is still active. Continue with the next incomplete step toward it \\u2014 do not stop to ask 'shall I proceed?'. If you genuinely need the user (consent floor: push/merge/publish/secrets, or a real blocker), create the file .prd_plugin/local/autonomy-pause with a one-line reason and then stop; the guard will let you. Otherwise keep going.\"}\n",
                "stderr": "es (test_unified_config.MutationTests.test_audit_reports_unknown_and_invalid_values) ... ok\ntest_enable_disable_only_accept_mutable_booleans (test_unified_config.MutationTests.test_enable_disable_only_accept_mutable_booleans) ... ok\ntest_failed_atomic_replace_leaves_original_config_untouched (test_unified_config.MutationTests.test_failed_atomic_replace_leaves_original_config_untouched) ... ok\ntest_malformed_config_is_never_replaced_by_a_mutation (test_unified_config.MutationTests.test_malformed_config_is_never_replaced_by_a_mutation) ... ok\ntest_manual_set_marks_profile_custom_and_preserves_style (test_unified_config.MutationTests.test_manual_set_marks_profile_custom_and_preserves_style) ... ok\ntest_scalar_parent_is_not_clobbered_by_nested_set (test_unified_config.MutationTests.test_scalar_parent_is_not_clobbered_by_nested_set) ... ok\ntest_builtin_profile_dry_run_then_atomic_apply (test_unified_config.ProfileTests.test_builtin_profile_dry_run_then_atomic_apply) ... ok\ntest_invalid_custom_profile_never_partially_writes (test_unified_config.ProfileTests.test_invalid_custom_profile_never_partially_writes) ... ok\ntest_save_show_diff_and_delete_custom_profile (test_unified_config.ProfileTests.test_save_show_diff_and_delete_custom_profile) ... ok\ntest_does_not_flag_canonical_prd_state_paths (test_unsubmitted_plugin_request.UnsubmittedPluginRequestTests.test_does_not_flag_canonical_prd_state_paths) ... ok\ntest_does_not_flag_ordinary_project_requests (test_unsubmitted_plugin_request.UnsubmittedPluginRequestTests.test_does_not_flag_ordinary_project_requests) ... ok\ntest_does_not_flag_rejected_requests (test_unsubmitted_plugin_request.UnsubmittedPluginRequestTests.test_does_not_flag_rejected_requests) ... ok\ntest_does_not_flag_when_already_marked_upstream (test_unsubmitted_plugin_request.UnsubmittedPluginRequestTests.test_does_not_flag_when_already_marked_upstream) ... ok\ntest_flags_a_local_request_about_a_plugin_script (test_unsubmitted_plugin_request.UnsubmittedPluginRequestTests.test_flags_a_local_request_about_a_plugin_script) ... ok\ntest_flags_a_request_that_names_itself_upstream (test_unsubmitted_plugin_request.UnsubmittedPluginRequestTests.test_flags_a_request_that_names_itself_upstream) ... ok\ntest_never_fires_in_the_hub_repo_itself (test_unsubmitted_plugin_request.UnsubmittedPluginRequestTests.test_never_fires_in_the_hub_repo_itself) ... ok\ntest_wired_into_run_checks (test_unsubmitted_plugin_request.UnsubmittedPluginRequestTests.test_wired_into_run_checks) ... ok\ntest_output_writes_lf_and_a_trailing_newline (test_utcp_first_authority.GeneratedArtifactsAreByteStableTests.test_output_writes_lf_and_a_trailing_newline) ... ok\ntest_the_committed_manual_matches_a_fresh_generation (test_utcp_first_authority.GeneratedArtifactsAreByteStableTests.test_the_committed_manual_matches_a_fresh_generation) ... ok\ntest_every_spec_tool_maps_to_a_catalog_capability (test_utcp_first_authority.ParityDirectionTests.test_every_spec_tool_maps_to_a_catalog_capability) ... ok\ntest_server_metadata_matches_the_spec (test_utcp_first_authority.ParityDirectionTests.test_server_metadata_matches_the_spec) ... ok\ntest_python_entry_points_share_the_same_lock (test_utcp_first_authority.SafetyUnchangedTests.test_python_entry_points_share_the_same_lock)\nThe migration target already exists and is proven: prd_reflections ... ok\ntest_the_state_lock_is_still_held_for_mutations (test_utcp_first_authority.SafetyUnchangedTests.test_the_state_lock_is_still_held_for_mutations) ... ok\ntest_no_shipped_tool_metadata_carries_mojibake (test_utcp_first_authority.ShippedTextIsCleanTests.test_no_shipped_tool_metadata_carries_mojibake) ... ok\ntest_shipped_tool_metadata_is_valid_utf8 (test_utcp_first_authority.ShippedTextIsCleanTests.test_shipped_tool_metadata_is_valid_utf8)\nA file written through a cp1252 layer either fails to decode or ... ok\ntest_each_tool_declares_name_description_and_schema (test_utcp_first_authority.SpecIsTheSourceTests.test_each_tool_declares_name_description_and_schema) ... ok\ntest_the_manual_is_generated_from_the_spec_not_the_server (test_utcp_first_authority.SpecIsTheSourceTests.test_the_manual_is_generated_from_the_spec_not_the_server) ... ok\ntest_the_server_no_longer_authors_descriptions (test_utcp_first_authority.SpecIsTheSourceTests.test_the_server_no_longer_authors_descriptions)\nserver.cjs must READ definitions, not declare them. While a tool ... ok\ntest_the_spec_exists_and_declares_every_tool (test_utcp_first_authority.SpecIsTheSourceTests.test_the_spec_exists_and_declares_every_tool) ... ok\ntest_official_bridge_round_trips_cli_and_mcp_templates (test_utcp_first_catalog.BridgeParityTests.test_official_bridge_round_trips_cli_and_mcp_templates) ... ok\ntest_bridged_entries_reuse_server_metadata_verbatim (test_utcp_first_catalog.GeneratedProjectionTests.test_bridged_entries_reuse_server_metadata_verbatim)\nEach bridged manual entry's description and inputs equal the server's ... ok\ntest_checked_in_metadata_matches_live_server (test_utcp_first_catalog.GeneratedProjectionTests.test_checked_in_metadata_matches_live_server)\nThe pinned metadata projection cannot drift behind the live server. ... ok\ntest_mutations_keep_the_validated_handler_path (test_utcp_first_catalog.GuardedMutationTests.test_mutations_keep_the_validated_handler_path)\nEvery manual tool in a non-read capability calls the plugin state ... ok\ntest_read_only_cli_tools_stay_cli (test_utcp_first_catalog.GuardedMutationTests.test_read_only_cli_tools_stay_cli)\nThe 12 cli-native observe/recall tools keep their cli templates. ... ok\ntest_checked_in_metadata_projection_exists (test_utcp_first_catalog.ManualCompletenessTests.test_checked_in_metadata_projection_exists)\nThe server's tool metadata is a checked-in generated artifact so the ... ok\ntest_manual_covers_every_capability_on_both_transports (test_utcp_first_catalog.ManualCompletenessTests.test_manual_covers_every_capability_on_both_transports)\nEvery UTCP and MCP registration in the tool-surface catalog appears ... ok\ntest_appends_version_change_request (test_version_advice.VersionAdviceTests.test_appends_version_change_request) ... ok\ntest_builds_safe_update_advice_for_low_risk_releases (test_version_advice.VersionAdviceTests.test_builds_safe_update_advice_for_low_risk_releases) ... ok\ntest_cli_uses_hub_releases_when_downstream_repo_has_no_releases_file (test_version_advice.VersionAdviceTests.test_cli_uses_hub_releases_when_downstream_repo_has_no_releases_file) ... ok\ntest_detects_installed_version_from_bom_json (test_version_advice.VersionAdviceTests.test_detects_installed_version_from_bom_json) ... ok\ntest_detects_installed_version_from_opencode_plugin_manifest (test_version_advice.VersionAdviceTests.test_detects_installed_version_from_opencode_plugin_manifest) ... ok\ntest_detects_installed_version_from_prd_plugin_config (test_version_advice.VersionAdviceTests.test_detects_installed_version_from_prd_plugin_config) ... ok\ntest_detects_latest_version_from_plugin_manifest (test_version_advice.VersionAdviceTests.test_detects_latest_version_from_plugin_manifest) ... ok\ntest_installed_version_priority_prefers_config_then_codex_then_opencode (test_version_advice.VersionAdviceTests.test_installed_version_priority_prefers_config_then_codex_then_opencode) ... ok\ntest_orders_prerelease_before_final_release (test_version_advice.VersionAdviceTests.test_orders_prerelease_before_final_release) ... ok\ntest_recommends_review_first_for_medium_or_high_risk_release (test_version_advice.VersionAdviceTests.test_recommends_review_first_for_medium_or_high_risk_release) ... ok\ntest_disabled_returns_disabled_and_no_fetch (test_version_check.CheckTests.test_disabled_returns_disabled_and_no_fetch) ... ok\ntest_force_refetches_within_ttl (test_version_check.CheckTests.test_force_refetches_within_ttl) ... ok\ntest_network_failure_is_fail_open (test_version_check.CheckTests.test_network_failure_is_fail_open) ... ok\ntest_no_update_when_current (test_version_check.CheckTests.test_no_update_when_current) ... ok\ntest_status_is_cache_only_no_fetch (test_version_check.CheckTests.test_status_is_cache_only_no_fetch) ... ok\ntest_ttl_cache_avoids_refetch (test_version_check.CheckTests.test_ttl_cache_avoids_refetch) ... ok\ntest_ttl_expiry_refetches (test_version_check.CheckTests.test_ttl_expiry_refetches) ... ok\ntest_update_available_when_npm_is_ahead (test_version_check.CheckTests.test_update_available_when_npm_is_ahead) ... ok\ntest_status_cli_exits_zero (test_version_check.CliTests.test_status_cli_exits_zero) ... ok\ntest_default_ttl_is_responsive_not_a_day (test_version_check.FreshnessTests.test_default_ttl_is_responsive_not_a_day) ... ok\ntest_fetch_latest_accepts_a_timeout (test_version_check.FreshnessTests.test_fetch_latest_accepts_a_timeout) ... ok\ntest_nudge_refreshes_in_session_not_cache_only (test_version_check.FreshnessTests.test_nudge_refreshes_in_session_not_cache_only) ... ok\ntest_registry_default_ttl_matches (test_version_check.FreshnessTests.test_registry_default_ttl_matches) ... ok\ntest_semver_ordering (test_version_check.ParseTests.test_semver_ordering) ... ok\ntest_set_enabled_writes_config (test_version_check.ToggleTests.test_set_enabled_writes_config) ... ok\ntest_config_has_version_check_default_on (test_version_check.WiringTests.test_config_has_version_check_default_on) ... ok\ntest_nudge_surfaces_update_available (test_version_check.WiringTests.test_nudge_surfaces_update_available) ... ok\ntest_prd_version_command_exists (test_version_check.WiringTests.test_prd_version_command_exists) ... ok\ntest_script_registered_downstream (test_version_check.WiringTests.test_script_registered_downstream) ... ok\ntest_plan_cli_emits_json (test_wiki_backfill.CliTests.test_plan_cli_emits_json) ... ok\ntest_status_cli (test_wiki_backfill.CliTests.test_status_cli) ... ok\ntest_marker_written_for_established_repo_gaining_wiki (test_wiki_backfill.InstallerMarkerTests.test_marker_written_for_established_repo_gaining_wiki) ... ok\ntest_no_marker_for_empty_scaffold (test_wiki_backfill.InstallerMarkerTests.test_no_marker_for_empty_scaffold) ... ok\ntest_no_marker_when_wiki_already_exists (test_wiki_backfill.InstallerMarkerTests.test_no_marker_when_wiki_already_exists) ... ok\ntest_no_marker_when_wiki_disabled (test_wiki_backfill.InstallerMarkerTests.test_no_marker_when_wiki_disabled) ... ok\ntest_pending_false_when_absent (test_wiki_backfill.StatusTests.test_pending_false_when_absent) ... ok\ntest_pending_false_when_wiki_already_exists (test_wiki_backfill.StatusTests.test_pending_false_when_wiki_already_exists) ... ok\ntest_pending_true_when_marker_present (test_wiki_backfill.StatusTests.test_pending_true_when_marker_present) ... ok\ntest_plan_excludes_generated_report_artifacts (test_wiki_backfill.SurveyPlanTests.test_plan_excludes_generated_report_artifacts)\nrequest-report/ (incl. its calibration report trees) and docs/evidence/ ... ok\ntest_plan_excludes_plugin_and_vendor_noise (test_wiki_backfill.SurveyPlanTests.test_plan_excludes_plugin_and_vendor_noise) ... ok\ntest_plan_inventories_code_docs_and_state (test_wiki_backfill.SurveyPlanTests.test_plan_inventories_code_docs_and_state) ... ok\ntest_plan_is_read_only (test_wiki_backfill.SurveyPlanTests.test_plan_is_read_only) ... ok\ntest_wiki_drift_in_on_stop_and_default_sets (test_wiki_backfill.WikiDriftMonitorWiringTests.test_wiki_drift_in_on_stop_and_default_sets) ... ok\ntest_current_article_no_drift (test_wiki_backfill.WikiDriftTests.test_current_article_no_drift) ... ok\ntest_drift_cli (test_wiki_backfill.WikiDriftTests.test_drift_cli) ... ok\ntest_far_behind_article_flagged (test_wiki_backfill.WikiDriftTests.test_far_behind_article_flagged) ... ok\ntest_no_wiki_is_ok (test_wiki_backfill.WikiDriftTests.test_no_wiki_is_ok) ... ok\ntest_unlinked_markdown_reference_is_part_of_wiki_drift (test_wiki_backfill.WikiDriftTests.test_unlinked_markdown_reference_is_part_of_wiki_drift) ... ok\ntest_unstamped_article_flagged (test_wiki_backfill.WikiDriftTests.test_unstamped_article_flagged) ... ok\ntest_wiki_drift_uses_configured_wiki_directory (test_wiki_backfill.WikiDriftTests.test_wiki_drift_uses_configured_wiki_directory) ... ok\ntest_ambiguous_reference_is_reported_but_never_guessed (test_wiki_backfill.WikiInlineMarkdownLinkTests.test_ambiguous_reference_is_reported_but_never_guessed) ... ok\ntest_cli_check_fails_and_fix_then_passes (test_wiki_backfill.WikiInlineMarkdownLinkTests.test_cli_check_fails_and_fix_then_passes) ... ok\ntest_existing_inline_links_and_fenced_examples_are_not_findings (test_wiki_backfill.WikiInlineMarkdownLinkTests.test_existing_inline_links_and_fenced_examples_are_not_findings) ... ok\ntest_fix_rewrites_only_unambiguous_references_to_relative_inline_links (test_wiki_backfill.WikiInlineMarkdownLinkTests.test_fix_rewrites_only_unambiguous_references_to_relative_inline_links) ... ok\ntest_reports_resolvable_bare_and_code_wrapped_markdown_references (test_wiki_backfill.WikiInlineMarkdownLinkTests.test_reports_resolvable_bare_and_code_wrapped_markdown_references) ... ok\ntest_nudge_surfaces_pending_backfill (test_wiki_backfill.WiringTests.test_nudge_surfaces_pending_backfill) ... ok\ntest_script_registered_downstream (test_wiki_backfill.WiringTests.test_script_registered_downstream) ... ok\ntest_skill_has_backfill_mode (test_wiki_backfill.WiringTests.test_skill_has_backfill_mode) ... ok\ntest_copy_and_download_controls_are_wired (test_wiki_html_export.WikiHtmlExportTests.test_copy_and_download_controls_are_wired) ... ok\ntest_default_output_lands_in_the_local_runtime_dir (test_wiki_html_export.WikiHtmlExportTests.test_default_output_lands_in_the_local_runtime_dir) ... ok\ntest_every_page_is_embedded_with_exact_markdown (test_wiki_html_export.WikiHtmlExportTests.test_every_page_is_embedded_with_exact_markdown) ... ok\ntest_export_all_generates_viewers_and_super_index (test_wiki_html_export.WikiHtmlExportTests.test_export_all_generates_viewers_and_super_index) ... ok\ntest_export_is_one_self_contained_offline_file (test_wiki_html_export.WikiHtmlExportTests.test_export_is_one_self_contained_offline_file) ... ok\ntest_guest_repo_viewer_is_hosted_by_the_host_repo (test_wiki_html_export.WikiHtmlExportTests.test_guest_repo_viewer_is_hosted_by_the_host_repo)\nA repo without .prd_plugin gets NO new files in its own tree; its ... ok\ntest_hub_repo_exports_all_pages (test_wiki_html_export.WikiHtmlExportTests.test_hub_repo_exports_all_pages) ... ok\ntest_parse_wiki_log_extracts_dated_entries_with_bodies (test_wiki_html_export.WikiHtmlExportTests.test_parse_wiki_log_extracts_dated_entries_with_bodies)\nREQ-112: every workspace log follows '## [date] mode | text'. ... ok\ntest_parse_wiki_log_tolerates_missing_log (test_wiki_html_export.WikiHtmlExportTests.test_parse_wiki_log_tolerates_missing_log) ... ok\ntest_script_content_cannot_break_the_payload (test_wiki_html_export.WikiHtmlExportTests.test_script_content_cannot_break_the_payload) ... ok\ntest_super_index_has_a_combined_changelog (test_wiki_html_export.WikiHtmlExportTests.test_super_index_has_a_combined_changelog) ... ok\ntest_super_index_reports_page_counts (test_wiki_html_export.WikiHtmlExportTests.test_super_index_reports_page_counts) ... ok\ntest_workspace_discovery_uses_the_wiki_convention_marker (test_wiki_html_export.WikiHtmlExportTests.test_workspace_discovery_uses_the_wiki_convention_marker)\nREQ-110 + REQ-111: any immediate child whose wiki follows the ... ok\ntest_a_repo_without_a_wiki_is_not_in_drift (test_wiki_ingest_drift.DetectionTests.test_a_repo_without_a_wiki_is_not_in_drift)\nNo wiki is a legitimate state, not a failure to ingest. ... ok\ntest_fully_ingested_repo_is_clean (test_wiki_ingest_drift.DetectionTests.test_fully_ingested_repo_is_clean) ... ok\ntest_malformed_state_degrades_rather_than_raising (test_wiki_ingest_drift.DetectionTests.test_malformed_state_degrades_rather_than_raising) ... ok\ntest_non_implemented_requests_are_never_expected_in_the_log (test_wiki_ingest_drift.DetectionTests.test_non_implemented_requests_are_never_expected_in_the_log) ... ok\ntest_only_work_since_the_last_ingest_is_actionable (test_wiki_ingest_drift.DetectionTests.test_only_work_since_the_last_ingest_is_actionable)\nRaw counting flags pre-wiki history as drift � ~70 items in the hub, ... ok\ntest_reports_implemented_requests_absent_from_the_log (test_wiki_ingest_drift.DetectionTests.test_reports_implemented_requests_absent_from_the_log) ... ok\ntest_it_runs_against_this_repo_and_returns_a_usable_report (test_wiki_ingest_drift.RealRepoTests.test_it_runs_against_this_repo_and_returns_a_usable_report)\nGrounded against real state, but NOT pinned to a specific gap: a test ... ok\ntest_prd_status_omits_it_when_clean (test_wiki_ingest_drift.SurfaceTests.test_prd_status_omits_it_when_clean) ... ok\ntest_prd_status_reports_the_drift (test_wiki_ingest_drift.SurfaceTests.test_prd_status_reports_the_drift) ... ok\ntest_this_repos_wiki_reads_byte_exact (test_wiki_page_contract.HubRepoSmokeTests.test_this_repos_wiki_reads_byte_exact) ... ok\ntest_list_enumerates_canonical_pages_with_titles (test_wiki_page_contract.WikiPageListTests.test_list_enumerates_canonical_pages_with_titles) ... ok\ntest_boundaries_are_hard (test_wiki_page_contract.WikiPageReadTests.test_boundaries_are_hard) ... ok\ntest_drift_remains_the_default_action (test_wiki_page_contract.WikiPageReadTests.test_drift_remains_the_default_action) ... ok\ntest_read_page_without_stamps_reports_null_provenance (test_wiki_page_contract.WikiPageReadTests.test_read_page_without_stamps_reports_null_provenance) ... ok\ntest_read_requires_a_path (test_wiki_page_contract.WikiPageReadTests.test_read_requires_a_path) ... ok\ntest_read_returns_exact_markdown_with_provenance (test_wiki_page_contract.WikiPageReadTests.test_read_returns_exact_markdown_with_provenance) ... ok\ntest_no_cp1252_unencodable_chars_in_agent_facing_tools (test_windows_console_safe.SourceScanTests.test_no_cp1252_unencodable_chars_in_agent_facing_tools) ... ok\ntest_backfill_pending_status_renders_cp1252_safe (test_windows_console_safe.StatusRenderTests.test_backfill_pending_status_renders_cp1252_safe) ... ok\ntest_json_output_escapes_non_console_characters (test_windows_console_safe.WorkflowCliRenderTests.test_json_output_escapes_non_console_characters) ... ok\ntest_repository_workflow_surfaces_are_chml_zero (test_workflow_chml_audit.WorkflowChmlAuditTests.test_repository_workflow_surfaces_are_chml_zero) ... ok\ntest_semantic_skill_finding_is_part_of_workflow_chml (test_workflow_chml_audit.WorkflowChmlAuditTests.test_semantic_skill_finding_is_part_of_workflow_chml) ... ok\ntest_git_workflow_pushes_clean_verified_commits_in_autonomous (test_workflow_consistency.AutonomyConflictResolutionTests.test_git_workflow_pushes_clean_verified_commits_in_autonomous) ... ok\ntest_request_intake_defers_autonomy_and_owns_graduation (test_workflow_consistency.AutonomyConflictResolutionTests.test_request_intake_defers_autonomy_and_owns_graduation) ... ok\ntest_evidence_pair_states_create_vs_review_boundary (test_workflow_consistency.BoundaryClarityTests.test_evidence_pair_states_create_vs_review_boundary) ... ok\ntest_session_close_states_memory_boundary (test_workflow_consistency.BoundaryClarityTests.test_session_close_states_memory_boundary) ... ok\ntest_document_branch_has_promotion_owner (test_workflow_consistency.DeadEndOwnerTests.test_document_branch_has_promotion_owner) ... ok\ntest_health_findings_have_triage_dispositions (test_workflow_consistency.DeadEndOwnerTests.test_health_findings_have_triage_dispositions) ... ok\ntest_memory_owns_schema_version_changes (test_workflow_consistency.DeadEndOwnerTests.test_memory_owns_schema_version_changes) ... ok\ntest_planning_lifecycle_has_stage_readiness_checkpoints (test_workflow_consistency.DeadEndOwnerTests.test_planning_lifecycle_has_stage_readiness_checkpoints) ... ok\ntest_session_close_runs_traceability_sync (test_workflow_consistency.DeadEndOwnerTests.test_session_close_runs_traceability_sync) ... ok\n\n----------------------------------------------------------------------\nRan 1259 tests in 106.959s\n\nOK\n",
                "receipt_hash": "83c153f3dd97d6c313347408219c5f4e4879d088f6139ff76e43ee0cf2e3456b"
              }
            ],
            "execution_hash": "1921166e4a4f8303d417579caa79a0c55cec4d52e3439823150684f07dbe9170"
          },
          "output_hash": "cce5f999790ba8db3f014ebec35330789fa62e83ffef7f4667654dedb6f1c695",
          "completed_at": "2026-07-24T19:59:22Z"
        },
        {
          "id": "diff",
          "action": "git.diff_check",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-24T19:59:22Z",
          "output": {
            "passed": true
          },
          "output_hash": "11c11db30f4b3f6c758722ba3e27eea08145b7d212f6a157451e364b48475280",
          "completed_at": "2026-07-24T19:59:22Z"
        },
        {
          "id": "state",
          "action": "state.consistency",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-24T19:59:23Z",
          "output": {
            "status": "ok",
            "repo_root": "D:\\Projects\\prd-plugin",
            "summary": {
              "errors": 0,
              "warnings": 0,
              "infos": 1
            },
            "findings": [
              {
                "id": "CONS-INFO-001",
                "severity": "info",
                "path": "docs/evidence/EV-200.md",
                "summary": "File references 2 canonical IDs across 2 prefix(es); treated as a positive signal of extra work.",
                "referenced_prefixes": [
                  "CHG",
                  "TRK"
                ],
                "referenced_id_count": 2,
                "required_action": "No action required; this is an informational signal."
              }
            ]
          },
          "output_hash": "9963110856ca8182da0dfdbb22f6960618b55dbc121be0dce0066a7c7a389b10",
          "completed_at": "2026-07-24T19:59:23Z"
        },
        {
          "id": "gate",
          "action": "state.gate",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-24T19:59:24Z",
          "output": {
            "status": "attention",
            "repo_root": "D:\\Projects\\prd-plugin",
            "summary": {
              "errors": 0,
              "warnings": 0
            },
            "findings": [
              {
                "check": "state_consistency",
                "severity": "info",
                "summary": "File references 2 canonical IDs across 2 prefix(es); treated as a positive signal of extra work.",
                "required_action": "No action required; this is an informational signal."
              }
            ]
          },
          "output_hash": "6a0ed3d65779be265214a0e8395ab03978b9f7b91da9ffb59b257b73f82d087d",
          "completed_at": "2026-07-24T19:59:24Z"
        }
      ],
      "completed_at": "2026-07-24T19:59:25Z"
    },
    {
      "id": "WFR-413",
      "schema_version": "1.0",
      "workflow_id": "engineering.verify",
      "workflow_version": 1,
      "definition_hash": "82a795fafbc550f124ec781ea9c5b6170d95b5e687fffadf6939f1f160df5ce1",
      "plan_hash": "4bb158b22c9a87a54832df9b9b6a98a77151ce9005499d6a8337a4c015089e5e",
      "input_hash": "fd934039265310404d648cea4b1eb28964383bb8a97ef14b85b2b85d725d502e",
      "inputs": {
        "base_ref": "",
        "release": false
      },
      "idempotency_key": "req-173-final-verify-0.16.54-r2",
      "status": "completed",
      "attempt": 1,
      "created_at": "2026-07-24T19:57:47Z",
      "updated_at": "2026-07-24T19:59:35Z",
      "receipts": [
        {
          "step_id": "plan",
          "action": "verification.plan",
          "input_hash": "fd934039265310404d648cea4b1eb28964383bb8a97ef14b85b2b85d725d502e",
          "output_hash": "f8c64c2efa1fe5c8160bc28a969f6c01c45aa2c2ad68a93c7f4165c555be25b0",
          "completed_at": "2026-07-24T19:57:47Z"
        },
        {
          "step_id": "execute",
          "action": "verification.execute",
          "input_hash": "63e55beb89e93e846016733de98f96ab40f41a54680ff7dc077acf7140f3bafb",
          "output_hash": "86ed240a158926d7e8c5ecd0a06e5df6706059bdd8649e50f7ce8b4f8b95e09a",
          "completed_at": "2026-07-24T19:59:33Z"
        },
        {
          "step_id": "diff",
          "action": "git.diff_check",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "11c11db30f4b3f6c758722ba3e27eea08145b7d212f6a157451e364b48475280",
          "completed_at": "2026-07-24T19:59:33Z"
        },
        {
          "step_id": "state",
          "action": "state.consistency",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "9963110856ca8182da0dfdbb22f6960618b55dbc121be0dce0066a7c7a389b10",
          "completed_at": "2026-07-24T19:59:34Z"
        },
        {
          "step_id": "gate",
          "action": "state.gate",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "6a0ed3d65779be265214a0e8395ab03978b9f7b91da9ffb59b257b73f82d087d",
          "completed_at": "2026-07-24T19:59:35Z"
        }
      ],
      "steps": [
        {
          "id": "plan",
          "action": "verification.plan",
          "status": "completed",
          "resolved_input_hash": "fd934039265310404d648cea4b1eb28964383bb8a97ef14b85b2b85d725d502e",
          "started_at": "2026-07-24T19:57:47Z",
          "output": {
            "schema_version": "1.0",
            "contract_version": 1,
            "executor": "ai-collab",
            "changed_files": [
              ".prd_plugin/ids/registry.json",
              ".prd_plugin/state/workflow-runs.json"
            ],
            "change_fingerprint": "1d5f4b269e0059f4d5d614a65bed63c249a98ea6d46b06ed5d2ef6cd50cef0d4",
            "policy": {
              "enabled": true,
              "executor": "ai-collab",
              "neighbor_limit": 12,
              "max_changed_files": 25,
              "fallback": "full",
              "full_suite_triggers": [
                "release",
                "core_change",
                "impact_unavailable",
                "impact_degraded",
                "unmapped_change"
              ],
              "core_paths": [
                "package.json",
                "package-lock.json",
                "pyproject.toml",
                "Cargo.toml",
                "go.mod",
                ".github/workflows/**"
              ],
              "test_patterns": [
                "tests/**",
                "test/**",
                "spec/**",
                "**/*.test.*",
                "**/*.spec.*",
                "test_*.py",
                "*_test.py",
                "*_test.go",
                "**/test_*.py",
                "**/*_test.py",
                "**/*_test.go"
              ],
              "max_selected_tests": 200,
              "execution_timeout_seconds": 600,
              "focused_commands": [],
              "full_commands": [],
              "allowed_executables": [
                "python",
                "python3",
                "py",
                "pytest",
                "npm",
                "npx",
                "node",
                "go",
                "cargo",
                "dotnet",
                "mvn",
                "gradle",
                "gradlew",
                "make"
              ]
            },
            "selection_rules": {
              "precedence": [
                "exact_changed",
                "explicit_test_ownership",
                "structural_dependencies",
                "predictive_impact"
              ],
              "require_all_changed_files_mapped": true,
              "widen_before_full": true,
              "predictive_signal_is_sufficient_alone": false
            },
            "fallback": {
              "strategy": "full",
              "conditions": [
                "release",
                "core_change",
                "impact_unavailable",
                "impact_degraded",
                "unmapped_change"
              ]
            },
            "strategy": "full",
            "reason": "executor_unavailable",
            "runtime_requests": {},
            "plan_hash": "de8dbab7f527d9e65618def9e1cb1ff034ece07a3c8789e070adb2708362b053"
          },
          "output_hash": "f8c64c2efa1fe5c8160bc28a969f6c01c45aa2c2ad68a93c7f4165c555be25b0",
          "completed_at": "2026-07-24T19:57:47Z"
        },
        {
          "id": "execute",
          "action": "verification.execute",
          "status": "completed",
          "resolved_input_hash": "63e55beb89e93e846016733de98f96ab40f41a54680ff7dc077acf7140f3bafb",
          "started_at": "2026-07-24T19:57:48Z",
          "output": {
            "status": "passed",
            "strategy": "full",
            "reason": "executor_unavailable",
            "selected_tests": [],
            "change_fingerprint": "1d5f4b269e0059f4d5d614a65bed63c249a98ea6d46b06ed5d2ef6cd50cef0d4",
            "plan_hash": "de8dbab7f527d9e65618def9e1cb1ff034ece07a3c8789e070adb2708362b053",
            "impact_receipts": [],
            "receipts": [
              {
                "command": [
                  "npm",
                  "test"
                ],
                "exit_code": 0,
                "stdout": "\n> prd-plugin@0.16.54 test\n> python -m unittest discover -s tests -v\n\n{\n  \"status\": \"fail\",\n  \"repo_root\": \"C:\\\\Users\\\\marku\\\\AppData\\\\Local\\\\Temp\\\\tmp04y2hyu6\",\n  \"summary\": {\n    \"errors\": 1,\n    \"warnings\": 0\n  },\n  \"findings\": [\n    {\n      \"check\": \"duplicate_id\",\n      \"severity\": \"error\",\n      \"summary\": \"Duplicate id REQ-002 in .prd_plugin/state/requests.json.\",\n      \"required_action\": \"Renumber one record so REQ-002 is unique. Allocate IDs with the MCP tool prd_next_id (or the record tools like prd_open_goal) instead of hand-computing them.\"\n    }\n  ]\n}\nautonomy_level set to guided\nautonomy_level set to autonomous\nDESTRUCTIVE RESET REQUESTED: --force --yes will erase protected PRD Plugin project data.\nThe following existing state/configuration files would be replaced with skeleton defaults:\n  - .prd_plugin/state/tracking.json\nThis may erase IDs, tracking, requests, decisions, health findings, configuration, and session memory.\nFor a normal safe update, remove --yes and run: npx prd-install . --force\nPRD Plugin safe update: preserving existing state/config and refreshing plugin files only. Never add --yes to a routine update; it requests a destructive reset.\nPRD Plugin safe update: preserving existing state/config and refreshing plugin files only. Never add --yes to a routine update; it requests a destructive reset.\nPRD Plugin safe update: preserving existing state/config and refreshing plugin files only. Never add --yes to a routine update; it requests a destructive reset.\nPRD Plugin safe update: preserving existing state/config and refreshing plugin files only. Never add --yes to a routine update; it requests a destructive reset.\nPRD Plugin safe update: preserving existing state/config and refreshing plugin files only. Never add --yes to a routine update; it requests a destructive reset.\nPRD Plugin safe update: preserving existing state/config and refreshing plugin files only. Never add --yes to a routine update; it requests a destructive reset.\nPRD Plugin safe update: preserving existing state/config and refreshing plugin files only. Never add --yes to a routine update; it requests a destructive reset.\nPRD Plugin safe update: preserving existing state/config and refreshing plugin files only. Never add --yes to a routine update; it requests a destructive reset.\nPRD Plugin safe update: preserving existing state/config and refreshing plugin files only. Never add --yes to a routine update; it requests a destructive reset.\nPRD Plugin safe update: preserving existing state/config and refreshing plugin files only. Never add --yes to a routine update; it requests a destructive reset.\nPRD Plugin safe update: preserving existing state/config and refreshing plugin files only. Never add --yes to a routine update; it requests a destructive reset.\nPRD Plugin safe update: preserving existing state/config and refreshing plugin files only. Never add --yes to a routine update; it requests a destructive reset.\nPRD Plugin safe update: preserving existing state/config and refreshing plugin files only. Never add --yes to a routine update; it requests a destructive reset.\nPRD Plugin safe update: preserving existing state/config and refreshing plugin files only. Never add --yes to a routine update; it requests a destructive reset.\nPRD Plugin safe update: preserving existing state/config and refreshing plugin files only. Never add --yes to a routine update; it requests a destructive reset.\nPRD Plugin safe update: preserving existing state/config and refreshing plugin files only. Never add --yes to a routine update; it requests a destructive reset.\nPRD Plugin safe update: preserving existing state/config and refreshing plugin files only. Never add --yes to a routine update; it requests a destructive reset.\n{\n  \"published\": false,\n  \"package\": \"prd-plugin\",\n  \"version\": \"9.9.9\",\n  \"version_seen\": null,\n  \"latest_seen\": null,\n  \"attempts_used\": 1\n}\n{\n  \"published\": true,\n  \"package\": \"prd-plugin\",\n  \"version\": \"1.2.3\",\n  \"version_seen\": \"1.2.3\",\n  \"latest_seen\": \"1.2.3\",\n  \"attempts_used\": 1\n}\n{\"decision\": \"block\", \"reason\": \"Autonomous run-until-done: goal TRK-159 is still active. Continue with the next incomplete step toward it \\u2014 do not stop to ask 'shall I proceed?'. If you genuinely need the user (consent floor: push/merge/publish/secrets, or a real blocker), create the file .prd_plugin/local/autonomy-pause with a one-line reason and then stop; the guard will let you. Otherwise keep going.\"}\n",
                "stderr": "es (test_unified_config.MutationTests.test_audit_reports_unknown_and_invalid_values) ... ok\ntest_enable_disable_only_accept_mutable_booleans (test_unified_config.MutationTests.test_enable_disable_only_accept_mutable_booleans) ... ok\ntest_failed_atomic_replace_leaves_original_config_untouched (test_unified_config.MutationTests.test_failed_atomic_replace_leaves_original_config_untouched) ... ok\ntest_malformed_config_is_never_replaced_by_a_mutation (test_unified_config.MutationTests.test_malformed_config_is_never_replaced_by_a_mutation) ... ok\ntest_manual_set_marks_profile_custom_and_preserves_style (test_unified_config.MutationTests.test_manual_set_marks_profile_custom_and_preserves_style) ... ok\ntest_scalar_parent_is_not_clobbered_by_nested_set (test_unified_config.MutationTests.test_scalar_parent_is_not_clobbered_by_nested_set) ... ok\ntest_builtin_profile_dry_run_then_atomic_apply (test_unified_config.ProfileTests.test_builtin_profile_dry_run_then_atomic_apply) ... ok\ntest_invalid_custom_profile_never_partially_writes (test_unified_config.ProfileTests.test_invalid_custom_profile_never_partially_writes) ... ok\ntest_save_show_diff_and_delete_custom_profile (test_unified_config.ProfileTests.test_save_show_diff_and_delete_custom_profile) ... ok\ntest_does_not_flag_canonical_prd_state_paths (test_unsubmitted_plugin_request.UnsubmittedPluginRequestTests.test_does_not_flag_canonical_prd_state_paths) ... ok\ntest_does_not_flag_ordinary_project_requests (test_unsubmitted_plugin_request.UnsubmittedPluginRequestTests.test_does_not_flag_ordinary_project_requests) ... ok\ntest_does_not_flag_rejected_requests (test_unsubmitted_plugin_request.UnsubmittedPluginRequestTests.test_does_not_flag_rejected_requests) ... ok\ntest_does_not_flag_when_already_marked_upstream (test_unsubmitted_plugin_request.UnsubmittedPluginRequestTests.test_does_not_flag_when_already_marked_upstream) ... ok\ntest_flags_a_local_request_about_a_plugin_script (test_unsubmitted_plugin_request.UnsubmittedPluginRequestTests.test_flags_a_local_request_about_a_plugin_script) ... ok\ntest_flags_a_request_that_names_itself_upstream (test_unsubmitted_plugin_request.UnsubmittedPluginRequestTests.test_flags_a_request_that_names_itself_upstream) ... ok\ntest_never_fires_in_the_hub_repo_itself (test_unsubmitted_plugin_request.UnsubmittedPluginRequestTests.test_never_fires_in_the_hub_repo_itself) ... ok\ntest_wired_into_run_checks (test_unsubmitted_plugin_request.UnsubmittedPluginRequestTests.test_wired_into_run_checks) ... ok\ntest_output_writes_lf_and_a_trailing_newline (test_utcp_first_authority.GeneratedArtifactsAreByteStableTests.test_output_writes_lf_and_a_trailing_newline) ... ok\ntest_the_committed_manual_matches_a_fresh_generation (test_utcp_first_authority.GeneratedArtifactsAreByteStableTests.test_the_committed_manual_matches_a_fresh_generation) ... ok\ntest_every_spec_tool_maps_to_a_catalog_capability (test_utcp_first_authority.ParityDirectionTests.test_every_spec_tool_maps_to_a_catalog_capability) ... ok\ntest_server_metadata_matches_the_spec (test_utcp_first_authority.ParityDirectionTests.test_server_metadata_matches_the_spec) ... ok\ntest_python_entry_points_share_the_same_lock (test_utcp_first_authority.SafetyUnchangedTests.test_python_entry_points_share_the_same_lock)\nThe migration target already exists and is proven: prd_reflections ... ok\ntest_the_state_lock_is_still_held_for_mutations (test_utcp_first_authority.SafetyUnchangedTests.test_the_state_lock_is_still_held_for_mutations) ... ok\ntest_no_shipped_tool_metadata_carries_mojibake (test_utcp_first_authority.ShippedTextIsCleanTests.test_no_shipped_tool_metadata_carries_mojibake) ... ok\ntest_shipped_tool_metadata_is_valid_utf8 (test_utcp_first_authority.ShippedTextIsCleanTests.test_shipped_tool_metadata_is_valid_utf8)\nA file written through a cp1252 layer either fails to decode or ... ok\ntest_each_tool_declares_name_description_and_schema (test_utcp_first_authority.SpecIsTheSourceTests.test_each_tool_declares_name_description_and_schema) ... ok\ntest_the_manual_is_generated_from_the_spec_not_the_server (test_utcp_first_authority.SpecIsTheSourceTests.test_the_manual_is_generated_from_the_spec_not_the_server) ... ok\ntest_the_server_no_longer_authors_descriptions (test_utcp_first_authority.SpecIsTheSourceTests.test_the_server_no_longer_authors_descriptions)\nserver.cjs must READ definitions, not declare them. While a tool ... ok\ntest_the_spec_exists_and_declares_every_tool (test_utcp_first_authority.SpecIsTheSourceTests.test_the_spec_exists_and_declares_every_tool) ... ok\ntest_official_bridge_round_trips_cli_and_mcp_templates (test_utcp_first_catalog.BridgeParityTests.test_official_bridge_round_trips_cli_and_mcp_templates) ... ok\ntest_bridged_entries_reuse_server_metadata_verbatim (test_utcp_first_catalog.GeneratedProjectionTests.test_bridged_entries_reuse_server_metadata_verbatim)\nEach bridged manual entry's description and inputs equal the server's ... ok\ntest_checked_in_metadata_matches_live_server (test_utcp_first_catalog.GeneratedProjectionTests.test_checked_in_metadata_matches_live_server)\nThe pinned metadata projection cannot drift behind the live server. ... ok\ntest_mutations_keep_the_validated_handler_path (test_utcp_first_catalog.GuardedMutationTests.test_mutations_keep_the_validated_handler_path)\nEvery manual tool in a non-read capability calls the plugin state ... ok\ntest_read_only_cli_tools_stay_cli (test_utcp_first_catalog.GuardedMutationTests.test_read_only_cli_tools_stay_cli)\nThe 12 cli-native observe/recall tools keep their cli templates. ... ok\ntest_checked_in_metadata_projection_exists (test_utcp_first_catalog.ManualCompletenessTests.test_checked_in_metadata_projection_exists)\nThe server's tool metadata is a checked-in generated artifact so the ... ok\ntest_manual_covers_every_capability_on_both_transports (test_utcp_first_catalog.ManualCompletenessTests.test_manual_covers_every_capability_on_both_transports)\nEvery UTCP and MCP registration in the tool-surface catalog appears ... ok\ntest_appends_version_change_request (test_version_advice.VersionAdviceTests.test_appends_version_change_request) ... ok\ntest_builds_safe_update_advice_for_low_risk_releases (test_version_advice.VersionAdviceTests.test_builds_safe_update_advice_for_low_risk_releases) ... ok\ntest_cli_uses_hub_releases_when_downstream_repo_has_no_releases_file (test_version_advice.VersionAdviceTests.test_cli_uses_hub_releases_when_downstream_repo_has_no_releases_file) ... ok\ntest_detects_installed_version_from_bom_json (test_version_advice.VersionAdviceTests.test_detects_installed_version_from_bom_json) ... ok\ntest_detects_installed_version_from_opencode_plugin_manifest (test_version_advice.VersionAdviceTests.test_detects_installed_version_from_opencode_plugin_manifest) ... ok\ntest_detects_installed_version_from_prd_plugin_config (test_version_advice.VersionAdviceTests.test_detects_installed_version_from_prd_plugin_config) ... ok\ntest_detects_latest_version_from_plugin_manifest (test_version_advice.VersionAdviceTests.test_detects_latest_version_from_plugin_manifest) ... ok\ntest_installed_version_priority_prefers_config_then_codex_then_opencode (test_version_advice.VersionAdviceTests.test_installed_version_priority_prefers_config_then_codex_then_opencode) ... ok\ntest_orders_prerelease_before_final_release (test_version_advice.VersionAdviceTests.test_orders_prerelease_before_final_release) ... ok\ntest_recommends_review_first_for_medium_or_high_risk_release (test_version_advice.VersionAdviceTests.test_recommends_review_first_for_medium_or_high_risk_release) ... ok\ntest_disabled_returns_disabled_and_no_fetch (test_version_check.CheckTests.test_disabled_returns_disabled_and_no_fetch) ... ok\ntest_force_refetches_within_ttl (test_version_check.CheckTests.test_force_refetches_within_ttl) ... ok\ntest_network_failure_is_fail_open (test_version_check.CheckTests.test_network_failure_is_fail_open) ... ok\ntest_no_update_when_current (test_version_check.CheckTests.test_no_update_when_current) ... ok\ntest_status_is_cache_only_no_fetch (test_version_check.CheckTests.test_status_is_cache_only_no_fetch) ... ok\ntest_ttl_cache_avoids_refetch (test_version_check.CheckTests.test_ttl_cache_avoids_refetch) ... ok\ntest_ttl_expiry_refetches (test_version_check.CheckTests.test_ttl_expiry_refetches) ... ok\ntest_update_available_when_npm_is_ahead (test_version_check.CheckTests.test_update_available_when_npm_is_ahead) ... ok\ntest_status_cli_exits_zero (test_version_check.CliTests.test_status_cli_exits_zero) ... ok\ntest_default_ttl_is_responsive_not_a_day (test_version_check.FreshnessTests.test_default_ttl_is_responsive_not_a_day) ... ok\ntest_fetch_latest_accepts_a_timeout (test_version_check.FreshnessTests.test_fetch_latest_accepts_a_timeout) ... ok\ntest_nudge_refreshes_in_session_not_cache_only (test_version_check.FreshnessTests.test_nudge_refreshes_in_session_not_cache_only) ... ok\ntest_registry_default_ttl_matches (test_version_check.FreshnessTests.test_registry_default_ttl_matches) ... ok\ntest_semver_ordering (test_version_check.ParseTests.test_semver_ordering) ... ok\ntest_set_enabled_writes_config (test_version_check.ToggleTests.test_set_enabled_writes_config) ... ok\ntest_config_has_version_check_default_on (test_version_check.WiringTests.test_config_has_version_check_default_on) ... ok\ntest_nudge_surfaces_update_available (test_version_check.WiringTests.test_nudge_surfaces_update_available) ... ok\ntest_prd_version_command_exists (test_version_check.WiringTests.test_prd_version_command_exists) ... ok\ntest_script_registered_downstream (test_version_check.WiringTests.test_script_registered_downstream) ... ok\ntest_plan_cli_emits_json (test_wiki_backfill.CliTests.test_plan_cli_emits_json) ... ok\ntest_status_cli (test_wiki_backfill.CliTests.test_status_cli) ... ok\ntest_marker_written_for_established_repo_gaining_wiki (test_wiki_backfill.InstallerMarkerTests.test_marker_written_for_established_repo_gaining_wiki) ... ok\ntest_no_marker_for_empty_scaffold (test_wiki_backfill.InstallerMarkerTests.test_no_marker_for_empty_scaffold) ... ok\ntest_no_marker_when_wiki_already_exists (test_wiki_backfill.InstallerMarkerTests.test_no_marker_when_wiki_already_exists) ... ok\ntest_no_marker_when_wiki_disabled (test_wiki_backfill.InstallerMarkerTests.test_no_marker_when_wiki_disabled) ... ok\ntest_pending_false_when_absent (test_wiki_backfill.StatusTests.test_pending_false_when_absent) ... ok\ntest_pending_false_when_wiki_already_exists (test_wiki_backfill.StatusTests.test_pending_false_when_wiki_already_exists) ... ok\ntest_pending_true_when_marker_present (test_wiki_backfill.StatusTests.test_pending_true_when_marker_present) ... ok\ntest_plan_excludes_generated_report_artifacts (test_wiki_backfill.SurveyPlanTests.test_plan_excludes_generated_report_artifacts)\nrequest-report/ (incl. its calibration report trees) and docs/evidence/ ... ok\ntest_plan_excludes_plugin_and_vendor_noise (test_wiki_backfill.SurveyPlanTests.test_plan_excludes_plugin_and_vendor_noise) ... ok\ntest_plan_inventories_code_docs_and_state (test_wiki_backfill.SurveyPlanTests.test_plan_inventories_code_docs_and_state) ... ok\ntest_plan_is_read_only (test_wiki_backfill.SurveyPlanTests.test_plan_is_read_only) ... ok\ntest_wiki_drift_in_on_stop_and_default_sets (test_wiki_backfill.WikiDriftMonitorWiringTests.test_wiki_drift_in_on_stop_and_default_sets) ... ok\ntest_current_article_no_drift (test_wiki_backfill.WikiDriftTests.test_current_article_no_drift) ... ok\ntest_drift_cli (test_wiki_backfill.WikiDriftTests.test_drift_cli) ... ok\ntest_far_behind_article_flagged (test_wiki_backfill.WikiDriftTests.test_far_behind_article_flagged) ... ok\ntest_no_wiki_is_ok (test_wiki_backfill.WikiDriftTests.test_no_wiki_is_ok) ... ok\ntest_unlinked_markdown_reference_is_part_of_wiki_drift (test_wiki_backfill.WikiDriftTests.test_unlinked_markdown_reference_is_part_of_wiki_drift) ... ok\ntest_unstamped_article_flagged (test_wiki_backfill.WikiDriftTests.test_unstamped_article_flagged) ... ok\ntest_wiki_drift_uses_configured_wiki_directory (test_wiki_backfill.WikiDriftTests.test_wiki_drift_uses_configured_wiki_directory) ... ok\ntest_ambiguous_reference_is_reported_but_never_guessed (test_wiki_backfill.WikiInlineMarkdownLinkTests.test_ambiguous_reference_is_reported_but_never_guessed) ... ok\ntest_cli_check_fails_and_fix_then_passes (test_wiki_backfill.WikiInlineMarkdownLinkTests.test_cli_check_fails_and_fix_then_passes) ... ok\ntest_existing_inline_links_and_fenced_examples_are_not_findings (test_wiki_backfill.WikiInlineMarkdownLinkTests.test_existing_inline_links_and_fenced_examples_are_not_findings) ... ok\ntest_fix_rewrites_only_unambiguous_references_to_relative_inline_links (test_wiki_backfill.WikiInlineMarkdownLinkTests.test_fix_rewrites_only_unambiguous_references_to_relative_inline_links) ... ok\ntest_reports_resolvable_bare_and_code_wrapped_markdown_references (test_wiki_backfill.WikiInlineMarkdownLinkTests.test_reports_resolvable_bare_and_code_wrapped_markdown_references) ... ok\ntest_nudge_surfaces_pending_backfill (test_wiki_backfill.WiringTests.test_nudge_surfaces_pending_backfill) ... ok\ntest_script_registered_downstream (test_wiki_backfill.WiringTests.test_script_registered_downstream) ... ok\ntest_skill_has_backfill_mode (test_wiki_backfill.WiringTests.test_skill_has_backfill_mode) ... ok\ntest_copy_and_download_controls_are_wired (test_wiki_html_export.WikiHtmlExportTests.test_copy_and_download_controls_are_wired) ... ok\ntest_default_output_lands_in_the_local_runtime_dir (test_wiki_html_export.WikiHtmlExportTests.test_default_output_lands_in_the_local_runtime_dir) ... ok\ntest_every_page_is_embedded_with_exact_markdown (test_wiki_html_export.WikiHtmlExportTests.test_every_page_is_embedded_with_exact_markdown) ... ok\ntest_export_all_generates_viewers_and_super_index (test_wiki_html_export.WikiHtmlExportTests.test_export_all_generates_viewers_and_super_index) ... ok\ntest_export_is_one_self_contained_offline_file (test_wiki_html_export.WikiHtmlExportTests.test_export_is_one_self_contained_offline_file) ... ok\ntest_guest_repo_viewer_is_hosted_by_the_host_repo (test_wiki_html_export.WikiHtmlExportTests.test_guest_repo_viewer_is_hosted_by_the_host_repo)\nA repo without .prd_plugin gets NO new files in its own tree; its ... ok\ntest_hub_repo_exports_all_pages (test_wiki_html_export.WikiHtmlExportTests.test_hub_repo_exports_all_pages) ... ok\ntest_parse_wiki_log_extracts_dated_entries_with_bodies (test_wiki_html_export.WikiHtmlExportTests.test_parse_wiki_log_extracts_dated_entries_with_bodies)\nREQ-112: every workspace log follows '## [date] mode | text'. ... ok\ntest_parse_wiki_log_tolerates_missing_log (test_wiki_html_export.WikiHtmlExportTests.test_parse_wiki_log_tolerates_missing_log) ... ok\ntest_script_content_cannot_break_the_payload (test_wiki_html_export.WikiHtmlExportTests.test_script_content_cannot_break_the_payload) ... ok\ntest_super_index_has_a_combined_changelog (test_wiki_html_export.WikiHtmlExportTests.test_super_index_has_a_combined_changelog) ... ok\ntest_super_index_reports_page_counts (test_wiki_html_export.WikiHtmlExportTests.test_super_index_reports_page_counts) ... ok\ntest_workspace_discovery_uses_the_wiki_convention_marker (test_wiki_html_export.WikiHtmlExportTests.test_workspace_discovery_uses_the_wiki_convention_marker)\nREQ-110 + REQ-111: any immediate child whose wiki follows the ... ok\ntest_a_repo_without_a_wiki_is_not_in_drift (test_wiki_ingest_drift.DetectionTests.test_a_repo_without_a_wiki_is_not_in_drift)\nNo wiki is a legitimate state, not a failure to ingest. ... ok\ntest_fully_ingested_repo_is_clean (test_wiki_ingest_drift.DetectionTests.test_fully_ingested_repo_is_clean) ... ok\ntest_malformed_state_degrades_rather_than_raising (test_wiki_ingest_drift.DetectionTests.test_malformed_state_degrades_rather_than_raising) ... ok\ntest_non_implemented_requests_are_never_expected_in_the_log (test_wiki_ingest_drift.DetectionTests.test_non_implemented_requests_are_never_expected_in_the_log) ... ok\ntest_only_work_since_the_last_ingest_is_actionable (test_wiki_ingest_drift.DetectionTests.test_only_work_since_the_last_ingest_is_actionable)\nRaw counting flags pre-wiki history as drift � ~70 items in the hub, ... ok\ntest_reports_implemented_requests_absent_from_the_log (test_wiki_ingest_drift.DetectionTests.test_reports_implemented_requests_absent_from_the_log) ... ok\ntest_it_runs_against_this_repo_and_returns_a_usable_report (test_wiki_ingest_drift.RealRepoTests.test_it_runs_against_this_repo_and_returns_a_usable_report)\nGrounded against real state, but NOT pinned to a specific gap: a test ... ok\ntest_prd_status_omits_it_when_clean (test_wiki_ingest_drift.SurfaceTests.test_prd_status_omits_it_when_clean) ... ok\ntest_prd_status_reports_the_drift (test_wiki_ingest_drift.SurfaceTests.test_prd_status_reports_the_drift) ... ok\ntest_this_repos_wiki_reads_byte_exact (test_wiki_page_contract.HubRepoSmokeTests.test_this_repos_wiki_reads_byte_exact) ... ok\ntest_list_enumerates_canonical_pages_with_titles (test_wiki_page_contract.WikiPageListTests.test_list_enumerates_canonical_pages_with_titles) ... ok\ntest_boundaries_are_hard (test_wiki_page_contract.WikiPageReadTests.test_boundaries_are_hard) ... ok\ntest_drift_remains_the_default_action (test_wiki_page_contract.WikiPageReadTests.test_drift_remains_the_default_action) ... ok\ntest_read_page_without_stamps_reports_null_provenance (test_wiki_page_contract.WikiPageReadTests.test_read_page_without_stamps_reports_null_provenance) ... ok\ntest_read_requires_a_path (test_wiki_page_contract.WikiPageReadTests.test_read_requires_a_path) ... ok\ntest_read_returns_exact_markdown_with_provenance (test_wiki_page_contract.WikiPageReadTests.test_read_returns_exact_markdown_with_provenance) ... ok\ntest_no_cp1252_unencodable_chars_in_agent_facing_tools (test_windows_console_safe.SourceScanTests.test_no_cp1252_unencodable_chars_in_agent_facing_tools) ... ok\ntest_backfill_pending_status_renders_cp1252_safe (test_windows_console_safe.StatusRenderTests.test_backfill_pending_status_renders_cp1252_safe) ... ok\ntest_json_output_escapes_non_console_characters (test_windows_console_safe.WorkflowCliRenderTests.test_json_output_escapes_non_console_characters) ... ok\ntest_repository_workflow_surfaces_are_chml_zero (test_workflow_chml_audit.WorkflowChmlAuditTests.test_repository_workflow_surfaces_are_chml_zero) ... ok\ntest_semantic_skill_finding_is_part_of_workflow_chml (test_workflow_chml_audit.WorkflowChmlAuditTests.test_semantic_skill_finding_is_part_of_workflow_chml) ... ok\ntest_git_workflow_pushes_clean_verified_commits_in_autonomous (test_workflow_consistency.AutonomyConflictResolutionTests.test_git_workflow_pushes_clean_verified_commits_in_autonomous) ... ok\ntest_request_intake_defers_autonomy_and_owns_graduation (test_workflow_consistency.AutonomyConflictResolutionTests.test_request_intake_defers_autonomy_and_owns_graduation) ... ok\ntest_evidence_pair_states_create_vs_review_boundary (test_workflow_consistency.BoundaryClarityTests.test_evidence_pair_states_create_vs_review_boundary) ... ok\ntest_session_close_states_memory_boundary (test_workflow_consistency.BoundaryClarityTests.test_session_close_states_memory_boundary) ... ok\ntest_document_branch_has_promotion_owner (test_workflow_consistency.DeadEndOwnerTests.test_document_branch_has_promotion_owner) ... ok\ntest_health_findings_have_triage_dispositions (test_workflow_consistency.DeadEndOwnerTests.test_health_findings_have_triage_dispositions) ... ok\ntest_memory_owns_schema_version_changes (test_workflow_consistency.DeadEndOwnerTests.test_memory_owns_schema_version_changes) ... ok\ntest_planning_lifecycle_has_stage_readiness_checkpoints (test_workflow_consistency.DeadEndOwnerTests.test_planning_lifecycle_has_stage_readiness_checkpoints) ... ok\ntest_session_close_runs_traceability_sync (test_workflow_consistency.DeadEndOwnerTests.test_session_close_runs_traceability_sync) ... ok\n\n----------------------------------------------------------------------\nRan 1259 tests in 104.457s\n\nOK\n",
                "receipt_hash": "7d9d7e41d2ece95c5b3533fcb6771abc84291c796edd8feb662db4006e8b1fa7"
              }
            ],
            "execution_hash": "b43dde8c9a8a00b93930ba944777dd3fa10b36d1e1a39dfb59b695cc51440b61"
          },
          "output_hash": "86ed240a158926d7e8c5ecd0a06e5df6706059bdd8649e50f7ce8b4f8b95e09a",
          "completed_at": "2026-07-24T19:59:33Z"
        },
        {
          "id": "diff",
          "action": "git.diff_check",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-24T19:59:33Z",
          "output": {
            "passed": true
          },
          "output_hash": "11c11db30f4b3f6c758722ba3e27eea08145b7d212f6a157451e364b48475280",
          "completed_at": "2026-07-24T19:59:33Z"
        },
        {
          "id": "state",
          "action": "state.consistency",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-24T19:59:33Z",
          "output": {
            "status": "ok",
            "repo_root": "D:\\Projects\\prd-plugin",
            "summary": {
              "errors": 0,
              "warnings": 0,
              "infos": 1
            },
            "findings": [
              {
                "id": "CONS-INFO-001",
                "severity": "info",
                "path": "docs/evidence/EV-200.md",
                "summary": "File references 2 canonical IDs across 2 prefix(es); treated as a positive signal of extra work.",
                "referenced_prefixes": [
                  "CHG",
                  "TRK"
                ],
                "referenced_id_count": 2,
                "required_action": "No action required; this is an informational signal."
              }
            ]
          },
          "output_hash": "9963110856ca8182da0dfdbb22f6960618b55dbc121be0dce0066a7c7a389b10",
          "completed_at": "2026-07-24T19:59:34Z"
        },
        {
          "id": "gate",
          "action": "state.gate",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-24T19:59:34Z",
          "output": {
            "status": "attention",
            "repo_root": "D:\\Projects\\prd-plugin",
            "summary": {
              "errors": 0,
              "warnings": 0
            },
            "findings": [
              {
                "check": "state_consistency",
                "severity": "info",
                "summary": "File references 2 canonical IDs across 2 prefix(es); treated as a positive signal of extra work.",
                "required_action": "No action required; this is an informational signal."
              }
            ]
          },
          "output_hash": "6a0ed3d65779be265214a0e8395ab03978b9f7b91da9ffb59b257b73f82d087d",
          "completed_at": "2026-07-24T19:59:35Z"
        }
      ],
      "completed_at": "2026-07-24T19:59:35Z"
    },
    {
      "id": "WFR-414",
      "schema_version": "1.0",
      "workflow_id": "hub.release",
      "workflow_version": 1,
      "definition_hash": "ab6ae2afcb0128db8d994b6b397e543c7490017bd3d1b15309079edc6be94d9a",
      "plan_hash": "02bcb9cb71ca5641cc12e6270fee67758c0051b183e4204137993cd57b89a7bd",
      "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
      "inputs": {},
      "idempotency_key": "req-173-hub-release-0.16.54",
      "status": "completed",
      "attempt": 1,
      "created_at": "2026-07-24T20:03:12Z",
      "updated_at": "2026-07-24T20:05:09Z",
      "receipts": [
        {
          "step_id": "diff",
          "action": "git.diff_check",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "11c11db30f4b3f6c758722ba3e27eea08145b7d212f6a157451e364b48475280",
          "completed_at": "2026-07-24T20:03:13Z"
        },
        {
          "step_id": "config",
          "action": "config.audit",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "ef2327bf3ea9c100a1a525c09e426de9703016f1b7c177b0df10c0b7cf3f33c9",
          "completed_at": "2026-07-24T20:03:13Z"
        },
        {
          "step_id": "state",
          "action": "state.consistency",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "9963110856ca8182da0dfdbb22f6960618b55dbc121be0dce0066a7c7a389b10",
          "completed_at": "2026-07-24T20:03:14Z"
        },
        {
          "step_id": "workflow_audit",
          "action": "process.fixed",
          "input_hash": "edf19b269a54d72753f1abc2b8ffcb810c2b7bc377cee7e1698c939f17e0be94",
          "output_hash": "231b43ed70e09c4e7cbcda1094b00e0274dd4a22ff8324da2eb907f705c1316a",
          "completed_at": "2026-07-24T20:03:14Z"
        },
        {
          "step_id": "substrate_audit",
          "action": "process.fixed",
          "input_hash": "4998f71d2d3f6ac7dd50e10d37f60ae32d54898949950e484da9de113e18a979",
          "output_hash": "4176fd7e9d2d33bd61e5fd6bb8d392a63eaa5b2cb65b750eeb348b9dd55fe220",
          "completed_at": "2026-07-24T20:03:14Z"
        },
        {
          "step_id": "suite",
          "action": "process.fixed",
          "input_hash": "954e575e48145853f5681eda189186c95a053267158fae669114320f2e53794a",
          "output_hash": "7c78a516a62c357be7f062c2c86c4ebd1131a57b34c8ac188a679ced614e2d5e",
          "completed_at": "2026-07-24T20:05:05Z"
        },
        {
          "step_id": "release",
          "action": "process.fixed",
          "input_hash": "1e5b0c18d93eb4c2248f9a00adbd438e52f3ef02137477fb8376c69cfe86fc9b",
          "output_hash": "58d0f15d9e9501aef280ead52c9e13f60190fdf934eaa89d8cf0ac61ee3f9194",
          "completed_at": "2026-07-24T20:05:06Z"
        },
        {
          "step_id": "gaps",
          "action": "process.fixed",
          "input_hash": "577241909238eeb55683f89d2d2216648dad2e3127397993e22493829a1307a4",
          "output_hash": "d5faa2c5fc02de98ab3b0a2c374bdfdceb6a6f8ba15531f7d6034b37d8b2c0d6",
          "completed_at": "2026-07-24T20:05:06Z"
        },
        {
          "step_id": "package",
          "action": "process.fixed",
          "input_hash": "06cd12e1f3db3d985f9150520afa60f288297ff0ca01a8e813e9bb6291aa8836",
          "output_hash": "b63081f7c19bc46b6761b81e7b7ca2e3381718853e0a10e83d0212c673aacbec",
          "completed_at": "2026-07-24T20:05:08Z"
        },
        {
          "step_id": "gate",
          "action": "state.gate",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "6a0ed3d65779be265214a0e8395ab03978b9f7b91da9ffb59b257b73f82d087d",
          "completed_at": "2026-07-24T20:05:09Z"
        }
      ],
      "steps": [
        {
          "id": "diff",
          "action": "git.diff_check",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-24T20:03:13Z",
          "output": {
            "passed": true
          },
          "output_hash": "11c11db30f4b3f6c758722ba3e27eea08145b7d212f6a157451e364b48475280",
          "completed_at": "2026-07-24T20:03:13Z"
        },
        {
          "id": "config",
          "action": "config.audit",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-24T20:03:13Z",
          "output": {
            "status": "ok",
            "summary": {
              "settings": 214,
              "mutable": 204,
              "read_only_or_managed": 10,
              "unclassified": 0,
              "unknown": 0,
              "invalid": 0,
              "missing_using_defaults": 0
            },
            "unclassified_keys": [],
            "unknown_keys": [],
            "invalid_values": [],
            "missing_using_defaults": []
          },
          "output_hash": "ef2327bf3ea9c100a1a525c09e426de9703016f1b7c177b0df10c0b7cf3f33c9",
          "completed_at": "2026-07-24T20:03:13Z"
        },
        {
          "id": "state",
          "action": "state.consistency",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-24T20:03:13Z",
          "output": {
            "status": "ok",
            "repo_root": "D:\\Projects\\prd-plugin",
            "summary": {
              "errors": 0,
              "warnings": 0,
              "infos": 1
            },
            "findings": [
              {
                "id": "CONS-INFO-001",
                "severity": "info",
                "path": "docs/evidence/EV-200.md",
                "summary": "File references 2 canonical IDs across 2 prefix(es); treated as a positive signal of extra work.",
                "referenced_prefixes": [
                  "CHG",
                  "TRK"
                ],
                "referenced_id_count": 2,
                "required_action": "No action required; this is an informational signal."
              }
            ]
          },
          "output_hash": "9963110856ca8182da0dfdbb22f6960618b55dbc121be0dce0066a7c7a389b10",
          "completed_at": "2026-07-24T20:03:14Z"
        },
        {
          "id": "workflow_audit",
          "action": "process.fixed",
          "status": "completed",
          "resolved_input_hash": "edf19b269a54d72753f1abc2b8ffcb810c2b7bc377cee7e1698c939f17e0be94",
          "started_at": "2026-07-24T20:03:14Z",
          "output": {
            "operation": "workflow_chml_audit",
            "command": [
              "python",
              "scripts/workflow_chml_audit.py",
              "--repo-root",
              ".",
              "--format",
              "json"
            ],
            "exit_code": 0,
            "stdout": "{\n  \"status\": \"ok\",\n  \"repo_root\": \"D:\\\\Projects\\\\prd-plugin\",\n  \"summary\": {\n    \"critical\": 0,\n    \"high\": 0,\n    \"medium\": 0,\n    \"low\": 0\n  },\n  \"findings\": []\n}\n",
            "stderr": ""
          },
          "output_hash": "231b43ed70e09c4e7cbcda1094b00e0274dd4a22ff8324da2eb907f705c1316a",
          "completed_at": "2026-07-24T20:03:14Z"
        },
        {
          "id": "substrate_audit",
          "action": "process.fixed",
          "status": "completed",
          "resolved_input_hash": "4998f71d2d3f6ac7dd50e10d37f60ae32d54898949950e484da9de113e18a979",
          "started_at": "2026-07-24T20:03:14Z",
          "output": {
            "operation": "substrate_capability_audit",
            "command": [
              "python",
              "scripts/prd_substrate_catalog.py",
              "--repo-root",
              ".",
              "audit"
            ],
            "exit_code": 0,
            "stdout": "{\n  \"status\": \"ok\",\n  \"schema_version\": \"1.0\",\n  \"capability_count\": 26,\n  \"runtime_tool_count\": 103,\n  \"intent_count\": 31,\n  \"summary\": {\n    \"critical\": 0,\n    \"high\": 0,\n    \"medium\": 0,\n    \"low\": 0\n  },\n  \"findings\": []\n}\n",
            "stderr": ""
          },
          "output_hash": "4176fd7e9d2d33bd61e5fd6bb8d392a63eaa5b2cb65b750eeb348b9dd55fe220",
          "completed_at": "2026-07-24T20:03:14Z"
        },
        {
          "id": "suite",
          "action": "process.fixed",
          "status": "completed",
          "resolved_input_hash": "954e575e48145853f5681eda189186c95a053267158fae669114320f2e53794a",
          "started_at": "2026-07-24T20:03:15Z",
          "output": {
            "operation": "local_workflow_check",
            "command": [
              "python",
              "scripts/local_workflow_check.py"
            ],
            "exit_code": 0,
            "stdout": "Structured file validation passed.\n$ python -m unittest discover -s tests -v\n{\n  \"status\": \"fail\",\n  \"repo_root\": \"C:\\\\Users\\\\marku\\\\AppData\\\\Local\\\\Temp\\\\tmpblx9ic_c\",\n  \"summary\": {\n    \"errors\": 1,\n    \"warnings\": 0\n  },\n  \"findings\": [\n    {\n      \"check\": \"duplicate_id\",\n      \"severity\": \"error\",\n      \"summary\": \"Duplicate id REQ-002 in .prd_plugin/state/requests.json.\",\n      \"required_action\": \"Renumber one record so REQ-002 is unique. Allocate IDs with the MCP tool prd_next_id (or the record tools like prd_open_goal) instead of hand-computing them.\"\n    }\n  ]\n}\nautonomy_level set to guided\nautonomy_level set to autonomous\nDESTRUCTIVE RESET REQUESTED: --force --yes will erase protected PRD Plugin project data.\nThe following existing state/configuration files would be replaced with skeleton defaults:\n  - .prd_plugin/state/tracking.json\nThis may erase IDs, tracking, requests, decisions, health findings, configuration, and session memory.\nFor a normal safe update, remove --yes and run: npx prd-install . --force\nPRD Plugin safe update: preserving existing state/config and refreshing plugin files only. Never add --yes to a routine update; it requests a destructive reset.\nPRD Plugin safe update: preserving existing state/config and refreshing plugin files only. Never add --yes to a routine update; it requests a destructive reset.\nPRD Plugin safe update: preserving existing state/config and refreshing plugin files only. Never add --yes to a routine update; it requests a destructive reset.\nPRD Plugin safe update: preserving existing state/config and refreshing plugin files only. Never add --yes to a routine update; it requests a destructive reset.\nPRD Plugin safe update: preserving existing state/config and refreshing plugin files only. Never add --yes to a routine update; it requests a destructive reset.\nPRD Plugin safe update: preserving existing state/config and refreshing plugin files only. Never add --yes to a routine update; it requests a destructive reset.\nPRD Plugin safe update: preserving existing state/config and refreshing plugin files only. Never add --yes to a routine update; it requests a destructive reset.\nPRD Plugin safe update: preserving existing state/config and refreshing plugin files only. Never add --yes to a routine update; it requests a destructive reset.\nPRD Plugin safe update: preserving existing state/config and refreshing plugin files only. Never add --yes to a routine update; it requests a destructive reset.\nPRD Plugin safe update: preserving existing state/config and refreshing plugin files only. Never add --yes to a routine update; it requests a destructive reset.\nPRD Plugin safe update: preserving existing state/config and refreshing plugin files only. Never add --yes to a routine update; it requests a destructive reset.\nPRD Plugin safe update: preserving existing state/config and refreshing plugin files only. Never add --yes to a routine update; it requests a destructive reset.\nPRD Plugin safe update: preserving existing state/config and refreshing plugin files only. Never add --yes to a routine update; it requests a destructive reset.\nPRD Plugin safe update: preserving existing state/config and refreshing plugin files only. Never add --yes to a routine update; it requests a destructive reset.\nPRD Plugin safe update: preserving existing state/config and refreshing plugin files only. Never add --yes to a routine update; it requests a destructive reset.\nPRD Plugin safe update: preserving existing state/config and refreshing plugin files only. Never add --yes to a routine update; it requests a destructive reset.\nPRD Plugin safe update: preserving existing state/config and refreshing plugin files only. Never add --yes to a routine update; it requests a destructive reset.\n{\n  \"published\": false,\n  \"package\": \"prd-plugin\",\n  \"version\": \"9.9.9\",\n  \"version_seen\": null,\n  \"latest_seen\": null,\n  \"attempts_used\": 1\n}\n{\n  \"published\": true,\n  \"package\": \"prd-plugin\",\n  \"version\": \"1.2.3\",\n  \"version_seen\": \"1.2.3\",\n  \"latest_seen\": \"1.2.3\",\n  \"attempts_used\": 1\n}\n{\"decision\": \"block\", \"reason\": \"Autonomous run-until-done: goal TRK-159 is still active. Continue with the next incomplete step toward it \\u2014 do not stop to ask 'shall I proceed?'. If you genuinely need the user (consent floor: push/merge/publish/secrets, or a real blocker), create the file .prd_plugin/local/autonomy-pause with a one-line reason and then stop; the guard will let you. Otherwise keep going.\"}\n$ python scripts/feature_skill_audit.py --repo-root . --format json\n{\n  \"status\": \"ok\",\n  \"repo_root\": \"D:\\\\Projects\\\\prd-plugin\",\n  \"contract\": \"templates/feature-skill-map.json\",\n  \"feature_count\": 29,\n  \"summary\": {\n    \"critical\": 0,\n    \"high\": 0,\n    \"medium\": 0,\n    \"low\": 0\n  },\n  \"findings\": []\n}\n$ python scripts/gap_audit.py --target-version 0.16.54\n# PRD Plugin Gap Audit\n\nTarget version: `0.16.54`\n\n## Findings\n\n- None\n$ python scripts/version_advice.py --installed-repo . --format json --output request-report/version-advice.json\n$ python scripts/release_check.py --output request-report/release-hygiene.md\n$ python scripts/prd_doctor.py --repo-root . --format json --output request-report/prd-doctor.json\n$ python scripts/state_consistency_check.py --repo-root . --format json --output request-report/state-consistency.json\n$ python scripts/prd_install_skills.py --repo-root . --dry-run\n{\n  \"status\": \"dry_run\",\n  \"target_agent\": \"codex\",\n  \"targets\": [\n    {\n      \"agent\": \"codex\",\n      \"target\": \".agents\\\\skills\",\n      \"would_install\": [\n        \"project-architecture\",\n        \"project-blocker-resolution\",\n        \"project-brainstorm\",\n        \"project-change-request\",\n        \"project-code-review\",\n        \"project-decision-ledger\",\n        \"project-decision-policy\",\n        \"project-deterministic-workflows\",\n        \"project-document-branch\",\n        \"project-evidence\",\n        \"project-evidence-ledger\",\n        \"project-git-workflow\",\n        \"project-health\",\n        \"project-implementation-plan\",\n        \"project-llm-wiki\",\n        \"project-local-integration\",\n        \"project-memory\",\n        \"project-planning-lifecycle\",\n        \"project-prd\",\n        \"project-prd-plugin-setup\",\n        \"project-request-intake\",\n        \"project-session-close\",\n        \"project-systematic-debugging\",\n        \"project-test-driven-implementation\",\n        \"project-traceability-review\",\n        \"project-traceability-sync\",\n        \"project-verification-before-completion\",\n        \"source-command-prd-autonomy\",\n        \"source-command-prd-close\",\n        \"source-command-prd-config\",\n        \"source-command-prd-drift\",\n        \"source-command-prd-graph\",\n        \"source-command-prd-hooks\",\n        \"source-command-prd-new\",\n        \"source-command-prd-off\",\n        \"source-command-prd-on\",\n        \"source-command-prd-reflections\",\n        \"source-command-prd-report\",\n        \"source-command-prd-status\",\n        \"source-command-prd-track\",\n        \"source-command-prd-version\",\n        \"source-command-prd-workflow\"\n      ],\n      \"would_remove\": [\n        \"project-fold-it-in\",\n        \"project-self-audit\"\n      ]\n    }\n  ],\n  \"installed_count\": 0,\n  \"target\": \".agents\\\\skills\",\n  \"installed\": [],\n  \"removed\": [],\n  \"would_install\": [\n    \"project-architecture\",\n    \"project-blocker-resolution\",\n    \"project-brainstorm\",\n    \"project-change-request\",\n    \"project-code-review\",\n    \"project-decision-ledger\",\n    \"project-decision-policy\",\n    \"project-deterministic-workflows\",\n    \"project-document-branch\",\n    \"project-evidence\",\n    \"project-evidence-ledger\",\n    \"project-git-workflow\",\n    \"project-health\",\n    \"project-implementation-plan\",\n    \"project-llm-wiki\",\n    \"project-local-integration\",\n    \"project-memory\",\n    \"project-planning-lifecycle\",\n    \"project-prd\",\n    \"project-prd-plugin-setup\",\n    \"project-request-intake\",\n    \"project-session-close\",\n    \"project-systematic-debugging\",\n    \"project-test-driven-implementation\",\n    \"project-traceability-review\",\n    \"project-traceability-sync\",\n    \"project-verification-before-completion\",\n    \"source-command-prd-autonomy\",\n    \"source-command-prd-close\",\n    \"source-command-prd-config\",\n    \"source-command-prd-drift\",\n    \"source-command-prd-graph\",\n    \"source-command-prd-hooks\",\n    \"source-command-prd-new\",\n    \"source-command-prd-off\",\n    \"source-command-prd-on\",\n    \"source-command-prd-reflections\",\n    \"source-command-prd-report\",\n    \"source-command-prd-status\",\n    \"source-command-prd-track\",\n    \"source-command-prd-version\",\n    \"source-command-prd-workflow\"\n  ],\n  \"would_remove\": [\n    \"project-fold-it-in\",\n    \"project-self-audit\"\n  ]\n}\n$ python scripts/request_report.py --config .prd_plugin/config.json --format markdown --output request-report/request-report.md\n$ python scripts/request_report.py --config .prd_plugin/config.json --format json --output request-report/request-report.json\n$ python scripts/message_check.py --config .prd_plugin/config.json --format json --output request-report/message-check.json\nLocal workflow check completed.\n",
            "stderr": "es (test_unified_config.MutationTests.test_audit_reports_unknown_and_invalid_values) ... ok\ntest_enable_disable_only_accept_mutable_booleans (test_unified_config.MutationTests.test_enable_disable_only_accept_mutable_booleans) ... ok\ntest_failed_atomic_replace_leaves_original_config_untouched (test_unified_config.MutationTests.test_failed_atomic_replace_leaves_original_config_untouched) ... ok\ntest_malformed_config_is_never_replaced_by_a_mutation (test_unified_config.MutationTests.test_malformed_config_is_never_replaced_by_a_mutation) ... ok\ntest_manual_set_marks_profile_custom_and_preserves_style (test_unified_config.MutationTests.test_manual_set_marks_profile_custom_and_preserves_style) ... ok\ntest_scalar_parent_is_not_clobbered_by_nested_set (test_unified_config.MutationTests.test_scalar_parent_is_not_clobbered_by_nested_set) ... ok\ntest_builtin_profile_dry_run_then_atomic_apply (test_unified_config.ProfileTests.test_builtin_profile_dry_run_then_atomic_apply) ... ok\ntest_invalid_custom_profile_never_partially_writes (test_unified_config.ProfileTests.test_invalid_custom_profile_never_partially_writes) ... ok\ntest_save_show_diff_and_delete_custom_profile (test_unified_config.ProfileTests.test_save_show_diff_and_delete_custom_profile) ... ok\ntest_does_not_flag_canonical_prd_state_paths (test_unsubmitted_plugin_request.UnsubmittedPluginRequestTests.test_does_not_flag_canonical_prd_state_paths) ... ok\ntest_does_not_flag_ordinary_project_requests (test_unsubmitted_plugin_request.UnsubmittedPluginRequestTests.test_does_not_flag_ordinary_project_requests) ... ok\ntest_does_not_flag_rejected_requests (test_unsubmitted_plugin_request.UnsubmittedPluginRequestTests.test_does_not_flag_rejected_requests) ... ok\ntest_does_not_flag_when_already_marked_upstream (test_unsubmitted_plugin_request.UnsubmittedPluginRequestTests.test_does_not_flag_when_already_marked_upstream) ... ok\ntest_flags_a_local_request_about_a_plugin_script (test_unsubmitted_plugin_request.UnsubmittedPluginRequestTests.test_flags_a_local_request_about_a_plugin_script) ... ok\ntest_flags_a_request_that_names_itself_upstream (test_unsubmitted_plugin_request.UnsubmittedPluginRequestTests.test_flags_a_request_that_names_itself_upstream) ... ok\ntest_never_fires_in_the_hub_repo_itself (test_unsubmitted_plugin_request.UnsubmittedPluginRequestTests.test_never_fires_in_the_hub_repo_itself) ... ok\ntest_wired_into_run_checks (test_unsubmitted_plugin_request.UnsubmittedPluginRequestTests.test_wired_into_run_checks) ... ok\ntest_output_writes_lf_and_a_trailing_newline (test_utcp_first_authority.GeneratedArtifactsAreByteStableTests.test_output_writes_lf_and_a_trailing_newline) ... ok\ntest_the_committed_manual_matches_a_fresh_generation (test_utcp_first_authority.GeneratedArtifactsAreByteStableTests.test_the_committed_manual_matches_a_fresh_generation) ... ok\ntest_every_spec_tool_maps_to_a_catalog_capability (test_utcp_first_authority.ParityDirectionTests.test_every_spec_tool_maps_to_a_catalog_capability) ... ok\ntest_server_metadata_matches_the_spec (test_utcp_first_authority.ParityDirectionTests.test_server_metadata_matches_the_spec) ... ok\ntest_python_entry_points_share_the_same_lock (test_utcp_first_authority.SafetyUnchangedTests.test_python_entry_points_share_the_same_lock)\nThe migration target already exists and is proven: prd_reflections ... ok\ntest_the_state_lock_is_still_held_for_mutations (test_utcp_first_authority.SafetyUnchangedTests.test_the_state_lock_is_still_held_for_mutations) ... ok\ntest_no_shipped_tool_metadata_carries_mojibake (test_utcp_first_authority.ShippedTextIsCleanTests.test_no_shipped_tool_metadata_carries_mojibake) ... ok\ntest_shipped_tool_metadata_is_valid_utf8 (test_utcp_first_authority.ShippedTextIsCleanTests.test_shipped_tool_metadata_is_valid_utf8)\nA file written through a cp1252 layer either fails to decode or ... ok\ntest_each_tool_declares_name_description_and_schema (test_utcp_first_authority.SpecIsTheSourceTests.test_each_tool_declares_name_description_and_schema) ... ok\ntest_the_manual_is_generated_from_the_spec_not_the_server (test_utcp_first_authority.SpecIsTheSourceTests.test_the_manual_is_generated_from_the_spec_not_the_server) ... ok\ntest_the_server_no_longer_authors_descriptions (test_utcp_first_authority.SpecIsTheSourceTests.test_the_server_no_longer_authors_descriptions)\nserver.cjs must READ definitions, not declare them. While a tool ... ok\ntest_the_spec_exists_and_declares_every_tool (test_utcp_first_authority.SpecIsTheSourceTests.test_the_spec_exists_and_declares_every_tool) ... ok\ntest_official_bridge_round_trips_cli_and_mcp_templates (test_utcp_first_catalog.BridgeParityTests.test_official_bridge_round_trips_cli_and_mcp_templates) ... ok\ntest_bridged_entries_reuse_server_metadata_verbatim (test_utcp_first_catalog.GeneratedProjectionTests.test_bridged_entries_reuse_server_metadata_verbatim)\nEach bridged manual entry's description and inputs equal the server's ... ok\ntest_checked_in_metadata_matches_live_server (test_utcp_first_catalog.GeneratedProjectionTests.test_checked_in_metadata_matches_live_server)\nThe pinned metadata projection cannot drift behind the live server. ... ok\ntest_mutations_keep_the_validated_handler_path (test_utcp_first_catalog.GuardedMutationTests.test_mutations_keep_the_validated_handler_path)\nEvery manual tool in a non-read capability calls the plugin state ... ok\ntest_read_only_cli_tools_stay_cli (test_utcp_first_catalog.GuardedMutationTests.test_read_only_cli_tools_stay_cli)\nThe 12 cli-native observe/recall tools keep their cli templates. ... ok\ntest_checked_in_metadata_projection_exists (test_utcp_first_catalog.ManualCompletenessTests.test_checked_in_metadata_projection_exists)\nThe server's tool metadata is a checked-in generated artifact so the ... ok\ntest_manual_covers_every_capability_on_both_transports (test_utcp_first_catalog.ManualCompletenessTests.test_manual_covers_every_capability_on_both_transports)\nEvery UTCP and MCP registration in the tool-surface catalog appears ... ok\ntest_appends_version_change_request (test_version_advice.VersionAdviceTests.test_appends_version_change_request) ... ok\ntest_builds_safe_update_advice_for_low_risk_releases (test_version_advice.VersionAdviceTests.test_builds_safe_update_advice_for_low_risk_releases) ... ok\ntest_cli_uses_hub_releases_when_downstream_repo_has_no_releases_file (test_version_advice.VersionAdviceTests.test_cli_uses_hub_releases_when_downstream_repo_has_no_releases_file) ... ok\ntest_detects_installed_version_from_bom_json (test_version_advice.VersionAdviceTests.test_detects_installed_version_from_bom_json) ... ok\ntest_detects_installed_version_from_opencode_plugin_manifest (test_version_advice.VersionAdviceTests.test_detects_installed_version_from_opencode_plugin_manifest) ... ok\ntest_detects_installed_version_from_prd_plugin_config (test_version_advice.VersionAdviceTests.test_detects_installed_version_from_prd_plugin_config) ... ok\ntest_detects_latest_version_from_plugin_manifest (test_version_advice.VersionAdviceTests.test_detects_latest_version_from_plugin_manifest) ... ok\ntest_installed_version_priority_prefers_config_then_codex_then_opencode (test_version_advice.VersionAdviceTests.test_installed_version_priority_prefers_config_then_codex_then_opencode) ... ok\ntest_orders_prerelease_before_final_release (test_version_advice.VersionAdviceTests.test_orders_prerelease_before_final_release) ... ok\ntest_recommends_review_first_for_medium_or_high_risk_release (test_version_advice.VersionAdviceTests.test_recommends_review_first_for_medium_or_high_risk_release) ... ok\ntest_disabled_returns_disabled_and_no_fetch (test_version_check.CheckTests.test_disabled_returns_disabled_and_no_fetch) ... ok\ntest_force_refetches_within_ttl (test_version_check.CheckTests.test_force_refetches_within_ttl) ... ok\ntest_network_failure_is_fail_open (test_version_check.CheckTests.test_network_failure_is_fail_open) ... ok\ntest_no_update_when_current (test_version_check.CheckTests.test_no_update_when_current) ... ok\ntest_status_is_cache_only_no_fetch (test_version_check.CheckTests.test_status_is_cache_only_no_fetch) ... ok\ntest_ttl_cache_avoids_refetch (test_version_check.CheckTests.test_ttl_cache_avoids_refetch) ... ok\ntest_ttl_expiry_refetches (test_version_check.CheckTests.test_ttl_expiry_refetches) ... ok\ntest_update_available_when_npm_is_ahead (test_version_check.CheckTests.test_update_available_when_npm_is_ahead) ... ok\ntest_status_cli_exits_zero (test_version_check.CliTests.test_status_cli_exits_zero) ... ok\ntest_default_ttl_is_responsive_not_a_day (test_version_check.FreshnessTests.test_default_ttl_is_responsive_not_a_day) ... ok\ntest_fetch_latest_accepts_a_timeout (test_version_check.FreshnessTests.test_fetch_latest_accepts_a_timeout) ... ok\ntest_nudge_refreshes_in_session_not_cache_only (test_version_check.FreshnessTests.test_nudge_refreshes_in_session_not_cache_only) ... ok\ntest_registry_default_ttl_matches (test_version_check.FreshnessTests.test_registry_default_ttl_matches) ... ok\ntest_semver_ordering (test_version_check.ParseTests.test_semver_ordering) ... ok\ntest_set_enabled_writes_config (test_version_check.ToggleTests.test_set_enabled_writes_config) ... ok\ntest_config_has_version_check_default_on (test_version_check.WiringTests.test_config_has_version_check_default_on) ... ok\ntest_nudge_surfaces_update_available (test_version_check.WiringTests.test_nudge_surfaces_update_available) ... ok\ntest_prd_version_command_exists (test_version_check.WiringTests.test_prd_version_command_exists) ... ok\ntest_script_registered_downstream (test_version_check.WiringTests.test_script_registered_downstream) ... ok\ntest_plan_cli_emits_json (test_wiki_backfill.CliTests.test_plan_cli_emits_json) ... ok\ntest_status_cli (test_wiki_backfill.CliTests.test_status_cli) ... ok\ntest_marker_written_for_established_repo_gaining_wiki (test_wiki_backfill.InstallerMarkerTests.test_marker_written_for_established_repo_gaining_wiki) ... ok\ntest_no_marker_for_empty_scaffold (test_wiki_backfill.InstallerMarkerTests.test_no_marker_for_empty_scaffold) ... ok\ntest_no_marker_when_wiki_already_exists (test_wiki_backfill.InstallerMarkerTests.test_no_marker_when_wiki_already_exists) ... ok\ntest_no_marker_when_wiki_disabled (test_wiki_backfill.InstallerMarkerTests.test_no_marker_when_wiki_disabled) ... ok\ntest_pending_false_when_absent (test_wiki_backfill.StatusTests.test_pending_false_when_absent) ... ok\ntest_pending_false_when_wiki_already_exists (test_wiki_backfill.StatusTests.test_pending_false_when_wiki_already_exists) ... ok\ntest_pending_true_when_marker_present (test_wiki_backfill.StatusTests.test_pending_true_when_marker_present) ... ok\ntest_plan_excludes_generated_report_artifacts (test_wiki_backfill.SurveyPlanTests.test_plan_excludes_generated_report_artifacts)\nrequest-report/ (incl. its calibration report trees) and docs/evidence/ ... ok\ntest_plan_excludes_plugin_and_vendor_noise (test_wiki_backfill.SurveyPlanTests.test_plan_excludes_plugin_and_vendor_noise) ... ok\ntest_plan_inventories_code_docs_and_state (test_wiki_backfill.SurveyPlanTests.test_plan_inventories_code_docs_and_state) ... ok\ntest_plan_is_read_only (test_wiki_backfill.SurveyPlanTests.test_plan_is_read_only) ... ok\ntest_wiki_drift_in_on_stop_and_default_sets (test_wiki_backfill.WikiDriftMonitorWiringTests.test_wiki_drift_in_on_stop_and_default_sets) ... ok\ntest_current_article_no_drift (test_wiki_backfill.WikiDriftTests.test_current_article_no_drift) ... ok\ntest_drift_cli (test_wiki_backfill.WikiDriftTests.test_drift_cli) ... ok\ntest_far_behind_article_flagged (test_wiki_backfill.WikiDriftTests.test_far_behind_article_flagged) ... ok\ntest_no_wiki_is_ok (test_wiki_backfill.WikiDriftTests.test_no_wiki_is_ok) ... ok\ntest_unlinked_markdown_reference_is_part_of_wiki_drift (test_wiki_backfill.WikiDriftTests.test_unlinked_markdown_reference_is_part_of_wiki_drift) ... ok\ntest_unstamped_article_flagged (test_wiki_backfill.WikiDriftTests.test_unstamped_article_flagged) ... ok\ntest_wiki_drift_uses_configured_wiki_directory (test_wiki_backfill.WikiDriftTests.test_wiki_drift_uses_configured_wiki_directory) ... ok\ntest_ambiguous_reference_is_reported_but_never_guessed (test_wiki_backfill.WikiInlineMarkdownLinkTests.test_ambiguous_reference_is_reported_but_never_guessed) ... ok\ntest_cli_check_fails_and_fix_then_passes (test_wiki_backfill.WikiInlineMarkdownLinkTests.test_cli_check_fails_and_fix_then_passes) ... ok\ntest_existing_inline_links_and_fenced_examples_are_not_findings (test_wiki_backfill.WikiInlineMarkdownLinkTests.test_existing_inline_links_and_fenced_examples_are_not_findings) ... ok\ntest_fix_rewrites_only_unambiguous_references_to_relative_inline_links (test_wiki_backfill.WikiInlineMarkdownLinkTests.test_fix_rewrites_only_unambiguous_references_to_relative_inline_links) ... ok\ntest_reports_resolvable_bare_and_code_wrapped_markdown_references (test_wiki_backfill.WikiInlineMarkdownLinkTests.test_reports_resolvable_bare_and_code_wrapped_markdown_references) ... ok\ntest_nudge_surfaces_pending_backfill (test_wiki_backfill.WiringTests.test_nudge_surfaces_pending_backfill) ... ok\ntest_script_registered_downstream (test_wiki_backfill.WiringTests.test_script_registered_downstream) ... ok\ntest_skill_has_backfill_mode (test_wiki_backfill.WiringTests.test_skill_has_backfill_mode) ... ok\ntest_copy_and_download_controls_are_wired (test_wiki_html_export.WikiHtmlExportTests.test_copy_and_download_controls_are_wired) ... ok\ntest_default_output_lands_in_the_local_runtime_dir (test_wiki_html_export.WikiHtmlExportTests.test_default_output_lands_in_the_local_runtime_dir) ... ok\ntest_every_page_is_embedded_with_exact_markdown (test_wiki_html_export.WikiHtmlExportTests.test_every_page_is_embedded_with_exact_markdown) ... ok\ntest_export_all_generates_viewers_and_super_index (test_wiki_html_export.WikiHtmlExportTests.test_export_all_generates_viewers_and_super_index) ... ok\ntest_export_is_one_self_contained_offline_file (test_wiki_html_export.WikiHtmlExportTests.test_export_is_one_self_contained_offline_file) ... ok\ntest_guest_repo_viewer_is_hosted_by_the_host_repo (test_wiki_html_export.WikiHtmlExportTests.test_guest_repo_viewer_is_hosted_by_the_host_repo)\nA repo without .prd_plugin gets NO new files in its own tree; its ... ok\ntest_hub_repo_exports_all_pages (test_wiki_html_export.WikiHtmlExportTests.test_hub_repo_exports_all_pages) ... ok\ntest_parse_wiki_log_extracts_dated_entries_with_bodies (test_wiki_html_export.WikiHtmlExportTests.test_parse_wiki_log_extracts_dated_entries_with_bodies)\nREQ-112: every workspace log follows '## [date] mode | text'. ... ok\ntest_parse_wiki_log_tolerates_missing_log (test_wiki_html_export.WikiHtmlExportTests.test_parse_wiki_log_tolerates_missing_log) ... ok\ntest_script_content_cannot_break_the_payload (test_wiki_html_export.WikiHtmlExportTests.test_script_content_cannot_break_the_payload) ... ok\ntest_super_index_has_a_combined_changelog (test_wiki_html_export.WikiHtmlExportTests.test_super_index_has_a_combined_changelog) ... ok\ntest_super_index_reports_page_counts (test_wiki_html_export.WikiHtmlExportTests.test_super_index_reports_page_counts) ... ok\ntest_workspace_discovery_uses_the_wiki_convention_marker (test_wiki_html_export.WikiHtmlExportTests.test_workspace_discovery_uses_the_wiki_convention_marker)\nREQ-110 + REQ-111: any immediate child whose wiki follows the ... ok\ntest_a_repo_without_a_wiki_is_not_in_drift (test_wiki_ingest_drift.DetectionTests.test_a_repo_without_a_wiki_is_not_in_drift)\nNo wiki is a legitimate state, not a failure to ingest. ... ok\ntest_fully_ingested_repo_is_clean (test_wiki_ingest_drift.DetectionTests.test_fully_ingested_repo_is_clean) ... ok\ntest_malformed_state_degrades_rather_than_raising (test_wiki_ingest_drift.DetectionTests.test_malformed_state_degrades_rather_than_raising) ... ok\ntest_non_implemented_requests_are_never_expected_in_the_log (test_wiki_ingest_drift.DetectionTests.test_non_implemented_requests_are_never_expected_in_the_log) ... ok\ntest_only_work_since_the_last_ingest_is_actionable (test_wiki_ingest_drift.DetectionTests.test_only_work_since_the_last_ingest_is_actionable)\nRaw counting flags pre-wiki history as drift � ~70 items in the hub, ... ok\ntest_reports_implemented_requests_absent_from_the_log (test_wiki_ingest_drift.DetectionTests.test_reports_implemented_requests_absent_from_the_log) ... ok\ntest_it_runs_against_this_repo_and_returns_a_usable_report (test_wiki_ingest_drift.RealRepoTests.test_it_runs_against_this_repo_and_returns_a_usable_report)\nGrounded against real state, but NOT pinned to a specific gap: a test ... ok\ntest_prd_status_omits_it_when_clean (test_wiki_ingest_drift.SurfaceTests.test_prd_status_omits_it_when_clean) ... ok\ntest_prd_status_reports_the_drift (test_wiki_ingest_drift.SurfaceTests.test_prd_status_reports_the_drift) ... ok\ntest_this_repos_wiki_reads_byte_exact (test_wiki_page_contract.HubRepoSmokeTests.test_this_repos_wiki_reads_byte_exact) ... ok\ntest_list_enumerates_canonical_pages_with_titles (test_wiki_page_contract.WikiPageListTests.test_list_enumerates_canonical_pages_with_titles) ... ok\ntest_boundaries_are_hard (test_wiki_page_contract.WikiPageReadTests.test_boundaries_are_hard) ... ok\ntest_drift_remains_the_default_action (test_wiki_page_contract.WikiPageReadTests.test_drift_remains_the_default_action) ... ok\ntest_read_page_without_stamps_reports_null_provenance (test_wiki_page_contract.WikiPageReadTests.test_read_page_without_stamps_reports_null_provenance) ... ok\ntest_read_requires_a_path (test_wiki_page_contract.WikiPageReadTests.test_read_requires_a_path) ... ok\ntest_read_returns_exact_markdown_with_provenance (test_wiki_page_contract.WikiPageReadTests.test_read_returns_exact_markdown_with_provenance) ... ok\ntest_no_cp1252_unencodable_chars_in_agent_facing_tools (test_windows_console_safe.SourceScanTests.test_no_cp1252_unencodable_chars_in_agent_facing_tools) ... ok\ntest_backfill_pending_status_renders_cp1252_safe (test_windows_console_safe.StatusRenderTests.test_backfill_pending_status_renders_cp1252_safe) ... ok\ntest_json_output_escapes_non_console_characters (test_windows_console_safe.WorkflowCliRenderTests.test_json_output_escapes_non_console_characters) ... ok\ntest_repository_workflow_surfaces_are_chml_zero (test_workflow_chml_audit.WorkflowChmlAuditTests.test_repository_workflow_surfaces_are_chml_zero) ... ok\ntest_semantic_skill_finding_is_part_of_workflow_chml (test_workflow_chml_audit.WorkflowChmlAuditTests.test_semantic_skill_finding_is_part_of_workflow_chml) ... ok\ntest_git_workflow_pushes_clean_verified_commits_in_autonomous (test_workflow_consistency.AutonomyConflictResolutionTests.test_git_workflow_pushes_clean_verified_commits_in_autonomous) ... ok\ntest_request_intake_defers_autonomy_and_owns_graduation (test_workflow_consistency.AutonomyConflictResolutionTests.test_request_intake_defers_autonomy_and_owns_graduation) ... ok\ntest_evidence_pair_states_create_vs_review_boundary (test_workflow_consistency.BoundaryClarityTests.test_evidence_pair_states_create_vs_review_boundary) ... ok\ntest_session_close_states_memory_boundary (test_workflow_consistency.BoundaryClarityTests.test_session_close_states_memory_boundary) ... ok\ntest_document_branch_has_promotion_owner (test_workflow_consistency.DeadEndOwnerTests.test_document_branch_has_promotion_owner) ... ok\ntest_health_findings_have_triage_dispositions (test_workflow_consistency.DeadEndOwnerTests.test_health_findings_have_triage_dispositions) ... ok\ntest_memory_owns_schema_version_changes (test_workflow_consistency.DeadEndOwnerTests.test_memory_owns_schema_version_changes) ... ok\ntest_planning_lifecycle_has_stage_readiness_checkpoints (test_workflow_consistency.DeadEndOwnerTests.test_planning_lifecycle_has_stage_readiness_checkpoints) ... ok\ntest_session_close_runs_traceability_sync (test_workflow_consistency.DeadEndOwnerTests.test_session_close_runs_traceability_sync) ... ok\n\n----------------------------------------------------------------------\nRan 1259 tests in 107.577s\n\nOK\n"
          },
          "output_hash": "7c78a516a62c357be7f062c2c86c4ebd1131a57b34c8ac188a679ced614e2d5e",
          "completed_at": "2026-07-24T20:05:05Z"
        },
        {
          "id": "release",
          "action": "process.fixed",
          "status": "completed",
          "resolved_input_hash": "1e5b0c18d93eb4c2248f9a00adbd438e52f3ef02137477fb8376c69cfe86fc9b",
          "started_at": "2026-07-24T20:05:06Z",
          "output": {
            "operation": "release_check",
            "command": [
              "python",
              "scripts/release_check.py"
            ],
            "exit_code": 0,
            "stdout": "# Release Hygiene Report\n\nBase version: `0.16.53`\nHead version: `0.16.54`\nChanged files checked: 57\n\n## Findings\n\n- None\n",
            "stderr": ""
          },
          "output_hash": "58d0f15d9e9501aef280ead52c9e13f60190fdf934eaa89d8cf0ac61ee3f9194",
          "completed_at": "2026-07-24T20:05:06Z"
        },
        {
          "id": "gaps",
          "action": "process.fixed",
          "status": "completed",
          "resolved_input_hash": "577241909238eeb55683f89d2d2216648dad2e3127397993e22493829a1307a4",
          "started_at": "2026-07-24T20:05:06Z",
          "output": {
            "operation": "gap_audit",
            "command": [
              "python",
              "scripts/gap_audit.py",
              "--target-version",
              "0.16.54",
              "--config",
              ".prd_plugin/config.json",
              "--releases",
              ".prd_plugin/state/releases.json"
            ],
            "exit_code": 0,
            "stdout": "# PRD Plugin Gap Audit\n\nTarget version: `0.16.54`\n\n## Findings\n\n- None\n",
            "stderr": ""
          },
          "output_hash": "d5faa2c5fc02de98ab3b0a2c374bdfdceb6a6f8ba15531f7d6034b37d8b2c0d6",
          "completed_at": "2026-07-24T20:05:06Z"
        },
        {
          "id": "package",
          "action": "process.fixed",
          "status": "completed",
          "resolved_input_hash": "06cd12e1f3db3d985f9150520afa60f288297ff0ca01a8e813e9bb6291aa8836",
          "started_at": "2026-07-24T20:05:06Z",
          "output": {
            "operation": "package_check",
            "command": [
              "npm",
              "pack",
              "--dry-run"
            ],
            "exit_code": 0,
            "stdout": "prd-plugin-0.16.54.tgz\n",
            "stderr": "te.md\nnpm notice 17.0kB templates/repo-skeleton/.agents/skills/project-llm-wiki/SKILL.md\nnpm notice 7.4kB templates/repo-skeleton/.agents/skills/project-local-integration/SKILL.md\nnpm notice 8.1kB templates/repo-skeleton/.agents/skills/project-memory/SKILL.md\nnpm notice 6.2kB templates/repo-skeleton/.agents/skills/project-planning-lifecycle/SKILL.md\nnpm notice 6.0kB templates/repo-skeleton/.agents/skills/project-prd-plugin-setup/SKILL.md\nnpm notice 3.5kB templates/repo-skeleton/.agents/skills/project-prd/SKILL.md\nnpm notice 27.5kB templates/repo-skeleton/.agents/skills/project-request-intake/SKILL.md\nnpm notice 4.8kB templates/repo-skeleton/.agents/skills/project-session-close/SKILL.md\nnpm notice 10.3kB templates/repo-skeleton/.agents/skills/project-systematic-debugging/SKILL.md\nnpm notice 4.8kB templates/repo-skeleton/.agents/skills/project-test-driven-implementation/SKILL.md\nnpm notice 3.7kB templates/repo-skeleton/.agents/skills/project-traceability-review/SKILL.md\nnpm notice 2.5kB templates/repo-skeleton/.agents/skills/project-traceability-sync/SKILL.md\nnpm notice 6.6kB templates/repo-skeleton/.agents/skills/project-verification-before-completion/SKILL.md\nnpm notice 1.5kB templates/repo-skeleton/.agents/skills/source-command-prd-autonomy/SKILL.md\nnpm notice 1.2kB templates/repo-skeleton/.agents/skills/source-command-prd-close/SKILL.md\nnpm notice 3.3kB templates/repo-skeleton/.agents/skills/source-command-prd-config/SKILL.md\nnpm notice 2.4kB templates/repo-skeleton/.agents/skills/source-command-prd-drift/SKILL.md\nnpm notice 2.1kB templates/repo-skeleton/.agents/skills/source-command-prd-graph/SKILL.md\nnpm notice 2.2kB templates/repo-skeleton/.agents/skills/source-command-prd-hooks/SKILL.md\nnpm notice 1.3kB templates/repo-skeleton/.agents/skills/source-command-prd-new/SKILL.md\nnpm notice 2.0kB templates/repo-skeleton/.agents/skills/source-command-prd-off/SKILL.md\nnpm notice 1.5kB templates/repo-skeleton/.agents/skills/source-command-prd-on/SKILL.md\nnpm notice 2.3kB templates/repo-skeleton/.agents/skills/source-command-prd-reflections/SKILL.md\nnpm notice 2.5kB templates/repo-skeleton/.agents/skills/source-command-prd-report/SKILL.md\nnpm notice 1.2kB templates/repo-skeleton/.agents/skills/source-command-prd-status/SKILL.md\nnpm notice 1.7kB templates/repo-skeleton/.agents/skills/source-command-prd-track/SKILL.md\nnpm notice 1.8kB templates/repo-skeleton/.agents/skills/source-command-prd-version/SKILL.md\nnpm notice 1.7kB templates/repo-skeleton/.agents/skills/source-command-prd-workflow/SKILL.md\nnpm notice 764B templates/repo-skeleton/.claude-plugin/plugin.json\nnpm notice 772B templates/repo-skeleton/.claude/commands/prd-autonomy.md\nnpm notice 493B templates/repo-skeleton/.claude/commands/prd-close.md\nnpm notice 2.5kB templates/repo-skeleton/.claude/commands/prd-config.md\nnpm notice 1.6kB templates/repo-skeleton/.claude/commands/prd-drift.md\nnpm notice 1.4kB templates/repo-skeleton/.claude/commands/prd-graph.md\nnpm notice 1.6kB templates/repo-skeleton/.claude/commands/prd-hooks.md\nnpm notice 639B templates/repo-skeleton/.claude/commands/prd-new.md\nnpm notice 1.4kB templates/repo-skeleton/.claude/commands/prd-off.md\nnpm notice 862B templates/repo-skeleton/.claude/commands/prd-on.md\nnpm notice 1.6kB templates/repo-skeleton/.claude/commands/prd-reflections.md\nnpm notice 1.8kB templates/repo-skeleton/.claude/commands/prd-report.md\nnpm notice 549B templates/repo-skeleton/.claude/commands/prd-status.md\nnpm notice 974B templates/repo-skeleton/.claude/commands/prd-track.md\nnpm notice 1.0kB templates/repo-skeleton/.claude/commands/prd-version.md\nnpm notice 938B templates/repo-skeleton/.claude/commands/prd-workflow.md\nnpm notice 1.6kB templates/repo-skeleton/.claude/hooks/prd_drift_check.py\nnpm notice 2.0kB templates/repo-skeleton/.claude/hooks/prd_log_skill.py\nnpm notice 4.1kB templates/repo-skeleton/.claude/hooks/prd_nudge.py\nnpm notice 3.7kB templates/repo-skeleton/.claude/hooks/prd_precommit_gate.py\nnpm notice 6.1kB templates/repo-skeleton/.claude/hooks/prd_reflection.py\nnpm notice 3.5kB templates/repo-skeleton/.claude/hooks/prd_session_report.py\nnpm notice 15.8kB templates/repo-skeleton/.claude/hooks/prd_stop_guard.py\nnpm notice 1.2kB templates/repo-skeleton/.claude/settings.json\nnpm notice 3.0kB templates/repo-skeleton/.claude/skills/project-architecture/SKILL.md\nnpm notice 7.4kB templates/repo-skeleton/.claude/skills/project-blocker-resolution/SKILL.md\nnpm notice 2.8kB templates/repo-skeleton/.claude/skills/project-brainstorm/SKILL.md\nnpm notice 5.5kB templates/repo-skeleton/.claude/skills/project-change-request/SKILL.md\nnpm notice 6.3kB templates/repo-skeleton/.claude/skills/project-code-review/SKILL.md\nnpm notice 2.7kB templates/repo-skeleton/.claude/skills/project-decision-ledger/SKILL.md\nnpm notice 23.6kB templates/repo-skeleton/.claude/skills/project-decision-policy/SKILL.md\nnpm notice 4.4kB templates/repo-skeleton/.claude/skills/project-deterministic-workflows/SKILL.md\nnpm notice 5.2kB templates/repo-skeleton/.claude/skills/project-document-branch/SKILL.md\nnpm notice 2.8kB templates/repo-skeleton/.claude/skills/project-evidence-ledger/SKILL.md\nnpm notice 3.3kB templates/repo-skeleton/.claude/skills/project-evidence/SKILL.md\nnpm notice 11.9kB templates/repo-skeleton/.claude/skills/project-git-workflow/SKILL.md\nnpm notice 7.4kB templates/repo-skeleton/.claude/skills/project-health/SKILL.md\nnpm notice 6.0kB templates/repo-skeleton/.claude/skills/project-implementation-plan/SKILL.md\nnpm notice 1.1kB templates/repo-skeleton/.claude/skills/project-llm-wiki/LICENSE\nnpm notice 842B templates/repo-skeleton/.claude/skills/project-llm-wiki/references/archive-template.md\nnpm notice 843B templates/repo-skeleton/.claude/skills/project-llm-wiki/references/article-template.md\nnpm notice 559B templates/repo-skeleton/.claude/skills/project-llm-wiki/references/index-template.md\nnpm notice 317B templates/repo-skeleton/.claude/skills/project-llm-wiki/references/raw-template.md\nnpm notice 17.0kB templates/repo-skeleton/.claude/skills/project-llm-wiki/SKILL.md\nnpm notice 7.4kB templates/repo-skeleton/.claude/skills/project-local-integration/SKILL.md\nnpm notice 8.1kB templates/repo-skeleton/.claude/skills/project-memory/SKILL.md\nnpm notice 6.2kB templates/repo-skeleton/.claude/skills/project-planning-lifecycle/SKILL.md\nnpm notice 6.0kB templates/repo-skeleton/.claude/skills/project-prd-plugin-setup/SKILL.md\nnpm notice 3.5kB templates/repo-skeleton/.claude/skills/project-prd/SKILL.md\nnpm notice 27.5kB templates/repo-skeleton/.claude/skills/project-request-intake/SKILL.md\nnpm notice 4.8kB templates/repo-skeleton/.claude/skills/project-session-close/SKILL.md\nnpm notice 10.3kB templates/repo-skeleton/.claude/skills/project-systematic-debugging/SKILL.md\nnpm notice 4.8kB templates/repo-skeleton/.claude/skills/project-test-driven-implementation/SKILL.md\nnpm notice 3.7kB templates/repo-skeleton/.claude/skills/project-traceability-review/SKILL.md\nnpm notice 2.5kB templates/repo-skeleton/.claude/skills/project-traceability-sync/SKILL.md\nnpm notice 6.6kB templates/repo-skeleton/.claude/skills/project-verification-before-completion/SKILL.md\nnpm notice 1.5kB templates/repo-skeleton/.claude/skills/source-command-prd-autonomy/SKILL.md\nnpm notice 1.2kB templates/repo-skeleton/.claude/skills/source-command-prd-close/SKILL.md\nnpm notice 3.3kB templates/repo-skeleton/.claude/skills/source-command-prd-config/SKILL.md\nnpm notice 2.4kB templates/repo-skeleton/.claude/skills/source-command-prd-drift/SKILL.md\nnpm notice 2.1kB templates/repo-skeleton/.claude/skills/source-command-prd-graph/SKILL.md\nnpm notice 2.2kB templates/repo-skeleton/.claude/skills/source-command-prd-hooks/SKILL.md\nnpm notice 1.3kB templates/repo-skeleton/.claude/skills/source-command-prd-new/SKILL.md\nnpm notice 2.0kB templates/repo-skeleton/.claude/skills/source-command-prd-off/SKILL.md\nnpm notice 1.5kB templates/repo-skeleton/.claude/skills/source-command-prd-on/SKILL.md\nnpm notice 2.3kB templates/repo-skeleton/.claude/skills/source-command-prd-reflections/SKILL.md\nnpm notice 2.5kB templates/repo-skeleton/.claude/skills/source-command-prd-report/SKILL.md\nnpm notice 1.2kB templates/repo-skeleton/.claude/skills/source-command-prd-status/SKILL.md\nnpm notice 1.7kB templates/repo-skeleton/.claude/skills/source-command-prd-track/SKILL.md\nnpm notice 1.8kB templates/repo-skeleton/.claude/skills/source-command-prd-version/SKILL.md\nnpm notice 1.7kB templates/repo-skeleton/.claude/skills/source-command-prd-workflow/SKILL.md\nnpm notice 3.2kB templates/repo-skeleton/.codex-plugin/plugin.json\nnpm notice 3.3kB templates/repo-skeleton/.codex/hooks.json\nnpm notice 743B templates/repo-skeleton/.githooks/pre-commit\nnpm notice 734B templates/repo-skeleton/.github/workflows/prd-gate.yml\nnpm notice 3.2kB templates/repo-skeleton/.opencode/plugin.json\nnpm notice 4.4kB templates/repo-skeleton/.opencode/plugins/prd-hooks.js\nnpm notice 3.0kB templates/repo-skeleton/.opencode/skill/project-architecture/SKILL.md\nnpm notice 7.4kB templates/repo-skeleton/.opencode/skill/project-blocker-resolution/SKILL.md\nnpm notice 2.8kB templates/repo-skeleton/.opencode/skill/project-brainstorm/SKILL.md\nnpm notice 5.5kB templates/repo-skeleton/.opencode/skill/project-change-request/SKILL.md\nnpm notice 6.3kB templates/repo-skeleton/.opencode/skill/project-code-review/SKILL.md\nnpm notice 2.7kB templates/repo-skeleton/.opencode/skill/project-decision-ledger/SKILL.md\nnpm notice 23.6kB templates/repo-skeleton/.opencode/skill/project-decision-policy/SKILL.md\nnpm notice 4.4kB templates/repo-skeleton/.opencode/skill/project-deterministic-workflows/SKILL.md\nnpm notice 5.2kB templates/repo-skeleton/.opencode/skill/project-document-branch/SKILL.md\nnpm notice 2.8kB templates/repo-skeleton/.opencode/skill/project-evidence-ledger/SKILL.md\nnpm notice 3.3kB templates/repo-skeleton/.opencode/skill/project-evidence/SKILL.md\nnpm notice 11.9kB templates/repo-skeleton/.opencode/skill/project-git-workflow/SKILL.md\nnpm notice 7.4kB templates/repo-skeleton/.opencode/skill/project-health/SKILL.md\nnpm notice 6.0kB templates/repo-skeleton/.opencode/skill/project-implementation-plan/SKILL.md\nnpm notice 1.1kB templates/repo-skeleton/.opencode/skill/project-llm-wiki/LICENSE\nnpm notice 842B templates/repo-skeleton/.opencode/skill/project-llm-wiki/references/archive-template.md\nnpm notice 843B templates/repo-skeleton/.opencode/skill/project-llm-wiki/references/article-template.md\nnpm notice 559B templates/repo-skeleton/.opencode/skill/project-llm-wiki/references/index-template.md\nnpm notice 317B templates/repo-skeleton/.opencode/skill/project-llm-wiki/references/raw-template.md\nnpm notice 17.0kB templates/repo-skeleton/.opencode/skill/project-llm-wiki/SKILL.md\nnpm notice 7.4kB templates/repo-skeleton/.opencode/skill/project-local-integration/SKILL.md\nnpm notice 8.1kB templates/repo-skeleton/.opencode/skill/project-memory/SKILL.md\nnpm notice 6.2kB templates/repo-skeleton/.opencode/skill/project-planning-lifecycle/SKILL.md\nnpm notice 6.0kB templates/repo-skeleton/.opencode/skill/project-prd-plugin-setup/SKILL.md\nnpm notice 3.5kB templates/repo-skeleton/.opencode/skill/project-prd/SKILL.md\nnpm notice 27.5kB templates/repo-skeleton/.opencode/skill/project-request-intake/SKILL.md\nnpm notice 4.8kB templates/repo-skeleton/.opencode/skill/project-session-close/SKILL.md\nnpm notice 10.3kB templates/repo-skeleton/.opencode/skill/project-systematic-debugging/SKILL.md\nnpm notice 4.8kB templates/repo-skeleton/.opencode/skill/project-test-driven-implementation/SKILL.md\nnpm notice 3.7kB templates/repo-skeleton/.opencode/skill/project-traceability-review/SKILL.md\nnpm notice 2.5kB templates/repo-skeleton/.opencode/skill/project-traceability-sync/SKILL.md\nnpm notice 6.6kB templates/repo-skeleton/.opencode/skill/project-verification-before-completion/SKILL.md\nnpm notice 1.5kB templates/repo-skeleton/.opencode/skill/source-command-prd-autonomy/SKILL.md\nnpm notice 1.2kB templates/repo-skeleton/.opencode/skill/source-command-prd-close/SKILL.md\nnpm notice 3.3kB templates/repo-skeleton/.opencode/skill/source-command-prd-config/SKILL.md\nnpm notice 2.4kB templates/repo-skeleton/.opencode/skill/source-command-prd-drift/SKILL.md\nnpm notice 2.1kB templates/repo-skeleton/.opencode/skill/source-command-prd-graph/SKILL.md\nnpm notice 2.2kB templates/repo-skeleton/.opencode/skill/source-command-prd-hooks/SKILL.md\nnpm notice 1.3kB templates/repo-skeleton/.opencode/skill/source-command-prd-new/SKILL.md\nnpm notice 2.0kB templates/repo-skeleton/.opencode/skill/source-command-prd-off/SKILL.md\nnpm notice 1.5kB templates/repo-skeleton/.opencode/skill/source-command-prd-on/SKILL.md\nnpm notice 2.3kB templates/repo-skeleton/.opencode/skill/source-command-prd-reflections/SKILL.md\nnpm notice 2.5kB templates/repo-skeleton/.opencode/skill/source-command-prd-report/SKILL.md\nnpm notice 1.2kB templates/repo-skeleton/.opencode/skill/source-command-prd-status/SKILL.md\nnpm notice 1.7kB templates/repo-skeleton/.opencode/skill/source-command-prd-track/SKILL.md\nnpm notice 1.8kB templates/repo-skeleton/.opencode/skill/source-command-prd-version/SKILL.md\nnpm notice 1.7kB templates/repo-skeleton/.opencode/skill/source-command-prd-workflow/SKILL.md\nnpm notice 14.9kB templates/repo-skeleton/.prd_plugin/config.json\nnpm notice 1.6kB templates/repo-skeleton/.prd_plugin/hooks/prd_drift_check.py\nnpm notice 12.0kB templates/repo-skeleton/.prd_plugin/hooks/prd_hook_dispatch.py\nnpm notice 2.0kB templates/repo-skeleton/.prd_plugin/hooks/prd_log_skill.py\nnpm notice 4.1kB templates/repo-skeleton/.prd_plugin/hooks/prd_nudge.py\nnpm notice 3.7kB templates/repo-skeleton/.prd_plugin/hooks/prd_precommit_gate.py\nnpm notice 60.0kB templates/repo-skeleton/.prd_plugin/hooks/prd_reason_guard.py\nnpm notice 6.1kB templates/repo-skeleton/.prd_plugin/hooks/prd_reflection.py\nnpm notice 3.5kB templates/repo-skeleton/.prd_plugin/hooks/prd_session_report.py\nnpm notice 15.8kB templates/repo-skeleton/.prd_plugin/hooks/prd_stop_guard.py\nnpm notice 8.0kB templates/repo-skeleton/.prd_plugin/hooks/prd_test_scope_guard.py\nnpm notice 3.7kB templates/repo-skeleton/.prd_plugin/ID-SCHEME.md\nnpm notice 581B templates/repo-skeleton/.prd_plugin/ids/registry.json\nnpm notice 12.6kB templates/repo-skeleton/.prd_plugin/METHOD.md\nnpm notice 725B templates/repo-skeleton/.prd_plugin/method/artifact-format.md\nnpm notice 1.5kB templates/repo-skeleton/.prd_plugin/method/completion-gate.md\nnpm notice 3.6kB templates/repo-skeleton/.prd_plugin/method/deterministic-workflows.md\nnpm notice 1.2kB templates/repo-skeleton/.prd_plugin/method/estimation.md\nnpm notice 2.1kB templates/repo-skeleton/.prd_plugin/method/grounding.md\nnpm notice 3.2kB templates/repo-skeleton/.prd_plugin/method/reporting.md\nnpm notice 4.1kB templates/repo-skeleton/.prd_plugin/method/self-service.md\nnpm notice 1.6kB templates/repo-skeleton/.prd_plugin/method/staleness-rules.md\nnpm notice 1.0kB templates/repo-skeleton/.prd_plugin/method/state-validation.md\nnpm notice 3.0kB templates/repo-skeleton/.prd_plugin/method/subagents.md\nnpm notice 1.3kB templates/repo-skeleton/.prd_plugin/services.json\nnpm notice 47B templates/repo-skeleton/.prd_plugin/state/changelog.json\nnpm notice 49B templates/repo-skeleton/.prd_plugin/state/decisions.json\nnpm notice 157B templates/repo-skeleton/.prd_plugin/state/health.json\nnpm notice 47B templates/repo-skeleton/.prd_plugin/state/memory.json\nnpm notice 287B templates/repo-skeleton/.prd_plugin/state/project.json\nnpm notice 48B templates/repo-skeleton/.prd_plugin/state/releases.json\nnpm notice 48B templates/repo-skeleton/.prd_plugin/state/requests.json\nnpm notice 214B templates/repo-skeleton/.prd_plugin/state/sessions/shared/promoted-session-summaries.jsonl\nnpm notice 49B templates/repo-skeleton/.prd_plugin/state/substrate-links.json\nnpm notice 51B templates/repo-skeleton/.prd_plugin/state/tracking.json\nnpm notice 48B templates/repo-skeleton/.prd_plugin/state/workflow-runs.json\nnpm notice 167B templates/repo-skeleton/.prd_plugin/templates/architecture-delta.md\nnpm notice 1.4kB templates/repo-skeleton/.prd_plugin/templates/architecture.json\nnpm notice 368B templates/repo-skeleton/.prd_plugin/templates/brainstorm.md\nnpm notice 274B templates/repo-skeleton/.prd_plugin/templates/changelog.json\nnpm notice 15.0kB templates/repo-skeleton/.prd_plugin/templates/config.json\nnpm notice 265B templates/repo-skeleton/.prd_plugin/templates/decision-record.md\nnpm notice 398B templates/repo-skeleton/.prd_plugin/templates/decisions.json\nnpm notice 372B templates/repo-skeleton/.prd_plugin/templates/doc-branch.json\nnpm notice 313B templates/repo-skeleton/.prd_plugin/templates/doc-branch.md\nnpm notice 115B templates/repo-skeleton/.prd_plugin/templates/evidence.md\nnpm notice 249B templates/repo-skeleton/.prd_plugin/templates/handoff.json\nnpm notice 407B templates/repo-skeleton/.prd_plugin/templates/health.json\nnpm notice 695B templates/repo-skeleton/.prd_plugin/templates/human-exports/architecture.md\nnpm notice 626B templates/repo-skeleton/.prd_plugin/templates/human-exports/implementation-plan.md\nnpm notice 580B templates/repo-skeleton/.prd_plugin/templates/human-exports/prd.md\nnpm notice 1.4kB templates/repo-skeleton/.prd_plugin/templates/implementation-plan.json\nnpm notice 65B templates/repo-skeleton/.prd_plugin/templates/mailbox.json\nnpm notice 348B templates/repo-skeleton/.prd_plugin/templates/memory.json\nnpm notice 471B templates/repo-skeleton/.prd_plugin/templates/merge-checklist.md\nnpm notice 163B templates/repo-skeleton/.prd_plugin/templates/plan-delta.md\nnpm notice 139B templates/repo-skeleton/.prd_plugin/templates/prd-delta.md\nnpm notice 1.3kB templates/repo-skeleton/.prd_plugin/templates/prd.json\nnpm notice 455B templates/repo-skeleton/.prd_plugin/templates/project.json\nnpm notice 125B templates/repo-skeleton/.prd_plugin/templates/promoted-session-summary.jsonl\nnpm notice 923B templates/repo-skeleton/.prd_plugin/templates/releases.json\nnpm notice 1.4kB templates/repo-skeleton/.prd_plugin/templates/request.json\nnpm notice 1.7kB templates/repo-skeleton/.prd_plugin/templates/requests.json\nnpm notice 23.4kB templates/repo-skeleton/.prd_plugin/templates/script-install-scope.json\nnpm notice 235B templates/repo-skeleton/.prd_plugin/templates/session.json\nnpm notice 15.6kB templates/repo-skeleton/.prd_plugin/templates/skill-install-scope.json\nnpm notice 317B templates/repo-skeleton/.prd_plugin/templates/submission-package.json\nnpm notice 5.7kB templates/repo-skeleton/.prd_plugin/templates/tool-surface.json\nnpm notice 225B templates/repo-skeleton/.prd_plugin/templates/traceability-matrix.md\nnpm notice 321B templates/repo-skeleton/.prd_plugin/templates/tracking.json\nnpm notice 375B templates/repo-skeleton/.prd_plugin/templates/utcp-config.json\nnpm notice 22.2kB templates/repo-skeleton/.prd_plugin/workflows.json\nnpm notice 15.2kB templates/repo-skeleton/AGENTS.md\nnpm notice 11.6kB templates/repo-skeleton/CLAUDE.md\nnpm notice 12.0kB templates/repo-skeleton/docs/INSTALL-MATRIX.md\nnpm notice 2.7kB templates/repo-skeleton/hooks/hooks.json\nnpm notice 1.4kB templates/request.json\nnpm notice 1.7kB templates/requests.json\nnpm notice 23.4kB templates/script-install-scope.json\nnpm notice 1.3kB templates/services.json\nnpm notice 235B templates/session.json\nnpm notice 15.6kB templates/skill-install-scope.json\nnpm notice 317B templates/submission-package.json\nnpm notice 10.4kB templates/substrate-capabilities.json\nnpm notice 48.5kB templates/tool-spec.json\nnpm notice 7.9kB templates/tool-surface.json\nnpm notice 225B templates/traceability-matrix.md\nnpm notice 321B templates/tracking.json\nnpm notice 375B templates/utcp-config.json\nnpm notice 22.2kB templates/workflows.json\nnpm notice Tarball Details\nnpm notice name: prd-plugin\nnpm notice version: 0.16.54\nnpm notice filename: prd-plugin-0.16.54.tgz\nnpm notice package size: 1.7 MB\nnpm notice unpacked size: 10.6 MB\nnpm notice shasum: 2dc48b538f54ea64f919c9d7cb48828851302183\nnpm notice integrity: sha512-80hmfOicrjGSS[...]SNA+aPtCDW64w==\nnpm notice total files: 649\nnpm notice\n"
          },
          "output_hash": "b63081f7c19bc46b6761b81e7b7ca2e3381718853e0a10e83d0212c673aacbec",
          "completed_at": "2026-07-24T20:05:08Z"
        },
        {
          "id": "gate",
          "action": "state.gate",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-24T20:05:08Z",
          "output": {
            "status": "attention",
            "repo_root": "D:\\Projects\\prd-plugin",
            "summary": {
              "errors": 0,
              "warnings": 0
            },
            "findings": [
              {
                "check": "state_consistency",
                "severity": "info",
                "summary": "File references 2 canonical IDs across 2 prefix(es); treated as a positive signal of extra work.",
                "required_action": "No action required; this is an informational signal."
              }
            ]
          },
          "output_hash": "6a0ed3d65779be265214a0e8395ab03978b9f7b91da9ffb59b257b73f82d087d",
          "completed_at": "2026-07-24T20:05:09Z"
        }
      ],
      "completed_at": "2026-07-24T20:05:09Z"
    },
    {
      "id": "WFR-415",
      "schema_version": "1.0",
      "workflow_id": "engineering.verify",
      "workflow_version": 1,
      "definition_hash": "82a795fafbc550f124ec781ea9c5b6170d95b5e687fffadf6939f1f160df5ce1",
      "plan_hash": "d2a2b287b65f06caa178fb87bc75fc76440f7c2de01040453305e8ce3ed5acba",
      "input_hash": "e31eefe8d7d1d92d29ffe0f0853ec3b42e4677f5ffd7193b81c4a2891f0b338e",
      "inputs": {
        "base_ref": "origin/main",
        "release": true
      },
      "idempotency_key": "req-172-codex-session-fallback-verify-v1",
      "status": "completed",
      "attempt": 1,
      "created_at": "2026-07-25T00:44:28Z",
      "updated_at": "2026-07-25T00:46:22Z",
      "receipts": [
        {
          "step_id": "plan",
          "action": "verification.plan",
          "input_hash": "e31eefe8d7d1d92d29ffe0f0853ec3b42e4677f5ffd7193b81c4a2891f0b338e",
          "output_hash": "f6bf610cffc3e59a0ad903abeda30af906d82f3384768d787e5de531d4703f91",
          "completed_at": "2026-07-25T00:44:29Z"
        },
        {
          "step_id": "execute",
          "action": "verification.execute",
          "input_hash": "579e5540b17e22e10cd3dc6f75b8505f7e8e9459030327fe2873b9468edd0360",
          "output_hash": "03b280d90fcbb3d1fdeca76fe0024acfa06f9a53f6006fe4bafe1b80324c32b7",
          "completed_at": "2026-07-25T00:46:20Z"
        },
        {
          "step_id": "diff",
          "action": "git.diff_check",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "11c11db30f4b3f6c758722ba3e27eea08145b7d212f6a157451e364b48475280",
          "completed_at": "2026-07-25T00:46:21Z"
        },
        {
          "step_id": "state",
          "action": "state.consistency",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "7bd004636e5a786f64604d8cc821f23845cc7f69b783a6392c588759f368f587",
          "completed_at": "2026-07-25T00:46:21Z"
        },
        {
          "step_id": "gate",
          "action": "state.gate",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "af95f5508bef069fc3c46ffe3a052eeba9fa5c6bfadc00da8d536a21484deebe",
          "completed_at": "2026-07-25T00:46:21Z"
        }
      ],
      "steps": [
        {
          "id": "plan",
          "action": "verification.plan",
          "status": "completed",
          "resolved_input_hash": "e31eefe8d7d1d92d29ffe0f0853ec3b42e4677f5ffd7193b81c4a2891f0b338e",
          "started_at": "2026-07-25T00:44:28Z",
          "output": {
            "schema_version": "1.0",
            "contract_version": 1,
            "executor": "ai-collab",
            "changed_files": [
              ".claude-plugin/marketplace.json",
              ".claude-plugin/plugin.json",
              ".codex-plugin/plugin.json",
              ".opencode/plugin.json",
              ".prd_plugin/config.json",
              ".prd_plugin/hooks/prd_reason_guard.py",
              ".prd_plugin/ids/registry.json",
              ".prd_plugin/state/project.json",
              ".prd_plugin/state/releases.json",
              ".prd_plugin/state/requests.json",
              ".prd_plugin/state/tracking.json",
              ".prd_plugin/state/workflow-runs.json",
              "docs/REASONING-GUARD.md",
              "index.js",
              "mcp/server.cjs",
              "package.json",
              "raw/hooks/2026-07-25-codex-null-transcript-session-fallback.md",
              "skills-manifest.json",
              "templates/config.json",
              "templates/project.json",
              "templates/releases.json",
              "templates/repo-skeleton/.claude-plugin/plugin.json",
              "templates/repo-skeleton/.codex-plugin/plugin.json",
              "templates/repo-skeleton/.opencode/plugin.json",
              "templates/repo-skeleton/.prd_plugin/config.json",
              "templates/repo-skeleton/.prd_plugin/hooks/prd_reason_guard.py",
              "templates/repo-skeleton/.prd_plugin/state/project.json",
              "templates/repo-skeleton/.prd_plugin/templates/config.json",
              "templates/repo-skeleton/.prd_plugin/templates/project.json",
              "tests/test_reason_guard.py",
              "wiki/hooks/reasoning-guard.md",
              "wiki/index.md",
              "wiki/log.md"
            ],
            "change_fingerprint": "6a24778c0b490c89e12a9a8c0878e7900c9d5eac2c29746077ac699938af8b34",
            "policy": {
              "enabled": true,
              "executor": "ai-collab",
              "neighbor_limit": 12,
              "max_changed_files": 25,
              "fallback": "full",
              "full_suite_triggers": [
                "release",
                "core_change",
                "impact_unavailable",
                "impact_degraded",
                "unmapped_change"
              ],
              "core_paths": [
                "package.json",
                "package-lock.json",
                "pyproject.toml",
                "Cargo.toml",
                "go.mod",
                ".github/workflows/**"
              ],
              "test_patterns": [
                "tests/**",
                "test/**",
                "spec/**",
                "**/*.test.*",
                "**/*.spec.*",
                "test_*.py",
                "*_test.py",
                "*_test.go",
                "**/test_*.py",
                "**/*_test.py",
                "**/*_test.go"
              ],
              "max_selected_tests": 200,
              "execution_timeout_seconds": 600,
              "focused_commands": [],
              "full_commands": [],
              "allowed_executables": [
                "python",
                "python3",
                "py",
                "pytest",
                "npm",
                "npx",
                "node",
                "go",
                "cargo",
                "dotnet",
                "mvn",
                "gradle",
                "gradlew",
                "make"
              ]
            },
            "selection_rules": {
              "precedence": [
                "exact_changed",
                "explicit_test_ownership",
                "structural_dependencies",
                "predictive_impact"
              ],
              "require_all_changed_files_mapped": true,
              "widen_before_full": true,
              "predictive_signal_is_sufficient_alone": false
            },
            "fallback": {
              "strategy": "full",
              "conditions": [
                "release",
                "core_change",
                "impact_unavailable",
                "impact_degraded",
                "unmapped_change"
              ]
            },
            "strategy": "full",
            "reason": "release",
            "runtime_requests": {},
            "plan_hash": "88e7851faaa617f7f2903d7b9a8cec8abbb937fdf2bc29493cd804f8feb23612"
          },
          "output_hash": "f6bf610cffc3e59a0ad903abeda30af906d82f3384768d787e5de531d4703f91",
          "completed_at": "2026-07-25T00:44:29Z"
        },
        {
          "id": "execute",
          "action": "verification.execute",
          "status": "completed",
          "resolved_input_hash": "579e5540b17e22e10cd3dc6f75b8505f7e8e9459030327fe2873b9468edd0360",
          "started_at": "2026-07-25T00:44:29Z",
          "output": {
            "status": "passed",
            "strategy": "full",
            "reason": "release",
            "selected_tests": [],
            "change_fingerprint": "6a24778c0b490c89e12a9a8c0878e7900c9d5eac2c29746077ac699938af8b34",
            "plan_hash": "88e7851faaa617f7f2903d7b9a8cec8abbb937fdf2bc29493cd804f8feb23612",
            "impact_receipts": [],
            "receipts": [
              {
                "command": [
                  "npm",
                  "test"
                ],
                "exit_code": 0,
                "stdout": "\n> prd-plugin@0.16.55 test\n> python -m unittest discover -s tests -v\n\n{\n  \"status\": \"fail\",\n  \"repo_root\": \"C:\\\\Users\\\\marku\\\\AppData\\\\Local\\\\Temp\\\\tmpgseasq3g\",\n  \"summary\": {\n    \"errors\": 1,\n    \"warnings\": 0\n  },\n  \"findings\": [\n    {\n      \"check\": \"duplicate_id\",\n      \"severity\": \"error\",\n      \"summary\": \"Duplicate id REQ-002 in .prd_plugin/state/requests.json.\",\n      \"required_action\": \"Renumber one record so REQ-002 is unique. Allocate IDs with the MCP tool prd_next_id (or the record tools like prd_open_goal) instead of hand-computing them.\"\n    }\n  ]\n}\nautonomy_level set to guided\nautonomy_level set to autonomous\nDESTRUCTIVE RESET REQUESTED: --force --yes will erase protected PRD Plugin project data.\nThe following existing state/configuration files would be replaced with skeleton defaults:\n  - .prd_plugin/state/tracking.json\nThis may erase IDs, tracking, requests, decisions, health findings, configuration, and session memory.\nFor a normal safe update, remove --yes and run: npx prd-install . --force\nPRD Plugin safe update: preserving existing state/config and refreshing plugin files only. Never add --yes to a routine update; it requests a destructive reset.\nPRD Plugin safe update: preserving existing state/config and refreshing plugin files only. Never add --yes to a routine update; it requests a destructive reset.\nPRD Plugin safe update: preserving existing state/config and refreshing plugin files only. Never add --yes to a routine update; it requests a destructive reset.\nPRD Plugin safe update: preserving existing state/config and refreshing plugin files only. Never add --yes to a routine update; it requests a destructive reset.\nPRD Plugin safe update: preserving existing state/config and refreshing plugin files only. Never add --yes to a routine update; it requests a destructive reset.\nPRD Plugin safe update: preserving existing state/config and refreshing plugin files only. Never add --yes to a routine update; it requests a destructive reset.\nPRD Plugin safe update: preserving existing state/config and refreshing plugin files only. Never add --yes to a routine update; it requests a destructive reset.\nPRD Plugin safe update: preserving existing state/config and refreshing plugin files only. Never add --yes to a routine update; it requests a destructive reset.\nPRD Plugin safe update: preserving existing state/config and refreshing plugin files only. Never add --yes to a routine update; it requests a destructive reset.\nPRD Plugin safe update: preserving existing state/config and refreshing plugin files only. Never add --yes to a routine update; it requests a destructive reset.\nPRD Plugin safe update: preserving existing state/config and refreshing plugin files only. Never add --yes to a routine update; it requests a destructive reset.\nPRD Plugin safe update: preserving existing state/config and refreshing plugin files only. Never add --yes to a routine update; it requests a destructive reset.\nPRD Plugin safe update: preserving existing state/config and refreshing plugin files only. Never add --yes to a routine update; it requests a destructive reset.\nPRD Plugin safe update: preserving existing state/config and refreshing plugin files only. Never add --yes to a routine update; it requests a destructive reset.\nPRD Plugin safe update: preserving existing state/config and refreshing plugin files only. Never add --yes to a routine update; it requests a destructive reset.\nPRD Plugin safe update: preserving existing state/config and refreshing plugin files only. Never add --yes to a routine update; it requests a destructive reset.\nPRD Plugin safe update: preserving existing state/config and refreshing plugin files only. Never add --yes to a routine update; it requests a destructive reset.\n{\n  \"published\": false,\n  \"package\": \"prd-plugin\",\n  \"version\": \"9.9.9\",\n  \"version_seen\": null,\n  \"latest_seen\": null,\n  \"attempts_used\": 1\n}\n{\n  \"published\": true,\n  \"package\": \"prd-plugin\",\n  \"version\": \"1.2.3\",\n  \"version_seen\": \"1.2.3\",\n  \"latest_seen\": \"1.2.3\",\n  \"attempts_used\": 1\n}\n{\"decision\": \"block\", \"reason\": \"Autonomous run-until-done: goal TRK-160 is still active. Continue with the next incomplete step toward it \\u2014 do not stop to ask 'shall I proceed?'. If you genuinely need the user (consent floor: push/merge/publish/secrets, or a real blocker), create the file .prd_plugin/local/autonomy-pause with a one-line reason and then stop; the guard will let you. Otherwise keep going.\"}\n",
                "stderr": "lid_values) ... ok\ntest_enable_disable_only_accept_mutable_booleans (test_unified_config.MutationTests.test_enable_disable_only_accept_mutable_booleans) ... ok\ntest_failed_atomic_replace_leaves_original_config_untouched (test_unified_config.MutationTests.test_failed_atomic_replace_leaves_original_config_untouched) ... ok\ntest_malformed_config_is_never_replaced_by_a_mutation (test_unified_config.MutationTests.test_malformed_config_is_never_replaced_by_a_mutation) ... ok\ntest_manual_set_marks_profile_custom_and_preserves_style (test_unified_config.MutationTests.test_manual_set_marks_profile_custom_and_preserves_style) ... ok\ntest_scalar_parent_is_not_clobbered_by_nested_set (test_unified_config.MutationTests.test_scalar_parent_is_not_clobbered_by_nested_set) ... ok\ntest_builtin_profile_dry_run_then_atomic_apply (test_unified_config.ProfileTests.test_builtin_profile_dry_run_then_atomic_apply) ... ok\ntest_invalid_custom_profile_never_partially_writes (test_unified_config.ProfileTests.test_invalid_custom_profile_never_partially_writes) ... ok\ntest_save_show_diff_and_delete_custom_profile (test_unified_config.ProfileTests.test_save_show_diff_and_delete_custom_profile) ... ok\ntest_does_not_flag_canonical_prd_state_paths (test_unsubmitted_plugin_request.UnsubmittedPluginRequestTests.test_does_not_flag_canonical_prd_state_paths) ... ok\ntest_does_not_flag_ordinary_project_requests (test_unsubmitted_plugin_request.UnsubmittedPluginRequestTests.test_does_not_flag_ordinary_project_requests) ... ok\ntest_does_not_flag_rejected_requests (test_unsubmitted_plugin_request.UnsubmittedPluginRequestTests.test_does_not_flag_rejected_requests) ... ok\ntest_does_not_flag_when_already_marked_upstream (test_unsubmitted_plugin_request.UnsubmittedPluginRequestTests.test_does_not_flag_when_already_marked_upstream) ... ok\ntest_flags_a_local_request_about_a_plugin_script (test_unsubmitted_plugin_request.UnsubmittedPluginRequestTests.test_flags_a_local_request_about_a_plugin_script) ... ok\ntest_flags_a_request_that_names_itself_upstream (test_unsubmitted_plugin_request.UnsubmittedPluginRequestTests.test_flags_a_request_that_names_itself_upstream) ... ok\ntest_never_fires_in_the_hub_repo_itself (test_unsubmitted_plugin_request.UnsubmittedPluginRequestTests.test_never_fires_in_the_hub_repo_itself) ... ok\ntest_wired_into_run_checks (test_unsubmitted_plugin_request.UnsubmittedPluginRequestTests.test_wired_into_run_checks) ... ok\ntest_output_writes_lf_and_a_trailing_newline (test_utcp_first_authority.GeneratedArtifactsAreByteStableTests.test_output_writes_lf_and_a_trailing_newline) ... ok\ntest_the_committed_manual_matches_a_fresh_generation (test_utcp_first_authority.GeneratedArtifactsAreByteStableTests.test_the_committed_manual_matches_a_fresh_generation) ... ok\ntest_every_spec_tool_maps_to_a_catalog_capability (test_utcp_first_authority.ParityDirectionTests.test_every_spec_tool_maps_to_a_catalog_capability) ... ok\ntest_server_metadata_matches_the_spec (test_utcp_first_authority.ParityDirectionTests.test_server_metadata_matches_the_spec) ... ok\ntest_python_entry_points_share_the_same_lock (test_utcp_first_authority.SafetyUnchangedTests.test_python_entry_points_share_the_same_lock)\nThe migration target already exists and is proven: prd_reflections ... ok\ntest_the_state_lock_is_still_held_for_mutations (test_utcp_first_authority.SafetyUnchangedTests.test_the_state_lock_is_still_held_for_mutations) ... ok\ntest_no_shipped_tool_metadata_carries_mojibake (test_utcp_first_authority.ShippedTextIsCleanTests.test_no_shipped_tool_metadata_carries_mojibake) ... ok\ntest_shipped_tool_metadata_is_valid_utf8 (test_utcp_first_authority.ShippedTextIsCleanTests.test_shipped_tool_metadata_is_valid_utf8)\nA file written through a cp1252 layer either fails to decode or ... ok\ntest_each_tool_declares_name_description_and_schema (test_utcp_first_authority.SpecIsTheSourceTests.test_each_tool_declares_name_description_and_schema) ... ok\ntest_the_manual_is_generated_from_the_spec_not_the_server (test_utcp_first_authority.SpecIsTheSourceTests.test_the_manual_is_generated_from_the_spec_not_the_server) ... ok\ntest_the_server_no_longer_authors_descriptions (test_utcp_first_authority.SpecIsTheSourceTests.test_the_server_no_longer_authors_descriptions)\nserver.cjs must READ definitions, not declare them. While a tool ... ok\ntest_the_spec_exists_and_declares_every_tool (test_utcp_first_authority.SpecIsTheSourceTests.test_the_spec_exists_and_declares_every_tool) ... ok\ntest_official_bridge_round_trips_cli_and_mcp_templates (test_utcp_first_catalog.BridgeParityTests.test_official_bridge_round_trips_cli_and_mcp_templates) ... skipped 'official @utcp/mcp-bridge not installed (npm install)'\ntest_bridged_entries_reuse_server_metadata_verbatim (test_utcp_first_catalog.GeneratedProjectionTests.test_bridged_entries_reuse_server_metadata_verbatim)\nEach bridged manual entry's description and inputs equal the server's ... ok\ntest_checked_in_metadata_matches_live_server (test_utcp_first_catalog.GeneratedProjectionTests.test_checked_in_metadata_matches_live_server)\nThe pinned metadata projection cannot drift behind the live server. ... ok\ntest_mutations_keep_the_validated_handler_path (test_utcp_first_catalog.GuardedMutationTests.test_mutations_keep_the_validated_handler_path)\nEvery manual tool in a non-read capability calls the plugin state ... ok\ntest_read_only_cli_tools_stay_cli (test_utcp_first_catalog.GuardedMutationTests.test_read_only_cli_tools_stay_cli)\nThe 12 cli-native observe/recall tools keep their cli templates. ... ok\ntest_checked_in_metadata_projection_exists (test_utcp_first_catalog.ManualCompletenessTests.test_checked_in_metadata_projection_exists)\nThe server's tool metadata is a checked-in generated artifact so the ... ok\ntest_manual_covers_every_capability_on_both_transports (test_utcp_first_catalog.ManualCompletenessTests.test_manual_covers_every_capability_on_both_transports)\nEvery UTCP and MCP registration in the tool-surface catalog appears ... ok\ntest_appends_version_change_request (test_version_advice.VersionAdviceTests.test_appends_version_change_request) ... ok\ntest_builds_safe_update_advice_for_low_risk_releases (test_version_advice.VersionAdviceTests.test_builds_safe_update_advice_for_low_risk_releases) ... ok\ntest_cli_uses_hub_releases_when_downstream_repo_has_no_releases_file (test_version_advice.VersionAdviceTests.test_cli_uses_hub_releases_when_downstream_repo_has_no_releases_file) ... ok\ntest_detects_installed_version_from_bom_json (test_version_advice.VersionAdviceTests.test_detects_installed_version_from_bom_json) ... ok\ntest_detects_installed_version_from_opencode_plugin_manifest (test_version_advice.VersionAdviceTests.test_detects_installed_version_from_opencode_plugin_manifest) ... ok\ntest_detects_installed_version_from_prd_plugin_config (test_version_advice.VersionAdviceTests.test_detects_installed_version_from_prd_plugin_config) ... ok\ntest_detects_latest_version_from_plugin_manifest (test_version_advice.VersionAdviceTests.test_detects_latest_version_from_plugin_manifest) ... ok\ntest_installed_version_priority_prefers_config_then_codex_then_opencode (test_version_advice.VersionAdviceTests.test_installed_version_priority_prefers_config_then_codex_then_opencode) ... ok\ntest_orders_prerelease_before_final_release (test_version_advice.VersionAdviceTests.test_orders_prerelease_before_final_release) ... ok\ntest_recommends_review_first_for_medium_or_high_risk_release (test_version_advice.VersionAdviceTests.test_recommends_review_first_for_medium_or_high_risk_release) ... ok\ntest_disabled_returns_disabled_and_no_fetch (test_version_check.CheckTests.test_disabled_returns_disabled_and_no_fetch) ... ok\ntest_force_refetches_within_ttl (test_version_check.CheckTests.test_force_refetches_within_ttl) ... ok\ntest_network_failure_is_fail_open (test_version_check.CheckTests.test_network_failure_is_fail_open) ... ok\ntest_no_update_when_current (test_version_check.CheckTests.test_no_update_when_current) ... ok\ntest_status_is_cache_only_no_fetch (test_version_check.CheckTests.test_status_is_cache_only_no_fetch) ... ok\ntest_ttl_cache_avoids_refetch (test_version_check.CheckTests.test_ttl_cache_avoids_refetch) ... ok\ntest_ttl_expiry_refetches (test_version_check.CheckTests.test_ttl_expiry_refetches) ... ok\ntest_update_available_when_npm_is_ahead (test_version_check.CheckTests.test_update_available_when_npm_is_ahead) ... ok\ntest_status_cli_exits_zero (test_version_check.CliTests.test_status_cli_exits_zero) ... ok\ntest_default_ttl_is_responsive_not_a_day (test_version_check.FreshnessTests.test_default_ttl_is_responsive_not_a_day) ... ok\ntest_fetch_latest_accepts_a_timeout (test_version_check.FreshnessTests.test_fetch_latest_accepts_a_timeout) ... ok\ntest_nudge_refreshes_in_session_not_cache_only (test_version_check.FreshnessTests.test_nudge_refreshes_in_session_not_cache_only) ... ok\ntest_registry_default_ttl_matches (test_version_check.FreshnessTests.test_registry_default_ttl_matches) ... ok\ntest_semver_ordering (test_version_check.ParseTests.test_semver_ordering) ... ok\ntest_set_enabled_writes_config (test_version_check.ToggleTests.test_set_enabled_writes_config) ... ok\ntest_config_has_version_check_default_on (test_version_check.WiringTests.test_config_has_version_check_default_on) ... ok\ntest_nudge_surfaces_update_available (test_version_check.WiringTests.test_nudge_surfaces_update_available) ... ok\ntest_prd_version_command_exists (test_version_check.WiringTests.test_prd_version_command_exists) ... ok\ntest_script_registered_downstream (test_version_check.WiringTests.test_script_registered_downstream) ... ok\ntest_plan_cli_emits_json (test_wiki_backfill.CliTests.test_plan_cli_emits_json) ... ok\ntest_status_cli (test_wiki_backfill.CliTests.test_status_cli) ... ok\ntest_marker_written_for_established_repo_gaining_wiki (test_wiki_backfill.InstallerMarkerTests.test_marker_written_for_established_repo_gaining_wiki) ... ok\ntest_no_marker_for_empty_scaffold (test_wiki_backfill.InstallerMarkerTests.test_no_marker_for_empty_scaffold) ... ok\ntest_no_marker_when_wiki_already_exists (test_wiki_backfill.InstallerMarkerTests.test_no_marker_when_wiki_already_exists) ... ok\ntest_no_marker_when_wiki_disabled (test_wiki_backfill.InstallerMarkerTests.test_no_marker_when_wiki_disabled) ... ok\ntest_pending_false_when_absent (test_wiki_backfill.StatusTests.test_pending_false_when_absent) ... ok\ntest_pending_false_when_wiki_already_exists (test_wiki_backfill.StatusTests.test_pending_false_when_wiki_already_exists) ... ok\ntest_pending_true_when_marker_present (test_wiki_backfill.StatusTests.test_pending_true_when_marker_present) ... ok\ntest_plan_excludes_generated_report_artifacts (test_wiki_backfill.SurveyPlanTests.test_plan_excludes_generated_report_artifacts)\nrequest-report/ (incl. its calibration report trees) and docs/evidence/ ... ok\ntest_plan_excludes_plugin_and_vendor_noise (test_wiki_backfill.SurveyPlanTests.test_plan_excludes_plugin_and_vendor_noise) ... ok\ntest_plan_inventories_code_docs_and_state (test_wiki_backfill.SurveyPlanTests.test_plan_inventories_code_docs_and_state) ... ok\ntest_plan_is_read_only (test_wiki_backfill.SurveyPlanTests.test_plan_is_read_only) ... ok\ntest_wiki_drift_in_on_stop_and_default_sets (test_wiki_backfill.WikiDriftMonitorWiringTests.test_wiki_drift_in_on_stop_and_default_sets) ... ok\ntest_current_article_no_drift (test_wiki_backfill.WikiDriftTests.test_current_article_no_drift) ... ok\ntest_drift_cli (test_wiki_backfill.WikiDriftTests.test_drift_cli) ... ok\ntest_far_behind_article_flagged (test_wiki_backfill.WikiDriftTests.test_far_behind_article_flagged) ... ok\ntest_no_wiki_is_ok (test_wiki_backfill.WikiDriftTests.test_no_wiki_is_ok) ... ok\ntest_unlinked_markdown_reference_is_part_of_wiki_drift (test_wiki_backfill.WikiDriftTests.test_unlinked_markdown_reference_is_part_of_wiki_drift) ... ok\ntest_unstamped_article_flagged (test_wiki_backfill.WikiDriftTests.test_unstamped_article_flagged) ... ok\ntest_wiki_drift_uses_configured_wiki_directory (test_wiki_backfill.WikiDriftTests.test_wiki_drift_uses_configured_wiki_directory) ... ok\ntest_ambiguous_reference_is_reported_but_never_guessed (test_wiki_backfill.WikiInlineMarkdownLinkTests.test_ambiguous_reference_is_reported_but_never_guessed) ... ok\ntest_cli_check_fails_and_fix_then_passes (test_wiki_backfill.WikiInlineMarkdownLinkTests.test_cli_check_fails_and_fix_then_passes) ... ok\ntest_existing_inline_links_and_fenced_examples_are_not_findings (test_wiki_backfill.WikiInlineMarkdownLinkTests.test_existing_inline_links_and_fenced_examples_are_not_findings) ... ok\ntest_fix_rewrites_only_unambiguous_references_to_relative_inline_links (test_wiki_backfill.WikiInlineMarkdownLinkTests.test_fix_rewrites_only_unambiguous_references_to_relative_inline_links) ... ok\ntest_reports_resolvable_bare_and_code_wrapped_markdown_references (test_wiki_backfill.WikiInlineMarkdownLinkTests.test_reports_resolvable_bare_and_code_wrapped_markdown_references) ... ok\ntest_nudge_surfaces_pending_backfill (test_wiki_backfill.WiringTests.test_nudge_surfaces_pending_backfill) ... ok\ntest_script_registered_downstream (test_wiki_backfill.WiringTests.test_script_registered_downstream) ... ok\ntest_skill_has_backfill_mode (test_wiki_backfill.WiringTests.test_skill_has_backfill_mode) ... ok\ntest_copy_and_download_controls_are_wired (test_wiki_html_export.WikiHtmlExportTests.test_copy_and_download_controls_are_wired) ... ok\ntest_default_output_lands_in_the_local_runtime_dir (test_wiki_html_export.WikiHtmlExportTests.test_default_output_lands_in_the_local_runtime_dir) ... ok\ntest_every_page_is_embedded_with_exact_markdown (test_wiki_html_export.WikiHtmlExportTests.test_every_page_is_embedded_with_exact_markdown) ... ok\ntest_export_all_generates_viewers_and_super_index (test_wiki_html_export.WikiHtmlExportTests.test_export_all_generates_viewers_and_super_index) ... ok\ntest_export_is_one_self_contained_offline_file (test_wiki_html_export.WikiHtmlExportTests.test_export_is_one_self_contained_offline_file) ... ok\ntest_guest_repo_viewer_is_hosted_by_the_host_repo (test_wiki_html_export.WikiHtmlExportTests.test_guest_repo_viewer_is_hosted_by_the_host_repo)\nA repo without .prd_plugin gets NO new files in its own tree; its ... ok\ntest_hub_repo_exports_all_pages (test_wiki_html_export.WikiHtmlExportTests.test_hub_repo_exports_all_pages) ... ok\ntest_parse_wiki_log_extracts_dated_entries_with_bodies (test_wiki_html_export.WikiHtmlExportTests.test_parse_wiki_log_extracts_dated_entries_with_bodies)\nREQ-112: every workspace log follows '## [date] mode | text'. ... ok\ntest_parse_wiki_log_tolerates_missing_log (test_wiki_html_export.WikiHtmlExportTests.test_parse_wiki_log_tolerates_missing_log) ... ok\ntest_script_content_cannot_break_the_payload (test_wiki_html_export.WikiHtmlExportTests.test_script_content_cannot_break_the_payload) ... ok\ntest_super_index_has_a_combined_changelog (test_wiki_html_export.WikiHtmlExportTests.test_super_index_has_a_combined_changelog) ... ok\ntest_super_index_reports_page_counts (test_wiki_html_export.WikiHtmlExportTests.test_super_index_reports_page_counts) ... ok\ntest_workspace_discovery_uses_the_wiki_convention_marker (test_wiki_html_export.WikiHtmlExportTests.test_workspace_discovery_uses_the_wiki_convention_marker)\nREQ-110 + REQ-111: any immediate child whose wiki follows the ... ok\ntest_a_repo_without_a_wiki_is_not_in_drift (test_wiki_ingest_drift.DetectionTests.test_a_repo_without_a_wiki_is_not_in_drift)\nNo wiki is a legitimate state, not a failure to ingest. ... ok\ntest_fully_ingested_repo_is_clean (test_wiki_ingest_drift.DetectionTests.test_fully_ingested_repo_is_clean) ... ok\ntest_malformed_state_degrades_rather_than_raising (test_wiki_ingest_drift.DetectionTests.test_malformed_state_degrades_rather_than_raising) ... ok\ntest_non_implemented_requests_are_never_expected_in_the_log (test_wiki_ingest_drift.DetectionTests.test_non_implemented_requests_are_never_expected_in_the_log) ... ok\ntest_only_work_since_the_last_ingest_is_actionable (test_wiki_ingest_drift.DetectionTests.test_only_work_since_the_last_ingest_is_actionable)\nRaw counting flags pre-wiki history as drift � ~70 items in the hub, ... ok\ntest_reports_implemented_requests_absent_from_the_log (test_wiki_ingest_drift.DetectionTests.test_reports_implemented_requests_absent_from_the_log) ... ok\ntest_it_runs_against_this_repo_and_returns_a_usable_report (test_wiki_ingest_drift.RealRepoTests.test_it_runs_against_this_repo_and_returns_a_usable_report)\nGrounded against real state, but NOT pinned to a specific gap: a test ... ok\ntest_prd_status_omits_it_when_clean (test_wiki_ingest_drift.SurfaceTests.test_prd_status_omits_it_when_clean) ... ok\ntest_prd_status_reports_the_drift (test_wiki_ingest_drift.SurfaceTests.test_prd_status_reports_the_drift) ... ok\ntest_this_repos_wiki_reads_byte_exact (test_wiki_page_contract.HubRepoSmokeTests.test_this_repos_wiki_reads_byte_exact) ... ok\ntest_list_enumerates_canonical_pages_with_titles (test_wiki_page_contract.WikiPageListTests.test_list_enumerates_canonical_pages_with_titles) ... ok\ntest_boundaries_are_hard (test_wiki_page_contract.WikiPageReadTests.test_boundaries_are_hard) ... ok\ntest_drift_remains_the_default_action (test_wiki_page_contract.WikiPageReadTests.test_drift_remains_the_default_action) ... ok\ntest_read_page_without_stamps_reports_null_provenance (test_wiki_page_contract.WikiPageReadTests.test_read_page_without_stamps_reports_null_provenance) ... ok\ntest_read_requires_a_path (test_wiki_page_contract.WikiPageReadTests.test_read_requires_a_path) ... ok\ntest_read_returns_exact_markdown_with_provenance (test_wiki_page_contract.WikiPageReadTests.test_read_returns_exact_markdown_with_provenance) ... ok\ntest_no_cp1252_unencodable_chars_in_agent_facing_tools (test_windows_console_safe.SourceScanTests.test_no_cp1252_unencodable_chars_in_agent_facing_tools) ... ok\ntest_backfill_pending_status_renders_cp1252_safe (test_windows_console_safe.StatusRenderTests.test_backfill_pending_status_renders_cp1252_safe) ... ok\ntest_json_output_escapes_non_console_characters (test_windows_console_safe.WorkflowCliRenderTests.test_json_output_escapes_non_console_characters) ... ok\ntest_repository_workflow_surfaces_are_chml_zero (test_workflow_chml_audit.WorkflowChmlAuditTests.test_repository_workflow_surfaces_are_chml_zero) ... ok\ntest_semantic_skill_finding_is_part_of_workflow_chml (test_workflow_chml_audit.WorkflowChmlAuditTests.test_semantic_skill_finding_is_part_of_workflow_chml) ... ok\ntest_git_workflow_pushes_clean_verified_commits_in_autonomous (test_workflow_consistency.AutonomyConflictResolutionTests.test_git_workflow_pushes_clean_verified_commits_in_autonomous) ... ok\ntest_request_intake_defers_autonomy_and_owns_graduation (test_workflow_consistency.AutonomyConflictResolutionTests.test_request_intake_defers_autonomy_and_owns_graduation) ... ok\ntest_evidence_pair_states_create_vs_review_boundary (test_workflow_consistency.BoundaryClarityTests.test_evidence_pair_states_create_vs_review_boundary) ... ok\ntest_session_close_states_memory_boundary (test_workflow_consistency.BoundaryClarityTests.test_session_close_states_memory_boundary) ... ok\ntest_document_branch_has_promotion_owner (test_workflow_consistency.DeadEndOwnerTests.test_document_branch_has_promotion_owner) ... ok\ntest_health_findings_have_triage_dispositions (test_workflow_consistency.DeadEndOwnerTests.test_health_findings_have_triage_dispositions) ... ok\ntest_memory_owns_schema_version_changes (test_workflow_consistency.DeadEndOwnerTests.test_memory_owns_schema_version_changes) ... ok\ntest_planning_lifecycle_has_stage_readiness_checkpoints (test_workflow_consistency.DeadEndOwnerTests.test_planning_lifecycle_has_stage_readiness_checkpoints) ... ok\ntest_session_close_runs_traceability_sync (test_workflow_consistency.DeadEndOwnerTests.test_session_close_runs_traceability_sync) ... ok\n\n----------------------------------------------------------------------\nRan 1262 tests in 110.278s\n\nOK (skipped=1)\n",
                "receipt_hash": "ec6b5b0e2607aab058d3d4745c362ffca8d92926e88a8cdadf069993ef9afc23"
              }
            ],
            "execution_hash": "a48400f86fd49ab6974eddf2ef27167d6e0579110485c5426dfd4ec2afacfa9a"
          },
          "output_hash": "03b280d90fcbb3d1fdeca76fe0024acfa06f9a53f6006fe4bafe1b80324c32b7",
          "completed_at": "2026-07-25T00:46:20Z"
        },
        {
          "id": "diff",
          "action": "git.diff_check",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-25T00:46:20Z",
          "output": {
            "passed": true
          },
          "output_hash": "11c11db30f4b3f6c758722ba3e27eea08145b7d212f6a157451e364b48475280",
          "completed_at": "2026-07-25T00:46:21Z"
        },
        {
          "id": "state",
          "action": "state.consistency",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-25T00:46:21Z",
          "output": {
            "status": "ok",
            "repo_root": "D:\\Projects\\prd-plugin-worktrees\\codex-reasoning-summary-session-fallback",
            "summary": {
              "errors": 0,
              "warnings": 0,
              "infos": 1
            },
            "findings": [
              {
                "id": "CONS-INFO-001",
                "severity": "info",
                "path": "docs/evidence/EV-200.md",
                "summary": "File references 2 canonical IDs across 2 prefix(es); treated as a positive signal of extra work.",
                "referenced_prefixes": [
                  "CHG",
                  "TRK"
                ],
                "referenced_id_count": 2,
                "required_action": "No action required; this is an informational signal."
              }
            ]
          },
          "output_hash": "7bd004636e5a786f64604d8cc821f23845cc7f69b783a6392c588759f368f587",
          "completed_at": "2026-07-25T00:46:21Z"
        },
        {
          "id": "gate",
          "action": "state.gate",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-25T00:46:21Z",
          "output": {
            "status": "attention",
            "repo_root": "D:\\Projects\\prd-plugin-worktrees\\codex-reasoning-summary-session-fallback",
            "summary": {
              "errors": 0,
              "warnings": 0
            },
            "findings": [
              {
                "check": "state_consistency",
                "severity": "info",
                "summary": "File references 2 canonical IDs across 2 prefix(es); treated as a positive signal of extra work.",
                "required_action": "No action required; this is an informational signal."
              }
            ]
          },
          "output_hash": "af95f5508bef069fc3c46ffe3a052eeba9fa5c6bfadc00da8d536a21484deebe",
          "completed_at": "2026-07-25T00:46:21Z"
        }
      ],
      "completed_at": "2026-07-25T00:46:22Z"
    },
    {
      "id": "WFR-416",
      "schema_version": "1.0",
      "workflow_id": "engineering.verify",
      "workflow_version": 1,
      "definition_hash": "82a795fafbc550f124ec781ea9c5b6170d95b5e687fffadf6939f1f160df5ce1",
      "plan_hash": "d2a2b287b65f06caa178fb87bc75fc76440f7c2de01040453305e8ce3ed5acba",
      "input_hash": "e31eefe8d7d1d92d29ffe0f0853ec3b42e4677f5ffd7193b81c4a2891f0b338e",
      "inputs": {
        "base_ref": "origin/main",
        "release": true
      },
      "idempotency_key": "req-172-codex-session-fallback-verify-v2",
      "status": "completed",
      "attempt": 1,
      "created_at": "2026-07-25T00:44:50Z",
      "updated_at": "2026-07-25T00:46:40Z",
      "receipts": [
        {
          "step_id": "plan",
          "action": "verification.plan",
          "input_hash": "e31eefe8d7d1d92d29ffe0f0853ec3b42e4677f5ffd7193b81c4a2891f0b338e",
          "output_hash": "f6bf610cffc3e59a0ad903abeda30af906d82f3384768d787e5de531d4703f91",
          "completed_at": "2026-07-25T00:44:51Z"
        },
        {
          "step_id": "execute",
          "action": "verification.execute",
          "input_hash": "579e5540b17e22e10cd3dc6f75b8505f7e8e9459030327fe2873b9468edd0360",
          "output_hash": "9f45d9b825aa70b0b22645fb4b463404bc96dfb7d46c9186a61b3b0b05e93054",
          "completed_at": "2026-07-25T00:46:39Z"
        },
        {
          "step_id": "diff",
          "action": "git.diff_check",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "11c11db30f4b3f6c758722ba3e27eea08145b7d212f6a157451e364b48475280",
          "completed_at": "2026-07-25T00:46:39Z"
        },
        {
          "step_id": "state",
          "action": "state.consistency",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "7bd004636e5a786f64604d8cc821f23845cc7f69b783a6392c588759f368f587",
          "completed_at": "2026-07-25T00:46:39Z"
        },
        {
          "step_id": "gate",
          "action": "state.gate",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "af95f5508bef069fc3c46ffe3a052eeba9fa5c6bfadc00da8d536a21484deebe",
          "completed_at": "2026-07-25T00:46:40Z"
        }
      ],
      "steps": [
        {
          "id": "plan",
          "action": "verification.plan",
          "status": "completed",
          "resolved_input_hash": "e31eefe8d7d1d92d29ffe0f0853ec3b42e4677f5ffd7193b81c4a2891f0b338e",
          "started_at": "2026-07-25T00:44:50Z",
          "output": {
            "schema_version": "1.0",
            "contract_version": 1,
            "executor": "ai-collab",
            "changed_files": [
              ".claude-plugin/marketplace.json",
              ".claude-plugin/plugin.json",
              ".codex-plugin/plugin.json",
              ".opencode/plugin.json",
              ".prd_plugin/config.json",
              ".prd_plugin/hooks/prd_reason_guard.py",
              ".prd_plugin/ids/registry.json",
              ".prd_plugin/state/project.json",
              ".prd_plugin/state/releases.json",
              ".prd_plugin/state/requests.json",
              ".prd_plugin/state/tracking.json",
              ".prd_plugin/state/workflow-runs.json",
              "docs/REASONING-GUARD.md",
              "index.js",
              "mcp/server.cjs",
              "package.json",
              "raw/hooks/2026-07-25-codex-null-transcript-session-fallback.md",
              "skills-manifest.json",
              "templates/config.json",
              "templates/project.json",
              "templates/releases.json",
              "templates/repo-skeleton/.claude-plugin/plugin.json",
              "templates/repo-skeleton/.codex-plugin/plugin.json",
              "templates/repo-skeleton/.opencode/plugin.json",
              "templates/repo-skeleton/.prd_plugin/config.json",
              "templates/repo-skeleton/.prd_plugin/hooks/prd_reason_guard.py",
              "templates/repo-skeleton/.prd_plugin/state/project.json",
              "templates/repo-skeleton/.prd_plugin/templates/config.json",
              "templates/repo-skeleton/.prd_plugin/templates/project.json",
              "tests/test_reason_guard.py",
              "wiki/hooks/reasoning-guard.md",
              "wiki/index.md",
              "wiki/log.md"
            ],
            "change_fingerprint": "6a24778c0b490c89e12a9a8c0878e7900c9d5eac2c29746077ac699938af8b34",
            "policy": {
              "enabled": true,
              "executor": "ai-collab",
              "neighbor_limit": 12,
              "max_changed_files": 25,
              "fallback": "full",
              "full_suite_triggers": [
                "release",
                "core_change",
                "impact_unavailable",
                "impact_degraded",
                "unmapped_change"
              ],
              "core_paths": [
                "package.json",
                "package-lock.json",
                "pyproject.toml",
                "Cargo.toml",
                "go.mod",
                ".github/workflows/**"
              ],
              "test_patterns": [
                "tests/**",
                "test/**",
                "spec/**",
                "**/*.test.*",
                "**/*.spec.*",
                "test_*.py",
                "*_test.py",
                "*_test.go",
                "**/test_*.py",
                "**/*_test.py",
                "**/*_test.go"
              ],
              "max_selected_tests": 200,
              "execution_timeout_seconds": 600,
              "focused_commands": [],
              "full_commands": [],
              "allowed_executables": [
                "python",
                "python3",
                "py",
                "pytest",
                "npm",
                "npx",
                "node",
                "go",
                "cargo",
                "dotnet",
                "mvn",
                "gradle",
                "gradlew",
                "make"
              ]
            },
            "selection_rules": {
              "precedence": [
                "exact_changed",
                "explicit_test_ownership",
                "structural_dependencies",
                "predictive_impact"
              ],
              "require_all_changed_files_mapped": true,
              "widen_before_full": true,
              "predictive_signal_is_sufficient_alone": false
            },
            "fallback": {
              "strategy": "full",
              "conditions": [
                "release",
                "core_change",
                "impact_unavailable",
                "impact_degraded",
                "unmapped_change"
              ]
            },
            "strategy": "full",
            "reason": "release",
            "runtime_requests": {},
            "plan_hash": "88e7851faaa617f7f2903d7b9a8cec8abbb937fdf2bc29493cd804f8feb23612"
          },
          "output_hash": "f6bf610cffc3e59a0ad903abeda30af906d82f3384768d787e5de531d4703f91",
          "completed_at": "2026-07-25T00:44:51Z"
        },
        {
          "id": "execute",
          "action": "verification.execute",
          "status": "completed",
          "resolved_input_hash": "579e5540b17e22e10cd3dc6f75b8505f7e8e9459030327fe2873b9468edd0360",
          "started_at": "2026-07-25T00:44:51Z",
          "output": {
            "status": "passed",
            "strategy": "full",
            "reason": "release",
            "selected_tests": [],
            "change_fingerprint": "6a24778c0b490c89e12a9a8c0878e7900c9d5eac2c29746077ac699938af8b34",
            "plan_hash": "88e7851faaa617f7f2903d7b9a8cec8abbb937fdf2bc29493cd804f8feb23612",
            "impact_receipts": [],
            "receipts": [
              {
                "command": [
                  "npm",
                  "test"
                ],
                "exit_code": 0,
                "stdout": "\n> prd-plugin@0.16.55 test\n> python -m unittest discover -s tests -v\n\n{\n  \"status\": \"fail\",\n  \"repo_root\": \"C:\\\\Users\\\\marku\\\\AppData\\\\Local\\\\Temp\\\\tmp2f94lr8z\",\n  \"summary\": {\n    \"errors\": 1,\n    \"warnings\": 0\n  },\n  \"findings\": [\n    {\n      \"check\": \"duplicate_id\",\n      \"severity\": \"error\",\n      \"summary\": \"Duplicate id REQ-002 in .prd_plugin/state/requests.json.\",\n      \"required_action\": \"Renumber one record so REQ-002 is unique. Allocate IDs with the MCP tool prd_next_id (or the record tools like prd_open_goal) instead of hand-computing them.\"\n    }\n  ]\n}\nautonomy_level set to guided\nautonomy_level set to autonomous\nDESTRUCTIVE RESET REQUESTED: --force --yes will erase protected PRD Plugin project data.\nThe following existing state/configuration files would be replaced with skeleton defaults:\n  - .prd_plugin/state/tracking.json\nThis may erase IDs, tracking, requests, decisions, health findings, configuration, and session memory.\nFor a normal safe update, remove --yes and run: npx prd-install . --force\nPRD Plugin safe update: preserving existing state/config and refreshing plugin files only. Never add --yes to a routine update; it requests a destructive reset.\nPRD Plugin safe update: preserving existing state/config and refreshing plugin files only. Never add --yes to a routine update; it requests a destructive reset.\nPRD Plugin safe update: preserving existing state/config and refreshing plugin files only. Never add --yes to a routine update; it requests a destructive reset.\nPRD Plugin safe update: preserving existing state/config and refreshing plugin files only. Never add --yes to a routine update; it requests a destructive reset.\nPRD Plugin safe update: preserving existing state/config and refreshing plugin files only. Never add --yes to a routine update; it requests a destructive reset.\nPRD Plugin safe update: preserving existing state/config and refreshing plugin files only. Never add --yes to a routine update; it requests a destructive reset.\nPRD Plugin safe update: preserving existing state/config and refreshing plugin files only. Never add --yes to a routine update; it requests a destructive reset.\nPRD Plugin safe update: preserving existing state/config and refreshing plugin files only. Never add --yes to a routine update; it requests a destructive reset.\nPRD Plugin safe update: preserving existing state/config and refreshing plugin files only. Never add --yes to a routine update; it requests a destructive reset.\nPRD Plugin safe update: preserving existing state/config and refreshing plugin files only. Never add --yes to a routine update; it requests a destructive reset.\nPRD Plugin safe update: preserving existing state/config and refreshing plugin files only. Never add --yes to a routine update; it requests a destructive reset.\nPRD Plugin safe update: preserving existing state/config and refreshing plugin files only. Never add --yes to a routine update; it requests a destructive reset.\nPRD Plugin safe update: preserving existing state/config and refreshing plugin files only. Never add --yes to a routine update; it requests a destructive reset.\nPRD Plugin safe update: preserving existing state/config and refreshing plugin files only. Never add --yes to a routine update; it requests a destructive reset.\nPRD Plugin safe update: preserving existing state/config and refreshing plugin files only. Never add --yes to a routine update; it requests a destructive reset.\nPRD Plugin safe update: preserving existing state/config and refreshing plugin files only. Never add --yes to a routine update; it requests a destructive reset.\nPRD Plugin safe update: preserving existing state/config and refreshing plugin files only. Never add --yes to a routine update; it requests a destructive reset.\n{\n  \"published\": false,\n  \"package\": \"prd-plugin\",\n  \"version\": \"9.9.9\",\n  \"version_seen\": null,\n  \"latest_seen\": null,\n  \"attempts_used\": 1\n}\n{\n  \"published\": true,\n  \"package\": \"prd-plugin\",\n  \"version\": \"1.2.3\",\n  \"version_seen\": \"1.2.3\",\n  \"latest_seen\": \"1.2.3\",\n  \"attempts_used\": 1\n}\n{\"decision\": \"block\", \"reason\": \"Autonomous run-until-done: goal TRK-160 is still active. Continue with the next incomplete step toward it \\u2014 do not stop to ask 'shall I proceed?'. If you genuinely need the user (consent floor: push/merge/publish/secrets, or a real blocker), create the file .prd_plugin/local/autonomy-pause with a one-line reason and then stop; the guard will let you. Otherwise keep going.\"}\n",
                "stderr": "lid_values) ... ok\ntest_enable_disable_only_accept_mutable_booleans (test_unified_config.MutationTests.test_enable_disable_only_accept_mutable_booleans) ... ok\ntest_failed_atomic_replace_leaves_original_config_untouched (test_unified_config.MutationTests.test_failed_atomic_replace_leaves_original_config_untouched) ... ok\ntest_malformed_config_is_never_replaced_by_a_mutation (test_unified_config.MutationTests.test_malformed_config_is_never_replaced_by_a_mutation) ... ok\ntest_manual_set_marks_profile_custom_and_preserves_style (test_unified_config.MutationTests.test_manual_set_marks_profile_custom_and_preserves_style) ... ok\ntest_scalar_parent_is_not_clobbered_by_nested_set (test_unified_config.MutationTests.test_scalar_parent_is_not_clobbered_by_nested_set) ... ok\ntest_builtin_profile_dry_run_then_atomic_apply (test_unified_config.ProfileTests.test_builtin_profile_dry_run_then_atomic_apply) ... ok\ntest_invalid_custom_profile_never_partially_writes (test_unified_config.ProfileTests.test_invalid_custom_profile_never_partially_writes) ... ok\ntest_save_show_diff_and_delete_custom_profile (test_unified_config.ProfileTests.test_save_show_diff_and_delete_custom_profile) ... ok\ntest_does_not_flag_canonical_prd_state_paths (test_unsubmitted_plugin_request.UnsubmittedPluginRequestTests.test_does_not_flag_canonical_prd_state_paths) ... ok\ntest_does_not_flag_ordinary_project_requests (test_unsubmitted_plugin_request.UnsubmittedPluginRequestTests.test_does_not_flag_ordinary_project_requests) ... ok\ntest_does_not_flag_rejected_requests (test_unsubmitted_plugin_request.UnsubmittedPluginRequestTests.test_does_not_flag_rejected_requests) ... ok\ntest_does_not_flag_when_already_marked_upstream (test_unsubmitted_plugin_request.UnsubmittedPluginRequestTests.test_does_not_flag_when_already_marked_upstream) ... ok\ntest_flags_a_local_request_about_a_plugin_script (test_unsubmitted_plugin_request.UnsubmittedPluginRequestTests.test_flags_a_local_request_about_a_plugin_script) ... ok\ntest_flags_a_request_that_names_itself_upstream (test_unsubmitted_plugin_request.UnsubmittedPluginRequestTests.test_flags_a_request_that_names_itself_upstream) ... ok\ntest_never_fires_in_the_hub_repo_itself (test_unsubmitted_plugin_request.UnsubmittedPluginRequestTests.test_never_fires_in_the_hub_repo_itself) ... ok\ntest_wired_into_run_checks (test_unsubmitted_plugin_request.UnsubmittedPluginRequestTests.test_wired_into_run_checks) ... ok\ntest_output_writes_lf_and_a_trailing_newline (test_utcp_first_authority.GeneratedArtifactsAreByteStableTests.test_output_writes_lf_and_a_trailing_newline) ... ok\ntest_the_committed_manual_matches_a_fresh_generation (test_utcp_first_authority.GeneratedArtifactsAreByteStableTests.test_the_committed_manual_matches_a_fresh_generation) ... ok\ntest_every_spec_tool_maps_to_a_catalog_capability (test_utcp_first_authority.ParityDirectionTests.test_every_spec_tool_maps_to_a_catalog_capability) ... ok\ntest_server_metadata_matches_the_spec (test_utcp_first_authority.ParityDirectionTests.test_server_metadata_matches_the_spec) ... ok\ntest_python_entry_points_share_the_same_lock (test_utcp_first_authority.SafetyUnchangedTests.test_python_entry_points_share_the_same_lock)\nThe migration target already exists and is proven: prd_reflections ... ok\ntest_the_state_lock_is_still_held_for_mutations (test_utcp_first_authority.SafetyUnchangedTests.test_the_state_lock_is_still_held_for_mutations) ... ok\ntest_no_shipped_tool_metadata_carries_mojibake (test_utcp_first_authority.ShippedTextIsCleanTests.test_no_shipped_tool_metadata_carries_mojibake) ... ok\ntest_shipped_tool_metadata_is_valid_utf8 (test_utcp_first_authority.ShippedTextIsCleanTests.test_shipped_tool_metadata_is_valid_utf8)\nA file written through a cp1252 layer either fails to decode or ... ok\ntest_each_tool_declares_name_description_and_schema (test_utcp_first_authority.SpecIsTheSourceTests.test_each_tool_declares_name_description_and_schema) ... ok\ntest_the_manual_is_generated_from_the_spec_not_the_server (test_utcp_first_authority.SpecIsTheSourceTests.test_the_manual_is_generated_from_the_spec_not_the_server) ... ok\ntest_the_server_no_longer_authors_descriptions (test_utcp_first_authority.SpecIsTheSourceTests.test_the_server_no_longer_authors_descriptions)\nserver.cjs must READ definitions, not declare them. While a tool ... ok\ntest_the_spec_exists_and_declares_every_tool (test_utcp_first_authority.SpecIsTheSourceTests.test_the_spec_exists_and_declares_every_tool) ... ok\ntest_official_bridge_round_trips_cli_and_mcp_templates (test_utcp_first_catalog.BridgeParityTests.test_official_bridge_round_trips_cli_and_mcp_templates) ... skipped 'official @utcp/mcp-bridge not installed (npm install)'\ntest_bridged_entries_reuse_server_metadata_verbatim (test_utcp_first_catalog.GeneratedProjectionTests.test_bridged_entries_reuse_server_metadata_verbatim)\nEach bridged manual entry's description and inputs equal the server's ... ok\ntest_checked_in_metadata_matches_live_server (test_utcp_first_catalog.GeneratedProjectionTests.test_checked_in_metadata_matches_live_server)\nThe pinned metadata projection cannot drift behind the live server. ... ok\ntest_mutations_keep_the_validated_handler_path (test_utcp_first_catalog.GuardedMutationTests.test_mutations_keep_the_validated_handler_path)\nEvery manual tool in a non-read capability calls the plugin state ... ok\ntest_read_only_cli_tools_stay_cli (test_utcp_first_catalog.GuardedMutationTests.test_read_only_cli_tools_stay_cli)\nThe 12 cli-native observe/recall tools keep their cli templates. ... ok\ntest_checked_in_metadata_projection_exists (test_utcp_first_catalog.ManualCompletenessTests.test_checked_in_metadata_projection_exists)\nThe server's tool metadata is a checked-in generated artifact so the ... ok\ntest_manual_covers_every_capability_on_both_transports (test_utcp_first_catalog.ManualCompletenessTests.test_manual_covers_every_capability_on_both_transports)\nEvery UTCP and MCP registration in the tool-surface catalog appears ... ok\ntest_appends_version_change_request (test_version_advice.VersionAdviceTests.test_appends_version_change_request) ... ok\ntest_builds_safe_update_advice_for_low_risk_releases (test_version_advice.VersionAdviceTests.test_builds_safe_update_advice_for_low_risk_releases) ... ok\ntest_cli_uses_hub_releases_when_downstream_repo_has_no_releases_file (test_version_advice.VersionAdviceTests.test_cli_uses_hub_releases_when_downstream_repo_has_no_releases_file) ... ok\ntest_detects_installed_version_from_bom_json (test_version_advice.VersionAdviceTests.test_detects_installed_version_from_bom_json) ... ok\ntest_detects_installed_version_from_opencode_plugin_manifest (test_version_advice.VersionAdviceTests.test_detects_installed_version_from_opencode_plugin_manifest) ... ok\ntest_detects_installed_version_from_prd_plugin_config (test_version_advice.VersionAdviceTests.test_detects_installed_version_from_prd_plugin_config) ... ok\ntest_detects_latest_version_from_plugin_manifest (test_version_advice.VersionAdviceTests.test_detects_latest_version_from_plugin_manifest) ... ok\ntest_installed_version_priority_prefers_config_then_codex_then_opencode (test_version_advice.VersionAdviceTests.test_installed_version_priority_prefers_config_then_codex_then_opencode) ... ok\ntest_orders_prerelease_before_final_release (test_version_advice.VersionAdviceTests.test_orders_prerelease_before_final_release) ... ok\ntest_recommends_review_first_for_medium_or_high_risk_release (test_version_advice.VersionAdviceTests.test_recommends_review_first_for_medium_or_high_risk_release) ... ok\ntest_disabled_returns_disabled_and_no_fetch (test_version_check.CheckTests.test_disabled_returns_disabled_and_no_fetch) ... ok\ntest_force_refetches_within_ttl (test_version_check.CheckTests.test_force_refetches_within_ttl) ... ok\ntest_network_failure_is_fail_open (test_version_check.CheckTests.test_network_failure_is_fail_open) ... ok\ntest_no_update_when_current (test_version_check.CheckTests.test_no_update_when_current) ... ok\ntest_status_is_cache_only_no_fetch (test_version_check.CheckTests.test_status_is_cache_only_no_fetch) ... ok\ntest_ttl_cache_avoids_refetch (test_version_check.CheckTests.test_ttl_cache_avoids_refetch) ... ok\ntest_ttl_expiry_refetches (test_version_check.CheckTests.test_ttl_expiry_refetches) ... ok\ntest_update_available_when_npm_is_ahead (test_version_check.CheckTests.test_update_available_when_npm_is_ahead) ... ok\ntest_status_cli_exits_zero (test_version_check.CliTests.test_status_cli_exits_zero) ... ok\ntest_default_ttl_is_responsive_not_a_day (test_version_check.FreshnessTests.test_default_ttl_is_responsive_not_a_day) ... ok\ntest_fetch_latest_accepts_a_timeout (test_version_check.FreshnessTests.test_fetch_latest_accepts_a_timeout) ... ok\ntest_nudge_refreshes_in_session_not_cache_only (test_version_check.FreshnessTests.test_nudge_refreshes_in_session_not_cache_only) ... ok\ntest_registry_default_ttl_matches (test_version_check.FreshnessTests.test_registry_default_ttl_matches) ... ok\ntest_semver_ordering (test_version_check.ParseTests.test_semver_ordering) ... ok\ntest_set_enabled_writes_config (test_version_check.ToggleTests.test_set_enabled_writes_config) ... ok\ntest_config_has_version_check_default_on (test_version_check.WiringTests.test_config_has_version_check_default_on) ... ok\ntest_nudge_surfaces_update_available (test_version_check.WiringTests.test_nudge_surfaces_update_available) ... ok\ntest_prd_version_command_exists (test_version_check.WiringTests.test_prd_version_command_exists) ... ok\ntest_script_registered_downstream (test_version_check.WiringTests.test_script_registered_downstream) ... ok\ntest_plan_cli_emits_json (test_wiki_backfill.CliTests.test_plan_cli_emits_json) ... ok\ntest_status_cli (test_wiki_backfill.CliTests.test_status_cli) ... ok\ntest_marker_written_for_established_repo_gaining_wiki (test_wiki_backfill.InstallerMarkerTests.test_marker_written_for_established_repo_gaining_wiki) ... ok\ntest_no_marker_for_empty_scaffold (test_wiki_backfill.InstallerMarkerTests.test_no_marker_for_empty_scaffold) ... ok\ntest_no_marker_when_wiki_already_exists (test_wiki_backfill.InstallerMarkerTests.test_no_marker_when_wiki_already_exists) ... ok\ntest_no_marker_when_wiki_disabled (test_wiki_backfill.InstallerMarkerTests.test_no_marker_when_wiki_disabled) ... ok\ntest_pending_false_when_absent (test_wiki_backfill.StatusTests.test_pending_false_when_absent) ... ok\ntest_pending_false_when_wiki_already_exists (test_wiki_backfill.StatusTests.test_pending_false_when_wiki_already_exists) ... ok\ntest_pending_true_when_marker_present (test_wiki_backfill.StatusTests.test_pending_true_when_marker_present) ... ok\ntest_plan_excludes_generated_report_artifacts (test_wiki_backfill.SurveyPlanTests.test_plan_excludes_generated_report_artifacts)\nrequest-report/ (incl. its calibration report trees) and docs/evidence/ ... ok\ntest_plan_excludes_plugin_and_vendor_noise (test_wiki_backfill.SurveyPlanTests.test_plan_excludes_plugin_and_vendor_noise) ... ok\ntest_plan_inventories_code_docs_and_state (test_wiki_backfill.SurveyPlanTests.test_plan_inventories_code_docs_and_state) ... ok\ntest_plan_is_read_only (test_wiki_backfill.SurveyPlanTests.test_plan_is_read_only) ... ok\ntest_wiki_drift_in_on_stop_and_default_sets (test_wiki_backfill.WikiDriftMonitorWiringTests.test_wiki_drift_in_on_stop_and_default_sets) ... ok\ntest_current_article_no_drift (test_wiki_backfill.WikiDriftTests.test_current_article_no_drift) ... ok\ntest_drift_cli (test_wiki_backfill.WikiDriftTests.test_drift_cli) ... ok\ntest_far_behind_article_flagged (test_wiki_backfill.WikiDriftTests.test_far_behind_article_flagged) ... ok\ntest_no_wiki_is_ok (test_wiki_backfill.WikiDriftTests.test_no_wiki_is_ok) ... ok\ntest_unlinked_markdown_reference_is_part_of_wiki_drift (test_wiki_backfill.WikiDriftTests.test_unlinked_markdown_reference_is_part_of_wiki_drift) ... ok\ntest_unstamped_article_flagged (test_wiki_backfill.WikiDriftTests.test_unstamped_article_flagged) ... ok\ntest_wiki_drift_uses_configured_wiki_directory (test_wiki_backfill.WikiDriftTests.test_wiki_drift_uses_configured_wiki_directory) ... ok\ntest_ambiguous_reference_is_reported_but_never_guessed (test_wiki_backfill.WikiInlineMarkdownLinkTests.test_ambiguous_reference_is_reported_but_never_guessed) ... ok\ntest_cli_check_fails_and_fix_then_passes (test_wiki_backfill.WikiInlineMarkdownLinkTests.test_cli_check_fails_and_fix_then_passes) ... ok\ntest_existing_inline_links_and_fenced_examples_are_not_findings (test_wiki_backfill.WikiInlineMarkdownLinkTests.test_existing_inline_links_and_fenced_examples_are_not_findings) ... ok\ntest_fix_rewrites_only_unambiguous_references_to_relative_inline_links (test_wiki_backfill.WikiInlineMarkdownLinkTests.test_fix_rewrites_only_unambiguous_references_to_relative_inline_links) ... ok\ntest_reports_resolvable_bare_and_code_wrapped_markdown_references (test_wiki_backfill.WikiInlineMarkdownLinkTests.test_reports_resolvable_bare_and_code_wrapped_markdown_references) ... ok\ntest_nudge_surfaces_pending_backfill (test_wiki_backfill.WiringTests.test_nudge_surfaces_pending_backfill) ... ok\ntest_script_registered_downstream (test_wiki_backfill.WiringTests.test_script_registered_downstream) ... ok\ntest_skill_has_backfill_mode (test_wiki_backfill.WiringTests.test_skill_has_backfill_mode) ... ok\ntest_copy_and_download_controls_are_wired (test_wiki_html_export.WikiHtmlExportTests.test_copy_and_download_controls_are_wired) ... ok\ntest_default_output_lands_in_the_local_runtime_dir (test_wiki_html_export.WikiHtmlExportTests.test_default_output_lands_in_the_local_runtime_dir) ... ok\ntest_every_page_is_embedded_with_exact_markdown (test_wiki_html_export.WikiHtmlExportTests.test_every_page_is_embedded_with_exact_markdown) ... ok\ntest_export_all_generates_viewers_and_super_index (test_wiki_html_export.WikiHtmlExportTests.test_export_all_generates_viewers_and_super_index) ... ok\ntest_export_is_one_self_contained_offline_file (test_wiki_html_export.WikiHtmlExportTests.test_export_is_one_self_contained_offline_file) ... ok\ntest_guest_repo_viewer_is_hosted_by_the_host_repo (test_wiki_html_export.WikiHtmlExportTests.test_guest_repo_viewer_is_hosted_by_the_host_repo)\nA repo without .prd_plugin gets NO new files in its own tree; its ... ok\ntest_hub_repo_exports_all_pages (test_wiki_html_export.WikiHtmlExportTests.test_hub_repo_exports_all_pages) ... ok\ntest_parse_wiki_log_extracts_dated_entries_with_bodies (test_wiki_html_export.WikiHtmlExportTests.test_parse_wiki_log_extracts_dated_entries_with_bodies)\nREQ-112: every workspace log follows '## [date] mode | text'. ... ok\ntest_parse_wiki_log_tolerates_missing_log (test_wiki_html_export.WikiHtmlExportTests.test_parse_wiki_log_tolerates_missing_log) ... ok\ntest_script_content_cannot_break_the_payload (test_wiki_html_export.WikiHtmlExportTests.test_script_content_cannot_break_the_payload) ... ok\ntest_super_index_has_a_combined_changelog (test_wiki_html_export.WikiHtmlExportTests.test_super_index_has_a_combined_changelog) ... ok\ntest_super_index_reports_page_counts (test_wiki_html_export.WikiHtmlExportTests.test_super_index_reports_page_counts) ... ok\ntest_workspace_discovery_uses_the_wiki_convention_marker (test_wiki_html_export.WikiHtmlExportTests.test_workspace_discovery_uses_the_wiki_convention_marker)\nREQ-110 + REQ-111: any immediate child whose wiki follows the ... ok\ntest_a_repo_without_a_wiki_is_not_in_drift (test_wiki_ingest_drift.DetectionTests.test_a_repo_without_a_wiki_is_not_in_drift)\nNo wiki is a legitimate state, not a failure to ingest. ... ok\ntest_fully_ingested_repo_is_clean (test_wiki_ingest_drift.DetectionTests.test_fully_ingested_repo_is_clean) ... ok\ntest_malformed_state_degrades_rather_than_raising (test_wiki_ingest_drift.DetectionTests.test_malformed_state_degrades_rather_than_raising) ... ok\ntest_non_implemented_requests_are_never_expected_in_the_log (test_wiki_ingest_drift.DetectionTests.test_non_implemented_requests_are_never_expected_in_the_log) ... ok\ntest_only_work_since_the_last_ingest_is_actionable (test_wiki_ingest_drift.DetectionTests.test_only_work_since_the_last_ingest_is_actionable)\nRaw counting flags pre-wiki history as drift � ~70 items in the hub, ... ok\ntest_reports_implemented_requests_absent_from_the_log (test_wiki_ingest_drift.DetectionTests.test_reports_implemented_requests_absent_from_the_log) ... ok\ntest_it_runs_against_this_repo_and_returns_a_usable_report (test_wiki_ingest_drift.RealRepoTests.test_it_runs_against_this_repo_and_returns_a_usable_report)\nGrounded against real state, but NOT pinned to a specific gap: a test ... ok\ntest_prd_status_omits_it_when_clean (test_wiki_ingest_drift.SurfaceTests.test_prd_status_omits_it_when_clean) ... ok\ntest_prd_status_reports_the_drift (test_wiki_ingest_drift.SurfaceTests.test_prd_status_reports_the_drift) ... ok\ntest_this_repos_wiki_reads_byte_exact (test_wiki_page_contract.HubRepoSmokeTests.test_this_repos_wiki_reads_byte_exact) ... ok\ntest_list_enumerates_canonical_pages_with_titles (test_wiki_page_contract.WikiPageListTests.test_list_enumerates_canonical_pages_with_titles) ... ok\ntest_boundaries_are_hard (test_wiki_page_contract.WikiPageReadTests.test_boundaries_are_hard) ... ok\ntest_drift_remains_the_default_action (test_wiki_page_contract.WikiPageReadTests.test_drift_remains_the_default_action) ... ok\ntest_read_page_without_stamps_reports_null_provenance (test_wiki_page_contract.WikiPageReadTests.test_read_page_without_stamps_reports_null_provenance) ... ok\ntest_read_requires_a_path (test_wiki_page_contract.WikiPageReadTests.test_read_requires_a_path) ... ok\ntest_read_returns_exact_markdown_with_provenance (test_wiki_page_contract.WikiPageReadTests.test_read_returns_exact_markdown_with_provenance) ... ok\ntest_no_cp1252_unencodable_chars_in_agent_facing_tools (test_windows_console_safe.SourceScanTests.test_no_cp1252_unencodable_chars_in_agent_facing_tools) ... ok\ntest_backfill_pending_status_renders_cp1252_safe (test_windows_console_safe.StatusRenderTests.test_backfill_pending_status_renders_cp1252_safe) ... ok\ntest_json_output_escapes_non_console_characters (test_windows_console_safe.WorkflowCliRenderTests.test_json_output_escapes_non_console_characters) ... ok\ntest_repository_workflow_surfaces_are_chml_zero (test_workflow_chml_audit.WorkflowChmlAuditTests.test_repository_workflow_surfaces_are_chml_zero) ... ok\ntest_semantic_skill_finding_is_part_of_workflow_chml (test_workflow_chml_audit.WorkflowChmlAuditTests.test_semantic_skill_finding_is_part_of_workflow_chml) ... ok\ntest_git_workflow_pushes_clean_verified_commits_in_autonomous (test_workflow_consistency.AutonomyConflictResolutionTests.test_git_workflow_pushes_clean_verified_commits_in_autonomous) ... ok\ntest_request_intake_defers_autonomy_and_owns_graduation (test_workflow_consistency.AutonomyConflictResolutionTests.test_request_intake_defers_autonomy_and_owns_graduation) ... ok\ntest_evidence_pair_states_create_vs_review_boundary (test_workflow_consistency.BoundaryClarityTests.test_evidence_pair_states_create_vs_review_boundary) ... ok\ntest_session_close_states_memory_boundary (test_workflow_consistency.BoundaryClarityTests.test_session_close_states_memory_boundary) ... ok\ntest_document_branch_has_promotion_owner (test_workflow_consistency.DeadEndOwnerTests.test_document_branch_has_promotion_owner) ... ok\ntest_health_findings_have_triage_dispositions (test_workflow_consistency.DeadEndOwnerTests.test_health_findings_have_triage_dispositions) ... ok\ntest_memory_owns_schema_version_changes (test_workflow_consistency.DeadEndOwnerTests.test_memory_owns_schema_version_changes) ... ok\ntest_planning_lifecycle_has_stage_readiness_checkpoints (test_workflow_consistency.DeadEndOwnerTests.test_planning_lifecycle_has_stage_readiness_checkpoints) ... ok\ntest_session_close_runs_traceability_sync (test_workflow_consistency.DeadEndOwnerTests.test_session_close_runs_traceability_sync) ... ok\n\n----------------------------------------------------------------------\nRan 1262 tests in 107.087s\n\nOK (skipped=1)\n",
                "receipt_hash": "9f672b456abc131847494aa11cc6a21f9f9a7d362fa78d23031151fd8d759c03"
              }
            ],
            "execution_hash": "659b14081789cd7e6c1931c9a15f09a24e29480742f8d63919871149e561cd9d"
          },
          "output_hash": "9f45d9b825aa70b0b22645fb4b463404bc96dfb7d46c9186a61b3b0b05e93054",
          "completed_at": "2026-07-25T00:46:39Z"
        },
        {
          "id": "diff",
          "action": "git.diff_check",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-25T00:46:39Z",
          "output": {
            "passed": true
          },
          "output_hash": "11c11db30f4b3f6c758722ba3e27eea08145b7d212f6a157451e364b48475280",
          "completed_at": "2026-07-25T00:46:39Z"
        },
        {
          "id": "state",
          "action": "state.consistency",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-25T00:46:39Z",
          "output": {
            "status": "ok",
            "repo_root": "D:\\Projects\\prd-plugin-worktrees\\codex-reasoning-summary-session-fallback",
            "summary": {
              "errors": 0,
              "warnings": 0,
              "infos": 1
            },
            "findings": [
              {
                "id": "CONS-INFO-001",
                "severity": "info",
                "path": "docs/evidence/EV-200.md",
                "summary": "File references 2 canonical IDs across 2 prefix(es); treated as a positive signal of extra work.",
                "referenced_prefixes": [
                  "CHG",
                  "TRK"
                ],
                "referenced_id_count": 2,
                "required_action": "No action required; this is an informational signal."
              }
            ]
          },
          "output_hash": "7bd004636e5a786f64604d8cc821f23845cc7f69b783a6392c588759f368f587",
          "completed_at": "2026-07-25T00:46:39Z"
        },
        {
          "id": "gate",
          "action": "state.gate",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-25T00:46:39Z",
          "output": {
            "status": "attention",
            "repo_root": "D:\\Projects\\prd-plugin-worktrees\\codex-reasoning-summary-session-fallback",
            "summary": {
              "errors": 0,
              "warnings": 0
            },
            "findings": [
              {
                "check": "state_consistency",
                "severity": "info",
                "summary": "File references 2 canonical IDs across 2 prefix(es); treated as a positive signal of extra work.",
                "required_action": "No action required; this is an informational signal."
              }
            ]
          },
          "output_hash": "af95f5508bef069fc3c46ffe3a052eeba9fa5c6bfadc00da8d536a21484deebe",
          "completed_at": "2026-07-25T00:46:40Z"
        }
      ],
      "completed_at": "2026-07-25T00:46:40Z"
    },
    {
      "id": "WFR-417",
      "schema_version": "1.0",
      "workflow_id": "hub.release",
      "workflow_version": 1,
      "definition_hash": "ab6ae2afcb0128db8d994b6b397e543c7490017bd3d1b15309079edc6be94d9a",
      "plan_hash": "02bcb9cb71ca5641cc12e6270fee67758c0051b183e4204137993cd57b89a7bd",
      "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
      "inputs": {},
      "idempotency_key": "req-172-codex-session-fallback-release-v1",
      "status": "completed",
      "attempt": 1,
      "created_at": "2026-07-25T00:48:07Z",
      "updated_at": "2026-07-25T00:50:01Z",
      "receipts": [
        {
          "step_id": "diff",
          "action": "git.diff_check",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "11c11db30f4b3f6c758722ba3e27eea08145b7d212f6a157451e364b48475280",
          "completed_at": "2026-07-25T00:48:07Z"
        },
        {
          "step_id": "config",
          "action": "config.audit",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "ef2327bf3ea9c100a1a525c09e426de9703016f1b7c177b0df10c0b7cf3f33c9",
          "completed_at": "2026-07-25T00:48:08Z"
        },
        {
          "step_id": "state",
          "action": "state.consistency",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "7bd004636e5a786f64604d8cc821f23845cc7f69b783a6392c588759f368f587",
          "completed_at": "2026-07-25T00:48:08Z"
        },
        {
          "step_id": "workflow_audit",
          "action": "process.fixed",
          "input_hash": "edf19b269a54d72753f1abc2b8ffcb810c2b7bc377cee7e1698c939f17e0be94",
          "output_hash": "16622c601306c84b9e057bc1426863917aab1686e495638e83c8c254a977abdf",
          "completed_at": "2026-07-25T00:48:08Z"
        },
        {
          "step_id": "substrate_audit",
          "action": "process.fixed",
          "input_hash": "4998f71d2d3f6ac7dd50e10d37f60ae32d54898949950e484da9de113e18a979",
          "output_hash": "4176fd7e9d2d33bd61e5fd6bb8d392a63eaa5b2cb65b750eeb348b9dd55fe220",
          "completed_at": "2026-07-25T00:48:08Z"
        },
        {
          "step_id": "suite",
          "action": "process.fixed",
          "input_hash": "954e575e48145853f5681eda189186c95a053267158fae669114320f2e53794a",
          "output_hash": "d3e1e7c46e01c5c39006a86876f718f0aa7d4bd0e10fd36dc7831544c9294a50",
          "completed_at": "2026-07-25T00:49:58Z"
        },
        {
          "step_id": "release",
          "action": "process.fixed",
          "input_hash": "1e5b0c18d93eb4c2248f9a00adbd438e52f3ef02137477fb8376c69cfe86fc9b",
          "output_hash": "9bf36efbd0af4d8a6f85058015d9f9da4b4e882c988dc691e16cbfd59fa7acc0",
          "completed_at": "2026-07-25T00:49:58Z"
        },
        {
          "step_id": "gaps",
          "action": "process.fixed",
          "input_hash": "577241909238eeb55683f89d2d2216648dad2e3127397993e22493829a1307a4",
          "output_hash": "d2edfc2575ed85d297f7767c4140d6893ddf931b426e627aa6c4142d51f5822e",
          "completed_at": "2026-07-25T00:49:59Z"
        },
        {
          "step_id": "package",
          "action": "process.fixed",
          "input_hash": "06cd12e1f3db3d985f9150520afa60f288297ff0ca01a8e813e9bb6291aa8836",
          "output_hash": "511d17a8708d6e541babd37dc591812c19df0cfb05e7cd38c52458f3e989eb4b",
          "completed_at": "2026-07-25T00:50:01Z"
        },
        {
          "step_id": "gate",
          "action": "state.gate",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "af95f5508bef069fc3c46ffe3a052eeba9fa5c6bfadc00da8d536a21484deebe",
          "completed_at": "2026-07-25T00:50:01Z"
        }
      ],
      "steps": [
        {
          "id": "diff",
          "action": "git.diff_check",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-25T00:48:07Z",
          "output": {
            "passed": true
          },
          "output_hash": "11c11db30f4b3f6c758722ba3e27eea08145b7d212f6a157451e364b48475280",
          "completed_at": "2026-07-25T00:48:07Z"
        },
        {
          "id": "config",
          "action": "config.audit",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-25T00:48:08Z",
          "output": {
            "status": "ok",
            "summary": {
              "settings": 214,
              "mutable": 204,
              "read_only_or_managed": 10,
              "unclassified": 0,
              "unknown": 0,
              "invalid": 0,
              "missing_using_defaults": 0
            },
            "unclassified_keys": [],
            "unknown_keys": [],
            "invalid_values": [],
            "missing_using_defaults": []
          },
          "output_hash": "ef2327bf3ea9c100a1a525c09e426de9703016f1b7c177b0df10c0b7cf3f33c9",
          "completed_at": "2026-07-25T00:48:08Z"
        },
        {
          "id": "state",
          "action": "state.consistency",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-25T00:48:08Z",
          "output": {
            "status": "ok",
            "repo_root": "D:\\Projects\\prd-plugin-worktrees\\codex-reasoning-summary-session-fallback",
            "summary": {
              "errors": 0,
              "warnings": 0,
              "infos": 1
            },
            "findings": [
              {
                "id": "CONS-INFO-001",
                "severity": "info",
                "path": "docs/evidence/EV-200.md",
                "summary": "File references 2 canonical IDs across 2 prefix(es); treated as a positive signal of extra work.",
                "referenced_prefixes": [
                  "CHG",
                  "TRK"
                ],
                "referenced_id_count": 2,
                "required_action": "No action required; this is an informational signal."
              }
            ]
          },
          "output_hash": "7bd004636e5a786f64604d8cc821f23845cc7f69b783a6392c588759f368f587",
          "completed_at": "2026-07-25T00:48:08Z"
        },
        {
          "id": "workflow_audit",
          "action": "process.fixed",
          "status": "completed",
          "resolved_input_hash": "edf19b269a54d72753f1abc2b8ffcb810c2b7bc377cee7e1698c939f17e0be94",
          "started_at": "2026-07-25T00:48:08Z",
          "output": {
            "operation": "workflow_chml_audit",
            "command": [
              "python",
              "scripts/workflow_chml_audit.py",
              "--repo-root",
              ".",
              "--format",
              "json"
            ],
            "exit_code": 0,
            "stdout": "{\n  \"status\": \"ok\",\n  \"repo_root\": \"D:\\\\Projects\\\\prd-plugin-worktrees\\\\codex-reasoning-summary-session-fallback\",\n  \"summary\": {\n    \"critical\": 0,\n    \"high\": 0,\n    \"medium\": 0,\n    \"low\": 0\n  },\n  \"findings\": []\n}\n",
            "stderr": ""
          },
          "output_hash": "16622c601306c84b9e057bc1426863917aab1686e495638e83c8c254a977abdf",
          "completed_at": "2026-07-25T00:48:08Z"
        },
        {
          "id": "substrate_audit",
          "action": "process.fixed",
          "status": "completed",
          "resolved_input_hash": "4998f71d2d3f6ac7dd50e10d37f60ae32d54898949950e484da9de113e18a979",
          "started_at": "2026-07-25T00:48:08Z",
          "output": {
            "operation": "substrate_capability_audit",
            "command": [
              "python",
              "scripts/prd_substrate_catalog.py",
              "--repo-root",
              ".",
              "audit"
            ],
            "exit_code": 0,
            "stdout": "{\n  \"status\": \"ok\",\n  \"schema_version\": \"1.0\",\n  \"capability_count\": 26,\n  \"runtime_tool_count\": 103,\n  \"intent_count\": 31,\n  \"summary\": {\n    \"critical\": 0,\n    \"high\": 0,\n    \"medium\": 0,\n    \"low\": 0\n  },\n  \"findings\": []\n}\n",
            "stderr": ""
          },
          "output_hash": "4176fd7e9d2d33bd61e5fd6bb8d392a63eaa5b2cb65b750eeb348b9dd55fe220",
          "completed_at": "2026-07-25T00:48:08Z"
        },
        {
          "id": "suite",
          "action": "process.fixed",
          "status": "completed",
          "resolved_input_hash": "954e575e48145853f5681eda189186c95a053267158fae669114320f2e53794a",
          "started_at": "2026-07-25T00:48:09Z",
          "output": {
            "operation": "local_workflow_check",
            "command": [
              "python",
              "scripts/local_workflow_check.py"
            ],
            "exit_code": 0,
            "stdout": "Structured file validation passed.\n$ python -m unittest discover -s tests -v\n{\n  \"status\": \"fail\",\n  \"repo_root\": \"C:\\\\Users\\\\marku\\\\AppData\\\\Local\\\\Temp\\\\tmpjpvp3a8b\",\n  \"summary\": {\n    \"errors\": 1,\n    \"warnings\": 0\n  },\n  \"findings\": [\n    {\n      \"check\": \"duplicate_id\",\n      \"severity\": \"error\",\n      \"summary\": \"Duplicate id REQ-002 in .prd_plugin/state/requests.json.\",\n      \"required_action\": \"Renumber one record so REQ-002 is unique. Allocate IDs with the MCP tool prd_next_id (or the record tools like prd_open_goal) instead of hand-computing them.\"\n    }\n  ]\n}\nautonomy_level set to guided\nautonomy_level set to autonomous\nDESTRUCTIVE RESET REQUESTED: --force --yes will erase protected PRD Plugin project data.\nThe following existing state/configuration files would be replaced with skeleton defaults:\n  - .prd_plugin/state/tracking.json\nThis may erase IDs, tracking, requests, decisions, health findings, configuration, and session memory.\nFor a normal safe update, remove --yes and run: npx prd-install . --force\nPRD Plugin safe update: preserving existing state/config and refreshing plugin files only. Never add --yes to a routine update; it requests a destructive reset.\nPRD Plugin safe update: preserving existing state/config and refreshing plugin files only. Never add --yes to a routine update; it requests a destructive reset.\nPRD Plugin safe update: preserving existing state/config and refreshing plugin files only. Never add --yes to a routine update; it requests a destructive reset.\nPRD Plugin safe update: preserving existing state/config and refreshing plugin files only. Never add --yes to a routine update; it requests a destructive reset.\nPRD Plugin safe update: preserving existing state/config and refreshing plugin files only. Never add --yes to a routine update; it requests a destructive reset.\nPRD Plugin safe update: preserving existing state/config and refreshing plugin files only. Never add --yes to a routine update; it requests a destructive reset.\nPRD Plugin safe update: preserving existing state/config and refreshing plugin files only. Never add --yes to a routine update; it requests a destructive reset.\nPRD Plugin safe update: preserving existing state/config and refreshing plugin files only. Never add --yes to a routine update; it requests a destructive reset.\nPRD Plugin safe update: preserving existing state/config and refreshing plugin files only. Never add --yes to a routine update; it requests a destructive reset.\nPRD Plugin safe update: preserving existing state/config and refreshing plugin files only. Never add --yes to a routine update; it requests a destructive reset.\nPRD Plugin safe update: preserving existing state/config and refreshing plugin files only. Never add --yes to a routine update; it requests a destructive reset.\nPRD Plugin safe update: preserving existing state/config and refreshing plugin files only. Never add --yes to a routine update; it requests a destructive reset.\nPRD Plugin safe update: preserving existing state/config and refreshing plugin files only. Never add --yes to a routine update; it requests a destructive reset.\nPRD Plugin safe update: preserving existing state/config and refreshing plugin files only. Never add --yes to a routine update; it requests a destructive reset.\nPRD Plugin safe update: preserving existing state/config and refreshing plugin files only. Never add --yes to a routine update; it requests a destructive reset.\nPRD Plugin safe update: preserving existing state/config and refreshing plugin files only. Never add --yes to a routine update; it requests a destructive reset.\nPRD Plugin safe update: preserving existing state/config and refreshing plugin files only. Never add --yes to a routine update; it requests a destructive reset.\n{\n  \"published\": false,\n  \"package\": \"prd-plugin\",\n  \"version\": \"9.9.9\",\n  \"version_seen\": null,\n  \"latest_seen\": null,\n  \"attempts_used\": 1\n}\n{\n  \"published\": true,\n  \"package\": \"prd-plugin\",\n  \"version\": \"1.2.3\",\n  \"version_seen\": \"1.2.3\",\n  \"latest_seen\": \"1.2.3\",\n  \"attempts_used\": 1\n}\n{\"decision\": \"block\", \"reason\": \"Autonomous run-until-done: goal TRK-160 is still active. Continue with the next incomplete step toward it \\u2014 do not stop to ask 'shall I proceed?'. If you genuinely need the user (consent floor: push/merge/publish/secrets, or a real blocker), create the file .prd_plugin/local/autonomy-pause with a one-line reason and then stop; the guard will let you. Otherwise keep going.\"}\n$ python scripts/feature_skill_audit.py --repo-root . --format json\n{\n  \"status\": \"ok\",\n  \"repo_root\": \"D:\\\\Projects\\\\prd-plugin-worktrees\\\\codex-reasoning-summary-session-fallback\",\n  \"contract\": \"templates/feature-skill-map.json\",\n  \"feature_count\": 29,\n  \"summary\": {\n    \"critical\": 0,\n    \"high\": 0,\n    \"medium\": 0,\n    \"low\": 0\n  },\n  \"findings\": []\n}\n$ python scripts/gap_audit.py --target-version 0.16.55\n# PRD Plugin Gap Audit\n\nTarget version: `0.16.55`\n\n## Findings\n\n- None\n$ python scripts/version_advice.py --installed-repo . --format json --output request-report/version-advice.json\n$ python scripts/release_check.py --output request-report/release-hygiene.md\n$ python scripts/prd_doctor.py --repo-root . --format json --output request-report/prd-doctor.json\n$ python scripts/state_consistency_check.py --repo-root . --format json --output request-report/state-consistency.json\n$ python scripts/prd_install_skills.py --repo-root . --dry-run\n{\n  \"status\": \"dry_run\",\n  \"target_agent\": \"codex\",\n  \"targets\": [\n    {\n      \"agent\": \"codex\",\n      \"target\": \".agents\\\\skills\",\n      \"would_install\": [\n        \"project-architecture\",\n        \"project-blocker-resolution\",\n        \"project-brainstorm\",\n        \"project-change-request\",\n        \"project-code-review\",\n        \"project-decision-ledger\",\n        \"project-decision-policy\",\n        \"project-deterministic-workflows\",\n        \"project-document-branch\",\n        \"project-evidence\",\n        \"project-evidence-ledger\",\n        \"project-git-workflow\",\n        \"project-health\",\n        \"project-implementation-plan\",\n        \"project-llm-wiki\",\n        \"project-local-integration\",\n        \"project-memory\",\n        \"project-planning-lifecycle\",\n        \"project-prd\",\n        \"project-prd-plugin-setup\",\n        \"project-request-intake\",\n        \"project-session-close\",\n        \"project-systematic-debugging\",\n        \"project-test-driven-implementation\",\n        \"project-traceability-review\",\n        \"project-traceability-sync\",\n        \"project-verification-before-completion\",\n        \"source-command-prd-autonomy\",\n        \"source-command-prd-close\",\n        \"source-command-prd-config\",\n        \"source-command-prd-drift\",\n        \"source-command-prd-graph\",\n        \"source-command-prd-hooks\",\n        \"source-command-prd-new\",\n        \"source-command-prd-off\",\n        \"source-command-prd-on\",\n        \"source-command-prd-reflections\",\n        \"source-command-prd-report\",\n        \"source-command-prd-status\",\n        \"source-command-prd-track\",\n        \"source-command-prd-version\",\n        \"source-command-prd-workflow\"\n      ],\n      \"would_remove\": [\n        \"project-fold-it-in\",\n        \"project-self-audit\"\n      ]\n    }\n  ],\n  \"installed_count\": 0,\n  \"target\": \".agents\\\\skills\",\n  \"installed\": [],\n  \"removed\": [],\n  \"would_install\": [\n    \"project-architecture\",\n    \"project-blocker-resolution\",\n    \"project-brainstorm\",\n    \"project-change-request\",\n    \"project-code-review\",\n    \"project-decision-ledger\",\n    \"project-decision-policy\",\n    \"project-deterministic-workflows\",\n    \"project-document-branch\",\n    \"project-evidence\",\n    \"project-evidence-ledger\",\n    \"project-git-workflow\",\n    \"project-health\",\n    \"project-implementation-plan\",\n    \"project-llm-wiki\",\n    \"project-local-integration\",\n    \"project-memory\",\n    \"project-planning-lifecycle\",\n    \"project-prd\",\n    \"project-prd-plugin-setup\",\n    \"project-request-intake\",\n    \"project-session-close\",\n    \"project-systematic-debugging\",\n    \"project-test-driven-implementation\",\n    \"project-traceability-review\",\n    \"project-traceability-sync\",\n    \"project-verification-before-completion\",\n    \"source-command-prd-autonomy\",\n    \"source-command-prd-close\",\n    \"source-command-prd-config\",\n    \"source-command-prd-drift\",\n    \"source-command-prd-graph\",\n    \"source-command-prd-hooks\",\n    \"source-command-prd-new\",\n    \"source-command-prd-off\",\n    \"source-command-prd-on\",\n    \"source-command-prd-reflections\",\n    \"source-command-prd-report\",\n    \"source-command-prd-status\",\n    \"source-command-prd-track\",\n    \"source-command-prd-version\",\n    \"source-command-prd-workflow\"\n  ],\n  \"would_remove\": [\n    \"project-fold-it-in\",\n    \"project-self-audit\"\n  ]\n}\n$ python scripts/request_report.py --config .prd_plugin/config.json --format markdown --output request-report/request-report.md\n$ python scripts/request_report.py --config .prd_plugin/config.json --format json --output request-report/request-report.json\n$ python scripts/message_check.py --config .prd_plugin/config.json --format json --output request-report/message-check.json\nLocal workflow check completed.\n",
            "stderr": "lid_values) ... ok\ntest_enable_disable_only_accept_mutable_booleans (test_unified_config.MutationTests.test_enable_disable_only_accept_mutable_booleans) ... ok\ntest_failed_atomic_replace_leaves_original_config_untouched (test_unified_config.MutationTests.test_failed_atomic_replace_leaves_original_config_untouched) ... ok\ntest_malformed_config_is_never_replaced_by_a_mutation (test_unified_config.MutationTests.test_malformed_config_is_never_replaced_by_a_mutation) ... ok\ntest_manual_set_marks_profile_custom_and_preserves_style (test_unified_config.MutationTests.test_manual_set_marks_profile_custom_and_preserves_style) ... ok\ntest_scalar_parent_is_not_clobbered_by_nested_set (test_unified_config.MutationTests.test_scalar_parent_is_not_clobbered_by_nested_set) ... ok\ntest_builtin_profile_dry_run_then_atomic_apply (test_unified_config.ProfileTests.test_builtin_profile_dry_run_then_atomic_apply) ... ok\ntest_invalid_custom_profile_never_partially_writes (test_unified_config.ProfileTests.test_invalid_custom_profile_never_partially_writes) ... ok\ntest_save_show_diff_and_delete_custom_profile (test_unified_config.ProfileTests.test_save_show_diff_and_delete_custom_profile) ... ok\ntest_does_not_flag_canonical_prd_state_paths (test_unsubmitted_plugin_request.UnsubmittedPluginRequestTests.test_does_not_flag_canonical_prd_state_paths) ... ok\ntest_does_not_flag_ordinary_project_requests (test_unsubmitted_plugin_request.UnsubmittedPluginRequestTests.test_does_not_flag_ordinary_project_requests) ... ok\ntest_does_not_flag_rejected_requests (test_unsubmitted_plugin_request.UnsubmittedPluginRequestTests.test_does_not_flag_rejected_requests) ... ok\ntest_does_not_flag_when_already_marked_upstream (test_unsubmitted_plugin_request.UnsubmittedPluginRequestTests.test_does_not_flag_when_already_marked_upstream) ... ok\ntest_flags_a_local_request_about_a_plugin_script (test_unsubmitted_plugin_request.UnsubmittedPluginRequestTests.test_flags_a_local_request_about_a_plugin_script) ... ok\ntest_flags_a_request_that_names_itself_upstream (test_unsubmitted_plugin_request.UnsubmittedPluginRequestTests.test_flags_a_request_that_names_itself_upstream) ... ok\ntest_never_fires_in_the_hub_repo_itself (test_unsubmitted_plugin_request.UnsubmittedPluginRequestTests.test_never_fires_in_the_hub_repo_itself) ... ok\ntest_wired_into_run_checks (test_unsubmitted_plugin_request.UnsubmittedPluginRequestTests.test_wired_into_run_checks) ... ok\ntest_output_writes_lf_and_a_trailing_newline (test_utcp_first_authority.GeneratedArtifactsAreByteStableTests.test_output_writes_lf_and_a_trailing_newline) ... ok\ntest_the_committed_manual_matches_a_fresh_generation (test_utcp_first_authority.GeneratedArtifactsAreByteStableTests.test_the_committed_manual_matches_a_fresh_generation) ... ok\ntest_every_spec_tool_maps_to_a_catalog_capability (test_utcp_first_authority.ParityDirectionTests.test_every_spec_tool_maps_to_a_catalog_capability) ... ok\ntest_server_metadata_matches_the_spec (test_utcp_first_authority.ParityDirectionTests.test_server_metadata_matches_the_spec) ... ok\ntest_python_entry_points_share_the_same_lock (test_utcp_first_authority.SafetyUnchangedTests.test_python_entry_points_share_the_same_lock)\nThe migration target already exists and is proven: prd_reflections ... ok\ntest_the_state_lock_is_still_held_for_mutations (test_utcp_first_authority.SafetyUnchangedTests.test_the_state_lock_is_still_held_for_mutations) ... ok\ntest_no_shipped_tool_metadata_carries_mojibake (test_utcp_first_authority.ShippedTextIsCleanTests.test_no_shipped_tool_metadata_carries_mojibake) ... ok\ntest_shipped_tool_metadata_is_valid_utf8 (test_utcp_first_authority.ShippedTextIsCleanTests.test_shipped_tool_metadata_is_valid_utf8)\nA file written through a cp1252 layer either fails to decode or ... ok\ntest_each_tool_declares_name_description_and_schema (test_utcp_first_authority.SpecIsTheSourceTests.test_each_tool_declares_name_description_and_schema) ... ok\ntest_the_manual_is_generated_from_the_spec_not_the_server (test_utcp_first_authority.SpecIsTheSourceTests.test_the_manual_is_generated_from_the_spec_not_the_server) ... ok\ntest_the_server_no_longer_authors_descriptions (test_utcp_first_authority.SpecIsTheSourceTests.test_the_server_no_longer_authors_descriptions)\nserver.cjs must READ definitions, not declare them. While a tool ... ok\ntest_the_spec_exists_and_declares_every_tool (test_utcp_first_authority.SpecIsTheSourceTests.test_the_spec_exists_and_declares_every_tool) ... ok\ntest_official_bridge_round_trips_cli_and_mcp_templates (test_utcp_first_catalog.BridgeParityTests.test_official_bridge_round_trips_cli_and_mcp_templates) ... skipped 'official @utcp/mcp-bridge not installed (npm install)'\ntest_bridged_entries_reuse_server_metadata_verbatim (test_utcp_first_catalog.GeneratedProjectionTests.test_bridged_entries_reuse_server_metadata_verbatim)\nEach bridged manual entry's description and inputs equal the server's ... ok\ntest_checked_in_metadata_matches_live_server (test_utcp_first_catalog.GeneratedProjectionTests.test_checked_in_metadata_matches_live_server)\nThe pinned metadata projection cannot drift behind the live server. ... ok\ntest_mutations_keep_the_validated_handler_path (test_utcp_first_catalog.GuardedMutationTests.test_mutations_keep_the_validated_handler_path)\nEvery manual tool in a non-read capability calls the plugin state ... ok\ntest_read_only_cli_tools_stay_cli (test_utcp_first_catalog.GuardedMutationTests.test_read_only_cli_tools_stay_cli)\nThe 12 cli-native observe/recall tools keep their cli templates. ... ok\ntest_checked_in_metadata_projection_exists (test_utcp_first_catalog.ManualCompletenessTests.test_checked_in_metadata_projection_exists)\nThe server's tool metadata is a checked-in generated artifact so the ... ok\ntest_manual_covers_every_capability_on_both_transports (test_utcp_first_catalog.ManualCompletenessTests.test_manual_covers_every_capability_on_both_transports)\nEvery UTCP and MCP registration in the tool-surface catalog appears ... ok\ntest_appends_version_change_request (test_version_advice.VersionAdviceTests.test_appends_version_change_request) ... ok\ntest_builds_safe_update_advice_for_low_risk_releases (test_version_advice.VersionAdviceTests.test_builds_safe_update_advice_for_low_risk_releases) ... ok\ntest_cli_uses_hub_releases_when_downstream_repo_has_no_releases_file (test_version_advice.VersionAdviceTests.test_cli_uses_hub_releases_when_downstream_repo_has_no_releases_file) ... ok\ntest_detects_installed_version_from_bom_json (test_version_advice.VersionAdviceTests.test_detects_installed_version_from_bom_json) ... ok\ntest_detects_installed_version_from_opencode_plugin_manifest (test_version_advice.VersionAdviceTests.test_detects_installed_version_from_opencode_plugin_manifest) ... ok\ntest_detects_installed_version_from_prd_plugin_config (test_version_advice.VersionAdviceTests.test_detects_installed_version_from_prd_plugin_config) ... ok\ntest_detects_latest_version_from_plugin_manifest (test_version_advice.VersionAdviceTests.test_detects_latest_version_from_plugin_manifest) ... ok\ntest_installed_version_priority_prefers_config_then_codex_then_opencode (test_version_advice.VersionAdviceTests.test_installed_version_priority_prefers_config_then_codex_then_opencode) ... ok\ntest_orders_prerelease_before_final_release (test_version_advice.VersionAdviceTests.test_orders_prerelease_before_final_release) ... ok\ntest_recommends_review_first_for_medium_or_high_risk_release (test_version_advice.VersionAdviceTests.test_recommends_review_first_for_medium_or_high_risk_release) ... ok\ntest_disabled_returns_disabled_and_no_fetch (test_version_check.CheckTests.test_disabled_returns_disabled_and_no_fetch) ... ok\ntest_force_refetches_within_ttl (test_version_check.CheckTests.test_force_refetches_within_ttl) ... ok\ntest_network_failure_is_fail_open (test_version_check.CheckTests.test_network_failure_is_fail_open) ... ok\ntest_no_update_when_current (test_version_check.CheckTests.test_no_update_when_current) ... ok\ntest_status_is_cache_only_no_fetch (test_version_check.CheckTests.test_status_is_cache_only_no_fetch) ... ok\ntest_ttl_cache_avoids_refetch (test_version_check.CheckTests.test_ttl_cache_avoids_refetch) ... ok\ntest_ttl_expiry_refetches (test_version_check.CheckTests.test_ttl_expiry_refetches) ... ok\ntest_update_available_when_npm_is_ahead (test_version_check.CheckTests.test_update_available_when_npm_is_ahead) ... ok\ntest_status_cli_exits_zero (test_version_check.CliTests.test_status_cli_exits_zero) ... ok\ntest_default_ttl_is_responsive_not_a_day (test_version_check.FreshnessTests.test_default_ttl_is_responsive_not_a_day) ... ok\ntest_fetch_latest_accepts_a_timeout (test_version_check.FreshnessTests.test_fetch_latest_accepts_a_timeout) ... ok\ntest_nudge_refreshes_in_session_not_cache_only (test_version_check.FreshnessTests.test_nudge_refreshes_in_session_not_cache_only) ... ok\ntest_registry_default_ttl_matches (test_version_check.FreshnessTests.test_registry_default_ttl_matches) ... ok\ntest_semver_ordering (test_version_check.ParseTests.test_semver_ordering) ... ok\ntest_set_enabled_writes_config (test_version_check.ToggleTests.test_set_enabled_writes_config) ... ok\ntest_config_has_version_check_default_on (test_version_check.WiringTests.test_config_has_version_check_default_on) ... ok\ntest_nudge_surfaces_update_available (test_version_check.WiringTests.test_nudge_surfaces_update_available) ... ok\ntest_prd_version_command_exists (test_version_check.WiringTests.test_prd_version_command_exists) ... ok\ntest_script_registered_downstream (test_version_check.WiringTests.test_script_registered_downstream) ... ok\ntest_plan_cli_emits_json (test_wiki_backfill.CliTests.test_plan_cli_emits_json) ... ok\ntest_status_cli (test_wiki_backfill.CliTests.test_status_cli) ... ok\ntest_marker_written_for_established_repo_gaining_wiki (test_wiki_backfill.InstallerMarkerTests.test_marker_written_for_established_repo_gaining_wiki) ... ok\ntest_no_marker_for_empty_scaffold (test_wiki_backfill.InstallerMarkerTests.test_no_marker_for_empty_scaffold) ... ok\ntest_no_marker_when_wiki_already_exists (test_wiki_backfill.InstallerMarkerTests.test_no_marker_when_wiki_already_exists) ... ok\ntest_no_marker_when_wiki_disabled (test_wiki_backfill.InstallerMarkerTests.test_no_marker_when_wiki_disabled) ... ok\ntest_pending_false_when_absent (test_wiki_backfill.StatusTests.test_pending_false_when_absent) ... ok\ntest_pending_false_when_wiki_already_exists (test_wiki_backfill.StatusTests.test_pending_false_when_wiki_already_exists) ... ok\ntest_pending_true_when_marker_present (test_wiki_backfill.StatusTests.test_pending_true_when_marker_present) ... ok\ntest_plan_excludes_generated_report_artifacts (test_wiki_backfill.SurveyPlanTests.test_plan_excludes_generated_report_artifacts)\nrequest-report/ (incl. its calibration report trees) and docs/evidence/ ... ok\ntest_plan_excludes_plugin_and_vendor_noise (test_wiki_backfill.SurveyPlanTests.test_plan_excludes_plugin_and_vendor_noise) ... ok\ntest_plan_inventories_code_docs_and_state (test_wiki_backfill.SurveyPlanTests.test_plan_inventories_code_docs_and_state) ... ok\ntest_plan_is_read_only (test_wiki_backfill.SurveyPlanTests.test_plan_is_read_only) ... ok\ntest_wiki_drift_in_on_stop_and_default_sets (test_wiki_backfill.WikiDriftMonitorWiringTests.test_wiki_drift_in_on_stop_and_default_sets) ... ok\ntest_current_article_no_drift (test_wiki_backfill.WikiDriftTests.test_current_article_no_drift) ... ok\ntest_drift_cli (test_wiki_backfill.WikiDriftTests.test_drift_cli) ... ok\ntest_far_behind_article_flagged (test_wiki_backfill.WikiDriftTests.test_far_behind_article_flagged) ... ok\ntest_no_wiki_is_ok (test_wiki_backfill.WikiDriftTests.test_no_wiki_is_ok) ... ok\ntest_unlinked_markdown_reference_is_part_of_wiki_drift (test_wiki_backfill.WikiDriftTests.test_unlinked_markdown_reference_is_part_of_wiki_drift) ... ok\ntest_unstamped_article_flagged (test_wiki_backfill.WikiDriftTests.test_unstamped_article_flagged) ... ok\ntest_wiki_drift_uses_configured_wiki_directory (test_wiki_backfill.WikiDriftTests.test_wiki_drift_uses_configured_wiki_directory) ... ok\ntest_ambiguous_reference_is_reported_but_never_guessed (test_wiki_backfill.WikiInlineMarkdownLinkTests.test_ambiguous_reference_is_reported_but_never_guessed) ... ok\ntest_cli_check_fails_and_fix_then_passes (test_wiki_backfill.WikiInlineMarkdownLinkTests.test_cli_check_fails_and_fix_then_passes) ... ok\ntest_existing_inline_links_and_fenced_examples_are_not_findings (test_wiki_backfill.WikiInlineMarkdownLinkTests.test_existing_inline_links_and_fenced_examples_are_not_findings) ... ok\ntest_fix_rewrites_only_unambiguous_references_to_relative_inline_links (test_wiki_backfill.WikiInlineMarkdownLinkTests.test_fix_rewrites_only_unambiguous_references_to_relative_inline_links) ... ok\ntest_reports_resolvable_bare_and_code_wrapped_markdown_references (test_wiki_backfill.WikiInlineMarkdownLinkTests.test_reports_resolvable_bare_and_code_wrapped_markdown_references) ... ok\ntest_nudge_surfaces_pending_backfill (test_wiki_backfill.WiringTests.test_nudge_surfaces_pending_backfill) ... ok\ntest_script_registered_downstream (test_wiki_backfill.WiringTests.test_script_registered_downstream) ... ok\ntest_skill_has_backfill_mode (test_wiki_backfill.WiringTests.test_skill_has_backfill_mode) ... ok\ntest_copy_and_download_controls_are_wired (test_wiki_html_export.WikiHtmlExportTests.test_copy_and_download_controls_are_wired) ... ok\ntest_default_output_lands_in_the_local_runtime_dir (test_wiki_html_export.WikiHtmlExportTests.test_default_output_lands_in_the_local_runtime_dir) ... ok\ntest_every_page_is_embedded_with_exact_markdown (test_wiki_html_export.WikiHtmlExportTests.test_every_page_is_embedded_with_exact_markdown) ... ok\ntest_export_all_generates_viewers_and_super_index (test_wiki_html_export.WikiHtmlExportTests.test_export_all_generates_viewers_and_super_index) ... ok\ntest_export_is_one_self_contained_offline_file (test_wiki_html_export.WikiHtmlExportTests.test_export_is_one_self_contained_offline_file) ... ok\ntest_guest_repo_viewer_is_hosted_by_the_host_repo (test_wiki_html_export.WikiHtmlExportTests.test_guest_repo_viewer_is_hosted_by_the_host_repo)\nA repo without .prd_plugin gets NO new files in its own tree; its ... ok\ntest_hub_repo_exports_all_pages (test_wiki_html_export.WikiHtmlExportTests.test_hub_repo_exports_all_pages) ... ok\ntest_parse_wiki_log_extracts_dated_entries_with_bodies (test_wiki_html_export.WikiHtmlExportTests.test_parse_wiki_log_extracts_dated_entries_with_bodies)\nREQ-112: every workspace log follows '## [date] mode | text'. ... ok\ntest_parse_wiki_log_tolerates_missing_log (test_wiki_html_export.WikiHtmlExportTests.test_parse_wiki_log_tolerates_missing_log) ... ok\ntest_script_content_cannot_break_the_payload (test_wiki_html_export.WikiHtmlExportTests.test_script_content_cannot_break_the_payload) ... ok\ntest_super_index_has_a_combined_changelog (test_wiki_html_export.WikiHtmlExportTests.test_super_index_has_a_combined_changelog) ... ok\ntest_super_index_reports_page_counts (test_wiki_html_export.WikiHtmlExportTests.test_super_index_reports_page_counts) ... ok\ntest_workspace_discovery_uses_the_wiki_convention_marker (test_wiki_html_export.WikiHtmlExportTests.test_workspace_discovery_uses_the_wiki_convention_marker)\nREQ-110 + REQ-111: any immediate child whose wiki follows the ... ok\ntest_a_repo_without_a_wiki_is_not_in_drift (test_wiki_ingest_drift.DetectionTests.test_a_repo_without_a_wiki_is_not_in_drift)\nNo wiki is a legitimate state, not a failure to ingest. ... ok\ntest_fully_ingested_repo_is_clean (test_wiki_ingest_drift.DetectionTests.test_fully_ingested_repo_is_clean) ... ok\ntest_malformed_state_degrades_rather_than_raising (test_wiki_ingest_drift.DetectionTests.test_malformed_state_degrades_rather_than_raising) ... ok\ntest_non_implemented_requests_are_never_expected_in_the_log (test_wiki_ingest_drift.DetectionTests.test_non_implemented_requests_are_never_expected_in_the_log) ... ok\ntest_only_work_since_the_last_ingest_is_actionable (test_wiki_ingest_drift.DetectionTests.test_only_work_since_the_last_ingest_is_actionable)\nRaw counting flags pre-wiki history as drift � ~70 items in the hub, ... ok\ntest_reports_implemented_requests_absent_from_the_log (test_wiki_ingest_drift.DetectionTests.test_reports_implemented_requests_absent_from_the_log) ... ok\ntest_it_runs_against_this_repo_and_returns_a_usable_report (test_wiki_ingest_drift.RealRepoTests.test_it_runs_against_this_repo_and_returns_a_usable_report)\nGrounded against real state, but NOT pinned to a specific gap: a test ... ok\ntest_prd_status_omits_it_when_clean (test_wiki_ingest_drift.SurfaceTests.test_prd_status_omits_it_when_clean) ... ok\ntest_prd_status_reports_the_drift (test_wiki_ingest_drift.SurfaceTests.test_prd_status_reports_the_drift) ... ok\ntest_this_repos_wiki_reads_byte_exact (test_wiki_page_contract.HubRepoSmokeTests.test_this_repos_wiki_reads_byte_exact) ... ok\ntest_list_enumerates_canonical_pages_with_titles (test_wiki_page_contract.WikiPageListTests.test_list_enumerates_canonical_pages_with_titles) ... ok\ntest_boundaries_are_hard (test_wiki_page_contract.WikiPageReadTests.test_boundaries_are_hard) ... ok\ntest_drift_remains_the_default_action (test_wiki_page_contract.WikiPageReadTests.test_drift_remains_the_default_action) ... ok\ntest_read_page_without_stamps_reports_null_provenance (test_wiki_page_contract.WikiPageReadTests.test_read_page_without_stamps_reports_null_provenance) ... ok\ntest_read_requires_a_path (test_wiki_page_contract.WikiPageReadTests.test_read_requires_a_path) ... ok\ntest_read_returns_exact_markdown_with_provenance (test_wiki_page_contract.WikiPageReadTests.test_read_returns_exact_markdown_with_provenance) ... ok\ntest_no_cp1252_unencodable_chars_in_agent_facing_tools (test_windows_console_safe.SourceScanTests.test_no_cp1252_unencodable_chars_in_agent_facing_tools) ... ok\ntest_backfill_pending_status_renders_cp1252_safe (test_windows_console_safe.StatusRenderTests.test_backfill_pending_status_renders_cp1252_safe) ... ok\ntest_json_output_escapes_non_console_characters (test_windows_console_safe.WorkflowCliRenderTests.test_json_output_escapes_non_console_characters) ... ok\ntest_repository_workflow_surfaces_are_chml_zero (test_workflow_chml_audit.WorkflowChmlAuditTests.test_repository_workflow_surfaces_are_chml_zero) ... ok\ntest_semantic_skill_finding_is_part_of_workflow_chml (test_workflow_chml_audit.WorkflowChmlAuditTests.test_semantic_skill_finding_is_part_of_workflow_chml) ... ok\ntest_git_workflow_pushes_clean_verified_commits_in_autonomous (test_workflow_consistency.AutonomyConflictResolutionTests.test_git_workflow_pushes_clean_verified_commits_in_autonomous) ... ok\ntest_request_intake_defers_autonomy_and_owns_graduation (test_workflow_consistency.AutonomyConflictResolutionTests.test_request_intake_defers_autonomy_and_owns_graduation) ... ok\ntest_evidence_pair_states_create_vs_review_boundary (test_workflow_consistency.BoundaryClarityTests.test_evidence_pair_states_create_vs_review_boundary) ... ok\ntest_session_close_states_memory_boundary (test_workflow_consistency.BoundaryClarityTests.test_session_close_states_memory_boundary) ... ok\ntest_document_branch_has_promotion_owner (test_workflow_consistency.DeadEndOwnerTests.test_document_branch_has_promotion_owner) ... ok\ntest_health_findings_have_triage_dispositions (test_workflow_consistency.DeadEndOwnerTests.test_health_findings_have_triage_dispositions) ... ok\ntest_memory_owns_schema_version_changes (test_workflow_consistency.DeadEndOwnerTests.test_memory_owns_schema_version_changes) ... ok\ntest_planning_lifecycle_has_stage_readiness_checkpoints (test_workflow_consistency.DeadEndOwnerTests.test_planning_lifecycle_has_stage_readiness_checkpoints) ... ok\ntest_session_close_runs_traceability_sync (test_workflow_consistency.DeadEndOwnerTests.test_session_close_runs_traceability_sync) ... ok\n\n----------------------------------------------------------------------\nRan 1262 tests in 106.554s\n\nOK (skipped=1)\n"
          },
          "output_hash": "d3e1e7c46e01c5c39006a86876f718f0aa7d4bd0e10fd36dc7831544c9294a50",
          "completed_at": "2026-07-25T00:49:58Z"
        },
        {
          "id": "release",
          "action": "process.fixed",
          "status": "completed",
          "resolved_input_hash": "1e5b0c18d93eb4c2248f9a00adbd438e52f3ef02137477fb8376c69cfe86fc9b",
          "started_at": "2026-07-25T00:49:58Z",
          "output": {
            "operation": "release_check",
            "command": [
              "python",
              "scripts/release_check.py"
            ],
            "exit_code": 0,
            "stdout": "# Release Hygiene Report\n\nBase version: `0.16.53`\nHead version: `0.16.55`\nChanged files checked: 58\n\n## Findings\n\n- None\n",
            "stderr": ""
          },
          "output_hash": "9bf36efbd0af4d8a6f85058015d9f9da4b4e882c988dc691e16cbfd59fa7acc0",
          "completed_at": "2026-07-25T00:49:58Z"
        },
        {
          "id": "gaps",
          "action": "process.fixed",
          "status": "completed",
          "resolved_input_hash": "577241909238eeb55683f89d2d2216648dad2e3127397993e22493829a1307a4",
          "started_at": "2026-07-25T00:49:58Z",
          "output": {
            "operation": "gap_audit",
            "command": [
              "python",
              "scripts/gap_audit.py",
              "--target-version",
              "0.16.55",
              "--config",
              ".prd_plugin/config.json",
              "--releases",
              ".prd_plugin/state/releases.json"
            ],
            "exit_code": 0,
            "stdout": "# PRD Plugin Gap Audit\n\nTarget version: `0.16.55`\n\n## Findings\n\n- None\n",
            "stderr": ""
          },
          "output_hash": "d2edfc2575ed85d297f7767c4140d6893ddf931b426e627aa6c4142d51f5822e",
          "completed_at": "2026-07-25T00:49:59Z"
        },
        {
          "id": "package",
          "action": "process.fixed",
          "status": "completed",
          "resolved_input_hash": "06cd12e1f3db3d985f9150520afa60f288297ff0ca01a8e813e9bb6291aa8836",
          "started_at": "2026-07-25T00:49:59Z",
          "output": {
            "operation": "package_check",
            "command": [
              "npm",
              "pack",
              "--dry-run"
            ],
            "exit_code": 0,
            "stdout": "prd-plugin-0.16.55.tgz\n",
            "stderr": "te.md\nnpm notice 17.0kB templates/repo-skeleton/.agents/skills/project-llm-wiki/SKILL.md\nnpm notice 7.4kB templates/repo-skeleton/.agents/skills/project-local-integration/SKILL.md\nnpm notice 8.1kB templates/repo-skeleton/.agents/skills/project-memory/SKILL.md\nnpm notice 6.2kB templates/repo-skeleton/.agents/skills/project-planning-lifecycle/SKILL.md\nnpm notice 6.0kB templates/repo-skeleton/.agents/skills/project-prd-plugin-setup/SKILL.md\nnpm notice 3.5kB templates/repo-skeleton/.agents/skills/project-prd/SKILL.md\nnpm notice 27.5kB templates/repo-skeleton/.agents/skills/project-request-intake/SKILL.md\nnpm notice 4.8kB templates/repo-skeleton/.agents/skills/project-session-close/SKILL.md\nnpm notice 10.3kB templates/repo-skeleton/.agents/skills/project-systematic-debugging/SKILL.md\nnpm notice 4.8kB templates/repo-skeleton/.agents/skills/project-test-driven-implementation/SKILL.md\nnpm notice 3.7kB templates/repo-skeleton/.agents/skills/project-traceability-review/SKILL.md\nnpm notice 2.5kB templates/repo-skeleton/.agents/skills/project-traceability-sync/SKILL.md\nnpm notice 6.6kB templates/repo-skeleton/.agents/skills/project-verification-before-completion/SKILL.md\nnpm notice 1.5kB templates/repo-skeleton/.agents/skills/source-command-prd-autonomy/SKILL.md\nnpm notice 1.2kB templates/repo-skeleton/.agents/skills/source-command-prd-close/SKILL.md\nnpm notice 3.3kB templates/repo-skeleton/.agents/skills/source-command-prd-config/SKILL.md\nnpm notice 2.4kB templates/repo-skeleton/.agents/skills/source-command-prd-drift/SKILL.md\nnpm notice 2.1kB templates/repo-skeleton/.agents/skills/source-command-prd-graph/SKILL.md\nnpm notice 2.2kB templates/repo-skeleton/.agents/skills/source-command-prd-hooks/SKILL.md\nnpm notice 1.3kB templates/repo-skeleton/.agents/skills/source-command-prd-new/SKILL.md\nnpm notice 2.0kB templates/repo-skeleton/.agents/skills/source-command-prd-off/SKILL.md\nnpm notice 1.5kB templates/repo-skeleton/.agents/skills/source-command-prd-on/SKILL.md\nnpm notice 2.3kB templates/repo-skeleton/.agents/skills/source-command-prd-reflections/SKILL.md\nnpm notice 2.5kB templates/repo-skeleton/.agents/skills/source-command-prd-report/SKILL.md\nnpm notice 1.2kB templates/repo-skeleton/.agents/skills/source-command-prd-status/SKILL.md\nnpm notice 1.7kB templates/repo-skeleton/.agents/skills/source-command-prd-track/SKILL.md\nnpm notice 1.8kB templates/repo-skeleton/.agents/skills/source-command-prd-version/SKILL.md\nnpm notice 1.7kB templates/repo-skeleton/.agents/skills/source-command-prd-workflow/SKILL.md\nnpm notice 764B templates/repo-skeleton/.claude-plugin/plugin.json\nnpm notice 772B templates/repo-skeleton/.claude/commands/prd-autonomy.md\nnpm notice 493B templates/repo-skeleton/.claude/commands/prd-close.md\nnpm notice 2.5kB templates/repo-skeleton/.claude/commands/prd-config.md\nnpm notice 1.6kB templates/repo-skeleton/.claude/commands/prd-drift.md\nnpm notice 1.4kB templates/repo-skeleton/.claude/commands/prd-graph.md\nnpm notice 1.6kB templates/repo-skeleton/.claude/commands/prd-hooks.md\nnpm notice 639B templates/repo-skeleton/.claude/commands/prd-new.md\nnpm notice 1.4kB templates/repo-skeleton/.claude/commands/prd-off.md\nnpm notice 862B templates/repo-skeleton/.claude/commands/prd-on.md\nnpm notice 1.6kB templates/repo-skeleton/.claude/commands/prd-reflections.md\nnpm notice 1.8kB templates/repo-skeleton/.claude/commands/prd-report.md\nnpm notice 549B templates/repo-skeleton/.claude/commands/prd-status.md\nnpm notice 974B templates/repo-skeleton/.claude/commands/prd-track.md\nnpm notice 1.0kB templates/repo-skeleton/.claude/commands/prd-version.md\nnpm notice 938B templates/repo-skeleton/.claude/commands/prd-workflow.md\nnpm notice 1.6kB templates/repo-skeleton/.claude/hooks/prd_drift_check.py\nnpm notice 2.0kB templates/repo-skeleton/.claude/hooks/prd_log_skill.py\nnpm notice 4.1kB templates/repo-skeleton/.claude/hooks/prd_nudge.py\nnpm notice 3.7kB templates/repo-skeleton/.claude/hooks/prd_precommit_gate.py\nnpm notice 6.1kB templates/repo-skeleton/.claude/hooks/prd_reflection.py\nnpm notice 3.5kB templates/repo-skeleton/.claude/hooks/prd_session_report.py\nnpm notice 15.8kB templates/repo-skeleton/.claude/hooks/prd_stop_guard.py\nnpm notice 1.2kB templates/repo-skeleton/.claude/settings.json\nnpm notice 3.0kB templates/repo-skeleton/.claude/skills/project-architecture/SKILL.md\nnpm notice 7.4kB templates/repo-skeleton/.claude/skills/project-blocker-resolution/SKILL.md\nnpm notice 2.8kB templates/repo-skeleton/.claude/skills/project-brainstorm/SKILL.md\nnpm notice 5.5kB templates/repo-skeleton/.claude/skills/project-change-request/SKILL.md\nnpm notice 6.3kB templates/repo-skeleton/.claude/skills/project-code-review/SKILL.md\nnpm notice 2.7kB templates/repo-skeleton/.claude/skills/project-decision-ledger/SKILL.md\nnpm notice 23.6kB templates/repo-skeleton/.claude/skills/project-decision-policy/SKILL.md\nnpm notice 4.4kB templates/repo-skeleton/.claude/skills/project-deterministic-workflows/SKILL.md\nnpm notice 5.2kB templates/repo-skeleton/.claude/skills/project-document-branch/SKILL.md\nnpm notice 2.8kB templates/repo-skeleton/.claude/skills/project-evidence-ledger/SKILL.md\nnpm notice 3.3kB templates/repo-skeleton/.claude/skills/project-evidence/SKILL.md\nnpm notice 11.9kB templates/repo-skeleton/.claude/skills/project-git-workflow/SKILL.md\nnpm notice 7.4kB templates/repo-skeleton/.claude/skills/project-health/SKILL.md\nnpm notice 6.0kB templates/repo-skeleton/.claude/skills/project-implementation-plan/SKILL.md\nnpm notice 1.1kB templates/repo-skeleton/.claude/skills/project-llm-wiki/LICENSE\nnpm notice 842B templates/repo-skeleton/.claude/skills/project-llm-wiki/references/archive-template.md\nnpm notice 843B templates/repo-skeleton/.claude/skills/project-llm-wiki/references/article-template.md\nnpm notice 559B templates/repo-skeleton/.claude/skills/project-llm-wiki/references/index-template.md\nnpm notice 317B templates/repo-skeleton/.claude/skills/project-llm-wiki/references/raw-template.md\nnpm notice 17.0kB templates/repo-skeleton/.claude/skills/project-llm-wiki/SKILL.md\nnpm notice 7.4kB templates/repo-skeleton/.claude/skills/project-local-integration/SKILL.md\nnpm notice 8.1kB templates/repo-skeleton/.claude/skills/project-memory/SKILL.md\nnpm notice 6.2kB templates/repo-skeleton/.claude/skills/project-planning-lifecycle/SKILL.md\nnpm notice 6.0kB templates/repo-skeleton/.claude/skills/project-prd-plugin-setup/SKILL.md\nnpm notice 3.5kB templates/repo-skeleton/.claude/skills/project-prd/SKILL.md\nnpm notice 27.5kB templates/repo-skeleton/.claude/skills/project-request-intake/SKILL.md\nnpm notice 4.8kB templates/repo-skeleton/.claude/skills/project-session-close/SKILL.md\nnpm notice 10.3kB templates/repo-skeleton/.claude/skills/project-systematic-debugging/SKILL.md\nnpm notice 4.8kB templates/repo-skeleton/.claude/skills/project-test-driven-implementation/SKILL.md\nnpm notice 3.7kB templates/repo-skeleton/.claude/skills/project-traceability-review/SKILL.md\nnpm notice 2.5kB templates/repo-skeleton/.claude/skills/project-traceability-sync/SKILL.md\nnpm notice 6.6kB templates/repo-skeleton/.claude/skills/project-verification-before-completion/SKILL.md\nnpm notice 1.5kB templates/repo-skeleton/.claude/skills/source-command-prd-autonomy/SKILL.md\nnpm notice 1.2kB templates/repo-skeleton/.claude/skills/source-command-prd-close/SKILL.md\nnpm notice 3.3kB templates/repo-skeleton/.claude/skills/source-command-prd-config/SKILL.md\nnpm notice 2.4kB templates/repo-skeleton/.claude/skills/source-command-prd-drift/SKILL.md\nnpm notice 2.1kB templates/repo-skeleton/.claude/skills/source-command-prd-graph/SKILL.md\nnpm notice 2.2kB templates/repo-skeleton/.claude/skills/source-command-prd-hooks/SKILL.md\nnpm notice 1.3kB templates/repo-skeleton/.claude/skills/source-command-prd-new/SKILL.md\nnpm notice 2.0kB templates/repo-skeleton/.claude/skills/source-command-prd-off/SKILL.md\nnpm notice 1.5kB templates/repo-skeleton/.claude/skills/source-command-prd-on/SKILL.md\nnpm notice 2.3kB templates/repo-skeleton/.claude/skills/source-command-prd-reflections/SKILL.md\nnpm notice 2.5kB templates/repo-skeleton/.claude/skills/source-command-prd-report/SKILL.md\nnpm notice 1.2kB templates/repo-skeleton/.claude/skills/source-command-prd-status/SKILL.md\nnpm notice 1.7kB templates/repo-skeleton/.claude/skills/source-command-prd-track/SKILL.md\nnpm notice 1.8kB templates/repo-skeleton/.claude/skills/source-command-prd-version/SKILL.md\nnpm notice 1.7kB templates/repo-skeleton/.claude/skills/source-command-prd-workflow/SKILL.md\nnpm notice 3.2kB templates/repo-skeleton/.codex-plugin/plugin.json\nnpm notice 3.3kB templates/repo-skeleton/.codex/hooks.json\nnpm notice 743B templates/repo-skeleton/.githooks/pre-commit\nnpm notice 734B templates/repo-skeleton/.github/workflows/prd-gate.yml\nnpm notice 3.2kB templates/repo-skeleton/.opencode/plugin.json\nnpm notice 4.4kB templates/repo-skeleton/.opencode/plugins/prd-hooks.js\nnpm notice 3.0kB templates/repo-skeleton/.opencode/skill/project-architecture/SKILL.md\nnpm notice 7.4kB templates/repo-skeleton/.opencode/skill/project-blocker-resolution/SKILL.md\nnpm notice 2.8kB templates/repo-skeleton/.opencode/skill/project-brainstorm/SKILL.md\nnpm notice 5.5kB templates/repo-skeleton/.opencode/skill/project-change-request/SKILL.md\nnpm notice 6.3kB templates/repo-skeleton/.opencode/skill/project-code-review/SKILL.md\nnpm notice 2.7kB templates/repo-skeleton/.opencode/skill/project-decision-ledger/SKILL.md\nnpm notice 23.6kB templates/repo-skeleton/.opencode/skill/project-decision-policy/SKILL.md\nnpm notice 4.4kB templates/repo-skeleton/.opencode/skill/project-deterministic-workflows/SKILL.md\nnpm notice 5.2kB templates/repo-skeleton/.opencode/skill/project-document-branch/SKILL.md\nnpm notice 2.8kB templates/repo-skeleton/.opencode/skill/project-evidence-ledger/SKILL.md\nnpm notice 3.3kB templates/repo-skeleton/.opencode/skill/project-evidence/SKILL.md\nnpm notice 11.9kB templates/repo-skeleton/.opencode/skill/project-git-workflow/SKILL.md\nnpm notice 7.4kB templates/repo-skeleton/.opencode/skill/project-health/SKILL.md\nnpm notice 6.0kB templates/repo-skeleton/.opencode/skill/project-implementation-plan/SKILL.md\nnpm notice 1.1kB templates/repo-skeleton/.opencode/skill/project-llm-wiki/LICENSE\nnpm notice 842B templates/repo-skeleton/.opencode/skill/project-llm-wiki/references/archive-template.md\nnpm notice 843B templates/repo-skeleton/.opencode/skill/project-llm-wiki/references/article-template.md\nnpm notice 559B templates/repo-skeleton/.opencode/skill/project-llm-wiki/references/index-template.md\nnpm notice 317B templates/repo-skeleton/.opencode/skill/project-llm-wiki/references/raw-template.md\nnpm notice 17.0kB templates/repo-skeleton/.opencode/skill/project-llm-wiki/SKILL.md\nnpm notice 7.4kB templates/repo-skeleton/.opencode/skill/project-local-integration/SKILL.md\nnpm notice 8.1kB templates/repo-skeleton/.opencode/skill/project-memory/SKILL.md\nnpm notice 6.2kB templates/repo-skeleton/.opencode/skill/project-planning-lifecycle/SKILL.md\nnpm notice 6.0kB templates/repo-skeleton/.opencode/skill/project-prd-plugin-setup/SKILL.md\nnpm notice 3.5kB templates/repo-skeleton/.opencode/skill/project-prd/SKILL.md\nnpm notice 27.5kB templates/repo-skeleton/.opencode/skill/project-request-intake/SKILL.md\nnpm notice 4.8kB templates/repo-skeleton/.opencode/skill/project-session-close/SKILL.md\nnpm notice 10.3kB templates/repo-skeleton/.opencode/skill/project-systematic-debugging/SKILL.md\nnpm notice 4.8kB templates/repo-skeleton/.opencode/skill/project-test-driven-implementation/SKILL.md\nnpm notice 3.7kB templates/repo-skeleton/.opencode/skill/project-traceability-review/SKILL.md\nnpm notice 2.5kB templates/repo-skeleton/.opencode/skill/project-traceability-sync/SKILL.md\nnpm notice 6.6kB templates/repo-skeleton/.opencode/skill/project-verification-before-completion/SKILL.md\nnpm notice 1.5kB templates/repo-skeleton/.opencode/skill/source-command-prd-autonomy/SKILL.md\nnpm notice 1.2kB templates/repo-skeleton/.opencode/skill/source-command-prd-close/SKILL.md\nnpm notice 3.3kB templates/repo-skeleton/.opencode/skill/source-command-prd-config/SKILL.md\nnpm notice 2.4kB templates/repo-skeleton/.opencode/skill/source-command-prd-drift/SKILL.md\nnpm notice 2.1kB templates/repo-skeleton/.opencode/skill/source-command-prd-graph/SKILL.md\nnpm notice 2.2kB templates/repo-skeleton/.opencode/skill/source-command-prd-hooks/SKILL.md\nnpm notice 1.3kB templates/repo-skeleton/.opencode/skill/source-command-prd-new/SKILL.md\nnpm notice 2.0kB templates/repo-skeleton/.opencode/skill/source-command-prd-off/SKILL.md\nnpm notice 1.5kB templates/repo-skeleton/.opencode/skill/source-command-prd-on/SKILL.md\nnpm notice 2.3kB templates/repo-skeleton/.opencode/skill/source-command-prd-reflections/SKILL.md\nnpm notice 2.5kB templates/repo-skeleton/.opencode/skill/source-command-prd-report/SKILL.md\nnpm notice 1.2kB templates/repo-skeleton/.opencode/skill/source-command-prd-status/SKILL.md\nnpm notice 1.7kB templates/repo-skeleton/.opencode/skill/source-command-prd-track/SKILL.md\nnpm notice 1.8kB templates/repo-skeleton/.opencode/skill/source-command-prd-version/SKILL.md\nnpm notice 1.7kB templates/repo-skeleton/.opencode/skill/source-command-prd-workflow/SKILL.md\nnpm notice 14.9kB templates/repo-skeleton/.prd_plugin/config.json\nnpm notice 1.6kB templates/repo-skeleton/.prd_plugin/hooks/prd_drift_check.py\nnpm notice 12.0kB templates/repo-skeleton/.prd_plugin/hooks/prd_hook_dispatch.py\nnpm notice 2.0kB templates/repo-skeleton/.prd_plugin/hooks/prd_log_skill.py\nnpm notice 4.1kB templates/repo-skeleton/.prd_plugin/hooks/prd_nudge.py\nnpm notice 3.7kB templates/repo-skeleton/.prd_plugin/hooks/prd_precommit_gate.py\nnpm notice 62.0kB templates/repo-skeleton/.prd_plugin/hooks/prd_reason_guard.py\nnpm notice 6.1kB templates/repo-skeleton/.prd_plugin/hooks/prd_reflection.py\nnpm notice 3.5kB templates/repo-skeleton/.prd_plugin/hooks/prd_session_report.py\nnpm notice 15.8kB templates/repo-skeleton/.prd_plugin/hooks/prd_stop_guard.py\nnpm notice 8.0kB templates/repo-skeleton/.prd_plugin/hooks/prd_test_scope_guard.py\nnpm notice 3.7kB templates/repo-skeleton/.prd_plugin/ID-SCHEME.md\nnpm notice 581B templates/repo-skeleton/.prd_plugin/ids/registry.json\nnpm notice 12.9kB templates/repo-skeleton/.prd_plugin/METHOD.md\nnpm notice 725B templates/repo-skeleton/.prd_plugin/method/artifact-format.md\nnpm notice 1.5kB templates/repo-skeleton/.prd_plugin/method/completion-gate.md\nnpm notice 3.6kB templates/repo-skeleton/.prd_plugin/method/deterministic-workflows.md\nnpm notice 1.2kB templates/repo-skeleton/.prd_plugin/method/estimation.md\nnpm notice 2.2kB templates/repo-skeleton/.prd_plugin/method/grounding.md\nnpm notice 3.2kB templates/repo-skeleton/.prd_plugin/method/reporting.md\nnpm notice 4.1kB templates/repo-skeleton/.prd_plugin/method/self-service.md\nnpm notice 1.6kB templates/repo-skeleton/.prd_plugin/method/staleness-rules.md\nnpm notice 1.0kB templates/repo-skeleton/.prd_plugin/method/state-validation.md\nnpm notice 3.0kB templates/repo-skeleton/.prd_plugin/method/subagents.md\nnpm notice 1.3kB templates/repo-skeleton/.prd_plugin/services.json\nnpm notice 51B templates/repo-skeleton/.prd_plugin/state/changelog.json\nnpm notice 53B templates/repo-skeleton/.prd_plugin/state/decisions.json\nnpm notice 165B templates/repo-skeleton/.prd_plugin/state/health.json\nnpm notice 51B templates/repo-skeleton/.prd_plugin/state/memory.json\nnpm notice 287B templates/repo-skeleton/.prd_plugin/state/project.json\nnpm notice 52B templates/repo-skeleton/.prd_plugin/state/releases.json\nnpm notice 52B templates/repo-skeleton/.prd_plugin/state/requests.json\nnpm notice 215B templates/repo-skeleton/.prd_plugin/state/sessions/shared/promoted-session-summaries.jsonl\nnpm notice 49B templates/repo-skeleton/.prd_plugin/state/substrate-links.json\nnpm notice 51B templates/repo-skeleton/.prd_plugin/state/tracking.json\nnpm notice 48B templates/repo-skeleton/.prd_plugin/state/workflow-runs.json\nnpm notice 180B templates/repo-skeleton/.prd_plugin/templates/architecture-delta.md\nnpm notice 1.5kB templates/repo-skeleton/.prd_plugin/templates/architecture.json\nnpm notice 396B templates/repo-skeleton/.prd_plugin/templates/brainstorm.md\nnpm notice 274B templates/repo-skeleton/.prd_plugin/templates/changelog.json\nnpm notice 15.0kB templates/repo-skeleton/.prd_plugin/templates/config.json\nnpm notice 265B templates/repo-skeleton/.prd_plugin/templates/decision-record.md\nnpm notice 398B templates/repo-skeleton/.prd_plugin/templates/decisions.json\nnpm notice 372B templates/repo-skeleton/.prd_plugin/templates/doc-branch.json\nnpm notice 343B templates/repo-skeleton/.prd_plugin/templates/doc-branch.md\nnpm notice 129B templates/repo-skeleton/.prd_plugin/templates/evidence.md\nnpm notice 262B templates/repo-skeleton/.prd_plugin/templates/handoff.json\nnpm notice 427B templates/repo-skeleton/.prd_plugin/templates/health.json\nnpm notice 729B templates/repo-skeleton/.prd_plugin/templates/human-exports/architecture.md\nnpm notice 652B templates/repo-skeleton/.prd_plugin/templates/human-exports/implementation-plan.md\nnpm notice 610B templates/repo-skeleton/.prd_plugin/templates/human-exports/prd.md\nnpm notice 1.5kB templates/repo-skeleton/.prd_plugin/templates/implementation-plan.json\nnpm notice 70B templates/repo-skeleton/.prd_plugin/templates/mailbox.json\nnpm notice 365B templates/repo-skeleton/.prd_plugin/templates/memory.json\nnpm notice 490B templates/repo-skeleton/.prd_plugin/templates/merge-checklist.md\nnpm notice 176B templates/repo-skeleton/.prd_plugin/templates/plan-delta.md\nnpm notice 152B templates/repo-skeleton/.prd_plugin/templates/prd-delta.md\nnpm notice 1.4kB templates/repo-skeleton/.prd_plugin/templates/prd.json\nnpm notice 455B templates/repo-skeleton/.prd_plugin/templates/project.json\nnpm notice 126B templates/repo-skeleton/.prd_plugin/templates/promoted-session-summary.jsonl\nnpm notice 923B templates/repo-skeleton/.prd_plugin/templates/releases.json\nnpm notice 1.4kB templates/repo-skeleton/.prd_plugin/templates/request.json\nnpm notice 1.7kB templates/repo-skeleton/.prd_plugin/templates/requests.json\nnpm notice 23.4kB templates/repo-skeleton/.prd_plugin/templates/script-install-scope.json\nnpm notice 247B templates/repo-skeleton/.prd_plugin/templates/session.json\nnpm notice 15.6kB templates/repo-skeleton/.prd_plugin/templates/skill-install-scope.json\nnpm notice 333B templates/repo-skeleton/.prd_plugin/templates/submission-package.json\nnpm notice 5.7kB templates/repo-skeleton/.prd_plugin/templates/tool-surface.json\nnpm notice 230B templates/repo-skeleton/.prd_plugin/templates/traceability-matrix.md\nnpm notice 321B templates/repo-skeleton/.prd_plugin/templates/tracking.json\nnpm notice 375B templates/repo-skeleton/.prd_plugin/templates/utcp-config.json\nnpm notice 22.2kB templates/repo-skeleton/.prd_plugin/workflows.json\nnpm notice 15.2kB templates/repo-skeleton/AGENTS.md\nnpm notice 11.6kB templates/repo-skeleton/CLAUDE.md\nnpm notice 12.0kB templates/repo-skeleton/docs/INSTALL-MATRIX.md\nnpm notice 2.7kB templates/repo-skeleton/hooks/hooks.json\nnpm notice 1.4kB templates/request.json\nnpm notice 1.7kB templates/requests.json\nnpm notice 23.4kB templates/script-install-scope.json\nnpm notice 1.3kB templates/services.json\nnpm notice 247B templates/session.json\nnpm notice 15.6kB templates/skill-install-scope.json\nnpm notice 333B templates/submission-package.json\nnpm notice 10.4kB templates/substrate-capabilities.json\nnpm notice 48.5kB templates/tool-spec.json\nnpm notice 7.9kB templates/tool-surface.json\nnpm notice 230B templates/traceability-matrix.md\nnpm notice 321B templates/tracking.json\nnpm notice 375B templates/utcp-config.json\nnpm notice 22.2kB templates/workflows.json\nnpm notice Tarball Details\nnpm notice name: prd-plugin\nnpm notice version: 0.16.55\nnpm notice filename: prd-plugin-0.16.55.tgz\nnpm notice package size: 1.7 MB\nnpm notice unpacked size: 10.8 MB\nnpm notice shasum: 69b9e62debf2b28c8e0df8eb7458ebce15963e06\nnpm notice integrity: sha512-DqA9IemOVGdbH[...]8lpV097CNlTUQ==\nnpm notice total files: 649\nnpm notice\n"
          },
          "output_hash": "511d17a8708d6e541babd37dc591812c19df0cfb05e7cd38c52458f3e989eb4b",
          "completed_at": "2026-07-25T00:50:01Z"
        },
        {
          "id": "gate",
          "action": "state.gate",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-25T00:50:01Z",
          "output": {
            "status": "attention",
            "repo_root": "D:\\Projects\\prd-plugin-worktrees\\codex-reasoning-summary-session-fallback",
            "summary": {
              "errors": 0,
              "warnings": 0
            },
            "findings": [
              {
                "check": "state_consistency",
                "severity": "info",
                "summary": "File references 2 canonical IDs across 2 prefix(es); treated as a positive signal of extra work.",
                "required_action": "No action required; this is an informational signal."
              }
            ]
          },
          "output_hash": "af95f5508bef069fc3c46ffe3a052eeba9fa5c6bfadc00da8d536a21484deebe",
          "completed_at": "2026-07-25T00:50:01Z"
        }
      ],
      "completed_at": "2026-07-25T00:50:01Z"
    },
    {
      "id": "WFR-418",
      "schema_version": "1.0",
      "workflow_id": "session.start",
      "workflow_version": 1,
      "definition_hash": "dd0de9444af7b094cc93673d0844fb78c801d87d978cc5f6dd6bf3e3e863917d",
      "plan_hash": "1f4ae0cd6be8385f8a9310e49978bd8d93baa729842eb6df9243665a1b581277",
      "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
      "inputs": {},
      "idempotency_key": "codex-reason-guard-semantic-lite-session-start-v1",
      "status": "completed",
      "attempt": 1,
      "created_at": "2026-07-25T01:55:16Z",
      "updated_at": "2026-07-25T01:55:18Z",
      "receipts": [
        {
          "step_id": "mailbox",
          "action": "requests.pull",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "ab8a35139cfd3f5821ebc5138c9a44c899b54e4036790654ff120e79c7ab6223",
          "completed_at": "2026-07-25T01:55:16Z"
        },
        {
          "step_id": "config",
          "action": "config.audit",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "ef2327bf3ea9c100a1a525c09e426de9703016f1b7c177b0df10c0b7cf3f33c9",
          "completed_at": "2026-07-25T01:55:16Z"
        },
        {
          "step_id": "services",
          "action": "services.audit",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "13dcc58bd528f3efa3e6e0fa0853a6eedc376f1f3685fbd4869cbb2b60382ee3",
          "completed_at": "2026-07-25T01:55:16Z"
        },
        {
          "step_id": "state",
          "action": "state.consistency",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "7bd004636e5a786f64604d8cc821f23845cc7f69b783a6392c588759f368f587",
          "completed_at": "2026-07-25T01:55:17Z"
        },
        {
          "step_id": "status",
          "action": "state.query",
          "input_hash": "a15231a2142a2a9a85355a8b9cbbccffe01a9c9c2c2fd8c2bc2987cdc481564a",
          "output_hash": "86f77533a800ac302d406ed5b8fc5c24f0ba1ae444e57222a55ce48700523de5",
          "completed_at": "2026-07-25T01:55:17Z"
        },
        {
          "step_id": "substrate",
          "action": "substrate.preflight",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "a6df426290b4549a59eecaa0519ead9bcc50b7fcb25bd2185ff6047960f19ccb",
          "completed_at": "2026-07-25T01:55:17Z"
        },
        {
          "step_id": "notices",
          "action": "substrate.notices",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "38b904a1cf83df048360fb2480571b749fd98d57e11f1afdffb5a74a78166fea",
          "completed_at": "2026-07-25T01:55:18Z"
        },
        {
          "step_id": "goals",
          "action": "substrate.goals",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "cdfd4de44a28140e686159f34f7b47975954c67e1d1efcef666e985acb136ed8",
          "completed_at": "2026-07-25T01:55:18Z"
        }
      ],
      "steps": [
        {
          "id": "mailbox",
          "action": "requests.pull",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-25T01:55:16Z",
          "output": {
            "applied": 0,
            "resolved_ids": [],
            "unmatched": [],
            "mailboxes": [],
            "pruned_outbox": [],
            "consumed_mailboxes": [],
            "outbound": {
              "delivered": 0,
              "mailboxes_published": [],
              "undeliverable": [],
              "pending": []
            },
            "addressed": {
              "delivered": 0,
              "destinations": [],
              "undelivered": [
                {
                  "id": "REQ-030",
                  "state": "not_ours_to_send",
                  "target_repo": "prd-plugin",
                  "reason": "REQ-030 was imported from 'ZeusGrid'; its target_repo records who it was addressed to, not somewhere for us to send it. Reply on its thread instead."
                },
                {
                  "id": "REQ-003",
                  "state": "not_ours_to_send",
                  "target_repo": "prd-plugin",
                  "reason": "REQ-003 was imported from 'ZeusGrid'; its target_repo records who it was addressed to, not somewhere for us to send it. Reply on its thread instead."
                },
                {
                  "id": "REQ-004",
                  "state": "not_ours_to_send",
                  "target_repo": "prd-plugin",
                  "reason": "REQ-004 was imported from 'ZeusGrid'; its target_repo records who it was addressed to, not somewhere for us to send it. Reply on its thread instead."
                },
                {
                  "id": "REQ-005",
                  "state": "not_ours_to_send",
                  "target_repo": "prd-plugin",
                  "reason": "REQ-005 was imported from 'GRAPH_LANG'; its target_repo records who it was addressed to, not somewhere for us to send it. Reply on its thread instead."
                },
                {
                  "id": "REQ-002",
                  "state": "self_addressed",
                  "target_repo": "prd-plugin",
                  "reason": "REQ-002 is addressed to this repo ('prd-plugin'); it is already here."
                },
                {
                  "id": "REQ-028",
                  "state": "self_addressed",
                  "target_repo": "prd-plugin",
                  "reason": "REQ-028 is addressed to this repo ('prd-plugin'); it is already here."
                },
                {
                  "id": "REQ-029",
                  "state": "not_ours_to_send",
                  "target_repo": "ai-collab-v3",
                  "reason": "REQ-029 was imported from 'ai-collab-v3'; its target_repo records who it was addressed to, not somewhere for us to send it. Reply on its thread instead."
                },
                {
                  "id": "REQ-138",
                  "state": "terminal",
                  "target_repo": "no-such-repo",
                  "reason": "REQ-138 is 'rejected'; a closed request is not delivered. Reopen it or file a new one if it still needs to travel."
                }
              ],
              "advisories": []
            }
          },
          "output_hash": "ab8a35139cfd3f5821ebc5138c9a44c899b54e4036790654ff120e79c7ab6223",
          "completed_at": "2026-07-25T01:55:16Z"
        },
        {
          "id": "config",
          "action": "config.audit",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-25T01:55:16Z",
          "output": {
            "status": "ok",
            "summary": {
              "settings": 214,
              "mutable": 204,
              "read_only_or_managed": 10,
              "unclassified": 0,
              "unknown": 0,
              "invalid": 0,
              "missing_using_defaults": 0
            },
            "unclassified_keys": [],
            "unknown_keys": [],
            "invalid_values": [],
            "missing_using_defaults": []
          },
          "output_hash": "ef2327bf3ea9c100a1a525c09e426de9703016f1b7c177b0df10c0b7cf3f33c9",
          "completed_at": "2026-07-25T01:55:16Z"
        },
        {
          "id": "services",
          "action": "services.audit",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-25T01:55:16Z",
          "output": {
            "status": "ok",
            "summary": {
              "critical": 0,
              "high": 0,
              "medium": 0,
              "low": 0
            },
            "findings": []
          },
          "output_hash": "13dcc58bd528f3efa3e6e0fa0853a6eedc376f1f3685fbd4869cbb2b60382ee3",
          "completed_at": "2026-07-25T01:55:16Z"
        },
        {
          "id": "state",
          "action": "state.consistency",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-25T01:55:17Z",
          "output": {
            "status": "ok",
            "repo_root": "D:\\Projects\\prd-plugin-worktrees\\codex-reasoning-summary-session-fallback",
            "summary": {
              "errors": 0,
              "warnings": 0,
              "infos": 1
            },
            "findings": [
              {
                "id": "CONS-INFO-001",
                "severity": "info",
                "path": "docs/evidence/EV-200.md",
                "summary": "File references 2 canonical IDs across 2 prefix(es); treated as a positive signal of extra work.",
                "referenced_prefixes": [
                  "CHG",
                  "TRK"
                ],
                "referenced_id_count": 2,
                "required_action": "No action required; this is an informational signal."
              }
            ]
          },
          "output_hash": "7bd004636e5a786f64604d8cc821f23845cc7f69b783a6392c588759f368f587",
          "completed_at": "2026-07-25T01:55:17Z"
        },
        {
          "id": "status",
          "action": "state.query",
          "status": "completed",
          "resolved_input_hash": "a15231a2142a2a9a85355a8b9cbbccffe01a9c9c2c2fd8c2bc2987cdc481564a",
          "started_at": "2026-07-25T01:55:17Z",
          "output": {
            "repo_root": "D:\\Projects\\prd-plugin-worktrees\\codex-reasoning-summary-session-fallback",
            "autonomy_level": "autonomous",
            "reasoning_guard": {
              "mode": "report",
              "categories": {
                "evidence_follow_through": "inherit",
                "causal_claims": "inherit",
                "permanent_mutations": "inherit",
                "completion_claims": "inherit"
              },
              "effective_modes": {
                "evidence_follow_through": "report",
                "causal_claims": "report",
                "permanent_mutations": "report",
                "completion_claims": "report"
              },
              "report_available": false,
              "coverage": {},
              "summary": {
                "open": 0,
                "deferred": 0,
                "violations": 0,
                "blocked": 0
              },
              "latency": {
                "samples_ms": [],
                "p50_ms": 0,
                "p95_ms": 0
              },
              "clearance": {}
            },
            "requests_by_status": {
              "accepted": 2,
              "deferred": 1,
              "implemented": 143,
              "in_review": 2,
              "proposed": 4,
              "rejected": 3
            },
            "active_tracking": [
              "TRK-160"
            ],
            "tracking_branches": [],
            "tracking_branch_counts": {},
            "tracking_branch_errors": [],
            "open_health": [
              "HLT-020",
              "HLT-021",
              "HLT-022",
              "HLT-023"
            ],
            "stale_count": 0,
            "skill_usage": {},
            "wiki_backfill_pending": false,
            "wiki_ingest_drift": null,
            "version_update": null
          },
          "output_hash": "86f77533a800ac302d406ed5b8fc5c24f0ba1ae444e57222a55ce48700523de5",
          "completed_at": "2026-07-25T01:55:17Z"
        },
        {
          "id": "substrate",
          "action": "substrate.preflight",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-25T01:55:17Z",
          "output": {
            "status": "disabled",
            "services": {
              "status": "ok",
              "summary": {
                "critical": 0,
                "high": 0,
                "medium": 0,
                "low": 0
              },
              "findings": []
            },
            "policy": {
              "configured": {
                "enabled": false,
                "mode": "off",
                "capabilities": [
                  "records",
                  "graph",
                  "events"
                ],
                "contract_version": 2,
                "require_source_refs": true,
                "endpoint": "http://127.0.0.1:47124",
                "manual_url": "http://127.0.0.1:47124/utcp.json",
                "knowledge_browse_url": "http://127.0.0.1:5276",
                "auth_env": "AI_COLLAB_API_KEY",
                "timeout_seconds": 5,
                "max_result_bytes": 1048576,
                "cache_ttl_seconds": 60,
                "fallback": "local",
                "automation": {
                  "discovery_on_session_start": true,
                  "knowledge_recall": true,
                  "memory_recall": true,
                  "context_enrichment": true,
                  "notices_on_session_start": false,
                  "goals_sync": false,
                  "telemetry_on_maintenance": false,
                  "reporting_dispatch": true,
                  "judgment_dispatch": true,
                  "verification_execution": true
                }
              },
              "active": false,
              "effective_mode": "off",
              "effective_capabilities": []
            }
          },
          "output_hash": "a6df426290b4549a59eecaa0519ead9bcc50b7fcb25bd2185ff6047960f19ccb",
          "completed_at": "2026-07-25T01:55:17Z"
        },
        {
          "id": "notices",
          "action": "substrate.notices",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-25T01:55:17Z",
          "output": {
            "status": "disabled"
          },
          "output_hash": "38b904a1cf83df048360fb2480571b749fd98d57e11f1afdffb5a74a78166fea",
          "completed_at": "2026-07-25T01:55:18Z"
        },
        {
          "id": "goals",
          "action": "substrate.goals",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-25T01:55:18Z",
          "output": {
            "status": "disabled",
            "created": 0,
            "observed": 0,
            "results": []
          },
          "output_hash": "cdfd4de44a28140e686159f34f7b47975954c67e1d1efcef666e985acb136ed8",
          "completed_at": "2026-07-25T01:55:18Z"
        }
      ],
      "completed_at": "2026-07-25T01:55:18Z"
    },
    {
      "id": "WFR-419",
      "schema_version": "1.0",
      "workflow_id": "request.intake",
      "workflow_version": 1,
      "definition_hash": "b61272f54c5d4778a27afe601feaae39057f75fac2c289858b6caf5f3b2a4fbe",
      "plan_hash": "8c6c10c8b5def93723723b548f95706905cb1bcb503a628d4a07e84b4bd43b44",
      "input_hash": "8193d49b0fad15407504dccda5ea8d03bf7f1cbe7afb3c4b857a5edd20e9360b",
      "inputs": {
        "summary": "Reason Guard misses consequential visible-summary cues and can report clear despite unresolved investigations",
        "request_type": "bug",
        "severity": "medium",
        "scope": "upstream",
        "rationale": "Add the smallest deterministic semantic-lite normalization and state correlation plus privacy-safe replay telemetry. Fail fast before any model embeddings RAG daemon or GPU dependency.",
        "affected_areas": [
          ".prd_plugin/hooks/prd_reason_guard.py",
          "tests/test_reason_guard.py",
          "docs/REASONING-GUARD.md"
        ],
        "expected_behavior": "Visible summary forms are classified consistently; consequential candidates remain report-only unless explicitly structured; clearance never says clear when assessment is incomplete; replay telemetry quantifies accuracy and runtime cost without storing summary text."
      },
      "idempotency_key": "codex-reason-guard-semantic-lite-request-v1",
      "status": "completed",
      "attempt": 1,
      "created_at": "2026-07-25T01:57:03Z",
      "updated_at": "2026-07-25T01:57:04Z",
      "receipts": [
        {
          "step_id": "create",
          "action": "state.mutate",
          "input_hash": "0e8ea124b7895325bc14ad1304bde68d5f599b4142aaf8d7619d35db3eeda266",
          "output_hash": "a49a707ec85c9e4321aef0d1bfe21c541cfea8abc8783fb65e0dfe1af2acb889",
          "completed_at": "2026-07-25T01:57:04Z"
        },
        {
          "step_id": "confirm",
          "action": "state.query",
          "input_hash": "56e2226a97f3af71a2422aadf59a7dae024dda0b1d8d2c8091ca94f7960e974a",
          "output_hash": "34e85d59ed373c4c2604c8a71dd92499b47c4929bc8c173bcf047e1ed24cbcd8",
          "completed_at": "2026-07-25T01:57:04Z"
        }
      ],
      "steps": [
        {
          "id": "create",
          "action": "state.mutate",
          "status": "completed",
          "resolved_input_hash": "0e8ea124b7895325bc14ad1304bde68d5f599b4142aaf8d7619d35db3eeda266",
          "started_at": "2026-07-25T01:57:03Z",
          "execution_token": "f05148e456a8770a209dbbece60a397248b21698591adb47584b7acbd303889b",
          "output": {
            "id": "REQ-174",
            "status": "proposed"
          },
          "output_hash": "a49a707ec85c9e4321aef0d1bfe21c541cfea8abc8783fb65e0dfe1af2acb889",
          "completed_at": "2026-07-25T01:57:04Z"
        },
        {
          "id": "confirm",
          "action": "state.query",
          "status": "completed",
          "resolved_input_hash": "56e2226a97f3af71a2422aadf59a7dae024dda0b1d8d2c8091ca94f7960e974a",
          "started_at": "2026-07-25T01:57:04Z",
          "output": {
            "kind": "REQ",
            "record": {
              "id": "REQ-174",
              "status": "proposed",
              "request_type": "bug",
              "scope": "upstream",
              "visibility": "repo",
              "summary": "Reason Guard misses consequential visible-summary cues and can report clear despite unresolved investigations",
              "severity": "medium",
              "requested_by_agent": "AGENT-MCP",
              "created_at": "2026-07-25",
              "rationale": "Add the smallest deterministic semantic-lite normalization and state correlation plus privacy-safe replay telemetry. Fail fast before any model embeddings RAG daemon or GPU dependency.",
              "affected_areas": [
                ".prd_plugin/hooks/prd_reason_guard.py",
                "tests/test_reason_guard.py",
                "docs/REASONING-GUARD.md"
              ],
              "expected_behavior": "Visible summary forms are classified consistently; consequential candidates remain report-only unless explicitly structured; clearance never says clear when assessment is incomplete; replay telemetry quantifies accuracy and runtime cost without storing summary text."
            }
          },
          "output_hash": "34e85d59ed373c4c2604c8a71dd92499b47c4929bc8c173bcf047e1ed24cbcd8",
          "completed_at": "2026-07-25T01:57:04Z"
        }
      ],
      "completed_at": "2026-07-25T01:57:04Z"
    },
    {
      "id": "WFR-420",
      "schema_version": "1.0",
      "workflow_id": "engineering.debug",
      "workflow_version": 1,
      "definition_hash": "b32f3f2fbbbd7474e05e983730ae4143048466f42364e34d7391312132c2dbf8",
      "plan_hash": "e03e3970f33ca9c1583dfc9cce95d9e0e889c7db43693c4e3a70b3fe2d71288c",
      "input_hash": "9ffc9f8437a5320a56ec56a3047e0f95aadabef26f2992088d823cc8a6f16a9e",
      "inputs": {
        "instructions": "Diagnose why visible Codex reasoning summaries such as Investigating and Tracing do not create Reason Guard obligations while equivalent I will verify statements do. Identify the smallest deterministic root-cause fix and privacy-safe telemetry needed to measure precision recall false positives and processing latency. Exclude models embeddings RAG daemons and GPU dependencies unless deterministic replay evidence proves they are necessary.",
        "source_refs": [
          ".prd_plugin/hooks/prd_reason_guard.py",
          "tests/test_reason_guard.py",
          "docs/REASONING-GUARD.md",
          "wiki/hooks/reasoning-guard.md"
        ]
      },
      "idempotency_key": "codex-reason-guard-semantic-lite-debug-v1",
      "status": "completed",
      "attempt": 1,
      "created_at": "2026-07-25T01:58:39Z",
      "updated_at": "2026-07-25T02:01:56Z",
      "receipts": [
        {
          "step_id": "git",
          "action": "git.status",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "47e26e7162574c7af158464a3e51c1bd4d7de6bbfb9718c7aebfa17411326ed4",
          "completed_at": "2026-07-25T01:58:39Z"
        },
        {
          "step_id": "state",
          "action": "state.consistency",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "7bd004636e5a786f64604d8cc821f23845cc7f69b783a6392c588759f368f587",
          "completed_at": "2026-07-25T01:58:39Z"
        },
        {
          "step_id": "context",
          "action": "substrate.enrich",
          "input_hash": "880b1c09b9dbcdf58d6ea552b3e27e3feef96ed34f8f8a8a15f5c63b2eb6393f",
          "output_hash": "9249533c7b1816deca32662ac604baaadee0f5156ce0368eda25c1e611eb39ff",
          "completed_at": "2026-07-25T01:58:40Z"
        },
        {
          "step_id": "diagnosis",
          "action": "judgment.request",
          "input_hash": "bae2ce40e0ac3d4bf56e8b4210a097b1213525c390da046d6280d414db11826c",
          "output_hash": "9a8ea398ff96c79c65a6187537e7059e8ea778fe9045e15af34b666a55f5261c",
          "request_hash": "16f65a6edc8413caaa9ad31f894b391e19010b6f8e4f3322af38af3b2f479cf6",
          "completed_at": "2026-07-25T02:01:56Z"
        }
      ],
      "steps": [
        {
          "id": "git",
          "action": "git.status",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-25T01:58:39Z",
          "output": {
            "clean": false,
            "changed_files": [
              ".prd_plugin/ids/registry.json",
              ".prd_plugin/state/requests.json",
              ".prd_plugin/state/tracking.json",
              ".prd_plugin/state/workflow-runs.json"
            ]
          },
          "output_hash": "47e26e7162574c7af158464a3e51c1bd4d7de6bbfb9718c7aebfa17411326ed4",
          "completed_at": "2026-07-25T01:58:39Z"
        },
        {
          "id": "state",
          "action": "state.consistency",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-25T01:58:39Z",
          "output": {
            "status": "ok",
            "repo_root": "D:\\Projects\\prd-plugin-worktrees\\codex-reasoning-summary-session-fallback",
            "summary": {
              "errors": 0,
              "warnings": 0,
              "infos": 1
            },
            "findings": [
              {
                "id": "CONS-INFO-001",
                "severity": "info",
                "path": "docs/evidence/EV-200.md",
                "summary": "File references 2 canonical IDs across 2 prefix(es); treated as a positive signal of extra work.",
                "referenced_prefixes": [
                  "CHG",
                  "TRK"
                ],
                "referenced_id_count": 2,
                "required_action": "No action required; this is an informational signal."
              }
            ]
          },
          "output_hash": "7bd004636e5a786f64604d8cc821f23845cc7f69b783a6392c588759f368f587",
          "completed_at": "2026-07-25T01:58:39Z"
        },
        {
          "id": "context",
          "action": "substrate.enrich",
          "status": "completed",
          "resolved_input_hash": "880b1c09b9dbcdf58d6ea552b3e27e3feef96ed34f8f8a8a15f5c63b2eb6393f",
          "started_at": "2026-07-25T01:58:40Z",
          "output": {
            "status": "disabled",
            "results": [],
            "local_source_refs": [
              ".prd_plugin/hooks/prd_reason_guard.py",
              "tests/test_reason_guard.py",
              "docs/REASONING-GUARD.md",
              "wiki/hooks/reasoning-guard.md"
            ]
          },
          "output_hash": "9249533c7b1816deca32662ac604baaadee0f5156ce0368eda25c1e611eb39ff",
          "completed_at": "2026-07-25T01:58:40Z"
        },
        {
          "id": "diagnosis",
          "action": "judgment.request",
          "status": "completed",
          "resolved_input_hash": "bae2ce40e0ac3d4bf56e8b4210a097b1213525c390da046d6280d414db11826c",
          "started_at": "2026-07-25T01:58:40Z",
          "judgment_request": {
            "contract_version": 1,
            "run_id": "WFR-420",
            "step_id": "diagnosis",
            "task": "debugging",
            "instructions": "Diagnose why visible Codex reasoning summaries such as Investigating and Tracing do not create Reason Guard obligations while equivalent I will verify statements do. Identify the smallest deterministic root-cause fix and privacy-safe telemetry needed to measure precision recall false positives and processing latency. Exclude models embeddings RAG daemons and GPU dependencies unless deterministic replay evidence proves they are necessary.",
            "source_refs": [
              ".prd_plugin/hooks/prd_reason_guard.py",
              "tests/test_reason_guard.py",
              "docs/REASONING-GUARD.md",
              "wiki/hooks/reasoning-guard.md"
            ],
            "source_hashes": {
              ".prd_plugin/hooks/prd_reason_guard.py": "1b662a5d0797495af6865fc95249a1c5ad0eef67ecaabc7b71a381e6fab79c01",
              "tests/test_reason_guard.py": "e51a85c15af83a5bed275823b3bf702d00aedef47298476a924fe4e67bf779fe",
              "docs/REASONING-GUARD.md": "c6894f8b10682bcd4d0c7b85eae37e86ea8b5e1b52b7f07813fae9afb3516bef",
              "wiki/hooks/reasoning-guard.md": "81575b7f8f926e21c966aa3efecc3bb40b20ae5799c497a823c94d955c45324e"
            },
            "result_schema": {
              "type": "object",
              "required": [
                "summary",
                "hypotheses",
                "source_refs"
              ],
              "properties": {
                "summary": {
                  "type": "string"
                },
                "hypotheses": {
                  "type": "array",
                  "items": {
                    "type": "object"
                  }
                },
                "source_refs": {
                  "type": "array",
                  "items": {
                    "type": "string"
                  }
                }
              }
            },
            "executor": "ai-collab",
            "profile": "fast-capable",
            "constraints": {
              "no_project_state_writes": true,
              "require_source_refs": true
            },
            "request_hash": "16f65a6edc8413caaa9ad31f894b391e19010b6f8e4f3322af38af3b2f479cf6"
          },
          "output": {
            "summary": "The miss is a deterministic classifier gap: _record_obligation requires CHECK_RE plus DECISION_RE plus CONSEQUENTIAL_RE and then either COMMITMENT_RE or ALTERNATIVES_RE. Active visible-summary headings such as Investigating Tracing and Diagnosing usually satisfy neither final branch and several are absent from CHECK_RE. In addition clearance records inferred_open only as a limitation while still returning clear, and metrics expose hook latency but no classification counts or labelled accuracy. The smallest root-cause fix is an anchored active-check heading signal inside the existing heuristic path, conditional clearance for unresolved inferred checks, aggregate counters, and a balanced labelled replay test.",
            "hypotheses": [
              {
                "claim": "Anchored active-check headings are the missing syntactic form.",
                "evidence": "_record_obligation rejects text unless commitment or alternatives matches after the three existing relevance gates.",
                "test": "Replay real missed headings and equivalent commitment controls through the classifier."
              },
              {
                "claim": "Unconditional clear is caused by clearance ignoring non-blocking inferred obligations.",
                "evidence": "_update_clearance appends an inferred_open limitation but computes status only from blocking obligations and coverage.",
                "test": "Create an inferred open obligation under full coverage and assert conditional clearance."
              },
              {
                "claim": "Accuracy cannot be inferred from runtime latency telemetry.",
                "evidence": "metrics currently contains only samples_ms p50_ms and p95_ms.",
                "test": "Add aggregate classification counts and compute confusion-matrix metrics from a labelled replay corpus."
              }
            ],
            "source_refs": [
              ".prd_plugin/hooks/prd_reason_guard.py",
              "tests/test_reason_guard.py",
              "docs/REASONING-GUARD.md",
              "wiki/hooks/reasoning-guard.md"
            ]
          },
          "output_hash": "9a8ea398ff96c79c65a6187537e7059e8ea778fe9045e15af34b666a55f5261c",
          "completed_at": "2026-07-25T02:01:56Z",
          "judgment_result": {
            "request_hash": "16f65a6edc8413caaa9ad31f894b391e19010b6f8e4f3322af38af3b2f479cf6",
            "executor": "ai-collab",
            "profile": "fast-capable"
          }
        }
      ],
      "completed_at": "2026-07-25T02:01:56Z"
    },
    {
      "id": "WFR-421",
      "schema_version": "1.0",
      "workflow_id": "engineering.code-review",
      "workflow_version": 1,
      "definition_hash": "ad3df68a0ff3c3ede35fe5266dcfbffbe7b1ba3e8ada5fc4b9012db9f451212f",
      "plan_hash": "5221461f5e5fa68f28b8c26074946404701381474835bf05f9f10d01340892b3",
      "input_hash": "e8d02011bd51781c5639275de0f65418af428bdb5dba88a6de95f463f92b7d4c",
      "inputs": {
        "base_ref": "origin/main",
        "source_refs": [
          ".prd_plugin/hooks/prd_reason_guard.py",
          "scripts/reason_guard_benchmark.py",
          "scripts/prd_status.py",
          "scripts/prd_ui_export.py",
          "tests/test_reason_guard.py",
          "tests/test_reason_guard_benchmark.py",
          "tests/test_tracking_commands.py",
          "tests/test_prd_ui_export.py",
          "docs/REASONING-GUARD.md",
          ".prd_plugin/state/artifacts/implementation_plan/IMP-014.json"
        ]
      },
      "idempotency_key": "codex-reason-guard-semantic-lite-review-v1",
      "status": "completed",
      "attempt": 1,
      "created_at": "2026-07-25T02:15:51Z",
      "updated_at": "2026-07-25T02:18:05Z",
      "receipts": [
        {
          "step_id": "diff",
          "action": "git.diff_check",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "11c11db30f4b3f6c758722ba3e27eea08145b7d212f6a157451e364b48475280",
          "completed_at": "2026-07-25T02:15:52Z"
        },
        {
          "step_id": "verification",
          "action": "verification.plan",
          "input_hash": "896ba721326661835264dfc8b368f18e4c2f504219052efc7dded35d5e5da01f",
          "output_hash": "b4713ed654ca6b0141d9172c236623b825e34b5f4fe0f8c0ec0dd6563dfecb86",
          "completed_at": "2026-07-25T02:15:52Z"
        },
        {
          "step_id": "context",
          "action": "substrate.enrich",
          "input_hash": "0ec3a0d427bd090152e5e05ad1b8e8a58bba75f7ad573fd1a18980990feb683b",
          "output_hash": "90f69b5f8581bf7b5a616ac8ae1332e72f5c1ef7f522d70e0b8d24b62ff7f1c2",
          "completed_at": "2026-07-25T02:15:52Z"
        },
        {
          "step_id": "review",
          "action": "judgment.request",
          "input_hash": "804cb0d64b40049065ac39a9e4a970718feb76f6eb96733049545d8aee7c73a4",
          "output_hash": "b04b642d5ab073d706ccaa3fceeece118346e5ad1b32de5f8916373b916a2553",
          "request_hash": "4216d07459074e7204205c9cd62be068e8afbf988cdc92e5216e7a394e0dc2b3",
          "completed_at": "2026-07-25T02:18:05Z"
        }
      ],
      "steps": [
        {
          "id": "diff",
          "action": "git.diff_check",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-25T02:15:52Z",
          "output": {
            "passed": true
          },
          "output_hash": "11c11db30f4b3f6c758722ba3e27eea08145b7d212f6a157451e364b48475280",
          "completed_at": "2026-07-25T02:15:52Z"
        },
        {
          "id": "verification",
          "action": "verification.plan",
          "status": "completed",
          "resolved_input_hash": "896ba721326661835264dfc8b368f18e4c2f504219052efc7dded35d5e5da01f",
          "started_at": "2026-07-25T02:15:52Z",
          "output": {
            "schema_version": "1.0",
            "contract_version": 1,
            "executor": "ai-collab",
            "changed_files": [
              ".claude-plugin/marketplace.json",
              ".claude-plugin/plugin.json",
              ".codex-plugin/plugin.json",
              ".opencode/plugin.json",
              ".prd_plugin/config.json",
              ".prd_plugin/hooks/prd_reason_guard.py",
              ".prd_plugin/ids/registry.json",
              ".prd_plugin/state/artifacts/implementation_plan/IMP-014.json",
              ".prd_plugin/state/project.json",
              ".prd_plugin/state/releases.json",
              ".prd_plugin/state/requests.json",
              ".prd_plugin/state/tracking.json",
              ".prd_plugin/state/workflow-runs.json",
              "docs/REASONING-GUARD.md",
              "index.js",
              "mcp/server.cjs",
              "package.json",
              "raw/hooks/2026-07-25-reason-guard-semantic-lite-telemetry.md",
              "README.md",
              "scripts/prd_status.py",
              "scripts/prd_ui_export.py",
              "scripts/reason_guard_benchmark.py",
              "skills-manifest.json",
              "templates/config.json",
              "templates/project.json",
              "templates/releases.json",
              "templates/repo-skeleton/.claude-plugin/plugin.json",
              "templates/repo-skeleton/.codex-plugin/plugin.json",
              "templates/repo-skeleton/.opencode/plugin.json",
              "templates/repo-skeleton/.prd_plugin/config.json",
              "templates/repo-skeleton/.prd_plugin/hooks/prd_reason_guard.py",
              "templates/repo-skeleton/.prd_plugin/state/project.json",
              "templates/repo-skeleton/.prd_plugin/templates/config.json",
              "templates/repo-skeleton/.prd_plugin/templates/project.json",
              "tests/test_prd_ui_export.py",
              "tests/test_reason_guard.py",
              "tests/test_reason_guard_benchmark.py",
              "tests/test_tracking_commands.py",
              "wiki/hooks/reasoning-guard.md",
              "wiki/index.md",
              "wiki/log.md"
            ],
            "change_fingerprint": "ac52ec561f6792a045f5435086434b32cd7ae7c5b338a3617f108b49fb4fe660",
            "policy": {
              "enabled": true,
              "executor": "ai-collab",
              "neighbor_limit": 12,
              "max_changed_files": 25,
              "fallback": "full",
              "full_suite_triggers": [
                "release",
                "core_change",
                "impact_unavailable",
                "impact_degraded",
                "unmapped_change"
              ],
              "core_paths": [
                "package.json",
                "package-lock.json",
                "pyproject.toml",
                "Cargo.toml",
                "go.mod",
                ".github/workflows/**"
              ],
              "test_patterns": [
                "tests/**",
                "test/**",
                "spec/**",
                "**/*.test.*",
                "**/*.spec.*",
                "test_*.py",
                "*_test.py",
                "*_test.go",
                "**/test_*.py",
                "**/*_test.py",
                "**/*_test.go"
              ],
              "max_selected_tests": 200,
              "execution_timeout_seconds": 600,
              "focused_commands": [],
              "full_commands": [],
              "allowed_executables": [
                "python",
                "python3",
                "py",
                "pytest",
                "npm",
                "npx",
                "node",
                "go",
                "cargo",
                "dotnet",
                "mvn",
                "gradle",
                "gradlew",
                "make"
              ]
            },
            "selection_rules": {
              "precedence": [
                "exact_changed",
                "explicit_test_ownership",
                "structural_dependencies",
                "predictive_impact"
              ],
              "require_all_changed_files_mapped": true,
              "widen_before_full": true,
              "predictive_signal_is_sufficient_alone": false
            },
            "fallback": {
              "strategy": "full",
              "conditions": [
                "release",
                "core_change",
                "impact_unavailable",
                "impact_degraded",
                "unmapped_change"
              ]
            },
            "strategy": "full",
            "reason": "core_change",
            "runtime_requests": {},
            "plan_hash": "427dce97db530ae5d396d18810c417021ed62e73f7615991a7ce5a99b5c4ab4e"
          },
          "output_hash": "b4713ed654ca6b0141d9172c236623b825e34b5f4fe0f8c0ec0dd6563dfecb86",
          "completed_at": "2026-07-25T02:15:52Z"
        },
        {
          "id": "context",
          "action": "substrate.enrich",
          "status": "completed",
          "resolved_input_hash": "0ec3a0d427bd090152e5e05ad1b8e8a58bba75f7ad573fd1a18980990feb683b",
          "started_at": "2026-07-25T02:15:52Z",
          "output": {
            "status": "disabled",
            "results": [],
            "local_source_refs": [
              ".prd_plugin/hooks/prd_reason_guard.py",
              "scripts/reason_guard_benchmark.py",
              "scripts/prd_status.py",
              "scripts/prd_ui_export.py",
              "tests/test_reason_guard.py",
              "tests/test_reason_guard_benchmark.py",
              "tests/test_tracking_commands.py",
              "tests/test_prd_ui_export.py",
              "docs/REASONING-GUARD.md",
              ".prd_plugin/state/artifacts/implementation_plan/IMP-014.json"
            ]
          },
          "output_hash": "90f69b5f8581bf7b5a616ac8ae1332e72f5c1ef7f522d70e0b8d24b62ff7f1c2",
          "completed_at": "2026-07-25T02:15:52Z"
        },
        {
          "id": "review",
          "action": "judgment.request",
          "status": "completed",
          "resolved_input_hash": "804cb0d64b40049065ac39a9e4a970718feb76f6eb96733049545d8aee7c73a4",
          "started_at": "2026-07-25T02:15:53Z",
          "judgment_request": {
            "contract_version": 1,
            "run_id": "WFR-421",
            "step_id": "review",
            "task": "code_review",
            "instructions": "Find material correctness, robustness, security, compatibility, or test gaps; do not restate mechanical facts.",
            "source_refs": [
              ".prd_plugin/hooks/prd_reason_guard.py",
              "scripts/reason_guard_benchmark.py",
              "scripts/prd_status.py",
              "scripts/prd_ui_export.py",
              "tests/test_reason_guard.py",
              "tests/test_reason_guard_benchmark.py",
              "tests/test_tracking_commands.py",
              "tests/test_prd_ui_export.py",
              "docs/REASONING-GUARD.md",
              ".prd_plugin/state/artifacts/implementation_plan/IMP-014.json"
            ],
            "source_hashes": {
              ".prd_plugin/hooks/prd_reason_guard.py": "99455ae0467e082d4c7167a0f6cab6bdd802bbeb1b2c1901285905ed28a72e8a",
              "scripts/reason_guard_benchmark.py": "ba1805a58aba96d9738c87186640f6d614301fea213cc7af8bcaef4571145f43",
              "scripts/prd_status.py": "cc3eff3710730da1ad26dbfedf9ab64e177f049087b513b5593dbf8f560064c9",
              "scripts/prd_ui_export.py": "6e34c193d6d4a2a58f27fae92b9ec2e0175b02ab366827d09e8715a83862d9e5",
              "tests/test_reason_guard.py": "2aa5670efb2922dbf84994804e0caa4baf9720085d97cbd7206fb0fba7c302d5",
              "tests/test_reason_guard_benchmark.py": "ca7e8b0cf6544d900f148be7252c43ac1ca2d0dbfc0e59e7f890398450496dc5",
              "tests/test_tracking_commands.py": "26c1543623572fb27e5443cb0e1998ec4947a6521204129a51a1c48fd37e3edb",
              "tests/test_prd_ui_export.py": "7084cd50b0e9d94aac989af0a9fe938c470a230745e8d9d1dda1294337bd95a4",
              "docs/REASONING-GUARD.md": "a4d36bb5ada5ac25bf1f9fd2bcfb97139e380200145d570c094c344baf578040",
              ".prd_plugin/state/artifacts/implementation_plan/IMP-014.json": "4833e0a8c7f57e3358f841e17282110b9b2db31481de66c841691f47685b66ba"
            },
            "result_schema": {
              "type": "object",
              "required": [
                "summary",
                "findings",
                "source_refs"
              ],
              "properties": {
                "summary": {
                  "type": "string"
                },
                "findings": {
                  "type": "array",
                  "items": {
                    "type": "object"
                  }
                },
                "source_refs": {
                  "type": "array",
                  "items": {
                    "type": "string"
                  }
                }
              }
            },
            "executor": "ai-collab",
            "profile": "fast-capable",
            "constraints": {
              "no_project_state_writes": true,
              "require_source_refs": true
            },
            "request_hash": "4216d07459074e7204205c9cd62be068e8afbf988cdc92e5216e7a394e0dc2b3"
          },
          "output": {
            "summary": "No material correctness, robustness, security, compatibility, or coverage defect found. The classifier remains bounded and report-only, legacy schema-2 reports stay valid, counters are aggregate-only, clearance preserves explicit blocking authority, and focused tests cover classification, migration-compatible status projection, UI projection, and accuracy/latency budgets.",
            "findings": [],
            "source_refs": [
              ".prd_plugin/hooks/prd_reason_guard.py",
              "scripts/reason_guard_benchmark.py",
              "scripts/prd_status.py",
              "scripts/prd_ui_export.py",
              "tests/test_reason_guard.py",
              "tests/test_reason_guard_benchmark.py",
              "tests/test_tracking_commands.py",
              "tests/test_prd_ui_export.py",
              "docs/REASONING-GUARD.md",
              ".prd_plugin/state/artifacts/implementation_plan/IMP-014.json"
            ]
          },
          "output_hash": "b04b642d5ab073d706ccaa3fceeece118346e5ad1b32de5f8916373b916a2553",
          "completed_at": "2026-07-25T02:18:05Z",
          "judgment_result": {
            "request_hash": "4216d07459074e7204205c9cd62be068e8afbf988cdc92e5216e7a394e0dc2b3",
            "executor": "ai-collab",
            "profile": "fast-capable"
          }
        }
      ],
      "completed_at": "2026-07-25T02:18:05Z"
    },
    {
      "id": "WFR-422",
      "schema_version": "1.0",
      "workflow_id": "hub.release",
      "workflow_version": 1,
      "definition_hash": "ab6ae2afcb0128db8d994b6b397e543c7490017bd3d1b15309079edc6be94d9a",
      "plan_hash": "02bcb9cb71ca5641cc12e6270fee67758c0051b183e4204137993cd57b89a7bd",
      "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
      "inputs": {},
      "idempotency_key": "codex-reason-guard-semantic-lite-release-v1",
      "status": "completed",
      "attempt": 1,
      "created_at": "2026-07-25T02:18:49Z",
      "updated_at": "2026-07-25T02:20:40Z",
      "receipts": [
        {
          "step_id": "diff",
          "action": "git.diff_check",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "11c11db30f4b3f6c758722ba3e27eea08145b7d212f6a157451e364b48475280",
          "completed_at": "2026-07-25T02:18:49Z"
        },
        {
          "step_id": "config",
          "action": "config.audit",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "ef2327bf3ea9c100a1a525c09e426de9703016f1b7c177b0df10c0b7cf3f33c9",
          "completed_at": "2026-07-25T02:18:50Z"
        },
        {
          "step_id": "state",
          "action": "state.consistency",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "7bd004636e5a786f64604d8cc821f23845cc7f69b783a6392c588759f368f587",
          "completed_at": "2026-07-25T02:18:50Z"
        },
        {
          "step_id": "workflow_audit",
          "action": "process.fixed",
          "input_hash": "edf19b269a54d72753f1abc2b8ffcb810c2b7bc377cee7e1698c939f17e0be94",
          "output_hash": "16622c601306c84b9e057bc1426863917aab1686e495638e83c8c254a977abdf",
          "completed_at": "2026-07-25T02:18:51Z"
        },
        {
          "step_id": "substrate_audit",
          "action": "process.fixed",
          "input_hash": "4998f71d2d3f6ac7dd50e10d37f60ae32d54898949950e484da9de113e18a979",
          "output_hash": "4176fd7e9d2d33bd61e5fd6bb8d392a63eaa5b2cb65b750eeb348b9dd55fe220",
          "completed_at": "2026-07-25T02:18:51Z"
        },
        {
          "step_id": "suite",
          "action": "process.fixed",
          "input_hash": "954e575e48145853f5681eda189186c95a053267158fae669114320f2e53794a",
          "output_hash": "b2ad3613f0a6d2f7f2ed29cac89a674eb1e8842f5dab094b612b2919d032e99b",
          "completed_at": "2026-07-25T02:20:37Z"
        },
        {
          "step_id": "release",
          "action": "process.fixed",
          "input_hash": "1e5b0c18d93eb4c2248f9a00adbd438e52f3ef02137477fb8376c69cfe86fc9b",
          "output_hash": "bca1be3e527aac5ea96b991d5cdf5d8df0b56438bc2fdcc163d18d11f11f8085",
          "completed_at": "2026-07-25T02:20:38Z"
        },
        {
          "step_id": "gaps",
          "action": "process.fixed",
          "input_hash": "577241909238eeb55683f89d2d2216648dad2e3127397993e22493829a1307a4",
          "output_hash": "c2764790a6e95c4c122cf1220d85da6127d23f23c473ccfb640cc906fe0bd06d",
          "completed_at": "2026-07-25T02:20:38Z"
        },
        {
          "step_id": "package",
          "action": "process.fixed",
          "input_hash": "06cd12e1f3db3d985f9150520afa60f288297ff0ca01a8e813e9bb6291aa8836",
          "output_hash": "612604ad237765c152f0a6e558ffc1f81b51ea7566da14a827347390db745cf7",
          "completed_at": "2026-07-25T02:20:40Z"
        },
        {
          "step_id": "gate",
          "action": "state.gate",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "af95f5508bef069fc3c46ffe3a052eeba9fa5c6bfadc00da8d536a21484deebe",
          "completed_at": "2026-07-25T02:20:40Z"
        }
      ],
      "steps": [
        {
          "id": "diff",
          "action": "git.diff_check",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-25T02:18:49Z",
          "output": {
            "passed": true
          },
          "output_hash": "11c11db30f4b3f6c758722ba3e27eea08145b7d212f6a157451e364b48475280",
          "completed_at": "2026-07-25T02:18:49Z"
        },
        {
          "id": "config",
          "action": "config.audit",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-25T02:18:50Z",
          "output": {
            "status": "ok",
            "summary": {
              "settings": 214,
              "mutable": 204,
              "read_only_or_managed": 10,
              "unclassified": 0,
              "unknown": 0,
              "invalid": 0,
              "missing_using_defaults": 0
            },
            "unclassified_keys": [],
            "unknown_keys": [],
            "invalid_values": [],
            "missing_using_defaults": []
          },
          "output_hash": "ef2327bf3ea9c100a1a525c09e426de9703016f1b7c177b0df10c0b7cf3f33c9",
          "completed_at": "2026-07-25T02:18:50Z"
        },
        {
          "id": "state",
          "action": "state.consistency",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-25T02:18:50Z",
          "output": {
            "status": "ok",
            "repo_root": "D:\\Projects\\prd-plugin-worktrees\\codex-reasoning-summary-session-fallback",
            "summary": {
              "errors": 0,
              "warnings": 0,
              "infos": 1
            },
            "findings": [
              {
                "id": "CONS-INFO-001",
                "severity": "info",
                "path": "docs/evidence/EV-200.md",
                "summary": "File references 2 canonical IDs across 2 prefix(es); treated as a positive signal of extra work.",
                "referenced_prefixes": [
                  "CHG",
                  "TRK"
                ],
                "referenced_id_count": 2,
                "required_action": "No action required; this is an informational signal."
              }
            ]
          },
          "output_hash": "7bd004636e5a786f64604d8cc821f23845cc7f69b783a6392c588759f368f587",
          "completed_at": "2026-07-25T02:18:50Z"
        },
        {
          "id": "workflow_audit",
          "action": "process.fixed",
          "status": "completed",
          "resolved_input_hash": "edf19b269a54d72753f1abc2b8ffcb810c2b7bc377cee7e1698c939f17e0be94",
          "started_at": "2026-07-25T02:18:50Z",
          "output": {
            "operation": "workflow_chml_audit",
            "command": [
              "python",
              "scripts/workflow_chml_audit.py",
              "--repo-root",
              ".",
              "--format",
              "json"
            ],
            "exit_code": 0,
            "stdout": "{\n  \"status\": \"ok\",\n  \"repo_root\": \"D:\\\\Projects\\\\prd-plugin-worktrees\\\\codex-reasoning-summary-session-fallback\",\n  \"summary\": {\n    \"critical\": 0,\n    \"high\": 0,\n    \"medium\": 0,\n    \"low\": 0\n  },\n  \"findings\": []\n}\n",
            "stderr": ""
          },
          "output_hash": "16622c601306c84b9e057bc1426863917aab1686e495638e83c8c254a977abdf",
          "completed_at": "2026-07-25T02:18:51Z"
        },
        {
          "id": "substrate_audit",
          "action": "process.fixed",
          "status": "completed",
          "resolved_input_hash": "4998f71d2d3f6ac7dd50e10d37f60ae32d54898949950e484da9de113e18a979",
          "started_at": "2026-07-25T02:18:51Z",
          "output": {
            "operation": "substrate_capability_audit",
            "command": [
              "python",
              "scripts/prd_substrate_catalog.py",
              "--repo-root",
              ".",
              "audit"
            ],
            "exit_code": 0,
            "stdout": "{\n  \"status\": \"ok\",\n  \"schema_version\": \"1.0\",\n  \"capability_count\": 26,\n  \"runtime_tool_count\": 103,\n  \"intent_count\": 31,\n  \"summary\": {\n    \"critical\": 0,\n    \"high\": 0,\n    \"medium\": 0,\n    \"low\": 0\n  },\n  \"findings\": []\n}\n",
            "stderr": ""
          },
          "output_hash": "4176fd7e9d2d33bd61e5fd6bb8d392a63eaa5b2cb65b750eeb348b9dd55fe220",
          "completed_at": "2026-07-25T02:18:51Z"
        },
        {
          "id": "suite",
          "action": "process.fixed",
          "status": "completed",
          "resolved_input_hash": "954e575e48145853f5681eda189186c95a053267158fae669114320f2e53794a",
          "started_at": "2026-07-25T02:18:51Z",
          "output": {
            "operation": "local_workflow_check",
            "command": [
              "python",
              "scripts/local_workflow_check.py"
            ],
            "exit_code": 0,
            "stdout": "Structured file validation passed.\n$ python -m unittest discover -s tests -v\n{\n  \"status\": \"fail\",\n  \"repo_root\": \"C:\\\\Users\\\\marku\\\\AppData\\\\Local\\\\Temp\\\\tmpff10e2jb\",\n  \"summary\": {\n    \"errors\": 1,\n    \"warnings\": 0\n  },\n  \"findings\": [\n    {\n      \"check\": \"duplicate_id\",\n      \"severity\": \"error\",\n      \"summary\": \"Duplicate id REQ-002 in .prd_plugin/state/requests.json.\",\n      \"required_action\": \"Renumber one record so REQ-002 is unique. Allocate IDs with the MCP tool prd_next_id (or the record tools like prd_open_goal) instead of hand-computing them.\"\n    }\n  ]\n}\nautonomy_level set to guided\nautonomy_level set to autonomous\nDESTRUCTIVE RESET REQUESTED: --force --yes will erase protected PRD Plugin project data.\nThe following existing state/configuration files would be replaced with skeleton defaults:\n  - .prd_plugin/state/tracking.json\nThis may erase IDs, tracking, requests, decisions, health findings, configuration, and session memory.\nFor a normal safe update, remove --yes and run: npx prd-install . --force\nPRD Plugin safe update: preserving existing state/config and refreshing plugin files only. Never add --yes to a routine update; it requests a destructive reset.\nPRD Plugin safe update: preserving existing state/config and refreshing plugin files only. Never add --yes to a routine update; it requests a destructive reset.\nPRD Plugin safe update: preserving existing state/config and refreshing plugin files only. Never add --yes to a routine update; it requests a destructive reset.\nPRD Plugin safe update: preserving existing state/config and refreshing plugin files only. Never add --yes to a routine update; it requests a destructive reset.\nPRD Plugin safe update: preserving existing state/config and refreshing plugin files only. Never add --yes to a routine update; it requests a destructive reset.\nPRD Plugin safe update: preserving existing state/config and refreshing plugin files only. Never add --yes to a routine update; it requests a destructive reset.\nPRD Plugin safe update: preserving existing state/config and refreshing plugin files only. Never add --yes to a routine update; it requests a destructive reset.\nPRD Plugin safe update: preserving existing state/config and refreshing plugin files only. Never add --yes to a routine update; it requests a destructive reset.\nPRD Plugin safe update: preserving existing state/config and refreshing plugin files only. Never add --yes to a routine update; it requests a destructive reset.\nPRD Plugin safe update: preserving existing state/config and refreshing plugin files only. Never add --yes to a routine update; it requests a destructive reset.\nPRD Plugin safe update: preserving existing state/config and refreshing plugin files only. Never add --yes to a routine update; it requests a destructive reset.\nPRD Plugin safe update: preserving existing state/config and refreshing plugin files only. Never add --yes to a routine update; it requests a destructive reset.\nPRD Plugin safe update: preserving existing state/config and refreshing plugin files only. Never add --yes to a routine update; it requests a destructive reset.\nPRD Plugin safe update: preserving existing state/config and refreshing plugin files only. Never add --yes to a routine update; it requests a destructive reset.\nPRD Plugin safe update: preserving existing state/config and refreshing plugin files only. Never add --yes to a routine update; it requests a destructive reset.\nPRD Plugin safe update: preserving existing state/config and refreshing plugin files only. Never add --yes to a routine update; it requests a destructive reset.\nPRD Plugin safe update: preserving existing state/config and refreshing plugin files only. Never add --yes to a routine update; it requests a destructive reset.\n{\n  \"published\": false,\n  \"package\": \"prd-plugin\",\n  \"version\": \"9.9.9\",\n  \"version_seen\": null,\n  \"latest_seen\": null,\n  \"attempts_used\": 1\n}\n{\n  \"published\": true,\n  \"package\": \"prd-plugin\",\n  \"version\": \"1.2.3\",\n  \"version_seen\": \"1.2.3\",\n  \"latest_seen\": \"1.2.3\",\n  \"attempts_used\": 1\n}\n{\"decision\": \"block\", \"reason\": \"Autonomous run-until-done: goal TRK-161 is still active. Continue with the next incomplete step toward it \\u2014 do not stop to ask 'shall I proceed?'. If you genuinely need the user (consent floor: push/merge/publish/secrets, or a real blocker), create the file .prd_plugin/local/autonomy-pause with a one-line reason and then stop; the guard will let you. Otherwise keep going.\"}\n$ python scripts/feature_skill_audit.py --repo-root . --format json\n{\n  \"status\": \"ok\",\n  \"repo_root\": \"D:\\\\Projects\\\\prd-plugin-worktrees\\\\codex-reasoning-summary-session-fallback\",\n  \"contract\": \"templates/feature-skill-map.json\",\n  \"feature_count\": 29,\n  \"summary\": {\n    \"critical\": 0,\n    \"high\": 0,\n    \"medium\": 0,\n    \"low\": 0\n  },\n  \"findings\": []\n}\n$ python scripts/gap_audit.py --target-version 0.16.56\n# PRD Plugin Gap Audit\n\nTarget version: `0.16.56`\n\n## Findings\n\n- None\n$ python scripts/version_advice.py --installed-repo . --format json --output request-report/version-advice.json\n$ python scripts/release_check.py --output request-report/release-hygiene.md\n$ python scripts/prd_doctor.py --repo-root . --format json --output request-report/prd-doctor.json\n$ python scripts/state_consistency_check.py --repo-root . --format json --output request-report/state-consistency.json\n$ python scripts/prd_install_skills.py --repo-root . --dry-run\n{\n  \"status\": \"dry_run\",\n  \"target_agent\": \"codex\",\n  \"targets\": [\n    {\n      \"agent\": \"codex\",\n      \"target\": \".agents\\\\skills\",\n      \"would_install\": [\n        \"project-architecture\",\n        \"project-blocker-resolution\",\n        \"project-brainstorm\",\n        \"project-change-request\",\n        \"project-code-review\",\n        \"project-decision-ledger\",\n        \"project-decision-policy\",\n        \"project-deterministic-workflows\",\n        \"project-document-branch\",\n        \"project-evidence\",\n        \"project-evidence-ledger\",\n        \"project-git-workflow\",\n        \"project-health\",\n        \"project-implementation-plan\",\n        \"project-llm-wiki\",\n        \"project-local-integration\",\n        \"project-memory\",\n        \"project-planning-lifecycle\",\n        \"project-prd\",\n        \"project-prd-plugin-setup\",\n        \"project-request-intake\",\n        \"project-session-close\",\n        \"project-systematic-debugging\",\n        \"project-test-driven-implementation\",\n        \"project-traceability-review\",\n        \"project-traceability-sync\",\n        \"project-verification-before-completion\",\n        \"source-command-prd-autonomy\",\n        \"source-command-prd-close\",\n        \"source-command-prd-config\",\n        \"source-command-prd-drift\",\n        \"source-command-prd-graph\",\n        \"source-command-prd-hooks\",\n        \"source-command-prd-new\",\n        \"source-command-prd-off\",\n        \"source-command-prd-on\",\n        \"source-command-prd-reflections\",\n        \"source-command-prd-report\",\n        \"source-command-prd-status\",\n        \"source-command-prd-track\",\n        \"source-command-prd-version\",\n        \"source-command-prd-workflow\"\n      ],\n      \"would_remove\": [\n        \"project-fold-it-in\",\n        \"project-self-audit\"\n      ]\n    }\n  ],\n  \"installed_count\": 0,\n  \"target\": \".agents\\\\skills\",\n  \"installed\": [],\n  \"removed\": [],\n  \"would_install\": [\n    \"project-architecture\",\n    \"project-blocker-resolution\",\n    \"project-brainstorm\",\n    \"project-change-request\",\n    \"project-code-review\",\n    \"project-decision-ledger\",\n    \"project-decision-policy\",\n    \"project-deterministic-workflows\",\n    \"project-document-branch\",\n    \"project-evidence\",\n    \"project-evidence-ledger\",\n    \"project-git-workflow\",\n    \"project-health\",\n    \"project-implementation-plan\",\n    \"project-llm-wiki\",\n    \"project-local-integration\",\n    \"project-memory\",\n    \"project-planning-lifecycle\",\n    \"project-prd\",\n    \"project-prd-plugin-setup\",\n    \"project-request-intake\",\n    \"project-session-close\",\n    \"project-systematic-debugging\",\n    \"project-test-driven-implementation\",\n    \"project-traceability-review\",\n    \"project-traceability-sync\",\n    \"project-verification-before-completion\",\n    \"source-command-prd-autonomy\",\n    \"source-command-prd-close\",\n    \"source-command-prd-config\",\n    \"source-command-prd-drift\",\n    \"source-command-prd-graph\",\n    \"source-command-prd-hooks\",\n    \"source-command-prd-new\",\n    \"source-command-prd-off\",\n    \"source-command-prd-on\",\n    \"source-command-prd-reflections\",\n    \"source-command-prd-report\",\n    \"source-command-prd-status\",\n    \"source-command-prd-track\",\n    \"source-command-prd-version\",\n    \"source-command-prd-workflow\"\n  ],\n  \"would_remove\": [\n    \"project-fold-it-in\",\n    \"project-self-audit\"\n  ]\n}\n$ python scripts/request_report.py --config .prd_plugin/config.json --format markdown --output request-report/request-report.md\n$ python scripts/request_report.py --config .prd_plugin/config.json --format json --output request-report/request-report.json\n$ python scripts/message_check.py --config .prd_plugin/config.json --format json --output request-report/message-check.json\nLocal workflow check completed.\n",
            "stderr": "lid_values) ... ok\ntest_enable_disable_only_accept_mutable_booleans (test_unified_config.MutationTests.test_enable_disable_only_accept_mutable_booleans) ... ok\ntest_failed_atomic_replace_leaves_original_config_untouched (test_unified_config.MutationTests.test_failed_atomic_replace_leaves_original_config_untouched) ... ok\ntest_malformed_config_is_never_replaced_by_a_mutation (test_unified_config.MutationTests.test_malformed_config_is_never_replaced_by_a_mutation) ... ok\ntest_manual_set_marks_profile_custom_and_preserves_style (test_unified_config.MutationTests.test_manual_set_marks_profile_custom_and_preserves_style) ... ok\ntest_scalar_parent_is_not_clobbered_by_nested_set (test_unified_config.MutationTests.test_scalar_parent_is_not_clobbered_by_nested_set) ... ok\ntest_builtin_profile_dry_run_then_atomic_apply (test_unified_config.ProfileTests.test_builtin_profile_dry_run_then_atomic_apply) ... ok\ntest_invalid_custom_profile_never_partially_writes (test_unified_config.ProfileTests.test_invalid_custom_profile_never_partially_writes) ... ok\ntest_save_show_diff_and_delete_custom_profile (test_unified_config.ProfileTests.test_save_show_diff_and_delete_custom_profile) ... ok\ntest_does_not_flag_canonical_prd_state_paths (test_unsubmitted_plugin_request.UnsubmittedPluginRequestTests.test_does_not_flag_canonical_prd_state_paths) ... ok\ntest_does_not_flag_ordinary_project_requests (test_unsubmitted_plugin_request.UnsubmittedPluginRequestTests.test_does_not_flag_ordinary_project_requests) ... ok\ntest_does_not_flag_rejected_requests (test_unsubmitted_plugin_request.UnsubmittedPluginRequestTests.test_does_not_flag_rejected_requests) ... ok\ntest_does_not_flag_when_already_marked_upstream (test_unsubmitted_plugin_request.UnsubmittedPluginRequestTests.test_does_not_flag_when_already_marked_upstream) ... ok\ntest_flags_a_local_request_about_a_plugin_script (test_unsubmitted_plugin_request.UnsubmittedPluginRequestTests.test_flags_a_local_request_about_a_plugin_script) ... ok\ntest_flags_a_request_that_names_itself_upstream (test_unsubmitted_plugin_request.UnsubmittedPluginRequestTests.test_flags_a_request_that_names_itself_upstream) ... ok\ntest_never_fires_in_the_hub_repo_itself (test_unsubmitted_plugin_request.UnsubmittedPluginRequestTests.test_never_fires_in_the_hub_repo_itself) ... ok\ntest_wired_into_run_checks (test_unsubmitted_plugin_request.UnsubmittedPluginRequestTests.test_wired_into_run_checks) ... ok\ntest_output_writes_lf_and_a_trailing_newline (test_utcp_first_authority.GeneratedArtifactsAreByteStableTests.test_output_writes_lf_and_a_trailing_newline) ... ok\ntest_the_committed_manual_matches_a_fresh_generation (test_utcp_first_authority.GeneratedArtifactsAreByteStableTests.test_the_committed_manual_matches_a_fresh_generation) ... ok\ntest_every_spec_tool_maps_to_a_catalog_capability (test_utcp_first_authority.ParityDirectionTests.test_every_spec_tool_maps_to_a_catalog_capability) ... ok\ntest_server_metadata_matches_the_spec (test_utcp_first_authority.ParityDirectionTests.test_server_metadata_matches_the_spec) ... ok\ntest_python_entry_points_share_the_same_lock (test_utcp_first_authority.SafetyUnchangedTests.test_python_entry_points_share_the_same_lock)\nThe migration target already exists and is proven: prd_reflections ... ok\ntest_the_state_lock_is_still_held_for_mutations (test_utcp_first_authority.SafetyUnchangedTests.test_the_state_lock_is_still_held_for_mutations) ... ok\ntest_no_shipped_tool_metadata_carries_mojibake (test_utcp_first_authority.ShippedTextIsCleanTests.test_no_shipped_tool_metadata_carries_mojibake) ... ok\ntest_shipped_tool_metadata_is_valid_utf8 (test_utcp_first_authority.ShippedTextIsCleanTests.test_shipped_tool_metadata_is_valid_utf8)\nA file written through a cp1252 layer either fails to decode or ... ok\ntest_each_tool_declares_name_description_and_schema (test_utcp_first_authority.SpecIsTheSourceTests.test_each_tool_declares_name_description_and_schema) ... ok\ntest_the_manual_is_generated_from_the_spec_not_the_server (test_utcp_first_authority.SpecIsTheSourceTests.test_the_manual_is_generated_from_the_spec_not_the_server) ... ok\ntest_the_server_no_longer_authors_descriptions (test_utcp_first_authority.SpecIsTheSourceTests.test_the_server_no_longer_authors_descriptions)\nserver.cjs must READ definitions, not declare them. While a tool ... ok\ntest_the_spec_exists_and_declares_every_tool (test_utcp_first_authority.SpecIsTheSourceTests.test_the_spec_exists_and_declares_every_tool) ... ok\ntest_official_bridge_round_trips_cli_and_mcp_templates (test_utcp_first_catalog.BridgeParityTests.test_official_bridge_round_trips_cli_and_mcp_templates) ... skipped 'official @utcp/mcp-bridge not installed (npm install)'\ntest_bridged_entries_reuse_server_metadata_verbatim (test_utcp_first_catalog.GeneratedProjectionTests.test_bridged_entries_reuse_server_metadata_verbatim)\nEach bridged manual entry's description and inputs equal the server's ... ok\ntest_checked_in_metadata_matches_live_server (test_utcp_first_catalog.GeneratedProjectionTests.test_checked_in_metadata_matches_live_server)\nThe pinned metadata projection cannot drift behind the live server. ... ok\ntest_mutations_keep_the_validated_handler_path (test_utcp_first_catalog.GuardedMutationTests.test_mutations_keep_the_validated_handler_path)\nEvery manual tool in a non-read capability calls the plugin state ... ok\ntest_read_only_cli_tools_stay_cli (test_utcp_first_catalog.GuardedMutationTests.test_read_only_cli_tools_stay_cli)\nThe 12 cli-native observe/recall tools keep their cli templates. ... ok\ntest_checked_in_metadata_projection_exists (test_utcp_first_catalog.ManualCompletenessTests.test_checked_in_metadata_projection_exists)\nThe server's tool metadata is a checked-in generated artifact so the ... ok\ntest_manual_covers_every_capability_on_both_transports (test_utcp_first_catalog.ManualCompletenessTests.test_manual_covers_every_capability_on_both_transports)\nEvery UTCP and MCP registration in the tool-surface catalog appears ... ok\ntest_appends_version_change_request (test_version_advice.VersionAdviceTests.test_appends_version_change_request) ... ok\ntest_builds_safe_update_advice_for_low_risk_releases (test_version_advice.VersionAdviceTests.test_builds_safe_update_advice_for_low_risk_releases) ... ok\ntest_cli_uses_hub_releases_when_downstream_repo_has_no_releases_file (test_version_advice.VersionAdviceTests.test_cli_uses_hub_releases_when_downstream_repo_has_no_releases_file) ... ok\ntest_detects_installed_version_from_bom_json (test_version_advice.VersionAdviceTests.test_detects_installed_version_from_bom_json) ... ok\ntest_detects_installed_version_from_opencode_plugin_manifest (test_version_advice.VersionAdviceTests.test_detects_installed_version_from_opencode_plugin_manifest) ... ok\ntest_detects_installed_version_from_prd_plugin_config (test_version_advice.VersionAdviceTests.test_detects_installed_version_from_prd_plugin_config) ... ok\ntest_detects_latest_version_from_plugin_manifest (test_version_advice.VersionAdviceTests.test_detects_latest_version_from_plugin_manifest) ... ok\ntest_installed_version_priority_prefers_config_then_codex_then_opencode (test_version_advice.VersionAdviceTests.test_installed_version_priority_prefers_config_then_codex_then_opencode) ... ok\ntest_orders_prerelease_before_final_release (test_version_advice.VersionAdviceTests.test_orders_prerelease_before_final_release) ... ok\ntest_recommends_review_first_for_medium_or_high_risk_release (test_version_advice.VersionAdviceTests.test_recommends_review_first_for_medium_or_high_risk_release) ... ok\ntest_disabled_returns_disabled_and_no_fetch (test_version_check.CheckTests.test_disabled_returns_disabled_and_no_fetch) ... ok\ntest_force_refetches_within_ttl (test_version_check.CheckTests.test_force_refetches_within_ttl) ... ok\ntest_network_failure_is_fail_open (test_version_check.CheckTests.test_network_failure_is_fail_open) ... ok\ntest_no_update_when_current (test_version_check.CheckTests.test_no_update_when_current) ... ok\ntest_status_is_cache_only_no_fetch (test_version_check.CheckTests.test_status_is_cache_only_no_fetch) ... ok\ntest_ttl_cache_avoids_refetch (test_version_check.CheckTests.test_ttl_cache_avoids_refetch) ... ok\ntest_ttl_expiry_refetches (test_version_check.CheckTests.test_ttl_expiry_refetches) ... ok\ntest_update_available_when_npm_is_ahead (test_version_check.CheckTests.test_update_available_when_npm_is_ahead) ... ok\ntest_status_cli_exits_zero (test_version_check.CliTests.test_status_cli_exits_zero) ... ok\ntest_default_ttl_is_responsive_not_a_day (test_version_check.FreshnessTests.test_default_ttl_is_responsive_not_a_day) ... ok\ntest_fetch_latest_accepts_a_timeout (test_version_check.FreshnessTests.test_fetch_latest_accepts_a_timeout) ... ok\ntest_nudge_refreshes_in_session_not_cache_only (test_version_check.FreshnessTests.test_nudge_refreshes_in_session_not_cache_only) ... ok\ntest_registry_default_ttl_matches (test_version_check.FreshnessTests.test_registry_default_ttl_matches) ... ok\ntest_semver_ordering (test_version_check.ParseTests.test_semver_ordering) ... ok\ntest_set_enabled_writes_config (test_version_check.ToggleTests.test_set_enabled_writes_config) ... ok\ntest_config_has_version_check_default_on (test_version_check.WiringTests.test_config_has_version_check_default_on) ... ok\ntest_nudge_surfaces_update_available (test_version_check.WiringTests.test_nudge_surfaces_update_available) ... ok\ntest_prd_version_command_exists (test_version_check.WiringTests.test_prd_version_command_exists) ... ok\ntest_script_registered_downstream (test_version_check.WiringTests.test_script_registered_downstream) ... ok\ntest_plan_cli_emits_json (test_wiki_backfill.CliTests.test_plan_cli_emits_json) ... ok\ntest_status_cli (test_wiki_backfill.CliTests.test_status_cli) ... ok\ntest_marker_written_for_established_repo_gaining_wiki (test_wiki_backfill.InstallerMarkerTests.test_marker_written_for_established_repo_gaining_wiki) ... ok\ntest_no_marker_for_empty_scaffold (test_wiki_backfill.InstallerMarkerTests.test_no_marker_for_empty_scaffold) ... ok\ntest_no_marker_when_wiki_already_exists (test_wiki_backfill.InstallerMarkerTests.test_no_marker_when_wiki_already_exists) ... ok\ntest_no_marker_when_wiki_disabled (test_wiki_backfill.InstallerMarkerTests.test_no_marker_when_wiki_disabled) ... ok\ntest_pending_false_when_absent (test_wiki_backfill.StatusTests.test_pending_false_when_absent) ... ok\ntest_pending_false_when_wiki_already_exists (test_wiki_backfill.StatusTests.test_pending_false_when_wiki_already_exists) ... ok\ntest_pending_true_when_marker_present (test_wiki_backfill.StatusTests.test_pending_true_when_marker_present) ... ok\ntest_plan_excludes_generated_report_artifacts (test_wiki_backfill.SurveyPlanTests.test_plan_excludes_generated_report_artifacts)\nrequest-report/ (incl. its calibration report trees) and docs/evidence/ ... ok\ntest_plan_excludes_plugin_and_vendor_noise (test_wiki_backfill.SurveyPlanTests.test_plan_excludes_plugin_and_vendor_noise) ... ok\ntest_plan_inventories_code_docs_and_state (test_wiki_backfill.SurveyPlanTests.test_plan_inventories_code_docs_and_state) ... ok\ntest_plan_is_read_only (test_wiki_backfill.SurveyPlanTests.test_plan_is_read_only) ... ok\ntest_wiki_drift_in_on_stop_and_default_sets (test_wiki_backfill.WikiDriftMonitorWiringTests.test_wiki_drift_in_on_stop_and_default_sets) ... ok\ntest_current_article_no_drift (test_wiki_backfill.WikiDriftTests.test_current_article_no_drift) ... ok\ntest_drift_cli (test_wiki_backfill.WikiDriftTests.test_drift_cli) ... ok\ntest_far_behind_article_flagged (test_wiki_backfill.WikiDriftTests.test_far_behind_article_flagged) ... ok\ntest_no_wiki_is_ok (test_wiki_backfill.WikiDriftTests.test_no_wiki_is_ok) ... ok\ntest_unlinked_markdown_reference_is_part_of_wiki_drift (test_wiki_backfill.WikiDriftTests.test_unlinked_markdown_reference_is_part_of_wiki_drift) ... ok\ntest_unstamped_article_flagged (test_wiki_backfill.WikiDriftTests.test_unstamped_article_flagged) ... ok\ntest_wiki_drift_uses_configured_wiki_directory (test_wiki_backfill.WikiDriftTests.test_wiki_drift_uses_configured_wiki_directory) ... ok\ntest_ambiguous_reference_is_reported_but_never_guessed (test_wiki_backfill.WikiInlineMarkdownLinkTests.test_ambiguous_reference_is_reported_but_never_guessed) ... ok\ntest_cli_check_fails_and_fix_then_passes (test_wiki_backfill.WikiInlineMarkdownLinkTests.test_cli_check_fails_and_fix_then_passes) ... ok\ntest_existing_inline_links_and_fenced_examples_are_not_findings (test_wiki_backfill.WikiInlineMarkdownLinkTests.test_existing_inline_links_and_fenced_examples_are_not_findings) ... ok\ntest_fix_rewrites_only_unambiguous_references_to_relative_inline_links (test_wiki_backfill.WikiInlineMarkdownLinkTests.test_fix_rewrites_only_unambiguous_references_to_relative_inline_links) ... ok\ntest_reports_resolvable_bare_and_code_wrapped_markdown_references (test_wiki_backfill.WikiInlineMarkdownLinkTests.test_reports_resolvable_bare_and_code_wrapped_markdown_references) ... ok\ntest_nudge_surfaces_pending_backfill (test_wiki_backfill.WiringTests.test_nudge_surfaces_pending_backfill) ... ok\ntest_script_registered_downstream (test_wiki_backfill.WiringTests.test_script_registered_downstream) ... ok\ntest_skill_has_backfill_mode (test_wiki_backfill.WiringTests.test_skill_has_backfill_mode) ... ok\ntest_copy_and_download_controls_are_wired (test_wiki_html_export.WikiHtmlExportTests.test_copy_and_download_controls_are_wired) ... ok\ntest_default_output_lands_in_the_local_runtime_dir (test_wiki_html_export.WikiHtmlExportTests.test_default_output_lands_in_the_local_runtime_dir) ... ok\ntest_every_page_is_embedded_with_exact_markdown (test_wiki_html_export.WikiHtmlExportTests.test_every_page_is_embedded_with_exact_markdown) ... ok\ntest_export_all_generates_viewers_and_super_index (test_wiki_html_export.WikiHtmlExportTests.test_export_all_generates_viewers_and_super_index) ... ok\ntest_export_is_one_self_contained_offline_file (test_wiki_html_export.WikiHtmlExportTests.test_export_is_one_self_contained_offline_file) ... ok\ntest_guest_repo_viewer_is_hosted_by_the_host_repo (test_wiki_html_export.WikiHtmlExportTests.test_guest_repo_viewer_is_hosted_by_the_host_repo)\nA repo without .prd_plugin gets NO new files in its own tree; its ... ok\ntest_hub_repo_exports_all_pages (test_wiki_html_export.WikiHtmlExportTests.test_hub_repo_exports_all_pages) ... ok\ntest_parse_wiki_log_extracts_dated_entries_with_bodies (test_wiki_html_export.WikiHtmlExportTests.test_parse_wiki_log_extracts_dated_entries_with_bodies)\nREQ-112: every workspace log follows '## [date] mode | text'. ... ok\ntest_parse_wiki_log_tolerates_missing_log (test_wiki_html_export.WikiHtmlExportTests.test_parse_wiki_log_tolerates_missing_log) ... ok\ntest_script_content_cannot_break_the_payload (test_wiki_html_export.WikiHtmlExportTests.test_script_content_cannot_break_the_payload) ... ok\ntest_super_index_has_a_combined_changelog (test_wiki_html_export.WikiHtmlExportTests.test_super_index_has_a_combined_changelog) ... ok\ntest_super_index_reports_page_counts (test_wiki_html_export.WikiHtmlExportTests.test_super_index_reports_page_counts) ... ok\ntest_workspace_discovery_uses_the_wiki_convention_marker (test_wiki_html_export.WikiHtmlExportTests.test_workspace_discovery_uses_the_wiki_convention_marker)\nREQ-110 + REQ-111: any immediate child whose wiki follows the ... ok\ntest_a_repo_without_a_wiki_is_not_in_drift (test_wiki_ingest_drift.DetectionTests.test_a_repo_without_a_wiki_is_not_in_drift)\nNo wiki is a legitimate state, not a failure to ingest. ... ok\ntest_fully_ingested_repo_is_clean (test_wiki_ingest_drift.DetectionTests.test_fully_ingested_repo_is_clean) ... ok\ntest_malformed_state_degrades_rather_than_raising (test_wiki_ingest_drift.DetectionTests.test_malformed_state_degrades_rather_than_raising) ... ok\ntest_non_implemented_requests_are_never_expected_in_the_log (test_wiki_ingest_drift.DetectionTests.test_non_implemented_requests_are_never_expected_in_the_log) ... ok\ntest_only_work_since_the_last_ingest_is_actionable (test_wiki_ingest_drift.DetectionTests.test_only_work_since_the_last_ingest_is_actionable)\nRaw counting flags pre-wiki history as drift � ~70 items in the hub, ... ok\ntest_reports_implemented_requests_absent_from_the_log (test_wiki_ingest_drift.DetectionTests.test_reports_implemented_requests_absent_from_the_log) ... ok\ntest_it_runs_against_this_repo_and_returns_a_usable_report (test_wiki_ingest_drift.RealRepoTests.test_it_runs_against_this_repo_and_returns_a_usable_report)\nGrounded against real state, but NOT pinned to a specific gap: a test ... ok\ntest_prd_status_omits_it_when_clean (test_wiki_ingest_drift.SurfaceTests.test_prd_status_omits_it_when_clean) ... ok\ntest_prd_status_reports_the_drift (test_wiki_ingest_drift.SurfaceTests.test_prd_status_reports_the_drift) ... ok\ntest_this_repos_wiki_reads_byte_exact (test_wiki_page_contract.HubRepoSmokeTests.test_this_repos_wiki_reads_byte_exact) ... ok\ntest_list_enumerates_canonical_pages_with_titles (test_wiki_page_contract.WikiPageListTests.test_list_enumerates_canonical_pages_with_titles) ... ok\ntest_boundaries_are_hard (test_wiki_page_contract.WikiPageReadTests.test_boundaries_are_hard) ... ok\ntest_drift_remains_the_default_action (test_wiki_page_contract.WikiPageReadTests.test_drift_remains_the_default_action) ... ok\ntest_read_page_without_stamps_reports_null_provenance (test_wiki_page_contract.WikiPageReadTests.test_read_page_without_stamps_reports_null_provenance) ... ok\ntest_read_requires_a_path (test_wiki_page_contract.WikiPageReadTests.test_read_requires_a_path) ... ok\ntest_read_returns_exact_markdown_with_provenance (test_wiki_page_contract.WikiPageReadTests.test_read_returns_exact_markdown_with_provenance) ... ok\ntest_no_cp1252_unencodable_chars_in_agent_facing_tools (test_windows_console_safe.SourceScanTests.test_no_cp1252_unencodable_chars_in_agent_facing_tools) ... ok\ntest_backfill_pending_status_renders_cp1252_safe (test_windows_console_safe.StatusRenderTests.test_backfill_pending_status_renders_cp1252_safe) ... ok\ntest_json_output_escapes_non_console_characters (test_windows_console_safe.WorkflowCliRenderTests.test_json_output_escapes_non_console_characters) ... ok\ntest_repository_workflow_surfaces_are_chml_zero (test_workflow_chml_audit.WorkflowChmlAuditTests.test_repository_workflow_surfaces_are_chml_zero) ... ok\ntest_semantic_skill_finding_is_part_of_workflow_chml (test_workflow_chml_audit.WorkflowChmlAuditTests.test_semantic_skill_finding_is_part_of_workflow_chml) ... ok\ntest_git_workflow_pushes_clean_verified_commits_in_autonomous (test_workflow_consistency.AutonomyConflictResolutionTests.test_git_workflow_pushes_clean_verified_commits_in_autonomous) ... ok\ntest_request_intake_defers_autonomy_and_owns_graduation (test_workflow_consistency.AutonomyConflictResolutionTests.test_request_intake_defers_autonomy_and_owns_graduation) ... ok\ntest_evidence_pair_states_create_vs_review_boundary (test_workflow_consistency.BoundaryClarityTests.test_evidence_pair_states_create_vs_review_boundary) ... ok\ntest_session_close_states_memory_boundary (test_workflow_consistency.BoundaryClarityTests.test_session_close_states_memory_boundary) ... ok\ntest_document_branch_has_promotion_owner (test_workflow_consistency.DeadEndOwnerTests.test_document_branch_has_promotion_owner) ... ok\ntest_health_findings_have_triage_dispositions (test_workflow_consistency.DeadEndOwnerTests.test_health_findings_have_triage_dispositions) ... ok\ntest_memory_owns_schema_version_changes (test_workflow_consistency.DeadEndOwnerTests.test_memory_owns_schema_version_changes) ... ok\ntest_planning_lifecycle_has_stage_readiness_checkpoints (test_workflow_consistency.DeadEndOwnerTests.test_planning_lifecycle_has_stage_readiness_checkpoints) ... ok\ntest_session_close_runs_traceability_sync (test_workflow_consistency.DeadEndOwnerTests.test_session_close_runs_traceability_sync) ... ok\n\n----------------------------------------------------------------------\nRan 1263 tests in 103.299s\n\nOK (skipped=1)\n"
          },
          "output_hash": "b2ad3613f0a6d2f7f2ed29cac89a674eb1e8842f5dab094b612b2919d032e99b",
          "completed_at": "2026-07-25T02:20:37Z"
        },
        {
          "id": "release",
          "action": "process.fixed",
          "status": "completed",
          "resolved_input_hash": "1e5b0c18d93eb4c2248f9a00adbd438e52f3ef02137477fb8376c69cfe86fc9b",
          "started_at": "2026-07-25T02:20:37Z",
          "output": {
            "operation": "release_check",
            "command": [
              "python",
              "scripts/release_check.py"
            ],
            "exit_code": 0,
            "stdout": "# Release Hygiene Report\n\nBase version: `0.16.54`\nHead version: `0.16.56`\nChanged files checked: 37\n\n## Findings\n\n- None\n",
            "stderr": ""
          },
          "output_hash": "bca1be3e527aac5ea96b991d5cdf5d8df0b56438bc2fdcc163d18d11f11f8085",
          "completed_at": "2026-07-25T02:20:38Z"
        },
        {
          "id": "gaps",
          "action": "process.fixed",
          "status": "completed",
          "resolved_input_hash": "577241909238eeb55683f89d2d2216648dad2e3127397993e22493829a1307a4",
          "started_at": "2026-07-25T02:20:38Z",
          "output": {
            "operation": "gap_audit",
            "command": [
              "python",
              "scripts/gap_audit.py",
              "--target-version",
              "0.16.56",
              "--config",
              ".prd_plugin/config.json",
              "--releases",
              ".prd_plugin/state/releases.json"
            ],
            "exit_code": 0,
            "stdout": "# PRD Plugin Gap Audit\n\nTarget version: `0.16.56`\n\n## Findings\n\n- None\n",
            "stderr": ""
          },
          "output_hash": "c2764790a6e95c4c122cf1220d85da6127d23f23c473ccfb640cc906fe0bd06d",
          "completed_at": "2026-07-25T02:20:38Z"
        },
        {
          "id": "package",
          "action": "process.fixed",
          "status": "completed",
          "resolved_input_hash": "06cd12e1f3db3d985f9150520afa60f288297ff0ca01a8e813e9bb6291aa8836",
          "started_at": "2026-07-25T02:20:38Z",
          "output": {
            "operation": "package_check",
            "command": [
              "npm",
              "pack",
              "--dry-run"
            ],
            "exit_code": 0,
            "stdout": "prd-plugin-0.16.56.tgz\n",
            "stderr": "te.md\nnpm notice 17.0kB templates/repo-skeleton/.agents/skills/project-llm-wiki/SKILL.md\nnpm notice 7.4kB templates/repo-skeleton/.agents/skills/project-local-integration/SKILL.md\nnpm notice 8.1kB templates/repo-skeleton/.agents/skills/project-memory/SKILL.md\nnpm notice 6.2kB templates/repo-skeleton/.agents/skills/project-planning-lifecycle/SKILL.md\nnpm notice 6.0kB templates/repo-skeleton/.agents/skills/project-prd-plugin-setup/SKILL.md\nnpm notice 3.5kB templates/repo-skeleton/.agents/skills/project-prd/SKILL.md\nnpm notice 27.5kB templates/repo-skeleton/.agents/skills/project-request-intake/SKILL.md\nnpm notice 4.8kB templates/repo-skeleton/.agents/skills/project-session-close/SKILL.md\nnpm notice 10.3kB templates/repo-skeleton/.agents/skills/project-systematic-debugging/SKILL.md\nnpm notice 4.8kB templates/repo-skeleton/.agents/skills/project-test-driven-implementation/SKILL.md\nnpm notice 3.7kB templates/repo-skeleton/.agents/skills/project-traceability-review/SKILL.md\nnpm notice 2.5kB templates/repo-skeleton/.agents/skills/project-traceability-sync/SKILL.md\nnpm notice 6.6kB templates/repo-skeleton/.agents/skills/project-verification-before-completion/SKILL.md\nnpm notice 1.5kB templates/repo-skeleton/.agents/skills/source-command-prd-autonomy/SKILL.md\nnpm notice 1.2kB templates/repo-skeleton/.agents/skills/source-command-prd-close/SKILL.md\nnpm notice 3.3kB templates/repo-skeleton/.agents/skills/source-command-prd-config/SKILL.md\nnpm notice 2.4kB templates/repo-skeleton/.agents/skills/source-command-prd-drift/SKILL.md\nnpm notice 2.1kB templates/repo-skeleton/.agents/skills/source-command-prd-graph/SKILL.md\nnpm notice 2.2kB templates/repo-skeleton/.agents/skills/source-command-prd-hooks/SKILL.md\nnpm notice 1.3kB templates/repo-skeleton/.agents/skills/source-command-prd-new/SKILL.md\nnpm notice 2.0kB templates/repo-skeleton/.agents/skills/source-command-prd-off/SKILL.md\nnpm notice 1.5kB templates/repo-skeleton/.agents/skills/source-command-prd-on/SKILL.md\nnpm notice 2.3kB templates/repo-skeleton/.agents/skills/source-command-prd-reflections/SKILL.md\nnpm notice 2.5kB templates/repo-skeleton/.agents/skills/source-command-prd-report/SKILL.md\nnpm notice 1.2kB templates/repo-skeleton/.agents/skills/source-command-prd-status/SKILL.md\nnpm notice 1.7kB templates/repo-skeleton/.agents/skills/source-command-prd-track/SKILL.md\nnpm notice 1.8kB templates/repo-skeleton/.agents/skills/source-command-prd-version/SKILL.md\nnpm notice 1.7kB templates/repo-skeleton/.agents/skills/source-command-prd-workflow/SKILL.md\nnpm notice 764B templates/repo-skeleton/.claude-plugin/plugin.json\nnpm notice 772B templates/repo-skeleton/.claude/commands/prd-autonomy.md\nnpm notice 493B templates/repo-skeleton/.claude/commands/prd-close.md\nnpm notice 2.5kB templates/repo-skeleton/.claude/commands/prd-config.md\nnpm notice 1.6kB templates/repo-skeleton/.claude/commands/prd-drift.md\nnpm notice 1.4kB templates/repo-skeleton/.claude/commands/prd-graph.md\nnpm notice 1.6kB templates/repo-skeleton/.claude/commands/prd-hooks.md\nnpm notice 639B templates/repo-skeleton/.claude/commands/prd-new.md\nnpm notice 1.4kB templates/repo-skeleton/.claude/commands/prd-off.md\nnpm notice 862B templates/repo-skeleton/.claude/commands/prd-on.md\nnpm notice 1.6kB templates/repo-skeleton/.claude/commands/prd-reflections.md\nnpm notice 1.8kB templates/repo-skeleton/.claude/commands/prd-report.md\nnpm notice 549B templates/repo-skeleton/.claude/commands/prd-status.md\nnpm notice 974B templates/repo-skeleton/.claude/commands/prd-track.md\nnpm notice 1.0kB templates/repo-skeleton/.claude/commands/prd-version.md\nnpm notice 938B templates/repo-skeleton/.claude/commands/prd-workflow.md\nnpm notice 1.6kB templates/repo-skeleton/.claude/hooks/prd_drift_check.py\nnpm notice 2.0kB templates/repo-skeleton/.claude/hooks/prd_log_skill.py\nnpm notice 4.1kB templates/repo-skeleton/.claude/hooks/prd_nudge.py\nnpm notice 3.7kB templates/repo-skeleton/.claude/hooks/prd_precommit_gate.py\nnpm notice 6.1kB templates/repo-skeleton/.claude/hooks/prd_reflection.py\nnpm notice 3.5kB templates/repo-skeleton/.claude/hooks/prd_session_report.py\nnpm notice 15.8kB templates/repo-skeleton/.claude/hooks/prd_stop_guard.py\nnpm notice 1.2kB templates/repo-skeleton/.claude/settings.json\nnpm notice 3.0kB templates/repo-skeleton/.claude/skills/project-architecture/SKILL.md\nnpm notice 7.4kB templates/repo-skeleton/.claude/skills/project-blocker-resolution/SKILL.md\nnpm notice 2.8kB templates/repo-skeleton/.claude/skills/project-brainstorm/SKILL.md\nnpm notice 5.5kB templates/repo-skeleton/.claude/skills/project-change-request/SKILL.md\nnpm notice 6.3kB templates/repo-skeleton/.claude/skills/project-code-review/SKILL.md\nnpm notice 2.7kB templates/repo-skeleton/.claude/skills/project-decision-ledger/SKILL.md\nnpm notice 23.6kB templates/repo-skeleton/.claude/skills/project-decision-policy/SKILL.md\nnpm notice 4.4kB templates/repo-skeleton/.claude/skills/project-deterministic-workflows/SKILL.md\nnpm notice 5.2kB templates/repo-skeleton/.claude/skills/project-document-branch/SKILL.md\nnpm notice 2.8kB templates/repo-skeleton/.claude/skills/project-evidence-ledger/SKILL.md\nnpm notice 3.3kB templates/repo-skeleton/.claude/skills/project-evidence/SKILL.md\nnpm notice 11.9kB templates/repo-skeleton/.claude/skills/project-git-workflow/SKILL.md\nnpm notice 7.4kB templates/repo-skeleton/.claude/skills/project-health/SKILL.md\nnpm notice 6.0kB templates/repo-skeleton/.claude/skills/project-implementation-plan/SKILL.md\nnpm notice 1.1kB templates/repo-skeleton/.claude/skills/project-llm-wiki/LICENSE\nnpm notice 842B templates/repo-skeleton/.claude/skills/project-llm-wiki/references/archive-template.md\nnpm notice 843B templates/repo-skeleton/.claude/skills/project-llm-wiki/references/article-template.md\nnpm notice 559B templates/repo-skeleton/.claude/skills/project-llm-wiki/references/index-template.md\nnpm notice 317B templates/repo-skeleton/.claude/skills/project-llm-wiki/references/raw-template.md\nnpm notice 17.0kB templates/repo-skeleton/.claude/skills/project-llm-wiki/SKILL.md\nnpm notice 7.4kB templates/repo-skeleton/.claude/skills/project-local-integration/SKILL.md\nnpm notice 8.1kB templates/repo-skeleton/.claude/skills/project-memory/SKILL.md\nnpm notice 6.2kB templates/repo-skeleton/.claude/skills/project-planning-lifecycle/SKILL.md\nnpm notice 6.0kB templates/repo-skeleton/.claude/skills/project-prd-plugin-setup/SKILL.md\nnpm notice 3.5kB templates/repo-skeleton/.claude/skills/project-prd/SKILL.md\nnpm notice 27.5kB templates/repo-skeleton/.claude/skills/project-request-intake/SKILL.md\nnpm notice 4.8kB templates/repo-skeleton/.claude/skills/project-session-close/SKILL.md\nnpm notice 10.3kB templates/repo-skeleton/.claude/skills/project-systematic-debugging/SKILL.md\nnpm notice 4.8kB templates/repo-skeleton/.claude/skills/project-test-driven-implementation/SKILL.md\nnpm notice 3.7kB templates/repo-skeleton/.claude/skills/project-traceability-review/SKILL.md\nnpm notice 2.5kB templates/repo-skeleton/.claude/skills/project-traceability-sync/SKILL.md\nnpm notice 6.6kB templates/repo-skeleton/.claude/skills/project-verification-before-completion/SKILL.md\nnpm notice 1.5kB templates/repo-skeleton/.claude/skills/source-command-prd-autonomy/SKILL.md\nnpm notice 1.2kB templates/repo-skeleton/.claude/skills/source-command-prd-close/SKILL.md\nnpm notice 3.3kB templates/repo-skeleton/.claude/skills/source-command-prd-config/SKILL.md\nnpm notice 2.4kB templates/repo-skeleton/.claude/skills/source-command-prd-drift/SKILL.md\nnpm notice 2.1kB templates/repo-skeleton/.claude/skills/source-command-prd-graph/SKILL.md\nnpm notice 2.2kB templates/repo-skeleton/.claude/skills/source-command-prd-hooks/SKILL.md\nnpm notice 1.3kB templates/repo-skeleton/.claude/skills/source-command-prd-new/SKILL.md\nnpm notice 2.0kB templates/repo-skeleton/.claude/skills/source-command-prd-off/SKILL.md\nnpm notice 1.5kB templates/repo-skeleton/.claude/skills/source-command-prd-on/SKILL.md\nnpm notice 2.3kB templates/repo-skeleton/.claude/skills/source-command-prd-reflections/SKILL.md\nnpm notice 2.5kB templates/repo-skeleton/.claude/skills/source-command-prd-report/SKILL.md\nnpm notice 1.2kB templates/repo-skeleton/.claude/skills/source-command-prd-status/SKILL.md\nnpm notice 1.7kB templates/repo-skeleton/.claude/skills/source-command-prd-track/SKILL.md\nnpm notice 1.8kB templates/repo-skeleton/.claude/skills/source-command-prd-version/SKILL.md\nnpm notice 1.7kB templates/repo-skeleton/.claude/skills/source-command-prd-workflow/SKILL.md\nnpm notice 3.2kB templates/repo-skeleton/.codex-plugin/plugin.json\nnpm notice 3.3kB templates/repo-skeleton/.codex/hooks.json\nnpm notice 743B templates/repo-skeleton/.githooks/pre-commit\nnpm notice 734B templates/repo-skeleton/.github/workflows/prd-gate.yml\nnpm notice 3.2kB templates/repo-skeleton/.opencode/plugin.json\nnpm notice 4.4kB templates/repo-skeleton/.opencode/plugins/prd-hooks.js\nnpm notice 3.0kB templates/repo-skeleton/.opencode/skill/project-architecture/SKILL.md\nnpm notice 7.4kB templates/repo-skeleton/.opencode/skill/project-blocker-resolution/SKILL.md\nnpm notice 2.8kB templates/repo-skeleton/.opencode/skill/project-brainstorm/SKILL.md\nnpm notice 5.5kB templates/repo-skeleton/.opencode/skill/project-change-request/SKILL.md\nnpm notice 6.3kB templates/repo-skeleton/.opencode/skill/project-code-review/SKILL.md\nnpm notice 2.7kB templates/repo-skeleton/.opencode/skill/project-decision-ledger/SKILL.md\nnpm notice 23.6kB templates/repo-skeleton/.opencode/skill/project-decision-policy/SKILL.md\nnpm notice 4.4kB templates/repo-skeleton/.opencode/skill/project-deterministic-workflows/SKILL.md\nnpm notice 5.2kB templates/repo-skeleton/.opencode/skill/project-document-branch/SKILL.md\nnpm notice 2.8kB templates/repo-skeleton/.opencode/skill/project-evidence-ledger/SKILL.md\nnpm notice 3.3kB templates/repo-skeleton/.opencode/skill/project-evidence/SKILL.md\nnpm notice 11.9kB templates/repo-skeleton/.opencode/skill/project-git-workflow/SKILL.md\nnpm notice 7.4kB templates/repo-skeleton/.opencode/skill/project-health/SKILL.md\nnpm notice 6.0kB templates/repo-skeleton/.opencode/skill/project-implementation-plan/SKILL.md\nnpm notice 1.1kB templates/repo-skeleton/.opencode/skill/project-llm-wiki/LICENSE\nnpm notice 842B templates/repo-skeleton/.opencode/skill/project-llm-wiki/references/archive-template.md\nnpm notice 843B templates/repo-skeleton/.opencode/skill/project-llm-wiki/references/article-template.md\nnpm notice 559B templates/repo-skeleton/.opencode/skill/project-llm-wiki/references/index-template.md\nnpm notice 317B templates/repo-skeleton/.opencode/skill/project-llm-wiki/references/raw-template.md\nnpm notice 17.0kB templates/repo-skeleton/.opencode/skill/project-llm-wiki/SKILL.md\nnpm notice 7.4kB templates/repo-skeleton/.opencode/skill/project-local-integration/SKILL.md\nnpm notice 8.1kB templates/repo-skeleton/.opencode/skill/project-memory/SKILL.md\nnpm notice 6.2kB templates/repo-skeleton/.opencode/skill/project-planning-lifecycle/SKILL.md\nnpm notice 6.0kB templates/repo-skeleton/.opencode/skill/project-prd-plugin-setup/SKILL.md\nnpm notice 3.5kB templates/repo-skeleton/.opencode/skill/project-prd/SKILL.md\nnpm notice 27.5kB templates/repo-skeleton/.opencode/skill/project-request-intake/SKILL.md\nnpm notice 4.8kB templates/repo-skeleton/.opencode/skill/project-session-close/SKILL.md\nnpm notice 10.3kB templates/repo-skeleton/.opencode/skill/project-systematic-debugging/SKILL.md\nnpm notice 4.8kB templates/repo-skeleton/.opencode/skill/project-test-driven-implementation/SKILL.md\nnpm notice 3.7kB templates/repo-skeleton/.opencode/skill/project-traceability-review/SKILL.md\nnpm notice 2.5kB templates/repo-skeleton/.opencode/skill/project-traceability-sync/SKILL.md\nnpm notice 6.6kB templates/repo-skeleton/.opencode/skill/project-verification-before-completion/SKILL.md\nnpm notice 1.5kB templates/repo-skeleton/.opencode/skill/source-command-prd-autonomy/SKILL.md\nnpm notice 1.2kB templates/repo-skeleton/.opencode/skill/source-command-prd-close/SKILL.md\nnpm notice 3.3kB templates/repo-skeleton/.opencode/skill/source-command-prd-config/SKILL.md\nnpm notice 2.4kB templates/repo-skeleton/.opencode/skill/source-command-prd-drift/SKILL.md\nnpm notice 2.1kB templates/repo-skeleton/.opencode/skill/source-command-prd-graph/SKILL.md\nnpm notice 2.2kB templates/repo-skeleton/.opencode/skill/source-command-prd-hooks/SKILL.md\nnpm notice 1.3kB templates/repo-skeleton/.opencode/skill/source-command-prd-new/SKILL.md\nnpm notice 2.0kB templates/repo-skeleton/.opencode/skill/source-command-prd-off/SKILL.md\nnpm notice 1.5kB templates/repo-skeleton/.opencode/skill/source-command-prd-on/SKILL.md\nnpm notice 2.3kB templates/repo-skeleton/.opencode/skill/source-command-prd-reflections/SKILL.md\nnpm notice 2.5kB templates/repo-skeleton/.opencode/skill/source-command-prd-report/SKILL.md\nnpm notice 1.2kB templates/repo-skeleton/.opencode/skill/source-command-prd-status/SKILL.md\nnpm notice 1.7kB templates/repo-skeleton/.opencode/skill/source-command-prd-track/SKILL.md\nnpm notice 1.8kB templates/repo-skeleton/.opencode/skill/source-command-prd-version/SKILL.md\nnpm notice 1.7kB templates/repo-skeleton/.opencode/skill/source-command-prd-workflow/SKILL.md\nnpm notice 14.9kB templates/repo-skeleton/.prd_plugin/config.json\nnpm notice 1.6kB templates/repo-skeleton/.prd_plugin/hooks/prd_drift_check.py\nnpm notice 12.0kB templates/repo-skeleton/.prd_plugin/hooks/prd_hook_dispatch.py\nnpm notice 2.0kB templates/repo-skeleton/.prd_plugin/hooks/prd_log_skill.py\nnpm notice 4.1kB templates/repo-skeleton/.prd_plugin/hooks/prd_nudge.py\nnpm notice 3.7kB templates/repo-skeleton/.prd_plugin/hooks/prd_precommit_gate.py\nnpm notice 64.5kB templates/repo-skeleton/.prd_plugin/hooks/prd_reason_guard.py\nnpm notice 6.1kB templates/repo-skeleton/.prd_plugin/hooks/prd_reflection.py\nnpm notice 3.5kB templates/repo-skeleton/.prd_plugin/hooks/prd_session_report.py\nnpm notice 15.8kB templates/repo-skeleton/.prd_plugin/hooks/prd_stop_guard.py\nnpm notice 8.0kB templates/repo-skeleton/.prd_plugin/hooks/prd_test_scope_guard.py\nnpm notice 3.7kB templates/repo-skeleton/.prd_plugin/ID-SCHEME.md\nnpm notice 581B templates/repo-skeleton/.prd_plugin/ids/registry.json\nnpm notice 12.9kB templates/repo-skeleton/.prd_plugin/METHOD.md\nnpm notice 725B templates/repo-skeleton/.prd_plugin/method/artifact-format.md\nnpm notice 1.5kB templates/repo-skeleton/.prd_plugin/method/completion-gate.md\nnpm notice 3.6kB templates/repo-skeleton/.prd_plugin/method/deterministic-workflows.md\nnpm notice 1.2kB templates/repo-skeleton/.prd_plugin/method/estimation.md\nnpm notice 2.2kB templates/repo-skeleton/.prd_plugin/method/grounding.md\nnpm notice 3.2kB templates/repo-skeleton/.prd_plugin/method/reporting.md\nnpm notice 4.1kB templates/repo-skeleton/.prd_plugin/method/self-service.md\nnpm notice 1.6kB templates/repo-skeleton/.prd_plugin/method/staleness-rules.md\nnpm notice 1.0kB templates/repo-skeleton/.prd_plugin/method/state-validation.md\nnpm notice 3.0kB templates/repo-skeleton/.prd_plugin/method/subagents.md\nnpm notice 1.3kB templates/repo-skeleton/.prd_plugin/services.json\nnpm notice 51B templates/repo-skeleton/.prd_plugin/state/changelog.json\nnpm notice 53B templates/repo-skeleton/.prd_plugin/state/decisions.json\nnpm notice 165B templates/repo-skeleton/.prd_plugin/state/health.json\nnpm notice 51B templates/repo-skeleton/.prd_plugin/state/memory.json\nnpm notice 287B templates/repo-skeleton/.prd_plugin/state/project.json\nnpm notice 52B templates/repo-skeleton/.prd_plugin/state/releases.json\nnpm notice 52B templates/repo-skeleton/.prd_plugin/state/requests.json\nnpm notice 215B templates/repo-skeleton/.prd_plugin/state/sessions/shared/promoted-session-summaries.jsonl\nnpm notice 49B templates/repo-skeleton/.prd_plugin/state/substrate-links.json\nnpm notice 51B templates/repo-skeleton/.prd_plugin/state/tracking.json\nnpm notice 48B templates/repo-skeleton/.prd_plugin/state/workflow-runs.json\nnpm notice 180B templates/repo-skeleton/.prd_plugin/templates/architecture-delta.md\nnpm notice 1.5kB templates/repo-skeleton/.prd_plugin/templates/architecture.json\nnpm notice 396B templates/repo-skeleton/.prd_plugin/templates/brainstorm.md\nnpm notice 274B templates/repo-skeleton/.prd_plugin/templates/changelog.json\nnpm notice 15.0kB templates/repo-skeleton/.prd_plugin/templates/config.json\nnpm notice 265B templates/repo-skeleton/.prd_plugin/templates/decision-record.md\nnpm notice 398B templates/repo-skeleton/.prd_plugin/templates/decisions.json\nnpm notice 372B templates/repo-skeleton/.prd_plugin/templates/doc-branch.json\nnpm notice 343B templates/repo-skeleton/.prd_plugin/templates/doc-branch.md\nnpm notice 129B templates/repo-skeleton/.prd_plugin/templates/evidence.md\nnpm notice 262B templates/repo-skeleton/.prd_plugin/templates/handoff.json\nnpm notice 427B templates/repo-skeleton/.prd_plugin/templates/health.json\nnpm notice 729B templates/repo-skeleton/.prd_plugin/templates/human-exports/architecture.md\nnpm notice 652B templates/repo-skeleton/.prd_plugin/templates/human-exports/implementation-plan.md\nnpm notice 610B templates/repo-skeleton/.prd_plugin/templates/human-exports/prd.md\nnpm notice 1.5kB templates/repo-skeleton/.prd_plugin/templates/implementation-plan.json\nnpm notice 70B templates/repo-skeleton/.prd_plugin/templates/mailbox.json\nnpm notice 365B templates/repo-skeleton/.prd_plugin/templates/memory.json\nnpm notice 490B templates/repo-skeleton/.prd_plugin/templates/merge-checklist.md\nnpm notice 176B templates/repo-skeleton/.prd_plugin/templates/plan-delta.md\nnpm notice 152B templates/repo-skeleton/.prd_plugin/templates/prd-delta.md\nnpm notice 1.4kB templates/repo-skeleton/.prd_plugin/templates/prd.json\nnpm notice 455B templates/repo-skeleton/.prd_plugin/templates/project.json\nnpm notice 126B templates/repo-skeleton/.prd_plugin/templates/promoted-session-summary.jsonl\nnpm notice 923B templates/repo-skeleton/.prd_plugin/templates/releases.json\nnpm notice 1.4kB templates/repo-skeleton/.prd_plugin/templates/request.json\nnpm notice 1.7kB templates/repo-skeleton/.prd_plugin/templates/requests.json\nnpm notice 23.4kB templates/repo-skeleton/.prd_plugin/templates/script-install-scope.json\nnpm notice 247B templates/repo-skeleton/.prd_plugin/templates/session.json\nnpm notice 15.6kB templates/repo-skeleton/.prd_plugin/templates/skill-install-scope.json\nnpm notice 333B templates/repo-skeleton/.prd_plugin/templates/submission-package.json\nnpm notice 5.7kB templates/repo-skeleton/.prd_plugin/templates/tool-surface.json\nnpm notice 230B templates/repo-skeleton/.prd_plugin/templates/traceability-matrix.md\nnpm notice 321B templates/repo-skeleton/.prd_plugin/templates/tracking.json\nnpm notice 375B templates/repo-skeleton/.prd_plugin/templates/utcp-config.json\nnpm notice 22.2kB templates/repo-skeleton/.prd_plugin/workflows.json\nnpm notice 15.2kB templates/repo-skeleton/AGENTS.md\nnpm notice 11.6kB templates/repo-skeleton/CLAUDE.md\nnpm notice 12.0kB templates/repo-skeleton/docs/INSTALL-MATRIX.md\nnpm notice 2.7kB templates/repo-skeleton/hooks/hooks.json\nnpm notice 1.4kB templates/request.json\nnpm notice 1.7kB templates/requests.json\nnpm notice 23.4kB templates/script-install-scope.json\nnpm notice 1.3kB templates/services.json\nnpm notice 247B templates/session.json\nnpm notice 15.6kB templates/skill-install-scope.json\nnpm notice 333B templates/submission-package.json\nnpm notice 10.4kB templates/substrate-capabilities.json\nnpm notice 48.5kB templates/tool-spec.json\nnpm notice 7.9kB templates/tool-surface.json\nnpm notice 230B templates/traceability-matrix.md\nnpm notice 321B templates/tracking.json\nnpm notice 375B templates/utcp-config.json\nnpm notice 22.2kB templates/workflows.json\nnpm notice Tarball Details\nnpm notice name: prd-plugin\nnpm notice version: 0.16.56\nnpm notice filename: prd-plugin-0.16.56.tgz\nnpm notice package size: 1.8 MB\nnpm notice unpacked size: 10.9 MB\nnpm notice shasum: fee1a334700a49d496086d48ab4d7cff99429272\nnpm notice integrity: sha512-bEGh9B4EAFSwG[...]6PF9G/90JL/0w==\nnpm notice total files: 650\nnpm notice\n"
          },
          "output_hash": "612604ad237765c152f0a6e558ffc1f81b51ea7566da14a827347390db745cf7",
          "completed_at": "2026-07-25T02:20:40Z"
        },
        {
          "id": "gate",
          "action": "state.gate",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-25T02:20:40Z",
          "output": {
            "status": "attention",
            "repo_root": "D:\\Projects\\prd-plugin-worktrees\\codex-reasoning-summary-session-fallback",
            "summary": {
              "errors": 0,
              "warnings": 0
            },
            "findings": [
              {
                "check": "state_consistency",
                "severity": "info",
                "summary": "File references 2 canonical IDs across 2 prefix(es); treated as a positive signal of extra work.",
                "required_action": "No action required; this is an informational signal."
              }
            ]
          },
          "output_hash": "af95f5508bef069fc3c46ffe3a052eeba9fa5c6bfadc00da8d536a21484deebe",
          "completed_at": "2026-07-25T02:20:40Z"
        }
      ],
      "completed_at": "2026-07-25T02:20:40Z"
    },
    {
      "id": "WFR-423",
      "schema_version": "1.0",
      "workflow_id": "evidence.record",
      "workflow_version": 1,
      "definition_hash": "a6dfcb8faadb669d5c097a0d7fa9a738f20ee98e03b552c9557259a94a197e88",
      "plan_hash": "5dfe09f8bbce563dbfead69b55aaa10bd9fbd7ee145f3f2864800f92cd6ab819",
      "input_hash": "12b35f82a2e4865ba79061b8efaaaef89b05631e89c011cec99327b3538721d4",
      "inputs": {
        "summary": "Reason Guard semantic-lite classification, conditional clearance, aggregate telemetry, status/UI projection, and downstream template parity verified against labelled replay, full hub release gates, and mock-driven system scenarios.",
        "type": "validation",
        "linked_ids": [
          "REQ-174",
          "TRK-161",
          "IMP-014",
          "IMP-TASK-113",
          "IMP-TASK-114",
          "WFR-420",
          "WFR-421",
          "WFR-422"
        ],
        "commands": [
          "python scripts/reason_guard_benchmark.py --samples 100 --warmup 10 --json (44/44 labelled cases correct; precision=recall=F1=accuracy=1.0; classifier p95=0.013 ms; structured hook p95=18.684 ms; delta=4.515 ms)",
          "python scripts/prd_workflows.py --repo-root . run hub.release --idempotency-key codex-reason-guard-semantic-lite-release-v1 --json (completed; CHML critical/high/medium/low all 0; full unit suite and release/package gates passed)",
          "python -m pytest system_tests -v (12 passed, 6 optional OpenCode scenarios skipped)"
        ],
        "limitations": "Accuracy is established on the checked-in 44-case balanced and adversarial corpus; runtime aggregate counters support measuring future observed traffic without retaining extra text."
      },
      "idempotency_key": "codex-reason-guard-semantic-lite-evidence-v1",
      "status": "blocked",
      "attempt": 1,
      "created_at": "2026-07-25T02:21:42Z",
      "updated_at": "2026-07-25T02:21:42Z",
      "receipts": [],
      "steps": [
        {
          "id": "record",
          "action": "state.mutate",
          "status": "outcome_unknown",
          "resolved_input_hash": "48d91c7b0019cba089bd9d758c8bec259cad7448539c302b2392bb8985c69037",
          "started_at": "2026-07-25T02:21:42Z",
          "execution_token": "96f870d9c46d6abf81fd5bc6c8d54ece87ed50750eafc9806f75b8d6f6ed0a1e"
        },
        {
          "id": "confirm",
          "action": "state.query",
          "status": "pending"
        }
      ],
      "error": {
        "type": "ActionError",
        "message": "D:\\Projects\\prd-plugin-worktrees\\codex-reasoning-summary-session-fallback\\mcp\\server.cjs:453\n            throw new ToolError(`${tool}: '${name}' entries must be plain objects.`);\n            ^\n\nError: prd_record_evidence: 'commands' entries must be plain objects.\n    at checkArgs (D:\\Projects\\prd-plugin-worktrees\\codex-reasoning-summary-session-fallback\\mcp\\server.cjs:453:19)\n    at Object.handler (D:\\Projects\\prd-plugin-worktrees\\codex-reasoning-summary-session-fallback\\mcp\\server.cjs:1832:17)\n    at Object.callTool (D:\\Projects\\prd-plugin-worktrees\\codex-reasoning-summary-session-fallback\\mcp\\server.cjs:2522:15)\n    at [eval]:1:44\n    at runScriptInThisContext (node:internal/vm:219:10)\n    at node:internal/process/execution:483:12\n    at [eval]-wrapper:6:24\n    at runScriptInContext (node:internal/process/execution:481:60)\n    at evalFunction (node:internal/process/execution:315:30)\n    at evalTypeScript (node:internal/process/execution:327:3)\n\nNode.js v26.3.0"
      }
    },
    {
      "id": "WFR-424",
      "schema_version": "1.0",
      "workflow_id": "evidence.record",
      "workflow_version": 1,
      "definition_hash": "a6dfcb8faadb669d5c097a0d7fa9a738f20ee98e03b552c9557259a94a197e88",
      "plan_hash": "e2048cb19111f3d767aff5b79503da32e52a1c642587077d30b2edcb70db3650",
      "input_hash": "0644181676051c45fb14fc606c36d34edf7210b4608223efcc63de83929ee56a",
      "inputs": {
        "summary": "Reason Guard semantic-lite classification, conditional clearance, aggregate telemetry, status/UI projection, and downstream template parity verified against labelled replay, full hub release gates, and mock-driven system scenarios.",
        "type": "validation",
        "linked_ids": [
          "REQ-174",
          "TRK-161",
          "IMP-014",
          "IMP-TASK-113",
          "IMP-TASK-114",
          "WFR-420",
          "WFR-421",
          "WFR-422"
        ],
        "commands": [
          {
            "command": "python scripts/reason_guard_benchmark.py --samples 100 --warmup 10 --json",
            "outcome": "44/44 labelled cases correct; precision, recall, F1, and accuracy 1.0; classifier p95 0.013 ms; structured hook p95 18.684 ms; delta 4.515 ms."
          },
          {
            "command": "python scripts/prd_workflows.py --repo-root . run hub.release --idempotency-key codex-reason-guard-semantic-lite-release-v1 --json",
            "outcome": "Completed; CHML critical/high/medium/low all 0; full unit suite and release/package gates passed."
          },
          {
            "command": "python -m pytest system_tests -v",
            "outcome": "12 passed; 6 optional OpenCode live-driver scenarios skipped."
          }
        ],
        "limitations": "Accuracy is established on the checked-in 44-case balanced and adversarial corpus; runtime aggregate counters support measuring future observed traffic without retaining extra text."
      },
      "idempotency_key": "codex-reason-guard-semantic-lite-evidence-v2",
      "status": "completed",
      "attempt": 1,
      "created_at": "2026-07-25T02:22:14Z",
      "updated_at": "2026-07-25T02:22:16Z",
      "receipts": [
        {
          "step_id": "record",
          "action": "state.mutate",
          "input_hash": "bf18e9917dc68891f7ebaa0f2f49c7fa4b138d5301b5261f1126faeb64a5c746",
          "output_hash": "d1a16d435bf35bc58893ae5b64ec2791c036e48aae4d3c6c408258f69f66ab11",
          "completed_at": "2026-07-25T02:22:15Z"
        },
        {
          "step_id": "confirm",
          "action": "state.query",
          "input_hash": "a5a27481262fbdd4edcc47f56fc65b7ff11576dd174e549435052f59ed3e64d0",
          "output_hash": "178e47ee576245f9b4ac22d9d78311c5bbc862347bfc83028acc86f5c5381831",
          "completed_at": "2026-07-25T02:22:15Z"
        }
      ],
      "steps": [
        {
          "id": "record",
          "action": "state.mutate",
          "status": "completed",
          "resolved_input_hash": "bf18e9917dc68891f7ebaa0f2f49c7fa4b138d5301b5261f1126faeb64a5c746",
          "started_at": "2026-07-25T02:22:15Z",
          "execution_token": "f1c0933242f8307f9a8d2ff5201af375539f3d0d1bcac07f3710f3f6b8decd74",
          "output": {
            "id": "EV-210"
          },
          "output_hash": "d1a16d435bf35bc58893ae5b64ec2791c036e48aae4d3c6c408258f69f66ab11",
          "completed_at": "2026-07-25T02:22:15Z"
        },
        {
          "id": "confirm",
          "action": "state.query",
          "status": "completed",
          "resolved_input_hash": "a5a27481262fbdd4edcc47f56fc65b7ff11576dd174e549435052f59ed3e64d0",
          "started_at": "2026-07-25T02:22:15Z",
          "output": {
            "kind": "EV",
            "record": {
              "id": "EV-210",
              "type": "validation",
              "summary": "Reason Guard semantic-lite classification, conditional clearance, aggregate telemetry, status/UI projection, and downstream template parity verified against labelled replay, full hub release gates, and mock-driven system scenarios.",
              "linked_ids": [
                "REQ-174",
                "TRK-161",
                "IMP-014",
                "IMP-TASK-113",
                "IMP-TASK-114",
                "WFR-420",
                "WFR-421",
                "WFR-422"
              ],
              "created_at": "2026-07-25",
              "commands": [
                {
                  "command": "python scripts/reason_guard_benchmark.py --samples 100 --warmup 10 --json",
                  "outcome": "44/44 labelled cases correct; precision, recall, F1, and accuracy 1.0; classifier p95 0.013 ms; structured hook p95 18.684 ms; delta 4.515 ms."
                },
                {
                  "command": "python scripts/prd_workflows.py --repo-root . run hub.release --idempotency-key codex-reason-guard-semantic-lite-release-v1 --json",
                  "outcome": "Completed; CHML critical/high/medium/low all 0; full unit suite and release/package gates passed."
                },
                {
                  "command": "python -m pytest system_tests -v",
                  "outcome": "12 passed; 6 optional OpenCode live-driver scenarios skipped."
                }
              ],
              "limitations": "Accuracy is established on the checked-in 44-case balanced and adversarial corpus; runtime aggregate counters support measuring future observed traffic without retaining extra text."
            }
          },
          "output_hash": "178e47ee576245f9b4ac22d9d78311c5bbc862347bfc83028acc86f5c5381831",
          "completed_at": "2026-07-25T02:22:15Z"
        }
      ],
      "completed_at": "2026-07-25T02:22:16Z"
    },
    {
      "id": "WFR-425",
      "schema_version": "1.0",
      "workflow_id": "session.start",
      "workflow_version": 1,
      "definition_hash": "dd0de9444af7b094cc93673d0844fb78c801d87d978cc5f6dd6bf3e3e863917d",
      "plan_hash": "1f4ae0cd6be8385f8a9310e49978bd8d93baa729842eb6df9243665a1b581277",
      "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
      "inputs": {},
      "idempotency_key": "codex-reason-guard-live-e2e-session-start-v1",
      "status": "completed",
      "attempt": 1,
      "created_at": "2026-07-25T03:48:39Z",
      "updated_at": "2026-07-25T03:48:41Z",
      "receipts": [
        {
          "step_id": "mailbox",
          "action": "requests.pull",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "ab8a35139cfd3f5821ebc5138c9a44c899b54e4036790654ff120e79c7ab6223",
          "completed_at": "2026-07-25T03:48:39Z"
        },
        {
          "step_id": "config",
          "action": "config.audit",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "ef2327bf3ea9c100a1a525c09e426de9703016f1b7c177b0df10c0b7cf3f33c9",
          "completed_at": "2026-07-25T03:48:40Z"
        },
        {
          "step_id": "services",
          "action": "services.audit",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "13dcc58bd528f3efa3e6e0fa0853a6eedc376f1f3685fbd4869cbb2b60382ee3",
          "completed_at": "2026-07-25T03:48:40Z"
        },
        {
          "step_id": "state",
          "action": "state.consistency",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "7bd004636e5a786f64604d8cc821f23845cc7f69b783a6392c588759f368f587",
          "completed_at": "2026-07-25T03:48:40Z"
        },
        {
          "step_id": "status",
          "action": "state.query",
          "input_hash": "a15231a2142a2a9a85355a8b9cbbccffe01a9c9c2c2fd8c2bc2987cdc481564a",
          "output_hash": "048cf612d59cf6e46e391303fe0580eb43618c6d6570b479b13b3d0882556efa",
          "completed_at": "2026-07-25T03:48:40Z"
        },
        {
          "step_id": "substrate",
          "action": "substrate.preflight",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "a6df426290b4549a59eecaa0519ead9bcc50b7fcb25bd2185ff6047960f19ccb",
          "completed_at": "2026-07-25T03:48:41Z"
        },
        {
          "step_id": "notices",
          "action": "substrate.notices",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "38b904a1cf83df048360fb2480571b749fd98d57e11f1afdffb5a74a78166fea",
          "completed_at": "2026-07-25T03:48:41Z"
        },
        {
          "step_id": "goals",
          "action": "substrate.goals",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "cdfd4de44a28140e686159f34f7b47975954c67e1d1efcef666e985acb136ed8",
          "completed_at": "2026-07-25T03:48:41Z"
        }
      ],
      "steps": [
        {
          "id": "mailbox",
          "action": "requests.pull",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-25T03:48:39Z",
          "output": {
            "applied": 0,
            "resolved_ids": [],
            "unmatched": [],
            "mailboxes": [],
            "pruned_outbox": [],
            "consumed_mailboxes": [],
            "outbound": {
              "delivered": 0,
              "mailboxes_published": [],
              "undeliverable": [],
              "pending": []
            },
            "addressed": {
              "delivered": 0,
              "destinations": [],
              "undelivered": [
                {
                  "id": "REQ-030",
                  "state": "not_ours_to_send",
                  "target_repo": "prd-plugin",
                  "reason": "REQ-030 was imported from 'ZeusGrid'; its target_repo records who it was addressed to, not somewhere for us to send it. Reply on its thread instead."
                },
                {
                  "id": "REQ-003",
                  "state": "not_ours_to_send",
                  "target_repo": "prd-plugin",
                  "reason": "REQ-003 was imported from 'ZeusGrid'; its target_repo records who it was addressed to, not somewhere for us to send it. Reply on its thread instead."
                },
                {
                  "id": "REQ-004",
                  "state": "not_ours_to_send",
                  "target_repo": "prd-plugin",
                  "reason": "REQ-004 was imported from 'ZeusGrid'; its target_repo records who it was addressed to, not somewhere for us to send it. Reply on its thread instead."
                },
                {
                  "id": "REQ-005",
                  "state": "not_ours_to_send",
                  "target_repo": "prd-plugin",
                  "reason": "REQ-005 was imported from 'GRAPH_LANG'; its target_repo records who it was addressed to, not somewhere for us to send it. Reply on its thread instead."
                },
                {
                  "id": "REQ-002",
                  "state": "self_addressed",
                  "target_repo": "prd-plugin",
                  "reason": "REQ-002 is addressed to this repo ('prd-plugin'); it is already here."
                },
                {
                  "id": "REQ-028",
                  "state": "self_addressed",
                  "target_repo": "prd-plugin",
                  "reason": "REQ-028 is addressed to this repo ('prd-plugin'); it is already here."
                },
                {
                  "id": "REQ-029",
                  "state": "not_ours_to_send",
                  "target_repo": "ai-collab-v3",
                  "reason": "REQ-029 was imported from 'ai-collab-v3'; its target_repo records who it was addressed to, not somewhere for us to send it. Reply on its thread instead."
                },
                {
                  "id": "REQ-138",
                  "state": "terminal",
                  "target_repo": "no-such-repo",
                  "reason": "REQ-138 is 'rejected'; a closed request is not delivered. Reopen it or file a new one if it still needs to travel."
                }
              ],
              "advisories": []
            }
          },
          "output_hash": "ab8a35139cfd3f5821ebc5138c9a44c899b54e4036790654ff120e79c7ab6223",
          "completed_at": "2026-07-25T03:48:39Z"
        },
        {
          "id": "config",
          "action": "config.audit",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-25T03:48:40Z",
          "output": {
            "status": "ok",
            "summary": {
              "settings": 214,
              "mutable": 204,
              "read_only_or_managed": 10,
              "unclassified": 0,
              "unknown": 0,
              "invalid": 0,
              "missing_using_defaults": 0
            },
            "unclassified_keys": [],
            "unknown_keys": [],
            "invalid_values": [],
            "missing_using_defaults": []
          },
          "output_hash": "ef2327bf3ea9c100a1a525c09e426de9703016f1b7c177b0df10c0b7cf3f33c9",
          "completed_at": "2026-07-25T03:48:40Z"
        },
        {
          "id": "services",
          "action": "services.audit",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-25T03:48:40Z",
          "output": {
            "status": "ok",
            "summary": {
              "critical": 0,
              "high": 0,
              "medium": 0,
              "low": 0
            },
            "findings": []
          },
          "output_hash": "13dcc58bd528f3efa3e6e0fa0853a6eedc376f1f3685fbd4869cbb2b60382ee3",
          "completed_at": "2026-07-25T03:48:40Z"
        },
        {
          "id": "state",
          "action": "state.consistency",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-25T03:48:40Z",
          "output": {
            "status": "ok",
            "repo_root": "D:\\Projects\\prd-plugin-worktrees\\codex-reasoning-summary-session-fallback",
            "summary": {
              "errors": 0,
              "warnings": 0,
              "infos": 1
            },
            "findings": [
              {
                "id": "CONS-INFO-001",
                "severity": "info",
                "path": "docs/evidence/EV-200.md",
                "summary": "File references 2 canonical IDs across 2 prefix(es); treated as a positive signal of extra work.",
                "referenced_prefixes": [
                  "CHG",
                  "TRK"
                ],
                "referenced_id_count": 2,
                "required_action": "No action required; this is an informational signal."
              }
            ]
          },
          "output_hash": "7bd004636e5a786f64604d8cc821f23845cc7f69b783a6392c588759f368f587",
          "completed_at": "2026-07-25T03:48:40Z"
        },
        {
          "id": "status",
          "action": "state.query",
          "status": "completed",
          "resolved_input_hash": "a15231a2142a2a9a85355a8b9cbbccffe01a9c9c2c2fd8c2bc2987cdc481564a",
          "started_at": "2026-07-25T03:48:40Z",
          "output": {
            "repo_root": "D:\\Projects\\prd-plugin-worktrees\\codex-reasoning-summary-session-fallback",
            "autonomy_level": "autonomous",
            "reasoning_guard": {
              "mode": "report",
              "categories": {
                "evidence_follow_through": "inherit",
                "causal_claims": "inherit",
                "permanent_mutations": "inherit",
                "completion_claims": "inherit"
              },
              "effective_modes": {
                "evidence_follow_through": "report",
                "causal_claims": "report",
                "permanent_mutations": "report",
                "completion_claims": "report"
              },
              "report_available": true,
              "coverage": {
                "host": "unknown",
                "level": "reduced",
                "missing": [
                  "no visible reasoning summaries have reached the guard in this session"
                ],
                "observed": [
                  "visible hook events"
                ]
              },
              "summary": {
                "blocked": 0,
                "deferred": 0,
                "open": 0,
                "violations": 0
              },
              "latency": {
                "samples_ms": [
                  1.186
                ],
                "p50_ms": 1.186,
                "p95_ms": 1.186
              },
              "classification": {
                "candidates": 0,
                "created": 0,
                "ignored": 0,
                "reconciled": 0,
                "summaries_seen": 0
              },
              "clearance": {
                "active_blocking_diagnostics": [],
                "coverage": {
                  "host": "unknown",
                  "level": "reduced"
                },
                "deferred_blocking_obligations": [],
                "deferred_count": 0,
                "issued_at": "2026-07-25T03:48:08.587767Z",
                "limitations": [
                  "no visible reasoning summaries have reached the guard in this session"
                ],
                "mode": "report",
                "open_blocking_obligations": [],
                "report_digest": "3da3fcba1629e20e1a3554318e126331967afaab322dbf21b779c26415828464",
                "status": "conditional"
              }
            },
            "requests_by_status": {
              "accepted": 2,
              "deferred": 1,
              "implemented": 144,
              "in_review": 2,
              "proposed": 4,
              "rejected": 3
            },
            "active_tracking": [
              "TRK-160"
            ],
            "tracking_branches": [],
            "tracking_branch_counts": {},
            "tracking_branch_errors": [],
            "open_health": [
              "HLT-020",
              "HLT-021",
              "HLT-022",
              "HLT-023"
            ],
            "stale_count": 0,
            "skill_usage": {},
            "wiki_backfill_pending": false,
            "wiki_ingest_drift": null,
            "version_update": null
          },
          "output_hash": "048cf612d59cf6e46e391303fe0580eb43618c6d6570b479b13b3d0882556efa",
          "completed_at": "2026-07-25T03:48:40Z"
        },
        {
          "id": "substrate",
          "action": "substrate.preflight",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-25T03:48:41Z",
          "output": {
            "status": "disabled",
            "services": {
              "status": "ok",
              "summary": {
                "critical": 0,
                "high": 0,
                "medium": 0,
                "low": 0
              },
              "findings": []
            },
            "policy": {
              "configured": {
                "enabled": false,
                "mode": "off",
                "capabilities": [
                  "records",
                  "graph",
                  "events"
                ],
                "contract_version": 2,
                "require_source_refs": true,
                "endpoint": "http://127.0.0.1:47124",
                "manual_url": "http://127.0.0.1:47124/utcp.json",
                "knowledge_browse_url": "http://127.0.0.1:5276",
                "auth_env": "AI_COLLAB_API_KEY",
                "timeout_seconds": 5,
                "max_result_bytes": 1048576,
                "cache_ttl_seconds": 60,
                "fallback": "local",
                "automation": {
                  "discovery_on_session_start": true,
                  "knowledge_recall": true,
                  "memory_recall": true,
                  "context_enrichment": true,
                  "notices_on_session_start": false,
                  "goals_sync": false,
                  "telemetry_on_maintenance": false,
                  "reporting_dispatch": true,
                  "judgment_dispatch": true,
                  "verification_execution": true
                }
              },
              "active": false,
              "effective_mode": "off",
              "effective_capabilities": []
            }
          },
          "output_hash": "a6df426290b4549a59eecaa0519ead9bcc50b7fcb25bd2185ff6047960f19ccb",
          "completed_at": "2026-07-25T03:48:41Z"
        },
        {
          "id": "notices",
          "action": "substrate.notices",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-25T03:48:41Z",
          "output": {
            "status": "disabled"
          },
          "output_hash": "38b904a1cf83df048360fb2480571b749fd98d57e11f1afdffb5a74a78166fea",
          "completed_at": "2026-07-25T03:48:41Z"
        },
        {
          "id": "goals",
          "action": "substrate.goals",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-25T03:48:41Z",
          "output": {
            "status": "disabled",
            "created": 0,
            "observed": 0,
            "results": []
          },
          "output_hash": "cdfd4de44a28140e686159f34f7b47975954c67e1d1efcef666e985acb136ed8",
          "completed_at": "2026-07-25T03:48:41Z"
        }
      ],
      "completed_at": "2026-07-25T03:48:41Z"
    },
    {
      "id": "WFR-426",
      "schema_version": "1.0",
      "workflow_id": "engineering.debug",
      "workflow_version": 1,
      "definition_hash": "b32f3f2fbbbd7474e05e983730ae4143048466f42364e34d7391312132c2dbf8",
      "plan_hash": "667553cbfdc5a651bccf3800eb9900821e9d82840648025b2700e7d1fde5b830",
      "input_hash": "03f3fcb1ba716fb12d3a1255cc0f59b00b45f2b901a90b8805af09a2329e8054",
      "inputs": {
        "instructions": "Live Codex transcript fallback in this repository extracted the visible summary '**Planning summary extraction and comparison** **Designing safe summary classification indicators**'. Coverage became full and summaries_seen incremented, proving transport. ACTIVE_CHECK_RE is anchored to a bare word at start or after punctuation. Diagnose whether Markdown heading delimiters prevent qualifying active summaries such as '**Investigating guard failure cause**' from classification, and identify the smallest normalization boundary.",
        "source_refs": [
          ".prd_plugin/hooks/prd_reason_guard.py",
          "tests/test_reason_guard.py",
          "scripts/reason_guard_benchmark.py",
          "docs/REASONING-GUARD.md"
        ]
      },
      "idempotency_key": "codex-reason-guard-live-markdown-debug-v1",
      "status": "completed",
      "attempt": 1,
      "created_at": "2026-07-25T03:50:41Z",
      "updated_at": "2026-07-25T03:51:25Z",
      "receipts": [
        {
          "step_id": "git",
          "action": "git.status",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "47e26e7162574c7af158464a3e51c1bd4d7de6bbfb9718c7aebfa17411326ed4",
          "completed_at": "2026-07-25T03:50:41Z"
        },
        {
          "step_id": "state",
          "action": "state.consistency",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "7bd004636e5a786f64604d8cc821f23845cc7f69b783a6392c588759f368f587",
          "completed_at": "2026-07-25T03:50:42Z"
        },
        {
          "step_id": "context",
          "action": "substrate.enrich",
          "input_hash": "ef052b6f820a37f359e33d17242e678f3d60b445e05781a81937898865ee6efb",
          "output_hash": "4f48db8a6eb34d026737aaa2205e32df7418bfca0b83ee9f92d452a2a3d2b85a",
          "completed_at": "2026-07-25T03:50:42Z"
        },
        {
          "step_id": "diagnosis",
          "action": "judgment.request",
          "input_hash": "3f2c51c5270e839dc49f06620c9b1850cf83b7864b21ef731330402b69ad518c",
          "output_hash": "9d07f7aea485f06091814eaf471c85d53a4f0f9af170ac8a1d1e391b3bff7e3f",
          "request_hash": "cab342b0d42d3853cc7415bf7b7d5c448a2d084462f20a5e30391aa006e2a6cc",
          "completed_at": "2026-07-25T03:51:25Z"
        }
      ],
      "steps": [
        {
          "id": "git",
          "action": "git.status",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-25T03:50:41Z",
          "output": {
            "clean": false,
            "changed_files": [
              ".prd_plugin/ids/registry.json",
              ".prd_plugin/state/requests.json",
              ".prd_plugin/state/tracking.json",
              ".prd_plugin/state/workflow-runs.json"
            ]
          },
          "output_hash": "47e26e7162574c7af158464a3e51c1bd4d7de6bbfb9718c7aebfa17411326ed4",
          "completed_at": "2026-07-25T03:50:41Z"
        },
        {
          "id": "state",
          "action": "state.consistency",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-25T03:50:41Z",
          "output": {
            "status": "ok",
            "repo_root": "D:\\Projects\\prd-plugin-worktrees\\codex-reasoning-summary-session-fallback",
            "summary": {
              "errors": 0,
              "warnings": 0,
              "infos": 1
            },
            "findings": [
              {
                "id": "CONS-INFO-001",
                "severity": "info",
                "path": "docs/evidence/EV-200.md",
                "summary": "File references 2 canonical IDs across 2 prefix(es); treated as a positive signal of extra work.",
                "referenced_prefixes": [
                  "CHG",
                  "TRK"
                ],
                "referenced_id_count": 2,
                "required_action": "No action required; this is an informational signal."
              }
            ]
          },
          "output_hash": "7bd004636e5a786f64604d8cc821f23845cc7f69b783a6392c588759f368f587",
          "completed_at": "2026-07-25T03:50:42Z"
        },
        {
          "id": "context",
          "action": "substrate.enrich",
          "status": "completed",
          "resolved_input_hash": "ef052b6f820a37f359e33d17242e678f3d60b445e05781a81937898865ee6efb",
          "started_at": "2026-07-25T03:50:42Z",
          "output": {
            "status": "disabled",
            "results": [],
            "local_source_refs": [
              ".prd_plugin/hooks/prd_reason_guard.py",
              "tests/test_reason_guard.py",
              "scripts/reason_guard_benchmark.py",
              "docs/REASONING-GUARD.md"
            ]
          },
          "output_hash": "4f48db8a6eb34d026737aaa2205e32df7418bfca0b83ee9f92d452a2a3d2b85a",
          "completed_at": "2026-07-25T03:50:42Z"
        },
        {
          "id": "diagnosis",
          "action": "judgment.request",
          "status": "completed",
          "resolved_input_hash": "3f2c51c5270e839dc49f06620c9b1850cf83b7864b21ef731330402b69ad518c",
          "started_at": "2026-07-25T03:50:42Z",
          "judgment_request": {
            "contract_version": 1,
            "run_id": "WFR-426",
            "step_id": "diagnosis",
            "task": "debugging",
            "instructions": "Live Codex transcript fallback in this repository extracted the visible summary '**Planning summary extraction and comparison** **Designing safe summary classification indicators**'. Coverage became full and summaries_seen incremented, proving transport. ACTIVE_CHECK_RE is anchored to a bare word at start or after punctuation. Diagnose whether Markdown heading delimiters prevent qualifying active summaries such as '**Investigating guard failure cause**' from classification, and identify the smallest normalization boundary.",
            "source_refs": [
              ".prd_plugin/hooks/prd_reason_guard.py",
              "tests/test_reason_guard.py",
              "scripts/reason_guard_benchmark.py",
              "docs/REASONING-GUARD.md"
            ],
            "source_hashes": {
              ".prd_plugin/hooks/prd_reason_guard.py": "99455ae0467e082d4c7167a0f6cab6bdd802bbeb1b2c1901285905ed28a72e8a",
              "tests/test_reason_guard.py": "2aa5670efb2922dbf84994804e0caa4baf9720085d97cbd7206fb0fba7c302d5",
              "scripts/reason_guard_benchmark.py": "ba1805a58aba96d9738c87186640f6d614301fea213cc7af8bcaef4571145f43",
              "docs/REASONING-GUARD.md": "a4d36bb5ada5ac25bf1f9fd2bcfb97139e380200145d570c094c344baf578040"
            },
            "result_schema": {
              "type": "object",
              "required": [
                "summary",
                "hypotheses",
                "source_refs"
              ],
              "properties": {
                "summary": {
                  "type": "string"
                },
                "hypotheses": {
                  "type": "array",
                  "items": {
                    "type": "object"
                  }
                },
                "source_refs": {
                  "type": "array",
                  "items": {
                    "type": "string"
                  }
                }
              }
            },
            "executor": "ai-collab",
            "profile": "fast-capable",
            "constraints": {
              "no_project_state_writes": true,
              "require_source_refs": true
            },
            "request_hash": "cab342b0d42d3853cc7415bf7b7d5c448a2d084462f20a5e30391aa006e2a6cc"
          },
          "output": {
            "summary": "Root cause confirmed: Codex transcript extraction succeeds, but Markdown emphasis delimiters remain in the sanitized visible summary and ACTIVE_CHECK_RE accepts only a bare active verb at string/punctuation boundaries. A bounded Markdown emphasis boundary belongs in active-heading recognition; the broader classifier gates remain unchanged.",
            "hypotheses": [
              {
                "name": "transcript transport failure",
                "status": "rejected",
                "evidence": "Live status reached full Codex coverage and summaries_seen incremented twice."
              },
              {
                "name": "Markdown delimiter boundary mismatch",
                "status": "confirmed",
                "evidence": "The extracted visible summary begins with ** while ACTIVE_CHECK_RE requires the verb immediately after start or punctuation."
              },
              {
                "name": "semantic model required",
                "status": "rejected",
                "evidence": "The defect is a deterministic host-format normalization mismatch before the existing consequential and decision-signal gates."
              }
            ],
            "source_refs": [
              ".prd_plugin/hooks/prd_reason_guard.py",
              "tests/test_reason_guard.py",
              "scripts/reason_guard_benchmark.py",
              "docs/REASONING-GUARD.md"
            ]
          },
          "output_hash": "9d07f7aea485f06091814eaf471c85d53a4f0f9af170ac8a1d1e391b3bff7e3f",
          "completed_at": "2026-07-25T03:51:25Z",
          "judgment_result": {
            "request_hash": "cab342b0d42d3853cc7415bf7b7d5c448a2d084462f20a5e30391aa006e2a6cc",
            "executor": "ai-collab",
            "profile": "fast-capable"
          }
        }
      ],
      "completed_at": "2026-07-25T03:51:25Z"
    },
    {
      "id": "WFR-427",
      "schema_version": "1.0",
      "workflow_id": "engineering.code-review",
      "workflow_version": 1,
      "definition_hash": "ad3df68a0ff3c3ede35fe5266dcfbffbe7b1ba3e8ada5fc4b9012db9f451212f",
      "plan_hash": "89579a139320e42cd95ec01d4f488dd7bc67f7316ffe3533e97145d3d1b418d2",
      "input_hash": "43757e107a07a7c9211baf5cda94df7e9939313fb610214a83e3079825a53643",
      "inputs": {
        "base_ref": "origin/main",
        "source_refs": [
          ".prd_plugin/hooks/prd_reason_guard.py",
          "templates/repo-skeleton/.prd_plugin/hooks/prd_reason_guard.py",
          "tests/test_reason_guard.py",
          "scripts/reason_guard_benchmark.py",
          "docs/REASONING-GUARD.md",
          "raw/hooks/2026-07-25-reason-guard-semantic-lite-telemetry.md"
        ]
      },
      "idempotency_key": "codex-reason-guard-markdown-review-v1",
      "status": "completed",
      "attempt": 1,
      "created_at": "2026-07-25T03:57:34Z",
      "updated_at": "2026-07-25T03:57:47Z",
      "receipts": [
        {
          "step_id": "diff",
          "action": "git.diff_check",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "11c11db30f4b3f6c758722ba3e27eea08145b7d212f6a157451e364b48475280",
          "completed_at": "2026-07-25T03:57:35Z"
        },
        {
          "step_id": "verification",
          "action": "verification.plan",
          "input_hash": "896ba721326661835264dfc8b368f18e4c2f504219052efc7dded35d5e5da01f",
          "output_hash": "386a711b32c7321ae8b79472206cbb0f57aa7045e62708a955853728c63dcc1b",
          "completed_at": "2026-07-25T03:57:35Z"
        },
        {
          "step_id": "context",
          "action": "substrate.enrich",
          "input_hash": "b67e0459892fa43f1f3b46b75739629af9a37481341ed5fb7ee3d9cdd2536da1",
          "output_hash": "5c08ff85f20cba2d9050f61fe285a6b2af1247405a84c8e2850789dbeea7299b",
          "completed_at": "2026-07-25T03:57:35Z"
        },
        {
          "step_id": "review",
          "action": "judgment.request",
          "input_hash": "efe5390bdf49e0d94f9c39e8bf85f9cefdcb50b1593aec7ec61d62008b8c4a22",
          "output_hash": "592c9be0c544d41c4dd52865016d79f004a383e8da5ed711e6ac5ab77f88c19c",
          "request_hash": "7ca2145e748307e7569c72660eed6dd8f387aabe5d104664761dfe7939340bb9",
          "completed_at": "2026-07-25T03:57:46Z"
        }
      ],
      "steps": [
        {
          "id": "diff",
          "action": "git.diff_check",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-25T03:57:34Z",
          "output": {
            "passed": true
          },
          "output_hash": "11c11db30f4b3f6c758722ba3e27eea08145b7d212f6a157451e364b48475280",
          "completed_at": "2026-07-25T03:57:35Z"
        },
        {
          "id": "verification",
          "action": "verification.plan",
          "status": "completed",
          "resolved_input_hash": "896ba721326661835264dfc8b368f18e4c2f504219052efc7dded35d5e5da01f",
          "started_at": "2026-07-25T03:57:35Z",
          "output": {
            "schema_version": "1.0",
            "contract_version": 1,
            "executor": "ai-collab",
            "changed_files": [
              ".claude-plugin/marketplace.json",
              ".claude-plugin/plugin.json",
              ".codex-plugin/plugin.json",
              ".opencode/plugin.json",
              ".prd_plugin/config.json",
              ".prd_plugin/hooks/prd_reason_guard.py",
              ".prd_plugin/ids/registry.json",
              ".prd_plugin/state/artifacts/implementation_plan/IMP-014.json",
              ".prd_plugin/state/project.json",
              ".prd_plugin/state/releases.json",
              ".prd_plugin/state/requests.json",
              ".prd_plugin/state/tracking.json",
              ".prd_plugin/state/workflow-runs.json",
              "docs/REASONING-GUARD.md",
              "index.js",
              "mcp/server.cjs",
              "package.json",
              "raw/hooks/2026-07-25-reason-guard-semantic-lite-telemetry.md",
              "scripts/reason_guard_benchmark.py",
              "skills-manifest.json",
              "templates/config.json",
              "templates/project.json",
              "templates/releases.json",
              "templates/repo-skeleton/.claude-plugin/plugin.json",
              "templates/repo-skeleton/.codex-plugin/plugin.json",
              "templates/repo-skeleton/.opencode/plugin.json",
              "templates/repo-skeleton/.prd_plugin/config.json",
              "templates/repo-skeleton/.prd_plugin/hooks/prd_reason_guard.py",
              "templates/repo-skeleton/.prd_plugin/state/project.json",
              "templates/repo-skeleton/.prd_plugin/templates/config.json",
              "templates/repo-skeleton/.prd_plugin/templates/project.json",
              "tests/test_reason_guard.py",
              "wiki/hooks/reasoning-guard.md",
              "wiki/log.md"
            ],
            "change_fingerprint": "4c9183ebde9be6aa1026193803178f8eb630aa21734950cf666a7a1ded4854d2",
            "policy": {
              "enabled": true,
              "executor": "ai-collab",
              "neighbor_limit": 12,
              "max_changed_files": 25,
              "fallback": "full",
              "full_suite_triggers": [
                "release",
                "core_change",
                "impact_unavailable",
                "impact_degraded",
                "unmapped_change"
              ],
              "core_paths": [
                "package.json",
                "package-lock.json",
                "pyproject.toml",
                "Cargo.toml",
                "go.mod",
                ".github/workflows/**"
              ],
              "test_patterns": [
                "tests/**",
                "test/**",
                "spec/**",
                "**/*.test.*",
                "**/*.spec.*",
                "test_*.py",
                "*_test.py",
                "*_test.go",
                "**/test_*.py",
                "**/*_test.py",
                "**/*_test.go"
              ],
              "max_selected_tests": 200,
              "execution_timeout_seconds": 600,
              "focused_commands": [],
              "full_commands": [],
              "allowed_executables": [
                "python",
                "python3",
                "py",
                "pytest",
                "npm",
                "npx",
                "node",
                "go",
                "cargo",
                "dotnet",
                "mvn",
                "gradle",
                "gradlew",
                "make"
              ]
            },
            "selection_rules": {
              "precedence": [
                "exact_changed",
                "explicit_test_ownership",
                "structural_dependencies",
                "predictive_impact"
              ],
              "require_all_changed_files_mapped": true,
              "widen_before_full": true,
              "predictive_signal_is_sufficient_alone": false
            },
            "fallback": {
              "strategy": "full",
              "conditions": [
                "release",
                "core_change",
                "impact_unavailable",
                "impact_degraded",
                "unmapped_change"
              ]
            },
            "strategy": "full",
            "reason": "core_change",
            "runtime_requests": {},
            "plan_hash": "b2dcce65ea48484f7777a87ce7a365ac59d2dd979a5c3ea066ce7834bb055d02"
          },
          "output_hash": "386a711b32c7321ae8b79472206cbb0f57aa7045e62708a955853728c63dcc1b",
          "completed_at": "2026-07-25T03:57:35Z"
        },
        {
          "id": "context",
          "action": "substrate.enrich",
          "status": "completed",
          "resolved_input_hash": "b67e0459892fa43f1f3b46b75739629af9a37481341ed5fb7ee3d9cdd2536da1",
          "started_at": "2026-07-25T03:57:35Z",
          "output": {
            "status": "disabled",
            "results": [],
            "local_source_refs": [
              ".prd_plugin/hooks/prd_reason_guard.py",
              "templates/repo-skeleton/.prd_plugin/hooks/prd_reason_guard.py",
              "tests/test_reason_guard.py",
              "scripts/reason_guard_benchmark.py",
              "docs/REASONING-GUARD.md",
              "raw/hooks/2026-07-25-reason-guard-semantic-lite-telemetry.md"
            ]
          },
          "output_hash": "5c08ff85f20cba2d9050f61fe285a6b2af1247405a84c8e2850789dbeea7299b",
          "completed_at": "2026-07-25T03:57:35Z"
        },
        {
          "id": "review",
          "action": "judgment.request",
          "status": "completed",
          "resolved_input_hash": "efe5390bdf49e0d94f9c39e8bf85f9cefdcb50b1593aec7ec61d62008b8c4a22",
          "started_at": "2026-07-25T03:57:35Z",
          "judgment_request": {
            "contract_version": 1,
            "run_id": "WFR-427",
            "step_id": "review",
            "task": "code_review",
            "instructions": "Find material correctness, robustness, security, compatibility, or test gaps; do not restate mechanical facts.",
            "source_refs": [
              ".prd_plugin/hooks/prd_reason_guard.py",
              "templates/repo-skeleton/.prd_plugin/hooks/prd_reason_guard.py",
              "tests/test_reason_guard.py",
              "scripts/reason_guard_benchmark.py",
              "docs/REASONING-GUARD.md",
              "raw/hooks/2026-07-25-reason-guard-semantic-lite-telemetry.md"
            ],
            "source_hashes": {
              ".prd_plugin/hooks/prd_reason_guard.py": "b3b3ec295e0f80329e56c2faf331c88d0c40c32c2ab8c67786efa7c38589b970",
              "templates/repo-skeleton/.prd_plugin/hooks/prd_reason_guard.py": "b3b3ec295e0f80329e56c2faf331c88d0c40c32c2ab8c67786efa7c38589b970",
              "tests/test_reason_guard.py": "be1c5f97c134e4716531be5703c837b2ca11e4b4242f57159f2342bbbd1c074c",
              "scripts/reason_guard_benchmark.py": "ab4175f89cc12db02050d9b88119b14f18b64b2cbdfa30228fbddf13d3938dce",
              "docs/REASONING-GUARD.md": "21019da49a2044d2da903ad7cec4c678f1851846ea0dcf2210de943ea32367c9",
              "raw/hooks/2026-07-25-reason-guard-semantic-lite-telemetry.md": "04048ab9ce4a8395c727c6577afbadf2a5f220092f4056fd8fa5743791ff428b"
            },
            "result_schema": {
              "type": "object",
              "required": [
                "summary",
                "findings",
                "source_refs"
              ],
              "properties": {
                "summary": {
                  "type": "string"
                },
                "findings": {
                  "type": "array",
                  "items": {
                    "type": "object"
                  }
                },
                "source_refs": {
                  "type": "array",
                  "items": {
                    "type": "string"
                  }
                }
              }
            },
            "executor": "ai-collab",
            "profile": "fast-capable",
            "constraints": {
              "no_project_state_writes": true,
              "require_source_refs": true
            },
            "request_hash": "7ca2145e748307e7569c72660eed6dd8f387aabe5d104664761dfe7939340bb9"
          },
          "output": {
            "summary": "No material finding. The change adds only a bounded Markdown emphasis boundary before the existing active verb; consequential-area and decision-signal gates still control candidate creation. The hub and downstream hook bytes match, the transcript-path regression is test-first, and both a Markdown positive and cosmetic Markdown negative are in the accuracy corpus.",
            "findings": [],
            "source_refs": [
              ".prd_plugin/hooks/prd_reason_guard.py",
              "templates/repo-skeleton/.prd_plugin/hooks/prd_reason_guard.py",
              "tests/test_reason_guard.py",
              "scripts/reason_guard_benchmark.py",
              "docs/REASONING-GUARD.md",
              "raw/hooks/2026-07-25-reason-guard-semantic-lite-telemetry.md"
            ]
          },
          "output_hash": "592c9be0c544d41c4dd52865016d79f004a383e8da5ed711e6ac5ab77f88c19c",
          "completed_at": "2026-07-25T03:57:46Z",
          "judgment_result": {
            "request_hash": "7ca2145e748307e7569c72660eed6dd8f387aabe5d104664761dfe7939340bb9",
            "executor": "ai-collab",
            "profile": "fast-capable"
          }
        }
      ],
      "completed_at": "2026-07-25T03:57:47Z"
    },
    {
      "id": "WFR-428",
      "schema_version": "1.0",
      "workflow_id": "hub.release",
      "workflow_version": 1,
      "definition_hash": "ab6ae2afcb0128db8d994b6b397e543c7490017bd3d1b15309079edc6be94d9a",
      "plan_hash": "02bcb9cb71ca5641cc12e6270fee67758c0051b183e4204137993cd57b89a7bd",
      "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
      "inputs": {},
      "idempotency_key": "codex-reason-guard-markdown-release-v1",
      "status": "completed",
      "attempt": 1,
      "created_at": "2026-07-25T03:58:03Z",
      "updated_at": "2026-07-25T03:59:50Z",
      "receipts": [
        {
          "step_id": "diff",
          "action": "git.diff_check",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "11c11db30f4b3f6c758722ba3e27eea08145b7d212f6a157451e364b48475280",
          "completed_at": "2026-07-25T03:58:03Z"
        },
        {
          "step_id": "config",
          "action": "config.audit",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "ef2327bf3ea9c100a1a525c09e426de9703016f1b7c177b0df10c0b7cf3f33c9",
          "completed_at": "2026-07-25T03:58:04Z"
        },
        {
          "step_id": "state",
          "action": "state.consistency",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "7bd004636e5a786f64604d8cc821f23845cc7f69b783a6392c588759f368f587",
          "completed_at": "2026-07-25T03:58:04Z"
        },
        {
          "step_id": "workflow_audit",
          "action": "process.fixed",
          "input_hash": "edf19b269a54d72753f1abc2b8ffcb810c2b7bc377cee7e1698c939f17e0be94",
          "output_hash": "16622c601306c84b9e057bc1426863917aab1686e495638e83c8c254a977abdf",
          "completed_at": "2026-07-25T03:58:04Z"
        },
        {
          "step_id": "substrate_audit",
          "action": "process.fixed",
          "input_hash": "4998f71d2d3f6ac7dd50e10d37f60ae32d54898949950e484da9de113e18a979",
          "output_hash": "4176fd7e9d2d33bd61e5fd6bb8d392a63eaa5b2cb65b750eeb348b9dd55fe220",
          "completed_at": "2026-07-25T03:58:05Z"
        },
        {
          "step_id": "suite",
          "action": "process.fixed",
          "input_hash": "954e575e48145853f5681eda189186c95a053267158fae669114320f2e53794a",
          "output_hash": "c9f7039c10d406bbb36db6816ae777549fd9f95fcf1d0b67319de33939c65859",
          "completed_at": "2026-07-25T03:59:47Z"
        },
        {
          "step_id": "release",
          "action": "process.fixed",
          "input_hash": "1e5b0c18d93eb4c2248f9a00adbd438e52f3ef02137477fb8376c69cfe86fc9b",
          "output_hash": "dbcdcd7ca3f981f03a71e1bfcdfe77c2c8a7676b8acbe6f36993123db9c13556",
          "completed_at": "2026-07-25T03:59:47Z"
        },
        {
          "step_id": "gaps",
          "action": "process.fixed",
          "input_hash": "577241909238eeb55683f89d2d2216648dad2e3127397993e22493829a1307a4",
          "output_hash": "9e732f329bdb0715c19f138a50c43a20eba09f6804708b992bbd03a787e7d20a",
          "completed_at": "2026-07-25T03:59:48Z"
        },
        {
          "step_id": "package",
          "action": "process.fixed",
          "input_hash": "06cd12e1f3db3d985f9150520afa60f288297ff0ca01a8e813e9bb6291aa8836",
          "output_hash": "91a297e89c574731d07bf455e0d8d73a0fde204dd326908d48fa22aa35038e66",
          "completed_at": "2026-07-25T03:59:49Z"
        },
        {
          "step_id": "gate",
          "action": "state.gate",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "af95f5508bef069fc3c46ffe3a052eeba9fa5c6bfadc00da8d536a21484deebe",
          "completed_at": "2026-07-25T03:59:50Z"
        }
      ],
      "steps": [
        {
          "id": "diff",
          "action": "git.diff_check",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-25T03:58:03Z",
          "output": {
            "passed": true
          },
          "output_hash": "11c11db30f4b3f6c758722ba3e27eea08145b7d212f6a157451e364b48475280",
          "completed_at": "2026-07-25T03:58:03Z"
        },
        {
          "id": "config",
          "action": "config.audit",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-25T03:58:04Z",
          "output": {
            "status": "ok",
            "summary": {
              "settings": 214,
              "mutable": 204,
              "read_only_or_managed": 10,
              "unclassified": 0,
              "unknown": 0,
              "invalid": 0,
              "missing_using_defaults": 0
            },
            "unclassified_keys": [],
            "unknown_keys": [],
            "invalid_values": [],
            "missing_using_defaults": []
          },
          "output_hash": "ef2327bf3ea9c100a1a525c09e426de9703016f1b7c177b0df10c0b7cf3f33c9",
          "completed_at": "2026-07-25T03:58:04Z"
        },
        {
          "id": "state",
          "action": "state.consistency",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-25T03:58:04Z",
          "output": {
            "status": "ok",
            "repo_root": "D:\\Projects\\prd-plugin-worktrees\\codex-reasoning-summary-session-fallback",
            "summary": {
              "errors": 0,
              "warnings": 0,
              "infos": 1
            },
            "findings": [
              {
                "id": "CONS-INFO-001",
                "severity": "info",
                "path": "docs/evidence/EV-200.md",
                "summary": "File references 2 canonical IDs across 2 prefix(es); treated as a positive signal of extra work.",
                "referenced_prefixes": [
                  "CHG",
                  "TRK"
                ],
                "referenced_id_count": 2,
                "required_action": "No action required; this is an informational signal."
              }
            ]
          },
          "output_hash": "7bd004636e5a786f64604d8cc821f23845cc7f69b783a6392c588759f368f587",
          "completed_at": "2026-07-25T03:58:04Z"
        },
        {
          "id": "workflow_audit",
          "action": "process.fixed",
          "status": "completed",
          "resolved_input_hash": "edf19b269a54d72753f1abc2b8ffcb810c2b7bc377cee7e1698c939f17e0be94",
          "started_at": "2026-07-25T03:58:04Z",
          "output": {
            "operation": "workflow_chml_audit",
            "command": [
              "python",
              "scripts/workflow_chml_audit.py",
              "--repo-root",
              ".",
              "--format",
              "json"
            ],
            "exit_code": 0,
            "stdout": "{\n  \"status\": \"ok\",\n  \"repo_root\": \"D:\\\\Projects\\\\prd-plugin-worktrees\\\\codex-reasoning-summary-session-fallback\",\n  \"summary\": {\n    \"critical\": 0,\n    \"high\": 0,\n    \"medium\": 0,\n    \"low\": 0\n  },\n  \"findings\": []\n}\n",
            "stderr": ""
          },
          "output_hash": "16622c601306c84b9e057bc1426863917aab1686e495638e83c8c254a977abdf",
          "completed_at": "2026-07-25T03:58:04Z"
        },
        {
          "id": "substrate_audit",
          "action": "process.fixed",
          "status": "completed",
          "resolved_input_hash": "4998f71d2d3f6ac7dd50e10d37f60ae32d54898949950e484da9de113e18a979",
          "started_at": "2026-07-25T03:58:05Z",
          "output": {
            "operation": "substrate_capability_audit",
            "command": [
              "python",
              "scripts/prd_substrate_catalog.py",
              "--repo-root",
              ".",
              "audit"
            ],
            "exit_code": 0,
            "stdout": "{\n  \"status\": \"ok\",\n  \"schema_version\": \"1.0\",\n  \"capability_count\": 26,\n  \"runtime_tool_count\": 103,\n  \"intent_count\": 31,\n  \"summary\": {\n    \"critical\": 0,\n    \"high\": 0,\n    \"medium\": 0,\n    \"low\": 0\n  },\n  \"findings\": []\n}\n",
            "stderr": ""
          },
          "output_hash": "4176fd7e9d2d33bd61e5fd6bb8d392a63eaa5b2cb65b750eeb348b9dd55fe220",
          "completed_at": "2026-07-25T03:58:05Z"
        },
        {
          "id": "suite",
          "action": "process.fixed",
          "status": "completed",
          "resolved_input_hash": "954e575e48145853f5681eda189186c95a053267158fae669114320f2e53794a",
          "started_at": "2026-07-25T03:58:05Z",
          "output": {
            "operation": "local_workflow_check",
            "command": [
              "python",
              "scripts/local_workflow_check.py"
            ],
            "exit_code": 0,
            "stdout": "Structured file validation passed.\n$ python -m unittest discover -s tests -v\n{\n  \"status\": \"fail\",\n  \"repo_root\": \"C:\\\\Users\\\\marku\\\\AppData\\\\Local\\\\Temp\\\\tmpr8q6obvp\",\n  \"summary\": {\n    \"errors\": 1,\n    \"warnings\": 0\n  },\n  \"findings\": [\n    {\n      \"check\": \"duplicate_id\",\n      \"severity\": \"error\",\n      \"summary\": \"Duplicate id REQ-002 in .prd_plugin/state/requests.json.\",\n      \"required_action\": \"Renumber one record so REQ-002 is unique. Allocate IDs with the MCP tool prd_next_id (or the record tools like prd_open_goal) instead of hand-computing them.\"\n    }\n  ]\n}\nautonomy_level set to guided\nautonomy_level set to autonomous\nDESTRUCTIVE RESET REQUESTED: --force --yes will erase protected PRD Plugin project data.\nThe following existing state/configuration files would be replaced with skeleton defaults:\n  - .prd_plugin/state/tracking.json\nThis may erase IDs, tracking, requests, decisions, health findings, configuration, and session memory.\nFor a normal safe update, remove --yes and run: npx prd-install . --force\nPRD Plugin safe update: preserving existing state/config and refreshing plugin files only. Never add --yes to a routine update; it requests a destructive reset.\nPRD Plugin safe update: preserving existing state/config and refreshing plugin files only. Never add --yes to a routine update; it requests a destructive reset.\nPRD Plugin safe update: preserving existing state/config and refreshing plugin files only. Never add --yes to a routine update; it requests a destructive reset.\nPRD Plugin safe update: preserving existing state/config and refreshing plugin files only. Never add --yes to a routine update; it requests a destructive reset.\nPRD Plugin safe update: preserving existing state/config and refreshing plugin files only. Never add --yes to a routine update; it requests a destructive reset.\nPRD Plugin safe update: preserving existing state/config and refreshing plugin files only. Never add --yes to a routine update; it requests a destructive reset.\nPRD Plugin safe update: preserving existing state/config and refreshing plugin files only. Never add --yes to a routine update; it requests a destructive reset.\nPRD Plugin safe update: preserving existing state/config and refreshing plugin files only. Never add --yes to a routine update; it requests a destructive reset.\nPRD Plugin safe update: preserving existing state/config and refreshing plugin files only. Never add --yes to a routine update; it requests a destructive reset.\nPRD Plugin safe update: preserving existing state/config and refreshing plugin files only. Never add --yes to a routine update; it requests a destructive reset.\nPRD Plugin safe update: preserving existing state/config and refreshing plugin files only. Never add --yes to a routine update; it requests a destructive reset.\nPRD Plugin safe update: preserving existing state/config and refreshing plugin files only. Never add --yes to a routine update; it requests a destructive reset.\nPRD Plugin safe update: preserving existing state/config and refreshing plugin files only. Never add --yes to a routine update; it requests a destructive reset.\nPRD Plugin safe update: preserving existing state/config and refreshing plugin files only. Never add --yes to a routine update; it requests a destructive reset.\nPRD Plugin safe update: preserving existing state/config and refreshing plugin files only. Never add --yes to a routine update; it requests a destructive reset.\nPRD Plugin safe update: preserving existing state/config and refreshing plugin files only. Never add --yes to a routine update; it requests a destructive reset.\nPRD Plugin safe update: preserving existing state/config and refreshing plugin files only. Never add --yes to a routine update; it requests a destructive reset.\n{\n  \"published\": false,\n  \"package\": \"prd-plugin\",\n  \"version\": \"9.9.9\",\n  \"version_seen\": null,\n  \"latest_seen\": null,\n  \"attempts_used\": 1\n}\n{\n  \"published\": true,\n  \"package\": \"prd-plugin\",\n  \"version\": \"1.2.3\",\n  \"version_seen\": \"1.2.3\",\n  \"latest_seen\": \"1.2.3\",\n  \"attempts_used\": 1\n}\n{\"decision\": \"block\", \"reason\": \"Autonomous run-until-done: goal TRK-161 is still active. Continue with the next incomplete step toward it \\u2014 do not stop to ask 'shall I proceed?'. If you genuinely need the user (consent floor: push/merge/publish/secrets, or a real blocker), create the file .prd_plugin/local/autonomy-pause with a one-line reason and then stop; the guard will let you. Otherwise keep going.\"}\n$ python scripts/feature_skill_audit.py --repo-root . --format json\n{\n  \"status\": \"ok\",\n  \"repo_root\": \"D:\\\\Projects\\\\prd-plugin-worktrees\\\\codex-reasoning-summary-session-fallback\",\n  \"contract\": \"templates/feature-skill-map.json\",\n  \"feature_count\": 29,\n  \"summary\": {\n    \"critical\": 0,\n    \"high\": 0,\n    \"medium\": 0,\n    \"low\": 0\n  },\n  \"findings\": []\n}\n$ python scripts/gap_audit.py --target-version 0.16.57\n# PRD Plugin Gap Audit\n\nTarget version: `0.16.57`\n\n## Findings\n\n- None\n$ python scripts/version_advice.py --installed-repo . --format json --output request-report/version-advice.json\n$ python scripts/release_check.py --output request-report/release-hygiene.md\n$ python scripts/prd_doctor.py --repo-root . --format json --output request-report/prd-doctor.json\n$ python scripts/state_consistency_check.py --repo-root . --format json --output request-report/state-consistency.json\n$ python scripts/prd_install_skills.py --repo-root . --dry-run\n{\n  \"status\": \"dry_run\",\n  \"target_agent\": \"codex\",\n  \"targets\": [\n    {\n      \"agent\": \"codex\",\n      \"target\": \".agents\\\\skills\",\n      \"would_install\": [\n        \"project-architecture\",\n        \"project-blocker-resolution\",\n        \"project-brainstorm\",\n        \"project-change-request\",\n        \"project-code-review\",\n        \"project-decision-ledger\",\n        \"project-decision-policy\",\n        \"project-deterministic-workflows\",\n        \"project-document-branch\",\n        \"project-evidence\",\n        \"project-evidence-ledger\",\n        \"project-git-workflow\",\n        \"project-health\",\n        \"project-implementation-plan\",\n        \"project-llm-wiki\",\n        \"project-local-integration\",\n        \"project-memory\",\n        \"project-planning-lifecycle\",\n        \"project-prd\",\n        \"project-prd-plugin-setup\",\n        \"project-request-intake\",\n        \"project-session-close\",\n        \"project-systematic-debugging\",\n        \"project-test-driven-implementation\",\n        \"project-traceability-review\",\n        \"project-traceability-sync\",\n        \"project-verification-before-completion\",\n        \"source-command-prd-autonomy\",\n        \"source-command-prd-close\",\n        \"source-command-prd-config\",\n        \"source-command-prd-drift\",\n        \"source-command-prd-graph\",\n        \"source-command-prd-hooks\",\n        \"source-command-prd-new\",\n        \"source-command-prd-off\",\n        \"source-command-prd-on\",\n        \"source-command-prd-reflections\",\n        \"source-command-prd-report\",\n        \"source-command-prd-status\",\n        \"source-command-prd-track\",\n        \"source-command-prd-version\",\n        \"source-command-prd-workflow\"\n      ],\n      \"would_remove\": [\n        \"project-fold-it-in\",\n        \"project-self-audit\"\n      ]\n    }\n  ],\n  \"installed_count\": 0,\n  \"target\": \".agents\\\\skills\",\n  \"installed\": [],\n  \"removed\": [],\n  \"would_install\": [\n    \"project-architecture\",\n    \"project-blocker-resolution\",\n    \"project-brainstorm\",\n    \"project-change-request\",\n    \"project-code-review\",\n    \"project-decision-ledger\",\n    \"project-decision-policy\",\n    \"project-deterministic-workflows\",\n    \"project-document-branch\",\n    \"project-evidence\",\n    \"project-evidence-ledger\",\n    \"project-git-workflow\",\n    \"project-health\",\n    \"project-implementation-plan\",\n    \"project-llm-wiki\",\n    \"project-local-integration\",\n    \"project-memory\",\n    \"project-planning-lifecycle\",\n    \"project-prd\",\n    \"project-prd-plugin-setup\",\n    \"project-request-intake\",\n    \"project-session-close\",\n    \"project-systematic-debugging\",\n    \"project-test-driven-implementation\",\n    \"project-traceability-review\",\n    \"project-traceability-sync\",\n    \"project-verification-before-completion\",\n    \"source-command-prd-autonomy\",\n    \"source-command-prd-close\",\n    \"source-command-prd-config\",\n    \"source-command-prd-drift\",\n    \"source-command-prd-graph\",\n    \"source-command-prd-hooks\",\n    \"source-command-prd-new\",\n    \"source-command-prd-off\",\n    \"source-command-prd-on\",\n    \"source-command-prd-reflections\",\n    \"source-command-prd-report\",\n    \"source-command-prd-status\",\n    \"source-command-prd-track\",\n    \"source-command-prd-version\",\n    \"source-command-prd-workflow\"\n  ],\n  \"would_remove\": [\n    \"project-fold-it-in\",\n    \"project-self-audit\"\n  ]\n}\n$ python scripts/request_report.py --config .prd_plugin/config.json --format markdown --output request-report/request-report.md\n$ python scripts/request_report.py --config .prd_plugin/config.json --format json --output request-report/request-report.json\n$ python scripts/message_check.py --config .prd_plugin/config.json --format json --output request-report/message-check.json\nLocal workflow check completed.\n",
            "stderr": "alid_values) ... ok\ntest_enable_disable_only_accept_mutable_booleans (test_unified_config.MutationTests.test_enable_disable_only_accept_mutable_booleans) ... ok\ntest_failed_atomic_replace_leaves_original_config_untouched (test_unified_config.MutationTests.test_failed_atomic_replace_leaves_original_config_untouched) ... ok\ntest_malformed_config_is_never_replaced_by_a_mutation (test_unified_config.MutationTests.test_malformed_config_is_never_replaced_by_a_mutation) ... ok\ntest_manual_set_marks_profile_custom_and_preserves_style (test_unified_config.MutationTests.test_manual_set_marks_profile_custom_and_preserves_style) ... ok\ntest_scalar_parent_is_not_clobbered_by_nested_set (test_unified_config.MutationTests.test_scalar_parent_is_not_clobbered_by_nested_set) ... ok\ntest_builtin_profile_dry_run_then_atomic_apply (test_unified_config.ProfileTests.test_builtin_profile_dry_run_then_atomic_apply) ... ok\ntest_invalid_custom_profile_never_partially_writes (test_unified_config.ProfileTests.test_invalid_custom_profile_never_partially_writes) ... ok\ntest_save_show_diff_and_delete_custom_profile (test_unified_config.ProfileTests.test_save_show_diff_and_delete_custom_profile) ... ok\ntest_does_not_flag_canonical_prd_state_paths (test_unsubmitted_plugin_request.UnsubmittedPluginRequestTests.test_does_not_flag_canonical_prd_state_paths) ... ok\ntest_does_not_flag_ordinary_project_requests (test_unsubmitted_plugin_request.UnsubmittedPluginRequestTests.test_does_not_flag_ordinary_project_requests) ... ok\ntest_does_not_flag_rejected_requests (test_unsubmitted_plugin_request.UnsubmittedPluginRequestTests.test_does_not_flag_rejected_requests) ... ok\ntest_does_not_flag_when_already_marked_upstream (test_unsubmitted_plugin_request.UnsubmittedPluginRequestTests.test_does_not_flag_when_already_marked_upstream) ... ok\ntest_flags_a_local_request_about_a_plugin_script (test_unsubmitted_plugin_request.UnsubmittedPluginRequestTests.test_flags_a_local_request_about_a_plugin_script) ... ok\ntest_flags_a_request_that_names_itself_upstream (test_unsubmitted_plugin_request.UnsubmittedPluginRequestTests.test_flags_a_request_that_names_itself_upstream) ... ok\ntest_never_fires_in_the_hub_repo_itself (test_unsubmitted_plugin_request.UnsubmittedPluginRequestTests.test_never_fires_in_the_hub_repo_itself) ... ok\ntest_wired_into_run_checks (test_unsubmitted_plugin_request.UnsubmittedPluginRequestTests.test_wired_into_run_checks) ... ok\ntest_output_writes_lf_and_a_trailing_newline (test_utcp_first_authority.GeneratedArtifactsAreByteStableTests.test_output_writes_lf_and_a_trailing_newline) ... ok\ntest_the_committed_manual_matches_a_fresh_generation (test_utcp_first_authority.GeneratedArtifactsAreByteStableTests.test_the_committed_manual_matches_a_fresh_generation) ... ok\ntest_every_spec_tool_maps_to_a_catalog_capability (test_utcp_first_authority.ParityDirectionTests.test_every_spec_tool_maps_to_a_catalog_capability) ... ok\ntest_server_metadata_matches_the_spec (test_utcp_first_authority.ParityDirectionTests.test_server_metadata_matches_the_spec) ... ok\ntest_python_entry_points_share_the_same_lock (test_utcp_first_authority.SafetyUnchangedTests.test_python_entry_points_share_the_same_lock)\nThe migration target already exists and is proven: prd_reflections ... ok\ntest_the_state_lock_is_still_held_for_mutations (test_utcp_first_authority.SafetyUnchangedTests.test_the_state_lock_is_still_held_for_mutations) ... ok\ntest_no_shipped_tool_metadata_carries_mojibake (test_utcp_first_authority.ShippedTextIsCleanTests.test_no_shipped_tool_metadata_carries_mojibake) ... ok\ntest_shipped_tool_metadata_is_valid_utf8 (test_utcp_first_authority.ShippedTextIsCleanTests.test_shipped_tool_metadata_is_valid_utf8)\nA file written through a cp1252 layer either fails to decode or ... ok\ntest_each_tool_declares_name_description_and_schema (test_utcp_first_authority.SpecIsTheSourceTests.test_each_tool_declares_name_description_and_schema) ... ok\ntest_the_manual_is_generated_from_the_spec_not_the_server (test_utcp_first_authority.SpecIsTheSourceTests.test_the_manual_is_generated_from_the_spec_not_the_server) ... ok\ntest_the_server_no_longer_authors_descriptions (test_utcp_first_authority.SpecIsTheSourceTests.test_the_server_no_longer_authors_descriptions)\nserver.cjs must READ definitions, not declare them. While a tool ... ok\ntest_the_spec_exists_and_declares_every_tool (test_utcp_first_authority.SpecIsTheSourceTests.test_the_spec_exists_and_declares_every_tool) ... ok\ntest_official_bridge_round_trips_cli_and_mcp_templates (test_utcp_first_catalog.BridgeParityTests.test_official_bridge_round_trips_cli_and_mcp_templates) ... skipped 'official @utcp/mcp-bridge not installed (npm install)'\ntest_bridged_entries_reuse_server_metadata_verbatim (test_utcp_first_catalog.GeneratedProjectionTests.test_bridged_entries_reuse_server_metadata_verbatim)\nEach bridged manual entry's description and inputs equal the server's ... ok\ntest_checked_in_metadata_matches_live_server (test_utcp_first_catalog.GeneratedProjectionTests.test_checked_in_metadata_matches_live_server)\nThe pinned metadata projection cannot drift behind the live server. ... ok\ntest_mutations_keep_the_validated_handler_path (test_utcp_first_catalog.GuardedMutationTests.test_mutations_keep_the_validated_handler_path)\nEvery manual tool in a non-read capability calls the plugin state ... ok\ntest_read_only_cli_tools_stay_cli (test_utcp_first_catalog.GuardedMutationTests.test_read_only_cli_tools_stay_cli)\nThe 12 cli-native observe/recall tools keep their cli templates. ... ok\ntest_checked_in_metadata_projection_exists (test_utcp_first_catalog.ManualCompletenessTests.test_checked_in_metadata_projection_exists)\nThe server's tool metadata is a checked-in generated artifact so the ... ok\ntest_manual_covers_every_capability_on_both_transports (test_utcp_first_catalog.ManualCompletenessTests.test_manual_covers_every_capability_on_both_transports)\nEvery UTCP and MCP registration in the tool-surface catalog appears ... ok\ntest_appends_version_change_request (test_version_advice.VersionAdviceTests.test_appends_version_change_request) ... ok\ntest_builds_safe_update_advice_for_low_risk_releases (test_version_advice.VersionAdviceTests.test_builds_safe_update_advice_for_low_risk_releases) ... ok\ntest_cli_uses_hub_releases_when_downstream_repo_has_no_releases_file (test_version_advice.VersionAdviceTests.test_cli_uses_hub_releases_when_downstream_repo_has_no_releases_file) ... ok\ntest_detects_installed_version_from_bom_json (test_version_advice.VersionAdviceTests.test_detects_installed_version_from_bom_json) ... ok\ntest_detects_installed_version_from_opencode_plugin_manifest (test_version_advice.VersionAdviceTests.test_detects_installed_version_from_opencode_plugin_manifest) ... ok\ntest_detects_installed_version_from_prd_plugin_config (test_version_advice.VersionAdviceTests.test_detects_installed_version_from_prd_plugin_config) ... ok\ntest_detects_latest_version_from_plugin_manifest (test_version_advice.VersionAdviceTests.test_detects_latest_version_from_plugin_manifest) ... ok\ntest_installed_version_priority_prefers_config_then_codex_then_opencode (test_version_advice.VersionAdviceTests.test_installed_version_priority_prefers_config_then_codex_then_opencode) ... ok\ntest_orders_prerelease_before_final_release (test_version_advice.VersionAdviceTests.test_orders_prerelease_before_final_release) ... ok\ntest_recommends_review_first_for_medium_or_high_risk_release (test_version_advice.VersionAdviceTests.test_recommends_review_first_for_medium_or_high_risk_release) ... ok\ntest_disabled_returns_disabled_and_no_fetch (test_version_check.CheckTests.test_disabled_returns_disabled_and_no_fetch) ... ok\ntest_force_refetches_within_ttl (test_version_check.CheckTests.test_force_refetches_within_ttl) ... ok\ntest_network_failure_is_fail_open (test_version_check.CheckTests.test_network_failure_is_fail_open) ... ok\ntest_no_update_when_current (test_version_check.CheckTests.test_no_update_when_current) ... ok\ntest_status_is_cache_only_no_fetch (test_version_check.CheckTests.test_status_is_cache_only_no_fetch) ... ok\ntest_ttl_cache_avoids_refetch (test_version_check.CheckTests.test_ttl_cache_avoids_refetch) ... ok\ntest_ttl_expiry_refetches (test_version_check.CheckTests.test_ttl_expiry_refetches) ... ok\ntest_update_available_when_npm_is_ahead (test_version_check.CheckTests.test_update_available_when_npm_is_ahead) ... ok\ntest_status_cli_exits_zero (test_version_check.CliTests.test_status_cli_exits_zero) ... ok\ntest_default_ttl_is_responsive_not_a_day (test_version_check.FreshnessTests.test_default_ttl_is_responsive_not_a_day) ... ok\ntest_fetch_latest_accepts_a_timeout (test_version_check.FreshnessTests.test_fetch_latest_accepts_a_timeout) ... ok\ntest_nudge_refreshes_in_session_not_cache_only (test_version_check.FreshnessTests.test_nudge_refreshes_in_session_not_cache_only) ... ok\ntest_registry_default_ttl_matches (test_version_check.FreshnessTests.test_registry_default_ttl_matches) ... ok\ntest_semver_ordering (test_version_check.ParseTests.test_semver_ordering) ... ok\ntest_set_enabled_writes_config (test_version_check.ToggleTests.test_set_enabled_writes_config) ... ok\ntest_config_has_version_check_default_on (test_version_check.WiringTests.test_config_has_version_check_default_on) ... ok\ntest_nudge_surfaces_update_available (test_version_check.WiringTests.test_nudge_surfaces_update_available) ... ok\ntest_prd_version_command_exists (test_version_check.WiringTests.test_prd_version_command_exists) ... ok\ntest_script_registered_downstream (test_version_check.WiringTests.test_script_registered_downstream) ... ok\ntest_plan_cli_emits_json (test_wiki_backfill.CliTests.test_plan_cli_emits_json) ... ok\ntest_status_cli (test_wiki_backfill.CliTests.test_status_cli) ... ok\ntest_marker_written_for_established_repo_gaining_wiki (test_wiki_backfill.InstallerMarkerTests.test_marker_written_for_established_repo_gaining_wiki) ... ok\ntest_no_marker_for_empty_scaffold (test_wiki_backfill.InstallerMarkerTests.test_no_marker_for_empty_scaffold) ... ok\ntest_no_marker_when_wiki_already_exists (test_wiki_backfill.InstallerMarkerTests.test_no_marker_when_wiki_already_exists) ... ok\ntest_no_marker_when_wiki_disabled (test_wiki_backfill.InstallerMarkerTests.test_no_marker_when_wiki_disabled) ... ok\ntest_pending_false_when_absent (test_wiki_backfill.StatusTests.test_pending_false_when_absent) ... ok\ntest_pending_false_when_wiki_already_exists (test_wiki_backfill.StatusTests.test_pending_false_when_wiki_already_exists) ... ok\ntest_pending_true_when_marker_present (test_wiki_backfill.StatusTests.test_pending_true_when_marker_present) ... ok\ntest_plan_excludes_generated_report_artifacts (test_wiki_backfill.SurveyPlanTests.test_plan_excludes_generated_report_artifacts)\nrequest-report/ (incl. its calibration report trees) and docs/evidence/ ... ok\ntest_plan_excludes_plugin_and_vendor_noise (test_wiki_backfill.SurveyPlanTests.test_plan_excludes_plugin_and_vendor_noise) ... ok\ntest_plan_inventories_code_docs_and_state (test_wiki_backfill.SurveyPlanTests.test_plan_inventories_code_docs_and_state) ... ok\ntest_plan_is_read_only (test_wiki_backfill.SurveyPlanTests.test_plan_is_read_only) ... ok\ntest_wiki_drift_in_on_stop_and_default_sets (test_wiki_backfill.WikiDriftMonitorWiringTests.test_wiki_drift_in_on_stop_and_default_sets) ... ok\ntest_current_article_no_drift (test_wiki_backfill.WikiDriftTests.test_current_article_no_drift) ... ok\ntest_drift_cli (test_wiki_backfill.WikiDriftTests.test_drift_cli) ... ok\ntest_far_behind_article_flagged (test_wiki_backfill.WikiDriftTests.test_far_behind_article_flagged) ... ok\ntest_no_wiki_is_ok (test_wiki_backfill.WikiDriftTests.test_no_wiki_is_ok) ... ok\ntest_unlinked_markdown_reference_is_part_of_wiki_drift (test_wiki_backfill.WikiDriftTests.test_unlinked_markdown_reference_is_part_of_wiki_drift) ... ok\ntest_unstamped_article_flagged (test_wiki_backfill.WikiDriftTests.test_unstamped_article_flagged) ... ok\ntest_wiki_drift_uses_configured_wiki_directory (test_wiki_backfill.WikiDriftTests.test_wiki_drift_uses_configured_wiki_directory) ... ok\ntest_ambiguous_reference_is_reported_but_never_guessed (test_wiki_backfill.WikiInlineMarkdownLinkTests.test_ambiguous_reference_is_reported_but_never_guessed) ... ok\ntest_cli_check_fails_and_fix_then_passes (test_wiki_backfill.WikiInlineMarkdownLinkTests.test_cli_check_fails_and_fix_then_passes) ... ok\ntest_existing_inline_links_and_fenced_examples_are_not_findings (test_wiki_backfill.WikiInlineMarkdownLinkTests.test_existing_inline_links_and_fenced_examples_are_not_findings) ... ok\ntest_fix_rewrites_only_unambiguous_references_to_relative_inline_links (test_wiki_backfill.WikiInlineMarkdownLinkTests.test_fix_rewrites_only_unambiguous_references_to_relative_inline_links) ... ok\ntest_reports_resolvable_bare_and_code_wrapped_markdown_references (test_wiki_backfill.WikiInlineMarkdownLinkTests.test_reports_resolvable_bare_and_code_wrapped_markdown_references) ... ok\ntest_nudge_surfaces_pending_backfill (test_wiki_backfill.WiringTests.test_nudge_surfaces_pending_backfill) ... ok\ntest_script_registered_downstream (test_wiki_backfill.WiringTests.test_script_registered_downstream) ... ok\ntest_skill_has_backfill_mode (test_wiki_backfill.WiringTests.test_skill_has_backfill_mode) ... ok\ntest_copy_and_download_controls_are_wired (test_wiki_html_export.WikiHtmlExportTests.test_copy_and_download_controls_are_wired) ... ok\ntest_default_output_lands_in_the_local_runtime_dir (test_wiki_html_export.WikiHtmlExportTests.test_default_output_lands_in_the_local_runtime_dir) ... ok\ntest_every_page_is_embedded_with_exact_markdown (test_wiki_html_export.WikiHtmlExportTests.test_every_page_is_embedded_with_exact_markdown) ... ok\ntest_export_all_generates_viewers_and_super_index (test_wiki_html_export.WikiHtmlExportTests.test_export_all_generates_viewers_and_super_index) ... ok\ntest_export_is_one_self_contained_offline_file (test_wiki_html_export.WikiHtmlExportTests.test_export_is_one_self_contained_offline_file) ... ok\ntest_guest_repo_viewer_is_hosted_by_the_host_repo (test_wiki_html_export.WikiHtmlExportTests.test_guest_repo_viewer_is_hosted_by_the_host_repo)\nA repo without .prd_plugin gets NO new files in its own tree; its ... ok\ntest_hub_repo_exports_all_pages (test_wiki_html_export.WikiHtmlExportTests.test_hub_repo_exports_all_pages) ... ok\ntest_parse_wiki_log_extracts_dated_entries_with_bodies (test_wiki_html_export.WikiHtmlExportTests.test_parse_wiki_log_extracts_dated_entries_with_bodies)\nREQ-112: every workspace log follows '## [date] mode | text'. ... ok\ntest_parse_wiki_log_tolerates_missing_log (test_wiki_html_export.WikiHtmlExportTests.test_parse_wiki_log_tolerates_missing_log) ... ok\ntest_script_content_cannot_break_the_payload (test_wiki_html_export.WikiHtmlExportTests.test_script_content_cannot_break_the_payload) ... ok\ntest_super_index_has_a_combined_changelog (test_wiki_html_export.WikiHtmlExportTests.test_super_index_has_a_combined_changelog) ... ok\ntest_super_index_reports_page_counts (test_wiki_html_export.WikiHtmlExportTests.test_super_index_reports_page_counts) ... ok\ntest_workspace_discovery_uses_the_wiki_convention_marker (test_wiki_html_export.WikiHtmlExportTests.test_workspace_discovery_uses_the_wiki_convention_marker)\nREQ-110 + REQ-111: any immediate child whose wiki follows the ... ok\ntest_a_repo_without_a_wiki_is_not_in_drift (test_wiki_ingest_drift.DetectionTests.test_a_repo_without_a_wiki_is_not_in_drift)\nNo wiki is a legitimate state, not a failure to ingest. ... ok\ntest_fully_ingested_repo_is_clean (test_wiki_ingest_drift.DetectionTests.test_fully_ingested_repo_is_clean) ... ok\ntest_malformed_state_degrades_rather_than_raising (test_wiki_ingest_drift.DetectionTests.test_malformed_state_degrades_rather_than_raising) ... ok\ntest_non_implemented_requests_are_never_expected_in_the_log (test_wiki_ingest_drift.DetectionTests.test_non_implemented_requests_are_never_expected_in_the_log) ... ok\ntest_only_work_since_the_last_ingest_is_actionable (test_wiki_ingest_drift.DetectionTests.test_only_work_since_the_last_ingest_is_actionable)\nRaw counting flags pre-wiki history as drift � ~70 items in the hub, ... ok\ntest_reports_implemented_requests_absent_from_the_log (test_wiki_ingest_drift.DetectionTests.test_reports_implemented_requests_absent_from_the_log) ... ok\ntest_it_runs_against_this_repo_and_returns_a_usable_report (test_wiki_ingest_drift.RealRepoTests.test_it_runs_against_this_repo_and_returns_a_usable_report)\nGrounded against real state, but NOT pinned to a specific gap: a test ... ok\ntest_prd_status_omits_it_when_clean (test_wiki_ingest_drift.SurfaceTests.test_prd_status_omits_it_when_clean) ... ok\ntest_prd_status_reports_the_drift (test_wiki_ingest_drift.SurfaceTests.test_prd_status_reports_the_drift) ... ok\ntest_this_repos_wiki_reads_byte_exact (test_wiki_page_contract.HubRepoSmokeTests.test_this_repos_wiki_reads_byte_exact) ... ok\ntest_list_enumerates_canonical_pages_with_titles (test_wiki_page_contract.WikiPageListTests.test_list_enumerates_canonical_pages_with_titles) ... ok\ntest_boundaries_are_hard (test_wiki_page_contract.WikiPageReadTests.test_boundaries_are_hard) ... ok\ntest_drift_remains_the_default_action (test_wiki_page_contract.WikiPageReadTests.test_drift_remains_the_default_action) ... ok\ntest_read_page_without_stamps_reports_null_provenance (test_wiki_page_contract.WikiPageReadTests.test_read_page_without_stamps_reports_null_provenance) ... ok\ntest_read_requires_a_path (test_wiki_page_contract.WikiPageReadTests.test_read_requires_a_path) ... ok\ntest_read_returns_exact_markdown_with_provenance (test_wiki_page_contract.WikiPageReadTests.test_read_returns_exact_markdown_with_provenance) ... ok\ntest_no_cp1252_unencodable_chars_in_agent_facing_tools (test_windows_console_safe.SourceScanTests.test_no_cp1252_unencodable_chars_in_agent_facing_tools) ... ok\ntest_backfill_pending_status_renders_cp1252_safe (test_windows_console_safe.StatusRenderTests.test_backfill_pending_status_renders_cp1252_safe) ... ok\ntest_json_output_escapes_non_console_characters (test_windows_console_safe.WorkflowCliRenderTests.test_json_output_escapes_non_console_characters) ... ok\ntest_repository_workflow_surfaces_are_chml_zero (test_workflow_chml_audit.WorkflowChmlAuditTests.test_repository_workflow_surfaces_are_chml_zero) ... ok\ntest_semantic_skill_finding_is_part_of_workflow_chml (test_workflow_chml_audit.WorkflowChmlAuditTests.test_semantic_skill_finding_is_part_of_workflow_chml) ... ok\ntest_git_workflow_pushes_clean_verified_commits_in_autonomous (test_workflow_consistency.AutonomyConflictResolutionTests.test_git_workflow_pushes_clean_verified_commits_in_autonomous) ... ok\ntest_request_intake_defers_autonomy_and_owns_graduation (test_workflow_consistency.AutonomyConflictResolutionTests.test_request_intake_defers_autonomy_and_owns_graduation) ... ok\ntest_evidence_pair_states_create_vs_review_boundary (test_workflow_consistency.BoundaryClarityTests.test_evidence_pair_states_create_vs_review_boundary) ... ok\ntest_session_close_states_memory_boundary (test_workflow_consistency.BoundaryClarityTests.test_session_close_states_memory_boundary) ... ok\ntest_document_branch_has_promotion_owner (test_workflow_consistency.DeadEndOwnerTests.test_document_branch_has_promotion_owner) ... ok\ntest_health_findings_have_triage_dispositions (test_workflow_consistency.DeadEndOwnerTests.test_health_findings_have_triage_dispositions) ... ok\ntest_memory_owns_schema_version_changes (test_workflow_consistency.DeadEndOwnerTests.test_memory_owns_schema_version_changes) ... ok\ntest_planning_lifecycle_has_stage_readiness_checkpoints (test_workflow_consistency.DeadEndOwnerTests.test_planning_lifecycle_has_stage_readiness_checkpoints) ... ok\ntest_session_close_runs_traceability_sync (test_workflow_consistency.DeadEndOwnerTests.test_session_close_runs_traceability_sync) ... ok\n\n----------------------------------------------------------------------\nRan 1263 tests in 99.732s\n\nOK (skipped=1)\n"
          },
          "output_hash": "c9f7039c10d406bbb36db6816ae777549fd9f95fcf1d0b67319de33939c65859",
          "completed_at": "2026-07-25T03:59:47Z"
        },
        {
          "id": "release",
          "action": "process.fixed",
          "status": "completed",
          "resolved_input_hash": "1e5b0c18d93eb4c2248f9a00adbd438e52f3ef02137477fb8376c69cfe86fc9b",
          "started_at": "2026-07-25T03:59:47Z",
          "output": {
            "operation": "release_check",
            "command": [
              "python",
              "scripts/release_check.py"
            ],
            "exit_code": 0,
            "stdout": "# Release Hygiene Report\n\nBase version: `0.16.55`\nHead version: `0.16.57`\nChanged files checked: 43\n\n## Findings\n\n- None\n",
            "stderr": ""
          },
          "output_hash": "dbcdcd7ca3f981f03a71e1bfcdfe77c2c8a7676b8acbe6f36993123db9c13556",
          "completed_at": "2026-07-25T03:59:47Z"
        },
        {
          "id": "gaps",
          "action": "process.fixed",
          "status": "completed",
          "resolved_input_hash": "577241909238eeb55683f89d2d2216648dad2e3127397993e22493829a1307a4",
          "started_at": "2026-07-25T03:59:47Z",
          "output": {
            "operation": "gap_audit",
            "command": [
              "python",
              "scripts/gap_audit.py",
              "--target-version",
              "0.16.57",
              "--config",
              ".prd_plugin/config.json",
              "--releases",
              ".prd_plugin/state/releases.json"
            ],
            "exit_code": 0,
            "stdout": "# PRD Plugin Gap Audit\n\nTarget version: `0.16.57`\n\n## Findings\n\n- None\n",
            "stderr": ""
          },
          "output_hash": "9e732f329bdb0715c19f138a50c43a20eba09f6804708b992bbd03a787e7d20a",
          "completed_at": "2026-07-25T03:59:48Z"
        },
        {
          "id": "package",
          "action": "process.fixed",
          "status": "completed",
          "resolved_input_hash": "06cd12e1f3db3d985f9150520afa60f288297ff0ca01a8e813e9bb6291aa8836",
          "started_at": "2026-07-25T03:59:48Z",
          "output": {
            "operation": "package_check",
            "command": [
              "npm",
              "pack",
              "--dry-run"
            ],
            "exit_code": 0,
            "stdout": "prd-plugin-0.16.57.tgz\n",
            "stderr": "te.md\nnpm notice 17.0kB templates/repo-skeleton/.agents/skills/project-llm-wiki/SKILL.md\nnpm notice 7.4kB templates/repo-skeleton/.agents/skills/project-local-integration/SKILL.md\nnpm notice 8.1kB templates/repo-skeleton/.agents/skills/project-memory/SKILL.md\nnpm notice 6.2kB templates/repo-skeleton/.agents/skills/project-planning-lifecycle/SKILL.md\nnpm notice 6.0kB templates/repo-skeleton/.agents/skills/project-prd-plugin-setup/SKILL.md\nnpm notice 3.5kB templates/repo-skeleton/.agents/skills/project-prd/SKILL.md\nnpm notice 27.5kB templates/repo-skeleton/.agents/skills/project-request-intake/SKILL.md\nnpm notice 4.8kB templates/repo-skeleton/.agents/skills/project-session-close/SKILL.md\nnpm notice 10.3kB templates/repo-skeleton/.agents/skills/project-systematic-debugging/SKILL.md\nnpm notice 4.8kB templates/repo-skeleton/.agents/skills/project-test-driven-implementation/SKILL.md\nnpm notice 3.7kB templates/repo-skeleton/.agents/skills/project-traceability-review/SKILL.md\nnpm notice 2.5kB templates/repo-skeleton/.agents/skills/project-traceability-sync/SKILL.md\nnpm notice 6.6kB templates/repo-skeleton/.agents/skills/project-verification-before-completion/SKILL.md\nnpm notice 1.5kB templates/repo-skeleton/.agents/skills/source-command-prd-autonomy/SKILL.md\nnpm notice 1.2kB templates/repo-skeleton/.agents/skills/source-command-prd-close/SKILL.md\nnpm notice 3.3kB templates/repo-skeleton/.agents/skills/source-command-prd-config/SKILL.md\nnpm notice 2.4kB templates/repo-skeleton/.agents/skills/source-command-prd-drift/SKILL.md\nnpm notice 2.1kB templates/repo-skeleton/.agents/skills/source-command-prd-graph/SKILL.md\nnpm notice 2.2kB templates/repo-skeleton/.agents/skills/source-command-prd-hooks/SKILL.md\nnpm notice 1.3kB templates/repo-skeleton/.agents/skills/source-command-prd-new/SKILL.md\nnpm notice 2.0kB templates/repo-skeleton/.agents/skills/source-command-prd-off/SKILL.md\nnpm notice 1.5kB templates/repo-skeleton/.agents/skills/source-command-prd-on/SKILL.md\nnpm notice 2.3kB templates/repo-skeleton/.agents/skills/source-command-prd-reflections/SKILL.md\nnpm notice 2.5kB templates/repo-skeleton/.agents/skills/source-command-prd-report/SKILL.md\nnpm notice 1.2kB templates/repo-skeleton/.agents/skills/source-command-prd-status/SKILL.md\nnpm notice 1.7kB templates/repo-skeleton/.agents/skills/source-command-prd-track/SKILL.md\nnpm notice 1.8kB templates/repo-skeleton/.agents/skills/source-command-prd-version/SKILL.md\nnpm notice 1.7kB templates/repo-skeleton/.agents/skills/source-command-prd-workflow/SKILL.md\nnpm notice 764B templates/repo-skeleton/.claude-plugin/plugin.json\nnpm notice 772B templates/repo-skeleton/.claude/commands/prd-autonomy.md\nnpm notice 493B templates/repo-skeleton/.claude/commands/prd-close.md\nnpm notice 2.5kB templates/repo-skeleton/.claude/commands/prd-config.md\nnpm notice 1.6kB templates/repo-skeleton/.claude/commands/prd-drift.md\nnpm notice 1.4kB templates/repo-skeleton/.claude/commands/prd-graph.md\nnpm notice 1.6kB templates/repo-skeleton/.claude/commands/prd-hooks.md\nnpm notice 639B templates/repo-skeleton/.claude/commands/prd-new.md\nnpm notice 1.4kB templates/repo-skeleton/.claude/commands/prd-off.md\nnpm notice 862B templates/repo-skeleton/.claude/commands/prd-on.md\nnpm notice 1.6kB templates/repo-skeleton/.claude/commands/prd-reflections.md\nnpm notice 1.8kB templates/repo-skeleton/.claude/commands/prd-report.md\nnpm notice 549B templates/repo-skeleton/.claude/commands/prd-status.md\nnpm notice 974B templates/repo-skeleton/.claude/commands/prd-track.md\nnpm notice 1.0kB templates/repo-skeleton/.claude/commands/prd-version.md\nnpm notice 938B templates/repo-skeleton/.claude/commands/prd-workflow.md\nnpm notice 1.6kB templates/repo-skeleton/.claude/hooks/prd_drift_check.py\nnpm notice 2.0kB templates/repo-skeleton/.claude/hooks/prd_log_skill.py\nnpm notice 4.1kB templates/repo-skeleton/.claude/hooks/prd_nudge.py\nnpm notice 3.7kB templates/repo-skeleton/.claude/hooks/prd_precommit_gate.py\nnpm notice 6.1kB templates/repo-skeleton/.claude/hooks/prd_reflection.py\nnpm notice 3.5kB templates/repo-skeleton/.claude/hooks/prd_session_report.py\nnpm notice 15.8kB templates/repo-skeleton/.claude/hooks/prd_stop_guard.py\nnpm notice 1.2kB templates/repo-skeleton/.claude/settings.json\nnpm notice 3.0kB templates/repo-skeleton/.claude/skills/project-architecture/SKILL.md\nnpm notice 7.4kB templates/repo-skeleton/.claude/skills/project-blocker-resolution/SKILL.md\nnpm notice 2.8kB templates/repo-skeleton/.claude/skills/project-brainstorm/SKILL.md\nnpm notice 5.5kB templates/repo-skeleton/.claude/skills/project-change-request/SKILL.md\nnpm notice 6.3kB templates/repo-skeleton/.claude/skills/project-code-review/SKILL.md\nnpm notice 2.7kB templates/repo-skeleton/.claude/skills/project-decision-ledger/SKILL.md\nnpm notice 23.6kB templates/repo-skeleton/.claude/skills/project-decision-policy/SKILL.md\nnpm notice 4.4kB templates/repo-skeleton/.claude/skills/project-deterministic-workflows/SKILL.md\nnpm notice 5.2kB templates/repo-skeleton/.claude/skills/project-document-branch/SKILL.md\nnpm notice 2.8kB templates/repo-skeleton/.claude/skills/project-evidence-ledger/SKILL.md\nnpm notice 3.3kB templates/repo-skeleton/.claude/skills/project-evidence/SKILL.md\nnpm notice 11.9kB templates/repo-skeleton/.claude/skills/project-git-workflow/SKILL.md\nnpm notice 7.4kB templates/repo-skeleton/.claude/skills/project-health/SKILL.md\nnpm notice 6.0kB templates/repo-skeleton/.claude/skills/project-implementation-plan/SKILL.md\nnpm notice 1.1kB templates/repo-skeleton/.claude/skills/project-llm-wiki/LICENSE\nnpm notice 842B templates/repo-skeleton/.claude/skills/project-llm-wiki/references/archive-template.md\nnpm notice 843B templates/repo-skeleton/.claude/skills/project-llm-wiki/references/article-template.md\nnpm notice 559B templates/repo-skeleton/.claude/skills/project-llm-wiki/references/index-template.md\nnpm notice 317B templates/repo-skeleton/.claude/skills/project-llm-wiki/references/raw-template.md\nnpm notice 17.0kB templates/repo-skeleton/.claude/skills/project-llm-wiki/SKILL.md\nnpm notice 7.4kB templates/repo-skeleton/.claude/skills/project-local-integration/SKILL.md\nnpm notice 8.1kB templates/repo-skeleton/.claude/skills/project-memory/SKILL.md\nnpm notice 6.2kB templates/repo-skeleton/.claude/skills/project-planning-lifecycle/SKILL.md\nnpm notice 6.0kB templates/repo-skeleton/.claude/skills/project-prd-plugin-setup/SKILL.md\nnpm notice 3.5kB templates/repo-skeleton/.claude/skills/project-prd/SKILL.md\nnpm notice 27.5kB templates/repo-skeleton/.claude/skills/project-request-intake/SKILL.md\nnpm notice 4.8kB templates/repo-skeleton/.claude/skills/project-session-close/SKILL.md\nnpm notice 10.3kB templates/repo-skeleton/.claude/skills/project-systematic-debugging/SKILL.md\nnpm notice 4.8kB templates/repo-skeleton/.claude/skills/project-test-driven-implementation/SKILL.md\nnpm notice 3.7kB templates/repo-skeleton/.claude/skills/project-traceability-review/SKILL.md\nnpm notice 2.5kB templates/repo-skeleton/.claude/skills/project-traceability-sync/SKILL.md\nnpm notice 6.6kB templates/repo-skeleton/.claude/skills/project-verification-before-completion/SKILL.md\nnpm notice 1.5kB templates/repo-skeleton/.claude/skills/source-command-prd-autonomy/SKILL.md\nnpm notice 1.2kB templates/repo-skeleton/.claude/skills/source-command-prd-close/SKILL.md\nnpm notice 3.3kB templates/repo-skeleton/.claude/skills/source-command-prd-config/SKILL.md\nnpm notice 2.4kB templates/repo-skeleton/.claude/skills/source-command-prd-drift/SKILL.md\nnpm notice 2.1kB templates/repo-skeleton/.claude/skills/source-command-prd-graph/SKILL.md\nnpm notice 2.2kB templates/repo-skeleton/.claude/skills/source-command-prd-hooks/SKILL.md\nnpm notice 1.3kB templates/repo-skeleton/.claude/skills/source-command-prd-new/SKILL.md\nnpm notice 2.0kB templates/repo-skeleton/.claude/skills/source-command-prd-off/SKILL.md\nnpm notice 1.5kB templates/repo-skeleton/.claude/skills/source-command-prd-on/SKILL.md\nnpm notice 2.3kB templates/repo-skeleton/.claude/skills/source-command-prd-reflections/SKILL.md\nnpm notice 2.5kB templates/repo-skeleton/.claude/skills/source-command-prd-report/SKILL.md\nnpm notice 1.2kB templates/repo-skeleton/.claude/skills/source-command-prd-status/SKILL.md\nnpm notice 1.7kB templates/repo-skeleton/.claude/skills/source-command-prd-track/SKILL.md\nnpm notice 1.8kB templates/repo-skeleton/.claude/skills/source-command-prd-version/SKILL.md\nnpm notice 1.7kB templates/repo-skeleton/.claude/skills/source-command-prd-workflow/SKILL.md\nnpm notice 3.2kB templates/repo-skeleton/.codex-plugin/plugin.json\nnpm notice 3.3kB templates/repo-skeleton/.codex/hooks.json\nnpm notice 743B templates/repo-skeleton/.githooks/pre-commit\nnpm notice 734B templates/repo-skeleton/.github/workflows/prd-gate.yml\nnpm notice 3.2kB templates/repo-skeleton/.opencode/plugin.json\nnpm notice 4.4kB templates/repo-skeleton/.opencode/plugins/prd-hooks.js\nnpm notice 3.0kB templates/repo-skeleton/.opencode/skill/project-architecture/SKILL.md\nnpm notice 7.4kB templates/repo-skeleton/.opencode/skill/project-blocker-resolution/SKILL.md\nnpm notice 2.8kB templates/repo-skeleton/.opencode/skill/project-brainstorm/SKILL.md\nnpm notice 5.5kB templates/repo-skeleton/.opencode/skill/project-change-request/SKILL.md\nnpm notice 6.3kB templates/repo-skeleton/.opencode/skill/project-code-review/SKILL.md\nnpm notice 2.7kB templates/repo-skeleton/.opencode/skill/project-decision-ledger/SKILL.md\nnpm notice 23.6kB templates/repo-skeleton/.opencode/skill/project-decision-policy/SKILL.md\nnpm notice 4.4kB templates/repo-skeleton/.opencode/skill/project-deterministic-workflows/SKILL.md\nnpm notice 5.2kB templates/repo-skeleton/.opencode/skill/project-document-branch/SKILL.md\nnpm notice 2.8kB templates/repo-skeleton/.opencode/skill/project-evidence-ledger/SKILL.md\nnpm notice 3.3kB templates/repo-skeleton/.opencode/skill/project-evidence/SKILL.md\nnpm notice 11.9kB templates/repo-skeleton/.opencode/skill/project-git-workflow/SKILL.md\nnpm notice 7.4kB templates/repo-skeleton/.opencode/skill/project-health/SKILL.md\nnpm notice 6.0kB templates/repo-skeleton/.opencode/skill/project-implementation-plan/SKILL.md\nnpm notice 1.1kB templates/repo-skeleton/.opencode/skill/project-llm-wiki/LICENSE\nnpm notice 842B templates/repo-skeleton/.opencode/skill/project-llm-wiki/references/archive-template.md\nnpm notice 843B templates/repo-skeleton/.opencode/skill/project-llm-wiki/references/article-template.md\nnpm notice 559B templates/repo-skeleton/.opencode/skill/project-llm-wiki/references/index-template.md\nnpm notice 317B templates/repo-skeleton/.opencode/skill/project-llm-wiki/references/raw-template.md\nnpm notice 17.0kB templates/repo-skeleton/.opencode/skill/project-llm-wiki/SKILL.md\nnpm notice 7.4kB templates/repo-skeleton/.opencode/skill/project-local-integration/SKILL.md\nnpm notice 8.1kB templates/repo-skeleton/.opencode/skill/project-memory/SKILL.md\nnpm notice 6.2kB templates/repo-skeleton/.opencode/skill/project-planning-lifecycle/SKILL.md\nnpm notice 6.0kB templates/repo-skeleton/.opencode/skill/project-prd-plugin-setup/SKILL.md\nnpm notice 3.5kB templates/repo-skeleton/.opencode/skill/project-prd/SKILL.md\nnpm notice 27.5kB templates/repo-skeleton/.opencode/skill/project-request-intake/SKILL.md\nnpm notice 4.8kB templates/repo-skeleton/.opencode/skill/project-session-close/SKILL.md\nnpm notice 10.3kB templates/repo-skeleton/.opencode/skill/project-systematic-debugging/SKILL.md\nnpm notice 4.8kB templates/repo-skeleton/.opencode/skill/project-test-driven-implementation/SKILL.md\nnpm notice 3.7kB templates/repo-skeleton/.opencode/skill/project-traceability-review/SKILL.md\nnpm notice 2.5kB templates/repo-skeleton/.opencode/skill/project-traceability-sync/SKILL.md\nnpm notice 6.6kB templates/repo-skeleton/.opencode/skill/project-verification-before-completion/SKILL.md\nnpm notice 1.5kB templates/repo-skeleton/.opencode/skill/source-command-prd-autonomy/SKILL.md\nnpm notice 1.2kB templates/repo-skeleton/.opencode/skill/source-command-prd-close/SKILL.md\nnpm notice 3.3kB templates/repo-skeleton/.opencode/skill/source-command-prd-config/SKILL.md\nnpm notice 2.4kB templates/repo-skeleton/.opencode/skill/source-command-prd-drift/SKILL.md\nnpm notice 2.1kB templates/repo-skeleton/.opencode/skill/source-command-prd-graph/SKILL.md\nnpm notice 2.2kB templates/repo-skeleton/.opencode/skill/source-command-prd-hooks/SKILL.md\nnpm notice 1.3kB templates/repo-skeleton/.opencode/skill/source-command-prd-new/SKILL.md\nnpm notice 2.0kB templates/repo-skeleton/.opencode/skill/source-command-prd-off/SKILL.md\nnpm notice 1.5kB templates/repo-skeleton/.opencode/skill/source-command-prd-on/SKILL.md\nnpm notice 2.3kB templates/repo-skeleton/.opencode/skill/source-command-prd-reflections/SKILL.md\nnpm notice 2.5kB templates/repo-skeleton/.opencode/skill/source-command-prd-report/SKILL.md\nnpm notice 1.2kB templates/repo-skeleton/.opencode/skill/source-command-prd-status/SKILL.md\nnpm notice 1.7kB templates/repo-skeleton/.opencode/skill/source-command-prd-track/SKILL.md\nnpm notice 1.8kB templates/repo-skeleton/.opencode/skill/source-command-prd-version/SKILL.md\nnpm notice 1.7kB templates/repo-skeleton/.opencode/skill/source-command-prd-workflow/SKILL.md\nnpm notice 14.9kB templates/repo-skeleton/.prd_plugin/config.json\nnpm notice 1.6kB templates/repo-skeleton/.prd_plugin/hooks/prd_drift_check.py\nnpm notice 12.0kB templates/repo-skeleton/.prd_plugin/hooks/prd_hook_dispatch.py\nnpm notice 2.0kB templates/repo-skeleton/.prd_plugin/hooks/prd_log_skill.py\nnpm notice 4.1kB templates/repo-skeleton/.prd_plugin/hooks/prd_nudge.py\nnpm notice 3.7kB templates/repo-skeleton/.prd_plugin/hooks/prd_precommit_gate.py\nnpm notice 64.5kB templates/repo-skeleton/.prd_plugin/hooks/prd_reason_guard.py\nnpm notice 6.1kB templates/repo-skeleton/.prd_plugin/hooks/prd_reflection.py\nnpm notice 3.5kB templates/repo-skeleton/.prd_plugin/hooks/prd_session_report.py\nnpm notice 15.8kB templates/repo-skeleton/.prd_plugin/hooks/prd_stop_guard.py\nnpm notice 8.0kB templates/repo-skeleton/.prd_plugin/hooks/prd_test_scope_guard.py\nnpm notice 3.7kB templates/repo-skeleton/.prd_plugin/ID-SCHEME.md\nnpm notice 581B templates/repo-skeleton/.prd_plugin/ids/registry.json\nnpm notice 12.9kB templates/repo-skeleton/.prd_plugin/METHOD.md\nnpm notice 725B templates/repo-skeleton/.prd_plugin/method/artifact-format.md\nnpm notice 1.5kB templates/repo-skeleton/.prd_plugin/method/completion-gate.md\nnpm notice 3.6kB templates/repo-skeleton/.prd_plugin/method/deterministic-workflows.md\nnpm notice 1.2kB templates/repo-skeleton/.prd_plugin/method/estimation.md\nnpm notice 2.2kB templates/repo-skeleton/.prd_plugin/method/grounding.md\nnpm notice 3.2kB templates/repo-skeleton/.prd_plugin/method/reporting.md\nnpm notice 4.1kB templates/repo-skeleton/.prd_plugin/method/self-service.md\nnpm notice 1.6kB templates/repo-skeleton/.prd_plugin/method/staleness-rules.md\nnpm notice 1.0kB templates/repo-skeleton/.prd_plugin/method/state-validation.md\nnpm notice 3.0kB templates/repo-skeleton/.prd_plugin/method/subagents.md\nnpm notice 1.3kB templates/repo-skeleton/.prd_plugin/services.json\nnpm notice 51B templates/repo-skeleton/.prd_plugin/state/changelog.json\nnpm notice 53B templates/repo-skeleton/.prd_plugin/state/decisions.json\nnpm notice 165B templates/repo-skeleton/.prd_plugin/state/health.json\nnpm notice 51B templates/repo-skeleton/.prd_plugin/state/memory.json\nnpm notice 287B templates/repo-skeleton/.prd_plugin/state/project.json\nnpm notice 52B templates/repo-skeleton/.prd_plugin/state/releases.json\nnpm notice 52B templates/repo-skeleton/.prd_plugin/state/requests.json\nnpm notice 215B templates/repo-skeleton/.prd_plugin/state/sessions/shared/promoted-session-summaries.jsonl\nnpm notice 49B templates/repo-skeleton/.prd_plugin/state/substrate-links.json\nnpm notice 51B templates/repo-skeleton/.prd_plugin/state/tracking.json\nnpm notice 48B templates/repo-skeleton/.prd_plugin/state/workflow-runs.json\nnpm notice 180B templates/repo-skeleton/.prd_plugin/templates/architecture-delta.md\nnpm notice 1.5kB templates/repo-skeleton/.prd_plugin/templates/architecture.json\nnpm notice 396B templates/repo-skeleton/.prd_plugin/templates/brainstorm.md\nnpm notice 274B templates/repo-skeleton/.prd_plugin/templates/changelog.json\nnpm notice 15.0kB templates/repo-skeleton/.prd_plugin/templates/config.json\nnpm notice 265B templates/repo-skeleton/.prd_plugin/templates/decision-record.md\nnpm notice 398B templates/repo-skeleton/.prd_plugin/templates/decisions.json\nnpm notice 372B templates/repo-skeleton/.prd_plugin/templates/doc-branch.json\nnpm notice 343B templates/repo-skeleton/.prd_plugin/templates/doc-branch.md\nnpm notice 129B templates/repo-skeleton/.prd_plugin/templates/evidence.md\nnpm notice 262B templates/repo-skeleton/.prd_plugin/templates/handoff.json\nnpm notice 427B templates/repo-skeleton/.prd_plugin/templates/health.json\nnpm notice 729B templates/repo-skeleton/.prd_plugin/templates/human-exports/architecture.md\nnpm notice 652B templates/repo-skeleton/.prd_plugin/templates/human-exports/implementation-plan.md\nnpm notice 610B templates/repo-skeleton/.prd_plugin/templates/human-exports/prd.md\nnpm notice 1.5kB templates/repo-skeleton/.prd_plugin/templates/implementation-plan.json\nnpm notice 70B templates/repo-skeleton/.prd_plugin/templates/mailbox.json\nnpm notice 365B templates/repo-skeleton/.prd_plugin/templates/memory.json\nnpm notice 490B templates/repo-skeleton/.prd_plugin/templates/merge-checklist.md\nnpm notice 176B templates/repo-skeleton/.prd_plugin/templates/plan-delta.md\nnpm notice 152B templates/repo-skeleton/.prd_plugin/templates/prd-delta.md\nnpm notice 1.4kB templates/repo-skeleton/.prd_plugin/templates/prd.json\nnpm notice 455B templates/repo-skeleton/.prd_plugin/templates/project.json\nnpm notice 126B templates/repo-skeleton/.prd_plugin/templates/promoted-session-summary.jsonl\nnpm notice 923B templates/repo-skeleton/.prd_plugin/templates/releases.json\nnpm notice 1.4kB templates/repo-skeleton/.prd_plugin/templates/request.json\nnpm notice 1.7kB templates/repo-skeleton/.prd_plugin/templates/requests.json\nnpm notice 23.4kB templates/repo-skeleton/.prd_plugin/templates/script-install-scope.json\nnpm notice 247B templates/repo-skeleton/.prd_plugin/templates/session.json\nnpm notice 15.6kB templates/repo-skeleton/.prd_plugin/templates/skill-install-scope.json\nnpm notice 333B templates/repo-skeleton/.prd_plugin/templates/submission-package.json\nnpm notice 5.7kB templates/repo-skeleton/.prd_plugin/templates/tool-surface.json\nnpm notice 230B templates/repo-skeleton/.prd_plugin/templates/traceability-matrix.md\nnpm notice 321B templates/repo-skeleton/.prd_plugin/templates/tracking.json\nnpm notice 375B templates/repo-skeleton/.prd_plugin/templates/utcp-config.json\nnpm notice 22.2kB templates/repo-skeleton/.prd_plugin/workflows.json\nnpm notice 15.2kB templates/repo-skeleton/AGENTS.md\nnpm notice 11.6kB templates/repo-skeleton/CLAUDE.md\nnpm notice 12.0kB templates/repo-skeleton/docs/INSTALL-MATRIX.md\nnpm notice 2.7kB templates/repo-skeleton/hooks/hooks.json\nnpm notice 1.4kB templates/request.json\nnpm notice 1.7kB templates/requests.json\nnpm notice 23.4kB templates/script-install-scope.json\nnpm notice 1.3kB templates/services.json\nnpm notice 247B templates/session.json\nnpm notice 15.6kB templates/skill-install-scope.json\nnpm notice 333B templates/submission-package.json\nnpm notice 10.4kB templates/substrate-capabilities.json\nnpm notice 48.5kB templates/tool-spec.json\nnpm notice 7.9kB templates/tool-surface.json\nnpm notice 230B templates/traceability-matrix.md\nnpm notice 321B templates/tracking.json\nnpm notice 375B templates/utcp-config.json\nnpm notice 22.2kB templates/workflows.json\nnpm notice Tarball Details\nnpm notice name: prd-plugin\nnpm notice version: 0.16.57\nnpm notice filename: prd-plugin-0.16.57.tgz\nnpm notice package size: 1.8 MB\nnpm notice unpacked size: 11.0 MB\nnpm notice shasum: 2edec9b979a7177ab9635e7827c5227d76e73a1d\nnpm notice integrity: sha512-t6rHWN0x7V/rq[...]zi0aYcd+XQFwA==\nnpm notice total files: 650\nnpm notice\n"
          },
          "output_hash": "91a297e89c574731d07bf455e0d8d73a0fde204dd326908d48fa22aa35038e66",
          "completed_at": "2026-07-25T03:59:49Z"
        },
        {
          "id": "gate",
          "action": "state.gate",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-25T03:59:50Z",
          "output": {
            "status": "attention",
            "repo_root": "D:\\Projects\\prd-plugin-worktrees\\codex-reasoning-summary-session-fallback",
            "summary": {
              "errors": 0,
              "warnings": 0
            },
            "findings": [
              {
                "check": "state_consistency",
                "severity": "info",
                "summary": "File references 2 canonical IDs across 2 prefix(es); treated as a positive signal of extra work.",
                "required_action": "No action required; this is an informational signal."
              }
            ]
          },
          "output_hash": "af95f5508bef069fc3c46ffe3a052eeba9fa5c6bfadc00da8d536a21484deebe",
          "completed_at": "2026-07-25T03:59:50Z"
        }
      ],
      "completed_at": "2026-07-25T03:59:50Z"
    },
    {
      "id": "WFR-429",
      "schema_version": "1.0",
      "workflow_id": "evidence.record",
      "workflow_version": 1,
      "definition_hash": "a6dfcb8faadb669d5c097a0d7fa9a738f20ee98e03b552c9557259a94a197e88",
      "plan_hash": "da8a11c3e507583fffe3a438fdc4be642970bfb40fee607acd48130c11829024",
      "input_hash": "d4f2ba4277692e14cb166ccaf679323893a7c2834443d20cea8dad74ed59f4c8",
      "inputs": {
        "summary": "Live PRD Plugin Codex session verification proved transcript fallback, Markdown active-heading classification, conditional clearance, accuracy/latency budgets, downstream parity, full release gates, and system scenarios.",
        "type": "validation",
        "linked_ids": [
          "REQ-174",
          "TRK-161",
          "IMP-014",
          "EV-210",
          "WFR-425",
          "WFR-426",
          "WFR-427",
          "WFR-428"
        ],
        "commands": [
          {
            "command": "Live Codex PreToolUse event with session_id 019f8f2a-71a4-7920-94a0-66cf3307c73b and no reasoning_summary",
            "outcome": "Trusted transcript fallback reached full Codex coverage and incremented observed-summary telemetry; neutral current summaries were correctly ignored."
          },
          {
            "command": "Replay exact visible candidate from the same 548-summary session through prd_reason_guard.py",
            "outcome": "Session contained 3 qualifying candidates; replay created 1 low-confidence obligation, open became 1, and clearance changed from clear to conditional."
          },
          {
            "command": "python scripts/reason_guard_benchmark.py --samples 100 --warmup 10 --json",
            "outcome": "46/46 labelled cases correct; precision, recall, F1, accuracy 1.0; classifier p95 0.011 ms; structured hook p95 18.812 ms; delta 3.776 ms."
          },
          {
            "command": "python scripts/prd_workflows.py --repo-root . run hub.release --idempotency-key codex-reason-guard-markdown-release-v1 --json",
            "outcome": "Completed; full unit suite, CHML 0/0/0/0, state, release, gap, package, and capability gates passed."
          },
          {
            "command": "python -m pytest system_tests -v",
            "outcome": "12 passed; 6 optional OpenCode live-driver scenarios skipped."
          }
        ],
        "limitations": "Transcript fallback was exercised directly on the live current session. Because its newest generated headings were neutral and correctly ignored, the positive path replayed an exact visible candidate from the same session through the full hook/report/status path rather than waiting for the formatter to emit that wording again."
      },
      "idempotency_key": "codex-reason-guard-markdown-evidence-v1",
      "status": "completed",
      "attempt": 1,
      "created_at": "2026-07-25T04:01:12Z",
      "updated_at": "2026-07-25T04:01:13Z",
      "receipts": [
        {
          "step_id": "record",
          "action": "state.mutate",
          "input_hash": "b73b927d0e2873b3862b9a5796831b37402ec38b18cf54d3d6fb74f76ba2f6a0",
          "output_hash": "090d0d543d76a269e74e45dad8e3304623ad33de58297f7bd98a9b7dae1514f0",
          "completed_at": "2026-07-25T04:01:12Z"
        },
        {
          "step_id": "confirm",
          "action": "state.query",
          "input_hash": "23625e6dd5ea6b6f62f5f71d79eb6b090e0744ce94a1133f4c4c7040ab8114a2",
          "output_hash": "3df42600f05a5fd24990c5970db25b2998b7b66dc6bb8dba000a46625389a7f1",
          "completed_at": "2026-07-25T04:01:12Z"
        }
      ],
      "steps": [
        {
          "id": "record",
          "action": "state.mutate",
          "status": "completed",
          "resolved_input_hash": "b73b927d0e2873b3862b9a5796831b37402ec38b18cf54d3d6fb74f76ba2f6a0",
          "started_at": "2026-07-25T04:01:12Z",
          "execution_token": "a6de2aa292126a5584802feb9c267b2e232fcf7c2a0139e2bfcf5be9564448fe",
          "output": {
            "id": "EV-211"
          },
          "output_hash": "090d0d543d76a269e74e45dad8e3304623ad33de58297f7bd98a9b7dae1514f0",
          "completed_at": "2026-07-25T04:01:12Z"
        },
        {
          "id": "confirm",
          "action": "state.query",
          "status": "completed",
          "resolved_input_hash": "23625e6dd5ea6b6f62f5f71d79eb6b090e0744ce94a1133f4c4c7040ab8114a2",
          "started_at": "2026-07-25T04:01:12Z",
          "output": {
            "kind": "EV",
            "record": {
              "id": "EV-211",
              "type": "validation",
              "summary": "Live PRD Plugin Codex session verification proved transcript fallback, Markdown active-heading classification, conditional clearance, accuracy/latency budgets, downstream parity, full release gates, and system scenarios.",
              "linked_ids": [
                "REQ-174",
                "TRK-161",
                "IMP-014",
                "EV-210",
                "WFR-425",
                "WFR-426",
                "WFR-427",
                "WFR-428"
              ],
              "created_at": "2026-07-25",
              "commands": [
                {
                  "command": "Live Codex PreToolUse event with session_id 019f8f2a-71a4-7920-94a0-66cf3307c73b and no reasoning_summary",
                  "outcome": "Trusted transcript fallback reached full Codex coverage and incremented observed-summary telemetry; neutral current summaries were correctly ignored."
                },
                {
                  "command": "Replay exact visible candidate from the same 548-summary session through prd_reason_guard.py",
                  "outcome": "Session contained 3 qualifying candidates; replay created 1 low-confidence obligation, open became 1, and clearance changed from clear to conditional."
                },
                {
                  "command": "python scripts/reason_guard_benchmark.py --samples 100 --warmup 10 --json",
                  "outcome": "46/46 labelled cases correct; precision, recall, F1, accuracy 1.0; classifier p95 0.011 ms; structured hook p95 18.812 ms; delta 3.776 ms."
                },
                {
                  "command": "python scripts/prd_workflows.py --repo-root . run hub.release --idempotency-key codex-reason-guard-markdown-release-v1 --json",
                  "outcome": "Completed; full unit suite, CHML 0/0/0/0, state, release, gap, package, and capability gates passed."
                },
                {
                  "command": "python -m pytest system_tests -v",
                  "outcome": "12 passed; 6 optional OpenCode live-driver scenarios skipped."
                }
              ],
              "limitations": "Transcript fallback was exercised directly on the live current session. Because its newest generated headings were neutral and correctly ignored, the positive path replayed an exact visible candidate from the same session through the full hook/report/status path rather than waiting for the formatter to emit that wording again."
            }
          },
          "output_hash": "3df42600f05a5fd24990c5970db25b2998b7b66dc6bb8dba000a46625389a7f1",
          "completed_at": "2026-07-25T04:01:12Z"
        }
      ],
      "completed_at": "2026-07-25T04:01:13Z"
    },
    {
      "id": "WFR-430",
      "schema_version": "1.0",
      "workflow_id": "session.start",
      "workflow_version": 1,
      "definition_hash": "dd0de9444af7b094cc93673d0844fb78c801d87d978cc5f6dd6bf3e3e863917d",
      "plan_hash": "1f4ae0cd6be8385f8a9310e49978bd8d93baa729842eb6df9243665a1b581277",
      "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
      "inputs": {},
      "idempotency_key": "codex-reason-guard-live-session-eval-start-v1",
      "status": "completed",
      "attempt": 1,
      "created_at": "2026-07-25T05:01:48Z",
      "updated_at": "2026-07-25T05:01:50Z",
      "receipts": [
        {
          "step_id": "mailbox",
          "action": "requests.pull",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "ab8a35139cfd3f5821ebc5138c9a44c899b54e4036790654ff120e79c7ab6223",
          "completed_at": "2026-07-25T05:01:49Z"
        },
        {
          "step_id": "config",
          "action": "config.audit",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "ef2327bf3ea9c100a1a525c09e426de9703016f1b7c177b0df10c0b7cf3f33c9",
          "completed_at": "2026-07-25T05:01:49Z"
        },
        {
          "step_id": "services",
          "action": "services.audit",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "13dcc58bd528f3efa3e6e0fa0853a6eedc376f1f3685fbd4869cbb2b60382ee3",
          "completed_at": "2026-07-25T05:01:49Z"
        },
        {
          "step_id": "state",
          "action": "state.consistency",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "7bd004636e5a786f64604d8cc821f23845cc7f69b783a6392c588759f368f587",
          "completed_at": "2026-07-25T05:01:49Z"
        },
        {
          "step_id": "status",
          "action": "state.query",
          "input_hash": "a15231a2142a2a9a85355a8b9cbbccffe01a9c9c2c2fd8c2bc2987cdc481564a",
          "output_hash": "dcac46984258ca57739014b756d5e3ba25346146ee65f5aa1fc9634a9b74dbb6",
          "completed_at": "2026-07-25T05:01:50Z"
        },
        {
          "step_id": "substrate",
          "action": "substrate.preflight",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "a6df426290b4549a59eecaa0519ead9bcc50b7fcb25bd2185ff6047960f19ccb",
          "completed_at": "2026-07-25T05:01:50Z"
        },
        {
          "step_id": "notices",
          "action": "substrate.notices",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "38b904a1cf83df048360fb2480571b749fd98d57e11f1afdffb5a74a78166fea",
          "completed_at": "2026-07-25T05:01:50Z"
        },
        {
          "step_id": "goals",
          "action": "substrate.goals",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "cdfd4de44a28140e686159f34f7b47975954c67e1d1efcef666e985acb136ed8",
          "completed_at": "2026-07-25T05:01:50Z"
        }
      ],
      "steps": [
        {
          "id": "mailbox",
          "action": "requests.pull",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-25T05:01:49Z",
          "output": {
            "applied": 0,
            "resolved_ids": [],
            "unmatched": [],
            "mailboxes": [],
            "pruned_outbox": [],
            "consumed_mailboxes": [],
            "outbound": {
              "delivered": 0,
              "mailboxes_published": [],
              "undeliverable": [],
              "pending": []
            },
            "addressed": {
              "delivered": 0,
              "destinations": [],
              "undelivered": [
                {
                  "id": "REQ-030",
                  "state": "not_ours_to_send",
                  "target_repo": "prd-plugin",
                  "reason": "REQ-030 was imported from 'ZeusGrid'; its target_repo records who it was addressed to, not somewhere for us to send it. Reply on its thread instead."
                },
                {
                  "id": "REQ-003",
                  "state": "not_ours_to_send",
                  "target_repo": "prd-plugin",
                  "reason": "REQ-003 was imported from 'ZeusGrid'; its target_repo records who it was addressed to, not somewhere for us to send it. Reply on its thread instead."
                },
                {
                  "id": "REQ-004",
                  "state": "not_ours_to_send",
                  "target_repo": "prd-plugin",
                  "reason": "REQ-004 was imported from 'ZeusGrid'; its target_repo records who it was addressed to, not somewhere for us to send it. Reply on its thread instead."
                },
                {
                  "id": "REQ-005",
                  "state": "not_ours_to_send",
                  "target_repo": "prd-plugin",
                  "reason": "REQ-005 was imported from 'GRAPH_LANG'; its target_repo records who it was addressed to, not somewhere for us to send it. Reply on its thread instead."
                },
                {
                  "id": "REQ-002",
                  "state": "self_addressed",
                  "target_repo": "prd-plugin",
                  "reason": "REQ-002 is addressed to this repo ('prd-plugin'); it is already here."
                },
                {
                  "id": "REQ-028",
                  "state": "self_addressed",
                  "target_repo": "prd-plugin",
                  "reason": "REQ-028 is addressed to this repo ('prd-plugin'); it is already here."
                },
                {
                  "id": "REQ-029",
                  "state": "not_ours_to_send",
                  "target_repo": "ai-collab-v3",
                  "reason": "REQ-029 was imported from 'ai-collab-v3'; its target_repo records who it was addressed to, not somewhere for us to send it. Reply on its thread instead."
                },
                {
                  "id": "REQ-138",
                  "state": "terminal",
                  "target_repo": "no-such-repo",
                  "reason": "REQ-138 is 'rejected'; a closed request is not delivered. Reopen it or file a new one if it still needs to travel."
                }
              ],
              "advisories": []
            }
          },
          "output_hash": "ab8a35139cfd3f5821ebc5138c9a44c899b54e4036790654ff120e79c7ab6223",
          "completed_at": "2026-07-25T05:01:49Z"
        },
        {
          "id": "config",
          "action": "config.audit",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-25T05:01:49Z",
          "output": {
            "status": "ok",
            "summary": {
              "settings": 214,
              "mutable": 204,
              "read_only_or_managed": 10,
              "unclassified": 0,
              "unknown": 0,
              "invalid": 0,
              "missing_using_defaults": 0
            },
            "unclassified_keys": [],
            "unknown_keys": [],
            "invalid_values": [],
            "missing_using_defaults": []
          },
          "output_hash": "ef2327bf3ea9c100a1a525c09e426de9703016f1b7c177b0df10c0b7cf3f33c9",
          "completed_at": "2026-07-25T05:01:49Z"
        },
        {
          "id": "services",
          "action": "services.audit",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-25T05:01:49Z",
          "output": {
            "status": "ok",
            "summary": {
              "critical": 0,
              "high": 0,
              "medium": 0,
              "low": 0
            },
            "findings": []
          },
          "output_hash": "13dcc58bd528f3efa3e6e0fa0853a6eedc376f1f3685fbd4869cbb2b60382ee3",
          "completed_at": "2026-07-25T05:01:49Z"
        },
        {
          "id": "state",
          "action": "state.consistency",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-25T05:01:49Z",
          "output": {
            "status": "ok",
            "repo_root": "D:\\Projects\\prd-plugin-worktrees\\codex-reasoning-summary-session-fallback",
            "summary": {
              "errors": 0,
              "warnings": 0,
              "infos": 1
            },
            "findings": [
              {
                "id": "CONS-INFO-001",
                "severity": "info",
                "path": "docs/evidence/EV-200.md",
                "summary": "File references 2 canonical IDs across 2 prefix(es); treated as a positive signal of extra work.",
                "referenced_prefixes": [
                  "CHG",
                  "TRK"
                ],
                "referenced_id_count": 2,
                "required_action": "No action required; this is an informational signal."
              }
            ]
          },
          "output_hash": "7bd004636e5a786f64604d8cc821f23845cc7f69b783a6392c588759f368f587",
          "completed_at": "2026-07-25T05:01:49Z"
        },
        {
          "id": "status",
          "action": "state.query",
          "status": "completed",
          "resolved_input_hash": "a15231a2142a2a9a85355a8b9cbbccffe01a9c9c2c2fd8c2bc2987cdc481564a",
          "started_at": "2026-07-25T05:01:50Z",
          "output": {
            "repo_root": "D:\\Projects\\prd-plugin-worktrees\\codex-reasoning-summary-session-fallback",
            "autonomy_level": "autonomous",
            "reasoning_guard": {
              "mode": "report",
              "categories": {
                "evidence_follow_through": "inherit",
                "causal_claims": "inherit",
                "permanent_mutations": "inherit",
                "completion_claims": "inherit"
              },
              "effective_modes": {
                "evidence_follow_through": "report",
                "causal_claims": "report",
                "permanent_mutations": "report",
                "completion_claims": "report"
              },
              "report_available": true,
              "coverage": {
                "host": "codex",
                "level": "full",
                "missing": [],
                "observed": [
                  "visible hook events",
                  "visible reasoning summaries",
                  "tool inputs"
                ]
              },
              "summary": {
                "blocked": 0,
                "deferred": 0,
                "open": 1,
                "violations": 0
              },
              "latency": {
                "samples_ms": [
                  1.186,
                  15.957,
                  18.827,
                  16.463,
                  1.488
                ],
                "p50_ms": 15.957,
                "p95_ms": 18.827
              },
              "classification": {
                "candidates": 1,
                "created": 1,
                "ignored": 3,
                "reconciled": 0,
                "summaries_seen": 4
              },
              "clearance": {
                "active_blocking_diagnostics": [],
                "coverage": {
                  "host": "codex",
                  "level": "full"
                },
                "deferred_blocking_obligations": [],
                "deferred_count": 0,
                "issued_at": "2026-07-25T03:53:51.857592Z",
                "limitations": [
                  "1 low-confidence inferred observation remains non-blocking."
                ],
                "mode": "report",
                "open_blocking_obligations": [],
                "report_digest": "989c9469b2a3ff495ebe275f7fbe4ece6ce32d11c0c45a6327a24902c3974993",
                "status": "conditional"
              }
            },
            "requests_by_status": {
              "accepted": 2,
              "deferred": 1,
              "implemented": 144,
              "in_review": 2,
              "proposed": 4,
              "rejected": 3
            },
            "active_tracking": [
              "TRK-160"
            ],
            "tracking_branches": [],
            "tracking_branch_counts": {},
            "tracking_branch_errors": [],
            "open_health": [
              "HLT-020",
              "HLT-021",
              "HLT-022",
              "HLT-023"
            ],
            "stale_count": 0,
            "skill_usage": {},
            "wiki_backfill_pending": false,
            "wiki_ingest_drift": null,
            "version_update": null
          },
          "output_hash": "dcac46984258ca57739014b756d5e3ba25346146ee65f5aa1fc9634a9b74dbb6",
          "completed_at": "2026-07-25T05:01:50Z"
        },
        {
          "id": "substrate",
          "action": "substrate.preflight",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-25T05:01:50Z",
          "output": {
            "status": "disabled",
            "services": {
              "status": "ok",
              "summary": {
                "critical": 0,
                "high": 0,
                "medium": 0,
                "low": 0
              },
              "findings": []
            },
            "policy": {
              "configured": {
                "enabled": false,
                "mode": "off",
                "capabilities": [
                  "records",
                  "graph",
                  "events"
                ],
                "contract_version": 2,
                "require_source_refs": true,
                "endpoint": "http://127.0.0.1:47124",
                "manual_url": "http://127.0.0.1:47124/utcp.json",
                "knowledge_browse_url": "http://127.0.0.1:5276",
                "auth_env": "AI_COLLAB_API_KEY",
                "timeout_seconds": 5,
                "max_result_bytes": 1048576,
                "cache_ttl_seconds": 60,
                "fallback": "local",
                "automation": {
                  "discovery_on_session_start": true,
                  "knowledge_recall": true,
                  "memory_recall": true,
                  "context_enrichment": true,
                  "notices_on_session_start": false,
                  "goals_sync": false,
                  "telemetry_on_maintenance": false,
                  "reporting_dispatch": true,
                  "judgment_dispatch": true,
                  "verification_execution": true
                }
              },
              "active": false,
              "effective_mode": "off",
              "effective_capabilities": []
            }
          },
          "output_hash": "a6df426290b4549a59eecaa0519ead9bcc50b7fcb25bd2185ff6047960f19ccb",
          "completed_at": "2026-07-25T05:01:50Z"
        },
        {
          "id": "notices",
          "action": "substrate.notices",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-25T05:01:50Z",
          "output": {
            "status": "disabled"
          },
          "output_hash": "38b904a1cf83df048360fb2480571b749fd98d57e11f1afdffb5a74a78166fea",
          "completed_at": "2026-07-25T05:01:50Z"
        },
        {
          "id": "goals",
          "action": "substrate.goals",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-25T05:01:50Z",
          "output": {
            "status": "disabled",
            "created": 0,
            "observed": 0,
            "results": []
          },
          "output_hash": "cdfd4de44a28140e686159f34f7b47975954c67e1d1efcef666e985acb136ed8",
          "completed_at": "2026-07-25T05:01:50Z"
        }
      ],
      "completed_at": "2026-07-25T05:01:50Z"
    },
    {
      "id": "WFR-431",
      "schema_version": "1.0",
      "workflow_id": "engineering.debug",
      "workflow_version": 1,
      "definition_hash": "b32f3f2fbbbd7474e05e983730ae4143048466f42364e34d7391312132c2dbf8",
      "plan_hash": "5ba20df631d7b6e76d293f6c4c1cfcca52fce4538fd4a0272899e484fa3a42d4",
      "input_hash": "3ab5db915b12b428a7fa56600ed155cbd63b6e779fc4d34f7d62d5665a49368b",
      "inputs": {
        "instructions": "Third related Reason Guard finding: the 46-case curated corpus passed while a deterministic sample of 100 real visible summaries from the current Codex session shows many semantic activity forms outside the narrow active-heading and token gates. Diagnose the root condition and smallest bounded evaluation-and-classifier change. Preserve report-only inferred authority, no model/network/dependency, privacy, cross-host parity, and latency budgets. The evaluation must freeze a human rubric, deduplicate before a stable development/holdout split, report representative and challenge strata separately, exclude ambiguous labels from headline metrics, tune on development only, and run holdout once.",
        "source_refs": [
          "REQ-174",
          "IMP-014",
          "wiki/hooks/reasoning-guard.md",
          "raw/hooks/2026-07-25-reason-guard-semantic-lite-telemetry.md",
          "scripts/reason_guard_benchmark.py",
          ".prd_plugin/hooks/prd_reason_guard.py",
          "https://developers.google.com/machine-learning/crash-course/overfitting/dividing-datasets",
          "https://scikit-learn.org/stable/modules/model_evaluation.html"
        ]
      },
      "idempotency_key": "codex-reason-guard-live-session-eval-debug-v1",
      "status": "completed",
      "attempt": 1,
      "created_at": "2026-07-25T05:06:32Z",
      "updated_at": "2026-07-25T05:07:38Z",
      "receipts": [
        {
          "step_id": "git",
          "action": "git.status",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "70d310b45c3f8104345c86d653b5098496addc32445daeb09d27c1f166d606e4",
          "completed_at": "2026-07-25T05:06:32Z"
        },
        {
          "step_id": "state",
          "action": "state.consistency",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "7bd004636e5a786f64604d8cc821f23845cc7f69b783a6392c588759f368f587",
          "completed_at": "2026-07-25T05:06:33Z"
        },
        {
          "step_id": "context",
          "action": "substrate.enrich",
          "input_hash": "3204c35da54ddaf7b2a70667d17dbfe48dd70648cc82a743595af5e821b0abaa",
          "output_hash": "ac266ab8c7dc509e6e92991c4b7f28e15e3be1b04cf954809b41e98fa4866910",
          "completed_at": "2026-07-25T05:06:33Z"
        },
        {
          "step_id": "diagnosis",
          "action": "judgment.request",
          "input_hash": "b429190e1e22d709277a4fc9a49689587f8560bf77ce806655c91f2ade640547",
          "output_hash": "c8a7bb66f2cf90413af0a8f5329d87671054b184828cd8f3cbd37f48b5316bf2",
          "request_hash": "068b8f708de310ad38c8c006e96300ffe7c59218e4d91358faef953f6d0d1532",
          "completed_at": "2026-07-25T05:07:37Z"
        }
      ],
      "steps": [
        {
          "id": "git",
          "action": "git.status",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-25T05:06:32Z",
          "output": {
            "clean": false,
            "changed_files": [
              ".prd_plugin/ids/registry.json",
              ".prd_plugin/state/workflow-runs.json"
            ]
          },
          "output_hash": "70d310b45c3f8104345c86d653b5098496addc32445daeb09d27c1f166d606e4",
          "completed_at": "2026-07-25T05:06:32Z"
        },
        {
          "id": "state",
          "action": "state.consistency",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-25T05:06:32Z",
          "output": {
            "status": "ok",
            "repo_root": "D:\\Projects\\prd-plugin-worktrees\\codex-reasoning-summary-session-fallback",
            "summary": {
              "errors": 0,
              "warnings": 0,
              "infos": 1
            },
            "findings": [
              {
                "id": "CONS-INFO-001",
                "severity": "info",
                "path": "docs/evidence/EV-200.md",
                "summary": "File references 2 canonical IDs across 2 prefix(es); treated as a positive signal of extra work.",
                "referenced_prefixes": [
                  "CHG",
                  "TRK"
                ],
                "referenced_id_count": 2,
                "required_action": "No action required; this is an informational signal."
              }
            ]
          },
          "output_hash": "7bd004636e5a786f64604d8cc821f23845cc7f69b783a6392c588759f368f587",
          "completed_at": "2026-07-25T05:06:33Z"
        },
        {
          "id": "context",
          "action": "substrate.enrich",
          "status": "completed",
          "resolved_input_hash": "3204c35da54ddaf7b2a70667d17dbfe48dd70648cc82a743595af5e821b0abaa",
          "started_at": "2026-07-25T05:06:33Z",
          "output": {
            "status": "disabled",
            "results": [],
            "local_source_refs": [
              "REQ-174",
              "IMP-014",
              "wiki/hooks/reasoning-guard.md",
              "raw/hooks/2026-07-25-reason-guard-semantic-lite-telemetry.md",
              "scripts/reason_guard_benchmark.py",
              ".prd_plugin/hooks/prd_reason_guard.py",
              "https://developers.google.com/machine-learning/crash-course/overfitting/dividing-datasets",
              "https://scikit-learn.org/stable/modules/model_evaluation.html"
            ]
          },
          "output_hash": "ac266ab8c7dc509e6e92991c4b7f28e15e3be1b04cf954809b41e98fa4866910",
          "completed_at": "2026-07-25T05:06:33Z"
        },
        {
          "id": "diagnosis",
          "action": "judgment.request",
          "status": "completed",
          "resolved_input_hash": "b429190e1e22d709277a4fc9a49689587f8560bf77ce806655c91f2ade640547",
          "started_at": "2026-07-25T05:06:33Z",
          "judgment_request": {
            "contract_version": 1,
            "run_id": "WFR-431",
            "step_id": "diagnosis",
            "task": "debugging",
            "instructions": "Third related Reason Guard finding: the 46-case curated corpus passed while a deterministic sample of 100 real visible summaries from the current Codex session shows many semantic activity forms outside the narrow active-heading and token gates. Diagnose the root condition and smallest bounded evaluation-and-classifier change. Preserve report-only inferred authority, no model/network/dependency, privacy, cross-host parity, and latency budgets. The evaluation must freeze a human rubric, deduplicate before a stable development/holdout split, report representative and challenge strata separately, exclude ambiguous labels from headline metrics, tune on development only, and run holdout once.",
            "source_refs": [
              "REQ-174",
              "IMP-014",
              "wiki/hooks/reasoning-guard.md",
              "raw/hooks/2026-07-25-reason-guard-semantic-lite-telemetry.md",
              "scripts/reason_guard_benchmark.py",
              ".prd_plugin/hooks/prd_reason_guard.py",
              "https://developers.google.com/machine-learning/crash-course/overfitting/dividing-datasets",
              "https://scikit-learn.org/stable/modules/model_evaluation.html"
            ],
            "source_hashes": {
              "wiki/hooks/reasoning-guard.md": "632f927f04ecd4762e3ed9bd16633a73b0de7bdb7bd24f391b7b7a69c03d6b18",
              "raw/hooks/2026-07-25-reason-guard-semantic-lite-telemetry.md": "04048ab9ce4a8395c727c6577afbadf2a5f220092f4056fd8fa5743791ff428b",
              "scripts/reason_guard_benchmark.py": "ab4175f89cc12db02050d9b88119b14f18b64b2cbdfa30228fbddf13d3938dce",
              ".prd_plugin/hooks/prd_reason_guard.py": "b3b3ec295e0f80329e56c2faf331c88d0c40c32c2ab8c67786efa7c38589b970"
            },
            "result_schema": {
              "type": "object",
              "required": [
                "summary",
                "hypotheses",
                "source_refs"
              ],
              "properties": {
                "summary": {
                  "type": "string"
                },
                "hypotheses": {
                  "type": "array",
                  "items": {
                    "type": "object"
                  }
                },
                "source_refs": {
                  "type": "array",
                  "items": {
                    "type": "string"
                  }
                }
              }
            },
            "executor": "ai-collab",
            "profile": "fast-capable",
            "constraints": {
              "no_project_state_writes": true,
              "require_source_refs": true
            },
            "request_hash": "068b8f708de310ad38c8c006e96300ffe7c59218e4d91358faef953f6d0d1532"
          },
          "output": {
            "summary": "Root condition: the release corpus and classifier share the same hand-authored vocabulary, so the 1.0 score is selection leakage rather than representative production accuracy. The runtime then applies three independent lexical gates (anchored action, consequential-area noun, and decision-signal token) to short host headings; semantically consequential checks are dropped whenever any surface token is absent. Transport is not the cause because the live Codex path has full visible-summary coverage. The smallest corrective slice is to fix the evaluation contract first, then replace the single narrow active gate with bounded action-family plus evidence/uncertainty semantics, preserving report-only authority and existing explicit-directive behavior.",
            "hypotheses": [
              {
                "name": "Corpus-selection leakage",
                "status": "supported",
                "evidence": "The 46 cases were curated around the implemented verbs and tokens; a split-before-tuning 100-case sample from 471 unique live summaries contains many decision-relevant headings outside those tokens."
              },
              {
                "name": "Transcript transport failure",
                "status": "rejected",
                "evidence": "The current Codex transcript contains 564 visible summary records across 471 unique sanitized texts and the guard reports full visible-summary coverage."
              },
              {
                "name": "A model or embedding service is required",
                "status": "not_supported_yet",
                "evidence": "The misses cluster into a small number of observable action families and evidence/uncertainty relations; a deterministic ontology can be measured first within the existing latency and dependency boundary."
              },
              {
                "name": "Treat every active heading as an obligation",
                "status": "rejected",
                "evidence": "The live sample and existing adversarial controls contain routine inspection, formatting, implementation, and logistics headings that would create avoidable false positives."
              }
            ],
            "source_refs": [
              "REQ-174",
              "IMP-014",
              "wiki/hooks/reasoning-guard.md",
              "raw/hooks/2026-07-25-reason-guard-semantic-lite-telemetry.md",
              "scripts/reason_guard_benchmark.py",
              ".prd_plugin/hooks/prd_reason_guard.py",
              "https://developers.google.com/machine-learning/crash-course/overfitting/dividing-datasets",
              "https://scikit-learn.org/stable/modules/model_evaluation.html"
            ]
          },
          "output_hash": "c8a7bb66f2cf90413af0a8f5329d87671054b184828cd8f3cbd37f48b5316bf2",
          "completed_at": "2026-07-25T05:07:37Z",
          "judgment_result": {
            "request_hash": "068b8f708de310ad38c8c006e96300ffe7c59218e4d91358faef953f6d0d1532",
            "executor": "ai-collab",
            "profile": "fast-capable"
          }
        }
      ],
      "completed_at": "2026-07-25T05:07:38Z"
    },
    {
      "id": "WFR-432",
      "schema_version": "1.0",
      "workflow_id": "engineering.code-review",
      "workflow_version": 1,
      "definition_hash": "ad3df68a0ff3c3ede35fe5266dcfbffbe7b1ba3e8ada5fc4b9012db9f451212f",
      "plan_hash": "734459ba067bf4b9367f2f2349da3e117d4669cd53fb3a9377c3f46711017c2c",
      "input_hash": "db0206f9f826514c46a69e3f550688cea639b2f3bec1a6671ebbefc94a1ed784",
      "inputs": {
        "base_ref": "origin/main",
        "source_refs": [
          "REQ-174",
          "IMP-014",
          ".prd_plugin/hooks/prd_reason_guard.py",
          "scripts/reason_guard_benchmark.py",
          "tests/test_reason_guard.py",
          "tests/test_reason_guard_benchmark.py",
          "docs/REASONING-GUARD.md"
        ]
      },
      "idempotency_key": "reason-guard-abstention-review-v1",
      "status": "completed",
      "attempt": 1,
      "created_at": "2026-07-25T05:54:55Z",
      "updated_at": "2026-07-25T05:56:36Z",
      "receipts": [
        {
          "step_id": "diff",
          "action": "git.diff_check",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "11c11db30f4b3f6c758722ba3e27eea08145b7d212f6a157451e364b48475280",
          "completed_at": "2026-07-25T05:54:56Z"
        },
        {
          "step_id": "verification",
          "action": "verification.plan",
          "input_hash": "896ba721326661835264dfc8b368f18e4c2f504219052efc7dded35d5e5da01f",
          "output_hash": "5f7254e74f242606c236e335e14ea31154085dbafb27fcb475364ef74d7aea2c",
          "completed_at": "2026-07-25T05:54:56Z"
        },
        {
          "step_id": "context",
          "action": "substrate.enrich",
          "input_hash": "874575a6d24dad9a26163a8daac31b8c9b53e341e4fc17f79d04b01921a92cee",
          "output_hash": "0f9b32a99a1140e9f02ae09f49a2f6d778ab030c0b7b2f1f443b426e2bd4bcb8",
          "completed_at": "2026-07-25T05:54:56Z"
        },
        {
          "step_id": "review",
          "action": "judgment.request",
          "input_hash": "92fc80bf0a0cfac55772c51f33c91b34aeeb88ecf203c85b94799082d20bad90",
          "output_hash": "e2dff35ceed52d7e86472ce7d69be8ec5487004e958e3fc418ea22098573477e",
          "request_hash": "8db1ed013c7c58043244533dafa77225136f38bfb1db7098a72827fd4694608d",
          "completed_at": "2026-07-25T05:56:36Z"
        }
      ],
      "steps": [
        {
          "id": "diff",
          "action": "git.diff_check",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-25T05:54:56Z",
          "output": {
            "passed": true
          },
          "output_hash": "11c11db30f4b3f6c758722ba3e27eea08145b7d212f6a157451e364b48475280",
          "completed_at": "2026-07-25T05:54:56Z"
        },
        {
          "id": "verification",
          "action": "verification.plan",
          "status": "completed",
          "resolved_input_hash": "896ba721326661835264dfc8b368f18e4c2f504219052efc7dded35d5e5da01f",
          "started_at": "2026-07-25T05:54:56Z",
          "output": {
            "schema_version": "1.0",
            "contract_version": 1,
            "executor": "ai-collab",
            "changed_files": [
              ".prd_plugin/hooks/prd_reason_guard.py",
              ".prd_plugin/ids/registry.json",
              ".prd_plugin/state/artifacts/implementation_plan/IMP-014.json",
              ".prd_plugin/state/releases.json",
              ".prd_plugin/state/requests.json",
              ".prd_plugin/state/tracking.json",
              ".prd_plugin/state/workflow-runs.json",
              "docs/REASONING-GUARD.md",
              "index.js",
              "mcp/server.cjs",
              "package.json",
              "raw/hooks/2026-07-25-reason-guard-confidence-bounded-abstention.md",
              "raw/hooks/2026-07-25-reason-guard-semantic-lite-telemetry.md",
              "scripts/prd_status.py",
              "scripts/prd_ui_export.py",
              "scripts/reason_guard_benchmark.py",
              "skills-manifest.json",
              "templates/config.json",
              "templates/project.json",
              "templates/releases.json",
              "templates/repo-skeleton/.prd_plugin/hooks/prd_reason_guard.py",
              "tests/fixtures/reason_guard_live_session_eval.json",
              "tests/fixtures/reason_guard_live_session_eval_round5.json",
              "tests/fixtures/reason_guard_live_session_eval_round6.json",
              "tests/test_prd_ui_export.py",
              "tests/test_reason_guard.py",
              "tests/test_reason_guard_benchmark.py",
              "tests/test_tracking_commands.py",
              "wiki/hooks/reasoning-guard.md",
              "wiki/index.md"
            ],
            "change_fingerprint": "affb97ff21fb8f0bcf4de8ffd584d6814fe1b4e2ef3b72b55bd9d69f2eb6d588",
            "policy": {
              "enabled": true,
              "executor": "ai-collab",
              "neighbor_limit": 12,
              "max_changed_files": 25,
              "fallback": "full",
              "full_suite_triggers": [
                "release",
                "core_change",
                "impact_unavailable",
                "impact_degraded",
                "unmapped_change"
              ],
              "core_paths": [
                "package.json",
                "package-lock.json",
                "pyproject.toml",
                "Cargo.toml",
                "go.mod",
                ".github/workflows/**"
              ],
              "test_patterns": [
                "tests/**",
                "test/**",
                "spec/**",
                "**/*.test.*",
                "**/*.spec.*",
                "test_*.py",
                "*_test.py",
                "*_test.go",
                "**/test_*.py",
                "**/*_test.py",
                "**/*_test.go"
              ],
              "max_selected_tests": 200,
              "execution_timeout_seconds": 600,
              "focused_commands": [],
              "full_commands": [],
              "allowed_executables": [
                "python",
                "python3",
                "py",
                "pytest",
                "npm",
                "npx",
                "node",
                "go",
                "cargo",
                "dotnet",
                "mvn",
                "gradle",
                "gradlew",
                "make"
              ]
            },
            "selection_rules": {
              "precedence": [
                "exact_changed",
                "explicit_test_ownership",
                "structural_dependencies",
                "predictive_impact"
              ],
              "require_all_changed_files_mapped": true,
              "widen_before_full": true,
              "predictive_signal_is_sufficient_alone": false
            },
            "fallback": {
              "strategy": "full",
              "conditions": [
                "release",
                "core_change",
                "impact_unavailable",
                "impact_degraded",
                "unmapped_change"
              ]
            },
            "strategy": "full",
            "reason": "core_change",
            "runtime_requests": {},
            "plan_hash": "d4d2c54947d4245627ed67faf6a59d3f1d2ebdc0bfc0de7491e3005e81b600e2"
          },
          "output_hash": "5f7254e74f242606c236e335e14ea31154085dbafb27fcb475364ef74d7aea2c",
          "completed_at": "2026-07-25T05:54:56Z"
        },
        {
          "id": "context",
          "action": "substrate.enrich",
          "status": "completed",
          "resolved_input_hash": "874575a6d24dad9a26163a8daac31b8c9b53e341e4fc17f79d04b01921a92cee",
          "started_at": "2026-07-25T05:54:56Z",
          "output": {
            "status": "disabled",
            "results": [],
            "local_source_refs": [
              "REQ-174",
              "IMP-014",
              ".prd_plugin/hooks/prd_reason_guard.py",
              "scripts/reason_guard_benchmark.py",
              "tests/test_reason_guard.py",
              "tests/test_reason_guard_benchmark.py",
              "docs/REASONING-GUARD.md"
            ]
          },
          "output_hash": "0f9b32a99a1140e9f02ae09f49a2f6d778ab030c0b7b2f1f443b426e2bd4bcb8",
          "completed_at": "2026-07-25T05:54:56Z"
        },
        {
          "id": "review",
          "action": "judgment.request",
          "status": "completed",
          "resolved_input_hash": "92fc80bf0a0cfac55772c51f33c91b34aeeb88ecf203c85b94799082d20bad90",
          "started_at": "2026-07-25T05:54:56Z",
          "judgment_request": {
            "contract_version": 1,
            "run_id": "WFR-432",
            "step_id": "review",
            "task": "code_review",
            "instructions": "Find material correctness, robustness, security, compatibility, or test gaps; do not restate mechanical facts.",
            "source_refs": [
              "REQ-174",
              "IMP-014",
              ".prd_plugin/hooks/prd_reason_guard.py",
              "scripts/reason_guard_benchmark.py",
              "tests/test_reason_guard.py",
              "tests/test_reason_guard_benchmark.py",
              "docs/REASONING-GUARD.md"
            ],
            "source_hashes": {
              ".prd_plugin/hooks/prd_reason_guard.py": "351ffaa55ff7669f7de44ccd50ad3eb3d8d32e16f21a89af6359e963883e5f61",
              "scripts/reason_guard_benchmark.py": "019d832badaf4d19d18bc1a9e8b11696c145ac9b523e3387308d813b1b504169",
              "tests/test_reason_guard.py": "bb0edd8b4e325deb513c85bf794f820d146e71c39cfd6c46fd00f9831848e7b3",
              "tests/test_reason_guard_benchmark.py": "6b60f0f15eeb88d47b72b0141a6568e2121389418c4455158e60536b26c119f2",
              "docs/REASONING-GUARD.md": "5650d9ddc423dd6c65b0557d13aa24e93ed4e39051d257afe991f2cb5003c466"
            },
            "result_schema": {
              "type": "object",
              "required": [
                "summary",
                "findings",
                "source_refs"
              ],
              "properties": {
                "summary": {
                  "type": "string"
                },
                "findings": {
                  "type": "array",
                  "items": {
                    "type": "object"
                  }
                },
                "source_refs": {
                  "type": "array",
                  "items": {
                    "type": "string"
                  }
                }
              }
            },
            "executor": "ai-collab",
            "profile": "fast-capable",
            "constraints": {
              "no_project_state_writes": true,
              "require_source_refs": true
            },
            "request_hash": "8db1ed013c7c58043244533dafa77225136f38bfb1db7098a72827fd4694608d"
          },
          "output": {
            "summary": "One material measurement defect found: holdout candidate precision was reported as 1.0 despite zero candidate predictions, making the value vacuous. The benchmark, tests, release notes, plan, and documentation were corrected to report null precision with zero-false-obligation gating.",
            "findings": [
              {
                "severity": "medium",
                "file": "scripts/reason_guard_benchmark.py",
                "summary": "Candidate precision defaulted to 1.0 when no candidates were predicted, overstating holdout evidence.",
                "status": "fixed"
              }
            ],
            "source_refs": [
              "scripts/reason_guard_benchmark.py",
              "tests/test_reason_guard_benchmark.py",
              "docs/REASONING-GUARD.md"
            ]
          },
          "output_hash": "e2dff35ceed52d7e86472ce7d69be8ec5487004e958e3fc418ea22098573477e",
          "completed_at": "2026-07-25T05:56:36Z",
          "judgment_result": {
            "request_hash": "8db1ed013c7c58043244533dafa77225136f38bfb1db7098a72827fd4694608d",
            "executor": "ai-collab",
            "profile": "fast-capable"
          }
        }
      ],
      "completed_at": "2026-07-25T05:56:36Z"
    },
    {
      "id": "WFR-433",
      "schema_version": "1.0",
      "workflow_id": "engineering.code-review",
      "workflow_version": 1,
      "definition_hash": "ad3df68a0ff3c3ede35fe5266dcfbffbe7b1ba3e8ada5fc4b9012db9f451212f",
      "plan_hash": "734459ba067bf4b9367f2f2349da3e117d4669cd53fb3a9377c3f46711017c2c",
      "input_hash": "db0206f9f826514c46a69e3f550688cea639b2f3bec1a6671ebbefc94a1ed784",
      "inputs": {
        "base_ref": "origin/main",
        "source_refs": [
          "REQ-174",
          "IMP-014",
          ".prd_plugin/hooks/prd_reason_guard.py",
          "scripts/reason_guard_benchmark.py",
          "tests/test_reason_guard.py",
          "tests/test_reason_guard_benchmark.py",
          "docs/REASONING-GUARD.md"
        ]
      },
      "idempotency_key": "reason-guard-abstention-review-v2",
      "status": "completed",
      "attempt": 1,
      "created_at": "2026-07-25T05:56:56Z",
      "updated_at": "2026-07-25T05:57:17Z",
      "receipts": [
        {
          "step_id": "diff",
          "action": "git.diff_check",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "11c11db30f4b3f6c758722ba3e27eea08145b7d212f6a157451e364b48475280",
          "completed_at": "2026-07-25T05:56:56Z"
        },
        {
          "step_id": "verification",
          "action": "verification.plan",
          "input_hash": "896ba721326661835264dfc8b368f18e4c2f504219052efc7dded35d5e5da01f",
          "output_hash": "5f7254e74f242606c236e335e14ea31154085dbafb27fcb475364ef74d7aea2c",
          "completed_at": "2026-07-25T05:56:56Z"
        },
        {
          "step_id": "context",
          "action": "substrate.enrich",
          "input_hash": "874575a6d24dad9a26163a8daac31b8c9b53e341e4fc17f79d04b01921a92cee",
          "output_hash": "0f9b32a99a1140e9f02ae09f49a2f6d778ab030c0b7b2f1f443b426e2bd4bcb8",
          "completed_at": "2026-07-25T05:56:57Z"
        },
        {
          "step_id": "review",
          "action": "judgment.request",
          "input_hash": "92fc80bf0a0cfac55772c51f33c91b34aeeb88ecf203c85b94799082d20bad90",
          "output_hash": "82ed2c3313ea538fcbf27026d29920cd60ae3deb9c81c56e488b792dec4e35bc",
          "request_hash": "d9cc99230a37f4a2346b6b404d817091fa6355f4b63bd1bb51ffe57beb5f0c67",
          "completed_at": "2026-07-25T05:57:17Z"
        }
      ],
      "steps": [
        {
          "id": "diff",
          "action": "git.diff_check",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-25T05:56:56Z",
          "output": {
            "passed": true
          },
          "output_hash": "11c11db30f4b3f6c758722ba3e27eea08145b7d212f6a157451e364b48475280",
          "completed_at": "2026-07-25T05:56:56Z"
        },
        {
          "id": "verification",
          "action": "verification.plan",
          "status": "completed",
          "resolved_input_hash": "896ba721326661835264dfc8b368f18e4c2f504219052efc7dded35d5e5da01f",
          "started_at": "2026-07-25T05:56:56Z",
          "output": {
            "schema_version": "1.0",
            "contract_version": 1,
            "executor": "ai-collab",
            "changed_files": [
              ".prd_plugin/hooks/prd_reason_guard.py",
              ".prd_plugin/ids/registry.json",
              ".prd_plugin/state/artifacts/implementation_plan/IMP-014.json",
              ".prd_plugin/state/releases.json",
              ".prd_plugin/state/requests.json",
              ".prd_plugin/state/tracking.json",
              ".prd_plugin/state/workflow-runs.json",
              "docs/REASONING-GUARD.md",
              "index.js",
              "mcp/server.cjs",
              "package.json",
              "raw/hooks/2026-07-25-reason-guard-confidence-bounded-abstention.md",
              "raw/hooks/2026-07-25-reason-guard-semantic-lite-telemetry.md",
              "scripts/prd_status.py",
              "scripts/prd_ui_export.py",
              "scripts/reason_guard_benchmark.py",
              "skills-manifest.json",
              "templates/config.json",
              "templates/project.json",
              "templates/releases.json",
              "templates/repo-skeleton/.prd_plugin/hooks/prd_reason_guard.py",
              "tests/fixtures/reason_guard_live_session_eval.json",
              "tests/fixtures/reason_guard_live_session_eval_round5.json",
              "tests/fixtures/reason_guard_live_session_eval_round6.json",
              "tests/test_prd_ui_export.py",
              "tests/test_reason_guard.py",
              "tests/test_reason_guard_benchmark.py",
              "tests/test_tracking_commands.py",
              "wiki/hooks/reasoning-guard.md",
              "wiki/index.md"
            ],
            "change_fingerprint": "affb97ff21fb8f0bcf4de8ffd584d6814fe1b4e2ef3b72b55bd9d69f2eb6d588",
            "policy": {
              "enabled": true,
              "executor": "ai-collab",
              "neighbor_limit": 12,
              "max_changed_files": 25,
              "fallback": "full",
              "full_suite_triggers": [
                "release",
                "core_change",
                "impact_unavailable",
                "impact_degraded",
                "unmapped_change"
              ],
              "core_paths": [
                "package.json",
                "package-lock.json",
                "pyproject.toml",
                "Cargo.toml",
                "go.mod",
                ".github/workflows/**"
              ],
              "test_patterns": [
                "tests/**",
                "test/**",
                "spec/**",
                "**/*.test.*",
                "**/*.spec.*",
                "test_*.py",
                "*_test.py",
                "*_test.go",
                "**/test_*.py",
                "**/*_test.py",
                "**/*_test.go"
              ],
              "max_selected_tests": 200,
              "execution_timeout_seconds": 600,
              "focused_commands": [],
              "full_commands": [],
              "allowed_executables": [
                "python",
                "python3",
                "py",
                "pytest",
                "npm",
                "npx",
                "node",
                "go",
                "cargo",
                "dotnet",
                "mvn",
                "gradle",
                "gradlew",
                "make"
              ]
            },
            "selection_rules": {
              "precedence": [
                "exact_changed",
                "explicit_test_ownership",
                "structural_dependencies",
                "predictive_impact"
              ],
              "require_all_changed_files_mapped": true,
              "widen_before_full": true,
              "predictive_signal_is_sufficient_alone": false
            },
            "fallback": {
              "strategy": "full",
              "conditions": [
                "release",
                "core_change",
                "impact_unavailable",
                "impact_degraded",
                "unmapped_change"
              ]
            },
            "strategy": "full",
            "reason": "core_change",
            "runtime_requests": {},
            "plan_hash": "d4d2c54947d4245627ed67faf6a59d3f1d2ebdc0bfc0de7491e3005e81b600e2"
          },
          "output_hash": "5f7254e74f242606c236e335e14ea31154085dbafb27fcb475364ef74d7aea2c",
          "completed_at": "2026-07-25T05:56:56Z"
        },
        {
          "id": "context",
          "action": "substrate.enrich",
          "status": "completed",
          "resolved_input_hash": "874575a6d24dad9a26163a8daac31b8c9b53e341e4fc17f79d04b01921a92cee",
          "started_at": "2026-07-25T05:56:57Z",
          "output": {
            "status": "disabled",
            "results": [],
            "local_source_refs": [
              "REQ-174",
              "IMP-014",
              ".prd_plugin/hooks/prd_reason_guard.py",
              "scripts/reason_guard_benchmark.py",
              "tests/test_reason_guard.py",
              "tests/test_reason_guard_benchmark.py",
              "docs/REASONING-GUARD.md"
            ]
          },
          "output_hash": "0f9b32a99a1140e9f02ae09f49a2f6d778ab030c0b7b2f1f443b426e2bd4bcb8",
          "completed_at": "2026-07-25T05:56:57Z"
        },
        {
          "id": "review",
          "action": "judgment.request",
          "status": "completed",
          "resolved_input_hash": "92fc80bf0a0cfac55772c51f33c91b34aeeb88ecf203c85b94799082d20bad90",
          "started_at": "2026-07-25T05:56:57Z",
          "judgment_request": {
            "contract_version": 1,
            "run_id": "WFR-433",
            "step_id": "review",
            "task": "code_review",
            "instructions": "Find material correctness, robustness, security, compatibility, or test gaps; do not restate mechanical facts.",
            "source_refs": [
              "REQ-174",
              "IMP-014",
              ".prd_plugin/hooks/prd_reason_guard.py",
              "scripts/reason_guard_benchmark.py",
              "tests/test_reason_guard.py",
              "tests/test_reason_guard_benchmark.py",
              "docs/REASONING-GUARD.md"
            ],
            "source_hashes": {
              ".prd_plugin/hooks/prd_reason_guard.py": "351ffaa55ff7669f7de44ccd50ad3eb3d8d32e16f21a89af6359e963883e5f61",
              "scripts/reason_guard_benchmark.py": "730d4b3c469fb2432798695754e59d3ef7710443eb512b79f64cb80206a7f7db",
              "tests/test_reason_guard.py": "bb0edd8b4e325deb513c85bf794f820d146e71c39cfd6c46fd00f9831848e7b3",
              "tests/test_reason_guard_benchmark.py": "57b3ee2b56e294111088c8558fa4b255bd942997ac411af48c78b09fefef993f",
              "docs/REASONING-GUARD.md": "445c54e39301f93d20eba425b2e2c640e71c2f5709d13b97778cdc13e14662dc"
            },
            "result_schema": {
              "type": "object",
              "required": [
                "summary",
                "findings",
                "source_refs"
              ],
              "properties": {
                "summary": {
                  "type": "string"
                },
                "findings": {
                  "type": "array",
                  "items": {
                    "type": "object"
                  }
                },
                "source_refs": {
                  "type": "array",
                  "items": {
                    "type": "string"
                  }
                }
              }
            },
            "executor": "ai-collab",
            "profile": "fast-capable",
            "constraints": {
              "no_project_state_writes": true,
              "require_source_refs": true
            },
            "request_hash": "d9cc99230a37f4a2346b6b404d817091fa6355f4b63bd1bb51ffe57beb5f0c67"
          },
          "output": {
            "summary": "No remaining material correctness, robustness, security, compatibility, privacy, or test gap found after the vacuous-precision correction. The implementation keeps blocking authority explicit, stores uncertainty only as a counter, migrates existing schema-2 reports without data loss, preserves source/template parity, and measures abstention transparently.",
            "findings": [],
            "source_refs": [
              ".prd_plugin/hooks/prd_reason_guard.py",
              "scripts/reason_guard_benchmark.py",
              "tests/test_reason_guard.py",
              "tests/test_reason_guard_benchmark.py",
              "docs/REASONING-GUARD.md"
            ]
          },
          "output_hash": "82ed2c3313ea538fcbf27026d29920cd60ae3deb9c81c56e488b792dec4e35bc",
          "completed_at": "2026-07-25T05:57:17Z",
          "judgment_result": {
            "request_hash": "d9cc99230a37f4a2346b6b404d817091fa6355f4b63bd1bb51ffe57beb5f0c67",
            "executor": "ai-collab",
            "profile": "fast-capable"
          }
        }
      ],
      "completed_at": "2026-07-25T05:57:17Z"
    },
    {
      "id": "WFR-434",
      "schema_version": "1.0",
      "workflow_id": "hub.release",
      "workflow_version": 1,
      "definition_hash": "ab6ae2afcb0128db8d994b6b397e543c7490017bd3d1b15309079edc6be94d9a",
      "plan_hash": "02bcb9cb71ca5641cc12e6270fee67758c0051b183e4204137993cd57b89a7bd",
      "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
      "inputs": {},
      "idempotency_key": "reason-guard-abstention-release-preclose-v1",
      "status": "completed",
      "attempt": 3,
      "created_at": "2026-07-25T05:57:41Z",
      "updated_at": "2026-07-25T06:02:42Z",
      "receipts": [
        {
          "step_id": "diff",
          "action": "git.diff_check",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "11c11db30f4b3f6c758722ba3e27eea08145b7d212f6a157451e364b48475280",
          "completed_at": "2026-07-25T05:57:41Z"
        },
        {
          "step_id": "config",
          "action": "config.audit",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "ef2327bf3ea9c100a1a525c09e426de9703016f1b7c177b0df10c0b7cf3f33c9",
          "completed_at": "2026-07-25T05:57:42Z"
        },
        {
          "step_id": "state",
          "action": "state.consistency",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "7bd004636e5a786f64604d8cc821f23845cc7f69b783a6392c588759f368f587",
          "completed_at": "2026-07-25T05:58:13Z"
        },
        {
          "step_id": "workflow_audit",
          "action": "process.fixed",
          "input_hash": "edf19b269a54d72753f1abc2b8ffcb810c2b7bc377cee7e1698c939f17e0be94",
          "output_hash": "16622c601306c84b9e057bc1426863917aab1686e495638e83c8c254a977abdf",
          "completed_at": "2026-07-25T05:58:14Z"
        },
        {
          "step_id": "substrate_audit",
          "action": "process.fixed",
          "input_hash": "4998f71d2d3f6ac7dd50e10d37f60ae32d54898949950e484da9de113e18a979",
          "output_hash": "4176fd7e9d2d33bd61e5fd6bb8d392a63eaa5b2cb65b750eeb348b9dd55fe220",
          "completed_at": "2026-07-25T05:58:14Z"
        },
        {
          "step_id": "suite",
          "action": "process.fixed",
          "input_hash": "954e575e48145853f5681eda189186c95a053267158fae669114320f2e53794a",
          "output_hash": "5d6527ff57047dd0aa2791f9d9d0c48f63d8978f1a5b19ecef5a71ea80da22a7",
          "completed_at": "2026-07-25T06:02:39Z"
        },
        {
          "step_id": "release",
          "action": "process.fixed",
          "input_hash": "1e5b0c18d93eb4c2248f9a00adbd438e52f3ef02137477fb8376c69cfe86fc9b",
          "output_hash": "ef72f5c0d06de5ea81a51bd6514c32443696d55734ed0663eb8f8b951846da67",
          "completed_at": "2026-07-25T06:02:39Z"
        },
        {
          "step_id": "gaps",
          "action": "process.fixed",
          "input_hash": "577241909238eeb55683f89d2d2216648dad2e3127397993e22493829a1307a4",
          "output_hash": "4225e1d0b8280ff90feed752313e32d4c22b3ed8bbc9d9c6ce7a0b00ab9098ed",
          "completed_at": "2026-07-25T06:02:40Z"
        },
        {
          "step_id": "package",
          "action": "process.fixed",
          "input_hash": "06cd12e1f3db3d985f9150520afa60f288297ff0ca01a8e813e9bb6291aa8836",
          "output_hash": "4bf031dfb853cccdfaf3ca8563d5cb638d5b1ddda6835c1a31e0f2d624faee24",
          "completed_at": "2026-07-25T06:02:41Z"
        },
        {
          "step_id": "gate",
          "action": "state.gate",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "af95f5508bef069fc3c46ffe3a052eeba9fa5c6bfadc00da8d536a21484deebe",
          "completed_at": "2026-07-25T06:02:42Z"
        }
      ],
      "steps": [
        {
          "id": "diff",
          "action": "git.diff_check",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-25T05:57:41Z",
          "output": {
            "passed": true
          },
          "output_hash": "11c11db30f4b3f6c758722ba3e27eea08145b7d212f6a157451e364b48475280",
          "completed_at": "2026-07-25T05:57:41Z"
        },
        {
          "id": "config",
          "action": "config.audit",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-25T05:57:42Z",
          "output": {
            "status": "ok",
            "summary": {
              "settings": 214,
              "mutable": 204,
              "read_only_or_managed": 10,
              "unclassified": 0,
              "unknown": 0,
              "invalid": 0,
              "missing_using_defaults": 0
            },
            "unclassified_keys": [],
            "unknown_keys": [],
            "invalid_values": [],
            "missing_using_defaults": []
          },
          "output_hash": "ef2327bf3ea9c100a1a525c09e426de9703016f1b7c177b0df10c0b7cf3f33c9",
          "completed_at": "2026-07-25T05:57:42Z"
        },
        {
          "id": "state",
          "action": "state.consistency",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-25T05:58:13Z",
          "output": {
            "status": "ok",
            "repo_root": "D:\\Projects\\prd-plugin-worktrees\\codex-reasoning-summary-session-fallback",
            "summary": {
              "errors": 0,
              "warnings": 0,
              "infos": 1
            },
            "findings": [
              {
                "id": "CONS-INFO-001",
                "severity": "info",
                "path": "docs/evidence/EV-200.md",
                "summary": "File references 2 canonical IDs across 2 prefix(es); treated as a positive signal of extra work.",
                "referenced_prefixes": [
                  "CHG",
                  "TRK"
                ],
                "referenced_id_count": 2,
                "required_action": "No action required; this is an informational signal."
              }
            ]
          },
          "output_hash": "7bd004636e5a786f64604d8cc821f23845cc7f69b783a6392c588759f368f587",
          "completed_at": "2026-07-25T05:58:13Z"
        },
        {
          "id": "workflow_audit",
          "action": "process.fixed",
          "status": "completed",
          "resolved_input_hash": "edf19b269a54d72753f1abc2b8ffcb810c2b7bc377cee7e1698c939f17e0be94",
          "started_at": "2026-07-25T05:58:13Z",
          "output": {
            "operation": "workflow_chml_audit",
            "command": [
              "python",
              "scripts/workflow_chml_audit.py",
              "--repo-root",
              ".",
              "--format",
              "json"
            ],
            "exit_code": 0,
            "stdout": "{\n  \"status\": \"ok\",\n  \"repo_root\": \"D:\\\\Projects\\\\prd-plugin-worktrees\\\\codex-reasoning-summary-session-fallback\",\n  \"summary\": {\n    \"critical\": 0,\n    \"high\": 0,\n    \"medium\": 0,\n    \"low\": 0\n  },\n  \"findings\": []\n}\n",
            "stderr": ""
          },
          "output_hash": "16622c601306c84b9e057bc1426863917aab1686e495638e83c8c254a977abdf",
          "completed_at": "2026-07-25T05:58:14Z"
        },
        {
          "id": "substrate_audit",
          "action": "process.fixed",
          "status": "completed",
          "resolved_input_hash": "4998f71d2d3f6ac7dd50e10d37f60ae32d54898949950e484da9de113e18a979",
          "started_at": "2026-07-25T05:58:14Z",
          "output": {
            "operation": "substrate_capability_audit",
            "command": [
              "python",
              "scripts/prd_substrate_catalog.py",
              "--repo-root",
              ".",
              "audit"
            ],
            "exit_code": 0,
            "stdout": "{\n  \"status\": \"ok\",\n  \"schema_version\": \"1.0\",\n  \"capability_count\": 26,\n  \"runtime_tool_count\": 103,\n  \"intent_count\": 31,\n  \"summary\": {\n    \"critical\": 0,\n    \"high\": 0,\n    \"medium\": 0,\n    \"low\": 0\n  },\n  \"findings\": []\n}\n",
            "stderr": ""
          },
          "output_hash": "4176fd7e9d2d33bd61e5fd6bb8d392a63eaa5b2cb65b750eeb348b9dd55fe220",
          "completed_at": "2026-07-25T05:58:14Z"
        },
        {
          "id": "suite",
          "action": "process.fixed",
          "status": "completed",
          "resolved_input_hash": "954e575e48145853f5681eda189186c95a053267158fae669114320f2e53794a",
          "started_at": "2026-07-25T06:01:00Z",
          "output": {
            "operation": "local_workflow_check",
            "command": [
              "python",
              "scripts/local_workflow_check.py"
            ],
            "exit_code": 0,
            "stdout": "Structured file validation passed.\n$ python -m unittest discover -s tests -v\n{\n  \"status\": \"fail\",\n  \"repo_root\": \"C:\\\\Users\\\\marku\\\\AppData\\\\Local\\\\Temp\\\\tmp4aqqixrz\",\n  \"summary\": {\n    \"errors\": 1,\n    \"warnings\": 0\n  },\n  \"findings\": [\n    {\n      \"check\": \"duplicate_id\",\n      \"severity\": \"error\",\n      \"summary\": \"Duplicate id REQ-002 in .prd_plugin/state/requests.json.\",\n      \"required_action\": \"Renumber one record so REQ-002 is unique. Allocate IDs with the MCP tool prd_next_id (or the record tools like prd_open_goal) instead of hand-computing them.\"\n    }\n  ]\n}\nautonomy_level set to guided\nautonomy_level set to autonomous\nDESTRUCTIVE RESET REQUESTED: --force --yes will erase protected PRD Plugin project data.\nThe following existing state/configuration files would be replaced with skeleton defaults:\n  - .prd_plugin/state/tracking.json\nThis may erase IDs, tracking, requests, decisions, health findings, configuration, and session memory.\nFor a normal safe update, remove --yes and run: npx prd-install . --force\nPRD Plugin safe update: preserving existing state/config and refreshing plugin files only. Never add --yes to a routine update; it requests a destructive reset.\nPRD Plugin safe update: preserving existing state/config and refreshing plugin files only. Never add --yes to a routine update; it requests a destructive reset.\nPRD Plugin safe update: preserving existing state/config and refreshing plugin files only. Never add --yes to a routine update; it requests a destructive reset.\nPRD Plugin safe update: preserving existing state/config and refreshing plugin files only. Never add --yes to a routine update; it requests a destructive reset.\nPRD Plugin safe update: preserving existing state/config and refreshing plugin files only. Never add --yes to a routine update; it requests a destructive reset.\nPRD Plugin safe update: preserving existing state/config and refreshing plugin files only. Never add --yes to a routine update; it requests a destructive reset.\nPRD Plugin safe update: preserving existing state/config and refreshing plugin files only. Never add --yes to a routine update; it requests a destructive reset.\nPRD Plugin safe update: preserving existing state/config and refreshing plugin files only. Never add --yes to a routine update; it requests a destructive reset.\nPRD Plugin safe update: preserving existing state/config and refreshing plugin files only. Never add --yes to a routine update; it requests a destructive reset.\nPRD Plugin safe update: preserving existing state/config and refreshing plugin files only. Never add --yes to a routine update; it requests a destructive reset.\nPRD Plugin safe update: preserving existing state/config and refreshing plugin files only. Never add --yes to a routine update; it requests a destructive reset.\nPRD Plugin safe update: preserving existing state/config and refreshing plugin files only. Never add --yes to a routine update; it requests a destructive reset.\nPRD Plugin safe update: preserving existing state/config and refreshing plugin files only. Never add --yes to a routine update; it requests a destructive reset.\nPRD Plugin safe update: preserving existing state/config and refreshing plugin files only. Never add --yes to a routine update; it requests a destructive reset.\nPRD Plugin safe update: preserving existing state/config and refreshing plugin files only. Never add --yes to a routine update; it requests a destructive reset.\nPRD Plugin safe update: preserving existing state/config and refreshing plugin files only. Never add --yes to a routine update; it requests a destructive reset.\nPRD Plugin safe update: preserving existing state/config and refreshing plugin files only. Never add --yes to a routine update; it requests a destructive reset.\n{\n  \"published\": false,\n  \"package\": \"prd-plugin\",\n  \"version\": \"9.9.9\",\n  \"version_seen\": null,\n  \"latest_seen\": null,\n  \"attempts_used\": 1\n}\n{\n  \"published\": true,\n  \"package\": \"prd-plugin\",\n  \"version\": \"1.2.3\",\n  \"version_seen\": \"1.2.3\",\n  \"latest_seen\": \"1.2.3\",\n  \"attempts_used\": 1\n}\n{\"decision\": \"block\", \"reason\": \"Autonomous run-until-done: goal TRK-161 is still active. Continue with the next incomplete step toward it \\u2014 do not stop to ask 'shall I proceed?'. If you genuinely need the user (consent floor: push/merge/publish/secrets, or a real blocker), create the file .prd_plugin/local/autonomy-pause with a one-line reason and then stop; the guard will let you. Otherwise keep going.\"}\n$ python scripts/feature_skill_audit.py --repo-root . --format json\n{\n  \"status\": \"ok\",\n  \"repo_root\": \"D:\\\\Projects\\\\prd-plugin-worktrees\\\\codex-reasoning-summary-session-fallback\",\n  \"contract\": \"templates/feature-skill-map.json\",\n  \"feature_count\": 29,\n  \"summary\": {\n    \"critical\": 0,\n    \"high\": 0,\n    \"medium\": 0,\n    \"low\": 0\n  },\n  \"findings\": []\n}\n$ python scripts/gap_audit.py --target-version 0.16.58\n# PRD Plugin Gap Audit\n\nTarget version: `0.16.58`\n\n## Findings\n\n- None\n$ python scripts/version_advice.py --installed-repo . --format json --output request-report/version-advice.json\n$ python scripts/release_check.py --output request-report/release-hygiene.md\n$ python scripts/prd_doctor.py --repo-root . --format json --output request-report/prd-doctor.json\n$ python scripts/state_consistency_check.py --repo-root . --format json --output request-report/state-consistency.json\n$ python scripts/prd_install_skills.py --repo-root . --dry-run\n{\n  \"status\": \"dry_run\",\n  \"target_agent\": \"codex\",\n  \"targets\": [\n    {\n      \"agent\": \"codex\",\n      \"target\": \".agents\\\\skills\",\n      \"would_install\": [\n        \"project-architecture\",\n        \"project-blocker-resolution\",\n        \"project-brainstorm\",\n        \"project-change-request\",\n        \"project-code-review\",\n        \"project-decision-ledger\",\n        \"project-decision-policy\",\n        \"project-deterministic-workflows\",\n        \"project-document-branch\",\n        \"project-evidence\",\n        \"project-evidence-ledger\",\n        \"project-git-workflow\",\n        \"project-health\",\n        \"project-implementation-plan\",\n        \"project-llm-wiki\",\n        \"project-local-integration\",\n        \"project-memory\",\n        \"project-planning-lifecycle\",\n        \"project-prd\",\n        \"project-prd-plugin-setup\",\n        \"project-request-intake\",\n        \"project-session-close\",\n        \"project-systematic-debugging\",\n        \"project-test-driven-implementation\",\n        \"project-traceability-review\",\n        \"project-traceability-sync\",\n        \"project-verification-before-completion\",\n        \"source-command-prd-autonomy\",\n        \"source-command-prd-close\",\n        \"source-command-prd-config\",\n        \"source-command-prd-drift\",\n        \"source-command-prd-graph\",\n        \"source-command-prd-hooks\",\n        \"source-command-prd-new\",\n        \"source-command-prd-off\",\n        \"source-command-prd-on\",\n        \"source-command-prd-reflections\",\n        \"source-command-prd-report\",\n        \"source-command-prd-status\",\n        \"source-command-prd-track\",\n        \"source-command-prd-version\",\n        \"source-command-prd-workflow\"\n      ],\n      \"would_remove\": [\n        \"project-fold-it-in\",\n        \"project-self-audit\"\n      ]\n    }\n  ],\n  \"installed_count\": 0,\n  \"target\": \".agents\\\\skills\",\n  \"installed\": [],\n  \"removed\": [],\n  \"would_install\": [\n    \"project-architecture\",\n    \"project-blocker-resolution\",\n    \"project-brainstorm\",\n    \"project-change-request\",\n    \"project-code-review\",\n    \"project-decision-ledger\",\n    \"project-decision-policy\",\n    \"project-deterministic-workflows\",\n    \"project-document-branch\",\n    \"project-evidence\",\n    \"project-evidence-ledger\",\n    \"project-git-workflow\",\n    \"project-health\",\n    \"project-implementation-plan\",\n    \"project-llm-wiki\",\n    \"project-local-integration\",\n    \"project-memory\",\n    \"project-planning-lifecycle\",\n    \"project-prd\",\n    \"project-prd-plugin-setup\",\n    \"project-request-intake\",\n    \"project-session-close\",\n    \"project-systematic-debugging\",\n    \"project-test-driven-implementation\",\n    \"project-traceability-review\",\n    \"project-traceability-sync\",\n    \"project-verification-before-completion\",\n    \"source-command-prd-autonomy\",\n    \"source-command-prd-close\",\n    \"source-command-prd-config\",\n    \"source-command-prd-drift\",\n    \"source-command-prd-graph\",\n    \"source-command-prd-hooks\",\n    \"source-command-prd-new\",\n    \"source-command-prd-off\",\n    \"source-command-prd-on\",\n    \"source-command-prd-reflections\",\n    \"source-command-prd-report\",\n    \"source-command-prd-status\",\n    \"source-command-prd-track\",\n    \"source-command-prd-version\",\n    \"source-command-prd-workflow\"\n  ],\n  \"would_remove\": [\n    \"project-fold-it-in\",\n    \"project-self-audit\"\n  ]\n}\n$ python scripts/request_report.py --config .prd_plugin/config.json --format markdown --output request-report/request-report.md\n$ python scripts/request_report.py --config .prd_plugin/config.json --format json --output request-report/request-report.json\n$ python scripts/message_check.py --config .prd_plugin/config.json --format json --output request-report/message-check.json\nLocal workflow check completed.\n",
            "stderr": "alid_values) ... ok\ntest_enable_disable_only_accept_mutable_booleans (test_unified_config.MutationTests.test_enable_disable_only_accept_mutable_booleans) ... ok\ntest_failed_atomic_replace_leaves_original_config_untouched (test_unified_config.MutationTests.test_failed_atomic_replace_leaves_original_config_untouched) ... ok\ntest_malformed_config_is_never_replaced_by_a_mutation (test_unified_config.MutationTests.test_malformed_config_is_never_replaced_by_a_mutation) ... ok\ntest_manual_set_marks_profile_custom_and_preserves_style (test_unified_config.MutationTests.test_manual_set_marks_profile_custom_and_preserves_style) ... ok\ntest_scalar_parent_is_not_clobbered_by_nested_set (test_unified_config.MutationTests.test_scalar_parent_is_not_clobbered_by_nested_set) ... ok\ntest_builtin_profile_dry_run_then_atomic_apply (test_unified_config.ProfileTests.test_builtin_profile_dry_run_then_atomic_apply) ... ok\ntest_invalid_custom_profile_never_partially_writes (test_unified_config.ProfileTests.test_invalid_custom_profile_never_partially_writes) ... ok\ntest_save_show_diff_and_delete_custom_profile (test_unified_config.ProfileTests.test_save_show_diff_and_delete_custom_profile) ... ok\ntest_does_not_flag_canonical_prd_state_paths (test_unsubmitted_plugin_request.UnsubmittedPluginRequestTests.test_does_not_flag_canonical_prd_state_paths) ... ok\ntest_does_not_flag_ordinary_project_requests (test_unsubmitted_plugin_request.UnsubmittedPluginRequestTests.test_does_not_flag_ordinary_project_requests) ... ok\ntest_does_not_flag_rejected_requests (test_unsubmitted_plugin_request.UnsubmittedPluginRequestTests.test_does_not_flag_rejected_requests) ... ok\ntest_does_not_flag_when_already_marked_upstream (test_unsubmitted_plugin_request.UnsubmittedPluginRequestTests.test_does_not_flag_when_already_marked_upstream) ... ok\ntest_flags_a_local_request_about_a_plugin_script (test_unsubmitted_plugin_request.UnsubmittedPluginRequestTests.test_flags_a_local_request_about_a_plugin_script) ... ok\ntest_flags_a_request_that_names_itself_upstream (test_unsubmitted_plugin_request.UnsubmittedPluginRequestTests.test_flags_a_request_that_names_itself_upstream) ... ok\ntest_never_fires_in_the_hub_repo_itself (test_unsubmitted_plugin_request.UnsubmittedPluginRequestTests.test_never_fires_in_the_hub_repo_itself) ... ok\ntest_wired_into_run_checks (test_unsubmitted_plugin_request.UnsubmittedPluginRequestTests.test_wired_into_run_checks) ... ok\ntest_output_writes_lf_and_a_trailing_newline (test_utcp_first_authority.GeneratedArtifactsAreByteStableTests.test_output_writes_lf_and_a_trailing_newline) ... ok\ntest_the_committed_manual_matches_a_fresh_generation (test_utcp_first_authority.GeneratedArtifactsAreByteStableTests.test_the_committed_manual_matches_a_fresh_generation) ... ok\ntest_every_spec_tool_maps_to_a_catalog_capability (test_utcp_first_authority.ParityDirectionTests.test_every_spec_tool_maps_to_a_catalog_capability) ... ok\ntest_server_metadata_matches_the_spec (test_utcp_first_authority.ParityDirectionTests.test_server_metadata_matches_the_spec) ... ok\ntest_python_entry_points_share_the_same_lock (test_utcp_first_authority.SafetyUnchangedTests.test_python_entry_points_share_the_same_lock)\nThe migration target already exists and is proven: prd_reflections ... ok\ntest_the_state_lock_is_still_held_for_mutations (test_utcp_first_authority.SafetyUnchangedTests.test_the_state_lock_is_still_held_for_mutations) ... ok\ntest_no_shipped_tool_metadata_carries_mojibake (test_utcp_first_authority.ShippedTextIsCleanTests.test_no_shipped_tool_metadata_carries_mojibake) ... ok\ntest_shipped_tool_metadata_is_valid_utf8 (test_utcp_first_authority.ShippedTextIsCleanTests.test_shipped_tool_metadata_is_valid_utf8)\nA file written through a cp1252 layer either fails to decode or ... ok\ntest_each_tool_declares_name_description_and_schema (test_utcp_first_authority.SpecIsTheSourceTests.test_each_tool_declares_name_description_and_schema) ... ok\ntest_the_manual_is_generated_from_the_spec_not_the_server (test_utcp_first_authority.SpecIsTheSourceTests.test_the_manual_is_generated_from_the_spec_not_the_server) ... ok\ntest_the_server_no_longer_authors_descriptions (test_utcp_first_authority.SpecIsTheSourceTests.test_the_server_no_longer_authors_descriptions)\nserver.cjs must READ definitions, not declare them. While a tool ... ok\ntest_the_spec_exists_and_declares_every_tool (test_utcp_first_authority.SpecIsTheSourceTests.test_the_spec_exists_and_declares_every_tool) ... ok\ntest_official_bridge_round_trips_cli_and_mcp_templates (test_utcp_first_catalog.BridgeParityTests.test_official_bridge_round_trips_cli_and_mcp_templates) ... skipped 'official @utcp/mcp-bridge not installed (npm install)'\ntest_bridged_entries_reuse_server_metadata_verbatim (test_utcp_first_catalog.GeneratedProjectionTests.test_bridged_entries_reuse_server_metadata_verbatim)\nEach bridged manual entry's description and inputs equal the server's ... ok\ntest_checked_in_metadata_matches_live_server (test_utcp_first_catalog.GeneratedProjectionTests.test_checked_in_metadata_matches_live_server)\nThe pinned metadata projection cannot drift behind the live server. ... ok\ntest_mutations_keep_the_validated_handler_path (test_utcp_first_catalog.GuardedMutationTests.test_mutations_keep_the_validated_handler_path)\nEvery manual tool in a non-read capability calls the plugin state ... ok\ntest_read_only_cli_tools_stay_cli (test_utcp_first_catalog.GuardedMutationTests.test_read_only_cli_tools_stay_cli)\nThe 12 cli-native observe/recall tools keep their cli templates. ... ok\ntest_checked_in_metadata_projection_exists (test_utcp_first_catalog.ManualCompletenessTests.test_checked_in_metadata_projection_exists)\nThe server's tool metadata is a checked-in generated artifact so the ... ok\ntest_manual_covers_every_capability_on_both_transports (test_utcp_first_catalog.ManualCompletenessTests.test_manual_covers_every_capability_on_both_transports)\nEvery UTCP and MCP registration in the tool-surface catalog appears ... ok\ntest_appends_version_change_request (test_version_advice.VersionAdviceTests.test_appends_version_change_request) ... ok\ntest_builds_safe_update_advice_for_low_risk_releases (test_version_advice.VersionAdviceTests.test_builds_safe_update_advice_for_low_risk_releases) ... ok\ntest_cli_uses_hub_releases_when_downstream_repo_has_no_releases_file (test_version_advice.VersionAdviceTests.test_cli_uses_hub_releases_when_downstream_repo_has_no_releases_file) ... ok\ntest_detects_installed_version_from_bom_json (test_version_advice.VersionAdviceTests.test_detects_installed_version_from_bom_json) ... ok\ntest_detects_installed_version_from_opencode_plugin_manifest (test_version_advice.VersionAdviceTests.test_detects_installed_version_from_opencode_plugin_manifest) ... ok\ntest_detects_installed_version_from_prd_plugin_config (test_version_advice.VersionAdviceTests.test_detects_installed_version_from_prd_plugin_config) ... ok\ntest_detects_latest_version_from_plugin_manifest (test_version_advice.VersionAdviceTests.test_detects_latest_version_from_plugin_manifest) ... ok\ntest_installed_version_priority_prefers_config_then_codex_then_opencode (test_version_advice.VersionAdviceTests.test_installed_version_priority_prefers_config_then_codex_then_opencode) ... ok\ntest_orders_prerelease_before_final_release (test_version_advice.VersionAdviceTests.test_orders_prerelease_before_final_release) ... ok\ntest_recommends_review_first_for_medium_or_high_risk_release (test_version_advice.VersionAdviceTests.test_recommends_review_first_for_medium_or_high_risk_release) ... ok\ntest_disabled_returns_disabled_and_no_fetch (test_version_check.CheckTests.test_disabled_returns_disabled_and_no_fetch) ... ok\ntest_force_refetches_within_ttl (test_version_check.CheckTests.test_force_refetches_within_ttl) ... ok\ntest_network_failure_is_fail_open (test_version_check.CheckTests.test_network_failure_is_fail_open) ... ok\ntest_no_update_when_current (test_version_check.CheckTests.test_no_update_when_current) ... ok\ntest_status_is_cache_only_no_fetch (test_version_check.CheckTests.test_status_is_cache_only_no_fetch) ... ok\ntest_ttl_cache_avoids_refetch (test_version_check.CheckTests.test_ttl_cache_avoids_refetch) ... ok\ntest_ttl_expiry_refetches (test_version_check.CheckTests.test_ttl_expiry_refetches) ... ok\ntest_update_available_when_npm_is_ahead (test_version_check.CheckTests.test_update_available_when_npm_is_ahead) ... ok\ntest_status_cli_exits_zero (test_version_check.CliTests.test_status_cli_exits_zero) ... ok\ntest_default_ttl_is_responsive_not_a_day (test_version_check.FreshnessTests.test_default_ttl_is_responsive_not_a_day) ... ok\ntest_fetch_latest_accepts_a_timeout (test_version_check.FreshnessTests.test_fetch_latest_accepts_a_timeout) ... ok\ntest_nudge_refreshes_in_session_not_cache_only (test_version_check.FreshnessTests.test_nudge_refreshes_in_session_not_cache_only) ... ok\ntest_registry_default_ttl_matches (test_version_check.FreshnessTests.test_registry_default_ttl_matches) ... ok\ntest_semver_ordering (test_version_check.ParseTests.test_semver_ordering) ... ok\ntest_set_enabled_writes_config (test_version_check.ToggleTests.test_set_enabled_writes_config) ... ok\ntest_config_has_version_check_default_on (test_version_check.WiringTests.test_config_has_version_check_default_on) ... ok\ntest_nudge_surfaces_update_available (test_version_check.WiringTests.test_nudge_surfaces_update_available) ... ok\ntest_prd_version_command_exists (test_version_check.WiringTests.test_prd_version_command_exists) ... ok\ntest_script_registered_downstream (test_version_check.WiringTests.test_script_registered_downstream) ... ok\ntest_plan_cli_emits_json (test_wiki_backfill.CliTests.test_plan_cli_emits_json) ... ok\ntest_status_cli (test_wiki_backfill.CliTests.test_status_cli) ... ok\ntest_marker_written_for_established_repo_gaining_wiki (test_wiki_backfill.InstallerMarkerTests.test_marker_written_for_established_repo_gaining_wiki) ... ok\ntest_no_marker_for_empty_scaffold (test_wiki_backfill.InstallerMarkerTests.test_no_marker_for_empty_scaffold) ... ok\ntest_no_marker_when_wiki_already_exists (test_wiki_backfill.InstallerMarkerTests.test_no_marker_when_wiki_already_exists) ... ok\ntest_no_marker_when_wiki_disabled (test_wiki_backfill.InstallerMarkerTests.test_no_marker_when_wiki_disabled) ... ok\ntest_pending_false_when_absent (test_wiki_backfill.StatusTests.test_pending_false_when_absent) ... ok\ntest_pending_false_when_wiki_already_exists (test_wiki_backfill.StatusTests.test_pending_false_when_wiki_already_exists) ... ok\ntest_pending_true_when_marker_present (test_wiki_backfill.StatusTests.test_pending_true_when_marker_present) ... ok\ntest_plan_excludes_generated_report_artifacts (test_wiki_backfill.SurveyPlanTests.test_plan_excludes_generated_report_artifacts)\nrequest-report/ (incl. its calibration report trees) and docs/evidence/ ... ok\ntest_plan_excludes_plugin_and_vendor_noise (test_wiki_backfill.SurveyPlanTests.test_plan_excludes_plugin_and_vendor_noise) ... ok\ntest_plan_inventories_code_docs_and_state (test_wiki_backfill.SurveyPlanTests.test_plan_inventories_code_docs_and_state) ... ok\ntest_plan_is_read_only (test_wiki_backfill.SurveyPlanTests.test_plan_is_read_only) ... ok\ntest_wiki_drift_in_on_stop_and_default_sets (test_wiki_backfill.WikiDriftMonitorWiringTests.test_wiki_drift_in_on_stop_and_default_sets) ... ok\ntest_current_article_no_drift (test_wiki_backfill.WikiDriftTests.test_current_article_no_drift) ... ok\ntest_drift_cli (test_wiki_backfill.WikiDriftTests.test_drift_cli) ... ok\ntest_far_behind_article_flagged (test_wiki_backfill.WikiDriftTests.test_far_behind_article_flagged) ... ok\ntest_no_wiki_is_ok (test_wiki_backfill.WikiDriftTests.test_no_wiki_is_ok) ... ok\ntest_unlinked_markdown_reference_is_part_of_wiki_drift (test_wiki_backfill.WikiDriftTests.test_unlinked_markdown_reference_is_part_of_wiki_drift) ... ok\ntest_unstamped_article_flagged (test_wiki_backfill.WikiDriftTests.test_unstamped_article_flagged) ... ok\ntest_wiki_drift_uses_configured_wiki_directory (test_wiki_backfill.WikiDriftTests.test_wiki_drift_uses_configured_wiki_directory) ... ok\ntest_ambiguous_reference_is_reported_but_never_guessed (test_wiki_backfill.WikiInlineMarkdownLinkTests.test_ambiguous_reference_is_reported_but_never_guessed) ... ok\ntest_cli_check_fails_and_fix_then_passes (test_wiki_backfill.WikiInlineMarkdownLinkTests.test_cli_check_fails_and_fix_then_passes) ... ok\ntest_existing_inline_links_and_fenced_examples_are_not_findings (test_wiki_backfill.WikiInlineMarkdownLinkTests.test_existing_inline_links_and_fenced_examples_are_not_findings) ... ok\ntest_fix_rewrites_only_unambiguous_references_to_relative_inline_links (test_wiki_backfill.WikiInlineMarkdownLinkTests.test_fix_rewrites_only_unambiguous_references_to_relative_inline_links) ... ok\ntest_reports_resolvable_bare_and_code_wrapped_markdown_references (test_wiki_backfill.WikiInlineMarkdownLinkTests.test_reports_resolvable_bare_and_code_wrapped_markdown_references) ... ok\ntest_nudge_surfaces_pending_backfill (test_wiki_backfill.WiringTests.test_nudge_surfaces_pending_backfill) ... ok\ntest_script_registered_downstream (test_wiki_backfill.WiringTests.test_script_registered_downstream) ... ok\ntest_skill_has_backfill_mode (test_wiki_backfill.WiringTests.test_skill_has_backfill_mode) ... ok\ntest_copy_and_download_controls_are_wired (test_wiki_html_export.WikiHtmlExportTests.test_copy_and_download_controls_are_wired) ... ok\ntest_default_output_lands_in_the_local_runtime_dir (test_wiki_html_export.WikiHtmlExportTests.test_default_output_lands_in_the_local_runtime_dir) ... ok\ntest_every_page_is_embedded_with_exact_markdown (test_wiki_html_export.WikiHtmlExportTests.test_every_page_is_embedded_with_exact_markdown) ... ok\ntest_export_all_generates_viewers_and_super_index (test_wiki_html_export.WikiHtmlExportTests.test_export_all_generates_viewers_and_super_index) ... ok\ntest_export_is_one_self_contained_offline_file (test_wiki_html_export.WikiHtmlExportTests.test_export_is_one_self_contained_offline_file) ... ok\ntest_guest_repo_viewer_is_hosted_by_the_host_repo (test_wiki_html_export.WikiHtmlExportTests.test_guest_repo_viewer_is_hosted_by_the_host_repo)\nA repo without .prd_plugin gets NO new files in its own tree; its ... ok\ntest_hub_repo_exports_all_pages (test_wiki_html_export.WikiHtmlExportTests.test_hub_repo_exports_all_pages) ... ok\ntest_parse_wiki_log_extracts_dated_entries_with_bodies (test_wiki_html_export.WikiHtmlExportTests.test_parse_wiki_log_extracts_dated_entries_with_bodies)\nREQ-112: every workspace log follows '## [date] mode | text'. ... ok\ntest_parse_wiki_log_tolerates_missing_log (test_wiki_html_export.WikiHtmlExportTests.test_parse_wiki_log_tolerates_missing_log) ... ok\ntest_script_content_cannot_break_the_payload (test_wiki_html_export.WikiHtmlExportTests.test_script_content_cannot_break_the_payload) ... ok\ntest_super_index_has_a_combined_changelog (test_wiki_html_export.WikiHtmlExportTests.test_super_index_has_a_combined_changelog) ... ok\ntest_super_index_reports_page_counts (test_wiki_html_export.WikiHtmlExportTests.test_super_index_reports_page_counts) ... ok\ntest_workspace_discovery_uses_the_wiki_convention_marker (test_wiki_html_export.WikiHtmlExportTests.test_workspace_discovery_uses_the_wiki_convention_marker)\nREQ-110 + REQ-111: any immediate child whose wiki follows the ... ok\ntest_a_repo_without_a_wiki_is_not_in_drift (test_wiki_ingest_drift.DetectionTests.test_a_repo_without_a_wiki_is_not_in_drift)\nNo wiki is a legitimate state, not a failure to ingest. ... ok\ntest_fully_ingested_repo_is_clean (test_wiki_ingest_drift.DetectionTests.test_fully_ingested_repo_is_clean) ... ok\ntest_malformed_state_degrades_rather_than_raising (test_wiki_ingest_drift.DetectionTests.test_malformed_state_degrades_rather_than_raising) ... ok\ntest_non_implemented_requests_are_never_expected_in_the_log (test_wiki_ingest_drift.DetectionTests.test_non_implemented_requests_are_never_expected_in_the_log) ... ok\ntest_only_work_since_the_last_ingest_is_actionable (test_wiki_ingest_drift.DetectionTests.test_only_work_since_the_last_ingest_is_actionable)\nRaw counting flags pre-wiki history as drift � ~70 items in the hub, ... ok\ntest_reports_implemented_requests_absent_from_the_log (test_wiki_ingest_drift.DetectionTests.test_reports_implemented_requests_absent_from_the_log) ... ok\ntest_it_runs_against_this_repo_and_returns_a_usable_report (test_wiki_ingest_drift.RealRepoTests.test_it_runs_against_this_repo_and_returns_a_usable_report)\nGrounded against real state, but NOT pinned to a specific gap: a test ... ok\ntest_prd_status_omits_it_when_clean (test_wiki_ingest_drift.SurfaceTests.test_prd_status_omits_it_when_clean) ... ok\ntest_prd_status_reports_the_drift (test_wiki_ingest_drift.SurfaceTests.test_prd_status_reports_the_drift) ... ok\ntest_this_repos_wiki_reads_byte_exact (test_wiki_page_contract.HubRepoSmokeTests.test_this_repos_wiki_reads_byte_exact) ... ok\ntest_list_enumerates_canonical_pages_with_titles (test_wiki_page_contract.WikiPageListTests.test_list_enumerates_canonical_pages_with_titles) ... ok\ntest_boundaries_are_hard (test_wiki_page_contract.WikiPageReadTests.test_boundaries_are_hard) ... ok\ntest_drift_remains_the_default_action (test_wiki_page_contract.WikiPageReadTests.test_drift_remains_the_default_action) ... ok\ntest_read_page_without_stamps_reports_null_provenance (test_wiki_page_contract.WikiPageReadTests.test_read_page_without_stamps_reports_null_provenance) ... ok\ntest_read_requires_a_path (test_wiki_page_contract.WikiPageReadTests.test_read_requires_a_path) ... ok\ntest_read_returns_exact_markdown_with_provenance (test_wiki_page_contract.WikiPageReadTests.test_read_returns_exact_markdown_with_provenance) ... ok\ntest_no_cp1252_unencodable_chars_in_agent_facing_tools (test_windows_console_safe.SourceScanTests.test_no_cp1252_unencodable_chars_in_agent_facing_tools) ... ok\ntest_backfill_pending_status_renders_cp1252_safe (test_windows_console_safe.StatusRenderTests.test_backfill_pending_status_renders_cp1252_safe) ... ok\ntest_json_output_escapes_non_console_characters (test_windows_console_safe.WorkflowCliRenderTests.test_json_output_escapes_non_console_characters) ... ok\ntest_repository_workflow_surfaces_are_chml_zero (test_workflow_chml_audit.WorkflowChmlAuditTests.test_repository_workflow_surfaces_are_chml_zero) ... ok\ntest_semantic_skill_finding_is_part_of_workflow_chml (test_workflow_chml_audit.WorkflowChmlAuditTests.test_semantic_skill_finding_is_part_of_workflow_chml) ... ok\ntest_git_workflow_pushes_clean_verified_commits_in_autonomous (test_workflow_consistency.AutonomyConflictResolutionTests.test_git_workflow_pushes_clean_verified_commits_in_autonomous) ... ok\ntest_request_intake_defers_autonomy_and_owns_graduation (test_workflow_consistency.AutonomyConflictResolutionTests.test_request_intake_defers_autonomy_and_owns_graduation) ... ok\ntest_evidence_pair_states_create_vs_review_boundary (test_workflow_consistency.BoundaryClarityTests.test_evidence_pair_states_create_vs_review_boundary) ... ok\ntest_session_close_states_memory_boundary (test_workflow_consistency.BoundaryClarityTests.test_session_close_states_memory_boundary) ... ok\ntest_document_branch_has_promotion_owner (test_workflow_consistency.DeadEndOwnerTests.test_document_branch_has_promotion_owner) ... ok\ntest_health_findings_have_triage_dispositions (test_workflow_consistency.DeadEndOwnerTests.test_health_findings_have_triage_dispositions) ... ok\ntest_memory_owns_schema_version_changes (test_workflow_consistency.DeadEndOwnerTests.test_memory_owns_schema_version_changes) ... ok\ntest_planning_lifecycle_has_stage_readiness_checkpoints (test_workflow_consistency.DeadEndOwnerTests.test_planning_lifecycle_has_stage_readiness_checkpoints) ... ok\ntest_session_close_runs_traceability_sync (test_workflow_consistency.DeadEndOwnerTests.test_session_close_runs_traceability_sync) ... ok\n\n----------------------------------------------------------------------\nRan 1266 tests in 96.894s\n\nOK (skipped=1)\n"
          },
          "output_hash": "5d6527ff57047dd0aa2791f9d9d0c48f63d8978f1a5b19ecef5a71ea80da22a7",
          "completed_at": "2026-07-25T06:02:39Z"
        },
        {
          "id": "release",
          "action": "process.fixed",
          "status": "completed",
          "resolved_input_hash": "1e5b0c18d93eb4c2248f9a00adbd438e52f3ef02137477fb8376c69cfe86fc9b",
          "started_at": "2026-07-25T06:02:39Z",
          "output": {
            "operation": "release_check",
            "command": [
              "python",
              "scripts/release_check.py"
            ],
            "exit_code": 0,
            "stdout": "# Release Hygiene Report\n\nBase version: `0.16.56`\nHead version: `0.16.58`\nChanged files checked: 36\n\n## Findings\n\n- None\n",
            "stderr": ""
          },
          "output_hash": "ef72f5c0d06de5ea81a51bd6514c32443696d55734ed0663eb8f8b951846da67",
          "completed_at": "2026-07-25T06:02:39Z"
        },
        {
          "id": "gaps",
          "action": "process.fixed",
          "status": "completed",
          "resolved_input_hash": "577241909238eeb55683f89d2d2216648dad2e3127397993e22493829a1307a4",
          "started_at": "2026-07-25T06:02:39Z",
          "output": {
            "operation": "gap_audit",
            "command": [
              "python",
              "scripts/gap_audit.py",
              "--target-version",
              "0.16.58",
              "--config",
              ".prd_plugin/config.json",
              "--releases",
              ".prd_plugin/state/releases.json"
            ],
            "exit_code": 0,
            "stdout": "# PRD Plugin Gap Audit\n\nTarget version: `0.16.58`\n\n## Findings\n\n- None\n",
            "stderr": ""
          },
          "output_hash": "4225e1d0b8280ff90feed752313e32d4c22b3ed8bbc9d9c6ce7a0b00ab9098ed",
          "completed_at": "2026-07-25T06:02:40Z"
        },
        {
          "id": "package",
          "action": "process.fixed",
          "status": "completed",
          "resolved_input_hash": "06cd12e1f3db3d985f9150520afa60f288297ff0ca01a8e813e9bb6291aa8836",
          "started_at": "2026-07-25T06:02:40Z",
          "output": {
            "operation": "package_check",
            "command": [
              "npm",
              "pack",
              "--dry-run"
            ],
            "exit_code": 0,
            "stdout": "prd-plugin-0.16.58.tgz\n",
            "stderr": "te.md\nnpm notice 17.0kB templates/repo-skeleton/.agents/skills/project-llm-wiki/SKILL.md\nnpm notice 7.4kB templates/repo-skeleton/.agents/skills/project-local-integration/SKILL.md\nnpm notice 8.1kB templates/repo-skeleton/.agents/skills/project-memory/SKILL.md\nnpm notice 6.2kB templates/repo-skeleton/.agents/skills/project-planning-lifecycle/SKILL.md\nnpm notice 6.0kB templates/repo-skeleton/.agents/skills/project-prd-plugin-setup/SKILL.md\nnpm notice 3.5kB templates/repo-skeleton/.agents/skills/project-prd/SKILL.md\nnpm notice 27.5kB templates/repo-skeleton/.agents/skills/project-request-intake/SKILL.md\nnpm notice 4.8kB templates/repo-skeleton/.agents/skills/project-session-close/SKILL.md\nnpm notice 10.3kB templates/repo-skeleton/.agents/skills/project-systematic-debugging/SKILL.md\nnpm notice 4.8kB templates/repo-skeleton/.agents/skills/project-test-driven-implementation/SKILL.md\nnpm notice 3.7kB templates/repo-skeleton/.agents/skills/project-traceability-review/SKILL.md\nnpm notice 2.5kB templates/repo-skeleton/.agents/skills/project-traceability-sync/SKILL.md\nnpm notice 6.6kB templates/repo-skeleton/.agents/skills/project-verification-before-completion/SKILL.md\nnpm notice 1.5kB templates/repo-skeleton/.agents/skills/source-command-prd-autonomy/SKILL.md\nnpm notice 1.2kB templates/repo-skeleton/.agents/skills/source-command-prd-close/SKILL.md\nnpm notice 3.3kB templates/repo-skeleton/.agents/skills/source-command-prd-config/SKILL.md\nnpm notice 2.4kB templates/repo-skeleton/.agents/skills/source-command-prd-drift/SKILL.md\nnpm notice 2.1kB templates/repo-skeleton/.agents/skills/source-command-prd-graph/SKILL.md\nnpm notice 2.2kB templates/repo-skeleton/.agents/skills/source-command-prd-hooks/SKILL.md\nnpm notice 1.3kB templates/repo-skeleton/.agents/skills/source-command-prd-new/SKILL.md\nnpm notice 2.0kB templates/repo-skeleton/.agents/skills/source-command-prd-off/SKILL.md\nnpm notice 1.5kB templates/repo-skeleton/.agents/skills/source-command-prd-on/SKILL.md\nnpm notice 2.3kB templates/repo-skeleton/.agents/skills/source-command-prd-reflections/SKILL.md\nnpm notice 2.5kB templates/repo-skeleton/.agents/skills/source-command-prd-report/SKILL.md\nnpm notice 1.2kB templates/repo-skeleton/.agents/skills/source-command-prd-status/SKILL.md\nnpm notice 1.7kB templates/repo-skeleton/.agents/skills/source-command-prd-track/SKILL.md\nnpm notice 1.8kB templates/repo-skeleton/.agents/skills/source-command-prd-version/SKILL.md\nnpm notice 1.7kB templates/repo-skeleton/.agents/skills/source-command-prd-workflow/SKILL.md\nnpm notice 764B templates/repo-skeleton/.claude-plugin/plugin.json\nnpm notice 772B templates/repo-skeleton/.claude/commands/prd-autonomy.md\nnpm notice 493B templates/repo-skeleton/.claude/commands/prd-close.md\nnpm notice 2.5kB templates/repo-skeleton/.claude/commands/prd-config.md\nnpm notice 1.6kB templates/repo-skeleton/.claude/commands/prd-drift.md\nnpm notice 1.4kB templates/repo-skeleton/.claude/commands/prd-graph.md\nnpm notice 1.6kB templates/repo-skeleton/.claude/commands/prd-hooks.md\nnpm notice 639B templates/repo-skeleton/.claude/commands/prd-new.md\nnpm notice 1.4kB templates/repo-skeleton/.claude/commands/prd-off.md\nnpm notice 862B templates/repo-skeleton/.claude/commands/prd-on.md\nnpm notice 1.6kB templates/repo-skeleton/.claude/commands/prd-reflections.md\nnpm notice 1.8kB templates/repo-skeleton/.claude/commands/prd-report.md\nnpm notice 549B templates/repo-skeleton/.claude/commands/prd-status.md\nnpm notice 974B templates/repo-skeleton/.claude/commands/prd-track.md\nnpm notice 1.0kB templates/repo-skeleton/.claude/commands/prd-version.md\nnpm notice 938B templates/repo-skeleton/.claude/commands/prd-workflow.md\nnpm notice 1.6kB templates/repo-skeleton/.claude/hooks/prd_drift_check.py\nnpm notice 2.0kB templates/repo-skeleton/.claude/hooks/prd_log_skill.py\nnpm notice 4.1kB templates/repo-skeleton/.claude/hooks/prd_nudge.py\nnpm notice 3.7kB templates/repo-skeleton/.claude/hooks/prd_precommit_gate.py\nnpm notice 6.1kB templates/repo-skeleton/.claude/hooks/prd_reflection.py\nnpm notice 3.5kB templates/repo-skeleton/.claude/hooks/prd_session_report.py\nnpm notice 15.8kB templates/repo-skeleton/.claude/hooks/prd_stop_guard.py\nnpm notice 1.2kB templates/repo-skeleton/.claude/settings.json\nnpm notice 3.0kB templates/repo-skeleton/.claude/skills/project-architecture/SKILL.md\nnpm notice 7.4kB templates/repo-skeleton/.claude/skills/project-blocker-resolution/SKILL.md\nnpm notice 2.8kB templates/repo-skeleton/.claude/skills/project-brainstorm/SKILL.md\nnpm notice 5.5kB templates/repo-skeleton/.claude/skills/project-change-request/SKILL.md\nnpm notice 6.3kB templates/repo-skeleton/.claude/skills/project-code-review/SKILL.md\nnpm notice 2.7kB templates/repo-skeleton/.claude/skills/project-decision-ledger/SKILL.md\nnpm notice 23.6kB templates/repo-skeleton/.claude/skills/project-decision-policy/SKILL.md\nnpm notice 4.4kB templates/repo-skeleton/.claude/skills/project-deterministic-workflows/SKILL.md\nnpm notice 5.2kB templates/repo-skeleton/.claude/skills/project-document-branch/SKILL.md\nnpm notice 2.8kB templates/repo-skeleton/.claude/skills/project-evidence-ledger/SKILL.md\nnpm notice 3.3kB templates/repo-skeleton/.claude/skills/project-evidence/SKILL.md\nnpm notice 11.9kB templates/repo-skeleton/.claude/skills/project-git-workflow/SKILL.md\nnpm notice 7.4kB templates/repo-skeleton/.claude/skills/project-health/SKILL.md\nnpm notice 6.0kB templates/repo-skeleton/.claude/skills/project-implementation-plan/SKILL.md\nnpm notice 1.1kB templates/repo-skeleton/.claude/skills/project-llm-wiki/LICENSE\nnpm notice 842B templates/repo-skeleton/.claude/skills/project-llm-wiki/references/archive-template.md\nnpm notice 843B templates/repo-skeleton/.claude/skills/project-llm-wiki/references/article-template.md\nnpm notice 559B templates/repo-skeleton/.claude/skills/project-llm-wiki/references/index-template.md\nnpm notice 317B templates/repo-skeleton/.claude/skills/project-llm-wiki/references/raw-template.md\nnpm notice 17.0kB templates/repo-skeleton/.claude/skills/project-llm-wiki/SKILL.md\nnpm notice 7.4kB templates/repo-skeleton/.claude/skills/project-local-integration/SKILL.md\nnpm notice 8.1kB templates/repo-skeleton/.claude/skills/project-memory/SKILL.md\nnpm notice 6.2kB templates/repo-skeleton/.claude/skills/project-planning-lifecycle/SKILL.md\nnpm notice 6.0kB templates/repo-skeleton/.claude/skills/project-prd-plugin-setup/SKILL.md\nnpm notice 3.5kB templates/repo-skeleton/.claude/skills/project-prd/SKILL.md\nnpm notice 27.5kB templates/repo-skeleton/.claude/skills/project-request-intake/SKILL.md\nnpm notice 4.8kB templates/repo-skeleton/.claude/skills/project-session-close/SKILL.md\nnpm notice 10.3kB templates/repo-skeleton/.claude/skills/project-systematic-debugging/SKILL.md\nnpm notice 4.8kB templates/repo-skeleton/.claude/skills/project-test-driven-implementation/SKILL.md\nnpm notice 3.7kB templates/repo-skeleton/.claude/skills/project-traceability-review/SKILL.md\nnpm notice 2.5kB templates/repo-skeleton/.claude/skills/project-traceability-sync/SKILL.md\nnpm notice 6.6kB templates/repo-skeleton/.claude/skills/project-verification-before-completion/SKILL.md\nnpm notice 1.5kB templates/repo-skeleton/.claude/skills/source-command-prd-autonomy/SKILL.md\nnpm notice 1.2kB templates/repo-skeleton/.claude/skills/source-command-prd-close/SKILL.md\nnpm notice 3.3kB templates/repo-skeleton/.claude/skills/source-command-prd-config/SKILL.md\nnpm notice 2.4kB templates/repo-skeleton/.claude/skills/source-command-prd-drift/SKILL.md\nnpm notice 2.1kB templates/repo-skeleton/.claude/skills/source-command-prd-graph/SKILL.md\nnpm notice 2.2kB templates/repo-skeleton/.claude/skills/source-command-prd-hooks/SKILL.md\nnpm notice 1.3kB templates/repo-skeleton/.claude/skills/source-command-prd-new/SKILL.md\nnpm notice 2.0kB templates/repo-skeleton/.claude/skills/source-command-prd-off/SKILL.md\nnpm notice 1.5kB templates/repo-skeleton/.claude/skills/source-command-prd-on/SKILL.md\nnpm notice 2.3kB templates/repo-skeleton/.claude/skills/source-command-prd-reflections/SKILL.md\nnpm notice 2.5kB templates/repo-skeleton/.claude/skills/source-command-prd-report/SKILL.md\nnpm notice 1.2kB templates/repo-skeleton/.claude/skills/source-command-prd-status/SKILL.md\nnpm notice 1.7kB templates/repo-skeleton/.claude/skills/source-command-prd-track/SKILL.md\nnpm notice 1.8kB templates/repo-skeleton/.claude/skills/source-command-prd-version/SKILL.md\nnpm notice 1.7kB templates/repo-skeleton/.claude/skills/source-command-prd-workflow/SKILL.md\nnpm notice 3.2kB templates/repo-skeleton/.codex-plugin/plugin.json\nnpm notice 3.3kB templates/repo-skeleton/.codex/hooks.json\nnpm notice 743B templates/repo-skeleton/.githooks/pre-commit\nnpm notice 734B templates/repo-skeleton/.github/workflows/prd-gate.yml\nnpm notice 3.2kB templates/repo-skeleton/.opencode/plugin.json\nnpm notice 4.4kB templates/repo-skeleton/.opencode/plugins/prd-hooks.js\nnpm notice 3.0kB templates/repo-skeleton/.opencode/skill/project-architecture/SKILL.md\nnpm notice 7.4kB templates/repo-skeleton/.opencode/skill/project-blocker-resolution/SKILL.md\nnpm notice 2.8kB templates/repo-skeleton/.opencode/skill/project-brainstorm/SKILL.md\nnpm notice 5.5kB templates/repo-skeleton/.opencode/skill/project-change-request/SKILL.md\nnpm notice 6.3kB templates/repo-skeleton/.opencode/skill/project-code-review/SKILL.md\nnpm notice 2.7kB templates/repo-skeleton/.opencode/skill/project-decision-ledger/SKILL.md\nnpm notice 23.6kB templates/repo-skeleton/.opencode/skill/project-decision-policy/SKILL.md\nnpm notice 4.4kB templates/repo-skeleton/.opencode/skill/project-deterministic-workflows/SKILL.md\nnpm notice 5.2kB templates/repo-skeleton/.opencode/skill/project-document-branch/SKILL.md\nnpm notice 2.8kB templates/repo-skeleton/.opencode/skill/project-evidence-ledger/SKILL.md\nnpm notice 3.3kB templates/repo-skeleton/.opencode/skill/project-evidence/SKILL.md\nnpm notice 11.9kB templates/repo-skeleton/.opencode/skill/project-git-workflow/SKILL.md\nnpm notice 7.4kB templates/repo-skeleton/.opencode/skill/project-health/SKILL.md\nnpm notice 6.0kB templates/repo-skeleton/.opencode/skill/project-implementation-plan/SKILL.md\nnpm notice 1.1kB templates/repo-skeleton/.opencode/skill/project-llm-wiki/LICENSE\nnpm notice 842B templates/repo-skeleton/.opencode/skill/project-llm-wiki/references/archive-template.md\nnpm notice 843B templates/repo-skeleton/.opencode/skill/project-llm-wiki/references/article-template.md\nnpm notice 559B templates/repo-skeleton/.opencode/skill/project-llm-wiki/references/index-template.md\nnpm notice 317B templates/repo-skeleton/.opencode/skill/project-llm-wiki/references/raw-template.md\nnpm notice 17.0kB templates/repo-skeleton/.opencode/skill/project-llm-wiki/SKILL.md\nnpm notice 7.4kB templates/repo-skeleton/.opencode/skill/project-local-integration/SKILL.md\nnpm notice 8.1kB templates/repo-skeleton/.opencode/skill/project-memory/SKILL.md\nnpm notice 6.2kB templates/repo-skeleton/.opencode/skill/project-planning-lifecycle/SKILL.md\nnpm notice 6.0kB templates/repo-skeleton/.opencode/skill/project-prd-plugin-setup/SKILL.md\nnpm notice 3.5kB templates/repo-skeleton/.opencode/skill/project-prd/SKILL.md\nnpm notice 27.5kB templates/repo-skeleton/.opencode/skill/project-request-intake/SKILL.md\nnpm notice 4.8kB templates/repo-skeleton/.opencode/skill/project-session-close/SKILL.md\nnpm notice 10.3kB templates/repo-skeleton/.opencode/skill/project-systematic-debugging/SKILL.md\nnpm notice 4.8kB templates/repo-skeleton/.opencode/skill/project-test-driven-implementation/SKILL.md\nnpm notice 3.7kB templates/repo-skeleton/.opencode/skill/project-traceability-review/SKILL.md\nnpm notice 2.5kB templates/repo-skeleton/.opencode/skill/project-traceability-sync/SKILL.md\nnpm notice 6.6kB templates/repo-skeleton/.opencode/skill/project-verification-before-completion/SKILL.md\nnpm notice 1.5kB templates/repo-skeleton/.opencode/skill/source-command-prd-autonomy/SKILL.md\nnpm notice 1.2kB templates/repo-skeleton/.opencode/skill/source-command-prd-close/SKILL.md\nnpm notice 3.3kB templates/repo-skeleton/.opencode/skill/source-command-prd-config/SKILL.md\nnpm notice 2.4kB templates/repo-skeleton/.opencode/skill/source-command-prd-drift/SKILL.md\nnpm notice 2.1kB templates/repo-skeleton/.opencode/skill/source-command-prd-graph/SKILL.md\nnpm notice 2.2kB templates/repo-skeleton/.opencode/skill/source-command-prd-hooks/SKILL.md\nnpm notice 1.3kB templates/repo-skeleton/.opencode/skill/source-command-prd-new/SKILL.md\nnpm notice 2.0kB templates/repo-skeleton/.opencode/skill/source-command-prd-off/SKILL.md\nnpm notice 1.5kB templates/repo-skeleton/.opencode/skill/source-command-prd-on/SKILL.md\nnpm notice 2.3kB templates/repo-skeleton/.opencode/skill/source-command-prd-reflections/SKILL.md\nnpm notice 2.5kB templates/repo-skeleton/.opencode/skill/source-command-prd-report/SKILL.md\nnpm notice 1.2kB templates/repo-skeleton/.opencode/skill/source-command-prd-status/SKILL.md\nnpm notice 1.7kB templates/repo-skeleton/.opencode/skill/source-command-prd-track/SKILL.md\nnpm notice 1.8kB templates/repo-skeleton/.opencode/skill/source-command-prd-version/SKILL.md\nnpm notice 1.7kB templates/repo-skeleton/.opencode/skill/source-command-prd-workflow/SKILL.md\nnpm notice 14.9kB templates/repo-skeleton/.prd_plugin/config.json\nnpm notice 1.6kB templates/repo-skeleton/.prd_plugin/hooks/prd_drift_check.py\nnpm notice 12.0kB templates/repo-skeleton/.prd_plugin/hooks/prd_hook_dispatch.py\nnpm notice 2.0kB templates/repo-skeleton/.prd_plugin/hooks/prd_log_skill.py\nnpm notice 4.1kB templates/repo-skeleton/.prd_plugin/hooks/prd_nudge.py\nnpm notice 3.7kB templates/repo-skeleton/.prd_plugin/hooks/prd_precommit_gate.py\nnpm notice 66.9kB templates/repo-skeleton/.prd_plugin/hooks/prd_reason_guard.py\nnpm notice 6.1kB templates/repo-skeleton/.prd_plugin/hooks/prd_reflection.py\nnpm notice 3.5kB templates/repo-skeleton/.prd_plugin/hooks/prd_session_report.py\nnpm notice 15.8kB templates/repo-skeleton/.prd_plugin/hooks/prd_stop_guard.py\nnpm notice 8.0kB templates/repo-skeleton/.prd_plugin/hooks/prd_test_scope_guard.py\nnpm notice 3.7kB templates/repo-skeleton/.prd_plugin/ID-SCHEME.md\nnpm notice 581B templates/repo-skeleton/.prd_plugin/ids/registry.json\nnpm notice 12.9kB templates/repo-skeleton/.prd_plugin/METHOD.md\nnpm notice 725B templates/repo-skeleton/.prd_plugin/method/artifact-format.md\nnpm notice 1.5kB templates/repo-skeleton/.prd_plugin/method/completion-gate.md\nnpm notice 3.6kB templates/repo-skeleton/.prd_plugin/method/deterministic-workflows.md\nnpm notice 1.2kB templates/repo-skeleton/.prd_plugin/method/estimation.md\nnpm notice 2.2kB templates/repo-skeleton/.prd_plugin/method/grounding.md\nnpm notice 3.2kB templates/repo-skeleton/.prd_plugin/method/reporting.md\nnpm notice 4.1kB templates/repo-skeleton/.prd_plugin/method/self-service.md\nnpm notice 1.6kB templates/repo-skeleton/.prd_plugin/method/staleness-rules.md\nnpm notice 1.0kB templates/repo-skeleton/.prd_plugin/method/state-validation.md\nnpm notice 3.0kB templates/repo-skeleton/.prd_plugin/method/subagents.md\nnpm notice 1.3kB templates/repo-skeleton/.prd_plugin/services.json\nnpm notice 51B templates/repo-skeleton/.prd_plugin/state/changelog.json\nnpm notice 53B templates/repo-skeleton/.prd_plugin/state/decisions.json\nnpm notice 165B templates/repo-skeleton/.prd_plugin/state/health.json\nnpm notice 51B templates/repo-skeleton/.prd_plugin/state/memory.json\nnpm notice 287B templates/repo-skeleton/.prd_plugin/state/project.json\nnpm notice 52B templates/repo-skeleton/.prd_plugin/state/releases.json\nnpm notice 52B templates/repo-skeleton/.prd_plugin/state/requests.json\nnpm notice 215B templates/repo-skeleton/.prd_plugin/state/sessions/shared/promoted-session-summaries.jsonl\nnpm notice 49B templates/repo-skeleton/.prd_plugin/state/substrate-links.json\nnpm notice 51B templates/repo-skeleton/.prd_plugin/state/tracking.json\nnpm notice 48B templates/repo-skeleton/.prd_plugin/state/workflow-runs.json\nnpm notice 180B templates/repo-skeleton/.prd_plugin/templates/architecture-delta.md\nnpm notice 1.5kB templates/repo-skeleton/.prd_plugin/templates/architecture.json\nnpm notice 396B templates/repo-skeleton/.prd_plugin/templates/brainstorm.md\nnpm notice 274B templates/repo-skeleton/.prd_plugin/templates/changelog.json\nnpm notice 15.0kB templates/repo-skeleton/.prd_plugin/templates/config.json\nnpm notice 265B templates/repo-skeleton/.prd_plugin/templates/decision-record.md\nnpm notice 398B templates/repo-skeleton/.prd_plugin/templates/decisions.json\nnpm notice 372B templates/repo-skeleton/.prd_plugin/templates/doc-branch.json\nnpm notice 343B templates/repo-skeleton/.prd_plugin/templates/doc-branch.md\nnpm notice 129B templates/repo-skeleton/.prd_plugin/templates/evidence.md\nnpm notice 262B templates/repo-skeleton/.prd_plugin/templates/handoff.json\nnpm notice 427B templates/repo-skeleton/.prd_plugin/templates/health.json\nnpm notice 729B templates/repo-skeleton/.prd_plugin/templates/human-exports/architecture.md\nnpm notice 652B templates/repo-skeleton/.prd_plugin/templates/human-exports/implementation-plan.md\nnpm notice 610B templates/repo-skeleton/.prd_plugin/templates/human-exports/prd.md\nnpm notice 1.5kB templates/repo-skeleton/.prd_plugin/templates/implementation-plan.json\nnpm notice 70B templates/repo-skeleton/.prd_plugin/templates/mailbox.json\nnpm notice 365B templates/repo-skeleton/.prd_plugin/templates/memory.json\nnpm notice 490B templates/repo-skeleton/.prd_plugin/templates/merge-checklist.md\nnpm notice 176B templates/repo-skeleton/.prd_plugin/templates/plan-delta.md\nnpm notice 152B templates/repo-skeleton/.prd_plugin/templates/prd-delta.md\nnpm notice 1.4kB templates/repo-skeleton/.prd_plugin/templates/prd.json\nnpm notice 455B templates/repo-skeleton/.prd_plugin/templates/project.json\nnpm notice 126B templates/repo-skeleton/.prd_plugin/templates/promoted-session-summary.jsonl\nnpm notice 923B templates/repo-skeleton/.prd_plugin/templates/releases.json\nnpm notice 1.4kB templates/repo-skeleton/.prd_plugin/templates/request.json\nnpm notice 1.7kB templates/repo-skeleton/.prd_plugin/templates/requests.json\nnpm notice 23.4kB templates/repo-skeleton/.prd_plugin/templates/script-install-scope.json\nnpm notice 247B templates/repo-skeleton/.prd_plugin/templates/session.json\nnpm notice 15.6kB templates/repo-skeleton/.prd_plugin/templates/skill-install-scope.json\nnpm notice 333B templates/repo-skeleton/.prd_plugin/templates/submission-package.json\nnpm notice 5.7kB templates/repo-skeleton/.prd_plugin/templates/tool-surface.json\nnpm notice 230B templates/repo-skeleton/.prd_plugin/templates/traceability-matrix.md\nnpm notice 321B templates/repo-skeleton/.prd_plugin/templates/tracking.json\nnpm notice 375B templates/repo-skeleton/.prd_plugin/templates/utcp-config.json\nnpm notice 22.2kB templates/repo-skeleton/.prd_plugin/workflows.json\nnpm notice 15.2kB templates/repo-skeleton/AGENTS.md\nnpm notice 11.6kB templates/repo-skeleton/CLAUDE.md\nnpm notice 12.0kB templates/repo-skeleton/docs/INSTALL-MATRIX.md\nnpm notice 2.7kB templates/repo-skeleton/hooks/hooks.json\nnpm notice 1.4kB templates/request.json\nnpm notice 1.7kB templates/requests.json\nnpm notice 23.4kB templates/script-install-scope.json\nnpm notice 1.3kB templates/services.json\nnpm notice 247B templates/session.json\nnpm notice 15.6kB templates/skill-install-scope.json\nnpm notice 333B templates/submission-package.json\nnpm notice 10.4kB templates/substrate-capabilities.json\nnpm notice 48.5kB templates/tool-spec.json\nnpm notice 7.9kB templates/tool-surface.json\nnpm notice 230B templates/traceability-matrix.md\nnpm notice 321B templates/tracking.json\nnpm notice 375B templates/utcp-config.json\nnpm notice 22.2kB templates/workflows.json\nnpm notice Tarball Details\nnpm notice name: prd-plugin\nnpm notice version: 0.16.58\nnpm notice filename: prd-plugin-0.16.58.tgz\nnpm notice package size: 1.8 MB\nnpm notice unpacked size: 11.2 MB\nnpm notice shasum: cf3d1a43fb583129ec2b7add5ba985406cff30c3\nnpm notice integrity: sha512-U65vtXK98k8iT[...]Rbe0B3+ypjLWQ==\nnpm notice total files: 650\nnpm notice\n"
          },
          "output_hash": "4bf031dfb853cccdfaf3ca8563d5cb638d5b1ddda6835c1a31e0f2d624faee24",
          "completed_at": "2026-07-25T06:02:41Z"
        },
        {
          "id": "gate",
          "action": "state.gate",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-25T06:02:41Z",
          "output": {
            "status": "attention",
            "repo_root": "D:\\Projects\\prd-plugin-worktrees\\codex-reasoning-summary-session-fallback",
            "summary": {
              "errors": 0,
              "warnings": 0
            },
            "findings": [
              {
                "check": "state_consistency",
                "severity": "info",
                "summary": "File references 2 canonical IDs across 2 prefix(es); treated as a positive signal of extra work.",
                "required_action": "No action required; this is an informational signal."
              }
            ]
          },
          "output_hash": "af95f5508bef069fc3c46ffe3a052eeba9fa5c6bfadc00da8d536a21484deebe",
          "completed_at": "2026-07-25T06:02:42Z"
        }
      ],
      "completed_at": "2026-07-25T06:02:42Z"
    },
    {
      "id": "WFR-435",
      "schema_version": "1.0",
      "workflow_id": "evidence.record",
      "workflow_version": 1,
      "definition_hash": "a6dfcb8faadb669d5c097a0d7fa9a738f20ee98e03b552c9557259a94a197e88",
      "plan_hash": "9982be81ee0977945b9fdfdce229c00ec208f32d8754683e0e1a199f80f6d89b",
      "input_hash": "929de875953762a6878f3350470976f6d06fa883bcbf3da771b91a67bf03aef6",
      "inputs": {
        "summary": "Confidence-bounded Reason Guard abstention verified against the active PRD Plugin Codex session, a frozen real-session holdout, focused tests, full hub release gates, and system scenarios. The holdout had zero false obligations and misses, 1.0 safety recall, 0.7778 overall clear specificity, 0.875 representative-neutral clear specificity, and 0.017 ms classification p95; candidate precision was correctly unmeasured because the narrow classifier made zero holdout predictions. Replaying 1,048 visible summaries produced conditional rather than false-clear clearance with aggregate-only uncertainty.",
        "type": "validation",
        "linked_ids": [
          "REQ-174",
          "TRK-161",
          "IMP-014",
          "WFR-431",
          "WFR-432",
          "WFR-433",
          "WFR-434"
        ],
        "commands": [
          {
            "command": "python scripts/reason_guard_benchmark.py --samples 100 --warmup 10 --evaluation-split holdout --json",
            "outcome": "passed bounded accuracy and latency budget"
          },
          {
            "command": "python scripts/prd_workflows.py retry WFR-434 --json",
            "outcome": "1266 tests and every release gate passed after two audit fixes"
          },
          {
            "command": "python -m pytest system_tests -v",
            "outcome": "12 passed, 6 optional live-host scenarios skipped"
          },
          {
            "command": "active Codex visible-summary replay through prd_reason_guard.process_event",
            "outcome": "1048 observed, 1 candidate, 372 uncertain, 675 ignored, conditional clearance"
          }
        ],
        "limitations": "The final holdout produced no high-confidence candidate predictions, so candidate precision is null rather than claimed as 1.0. Six optional system scenarios requiring live OpenCode were skipped; their mock equivalents and shared harness passed."
      },
      "idempotency_key": "reason-guard-abstention-evidence-v1",
      "status": "completed",
      "attempt": 1,
      "created_at": "2026-07-25T06:03:40Z",
      "updated_at": "2026-07-25T06:03:41Z",
      "receipts": [
        {
          "step_id": "record",
          "action": "state.mutate",
          "input_hash": "0282d505142baa696993e1dd91b2c8d8625c38d60fbfd2b880d83856260f53ed",
          "output_hash": "ccba1db8722d8edd6ae6091da853c9133c74b9d9d1f1e7ceb30adde063c5fdf8",
          "completed_at": "2026-07-25T06:03:40Z"
        },
        {
          "step_id": "confirm",
          "action": "state.query",
          "input_hash": "d12dbdf0d079633758c2a9cc2d4caad5e8909dfded18b7409a42996e7f92d41a",
          "output_hash": "65b1ca0a2ac572b5f091e9d5a0d1390321de68fc23ac2e3f6ad1a95f90ffbad0",
          "completed_at": "2026-07-25T06:03:40Z"
        }
      ],
      "steps": [
        {
          "id": "record",
          "action": "state.mutate",
          "status": "completed",
          "resolved_input_hash": "0282d505142baa696993e1dd91b2c8d8625c38d60fbfd2b880d83856260f53ed",
          "started_at": "2026-07-25T06:03:40Z",
          "execution_token": "7f8c7c639b7abf34b4dc2fda36c77121d2f57a1425b7396b0c83a873deb8d64f",
          "output": {
            "id": "EV-212"
          },
          "output_hash": "ccba1db8722d8edd6ae6091da853c9133c74b9d9d1f1e7ceb30adde063c5fdf8",
          "completed_at": "2026-07-25T06:03:40Z"
        },
        {
          "id": "confirm",
          "action": "state.query",
          "status": "completed",
          "resolved_input_hash": "d12dbdf0d079633758c2a9cc2d4caad5e8909dfded18b7409a42996e7f92d41a",
          "started_at": "2026-07-25T06:03:40Z",
          "output": {
            "kind": "EV",
            "record": {
              "id": "EV-212",
              "type": "validation",
              "summary": "Confidence-bounded Reason Guard abstention verified against the active PRD Plugin Codex session, a frozen real-session holdout, focused tests, full hub release gates, and system scenarios. The holdout had zero false obligations and misses, 1.0 safety recall, 0.7778 overall clear specificity, 0.875 representative-neutral clear specificity, and 0.017 ms classification p95; candidate precision was correctly unmeasured because the narrow classifier made zero holdout predictions. Replaying 1,048 visible summaries produced conditional rather than false-clear clearance with aggregate-only uncertainty.",
              "linked_ids": [
                "REQ-174",
                "TRK-161",
                "IMP-014",
                "WFR-431",
                "WFR-432",
                "WFR-433",
                "WFR-434"
              ],
              "created_at": "2026-07-25",
              "commands": [
                {
                  "command": "python scripts/reason_guard_benchmark.py --samples 100 --warmup 10 --evaluation-split holdout --json",
                  "outcome": "passed bounded accuracy and latency budget"
                },
                {
                  "command": "python scripts/prd_workflows.py retry WFR-434 --json",
                  "outcome": "1266 tests and every release gate passed after two audit fixes"
                },
                {
                  "command": "python -m pytest system_tests -v",
                  "outcome": "12 passed, 6 optional live-host scenarios skipped"
                },
                {
                  "command": "active Codex visible-summary replay through prd_reason_guard.process_event",
                  "outcome": "1048 observed, 1 candidate, 372 uncertain, 675 ignored, conditional clearance"
                }
              ],
              "limitations": "The final holdout produced no high-confidence candidate predictions, so candidate precision is null rather than claimed as 1.0. Six optional system scenarios requiring live OpenCode were skipped; their mock equivalents and shared harness passed."
            }
          },
          "output_hash": "65b1ca0a2ac572b5f091e9d5a0d1390321de68fc23ac2e3f6ad1a95f90ffbad0",
          "completed_at": "2026-07-25T06:03:40Z"
        }
      ],
      "completed_at": "2026-07-25T06:03:41Z"
    },
    {
      "id": "WFR-436",
      "schema_version": "1.0",
      "workflow_id": "session.start",
      "workflow_version": 1,
      "definition_hash": "dd0de9444af7b094cc93673d0844fb78c801d87d978cc5f6dd6bf3e3e863917d",
      "plan_hash": "1f4ae0cd6be8385f8a9310e49978bd8d93baa729842eb6df9243665a1b581277",
      "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
      "inputs": {},
      "idempotency_key": "codex-reason-guard-backfill-20260725",
      "status": "completed",
      "attempt": 1,
      "created_at": "2026-07-25T06:38:18Z",
      "updated_at": "2026-07-25T06:38:21Z",
      "receipts": [
        {
          "step_id": "mailbox",
          "action": "requests.pull",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "ab8a35139cfd3f5821ebc5138c9a44c899b54e4036790654ff120e79c7ab6223",
          "completed_at": "2026-07-25T06:38:18Z"
        },
        {
          "step_id": "config",
          "action": "config.audit",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "ef2327bf3ea9c100a1a525c09e426de9703016f1b7c177b0df10c0b7cf3f33c9",
          "completed_at": "2026-07-25T06:38:18Z"
        },
        {
          "step_id": "services",
          "action": "services.audit",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "13dcc58bd528f3efa3e6e0fa0853a6eedc376f1f3685fbd4869cbb2b60382ee3",
          "completed_at": "2026-07-25T06:38:19Z"
        },
        {
          "step_id": "state",
          "action": "state.consistency",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "9963110856ca8182da0dfdbb22f6960618b55dbc121be0dce0066a7c7a389b10",
          "completed_at": "2026-07-25T06:38:20Z"
        },
        {
          "step_id": "status",
          "action": "state.query",
          "input_hash": "a15231a2142a2a9a85355a8b9cbbccffe01a9c9c2c2fd8c2bc2987cdc481564a",
          "output_hash": "bc423af82297809c06baa20fbbf62aaf917d4313bf50c23c993928777eefe9f1",
          "completed_at": "2026-07-25T06:38:20Z"
        },
        {
          "step_id": "substrate",
          "action": "substrate.preflight",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "a6df426290b4549a59eecaa0519ead9bcc50b7fcb25bd2185ff6047960f19ccb",
          "completed_at": "2026-07-25T06:38:20Z"
        },
        {
          "step_id": "notices",
          "action": "substrate.notices",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "38b904a1cf83df048360fb2480571b749fd98d57e11f1afdffb5a74a78166fea",
          "completed_at": "2026-07-25T06:38:20Z"
        },
        {
          "step_id": "goals",
          "action": "substrate.goals",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "cdfd4de44a28140e686159f34f7b47975954c67e1d1efcef666e985acb136ed8",
          "completed_at": "2026-07-25T06:38:21Z"
        }
      ],
      "steps": [
        {
          "id": "mailbox",
          "action": "requests.pull",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-25T06:38:18Z",
          "output": {
            "applied": 0,
            "resolved_ids": [],
            "unmatched": [],
            "mailboxes": [],
            "pruned_outbox": [],
            "consumed_mailboxes": [],
            "outbound": {
              "delivered": 0,
              "mailboxes_published": [],
              "undeliverable": [],
              "pending": []
            },
            "addressed": {
              "delivered": 0,
              "destinations": [],
              "undelivered": [
                {
                  "id": "REQ-030",
                  "state": "not_ours_to_send",
                  "target_repo": "prd-plugin",
                  "reason": "REQ-030 was imported from 'ZeusGrid'; its target_repo records who it was addressed to, not somewhere for us to send it. Reply on its thread instead."
                },
                {
                  "id": "REQ-003",
                  "state": "not_ours_to_send",
                  "target_repo": "prd-plugin",
                  "reason": "REQ-003 was imported from 'ZeusGrid'; its target_repo records who it was addressed to, not somewhere for us to send it. Reply on its thread instead."
                },
                {
                  "id": "REQ-004",
                  "state": "not_ours_to_send",
                  "target_repo": "prd-plugin",
                  "reason": "REQ-004 was imported from 'ZeusGrid'; its target_repo records who it was addressed to, not somewhere for us to send it. Reply on its thread instead."
                },
                {
                  "id": "REQ-005",
                  "state": "not_ours_to_send",
                  "target_repo": "prd-plugin",
                  "reason": "REQ-005 was imported from 'GRAPH_LANG'; its target_repo records who it was addressed to, not somewhere for us to send it. Reply on its thread instead."
                },
                {
                  "id": "REQ-002",
                  "state": "self_addressed",
                  "target_repo": "prd-plugin",
                  "reason": "REQ-002 is addressed to this repo ('prd-plugin'); it is already here."
                },
                {
                  "id": "REQ-028",
                  "state": "self_addressed",
                  "target_repo": "prd-plugin",
                  "reason": "REQ-028 is addressed to this repo ('prd-plugin'); it is already here."
                },
                {
                  "id": "REQ-029",
                  "state": "not_ours_to_send",
                  "target_repo": "ai-collab-v3",
                  "reason": "REQ-029 was imported from 'ai-collab-v3'; its target_repo records who it was addressed to, not somewhere for us to send it. Reply on its thread instead."
                },
                {
                  "id": "REQ-138",
                  "state": "terminal",
                  "target_repo": "no-such-repo",
                  "reason": "REQ-138 is 'rejected'; a closed request is not delivered. Reopen it or file a new one if it still needs to travel."
                }
              ],
              "advisories": []
            }
          },
          "output_hash": "ab8a35139cfd3f5821ebc5138c9a44c899b54e4036790654ff120e79c7ab6223",
          "completed_at": "2026-07-25T06:38:18Z"
        },
        {
          "id": "config",
          "action": "config.audit",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-25T06:38:18Z",
          "output": {
            "status": "ok",
            "summary": {
              "settings": 214,
              "mutable": 204,
              "read_only_or_managed": 10,
              "unclassified": 0,
              "unknown": 0,
              "invalid": 0,
              "missing_using_defaults": 0
            },
            "unclassified_keys": [],
            "unknown_keys": [],
            "invalid_values": [],
            "missing_using_defaults": []
          },
          "output_hash": "ef2327bf3ea9c100a1a525c09e426de9703016f1b7c177b0df10c0b7cf3f33c9",
          "completed_at": "2026-07-25T06:38:18Z"
        },
        {
          "id": "services",
          "action": "services.audit",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-25T06:38:19Z",
          "output": {
            "status": "ok",
            "summary": {
              "critical": 0,
              "high": 0,
              "medium": 0,
              "low": 0
            },
            "findings": []
          },
          "output_hash": "13dcc58bd528f3efa3e6e0fa0853a6eedc376f1f3685fbd4869cbb2b60382ee3",
          "completed_at": "2026-07-25T06:38:19Z"
        },
        {
          "id": "state",
          "action": "state.consistency",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-25T06:38:19Z",
          "output": {
            "status": "ok",
            "repo_root": "D:\\Projects\\prd-plugin",
            "summary": {
              "errors": 0,
              "warnings": 0,
              "infos": 1
            },
            "findings": [
              {
                "id": "CONS-INFO-001",
                "severity": "info",
                "path": "docs/evidence/EV-200.md",
                "summary": "File references 2 canonical IDs across 2 prefix(es); treated as a positive signal of extra work.",
                "referenced_prefixes": [
                  "CHG",
                  "TRK"
                ],
                "referenced_id_count": 2,
                "required_action": "No action required; this is an informational signal."
              }
            ]
          },
          "output_hash": "9963110856ca8182da0dfdbb22f6960618b55dbc121be0dce0066a7c7a389b10",
          "completed_at": "2026-07-25T06:38:20Z"
        },
        {
          "id": "status",
          "action": "state.query",
          "status": "completed",
          "resolved_input_hash": "a15231a2142a2a9a85355a8b9cbbccffe01a9c9c2c2fd8c2bc2987cdc481564a",
          "started_at": "2026-07-25T06:38:20Z",
          "output": {
            "repo_root": "D:\\Projects\\prd-plugin",
            "autonomy_level": "autonomous",
            "reasoning_guard": {
              "mode": "report",
              "categories": {
                "evidence_follow_through": "inherit",
                "causal_claims": "inherit",
                "permanent_mutations": "inherit",
                "completion_claims": "inherit"
              },
              "effective_modes": {
                "evidence_follow_through": "report",
                "causal_claims": "report",
                "permanent_mutations": "report",
                "completion_claims": "report"
              },
              "report_available": true,
              "coverage": {
                "host": "codex",
                "level": "full",
                "missing": [],
                "observed": [
                  "visible hook events",
                  "visible reasoning summaries",
                  "tool inputs",
                  "tool results"
                ]
              },
              "summary": {
                "blocked": 0,
                "deferred": 0,
                "open": 2,
                "violations": 5
              },
              "latency": {
                "samples_ms": [
                  10.498,
                  9.81,
                  10.458,
                  11.39,
                  11.064,
                  10.948,
                  11.44,
                  9.249,
                  10.18,
                  9.926,
                  10.215,
                  9.138,
                  10.539,
                  11.935,
                  12.641,
                  10.191,
                  11.496,
                  9.197,
                  10.186,
                  10.218,
                  11.055,
                  9.519,
                  12.025,
                  9.459,
                  14.009,
                  10.738,
                  12.154,
                  11.834,
                  13.315,
                  9.646,
                  11.825,
                  11.359,
                  31.574,
                  22.211,
                  22.025,
                  36.534,
                  25.49,
                  25.635,
                  28.358,
                  27.595,
                  23.305,
                  25.772,
                  23.888,
                  23.276,
                  27.523,
                  23.279,
                  23.058,
                  28.491,
                  22.448,
                  27.29,
                  21.57,
                  22.871,
                  23.208,
                  10.757,
                  9.16,
                  23.622,
                  24.532,
                  28.29,
                  23.683,
                  30.106,
                  22.439,
                  27.133,
                  23.359,
                  23.647,
                  24.397,
                  25.932,
                  23.681,
                  28.938,
                  24.911,
                  23.082,
                  22.462,
                  25.99,
                  24.072,
                  25.528,
                  25.488,
                  23.239,
                  24.917,
                  22.57,
                  22.418,
                  22.198,
                  23.148,
                  24.051,
                  25.218,
                  32.102,
                  24.36,
                  30.297,
                  26.726,
                  24.654,
                  25.988,
                  30.781,
                  24.314,
                  28.387,
                  24.065,
                  34.064,
                  26.722,
                  25.637,
                  23.948,
                  35.993,
                  24.085,
                  28.621,
                  22.908,
                  26.647,
                  24.105,
                  29.609,
                  22.82,
                  24.973,
                  24.555,
                  28.125,
                  24.265,
                  27.384,
                  23.026,
                  23.688,
                  24.172,
                  24.535,
                  22.382,
                  24.966,
                  23.587,
                  21.971,
                  22.358,
                  23.599,
                  25.652,
                  23.722,
                  23.81,
                  25.011,
                  23.952,
                  24.723,
                  23.936,
                  21.948
                ],
                "p50_ms": 23.681,
                "p95_ms": 30.297
              },
              "classification": {
                "candidates": 0,
                "created": 0,
                "ignored": 38,
                "reconciled": 0,
                "summaries_seen": 94,
                "uncertain": 56
              },
              "clearance": {
                "active_blocking_diagnostics": [],
                "coverage": {
                  "host": "codex",
                  "level": "full"
                },
                "deferred_blocking_obligations": [],
                "deferred_count": 0,
                "issued_at": "2026-07-25T06:38:18.178166Z",
                "limitations": [
                  "2 low-confidence inferred observations remain non-blocking.",
                  "56 visible active summaries could not be classified confidently."
                ],
                "mode": "report",
                "open_blocking_obligations": [],
                "report_digest": "6d30c2e23837119042af9b6c68ececfcf71ac15fe5182729de9dcf76b439f3a6",
                "status": "conditional"
              }
            },
            "requests_by_status": {
              "accepted": 2,
              "deferred": 1,
              "implemented": 144,
              "in_review": 2,
              "proposed": 4,
              "rejected": 3
            },
            "active_tracking": [
              "TRK-160"
            ],
            "tracking_branches": [],
            "tracking_branch_counts": {},
            "tracking_branch_errors": [],
            "open_health": [
              "HLT-020",
              "HLT-021",
              "HLT-022",
              "HLT-023"
            ],
            "stale_count": 0,
            "skill_usage": {
              "project-llm-wiki": 2,
              "project-decision-policy": 1,
              "project-request-intake": 1,
              "project-test-driven-implementation": 1,
              "project-verification-before-completion": 1,
              "artifact-design": 1
            },
            "wiki_backfill_pending": false,
            "wiki_ingest_drift": null,
            "version_update": {
              "host_plugin": {
                "installed": "0.16.46",
                "latest": "0.16.58",
                "action": "the user plugin install is on 0.16.46 but 0.16.58 is published. Run `claude plugin update prd-plugin@prd-plugin` and restart the host to apply it."
              }
            }
          },
          "output_hash": "bc423af82297809c06baa20fbbf62aaf917d4313bf50c23c993928777eefe9f1",
          "completed_at": "2026-07-25T06:38:20Z"
        },
        {
          "id": "substrate",
          "action": "substrate.preflight",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-25T06:38:20Z",
          "output": {
            "status": "disabled",
            "services": {
              "status": "ok",
              "summary": {
                "critical": 0,
                "high": 0,
                "medium": 0,
                "low": 0
              },
              "findings": []
            },
            "policy": {
              "configured": {
                "enabled": false,
                "mode": "off",
                "capabilities": [
                  "records",
                  "graph",
                  "events"
                ],
                "contract_version": 2,
                "require_source_refs": true,
                "endpoint": "http://127.0.0.1:47124",
                "manual_url": "http://127.0.0.1:47124/utcp.json",
                "knowledge_browse_url": "http://127.0.0.1:5276",
                "auth_env": "AI_COLLAB_API_KEY",
                "timeout_seconds": 5,
                "max_result_bytes": 1048576,
                "cache_ttl_seconds": 60,
                "fallback": "local",
                "automation": {
                  "discovery_on_session_start": true,
                  "knowledge_recall": true,
                  "memory_recall": true,
                  "context_enrichment": true,
                  "notices_on_session_start": false,
                  "goals_sync": false,
                  "telemetry_on_maintenance": false,
                  "reporting_dispatch": true,
                  "judgment_dispatch": true,
                  "verification_execution": true
                }
              },
              "active": false,
              "effective_mode": "off",
              "effective_capabilities": []
            }
          },
          "output_hash": "a6df426290b4549a59eecaa0519ead9bcc50b7fcb25bd2185ff6047960f19ccb",
          "completed_at": "2026-07-25T06:38:20Z"
        },
        {
          "id": "notices",
          "action": "substrate.notices",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-25T06:38:20Z",
          "output": {
            "status": "disabled"
          },
          "output_hash": "38b904a1cf83df048360fb2480571b749fd98d57e11f1afdffb5a74a78166fea",
          "completed_at": "2026-07-25T06:38:20Z"
        },
        {
          "id": "goals",
          "action": "substrate.goals",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-25T06:38:20Z",
          "output": {
            "status": "disabled",
            "created": 0,
            "observed": 0,
            "results": []
          },
          "output_hash": "cdfd4de44a28140e686159f34f7b47975954c67e1d1efcef666e985acb136ed8",
          "completed_at": "2026-07-25T06:38:21Z"
        }
      ],
      "completed_at": "2026-07-25T06:38:21Z"
    },
    {
      "id": "WFR-437",
      "schema_version": "1.0",
      "workflow_id": "request.intake",
      "workflow_version": 1,
      "definition_hash": "b61272f54c5d4778a27afe601feaae39057f75fac2c289858b6caf5f3b2a4fbe",
      "plan_hash": "47c482052582ca482fc5f4ae4fea56d1013ab421304dfc927454fd5e0ba63866",
      "input_hash": "f991e8788f788376af37bc8afbb9bcf632d44eef95dd3a95d2a08be4b110c094",
      "inputs": {
        "summary": "Add configurable ordered Reason Guard historical summary backfill: live-only, last X summaries, or full session",
        "request_type": "change",
        "severity": "medium",
        "scope": "upstream",
        "rationale": "The current Codex tail recovery returns only the newest visible reasoning summary and has no per-summary cursor or digest, so it cannot process missed history exactly once and its full coverage label does not mean historically complete.",
        "affected_areas": [
          ".prd_plugin/hooks/prd_reason_guard.py",
          "templates/repo-skeleton/.prd_plugin/hooks/prd_reason_guard.py",
          ".prd_plugin/config.json",
          "templates/config.json",
          "scripts/prd_config.py",
          "scripts/prd_status.py",
          "scripts/prd_ui_export.py",
          "tests/test_reason_guard.py",
          "tests/test_prd_ui_export.py",
          "docs/REASONING-GUARD.md",
          "wiki/hooks/reasoning-guard.md"
        ],
        "expected_behavior": "Operators can select live-only, a positive last-X backfill limit, or full historical backfill. Unseen visible summaries are processed oldest-to-newest exactly once with bounded private-data handling, truthful live versus historical coverage, aggregate telemetry, and documented latency and storage effects."
      },
      "idempotency_key": "codex-reason-guard-backfill-intake-20260725",
      "status": "completed",
      "attempt": 1,
      "created_at": "2026-07-25T06:42:05Z",
      "updated_at": "2026-07-25T06:42:06Z",
      "receipts": [
        {
          "step_id": "create",
          "action": "state.mutate",
          "input_hash": "dde0b651c46cc49d4883c0af66dd80bbde71e265d9496667b168d82e38e1e2ba",
          "output_hash": "0123cf124eeff08d0dd9072772f85e138f91904647dda2a8abd560117120642f",
          "completed_at": "2026-07-25T06:42:06Z"
        },
        {
          "step_id": "confirm",
          "action": "state.query",
          "input_hash": "ef6aa4505bee9efc38b0cb41394d68d976a2aa487d8c0d1cbaf3c9b92fd7c7e4",
          "output_hash": "ff8e60809daf553e0980d537658fbe3d6c130fc068422a61cb6526b5beb736ca",
          "completed_at": "2026-07-25T06:42:06Z"
        }
      ],
      "steps": [
        {
          "id": "create",
          "action": "state.mutate",
          "status": "completed",
          "resolved_input_hash": "dde0b651c46cc49d4883c0af66dd80bbde71e265d9496667b168d82e38e1e2ba",
          "started_at": "2026-07-25T06:42:05Z",
          "execution_token": "16309f3d0b6159d672b6c44442e1c5e963694e16a9a8705a43b208e58bc9f078",
          "output": {
            "id": "REQ-175",
            "status": "proposed"
          },
          "output_hash": "0123cf124eeff08d0dd9072772f85e138f91904647dda2a8abd560117120642f",
          "completed_at": "2026-07-25T06:42:06Z"
        },
        {
          "id": "confirm",
          "action": "state.query",
          "status": "completed",
          "resolved_input_hash": "ef6aa4505bee9efc38b0cb41394d68d976a2aa487d8c0d1cbaf3c9b92fd7c7e4",
          "started_at": "2026-07-25T06:42:06Z",
          "output": {
            "kind": "REQ",
            "record": {
              "id": "REQ-175",
              "status": "proposed",
              "request_type": "change",
              "scope": "upstream",
              "visibility": "repo",
              "summary": "Add configurable ordered Reason Guard historical summary backfill: live-only, last X summaries, or full session",
              "severity": "medium",
              "requested_by_agent": "AGENT-MCP",
              "created_at": "2026-07-25",
              "rationale": "The current Codex tail recovery returns only the newest visible reasoning summary and has no per-summary cursor or digest, so it cannot process missed history exactly once and its full coverage label does not mean historically complete.",
              "affected_areas": [
                ".prd_plugin/hooks/prd_reason_guard.py",
                "templates/repo-skeleton/.prd_plugin/hooks/prd_reason_guard.py",
                ".prd_plugin/config.json",
                "templates/config.json",
                "scripts/prd_config.py",
                "scripts/prd_status.py",
                "scripts/prd_ui_export.py",
                "tests/test_reason_guard.py",
                "tests/test_prd_ui_export.py",
                "docs/REASONING-GUARD.md",
                "wiki/hooks/reasoning-guard.md"
              ],
              "expected_behavior": "Operators can select live-only, a positive last-X backfill limit, or full historical backfill. Unseen visible summaries are processed oldest-to-newest exactly once with bounded private-data handling, truthful live versus historical coverage, aggregate telemetry, and documented latency and storage effects."
            }
          },
          "output_hash": "ff8e60809daf553e0980d537658fbe3d6c130fc068422a61cb6526b5beb736ca",
          "completed_at": "2026-07-25T06:42:06Z"
        }
      ],
      "completed_at": "2026-07-25T06:42:06Z"
    },
    {
      "id": "WFR-438",
      "schema_version": "1.0",
      "workflow_id": "engineering.debug",
      "workflow_version": 1,
      "definition_hash": "b32f3f2fbbbd7474e05e983730ae4143048466f42364e34d7391312132c2dbf8",
      "plan_hash": "687f4acf679ed17acbae465a5c4fa50782bb31fa514acbc270fa6fa86104c135",
      "input_hash": "4d9cd42ba7c4f6f71cbd93f0a0b4f881d98675e1ade10f34a9384472506dfe12",
      "inputs": {
        "instructions": "Diagnose why Codex Reason Guard only recovers the newest visible reasoning summary, why repeated hook events can reclassify it, and what smallest state/config contract enables live-only, last-X, and full historical backfill with ordered exactly-once processing and truthful coverage.",
        "source_refs": [
          ".prd_plugin/hooks/prd_reason_guard.py",
          "tests/test_reason_guard.py",
          "docs/REASONING-GUARD.md",
          "wiki/hooks/reasoning-guard.md",
          ".prd_plugin/config.json"
        ]
      },
      "idempotency_key": "codex-reason-guard-backfill-debug-20260725",
      "status": "completed",
      "attempt": 1,
      "created_at": "2026-07-25T06:43:04Z",
      "updated_at": "2026-07-25T06:45:55Z",
      "receipts": [
        {
          "step_id": "git",
          "action": "git.status",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "47e26e7162574c7af158464a3e51c1bd4d7de6bbfb9718c7aebfa17411326ed4",
          "completed_at": "2026-07-25T06:43:05Z"
        },
        {
          "step_id": "state",
          "action": "state.consistency",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "9963110856ca8182da0dfdbb22f6960618b55dbc121be0dce0066a7c7a389b10",
          "completed_at": "2026-07-25T06:43:05Z"
        },
        {
          "step_id": "context",
          "action": "substrate.enrich",
          "input_hash": "e68ac0d8683be91a7c1f3de997e3ec8a97d02ee2e524fd432522a917730fa372",
          "output_hash": "b2a7859b871ca22e6ac1ea03cb05c4ca95cce280cfb91dd3ce8992361e260422",
          "completed_at": "2026-07-25T06:43:06Z"
        },
        {
          "step_id": "diagnosis",
          "action": "judgment.request",
          "input_hash": "f11ee910d0731b594b2a9ff9d5b0c583aff01b256bc379f66528929f94ac80c9",
          "output_hash": "c366334e7e0087356fff6b392377d936bf43df681f7945b978028905d56d55f7",
          "request_hash": "33139d3c5884f7471b9b77c9ea3427d0eb5aeda1ff52845e9b04a5002072d54b",
          "completed_at": "2026-07-25T06:45:55Z"
        }
      ],
      "steps": [
        {
          "id": "git",
          "action": "git.status",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-25T06:43:05Z",
          "output": {
            "clean": false,
            "changed_files": [
              ".prd_plugin/ids/registry.json",
              ".prd_plugin/state/requests.json",
              ".prd_plugin/state/tracking.json",
              ".prd_plugin/state/workflow-runs.json"
            ]
          },
          "output_hash": "47e26e7162574c7af158464a3e51c1bd4d7de6bbfb9718c7aebfa17411326ed4",
          "completed_at": "2026-07-25T06:43:05Z"
        },
        {
          "id": "state",
          "action": "state.consistency",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-25T06:43:05Z",
          "output": {
            "status": "ok",
            "repo_root": "D:\\Projects\\prd-plugin",
            "summary": {
              "errors": 0,
              "warnings": 0,
              "infos": 1
            },
            "findings": [
              {
                "id": "CONS-INFO-001",
                "severity": "info",
                "path": "docs/evidence/EV-200.md",
                "summary": "File references 2 canonical IDs across 2 prefix(es); treated as a positive signal of extra work.",
                "referenced_prefixes": [
                  "CHG",
                  "TRK"
                ],
                "referenced_id_count": 2,
                "required_action": "No action required; this is an informational signal."
              }
            ]
          },
          "output_hash": "9963110856ca8182da0dfdbb22f6960618b55dbc121be0dce0066a7c7a389b10",
          "completed_at": "2026-07-25T06:43:05Z"
        },
        {
          "id": "context",
          "action": "substrate.enrich",
          "status": "completed",
          "resolved_input_hash": "e68ac0d8683be91a7c1f3de997e3ec8a97d02ee2e524fd432522a917730fa372",
          "started_at": "2026-07-25T06:43:06Z",
          "output": {
            "status": "disabled",
            "results": [],
            "local_source_refs": [
              ".prd_plugin/hooks/prd_reason_guard.py",
              "tests/test_reason_guard.py",
              "docs/REASONING-GUARD.md",
              "wiki/hooks/reasoning-guard.md",
              ".prd_plugin/config.json"
            ]
          },
          "output_hash": "b2a7859b871ca22e6ac1ea03cb05c4ca95cce280cfb91dd3ce8992361e260422",
          "completed_at": "2026-07-25T06:43:06Z"
        },
        {
          "id": "diagnosis",
          "action": "judgment.request",
          "status": "completed",
          "resolved_input_hash": "f11ee910d0731b594b2a9ff9d5b0c583aff01b256bc379f66528929f94ac80c9",
          "started_at": "2026-07-25T06:43:06Z",
          "judgment_request": {
            "contract_version": 1,
            "run_id": "WFR-438",
            "step_id": "diagnosis",
            "task": "debugging",
            "instructions": "Diagnose why Codex Reason Guard only recovers the newest visible reasoning summary, why repeated hook events can reclassify it, and what smallest state/config contract enables live-only, last-X, and full historical backfill with ordered exactly-once processing and truthful coverage.",
            "source_refs": [
              ".prd_plugin/hooks/prd_reason_guard.py",
              "tests/test_reason_guard.py",
              "docs/REASONING-GUARD.md",
              "wiki/hooks/reasoning-guard.md",
              ".prd_plugin/config.json"
            ],
            "source_hashes": {
              ".prd_plugin/hooks/prd_reason_guard.py": "c605edb5a276bda1f62b888a371dcc750a9faa0596a92d3885f7dc906302750e",
              "tests/test_reason_guard.py": "c64bf77af303d5781ca656a2310914b2a84ab787fa2f7eaf4574f8897f507348",
              "docs/REASONING-GUARD.md": "b0934303b4218ee0eac543a628bc4f76c1a5b80ac2fe3e69fced1601e6556001",
              "wiki/hooks/reasoning-guard.md": "9551e3dfc643280b3d07142bced535f1a31f4c347237423c640e40085ce22e16",
              ".prd_plugin/config.json": "9e0c2ba7e711c733fd5b523362bc928d9f14dc1cb1a8805ad75c6b9f8be12312"
            },
            "result_schema": {
              "type": "object",
              "required": [
                "summary",
                "hypotheses",
                "source_refs"
              ],
              "properties": {
                "summary": {
                  "type": "string"
                },
                "hypotheses": {
                  "type": "array",
                  "items": {
                    "type": "object"
                  }
                },
                "source_refs": {
                  "type": "array",
                  "items": {
                    "type": "string"
                  }
                }
              }
            },
            "executor": "ai-collab",
            "profile": "fast-capable",
            "constraints": {
              "no_project_state_writes": true,
              "require_source_refs": true
            },
            "request_hash": "33139d3c5884f7471b9b77c9ea3427d0eb5aeda1ff52845e9b04a5002072d54b"
          },
          "output": {
            "summary": "The behavior is intentional in the current implementation, not a failed backfill: the Codex reader scans only a bounded tail in reverse and returns at the first visible summary, enrichment exposes one scalar reasoning_summary, event deduplication is keyed independently, and coverage upgrades after observing any summary. There is no historical cursor or per-summary identity. The smallest complete fix is an append-only rollout cursor plus bounded recent summary digests, with an initial mode selecting live-only, recent last-X, or full scan; thereafter all modes consume new complete JSONL records from the cursor in order.",
            "hypotheses": [
              {
                "claim": "Only the newest historical summary is recovered because _codex_visible_reasoning_summary reverses the bounded tail and returns immediately on the first visible item.",
                "evidence": ".prd_plugin/hooks/prd_reason_guard.py:_codex_visible_reasoning_summary",
                "confidence": "high"
              },
              {
                "claim": "A latest summary can be counted again on later hook events because summary identity is not tracked separately; processed_event_digests deduplicate events, not summaries.",
                "evidence": ".prd_plugin/hooks/prd_reason_guard.py:_event_digest and process_event",
                "confidence": "high"
              },
              {
                "claim": "Coverage says full after any reasoning_summary because _coverage stores only whether the visible-summary signal has ever been observed, not whether history was scanned completely.",
                "evidence": ".prd_plugin/hooks/prd_reason_guard.py:_coverage",
                "confidence": "high"
              },
              {
                "claim": "A cursor-based JSONL reader is sufficient; embeddings, a database, and a separate ingestion service are unnecessary for ordered exactly-once delivery within one append-only rollout.",
                "evidence": ".prd_plugin/hooks/prd_reason_guard.py:_trusted_codex_transcript_path and atomic local state contract",
                "confidence": "high"
              }
            ],
            "source_refs": [
              ".prd_plugin/hooks/prd_reason_guard.py",
              "tests/test_reason_guard.py",
              "docs/REASONING-GUARD.md",
              "wiki/hooks/reasoning-guard.md",
              ".prd_plugin/config.json"
            ]
          },
          "output_hash": "c366334e7e0087356fff6b392377d936bf43df681f7945b978028905d56d55f7",
          "completed_at": "2026-07-25T06:45:55Z",
          "judgment_result": {
            "request_hash": "33139d3c5884f7471b9b77c9ea3427d0eb5aeda1ff52845e9b04a5002072d54b",
            "executor": "ai-collab",
            "profile": "fast-capable"
          }
        }
      ],
      "completed_at": "2026-07-25T06:45:55Z"
    },
    {
      "id": "WFR-439",
      "schema_version": "1.0",
      "workflow_id": "engineering.code-review",
      "workflow_version": 1,
      "definition_hash": "ad3df68a0ff3c3ede35fe5266dcfbffbe7b1ba3e8ada5fc4b9012db9f451212f",
      "plan_hash": "dab97fa90f7c53163f7d4b88ef42c00d61e7215fbc0617342212756e9102473a",
      "input_hash": "ec4ae4ef4abf01a22f67195b59838c16c907bd0dd76aaa700766ad90f463759b",
      "inputs": {
        "base_ref": "main",
        "source_refs": [
          "REQ-175",
          "IMP-TASK-116",
          "IMP-VAL-102",
          ".prd_plugin/hooks/prd_reason_guard.py",
          "tests/test_reason_guard.py",
          "scripts/prd_config.py",
          "scripts/prd_status.py",
          "scripts/prd_ui_export.py",
          "docs/REASONING-GUARD.md"
        ]
      },
      "idempotency_key": "req-175-code-review-v1",
      "status": "completed",
      "attempt": 1,
      "created_at": "2026-07-25T07:15:09Z",
      "updated_at": "2026-07-25T07:17:05Z",
      "receipts": [
        {
          "step_id": "diff",
          "action": "git.diff_check",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "11c11db30f4b3f6c758722ba3e27eea08145b7d212f6a157451e364b48475280",
          "completed_at": "2026-07-25T07:15:09Z"
        },
        {
          "step_id": "verification",
          "action": "verification.plan",
          "input_hash": "9c8856776a7db6455fee675768cfc615a0fe2a04fb88b9a4fd8e3fce515eaf08",
          "output_hash": "7bb3a48b81b053e30ac56467b84e7a88fec37fe72543cc521a06487c817c62f6",
          "completed_at": "2026-07-25T07:15:10Z"
        },
        {
          "step_id": "context",
          "action": "substrate.enrich",
          "input_hash": "9d38d825f86bcef6d63406773357c8f2c475187310f763985123e2eb548f132b",
          "output_hash": "b46f151b5197988b1d402fe8b70090e6c928a6a5cb6aedd1594f14ff7675ea4c",
          "completed_at": "2026-07-25T07:15:10Z"
        },
        {
          "step_id": "review",
          "action": "judgment.request",
          "input_hash": "65fdc383a77806620734972de9fa1e161b174d5e154ddcceb08e6b4f764d3fc4",
          "output_hash": "012583ea8168a455063cf1b23c5e2a0c3b21ea70beac486eae50ab709130ae45",
          "request_hash": "cbbb3afe143e1fa82fd2521df9f5a827c120cfe1cd515fac8a8279a921d41838",
          "completed_at": "2026-07-25T07:17:05Z"
        }
      ],
      "steps": [
        {
          "id": "diff",
          "action": "git.diff_check",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-25T07:15:09Z",
          "output": {
            "passed": true
          },
          "output_hash": "11c11db30f4b3f6c758722ba3e27eea08145b7d212f6a157451e364b48475280",
          "completed_at": "2026-07-25T07:15:09Z"
        },
        {
          "id": "verification",
          "action": "verification.plan",
          "status": "completed",
          "resolved_input_hash": "9c8856776a7db6455fee675768cfc615a0fe2a04fb88b9a4fd8e3fce515eaf08",
          "started_at": "2026-07-25T07:15:09Z",
          "output": {
            "schema_version": "1.0",
            "contract_version": 1,
            "executor": "ai-collab",
            "changed_files": [
              ".claude-plugin/marketplace.json",
              ".claude-plugin/plugin.json",
              ".codex-plugin/plugin.json",
              ".opencode/plugin.json",
              ".prd_plugin/config.json",
              ".prd_plugin/hooks/prd_reason_guard.py",
              ".prd_plugin/ids/registry.json",
              ".prd_plugin/state/artifacts/implementation_plan/IMP-015.json",
              ".prd_plugin/state/project.json",
              ".prd_plugin/state/releases.json",
              ".prd_plugin/state/requests.json",
              ".prd_plugin/state/tracking.json",
              ".prd_plugin/state/workflow-runs.json",
              "docs/REASONING-GUARD.md",
              "index.js",
              "mcp/server.cjs",
              "package.json",
              "raw/hooks/2026-07-25-reason-guard-historical-backfill.md",
              "scripts/prd_config.py",
              "scripts/prd_status.py",
              "scripts/prd_ui_export.py",
              "skills-manifest.json",
              "templates/config.json",
              "templates/feature-skill-map.json",
              "templates/project.json",
              "templates/releases.json",
              "templates/repo-skeleton/.claude-plugin/plugin.json",
              "templates/repo-skeleton/.codex-plugin/plugin.json",
              "templates/repo-skeleton/.opencode/plugin.json",
              "templates/repo-skeleton/.prd_plugin/config.json",
              "templates/repo-skeleton/.prd_plugin/hooks/prd_reason_guard.py",
              "templates/repo-skeleton/.prd_plugin/state/project.json",
              "templates/repo-skeleton/.prd_plugin/templates/config.json",
              "templates/repo-skeleton/.prd_plugin/templates/project.json",
              "tests/test_config_toggles.py",
              "tests/test_prd_ui_export.py",
              "tests/test_reason_guard.py",
              "wiki/hooks/reasoning-guard.md",
              "wiki/index.md"
            ],
            "change_fingerprint": "879fad45dbba3c4a2d181644de927223d0f43a743d4a065be7994c4f94fee436",
            "policy": {
              "enabled": true,
              "executor": "ai-collab",
              "neighbor_limit": 12,
              "max_changed_files": 25,
              "fallback": "full",
              "full_suite_triggers": [
                "release",
                "core_change",
                "impact_unavailable",
                "impact_degraded",
                "unmapped_change"
              ],
              "core_paths": [
                "package.json",
                "package-lock.json",
                "pyproject.toml",
                "Cargo.toml",
                "go.mod",
                ".github/workflows/**"
              ],
              "test_patterns": [
                "tests/**",
                "test/**",
                "spec/**",
                "**/*.test.*",
                "**/*.spec.*",
                "test_*.py",
                "*_test.py",
                "*_test.go",
                "**/test_*.py",
                "**/*_test.py",
                "**/*_test.go"
              ],
              "max_selected_tests": 200,
              "execution_timeout_seconds": 600,
              "focused_commands": [],
              "full_commands": [],
              "allowed_executables": [
                "python",
                "python3",
                "py",
                "pytest",
                "npm",
                "npx",
                "node",
                "go",
                "cargo",
                "dotnet",
                "mvn",
                "gradle",
                "gradlew",
                "make"
              ]
            },
            "selection_rules": {
              "precedence": [
                "exact_changed",
                "explicit_test_ownership",
                "structural_dependencies",
                "predictive_impact"
              ],
              "require_all_changed_files_mapped": true,
              "widen_before_full": true,
              "predictive_signal_is_sufficient_alone": false
            },
            "fallback": {
              "strategy": "full",
              "conditions": [
                "release",
                "core_change",
                "impact_unavailable",
                "impact_degraded",
                "unmapped_change"
              ]
            },
            "strategy": "full",
            "reason": "core_change",
            "runtime_requests": {},
            "plan_hash": "e05b4b92d5c31bee112bb46e85ca46f1d2d8f6d2c1a49d031a02bdeb3d4c9c17"
          },
          "output_hash": "7bb3a48b81b053e30ac56467b84e7a88fec37fe72543cc521a06487c817c62f6",
          "completed_at": "2026-07-25T07:15:10Z"
        },
        {
          "id": "context",
          "action": "substrate.enrich",
          "status": "completed",
          "resolved_input_hash": "9d38d825f86bcef6d63406773357c8f2c475187310f763985123e2eb548f132b",
          "started_at": "2026-07-25T07:15:10Z",
          "output": {
            "status": "disabled",
            "results": [],
            "local_source_refs": [
              "REQ-175",
              "IMP-TASK-116",
              "IMP-VAL-102",
              ".prd_plugin/hooks/prd_reason_guard.py",
              "tests/test_reason_guard.py",
              "scripts/prd_config.py",
              "scripts/prd_status.py",
              "scripts/prd_ui_export.py",
              "docs/REASONING-GUARD.md"
            ]
          },
          "output_hash": "b46f151b5197988b1d402fe8b70090e6c928a6a5cb6aedd1594f14ff7675ea4c",
          "completed_at": "2026-07-25T07:15:10Z"
        },
        {
          "id": "review",
          "action": "judgment.request",
          "status": "completed",
          "resolved_input_hash": "65fdc383a77806620734972de9fa1e161b174d5e154ddcceb08e6b4f764d3fc4",
          "started_at": "2026-07-25T07:15:10Z",
          "judgment_request": {
            "contract_version": 1,
            "run_id": "WFR-439",
            "step_id": "review",
            "task": "code_review",
            "instructions": "Find material correctness, robustness, security, compatibility, or test gaps; do not restate mechanical facts.",
            "source_refs": [
              "REQ-175",
              "IMP-TASK-116",
              "IMP-VAL-102",
              ".prd_plugin/hooks/prd_reason_guard.py",
              "tests/test_reason_guard.py",
              "scripts/prd_config.py",
              "scripts/prd_status.py",
              "scripts/prd_ui_export.py",
              "docs/REASONING-GUARD.md"
            ],
            "source_hashes": {
              ".prd_plugin/hooks/prd_reason_guard.py": "c9839edded1aadfca6c999163185f9fb2c9091f5249809dd0504dec8162108c3",
              "tests/test_reason_guard.py": "6023a09dd6f6649a1b7e320345cb15e3322a4a633d709bb9a0cb0a67c845b2d0",
              "scripts/prd_config.py": "1c267aab08d9739471a302479aca71ac5bb25da39a067f825ccd6392b851911f",
              "scripts/prd_status.py": "df5e15e680b71d9136b79f81f8518bb80036d53b932120765bb9d6d8fd44187b",
              "scripts/prd_ui_export.py": "2b0438ff5882a308d8623a805dc9d9cf599a0c5bfe54a23890c2dc6e20ec5611",
              "docs/REASONING-GUARD.md": "78b85c046e3e03e17e00c076e06862b623485d417d12dd6e7b0645fec28a79be"
            },
            "result_schema": {
              "type": "object",
              "required": [
                "summary",
                "findings",
                "source_refs"
              ],
              "properties": {
                "summary": {
                  "type": "string"
                },
                "findings": {
                  "type": "array",
                  "items": {
                    "type": "object"
                  }
                },
                "source_refs": {
                  "type": "array",
                  "items": {
                    "type": "string"
                  }
                }
              }
            },
            "executor": "ai-collab",
            "profile": "fast-capable",
            "constraints": {
              "no_project_state_writes": true,
              "require_source_refs": true
            },
            "request_hash": "cbbb3afe143e1fa82fd2521df9f5a827c120cfe1cd515fac8a8279a921d41838"
          },
          "output": {
            "summary": "Two robustness gaps remain in the ingestion ledger before release.",
            "findings": [
              {
                "severity": "medium",
                "title": "Historical completeness is downgraded after a mode change",
                "detail": "historically_complete is assigned only from mode == full, even when the retained covered interval still begins at byte zero and all appended records remain complete. Switching from full to live/recent therefore reports less coverage than was actually proven.",
                "source_ref": ".prd_plugin/hooks/prd_reason_guard.py"
              },
              {
                "severity": "high",
                "title": "Same-path rollout replacement is not detected",
                "detail": "source_digest hashes only the trusted path and the invalidation check compares cursor with size. Replacing or rewriting the same path with equal-or-greater length can reuse offsets against different content and silently skip or mis-deduplicate summaries.",
                "source_ref": ".prd_plugin/hooks/prd_reason_guard.py"
              }
            ],
            "source_refs": [
              "REQ-175",
              "IMP-TASK-116",
              "IMP-VAL-102",
              ".prd_plugin/hooks/prd_reason_guard.py",
              "tests/test_reason_guard.py",
              "docs/REASONING-GUARD.md"
            ]
          },
          "output_hash": "012583ea8168a455063cf1b23c5e2a0c3b21ea70beac486eae50ab709130ae45",
          "completed_at": "2026-07-25T07:17:05Z",
          "judgment_result": {
            "request_hash": "cbbb3afe143e1fa82fd2521df9f5a827c120cfe1cd515fac8a8279a921d41838",
            "executor": "ai-collab",
            "profile": "fast-capable"
          }
        }
      ],
      "completed_at": "2026-07-25T07:17:05Z"
    },
    {
      "id": "WFR-440",
      "schema_version": "1.0",
      "workflow_id": "engineering.code-review",
      "workflow_version": 1,
      "definition_hash": "ad3df68a0ff3c3ede35fe5266dcfbffbe7b1ba3e8ada5fc4b9012db9f451212f",
      "plan_hash": "dab97fa90f7c53163f7d4b88ef42c00d61e7215fbc0617342212756e9102473a",
      "input_hash": "ec4ae4ef4abf01a22f67195b59838c16c907bd0dd76aaa700766ad90f463759b",
      "inputs": {
        "base_ref": "main",
        "source_refs": [
          "REQ-175",
          "IMP-TASK-116",
          "IMP-VAL-102",
          ".prd_plugin/hooks/prd_reason_guard.py",
          "tests/test_reason_guard.py",
          "scripts/prd_config.py",
          "scripts/prd_status.py",
          "scripts/prd_ui_export.py",
          "docs/REASONING-GUARD.md"
        ]
      },
      "idempotency_key": "req-175-code-review-v2",
      "status": "completed",
      "attempt": 1,
      "created_at": "2026-07-25T07:21:04Z",
      "updated_at": "2026-07-25T07:21:27Z",
      "receipts": [
        {
          "step_id": "diff",
          "action": "git.diff_check",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "11c11db30f4b3f6c758722ba3e27eea08145b7d212f6a157451e364b48475280",
          "completed_at": "2026-07-25T07:21:05Z"
        },
        {
          "step_id": "verification",
          "action": "verification.plan",
          "input_hash": "9c8856776a7db6455fee675768cfc615a0fe2a04fb88b9a4fd8e3fce515eaf08",
          "output_hash": "7bb3a48b81b053e30ac56467b84e7a88fec37fe72543cc521a06487c817c62f6",
          "completed_at": "2026-07-25T07:21:05Z"
        },
        {
          "step_id": "context",
          "action": "substrate.enrich",
          "input_hash": "9d38d825f86bcef6d63406773357c8f2c475187310f763985123e2eb548f132b",
          "output_hash": "b46f151b5197988b1d402fe8b70090e6c928a6a5cb6aedd1594f14ff7675ea4c",
          "completed_at": "2026-07-25T07:21:05Z"
        },
        {
          "step_id": "review",
          "action": "judgment.request",
          "input_hash": "65fdc383a77806620734972de9fa1e161b174d5e154ddcceb08e6b4f764d3fc4",
          "output_hash": "9c119e2da018976727f024b135ed26f33494b66bbf64af64b82bd2f90e21ddfd",
          "request_hash": "3941a5a9958c780cf8d5e6096da785880f9734880b31fdf0aa4507615ee22653",
          "completed_at": "2026-07-25T07:21:27Z"
        }
      ],
      "steps": [
        {
          "id": "diff",
          "action": "git.diff_check",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-25T07:21:05Z",
          "output": {
            "passed": true
          },
          "output_hash": "11c11db30f4b3f6c758722ba3e27eea08145b7d212f6a157451e364b48475280",
          "completed_at": "2026-07-25T07:21:05Z"
        },
        {
          "id": "verification",
          "action": "verification.plan",
          "status": "completed",
          "resolved_input_hash": "9c8856776a7db6455fee675768cfc615a0fe2a04fb88b9a4fd8e3fce515eaf08",
          "started_at": "2026-07-25T07:21:05Z",
          "output": {
            "schema_version": "1.0",
            "contract_version": 1,
            "executor": "ai-collab",
            "changed_files": [
              ".claude-plugin/marketplace.json",
              ".claude-plugin/plugin.json",
              ".codex-plugin/plugin.json",
              ".opencode/plugin.json",
              ".prd_plugin/config.json",
              ".prd_plugin/hooks/prd_reason_guard.py",
              ".prd_plugin/ids/registry.json",
              ".prd_plugin/state/artifacts/implementation_plan/IMP-015.json",
              ".prd_plugin/state/project.json",
              ".prd_plugin/state/releases.json",
              ".prd_plugin/state/requests.json",
              ".prd_plugin/state/tracking.json",
              ".prd_plugin/state/workflow-runs.json",
              "docs/REASONING-GUARD.md",
              "index.js",
              "mcp/server.cjs",
              "package.json",
              "raw/hooks/2026-07-25-reason-guard-historical-backfill.md",
              "scripts/prd_config.py",
              "scripts/prd_status.py",
              "scripts/prd_ui_export.py",
              "skills-manifest.json",
              "templates/config.json",
              "templates/feature-skill-map.json",
              "templates/project.json",
              "templates/releases.json",
              "templates/repo-skeleton/.claude-plugin/plugin.json",
              "templates/repo-skeleton/.codex-plugin/plugin.json",
              "templates/repo-skeleton/.opencode/plugin.json",
              "templates/repo-skeleton/.prd_plugin/config.json",
              "templates/repo-skeleton/.prd_plugin/hooks/prd_reason_guard.py",
              "templates/repo-skeleton/.prd_plugin/state/project.json",
              "templates/repo-skeleton/.prd_plugin/templates/config.json",
              "templates/repo-skeleton/.prd_plugin/templates/project.json",
              "tests/test_config_toggles.py",
              "tests/test_prd_ui_export.py",
              "tests/test_reason_guard.py",
              "wiki/hooks/reasoning-guard.md",
              "wiki/index.md"
            ],
            "change_fingerprint": "879fad45dbba3c4a2d181644de927223d0f43a743d4a065be7994c4f94fee436",
            "policy": {
              "enabled": true,
              "executor": "ai-collab",
              "neighbor_limit": 12,
              "max_changed_files": 25,
              "fallback": "full",
              "full_suite_triggers": [
                "release",
                "core_change",
                "impact_unavailable",
                "impact_degraded",
                "unmapped_change"
              ],
              "core_paths": [
                "package.json",
                "package-lock.json",
                "pyproject.toml",
                "Cargo.toml",
                "go.mod",
                ".github/workflows/**"
              ],
              "test_patterns": [
                "tests/**",
                "test/**",
                "spec/**",
                "**/*.test.*",
                "**/*.spec.*",
                "test_*.py",
                "*_test.py",
                "*_test.go",
                "**/test_*.py",
                "**/*_test.py",
                "**/*_test.go"
              ],
              "max_selected_tests": 200,
              "execution_timeout_seconds": 600,
              "focused_commands": [],
              "full_commands": [],
              "allowed_executables": [
                "python",
                "python3",
                "py",
                "pytest",
                "npm",
                "npx",
                "node",
                "go",
                "cargo",
                "dotnet",
                "mvn",
                "gradle",
                "gradlew",
                "make"
              ]
            },
            "selection_rules": {
              "precedence": [
                "exact_changed",
                "explicit_test_ownership",
                "structural_dependencies",
                "predictive_impact"
              ],
              "require_all_changed_files_mapped": true,
              "widen_before_full": true,
              "predictive_signal_is_sufficient_alone": false
            },
            "fallback": {
              "strategy": "full",
              "conditions": [
                "release",
                "core_change",
                "impact_unavailable",
                "impact_degraded",
                "unmapped_change"
              ]
            },
            "strategy": "full",
            "reason": "core_change",
            "runtime_requests": {},
            "plan_hash": "e05b4b92d5c31bee112bb46e85ca46f1d2d8f6d2c1a49d031a02bdeb3d4c9c17"
          },
          "output_hash": "7bb3a48b81b053e30ac56467b84e7a88fec37fe72543cc521a06487c817c62f6",
          "completed_at": "2026-07-25T07:21:05Z"
        },
        {
          "id": "context",
          "action": "substrate.enrich",
          "status": "completed",
          "resolved_input_hash": "9d38d825f86bcef6d63406773357c8f2c475187310f763985123e2eb548f132b",
          "started_at": "2026-07-25T07:21:05Z",
          "output": {
            "status": "disabled",
            "results": [],
            "local_source_refs": [
              "REQ-175",
              "IMP-TASK-116",
              "IMP-VAL-102",
              ".prd_plugin/hooks/prd_reason_guard.py",
              "tests/test_reason_guard.py",
              "scripts/prd_config.py",
              "scripts/prd_status.py",
              "scripts/prd_ui_export.py",
              "docs/REASONING-GUARD.md"
            ]
          },
          "output_hash": "b46f151b5197988b1d402fe8b70090e6c928a6a5cb6aedd1594f14ff7675ea4c",
          "completed_at": "2026-07-25T07:21:05Z"
        },
        {
          "id": "review",
          "action": "judgment.request",
          "status": "completed",
          "resolved_input_hash": "65fdc383a77806620734972de9fa1e161b174d5e154ddcceb08e6b4f764d3fc4",
          "started_at": "2026-07-25T07:21:06Z",
          "judgment_request": {
            "contract_version": 1,
            "run_id": "WFR-440",
            "step_id": "review",
            "task": "code_review",
            "instructions": "Find material correctness, robustness, security, compatibility, or test gaps; do not restate mechanical facts.",
            "source_refs": [
              "REQ-175",
              "IMP-TASK-116",
              "IMP-VAL-102",
              ".prd_plugin/hooks/prd_reason_guard.py",
              "tests/test_reason_guard.py",
              "scripts/prd_config.py",
              "scripts/prd_status.py",
              "scripts/prd_ui_export.py",
              "docs/REASONING-GUARD.md"
            ],
            "source_hashes": {
              ".prd_plugin/hooks/prd_reason_guard.py": "6c0c8f3922f7b8c552fbb7b3c8ea6fa56cf7d0e6c70ff5252decf3fb44125b5a",
              "tests/test_reason_guard.py": "f2ebb6d60ed9343eb2dc7e9f21308ae48162655a69ff40a00275749aada6625c",
              "scripts/prd_config.py": "1c267aab08d9739471a302479aca71ac5bb25da39a067f825ccd6392b851911f",
              "scripts/prd_status.py": "df5e15e680b71d9136b79f81f8518bb80036d53b932120765bb9d6d8fd44187b",
              "scripts/prd_ui_export.py": "2b0438ff5882a308d8623a805dc9d9cf599a0c5bfe54a23890c2dc6e20ec5611",
              "docs/REASONING-GUARD.md": "b955d626600744e4a879724d0dab6763209cefe909d1e0e014bc7d17c4f9cfd3"
            },
            "result_schema": {
              "type": "object",
              "required": [
                "summary",
                "findings",
                "source_refs"
              ],
              "properties": {
                "summary": {
                  "type": "string"
                },
                "findings": {
                  "type": "array",
                  "items": {
                    "type": "object"
                  }
                },
                "source_refs": {
                  "type": "array",
                  "items": {
                    "type": "string"
                  }
                }
              }
            },
            "executor": "ai-collab",
            "profile": "fast-capable",
            "constraints": {
              "no_project_state_writes": true,
              "require_source_refs": true
            },
            "request_hash": "3941a5a9958c780cf8d5e6096da785880f9734880b31fdf0aa4507615ee22653"
          },
          "output": {
            "summary": "Re-review found no remaining material correctness, robustness, security, compatibility, or test gap in the bounded backfill slice.",
            "findings": [],
            "source_refs": [
              "REQ-175",
              "IMP-TASK-116",
              "IMP-VAL-102",
              ".prd_plugin/hooks/prd_reason_guard.py",
              "tests/test_reason_guard.py",
              "scripts/prd_config.py",
              "scripts/prd_status.py",
              "scripts/prd_ui_export.py",
              "docs/REASONING-GUARD.md"
            ]
          },
          "output_hash": "9c119e2da018976727f024b135ed26f33494b66bbf64af64b82bd2f90e21ddfd",
          "completed_at": "2026-07-25T07:21:27Z",
          "judgment_result": {
            "request_hash": "3941a5a9958c780cf8d5e6096da785880f9734880b31fdf0aa4507615ee22653",
            "executor": "ai-collab",
            "profile": "fast-capable"
          }
        }
      ],
      "completed_at": "2026-07-25T07:21:27Z"
    },
    {
      "id": "WFR-441",
      "schema_version": "1.0",
      "workflow_id": "hub.release",
      "workflow_version": 1,
      "definition_hash": "ab6ae2afcb0128db8d994b6b397e543c7490017bd3d1b15309079edc6be94d9a",
      "plan_hash": "02bcb9cb71ca5641cc12e6270fee67758c0051b183e4204137993cd57b89a7bd",
      "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
      "inputs": {},
      "idempotency_key": "req-175-release-0.16.59-v1",
      "status": "failed",
      "attempt": 1,
      "created_at": "2026-07-25T07:21:42Z",
      "updated_at": "2026-07-25T07:23:34Z",
      "receipts": [
        {
          "step_id": "diff",
          "action": "git.diff_check",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "11c11db30f4b3f6c758722ba3e27eea08145b7d212f6a157451e364b48475280",
          "completed_at": "2026-07-25T07:21:42Z"
        },
        {
          "step_id": "config",
          "action": "config.audit",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "9cbf27cbac0de8a8eb0ed2dd07eae4f75908186aa645194b551c48f999ebb1b5",
          "completed_at": "2026-07-25T07:21:42Z"
        },
        {
          "step_id": "state",
          "action": "state.consistency",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "9963110856ca8182da0dfdbb22f6960618b55dbc121be0dce0066a7c7a389b10",
          "completed_at": "2026-07-25T07:21:43Z"
        },
        {
          "step_id": "workflow_audit",
          "action": "process.fixed",
          "input_hash": "edf19b269a54d72753f1abc2b8ffcb810c2b7bc377cee7e1698c939f17e0be94",
          "output_hash": "231b43ed70e09c4e7cbcda1094b00e0274dd4a22ff8324da2eb907f705c1316a",
          "completed_at": "2026-07-25T07:21:44Z"
        },
        {
          "step_id": "substrate_audit",
          "action": "process.fixed",
          "input_hash": "4998f71d2d3f6ac7dd50e10d37f60ae32d54898949950e484da9de113e18a979",
          "output_hash": "4176fd7e9d2d33bd61e5fd6bb8d392a63eaa5b2cb65b750eeb348b9dd55fe220",
          "completed_at": "2026-07-25T07:21:44Z"
        }
      ],
      "steps": [
        {
          "id": "diff",
          "action": "git.diff_check",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-25T07:21:42Z",
          "output": {
            "passed": true
          },
          "output_hash": "11c11db30f4b3f6c758722ba3e27eea08145b7d212f6a157451e364b48475280",
          "completed_at": "2026-07-25T07:21:42Z"
        },
        {
          "id": "config",
          "action": "config.audit",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-25T07:21:42Z",
          "output": {
            "status": "ok",
            "summary": {
              "settings": 216,
              "mutable": 206,
              "read_only_or_managed": 10,
              "unclassified": 0,
              "unknown": 0,
              "invalid": 0,
              "missing_using_defaults": 0
            },
            "unclassified_keys": [],
            "unknown_keys": [],
            "invalid_values": [],
            "missing_using_defaults": []
          },
          "output_hash": "9cbf27cbac0de8a8eb0ed2dd07eae4f75908186aa645194b551c48f999ebb1b5",
          "completed_at": "2026-07-25T07:21:42Z"
        },
        {
          "id": "state",
          "action": "state.consistency",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-25T07:21:43Z",
          "output": {
            "status": "ok",
            "repo_root": "D:\\Projects\\prd-plugin",
            "summary": {
              "errors": 0,
              "warnings": 0,
              "infos": 1
            },
            "findings": [
              {
                "id": "CONS-INFO-001",
                "severity": "info",
                "path": "docs/evidence/EV-200.md",
                "summary": "File references 2 canonical IDs across 2 prefix(es); treated as a positive signal of extra work.",
                "referenced_prefixes": [
                  "CHG",
                  "TRK"
                ],
                "referenced_id_count": 2,
                "required_action": "No action required; this is an informational signal."
              }
            ]
          },
          "output_hash": "9963110856ca8182da0dfdbb22f6960618b55dbc121be0dce0066a7c7a389b10",
          "completed_at": "2026-07-25T07:21:43Z"
        },
        {
          "id": "workflow_audit",
          "action": "process.fixed",
          "status": "completed",
          "resolved_input_hash": "edf19b269a54d72753f1abc2b8ffcb810c2b7bc377cee7e1698c939f17e0be94",
          "started_at": "2026-07-25T07:21:43Z",
          "output": {
            "operation": "workflow_chml_audit",
            "command": [
              "python",
              "scripts/workflow_chml_audit.py",
              "--repo-root",
              ".",
              "--format",
              "json"
            ],
            "exit_code": 0,
            "stdout": "{\n  \"status\": \"ok\",\n  \"repo_root\": \"D:\\\\Projects\\\\prd-plugin\",\n  \"summary\": {\n    \"critical\": 0,\n    \"high\": 0,\n    \"medium\": 0,\n    \"low\": 0\n  },\n  \"findings\": []\n}\n",
            "stderr": ""
          },
          "output_hash": "231b43ed70e09c4e7cbcda1094b00e0274dd4a22ff8324da2eb907f705c1316a",
          "completed_at": "2026-07-25T07:21:44Z"
        },
        {
          "id": "substrate_audit",
          "action": "process.fixed",
          "status": "completed",
          "resolved_input_hash": "4998f71d2d3f6ac7dd50e10d37f60ae32d54898949950e484da9de113e18a979",
          "started_at": "2026-07-25T07:21:44Z",
          "output": {
            "operation": "substrate_capability_audit",
            "command": [
              "python",
              "scripts/prd_substrate_catalog.py",
              "--repo-root",
              ".",
              "audit"
            ],
            "exit_code": 0,
            "stdout": "{\n  \"status\": \"ok\",\n  \"schema_version\": \"1.0\",\n  \"capability_count\": 26,\n  \"runtime_tool_count\": 103,\n  \"intent_count\": 31,\n  \"summary\": {\n    \"critical\": 0,\n    \"high\": 0,\n    \"medium\": 0,\n    \"low\": 0\n  },\n  \"findings\": []\n}\n",
            "stderr": ""
          },
          "output_hash": "4176fd7e9d2d33bd61e5fd6bb8d392a63eaa5b2cb65b750eeb348b9dd55fe220",
          "completed_at": "2026-07-25T07:21:44Z"
        },
        {
          "id": "suite",
          "action": "process.fixed",
          "status": "failed",
          "resolved_input_hash": "954e575e48145853f5681eda189186c95a053267158fae669114320f2e53794a",
          "started_at": "2026-07-25T07:21:44Z"
        },
        {
          "id": "release",
          "action": "process.fixed",
          "status": "pending"
        },
        {
          "id": "gaps",
          "action": "process.fixed",
          "status": "pending"
        },
        {
          "id": "package",
          "action": "process.fixed",
          "status": "pending"
        },
        {
          "id": "gate",
          "action": "state.gate",
          "status": "pending"
        }
      ],
      "error": {
        "type": "ActionError",
        "message": "fixed operation local_workflow_check failed (1): :\n  File \"D:\\Projects\\prd-plugin\\tests\\test_release_check.py\", line 65, in test_npm_package_excludes_local_transport_and_python_cache_artifacts\n    self.assertEqual(leaked, [], f\"npm package leaked local-only artifacts: {leaked}\")\n    ~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\nAssertionError: Lists differ: ['templates/repo-skeleton/.prd_plugin/hook[43 chars]pyc'] != []\n\nFirst list contains 1 additional elements.\nFirst extra element 0:\n'templates/repo-skeleton/.prd_plugin/hooks/__pycache__/prd_reason_guard.cpython-314.pyc'\n\n- ['templates/repo-skeleton/.prd_plugin/hooks/__pycache__/prd_reason_guard.cpython-314.pyc']\n+ [] : npm package leaked local-only artifacts: ['templates/repo-skeleton/.prd_plugin/hooks/__pycache__/prd_reason_guard.cpython-314.pyc']\n\n----------------------------------------------------------------------\nRan 1275 tests in 106.569s\n\nFAILED (failures=5)\nLocal workflow check failed:\n- exit 1: python -m unittest discover -s tests -v"
      }
    },
    {
      "id": "WFR-442",
      "schema_version": "1.0",
      "workflow_id": "hub.release",
      "workflow_version": 1,
      "definition_hash": "ab6ae2afcb0128db8d994b6b397e543c7490017bd3d1b15309079edc6be94d9a",
      "plan_hash": "02bcb9cb71ca5641cc12e6270fee67758c0051b183e4204137993cd57b89a7bd",
      "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
      "inputs": {},
      "idempotency_key": "req-175-release-0.16.59-v2",
      "status": "completed",
      "attempt": 1,
      "created_at": "2026-07-25T07:26:43Z",
      "updated_at": "2026-07-25T07:28:43Z",
      "receipts": [
        {
          "step_id": "diff",
          "action": "git.diff_check",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "11c11db30f4b3f6c758722ba3e27eea08145b7d212f6a157451e364b48475280",
          "completed_at": "2026-07-25T07:26:44Z"
        },
        {
          "step_id": "config",
          "action": "config.audit",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "9cbf27cbac0de8a8eb0ed2dd07eae4f75908186aa645194b551c48f999ebb1b5",
          "completed_at": "2026-07-25T07:26:44Z"
        },
        {
          "step_id": "state",
          "action": "state.consistency",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "9963110856ca8182da0dfdbb22f6960618b55dbc121be0dce0066a7c7a389b10",
          "completed_at": "2026-07-25T07:26:45Z"
        },
        {
          "step_id": "workflow_audit",
          "action": "process.fixed",
          "input_hash": "edf19b269a54d72753f1abc2b8ffcb810c2b7bc377cee7e1698c939f17e0be94",
          "output_hash": "231b43ed70e09c4e7cbcda1094b00e0274dd4a22ff8324da2eb907f705c1316a",
          "completed_at": "2026-07-25T07:26:45Z"
        },
        {
          "step_id": "substrate_audit",
          "action": "process.fixed",
          "input_hash": "4998f71d2d3f6ac7dd50e10d37f60ae32d54898949950e484da9de113e18a979",
          "output_hash": "4176fd7e9d2d33bd61e5fd6bb8d392a63eaa5b2cb65b750eeb348b9dd55fe220",
          "completed_at": "2026-07-25T07:26:45Z"
        },
        {
          "step_id": "suite",
          "action": "process.fixed",
          "input_hash": "954e575e48145853f5681eda189186c95a053267158fae669114320f2e53794a",
          "output_hash": "399fb3e50e30c04e1f0171d1d1ee4c52239ae881bff3c93bbeaa6d74ea503e4c",
          "completed_at": "2026-07-25T07:28:39Z"
        },
        {
          "step_id": "release",
          "action": "process.fixed",
          "input_hash": "1e5b0c18d93eb4c2248f9a00adbd438e52f3ef02137477fb8376c69cfe86fc9b",
          "output_hash": "ee7568097101529d9085ba0a379f6d944bdbf68a3513a7d6424fb192b9241e7a",
          "completed_at": "2026-07-25T07:28:39Z"
        },
        {
          "step_id": "gaps",
          "action": "process.fixed",
          "input_hash": "577241909238eeb55683f89d2d2216648dad2e3127397993e22493829a1307a4",
          "output_hash": "3851daf6e2a7b706c57c9c8baa199f3e68424e97f1b938e6e7e91ddcf937e5ef",
          "completed_at": "2026-07-25T07:28:39Z"
        },
        {
          "step_id": "package",
          "action": "process.fixed",
          "input_hash": "06cd12e1f3db3d985f9150520afa60f288297ff0ca01a8e813e9bb6291aa8836",
          "output_hash": "f91f22b694178a25c1953ade433a87436844625074adfe3e763f27dfd9540e21",
          "completed_at": "2026-07-25T07:28:41Z"
        },
        {
          "step_id": "gate",
          "action": "state.gate",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "6a0ed3d65779be265214a0e8395ab03978b9f7b91da9ffb59b257b73f82d087d",
          "completed_at": "2026-07-25T07:28:43Z"
        }
      ],
      "steps": [
        {
          "id": "diff",
          "action": "git.diff_check",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-25T07:26:44Z",
          "output": {
            "passed": true
          },
          "output_hash": "11c11db30f4b3f6c758722ba3e27eea08145b7d212f6a157451e364b48475280",
          "completed_at": "2026-07-25T07:26:44Z"
        },
        {
          "id": "config",
          "action": "config.audit",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-25T07:26:44Z",
          "output": {
            "status": "ok",
            "summary": {
              "settings": 216,
              "mutable": 206,
              "read_only_or_managed": 10,
              "unclassified": 0,
              "unknown": 0,
              "invalid": 0,
              "missing_using_defaults": 0
            },
            "unclassified_keys": [],
            "unknown_keys": [],
            "invalid_values": [],
            "missing_using_defaults": []
          },
          "output_hash": "9cbf27cbac0de8a8eb0ed2dd07eae4f75908186aa645194b551c48f999ebb1b5",
          "completed_at": "2026-07-25T07:26:44Z"
        },
        {
          "id": "state",
          "action": "state.consistency",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-25T07:26:44Z",
          "output": {
            "status": "ok",
            "repo_root": "D:\\Projects\\prd-plugin",
            "summary": {
              "errors": 0,
              "warnings": 0,
              "infos": 1
            },
            "findings": [
              {
                "id": "CONS-INFO-001",
                "severity": "info",
                "path": "docs/evidence/EV-200.md",
                "summary": "File references 2 canonical IDs across 2 prefix(es); treated as a positive signal of extra work.",
                "referenced_prefixes": [
                  "CHG",
                  "TRK"
                ],
                "referenced_id_count": 2,
                "required_action": "No action required; this is an informational signal."
              }
            ]
          },
          "output_hash": "9963110856ca8182da0dfdbb22f6960618b55dbc121be0dce0066a7c7a389b10",
          "completed_at": "2026-07-25T07:26:45Z"
        },
        {
          "id": "workflow_audit",
          "action": "process.fixed",
          "status": "completed",
          "resolved_input_hash": "edf19b269a54d72753f1abc2b8ffcb810c2b7bc377cee7e1698c939f17e0be94",
          "started_at": "2026-07-25T07:26:45Z",
          "output": {
            "operation": "workflow_chml_audit",
            "command": [
              "python",
              "scripts/workflow_chml_audit.py",
              "--repo-root",
              ".",
              "--format",
              "json"
            ],
            "exit_code": 0,
            "stdout": "{\n  \"status\": \"ok\",\n  \"repo_root\": \"D:\\\\Projects\\\\prd-plugin\",\n  \"summary\": {\n    \"critical\": 0,\n    \"high\": 0,\n    \"medium\": 0,\n    \"low\": 0\n  },\n  \"findings\": []\n}\n",
            "stderr": ""
          },
          "output_hash": "231b43ed70e09c4e7cbcda1094b00e0274dd4a22ff8324da2eb907f705c1316a",
          "completed_at": "2026-07-25T07:26:45Z"
        },
        {
          "id": "substrate_audit",
          "action": "process.fixed",
          "status": "completed",
          "resolved_input_hash": "4998f71d2d3f6ac7dd50e10d37f60ae32d54898949950e484da9de113e18a979",
          "started_at": "2026-07-25T07:26:45Z",
          "output": {
            "operation": "substrate_capability_audit",
            "command": [
              "python",
              "scripts/prd_substrate_catalog.py",
              "--repo-root",
              ".",
              "audit"
            ],
            "exit_code": 0,
            "stdout": "{\n  \"status\": \"ok\",\n  \"schema_version\": \"1.0\",\n  \"capability_count\": 26,\n  \"runtime_tool_count\": 103,\n  \"intent_count\": 31,\n  \"summary\": {\n    \"critical\": 0,\n    \"high\": 0,\n    \"medium\": 0,\n    \"low\": 0\n  },\n  \"findings\": []\n}\n",
            "stderr": ""
          },
          "output_hash": "4176fd7e9d2d33bd61e5fd6bb8d392a63eaa5b2cb65b750eeb348b9dd55fe220",
          "completed_at": "2026-07-25T07:26:45Z"
        },
        {
          "id": "suite",
          "action": "process.fixed",
          "status": "completed",
          "resolved_input_hash": "954e575e48145853f5681eda189186c95a053267158fae669114320f2e53794a",
          "started_at": "2026-07-25T07:26:46Z",
          "output": {
            "operation": "local_workflow_check",
            "command": [
              "python",
              "scripts/local_workflow_check.py"
            ],
            "exit_code": 0,
            "stdout": "Structured file validation passed.\n$ python -m unittest discover -s tests -v\n{\n  \"status\": \"fail\",\n  \"repo_root\": \"C:\\\\Users\\\\marku\\\\AppData\\\\Local\\\\Temp\\\\tmpiflxo5ak\",\n  \"summary\": {\n    \"errors\": 1,\n    \"warnings\": 0\n  },\n  \"findings\": [\n    {\n      \"check\": \"duplicate_id\",\n      \"severity\": \"error\",\n      \"summary\": \"Duplicate id REQ-002 in .prd_plugin/state/requests.json.\",\n      \"required_action\": \"Renumber one record so REQ-002 is unique. Allocate IDs with the MCP tool prd_next_id (or the record tools like prd_open_goal) instead of hand-computing them.\"\n    }\n  ]\n}\nautonomy_level set to guided\nautonomy_level set to autonomous\nDESTRUCTIVE RESET REQUESTED: --force --yes will erase protected PRD Plugin project data.\nThe following existing state/configuration files would be replaced with skeleton defaults:\n  - .prd_plugin/state/tracking.json\nThis may erase IDs, tracking, requests, decisions, health findings, configuration, and session memory.\nFor a normal safe update, remove --yes and run: npx prd-install . --force\nPRD Plugin safe update: preserving existing state/config and refreshing plugin files only. Never add --yes to a routine update; it requests a destructive reset.\nPRD Plugin safe update: preserving existing state/config and refreshing plugin files only. Never add --yes to a routine update; it requests a destructive reset.\nPRD Plugin safe update: preserving existing state/config and refreshing plugin files only. Never add --yes to a routine update; it requests a destructive reset.\nPRD Plugin safe update: preserving existing state/config and refreshing plugin files only. Never add --yes to a routine update; it requests a destructive reset.\nPRD Plugin safe update: preserving existing state/config and refreshing plugin files only. Never add --yes to a routine update; it requests a destructive reset.\nPRD Plugin safe update: preserving existing state/config and refreshing plugin files only. Never add --yes to a routine update; it requests a destructive reset.\nPRD Plugin safe update: preserving existing state/config and refreshing plugin files only. Never add --yes to a routine update; it requests a destructive reset.\nPRD Plugin safe update: preserving existing state/config and refreshing plugin files only. Never add --yes to a routine update; it requests a destructive reset.\nPRD Plugin safe update: preserving existing state/config and refreshing plugin files only. Never add --yes to a routine update; it requests a destructive reset.\nPRD Plugin safe update: preserving existing state/config and refreshing plugin files only. Never add --yes to a routine update; it requests a destructive reset.\nPRD Plugin safe update: preserving existing state/config and refreshing plugin files only. Never add --yes to a routine update; it requests a destructive reset.\nPRD Plugin safe update: preserving existing state/config and refreshing plugin files only. Never add --yes to a routine update; it requests a destructive reset.\nPRD Plugin safe update: preserving existing state/config and refreshing plugin files only. Never add --yes to a routine update; it requests a destructive reset.\nPRD Plugin safe update: preserving existing state/config and refreshing plugin files only. Never add --yes to a routine update; it requests a destructive reset.\nPRD Plugin safe update: preserving existing state/config and refreshing plugin files only. Never add --yes to a routine update; it requests a destructive reset.\nPRD Plugin safe update: preserving existing state/config and refreshing plugin files only. Never add --yes to a routine update; it requests a destructive reset.\nPRD Plugin safe update: preserving existing state/config and refreshing plugin files only. Never add --yes to a routine update; it requests a destructive reset.\n{\n  \"published\": false,\n  \"package\": \"prd-plugin\",\n  \"version\": \"9.9.9\",\n  \"version_seen\": null,\n  \"latest_seen\": null,\n  \"attempts_used\": 1\n}\n{\n  \"published\": true,\n  \"package\": \"prd-plugin\",\n  \"version\": \"1.2.3\",\n  \"version_seen\": \"1.2.3\",\n  \"latest_seen\": \"1.2.3\",\n  \"attempts_used\": 1\n}\n{\"decision\": \"block\", \"reason\": \"Autonomous run-until-done: goal TRK-162 is still active. Continue with the next incomplete step toward it \\u2014 do not stop to ask 'shall I proceed?'. If you genuinely need the user (consent floor: push/merge/publish/secrets, or a real blocker), create the file .prd_plugin/local/autonomy-pause with a one-line reason and then stop; the guard will let you. Otherwise keep going.\"}\n$ python scripts/feature_skill_audit.py --repo-root . --format json\n{\n  \"status\": \"ok\",\n  \"repo_root\": \"D:\\\\Projects\\\\prd-plugin\",\n  \"contract\": \"templates/feature-skill-map.json\",\n  \"feature_count\": 29,\n  \"summary\": {\n    \"critical\": 0,\n    \"high\": 0,\n    \"medium\": 0,\n    \"low\": 0\n  },\n  \"findings\": []\n}\n$ python scripts/gap_audit.py --target-version 0.16.59\n# PRD Plugin Gap Audit\n\nTarget version: `0.16.59`\n\n## Findings\n\n- None\n$ python scripts/version_advice.py --installed-repo . --format json --output request-report/version-advice.json\n$ python scripts/release_check.py --output request-report/release-hygiene.md\n$ python scripts/prd_doctor.py --repo-root . --format json --output request-report/prd-doctor.json\n$ python scripts/state_consistency_check.py --repo-root . --format json --output request-report/state-consistency.json\n$ python scripts/prd_install_skills.py --repo-root . --dry-run\n{\n  \"status\": \"dry_run\",\n  \"target_agent\": \"codex\",\n  \"targets\": [\n    {\n      \"agent\": \"codex\",\n      \"target\": \".agents\\\\skills\",\n      \"would_install\": [\n        \"project-architecture\",\n        \"project-blocker-resolution\",\n        \"project-brainstorm\",\n        \"project-change-request\",\n        \"project-code-review\",\n        \"project-decision-ledger\",\n        \"project-decision-policy\",\n        \"project-deterministic-workflows\",\n        \"project-document-branch\",\n        \"project-evidence\",\n        \"project-evidence-ledger\",\n        \"project-git-workflow\",\n        \"project-health\",\n        \"project-implementation-plan\",\n        \"project-llm-wiki\",\n        \"project-local-integration\",\n        \"project-memory\",\n        \"project-planning-lifecycle\",\n        \"project-prd\",\n        \"project-prd-plugin-setup\",\n        \"project-request-intake\",\n        \"project-session-close\",\n        \"project-systematic-debugging\",\n        \"project-test-driven-implementation\",\n        \"project-traceability-review\",\n        \"project-traceability-sync\",\n        \"project-verification-before-completion\",\n        \"source-command-prd-autonomy\",\n        \"source-command-prd-close\",\n        \"source-command-prd-config\",\n        \"source-command-prd-drift\",\n        \"source-command-prd-graph\",\n        \"source-command-prd-hooks\",\n        \"source-command-prd-new\",\n        \"source-command-prd-off\",\n        \"source-command-prd-on\",\n        \"source-command-prd-reflections\",\n        \"source-command-prd-report\",\n        \"source-command-prd-status\",\n        \"source-command-prd-track\",\n        \"source-command-prd-version\",\n        \"source-command-prd-workflow\"\n      ],\n      \"would_remove\": [\n        \"project-fold-it-in\",\n        \"project-self-audit\"\n      ]\n    }\n  ],\n  \"installed_count\": 0,\n  \"target\": \".agents\\\\skills\",\n  \"installed\": [],\n  \"removed\": [],\n  \"would_install\": [\n    \"project-architecture\",\n    \"project-blocker-resolution\",\n    \"project-brainstorm\",\n    \"project-change-request\",\n    \"project-code-review\",\n    \"project-decision-ledger\",\n    \"project-decision-policy\",\n    \"project-deterministic-workflows\",\n    \"project-document-branch\",\n    \"project-evidence\",\n    \"project-evidence-ledger\",\n    \"project-git-workflow\",\n    \"project-health\",\n    \"project-implementation-plan\",\n    \"project-llm-wiki\",\n    \"project-local-integration\",\n    \"project-memory\",\n    \"project-planning-lifecycle\",\n    \"project-prd\",\n    \"project-prd-plugin-setup\",\n    \"project-request-intake\",\n    \"project-session-close\",\n    \"project-systematic-debugging\",\n    \"project-test-driven-implementation\",\n    \"project-traceability-review\",\n    \"project-traceability-sync\",\n    \"project-verification-before-completion\",\n    \"source-command-prd-autonomy\",\n    \"source-command-prd-close\",\n    \"source-command-prd-config\",\n    \"source-command-prd-drift\",\n    \"source-command-prd-graph\",\n    \"source-command-prd-hooks\",\n    \"source-command-prd-new\",\n    \"source-command-prd-off\",\n    \"source-command-prd-on\",\n    \"source-command-prd-reflections\",\n    \"source-command-prd-report\",\n    \"source-command-prd-status\",\n    \"source-command-prd-track\",\n    \"source-command-prd-version\",\n    \"source-command-prd-workflow\"\n  ],\n  \"would_remove\": [\n    \"project-fold-it-in\",\n    \"project-self-audit\"\n  ]\n}\n$ python scripts/request_report.py --config .prd_plugin/config.json --format markdown --output request-report/request-report.md\n$ python scripts/request_report.py --config .prd_plugin/config.json --format json --output request-report/request-report.json\n$ python scripts/message_check.py --config .prd_plugin/config.json --format json --output request-report/message-check.json\nLocal workflow check completed.\n",
            "stderr": "es (test_unified_config.MutationTests.test_audit_reports_unknown_and_invalid_values) ... ok\ntest_enable_disable_only_accept_mutable_booleans (test_unified_config.MutationTests.test_enable_disable_only_accept_mutable_booleans) ... ok\ntest_failed_atomic_replace_leaves_original_config_untouched (test_unified_config.MutationTests.test_failed_atomic_replace_leaves_original_config_untouched) ... ok\ntest_malformed_config_is_never_replaced_by_a_mutation (test_unified_config.MutationTests.test_malformed_config_is_never_replaced_by_a_mutation) ... ok\ntest_manual_set_marks_profile_custom_and_preserves_style (test_unified_config.MutationTests.test_manual_set_marks_profile_custom_and_preserves_style) ... ok\ntest_scalar_parent_is_not_clobbered_by_nested_set (test_unified_config.MutationTests.test_scalar_parent_is_not_clobbered_by_nested_set) ... ok\ntest_builtin_profile_dry_run_then_atomic_apply (test_unified_config.ProfileTests.test_builtin_profile_dry_run_then_atomic_apply) ... ok\ntest_invalid_custom_profile_never_partially_writes (test_unified_config.ProfileTests.test_invalid_custom_profile_never_partially_writes) ... ok\ntest_save_show_diff_and_delete_custom_profile (test_unified_config.ProfileTests.test_save_show_diff_and_delete_custom_profile) ... ok\ntest_does_not_flag_canonical_prd_state_paths (test_unsubmitted_plugin_request.UnsubmittedPluginRequestTests.test_does_not_flag_canonical_prd_state_paths) ... ok\ntest_does_not_flag_ordinary_project_requests (test_unsubmitted_plugin_request.UnsubmittedPluginRequestTests.test_does_not_flag_ordinary_project_requests) ... ok\ntest_does_not_flag_rejected_requests (test_unsubmitted_plugin_request.UnsubmittedPluginRequestTests.test_does_not_flag_rejected_requests) ... ok\ntest_does_not_flag_when_already_marked_upstream (test_unsubmitted_plugin_request.UnsubmittedPluginRequestTests.test_does_not_flag_when_already_marked_upstream) ... ok\ntest_flags_a_local_request_about_a_plugin_script (test_unsubmitted_plugin_request.UnsubmittedPluginRequestTests.test_flags_a_local_request_about_a_plugin_script) ... ok\ntest_flags_a_request_that_names_itself_upstream (test_unsubmitted_plugin_request.UnsubmittedPluginRequestTests.test_flags_a_request_that_names_itself_upstream) ... ok\ntest_never_fires_in_the_hub_repo_itself (test_unsubmitted_plugin_request.UnsubmittedPluginRequestTests.test_never_fires_in_the_hub_repo_itself) ... ok\ntest_wired_into_run_checks (test_unsubmitted_plugin_request.UnsubmittedPluginRequestTests.test_wired_into_run_checks) ... ok\ntest_output_writes_lf_and_a_trailing_newline (test_utcp_first_authority.GeneratedArtifactsAreByteStableTests.test_output_writes_lf_and_a_trailing_newline) ... ok\ntest_the_committed_manual_matches_a_fresh_generation (test_utcp_first_authority.GeneratedArtifactsAreByteStableTests.test_the_committed_manual_matches_a_fresh_generation) ... ok\ntest_every_spec_tool_maps_to_a_catalog_capability (test_utcp_first_authority.ParityDirectionTests.test_every_spec_tool_maps_to_a_catalog_capability) ... ok\ntest_server_metadata_matches_the_spec (test_utcp_first_authority.ParityDirectionTests.test_server_metadata_matches_the_spec) ... ok\ntest_python_entry_points_share_the_same_lock (test_utcp_first_authority.SafetyUnchangedTests.test_python_entry_points_share_the_same_lock)\nThe migration target already exists and is proven: prd_reflections ... ok\ntest_the_state_lock_is_still_held_for_mutations (test_utcp_first_authority.SafetyUnchangedTests.test_the_state_lock_is_still_held_for_mutations) ... ok\ntest_no_shipped_tool_metadata_carries_mojibake (test_utcp_first_authority.ShippedTextIsCleanTests.test_no_shipped_tool_metadata_carries_mojibake) ... ok\ntest_shipped_tool_metadata_is_valid_utf8 (test_utcp_first_authority.ShippedTextIsCleanTests.test_shipped_tool_metadata_is_valid_utf8)\nA file written through a cp1252 layer either fails to decode or ... ok\ntest_each_tool_declares_name_description_and_schema (test_utcp_first_authority.SpecIsTheSourceTests.test_each_tool_declares_name_description_and_schema) ... ok\ntest_the_manual_is_generated_from_the_spec_not_the_server (test_utcp_first_authority.SpecIsTheSourceTests.test_the_manual_is_generated_from_the_spec_not_the_server) ... ok\ntest_the_server_no_longer_authors_descriptions (test_utcp_first_authority.SpecIsTheSourceTests.test_the_server_no_longer_authors_descriptions)\nserver.cjs must READ definitions, not declare them. While a tool ... ok\ntest_the_spec_exists_and_declares_every_tool (test_utcp_first_authority.SpecIsTheSourceTests.test_the_spec_exists_and_declares_every_tool) ... ok\ntest_official_bridge_round_trips_cli_and_mcp_templates (test_utcp_first_catalog.BridgeParityTests.test_official_bridge_round_trips_cli_and_mcp_templates) ... ok\ntest_bridged_entries_reuse_server_metadata_verbatim (test_utcp_first_catalog.GeneratedProjectionTests.test_bridged_entries_reuse_server_metadata_verbatim)\nEach bridged manual entry's description and inputs equal the server's ... ok\ntest_checked_in_metadata_matches_live_server (test_utcp_first_catalog.GeneratedProjectionTests.test_checked_in_metadata_matches_live_server)\nThe pinned metadata projection cannot drift behind the live server. ... ok\ntest_mutations_keep_the_validated_handler_path (test_utcp_first_catalog.GuardedMutationTests.test_mutations_keep_the_validated_handler_path)\nEvery manual tool in a non-read capability calls the plugin state ... ok\ntest_read_only_cli_tools_stay_cli (test_utcp_first_catalog.GuardedMutationTests.test_read_only_cli_tools_stay_cli)\nThe 12 cli-native observe/recall tools keep their cli templates. ... ok\ntest_checked_in_metadata_projection_exists (test_utcp_first_catalog.ManualCompletenessTests.test_checked_in_metadata_projection_exists)\nThe server's tool metadata is a checked-in generated artifact so the ... ok\ntest_manual_covers_every_capability_on_both_transports (test_utcp_first_catalog.ManualCompletenessTests.test_manual_covers_every_capability_on_both_transports)\nEvery UTCP and MCP registration in the tool-surface catalog appears ... ok\ntest_appends_version_change_request (test_version_advice.VersionAdviceTests.test_appends_version_change_request) ... ok\ntest_builds_safe_update_advice_for_low_risk_releases (test_version_advice.VersionAdviceTests.test_builds_safe_update_advice_for_low_risk_releases) ... ok\ntest_cli_uses_hub_releases_when_downstream_repo_has_no_releases_file (test_version_advice.VersionAdviceTests.test_cli_uses_hub_releases_when_downstream_repo_has_no_releases_file) ... ok\ntest_detects_installed_version_from_bom_json (test_version_advice.VersionAdviceTests.test_detects_installed_version_from_bom_json) ... ok\ntest_detects_installed_version_from_opencode_plugin_manifest (test_version_advice.VersionAdviceTests.test_detects_installed_version_from_opencode_plugin_manifest) ... ok\ntest_detects_installed_version_from_prd_plugin_config (test_version_advice.VersionAdviceTests.test_detects_installed_version_from_prd_plugin_config) ... ok\ntest_detects_latest_version_from_plugin_manifest (test_version_advice.VersionAdviceTests.test_detects_latest_version_from_plugin_manifest) ... ok\ntest_installed_version_priority_prefers_config_then_codex_then_opencode (test_version_advice.VersionAdviceTests.test_installed_version_priority_prefers_config_then_codex_then_opencode) ... ok\ntest_orders_prerelease_before_final_release (test_version_advice.VersionAdviceTests.test_orders_prerelease_before_final_release) ... ok\ntest_recommends_review_first_for_medium_or_high_risk_release (test_version_advice.VersionAdviceTests.test_recommends_review_first_for_medium_or_high_risk_release) ... ok\ntest_disabled_returns_disabled_and_no_fetch (test_version_check.CheckTests.test_disabled_returns_disabled_and_no_fetch) ... ok\ntest_force_refetches_within_ttl (test_version_check.CheckTests.test_force_refetches_within_ttl) ... ok\ntest_network_failure_is_fail_open (test_version_check.CheckTests.test_network_failure_is_fail_open) ... ok\ntest_no_update_when_current (test_version_check.CheckTests.test_no_update_when_current) ... ok\ntest_status_is_cache_only_no_fetch (test_version_check.CheckTests.test_status_is_cache_only_no_fetch) ... ok\ntest_ttl_cache_avoids_refetch (test_version_check.CheckTests.test_ttl_cache_avoids_refetch) ... ok\ntest_ttl_expiry_refetches (test_version_check.CheckTests.test_ttl_expiry_refetches) ... ok\ntest_update_available_when_npm_is_ahead (test_version_check.CheckTests.test_update_available_when_npm_is_ahead) ... ok\ntest_status_cli_exits_zero (test_version_check.CliTests.test_status_cli_exits_zero) ... ok\ntest_default_ttl_is_responsive_not_a_day (test_version_check.FreshnessTests.test_default_ttl_is_responsive_not_a_day) ... ok\ntest_fetch_latest_accepts_a_timeout (test_version_check.FreshnessTests.test_fetch_latest_accepts_a_timeout) ... ok\ntest_nudge_refreshes_in_session_not_cache_only (test_version_check.FreshnessTests.test_nudge_refreshes_in_session_not_cache_only) ... ok\ntest_registry_default_ttl_matches (test_version_check.FreshnessTests.test_registry_default_ttl_matches) ... ok\ntest_semver_ordering (test_version_check.ParseTests.test_semver_ordering) ... ok\ntest_set_enabled_writes_config (test_version_check.ToggleTests.test_set_enabled_writes_config) ... ok\ntest_config_has_version_check_default_on (test_version_check.WiringTests.test_config_has_version_check_default_on) ... ok\ntest_nudge_surfaces_update_available (test_version_check.WiringTests.test_nudge_surfaces_update_available) ... ok\ntest_prd_version_command_exists (test_version_check.WiringTests.test_prd_version_command_exists) ... ok\ntest_script_registered_downstream (test_version_check.WiringTests.test_script_registered_downstream) ... ok\ntest_plan_cli_emits_json (test_wiki_backfill.CliTests.test_plan_cli_emits_json) ... ok\ntest_status_cli (test_wiki_backfill.CliTests.test_status_cli) ... ok\ntest_marker_written_for_established_repo_gaining_wiki (test_wiki_backfill.InstallerMarkerTests.test_marker_written_for_established_repo_gaining_wiki) ... ok\ntest_no_marker_for_empty_scaffold (test_wiki_backfill.InstallerMarkerTests.test_no_marker_for_empty_scaffold) ... ok\ntest_no_marker_when_wiki_already_exists (test_wiki_backfill.InstallerMarkerTests.test_no_marker_when_wiki_already_exists) ... ok\ntest_no_marker_when_wiki_disabled (test_wiki_backfill.InstallerMarkerTests.test_no_marker_when_wiki_disabled) ... ok\ntest_pending_false_when_absent (test_wiki_backfill.StatusTests.test_pending_false_when_absent) ... ok\ntest_pending_false_when_wiki_already_exists (test_wiki_backfill.StatusTests.test_pending_false_when_wiki_already_exists) ... ok\ntest_pending_true_when_marker_present (test_wiki_backfill.StatusTests.test_pending_true_when_marker_present) ... ok\ntest_plan_excludes_generated_report_artifacts (test_wiki_backfill.SurveyPlanTests.test_plan_excludes_generated_report_artifacts)\nrequest-report/ (incl. its calibration report trees) and docs/evidence/ ... ok\ntest_plan_excludes_plugin_and_vendor_noise (test_wiki_backfill.SurveyPlanTests.test_plan_excludes_plugin_and_vendor_noise) ... ok\ntest_plan_inventories_code_docs_and_state (test_wiki_backfill.SurveyPlanTests.test_plan_inventories_code_docs_and_state) ... ok\ntest_plan_is_read_only (test_wiki_backfill.SurveyPlanTests.test_plan_is_read_only) ... ok\ntest_wiki_drift_in_on_stop_and_default_sets (test_wiki_backfill.WikiDriftMonitorWiringTests.test_wiki_drift_in_on_stop_and_default_sets) ... ok\ntest_current_article_no_drift (test_wiki_backfill.WikiDriftTests.test_current_article_no_drift) ... ok\ntest_drift_cli (test_wiki_backfill.WikiDriftTests.test_drift_cli) ... ok\ntest_far_behind_article_flagged (test_wiki_backfill.WikiDriftTests.test_far_behind_article_flagged) ... ok\ntest_no_wiki_is_ok (test_wiki_backfill.WikiDriftTests.test_no_wiki_is_ok) ... ok\ntest_unlinked_markdown_reference_is_part_of_wiki_drift (test_wiki_backfill.WikiDriftTests.test_unlinked_markdown_reference_is_part_of_wiki_drift) ... ok\ntest_unstamped_article_flagged (test_wiki_backfill.WikiDriftTests.test_unstamped_article_flagged) ... ok\ntest_wiki_drift_uses_configured_wiki_directory (test_wiki_backfill.WikiDriftTests.test_wiki_drift_uses_configured_wiki_directory) ... ok\ntest_ambiguous_reference_is_reported_but_never_guessed (test_wiki_backfill.WikiInlineMarkdownLinkTests.test_ambiguous_reference_is_reported_but_never_guessed) ... ok\ntest_cli_check_fails_and_fix_then_passes (test_wiki_backfill.WikiInlineMarkdownLinkTests.test_cli_check_fails_and_fix_then_passes) ... ok\ntest_existing_inline_links_and_fenced_examples_are_not_findings (test_wiki_backfill.WikiInlineMarkdownLinkTests.test_existing_inline_links_and_fenced_examples_are_not_findings) ... ok\ntest_fix_rewrites_only_unambiguous_references_to_relative_inline_links (test_wiki_backfill.WikiInlineMarkdownLinkTests.test_fix_rewrites_only_unambiguous_references_to_relative_inline_links) ... ok\ntest_reports_resolvable_bare_and_code_wrapped_markdown_references (test_wiki_backfill.WikiInlineMarkdownLinkTests.test_reports_resolvable_bare_and_code_wrapped_markdown_references) ... ok\ntest_nudge_surfaces_pending_backfill (test_wiki_backfill.WiringTests.test_nudge_surfaces_pending_backfill) ... ok\ntest_script_registered_downstream (test_wiki_backfill.WiringTests.test_script_registered_downstream) ... ok\ntest_skill_has_backfill_mode (test_wiki_backfill.WiringTests.test_skill_has_backfill_mode) ... ok\ntest_copy_and_download_controls_are_wired (test_wiki_html_export.WikiHtmlExportTests.test_copy_and_download_controls_are_wired) ... ok\ntest_default_output_lands_in_the_local_runtime_dir (test_wiki_html_export.WikiHtmlExportTests.test_default_output_lands_in_the_local_runtime_dir) ... ok\ntest_every_page_is_embedded_with_exact_markdown (test_wiki_html_export.WikiHtmlExportTests.test_every_page_is_embedded_with_exact_markdown) ... ok\ntest_export_all_generates_viewers_and_super_index (test_wiki_html_export.WikiHtmlExportTests.test_export_all_generates_viewers_and_super_index) ... ok\ntest_export_is_one_self_contained_offline_file (test_wiki_html_export.WikiHtmlExportTests.test_export_is_one_self_contained_offline_file) ... ok\ntest_guest_repo_viewer_is_hosted_by_the_host_repo (test_wiki_html_export.WikiHtmlExportTests.test_guest_repo_viewer_is_hosted_by_the_host_repo)\nA repo without .prd_plugin gets NO new files in its own tree; its ... ok\ntest_hub_repo_exports_all_pages (test_wiki_html_export.WikiHtmlExportTests.test_hub_repo_exports_all_pages) ... ok\ntest_parse_wiki_log_extracts_dated_entries_with_bodies (test_wiki_html_export.WikiHtmlExportTests.test_parse_wiki_log_extracts_dated_entries_with_bodies)\nREQ-112: every workspace log follows '## [date] mode | text'. ... ok\ntest_parse_wiki_log_tolerates_missing_log (test_wiki_html_export.WikiHtmlExportTests.test_parse_wiki_log_tolerates_missing_log) ... ok\ntest_script_content_cannot_break_the_payload (test_wiki_html_export.WikiHtmlExportTests.test_script_content_cannot_break_the_payload) ... ok\ntest_super_index_has_a_combined_changelog (test_wiki_html_export.WikiHtmlExportTests.test_super_index_has_a_combined_changelog) ... ok\ntest_super_index_reports_page_counts (test_wiki_html_export.WikiHtmlExportTests.test_super_index_reports_page_counts) ... ok\ntest_workspace_discovery_uses_the_wiki_convention_marker (test_wiki_html_export.WikiHtmlExportTests.test_workspace_discovery_uses_the_wiki_convention_marker)\nREQ-110 + REQ-111: any immediate child whose wiki follows the ... ok\ntest_a_repo_without_a_wiki_is_not_in_drift (test_wiki_ingest_drift.DetectionTests.test_a_repo_without_a_wiki_is_not_in_drift)\nNo wiki is a legitimate state, not a failure to ingest. ... ok\ntest_fully_ingested_repo_is_clean (test_wiki_ingest_drift.DetectionTests.test_fully_ingested_repo_is_clean) ... ok\ntest_malformed_state_degrades_rather_than_raising (test_wiki_ingest_drift.DetectionTests.test_malformed_state_degrades_rather_than_raising) ... ok\ntest_non_implemented_requests_are_never_expected_in_the_log (test_wiki_ingest_drift.DetectionTests.test_non_implemented_requests_are_never_expected_in_the_log) ... ok\ntest_only_work_since_the_last_ingest_is_actionable (test_wiki_ingest_drift.DetectionTests.test_only_work_since_the_last_ingest_is_actionable)\nRaw counting flags pre-wiki history as drift � ~70 items in the hub, ... ok\ntest_reports_implemented_requests_absent_from_the_log (test_wiki_ingest_drift.DetectionTests.test_reports_implemented_requests_absent_from_the_log) ... ok\ntest_it_runs_against_this_repo_and_returns_a_usable_report (test_wiki_ingest_drift.RealRepoTests.test_it_runs_against_this_repo_and_returns_a_usable_report)\nGrounded against real state, but NOT pinned to a specific gap: a test ... ok\ntest_prd_status_omits_it_when_clean (test_wiki_ingest_drift.SurfaceTests.test_prd_status_omits_it_when_clean) ... ok\ntest_prd_status_reports_the_drift (test_wiki_ingest_drift.SurfaceTests.test_prd_status_reports_the_drift) ... ok\ntest_this_repos_wiki_reads_byte_exact (test_wiki_page_contract.HubRepoSmokeTests.test_this_repos_wiki_reads_byte_exact) ... ok\ntest_list_enumerates_canonical_pages_with_titles (test_wiki_page_contract.WikiPageListTests.test_list_enumerates_canonical_pages_with_titles) ... ok\ntest_boundaries_are_hard (test_wiki_page_contract.WikiPageReadTests.test_boundaries_are_hard) ... ok\ntest_drift_remains_the_default_action (test_wiki_page_contract.WikiPageReadTests.test_drift_remains_the_default_action) ... ok\ntest_read_page_without_stamps_reports_null_provenance (test_wiki_page_contract.WikiPageReadTests.test_read_page_without_stamps_reports_null_provenance) ... ok\ntest_read_requires_a_path (test_wiki_page_contract.WikiPageReadTests.test_read_requires_a_path) ... ok\ntest_read_returns_exact_markdown_with_provenance (test_wiki_page_contract.WikiPageReadTests.test_read_returns_exact_markdown_with_provenance) ... ok\ntest_no_cp1252_unencodable_chars_in_agent_facing_tools (test_windows_console_safe.SourceScanTests.test_no_cp1252_unencodable_chars_in_agent_facing_tools) ... ok\ntest_backfill_pending_status_renders_cp1252_safe (test_windows_console_safe.StatusRenderTests.test_backfill_pending_status_renders_cp1252_safe) ... ok\ntest_json_output_escapes_non_console_characters (test_windows_console_safe.WorkflowCliRenderTests.test_json_output_escapes_non_console_characters) ... ok\ntest_repository_workflow_surfaces_are_chml_zero (test_workflow_chml_audit.WorkflowChmlAuditTests.test_repository_workflow_surfaces_are_chml_zero) ... ok\ntest_semantic_skill_finding_is_part_of_workflow_chml (test_workflow_chml_audit.WorkflowChmlAuditTests.test_semantic_skill_finding_is_part_of_workflow_chml) ... ok\ntest_git_workflow_pushes_clean_verified_commits_in_autonomous (test_workflow_consistency.AutonomyConflictResolutionTests.test_git_workflow_pushes_clean_verified_commits_in_autonomous) ... ok\ntest_request_intake_defers_autonomy_and_owns_graduation (test_workflow_consistency.AutonomyConflictResolutionTests.test_request_intake_defers_autonomy_and_owns_graduation) ... ok\ntest_evidence_pair_states_create_vs_review_boundary (test_workflow_consistency.BoundaryClarityTests.test_evidence_pair_states_create_vs_review_boundary) ... ok\ntest_session_close_states_memory_boundary (test_workflow_consistency.BoundaryClarityTests.test_session_close_states_memory_boundary) ... ok\ntest_document_branch_has_promotion_owner (test_workflow_consistency.DeadEndOwnerTests.test_document_branch_has_promotion_owner) ... ok\ntest_health_findings_have_triage_dispositions (test_workflow_consistency.DeadEndOwnerTests.test_health_findings_have_triage_dispositions) ... ok\ntest_memory_owns_schema_version_changes (test_workflow_consistency.DeadEndOwnerTests.test_memory_owns_schema_version_changes) ... ok\ntest_planning_lifecycle_has_stage_readiness_checkpoints (test_workflow_consistency.DeadEndOwnerTests.test_planning_lifecycle_has_stage_readiness_checkpoints) ... ok\ntest_session_close_runs_traceability_sync (test_workflow_consistency.DeadEndOwnerTests.test_session_close_runs_traceability_sync) ... ok\n\n----------------------------------------------------------------------\nRan 1275 tests in 109.627s\n\nOK\n"
          },
          "output_hash": "399fb3e50e30c04e1f0171d1d1ee4c52239ae881bff3c93bbeaa6d74ea503e4c",
          "completed_at": "2026-07-25T07:28:39Z"
        },
        {
          "id": "release",
          "action": "process.fixed",
          "status": "completed",
          "resolved_input_hash": "1e5b0c18d93eb4c2248f9a00adbd438e52f3ef02137477fb8376c69cfe86fc9b",
          "started_at": "2026-07-25T07:28:39Z",
          "output": {
            "operation": "release_check",
            "command": [
              "python",
              "scripts/release_check.py"
            ],
            "exit_code": 0,
            "stdout": "# Release Hygiene Report\n\nBase version: `0.16.57`\nHead version: `0.16.59`\nChanged files checked: 47\n\n## Findings\n\n- None\n",
            "stderr": ""
          },
          "output_hash": "ee7568097101529d9085ba0a379f6d944bdbf68a3513a7d6424fb192b9241e7a",
          "completed_at": "2026-07-25T07:28:39Z"
        },
        {
          "id": "gaps",
          "action": "process.fixed",
          "status": "completed",
          "resolved_input_hash": "577241909238eeb55683f89d2d2216648dad2e3127397993e22493829a1307a4",
          "started_at": "2026-07-25T07:28:39Z",
          "output": {
            "operation": "gap_audit",
            "command": [
              "python",
              "scripts/gap_audit.py",
              "--target-version",
              "0.16.59",
              "--config",
              ".prd_plugin/config.json",
              "--releases",
              ".prd_plugin/state/releases.json"
            ],
            "exit_code": 0,
            "stdout": "# PRD Plugin Gap Audit\n\nTarget version: `0.16.59`\n\n## Findings\n\n- None\n",
            "stderr": ""
          },
          "output_hash": "3851daf6e2a7b706c57c9c8baa199f3e68424e97f1b938e6e7e91ddcf937e5ef",
          "completed_at": "2026-07-25T07:28:39Z"
        },
        {
          "id": "package",
          "action": "process.fixed",
          "status": "completed",
          "resolved_input_hash": "06cd12e1f3db3d985f9150520afa60f288297ff0ca01a8e813e9bb6291aa8836",
          "started_at": "2026-07-25T07:28:40Z",
          "output": {
            "operation": "package_check",
            "command": [
              "npm",
              "pack",
              "--dry-run"
            ],
            "exit_code": 0,
            "stdout": "prd-plugin-0.16.59.tgz\n",
            "stderr": "te.md\nnpm notice 17.0kB templates/repo-skeleton/.agents/skills/project-llm-wiki/SKILL.md\nnpm notice 7.4kB templates/repo-skeleton/.agents/skills/project-local-integration/SKILL.md\nnpm notice 8.1kB templates/repo-skeleton/.agents/skills/project-memory/SKILL.md\nnpm notice 6.2kB templates/repo-skeleton/.agents/skills/project-planning-lifecycle/SKILL.md\nnpm notice 6.0kB templates/repo-skeleton/.agents/skills/project-prd-plugin-setup/SKILL.md\nnpm notice 3.5kB templates/repo-skeleton/.agents/skills/project-prd/SKILL.md\nnpm notice 27.5kB templates/repo-skeleton/.agents/skills/project-request-intake/SKILL.md\nnpm notice 4.8kB templates/repo-skeleton/.agents/skills/project-session-close/SKILL.md\nnpm notice 10.3kB templates/repo-skeleton/.agents/skills/project-systematic-debugging/SKILL.md\nnpm notice 4.8kB templates/repo-skeleton/.agents/skills/project-test-driven-implementation/SKILL.md\nnpm notice 3.7kB templates/repo-skeleton/.agents/skills/project-traceability-review/SKILL.md\nnpm notice 2.5kB templates/repo-skeleton/.agents/skills/project-traceability-sync/SKILL.md\nnpm notice 6.6kB templates/repo-skeleton/.agents/skills/project-verification-before-completion/SKILL.md\nnpm notice 1.5kB templates/repo-skeleton/.agents/skills/source-command-prd-autonomy/SKILL.md\nnpm notice 1.2kB templates/repo-skeleton/.agents/skills/source-command-prd-close/SKILL.md\nnpm notice 3.3kB templates/repo-skeleton/.agents/skills/source-command-prd-config/SKILL.md\nnpm notice 2.4kB templates/repo-skeleton/.agents/skills/source-command-prd-drift/SKILL.md\nnpm notice 2.1kB templates/repo-skeleton/.agents/skills/source-command-prd-graph/SKILL.md\nnpm notice 2.2kB templates/repo-skeleton/.agents/skills/source-command-prd-hooks/SKILL.md\nnpm notice 1.3kB templates/repo-skeleton/.agents/skills/source-command-prd-new/SKILL.md\nnpm notice 2.0kB templates/repo-skeleton/.agents/skills/source-command-prd-off/SKILL.md\nnpm notice 1.5kB templates/repo-skeleton/.agents/skills/source-command-prd-on/SKILL.md\nnpm notice 2.3kB templates/repo-skeleton/.agents/skills/source-command-prd-reflections/SKILL.md\nnpm notice 2.5kB templates/repo-skeleton/.agents/skills/source-command-prd-report/SKILL.md\nnpm notice 1.2kB templates/repo-skeleton/.agents/skills/source-command-prd-status/SKILL.md\nnpm notice 1.7kB templates/repo-skeleton/.agents/skills/source-command-prd-track/SKILL.md\nnpm notice 1.8kB templates/repo-skeleton/.agents/skills/source-command-prd-version/SKILL.md\nnpm notice 1.7kB templates/repo-skeleton/.agents/skills/source-command-prd-workflow/SKILL.md\nnpm notice 764B templates/repo-skeleton/.claude-plugin/plugin.json\nnpm notice 772B templates/repo-skeleton/.claude/commands/prd-autonomy.md\nnpm notice 493B templates/repo-skeleton/.claude/commands/prd-close.md\nnpm notice 2.5kB templates/repo-skeleton/.claude/commands/prd-config.md\nnpm notice 1.6kB templates/repo-skeleton/.claude/commands/prd-drift.md\nnpm notice 1.4kB templates/repo-skeleton/.claude/commands/prd-graph.md\nnpm notice 1.6kB templates/repo-skeleton/.claude/commands/prd-hooks.md\nnpm notice 639B templates/repo-skeleton/.claude/commands/prd-new.md\nnpm notice 1.4kB templates/repo-skeleton/.claude/commands/prd-off.md\nnpm notice 862B templates/repo-skeleton/.claude/commands/prd-on.md\nnpm notice 1.6kB templates/repo-skeleton/.claude/commands/prd-reflections.md\nnpm notice 1.8kB templates/repo-skeleton/.claude/commands/prd-report.md\nnpm notice 549B templates/repo-skeleton/.claude/commands/prd-status.md\nnpm notice 974B templates/repo-skeleton/.claude/commands/prd-track.md\nnpm notice 1.0kB templates/repo-skeleton/.claude/commands/prd-version.md\nnpm notice 938B templates/repo-skeleton/.claude/commands/prd-workflow.md\nnpm notice 1.6kB templates/repo-skeleton/.claude/hooks/prd_drift_check.py\nnpm notice 2.0kB templates/repo-skeleton/.claude/hooks/prd_log_skill.py\nnpm notice 4.1kB templates/repo-skeleton/.claude/hooks/prd_nudge.py\nnpm notice 3.7kB templates/repo-skeleton/.claude/hooks/prd_precommit_gate.py\nnpm notice 6.1kB templates/repo-skeleton/.claude/hooks/prd_reflection.py\nnpm notice 3.5kB templates/repo-skeleton/.claude/hooks/prd_session_report.py\nnpm notice 15.8kB templates/repo-skeleton/.claude/hooks/prd_stop_guard.py\nnpm notice 1.2kB templates/repo-skeleton/.claude/settings.json\nnpm notice 3.0kB templates/repo-skeleton/.claude/skills/project-architecture/SKILL.md\nnpm notice 7.4kB templates/repo-skeleton/.claude/skills/project-blocker-resolution/SKILL.md\nnpm notice 2.8kB templates/repo-skeleton/.claude/skills/project-brainstorm/SKILL.md\nnpm notice 5.5kB templates/repo-skeleton/.claude/skills/project-change-request/SKILL.md\nnpm notice 6.3kB templates/repo-skeleton/.claude/skills/project-code-review/SKILL.md\nnpm notice 2.7kB templates/repo-skeleton/.claude/skills/project-decision-ledger/SKILL.md\nnpm notice 23.6kB templates/repo-skeleton/.claude/skills/project-decision-policy/SKILL.md\nnpm notice 4.4kB templates/repo-skeleton/.claude/skills/project-deterministic-workflows/SKILL.md\nnpm notice 5.2kB templates/repo-skeleton/.claude/skills/project-document-branch/SKILL.md\nnpm notice 2.8kB templates/repo-skeleton/.claude/skills/project-evidence-ledger/SKILL.md\nnpm notice 3.3kB templates/repo-skeleton/.claude/skills/project-evidence/SKILL.md\nnpm notice 11.9kB templates/repo-skeleton/.claude/skills/project-git-workflow/SKILL.md\nnpm notice 7.4kB templates/repo-skeleton/.claude/skills/project-health/SKILL.md\nnpm notice 6.0kB templates/repo-skeleton/.claude/skills/project-implementation-plan/SKILL.md\nnpm notice 1.1kB templates/repo-skeleton/.claude/skills/project-llm-wiki/LICENSE\nnpm notice 842B templates/repo-skeleton/.claude/skills/project-llm-wiki/references/archive-template.md\nnpm notice 843B templates/repo-skeleton/.claude/skills/project-llm-wiki/references/article-template.md\nnpm notice 559B templates/repo-skeleton/.claude/skills/project-llm-wiki/references/index-template.md\nnpm notice 317B templates/repo-skeleton/.claude/skills/project-llm-wiki/references/raw-template.md\nnpm notice 17.0kB templates/repo-skeleton/.claude/skills/project-llm-wiki/SKILL.md\nnpm notice 7.4kB templates/repo-skeleton/.claude/skills/project-local-integration/SKILL.md\nnpm notice 8.1kB templates/repo-skeleton/.claude/skills/project-memory/SKILL.md\nnpm notice 6.2kB templates/repo-skeleton/.claude/skills/project-planning-lifecycle/SKILL.md\nnpm notice 6.0kB templates/repo-skeleton/.claude/skills/project-prd-plugin-setup/SKILL.md\nnpm notice 3.5kB templates/repo-skeleton/.claude/skills/project-prd/SKILL.md\nnpm notice 27.5kB templates/repo-skeleton/.claude/skills/project-request-intake/SKILL.md\nnpm notice 4.8kB templates/repo-skeleton/.claude/skills/project-session-close/SKILL.md\nnpm notice 10.3kB templates/repo-skeleton/.claude/skills/project-systematic-debugging/SKILL.md\nnpm notice 4.8kB templates/repo-skeleton/.claude/skills/project-test-driven-implementation/SKILL.md\nnpm notice 3.7kB templates/repo-skeleton/.claude/skills/project-traceability-review/SKILL.md\nnpm notice 2.5kB templates/repo-skeleton/.claude/skills/project-traceability-sync/SKILL.md\nnpm notice 6.6kB templates/repo-skeleton/.claude/skills/project-verification-before-completion/SKILL.md\nnpm notice 1.5kB templates/repo-skeleton/.claude/skills/source-command-prd-autonomy/SKILL.md\nnpm notice 1.2kB templates/repo-skeleton/.claude/skills/source-command-prd-close/SKILL.md\nnpm notice 3.3kB templates/repo-skeleton/.claude/skills/source-command-prd-config/SKILL.md\nnpm notice 2.4kB templates/repo-skeleton/.claude/skills/source-command-prd-drift/SKILL.md\nnpm notice 2.1kB templates/repo-skeleton/.claude/skills/source-command-prd-graph/SKILL.md\nnpm notice 2.2kB templates/repo-skeleton/.claude/skills/source-command-prd-hooks/SKILL.md\nnpm notice 1.3kB templates/repo-skeleton/.claude/skills/source-command-prd-new/SKILL.md\nnpm notice 2.0kB templates/repo-skeleton/.claude/skills/source-command-prd-off/SKILL.md\nnpm notice 1.5kB templates/repo-skeleton/.claude/skills/source-command-prd-on/SKILL.md\nnpm notice 2.3kB templates/repo-skeleton/.claude/skills/source-command-prd-reflections/SKILL.md\nnpm notice 2.5kB templates/repo-skeleton/.claude/skills/source-command-prd-report/SKILL.md\nnpm notice 1.2kB templates/repo-skeleton/.claude/skills/source-command-prd-status/SKILL.md\nnpm notice 1.7kB templates/repo-skeleton/.claude/skills/source-command-prd-track/SKILL.md\nnpm notice 1.8kB templates/repo-skeleton/.claude/skills/source-command-prd-version/SKILL.md\nnpm notice 1.7kB templates/repo-skeleton/.claude/skills/source-command-prd-workflow/SKILL.md\nnpm notice 3.2kB templates/repo-skeleton/.codex-plugin/plugin.json\nnpm notice 3.3kB templates/repo-skeleton/.codex/hooks.json\nnpm notice 743B templates/repo-skeleton/.githooks/pre-commit\nnpm notice 734B templates/repo-skeleton/.github/workflows/prd-gate.yml\nnpm notice 3.2kB templates/repo-skeleton/.opencode/plugin.json\nnpm notice 4.4kB templates/repo-skeleton/.opencode/plugins/prd-hooks.js\nnpm notice 3.0kB templates/repo-skeleton/.opencode/skill/project-architecture/SKILL.md\nnpm notice 7.4kB templates/repo-skeleton/.opencode/skill/project-blocker-resolution/SKILL.md\nnpm notice 2.8kB templates/repo-skeleton/.opencode/skill/project-brainstorm/SKILL.md\nnpm notice 5.5kB templates/repo-skeleton/.opencode/skill/project-change-request/SKILL.md\nnpm notice 6.3kB templates/repo-skeleton/.opencode/skill/project-code-review/SKILL.md\nnpm notice 2.7kB templates/repo-skeleton/.opencode/skill/project-decision-ledger/SKILL.md\nnpm notice 23.6kB templates/repo-skeleton/.opencode/skill/project-decision-policy/SKILL.md\nnpm notice 4.4kB templates/repo-skeleton/.opencode/skill/project-deterministic-workflows/SKILL.md\nnpm notice 5.2kB templates/repo-skeleton/.opencode/skill/project-document-branch/SKILL.md\nnpm notice 2.8kB templates/repo-skeleton/.opencode/skill/project-evidence-ledger/SKILL.md\nnpm notice 3.3kB templates/repo-skeleton/.opencode/skill/project-evidence/SKILL.md\nnpm notice 11.9kB templates/repo-skeleton/.opencode/skill/project-git-workflow/SKILL.md\nnpm notice 7.4kB templates/repo-skeleton/.opencode/skill/project-health/SKILL.md\nnpm notice 6.0kB templates/repo-skeleton/.opencode/skill/project-implementation-plan/SKILL.md\nnpm notice 1.1kB templates/repo-skeleton/.opencode/skill/project-llm-wiki/LICENSE\nnpm notice 842B templates/repo-skeleton/.opencode/skill/project-llm-wiki/references/archive-template.md\nnpm notice 843B templates/repo-skeleton/.opencode/skill/project-llm-wiki/references/article-template.md\nnpm notice 559B templates/repo-skeleton/.opencode/skill/project-llm-wiki/references/index-template.md\nnpm notice 317B templates/repo-skeleton/.opencode/skill/project-llm-wiki/references/raw-template.md\nnpm notice 17.0kB templates/repo-skeleton/.opencode/skill/project-llm-wiki/SKILL.md\nnpm notice 7.4kB templates/repo-skeleton/.opencode/skill/project-local-integration/SKILL.md\nnpm notice 8.1kB templates/repo-skeleton/.opencode/skill/project-memory/SKILL.md\nnpm notice 6.2kB templates/repo-skeleton/.opencode/skill/project-planning-lifecycle/SKILL.md\nnpm notice 6.0kB templates/repo-skeleton/.opencode/skill/project-prd-plugin-setup/SKILL.md\nnpm notice 3.5kB templates/repo-skeleton/.opencode/skill/project-prd/SKILL.md\nnpm notice 27.5kB templates/repo-skeleton/.opencode/skill/project-request-intake/SKILL.md\nnpm notice 4.8kB templates/repo-skeleton/.opencode/skill/project-session-close/SKILL.md\nnpm notice 10.3kB templates/repo-skeleton/.opencode/skill/project-systematic-debugging/SKILL.md\nnpm notice 4.8kB templates/repo-skeleton/.opencode/skill/project-test-driven-implementation/SKILL.md\nnpm notice 3.7kB templates/repo-skeleton/.opencode/skill/project-traceability-review/SKILL.md\nnpm notice 2.5kB templates/repo-skeleton/.opencode/skill/project-traceability-sync/SKILL.md\nnpm notice 6.6kB templates/repo-skeleton/.opencode/skill/project-verification-before-completion/SKILL.md\nnpm notice 1.5kB templates/repo-skeleton/.opencode/skill/source-command-prd-autonomy/SKILL.md\nnpm notice 1.2kB templates/repo-skeleton/.opencode/skill/source-command-prd-close/SKILL.md\nnpm notice 3.3kB templates/repo-skeleton/.opencode/skill/source-command-prd-config/SKILL.md\nnpm notice 2.4kB templates/repo-skeleton/.opencode/skill/source-command-prd-drift/SKILL.md\nnpm notice 2.1kB templates/repo-skeleton/.opencode/skill/source-command-prd-graph/SKILL.md\nnpm notice 2.2kB templates/repo-skeleton/.opencode/skill/source-command-prd-hooks/SKILL.md\nnpm notice 1.3kB templates/repo-skeleton/.opencode/skill/source-command-prd-new/SKILL.md\nnpm notice 2.0kB templates/repo-skeleton/.opencode/skill/source-command-prd-off/SKILL.md\nnpm notice 1.5kB templates/repo-skeleton/.opencode/skill/source-command-prd-on/SKILL.md\nnpm notice 2.3kB templates/repo-skeleton/.opencode/skill/source-command-prd-reflections/SKILL.md\nnpm notice 2.5kB templates/repo-skeleton/.opencode/skill/source-command-prd-report/SKILL.md\nnpm notice 1.2kB templates/repo-skeleton/.opencode/skill/source-command-prd-status/SKILL.md\nnpm notice 1.7kB templates/repo-skeleton/.opencode/skill/source-command-prd-track/SKILL.md\nnpm notice 1.8kB templates/repo-skeleton/.opencode/skill/source-command-prd-version/SKILL.md\nnpm notice 1.7kB templates/repo-skeleton/.opencode/skill/source-command-prd-workflow/SKILL.md\nnpm notice 14.9kB templates/repo-skeleton/.prd_plugin/config.json\nnpm notice 1.6kB templates/repo-skeleton/.prd_plugin/hooks/prd_drift_check.py\nnpm notice 12.0kB templates/repo-skeleton/.prd_plugin/hooks/prd_hook_dispatch.py\nnpm notice 2.0kB templates/repo-skeleton/.prd_plugin/hooks/prd_log_skill.py\nnpm notice 4.1kB templates/repo-skeleton/.prd_plugin/hooks/prd_nudge.py\nnpm notice 3.7kB templates/repo-skeleton/.prd_plugin/hooks/prd_precommit_gate.py\nnpm notice 86.0kB templates/repo-skeleton/.prd_plugin/hooks/prd_reason_guard.py\nnpm notice 6.1kB templates/repo-skeleton/.prd_plugin/hooks/prd_reflection.py\nnpm notice 3.5kB templates/repo-skeleton/.prd_plugin/hooks/prd_session_report.py\nnpm notice 15.8kB templates/repo-skeleton/.prd_plugin/hooks/prd_stop_guard.py\nnpm notice 8.0kB templates/repo-skeleton/.prd_plugin/hooks/prd_test_scope_guard.py\nnpm notice 3.7kB templates/repo-skeleton/.prd_plugin/ID-SCHEME.md\nnpm notice 581B templates/repo-skeleton/.prd_plugin/ids/registry.json\nnpm notice 12.6kB templates/repo-skeleton/.prd_plugin/METHOD.md\nnpm notice 725B templates/repo-skeleton/.prd_plugin/method/artifact-format.md\nnpm notice 1.5kB templates/repo-skeleton/.prd_plugin/method/completion-gate.md\nnpm notice 3.6kB templates/repo-skeleton/.prd_plugin/method/deterministic-workflows.md\nnpm notice 1.2kB templates/repo-skeleton/.prd_plugin/method/estimation.md\nnpm notice 2.1kB templates/repo-skeleton/.prd_plugin/method/grounding.md\nnpm notice 3.2kB templates/repo-skeleton/.prd_plugin/method/reporting.md\nnpm notice 4.1kB templates/repo-skeleton/.prd_plugin/method/self-service.md\nnpm notice 1.6kB templates/repo-skeleton/.prd_plugin/method/staleness-rules.md\nnpm notice 1.0kB templates/repo-skeleton/.prd_plugin/method/state-validation.md\nnpm notice 3.0kB templates/repo-skeleton/.prd_plugin/method/subagents.md\nnpm notice 1.3kB templates/repo-skeleton/.prd_plugin/services.json\nnpm notice 47B templates/repo-skeleton/.prd_plugin/state/changelog.json\nnpm notice 49B templates/repo-skeleton/.prd_plugin/state/decisions.json\nnpm notice 157B templates/repo-skeleton/.prd_plugin/state/health.json\nnpm notice 47B templates/repo-skeleton/.prd_plugin/state/memory.json\nnpm notice 287B templates/repo-skeleton/.prd_plugin/state/project.json\nnpm notice 48B templates/repo-skeleton/.prd_plugin/state/releases.json\nnpm notice 48B templates/repo-skeleton/.prd_plugin/state/requests.json\nnpm notice 214B templates/repo-skeleton/.prd_plugin/state/sessions/shared/promoted-session-summaries.jsonl\nnpm notice 49B templates/repo-skeleton/.prd_plugin/state/substrate-links.json\nnpm notice 51B templates/repo-skeleton/.prd_plugin/state/tracking.json\nnpm notice 48B templates/repo-skeleton/.prd_plugin/state/workflow-runs.json\nnpm notice 167B templates/repo-skeleton/.prd_plugin/templates/architecture-delta.md\nnpm notice 1.4kB templates/repo-skeleton/.prd_plugin/templates/architecture.json\nnpm notice 368B templates/repo-skeleton/.prd_plugin/templates/brainstorm.md\nnpm notice 274B templates/repo-skeleton/.prd_plugin/templates/changelog.json\nnpm notice 15.1kB templates/repo-skeleton/.prd_plugin/templates/config.json\nnpm notice 265B templates/repo-skeleton/.prd_plugin/templates/decision-record.md\nnpm notice 398B templates/repo-skeleton/.prd_plugin/templates/decisions.json\nnpm notice 372B templates/repo-skeleton/.prd_plugin/templates/doc-branch.json\nnpm notice 313B templates/repo-skeleton/.prd_plugin/templates/doc-branch.md\nnpm notice 115B templates/repo-skeleton/.prd_plugin/templates/evidence.md\nnpm notice 249B templates/repo-skeleton/.prd_plugin/templates/handoff.json\nnpm notice 407B templates/repo-skeleton/.prd_plugin/templates/health.json\nnpm notice 695B templates/repo-skeleton/.prd_plugin/templates/human-exports/architecture.md\nnpm notice 626B templates/repo-skeleton/.prd_plugin/templates/human-exports/implementation-plan.md\nnpm notice 580B templates/repo-skeleton/.prd_plugin/templates/human-exports/prd.md\nnpm notice 1.4kB templates/repo-skeleton/.prd_plugin/templates/implementation-plan.json\nnpm notice 65B templates/repo-skeleton/.prd_plugin/templates/mailbox.json\nnpm notice 348B templates/repo-skeleton/.prd_plugin/templates/memory.json\nnpm notice 471B templates/repo-skeleton/.prd_plugin/templates/merge-checklist.md\nnpm notice 163B templates/repo-skeleton/.prd_plugin/templates/plan-delta.md\nnpm notice 139B templates/repo-skeleton/.prd_plugin/templates/prd-delta.md\nnpm notice 1.3kB templates/repo-skeleton/.prd_plugin/templates/prd.json\nnpm notice 455B templates/repo-skeleton/.prd_plugin/templates/project.json\nnpm notice 125B templates/repo-skeleton/.prd_plugin/templates/promoted-session-summary.jsonl\nnpm notice 923B templates/repo-skeleton/.prd_plugin/templates/releases.json\nnpm notice 1.4kB templates/repo-skeleton/.prd_plugin/templates/request.json\nnpm notice 1.7kB templates/repo-skeleton/.prd_plugin/templates/requests.json\nnpm notice 23.4kB templates/repo-skeleton/.prd_plugin/templates/script-install-scope.json\nnpm notice 235B templates/repo-skeleton/.prd_plugin/templates/session.json\nnpm notice 15.6kB templates/repo-skeleton/.prd_plugin/templates/skill-install-scope.json\nnpm notice 317B templates/repo-skeleton/.prd_plugin/templates/submission-package.json\nnpm notice 5.7kB templates/repo-skeleton/.prd_plugin/templates/tool-surface.json\nnpm notice 225B templates/repo-skeleton/.prd_plugin/templates/traceability-matrix.md\nnpm notice 321B templates/repo-skeleton/.prd_plugin/templates/tracking.json\nnpm notice 375B templates/repo-skeleton/.prd_plugin/templates/utcp-config.json\nnpm notice 22.2kB templates/repo-skeleton/.prd_plugin/workflows.json\nnpm notice 15.2kB templates/repo-skeleton/AGENTS.md\nnpm notice 11.6kB templates/repo-skeleton/CLAUDE.md\nnpm notice 12.0kB templates/repo-skeleton/docs/INSTALL-MATRIX.md\nnpm notice 2.7kB templates/repo-skeleton/hooks/hooks.json\nnpm notice 1.4kB templates/request.json\nnpm notice 1.7kB templates/requests.json\nnpm notice 23.4kB templates/script-install-scope.json\nnpm notice 1.3kB templates/services.json\nnpm notice 235B templates/session.json\nnpm notice 15.6kB templates/skill-install-scope.json\nnpm notice 317B templates/submission-package.json\nnpm notice 10.4kB templates/substrate-capabilities.json\nnpm notice 48.5kB templates/tool-spec.json\nnpm notice 7.9kB templates/tool-surface.json\nnpm notice 225B templates/traceability-matrix.md\nnpm notice 321B templates/tracking.json\nnpm notice 375B templates/utcp-config.json\nnpm notice 22.2kB templates/workflows.json\nnpm notice Tarball Details\nnpm notice name: prd-plugin\nnpm notice version: 0.16.59\nnpm notice filename: prd-plugin-0.16.59.tgz\nnpm notice package size: 1.8 MB\nnpm notice unpacked size: 11.4 MB\nnpm notice shasum: 52f5e6d7e445a989750cbbe9996ba80ca526f044\nnpm notice integrity: sha512-UEpJwC1j+ByhZ[...]k/oa25ak4AzBw==\nnpm notice total files: 652\nnpm notice\n"
          },
          "output_hash": "f91f22b694178a25c1953ade433a87436844625074adfe3e763f27dfd9540e21",
          "completed_at": "2026-07-25T07:28:41Z"
        },
        {
          "id": "gate",
          "action": "state.gate",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-25T07:28:42Z",
          "output": {
            "status": "attention",
            "repo_root": "D:\\Projects\\prd-plugin",
            "summary": {
              "errors": 0,
              "warnings": 0
            },
            "findings": [
              {
                "check": "state_consistency",
                "severity": "info",
                "summary": "File references 2 canonical IDs across 2 prefix(es); treated as a positive signal of extra work.",
                "required_action": "No action required; this is an informational signal."
              }
            ]
          },
          "output_hash": "6a0ed3d65779be265214a0e8395ab03978b9f7b91da9ffb59b257b73f82d087d",
          "completed_at": "2026-07-25T07:28:43Z"
        }
      ],
      "completed_at": "2026-07-25T07:28:43Z"
    },
    {
      "id": "WFR-443",
      "schema_version": "1.0",
      "workflow_id": "session.start",
      "workflow_version": 1,
      "definition_hash": "dd0de9444af7b094cc93673d0844fb78c801d87d978cc5f6dd6bf3e3e863917d",
      "plan_hash": "1f4ae0cd6be8385f8a9310e49978bd8d93baa729842eb6df9243665a1b581277",
      "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
      "inputs": {},
      "idempotency_key": "reason-guard-host-session-parity-session-start-v1",
      "status": "completed",
      "attempt": 1,
      "created_at": "2026-07-25T10:28:40Z",
      "updated_at": "2026-07-25T10:28:43Z",
      "receipts": [
        {
          "step_id": "mailbox",
          "action": "requests.pull",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "ab8a35139cfd3f5821ebc5138c9a44c899b54e4036790654ff120e79c7ab6223",
          "completed_at": "2026-07-25T10:28:41Z"
        },
        {
          "step_id": "config",
          "action": "config.audit",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "9cbf27cbac0de8a8eb0ed2dd07eae4f75908186aa645194b551c48f999ebb1b5",
          "completed_at": "2026-07-25T10:28:41Z"
        },
        {
          "step_id": "services",
          "action": "services.audit",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "13dcc58bd528f3efa3e6e0fa0853a6eedc376f1f3685fbd4869cbb2b60382ee3",
          "completed_at": "2026-07-25T10:28:41Z"
        },
        {
          "step_id": "state",
          "action": "state.consistency",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "9963110856ca8182da0dfdbb22f6960618b55dbc121be0dce0066a7c7a389b10",
          "completed_at": "2026-07-25T10:28:42Z"
        },
        {
          "step_id": "status",
          "action": "state.query",
          "input_hash": "a15231a2142a2a9a85355a8b9cbbccffe01a9c9c2c2fd8c2bc2987cdc481564a",
          "output_hash": "4f0dd67f5bb344e28645c3f6a574fda657375f1a055134f88970fd7a7c856231",
          "completed_at": "2026-07-25T10:28:42Z"
        },
        {
          "step_id": "substrate",
          "action": "substrate.preflight",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "a6df426290b4549a59eecaa0519ead9bcc50b7fcb25bd2185ff6047960f19ccb",
          "completed_at": "2026-07-25T10:28:43Z"
        },
        {
          "step_id": "notices",
          "action": "substrate.notices",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "38b904a1cf83df048360fb2480571b749fd98d57e11f1afdffb5a74a78166fea",
          "completed_at": "2026-07-25T10:28:43Z"
        },
        {
          "step_id": "goals",
          "action": "substrate.goals",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "cdfd4de44a28140e686159f34f7b47975954c67e1d1efcef666e985acb136ed8",
          "completed_at": "2026-07-25T10:28:43Z"
        }
      ],
      "steps": [
        {
          "id": "mailbox",
          "action": "requests.pull",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-25T10:28:41Z",
          "output": {
            "applied": 0,
            "resolved_ids": [],
            "unmatched": [],
            "mailboxes": [],
            "pruned_outbox": [],
            "consumed_mailboxes": [],
            "outbound": {
              "delivered": 0,
              "mailboxes_published": [],
              "undeliverable": [],
              "pending": []
            },
            "addressed": {
              "delivered": 0,
              "destinations": [],
              "undelivered": [
                {
                  "id": "REQ-030",
                  "state": "not_ours_to_send",
                  "target_repo": "prd-plugin",
                  "reason": "REQ-030 was imported from 'ZeusGrid'; its target_repo records who it was addressed to, not somewhere for us to send it. Reply on its thread instead."
                },
                {
                  "id": "REQ-003",
                  "state": "not_ours_to_send",
                  "target_repo": "prd-plugin",
                  "reason": "REQ-003 was imported from 'ZeusGrid'; its target_repo records who it was addressed to, not somewhere for us to send it. Reply on its thread instead."
                },
                {
                  "id": "REQ-004",
                  "state": "not_ours_to_send",
                  "target_repo": "prd-plugin",
                  "reason": "REQ-004 was imported from 'ZeusGrid'; its target_repo records who it was addressed to, not somewhere for us to send it. Reply on its thread instead."
                },
                {
                  "id": "REQ-005",
                  "state": "not_ours_to_send",
                  "target_repo": "prd-plugin",
                  "reason": "REQ-005 was imported from 'GRAPH_LANG'; its target_repo records who it was addressed to, not somewhere for us to send it. Reply on its thread instead."
                },
                {
                  "id": "REQ-002",
                  "state": "self_addressed",
                  "target_repo": "prd-plugin",
                  "reason": "REQ-002 is addressed to this repo ('prd-plugin'); it is already here."
                },
                {
                  "id": "REQ-028",
                  "state": "self_addressed",
                  "target_repo": "prd-plugin",
                  "reason": "REQ-028 is addressed to this repo ('prd-plugin'); it is already here."
                },
                {
                  "id": "REQ-029",
                  "state": "not_ours_to_send",
                  "target_repo": "ai-collab-v3",
                  "reason": "REQ-029 was imported from 'ai-collab-v3'; its target_repo records who it was addressed to, not somewhere for us to send it. Reply on its thread instead."
                },
                {
                  "id": "REQ-138",
                  "state": "terminal",
                  "target_repo": "no-such-repo",
                  "reason": "REQ-138 is 'rejected'; a closed request is not delivered. Reopen it or file a new one if it still needs to travel."
                }
              ],
              "advisories": []
            }
          },
          "output_hash": "ab8a35139cfd3f5821ebc5138c9a44c899b54e4036790654ff120e79c7ab6223",
          "completed_at": "2026-07-25T10:28:41Z"
        },
        {
          "id": "config",
          "action": "config.audit",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-25T10:28:41Z",
          "output": {
            "status": "ok",
            "summary": {
              "settings": 216,
              "mutable": 206,
              "read_only_or_managed": 10,
              "unclassified": 0,
              "unknown": 0,
              "invalid": 0,
              "missing_using_defaults": 0
            },
            "unclassified_keys": [],
            "unknown_keys": [],
            "invalid_values": [],
            "missing_using_defaults": []
          },
          "output_hash": "9cbf27cbac0de8a8eb0ed2dd07eae4f75908186aa645194b551c48f999ebb1b5",
          "completed_at": "2026-07-25T10:28:41Z"
        },
        {
          "id": "services",
          "action": "services.audit",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-25T10:28:41Z",
          "output": {
            "status": "ok",
            "summary": {
              "critical": 0,
              "high": 0,
              "medium": 0,
              "low": 0
            },
            "findings": []
          },
          "output_hash": "13dcc58bd528f3efa3e6e0fa0853a6eedc376f1f3685fbd4869cbb2b60382ee3",
          "completed_at": "2026-07-25T10:28:41Z"
        },
        {
          "id": "state",
          "action": "state.consistency",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-25T10:28:41Z",
          "output": {
            "status": "ok",
            "repo_root": "D:\\Projects\\prd-plugin",
            "summary": {
              "errors": 0,
              "warnings": 0,
              "infos": 1
            },
            "findings": [
              {
                "id": "CONS-INFO-001",
                "severity": "info",
                "path": "docs/evidence/EV-200.md",
                "summary": "File references 2 canonical IDs across 2 prefix(es); treated as a positive signal of extra work.",
                "referenced_prefixes": [
                  "CHG",
                  "TRK"
                ],
                "referenced_id_count": 2,
                "required_action": "No action required; this is an informational signal."
              }
            ]
          },
          "output_hash": "9963110856ca8182da0dfdbb22f6960618b55dbc121be0dce0066a7c7a389b10",
          "completed_at": "2026-07-25T10:28:42Z"
        },
        {
          "id": "status",
          "action": "state.query",
          "status": "completed",
          "resolved_input_hash": "a15231a2142a2a9a85355a8b9cbbccffe01a9c9c2c2fd8c2bc2987cdc481564a",
          "started_at": "2026-07-25T10:28:42Z",
          "output": {
            "repo_root": "D:\\Projects\\prd-plugin",
            "autonomy_level": "autonomous",
            "reasoning_guard": {
              "mode": "report",
              "backfill": {
                "mode": "recent",
                "limit": 20
              },
              "categories": {
                "evidence_follow_through": "inherit",
                "causal_claims": "inherit",
                "permanent_mutations": "inherit",
                "completion_claims": "inherit"
              },
              "effective_modes": {
                "evidence_follow_through": "report",
                "causal_claims": "report",
                "permanent_mutations": "report",
                "completion_claims": "report"
              },
              "report_available": true,
              "coverage": {
                "history": {
                  "backfill_complete": true,
                  "historically_complete": false,
                  "limit": 20,
                  "mode": "recent"
                },
                "host": "codex",
                "level": "recent_backfill",
                "missing": [
                  "historical visible reasoning coverage is limited to the last 20 summaries"
                ],
                "observed": [
                  "visible hook events",
                  "visible reasoning summaries",
                  "tool inputs",
                  "tool results"
                ]
              },
              "summary": {
                "blocked": 0,
                "deferred": 0,
                "open": 0,
                "violations": 0
              },
              "latency": {
                "samples_ms": [
                  19.952,
                  20.945,
                  20.196,
                  22.297,
                  20.512,
                  20.1,
                  20.017,
                  22.402,
                  20.247,
                  23.768,
                  21.314,
                  22.969,
                  23.805,
                  20.33,
                  20.467,
                  19.84,
                  20.269,
                  24.055,
                  21.052,
                  23.362,
                  22.555,
                  20.727,
                  24.603,
                  21.559,
                  20.419,
                  19.539,
                  20.309,
                  21.376,
                  20.567,
                  25.413,
                  19.808,
                  20.687,
                  21.953,
                  33.056,
                  21.151,
                  23.727,
                  28.85,
                  24.997,
                  25.248,
                  21.121,
                  34.788,
                  21.645,
                  24.165,
                  22.739,
                  29.908,
                  21.448,
                  27.123,
                  24.131,
                  26.372,
                  23.7,
                  26.135,
                  24.25,
                  23.531,
                  20.211,
                  23.734,
                  23.041,
                  35.071,
                  20.992,
                  28.554,
                  21.194,
                  24.67,
                  19.958,
                  23.394,
                  22.227,
                  24.589,
                  22.57,
                  24.052,
                  42.055,
                  41.63,
                  22.48,
                  23.818,
                  25.187,
                  23.136,
                  23.261,
                  19.463,
                  23.328,
                  21.866,
                  19.401,
                  20.552,
                  22.462,
                  22.705,
                  23.715,
                  23.651,
                  20.111,
                  21.163,
                  20.166,
                  20.513,
                  21.008,
                  23.803,
                  21.338,
                  24.631,
                  30.023,
                  27.108,
                  23.759,
                  31.093,
                  19.709,
                  20.679,
                  21.382,
                  23.578,
                  26.207,
                  26.16,
                  21.04,
                  22.959,
                  22.375,
                  20.852,
                  24.479,
                  21.779,
                  31.173,
                  22.639,
                  20.08,
                  22.201,
                  27.659,
                  20.306,
                  32.919,
                  21.491,
                  20.942,
                  28.665,
                  20.591,
                  24.374,
                  22.068,
                  26.256,
                  20.415,
                  35.607,
                  21.382,
                  23.708,
                  19.756,
                  24.967,
                  21.607
                ],
                "p50_ms": 22.555,
                "p95_ms": 32.919
              },
              "classification": {
                "candidates": 0,
                "created": 0,
                "ignored": 22,
                "reconciled": 0,
                "summaries_seen": 48,
                "uncertain": 26
              },
              "ingestion": {
                "backfill_complete": true,
                "covered_from_bytes": 34255798,
                "covered_through_bytes": 36526726,
                "cursor_bytes": 36526726,
                "has_covered_interval": true,
                "historically_complete": false,
                "initialized": true,
                "last_error": "",
                "limit": 20,
                "mode": "recent",
                "source_anchor_bytes": 36526726,
                "source_anchor_digest": "26aff1661c6f8d6151bde383e9cc6e280a72a1c3af53da852235fd2a225ac35a",
                "source_digest": "f5c9e413e4ff62d24c4af13b45bc8b47aa09fd470bf57da76b146268b629ae2c",
                "summaries_discovered": 48,
                "summaries_processed": 48
              },
              "clearance": {
                "active_blocking_diagnostics": [],
                "coverage": {
                  "host": "codex",
                  "level": "recent_backfill"
                },
                "deferred_blocking_obligations": [],
                "deferred_count": 0,
                "issued_at": "2026-07-25T10:28:40.411325Z",
                "limitations": [
                  "historical visible reasoning coverage is limited to the last 20 summaries",
                  "26 visible active summaries could not be classified confidently."
                ],
                "mode": "report",
                "open_blocking_obligations": [],
                "report_digest": "3eda848e6a9c04d7ca684559dbb66582ba0c54f52d3a76f145982f2af21878dd",
                "status": "conditional"
              }
            },
            "requests_by_status": {
              "accepted": 2,
              "deferred": 1,
              "implemented": 145,
              "in_review": 2,
              "proposed": 4,
              "rejected": 3
            },
            "active_tracking": [
              "TRK-160"
            ],
            "tracking_branches": [],
            "tracking_branch_counts": {},
            "tracking_branch_errors": [],
            "open_health": [
              "HLT-020",
              "HLT-021",
              "HLT-022",
              "HLT-023"
            ],
            "stale_count": 0,
            "skill_usage": {
              "project-llm-wiki": 2,
              "project-decision-policy": 1,
              "project-request-intake": 1,
              "project-test-driven-implementation": 1,
              "project-verification-before-completion": 1,
              "artifact-design": 1
            },
            "wiki_backfill_pending": false,
            "wiki_ingest_drift": null,
            "version_update": {
              "host_plugin": {
                "installed": "0.16.46",
                "latest": "0.16.59",
                "action": "the user plugin install is on 0.16.46 but 0.16.59 is published. Run `claude plugin update prd-plugin@prd-plugin` and restart the host to apply it."
              }
            }
          },
          "output_hash": "4f0dd67f5bb344e28645c3f6a574fda657375f1a055134f88970fd7a7c856231",
          "completed_at": "2026-07-25T10:28:42Z"
        },
        {
          "id": "substrate",
          "action": "substrate.preflight",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-25T10:28:43Z",
          "output": {
            "status": "disabled",
            "services": {
              "status": "ok",
              "summary": {
                "critical": 0,
                "high": 0,
                "medium": 0,
                "low": 0
              },
              "findings": []
            },
            "policy": {
              "configured": {
                "enabled": false,
                "mode": "off",
                "capabilities": [
                  "records",
                  "graph",
                  "events"
                ],
                "contract_version": 2,
                "require_source_refs": true,
                "endpoint": "http://127.0.0.1:47124",
                "manual_url": "http://127.0.0.1:47124/utcp.json",
                "knowledge_browse_url": "http://127.0.0.1:5276",
                "auth_env": "AI_COLLAB_API_KEY",
                "timeout_seconds": 5,
                "max_result_bytes": 1048576,
                "cache_ttl_seconds": 60,
                "fallback": "local",
                "automation": {
                  "discovery_on_session_start": true,
                  "knowledge_recall": true,
                  "memory_recall": true,
                  "context_enrichment": true,
                  "notices_on_session_start": false,
                  "goals_sync": false,
                  "telemetry_on_maintenance": false,
                  "reporting_dispatch": true,
                  "judgment_dispatch": true,
                  "verification_execution": true
                }
              },
              "active": false,
              "effective_mode": "off",
              "effective_capabilities": []
            }
          },
          "output_hash": "a6df426290b4549a59eecaa0519ead9bcc50b7fcb25bd2185ff6047960f19ccb",
          "completed_at": "2026-07-25T10:28:43Z"
        },
        {
          "id": "notices",
          "action": "substrate.notices",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-25T10:28:43Z",
          "output": {
            "status": "disabled"
          },
          "output_hash": "38b904a1cf83df048360fb2480571b749fd98d57e11f1afdffb5a74a78166fea",
          "completed_at": "2026-07-25T10:28:43Z"
        },
        {
          "id": "goals",
          "action": "substrate.goals",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-25T10:28:43Z",
          "output": {
            "status": "disabled",
            "created": 0,
            "observed": 0,
            "results": []
          },
          "output_hash": "cdfd4de44a28140e686159f34f7b47975954c67e1d1efcef666e985acb136ed8",
          "completed_at": "2026-07-25T10:28:43Z"
        }
      ],
      "completed_at": "2026-07-25T10:28:43Z"
    },
    {
      "id": "WFR-444",
      "schema_version": "1.0",
      "workflow_id": "request.intake",
      "workflow_version": 1,
      "definition_hash": "b61272f54c5d4778a27afe601feaae39057f75fac2c289858b6caf5f3b2a4fbe",
      "plan_hash": "bfa04b75d5eb078adda8b45debcc0878a74c56dbd83635d4e18bd316884c4043",
      "input_hash": "0970f27755a6797cbd5af7d8ea1ccf73be2b23969418dc95a27e82c7e4476fbf",
      "inputs": {
        "summary": "Make Reason Guard host-aware and preserve bounded reports across sessions, including offline Claude transcript backfill",
        "request_type": "change",
        "severity": "high",
        "scope": "upstream",
        "rationale": "The shipped guard uses one current-session report and only Codex has a transcript-summary adapter. Claude events arrive, but its visible transcript history is not normalized into the guard, and changing sessions resets coverage instead of preserving an auditable cross-session view. The earlier reduced-coverage fallback met the literal prior requirement but did not deliver actual host parity or longitudinal inspection.",
        "affected_areas": [
          ".prd_plugin/hooks/prd_reason_guard.py",
          "templates/repo-skeleton/.prd_plugin/hooks/prd_reason_guard.py",
          "scripts/prd_status.py",
          "scripts/prd_ui_export.py",
          "tests/test_reason_guard.py",
          "tests/test_hook_dispatcher.py",
          "docs/REASONING-GUARD.md",
          "wiki/hooks/reasoning-guard.md",
          "release and installer parity"
        ],
        "expected_behavior": "Reason Guard persists separate host-runtime reports for Claude, Codex, and OpenCode using one shared schema. Each host report retains bounded per-session records keyed by visible session identity so a new session cannot overwrite previous sessions. Claude safely reads an allowlisted visible-assistant transcript shape from a trusted Claude project transcript, supports live/recent/full backfill without launching Claude, and normalizes observations into the same obligation, coverage, telemetry, and clearance engine as Codex. Status and UI expose human-readable host/session history with IDs secondary. Existing single-file state migrates safely, output stays local-only and bounded, and all behavior is proven with fixtures, an available historical Claude transcript when safe, integration tests, benchmarks, installer parity, and full local verification without a live Claude run."
      },
      "idempotency_key": "reason-guard-host-session-parity-request-v1",
      "status": "completed",
      "attempt": 1,
      "created_at": "2026-07-25T10:29:26Z",
      "updated_at": "2026-07-25T10:29:27Z",
      "receipts": [
        {
          "step_id": "create",
          "action": "state.mutate",
          "input_hash": "296518977694c631f8f8437c7f21b5a609261e1bf223219c75cf87c3bfc91709",
          "output_hash": "ea041fe0a9b4ad9a5c4efe69d8c1143cc6a5a09e5ed6916a6447bd12eedf13d4",
          "completed_at": "2026-07-25T10:29:26Z"
        },
        {
          "step_id": "confirm",
          "action": "state.query",
          "input_hash": "27e12ec3bfb46b787be7d8dbde4b8f88a6e98cd292dcaba6653715b6d56712c7",
          "output_hash": "378d9965a3d55a60c822d9e47c3018e8c75c4ee725f5680765d10386bd7e0387",
          "completed_at": "2026-07-25T10:29:27Z"
        }
      ],
      "steps": [
        {
          "id": "create",
          "action": "state.mutate",
          "status": "completed",
          "resolved_input_hash": "296518977694c631f8f8437c7f21b5a609261e1bf223219c75cf87c3bfc91709",
          "started_at": "2026-07-25T10:29:26Z",
          "execution_token": "eec374608f2108715b369f2dbaaf6e82e956b3f7c7f6b6eb7c39edb208e8d03d",
          "output": {
            "id": "REQ-176",
            "status": "proposed"
          },
          "output_hash": "ea041fe0a9b4ad9a5c4efe69d8c1143cc6a5a09e5ed6916a6447bd12eedf13d4",
          "completed_at": "2026-07-25T10:29:26Z"
        },
        {
          "id": "confirm",
          "action": "state.query",
          "status": "completed",
          "resolved_input_hash": "27e12ec3bfb46b787be7d8dbde4b8f88a6e98cd292dcaba6653715b6d56712c7",
          "started_at": "2026-07-25T10:29:26Z",
          "output": {
            "kind": "REQ",
            "record": {
              "id": "REQ-176",
              "status": "proposed",
              "request_type": "change",
              "scope": "upstream",
              "visibility": "repo",
              "summary": "Make Reason Guard host-aware and preserve bounded reports across sessions, including offline Claude transcript backfill",
              "severity": "high",
              "requested_by_agent": "AGENT-MCP",
              "created_at": "2026-07-25",
              "rationale": "The shipped guard uses one current-session report and only Codex has a transcript-summary adapter. Claude events arrive, but its visible transcript history is not normalized into the guard, and changing sessions resets coverage instead of preserving an auditable cross-session view. The earlier reduced-coverage fallback met the literal prior requirement but did not deliver actual host parity or longitudinal inspection.",
              "affected_areas": [
                ".prd_plugin/hooks/prd_reason_guard.py",
                "templates/repo-skeleton/.prd_plugin/hooks/prd_reason_guard.py",
                "scripts/prd_status.py",
                "scripts/prd_ui_export.py",
                "tests/test_reason_guard.py",
                "tests/test_hook_dispatcher.py",
                "docs/REASONING-GUARD.md",
                "wiki/hooks/reasoning-guard.md",
                "release and installer parity"
              ],
              "expected_behavior": "Reason Guard persists separate host-runtime reports for Claude, Codex, and OpenCode using one shared schema. Each host report retains bounded per-session records keyed by visible session identity so a new session cannot overwrite previous sessions. Claude safely reads an allowlisted visible-assistant transcript shape from a trusted Claude project transcript, supports live/recent/full backfill without launching Claude, and normalizes observations into the same obligation, coverage, telemetry, and clearance engine as Codex. Status and UI expose human-readable host/session history with IDs secondary. Existing single-file state migrates safely, output stays local-only and bounded, and all behavior is proven with fixtures, an available historical Claude transcript when safe, integration tests, benchmarks, installer parity, and full local verification without a live Claude run."
            }
          },
          "output_hash": "378d9965a3d55a60c822d9e47c3018e8c75c4ee725f5680765d10386bd7e0387",
          "completed_at": "2026-07-25T10:29:27Z"
        }
      ],
      "completed_at": "2026-07-25T10:29:27Z"
    },
    {
      "id": "WFR-445",
      "schema_version": "1.0",
      "workflow_id": "planning.requirements",
      "workflow_version": 1,
      "definition_hash": "daa4833c9f8905528cd972d56f2868eb1e535dcbb47db1a5a09f7114a6e5c83e",
      "plan_hash": "19f086c3581ac6d7429f5c8d1b753c6566855271da1e964895a035b33bb63be6",
      "input_hash": "b7439e4639c5d7d09218cfc4859763c69f97a54fc6a5e5eeef3b5bfe3c7711b2",
      "inputs": {
        "instructions": "Define the smallest complete requirement delta for REQ-176. It must deliver host-runtime-specific local Reason Guard reports, bounded per-session history that survives session changes, a safe offline Claude transcript adapter using only visible assistant text records and never thinking blocks, live/recent/full backfill semantics for Claude and Codex, OpenCode-compatible session persistence, legacy single-file migration, human-readable status/UI session views with IDs secondary, source/skeleton parity, and verification against fixtures plus an available old Claude transcript without launching Claude. Preserve report default, model/network-free hook execution, privacy, atomicity, replay safety, and latency bounds. Explicitly exclude a server, embeddings, model calls, raw transcript persistence, live Claude execution before the user permits it, and downstream repository edits.",
        "source_refs": [
          "REQ-176",
          ".prd_plugin/state/artifacts/prd/PRD-011.json",
          ".prd_plugin/state/artifacts/architecture/ARCH-011.json",
          ".prd_plugin/state/artifacts/implementation_plan/IMP-015.json",
          "wiki/hooks/reasoning-guard.md",
          "docs/REASONING-GUARD.md",
          ".prd_plugin/hooks/prd_reason_guard.py",
          "tests/test_reason_guard.py"
        ]
      },
      "idempotency_key": "reason-guard-host-session-parity-requirements-v1",
      "status": "completed",
      "attempt": 1,
      "created_at": "2026-07-25T10:31:31Z",
      "updated_at": "2026-07-25T10:31:53Z",
      "receipts": [
        {
          "step_id": "state",
          "action": "state.consistency",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "9963110856ca8182da0dfdbb22f6960618b55dbc121be0dce0066a7c7a389b10",
          "completed_at": "2026-07-25T10:31:32Z"
        },
        {
          "step_id": "context",
          "action": "substrate.enrich",
          "input_hash": "99336526a96fe1b0010538004c7f61aff65a3bc3480e66718615d757329b6dbe",
          "output_hash": "be5914bca5e4bae269e0db22d87ccaf1ecee3aed093ea6eb5365ce409b4b950b",
          "completed_at": "2026-07-25T10:31:32Z"
        },
        {
          "step_id": "requirements",
          "action": "judgment.request",
          "input_hash": "e1a6de735eac81f4f529d8807c76966acf2cc1f12bcac9b992e0bf8966077332",
          "output_hash": "a9c5fa42db5eb99373c834c6149f83d14f5e26677d0b6ff1fbce7e1324aa25bf",
          "request_hash": "cb9e6e2ac5eb9a6e077237127d6474e2555bfa522e2695ab69f350b90a54402c",
          "completed_at": "2026-07-25T10:31:53Z"
        }
      ],
      "steps": [
        {
          "id": "state",
          "action": "state.consistency",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-25T10:31:31Z",
          "output": {
            "status": "ok",
            "repo_root": "D:\\Projects\\prd-plugin",
            "summary": {
              "errors": 0,
              "warnings": 0,
              "infos": 1
            },
            "findings": [
              {
                "id": "CONS-INFO-001",
                "severity": "info",
                "path": "docs/evidence/EV-200.md",
                "summary": "File references 2 canonical IDs across 2 prefix(es); treated as a positive signal of extra work.",
                "referenced_prefixes": [
                  "CHG",
                  "TRK"
                ],
                "referenced_id_count": 2,
                "required_action": "No action required; this is an informational signal."
              }
            ]
          },
          "output_hash": "9963110856ca8182da0dfdbb22f6960618b55dbc121be0dce0066a7c7a389b10",
          "completed_at": "2026-07-25T10:31:32Z"
        },
        {
          "id": "context",
          "action": "substrate.enrich",
          "status": "completed",
          "resolved_input_hash": "99336526a96fe1b0010538004c7f61aff65a3bc3480e66718615d757329b6dbe",
          "started_at": "2026-07-25T10:31:32Z",
          "output": {
            "status": "disabled",
            "results": [],
            "local_source_refs": [
              "REQ-176",
              ".prd_plugin/state/artifacts/prd/PRD-011.json",
              ".prd_plugin/state/artifacts/architecture/ARCH-011.json",
              ".prd_plugin/state/artifacts/implementation_plan/IMP-015.json",
              "wiki/hooks/reasoning-guard.md",
              "docs/REASONING-GUARD.md",
              ".prd_plugin/hooks/prd_reason_guard.py",
              "tests/test_reason_guard.py"
            ]
          },
          "output_hash": "be5914bca5e4bae269e0db22d87ccaf1ecee3aed093ea6eb5365ce409b4b950b",
          "completed_at": "2026-07-25T10:31:32Z"
        },
        {
          "id": "requirements",
          "action": "judgment.request",
          "status": "completed",
          "resolved_input_hash": "e1a6de735eac81f4f529d8807c76966acf2cc1f12bcac9b992e0bf8966077332",
          "started_at": "2026-07-25T10:31:32Z",
          "judgment_request": {
            "contract_version": 1,
            "run_id": "WFR-445",
            "step_id": "requirements",
            "task": "requirements",
            "instructions": "Define the smallest complete requirement delta for REQ-176. It must deliver host-runtime-specific local Reason Guard reports, bounded per-session history that survives session changes, a safe offline Claude transcript adapter using only visible assistant text records and never thinking blocks, live/recent/full backfill semantics for Claude and Codex, OpenCode-compatible session persistence, legacy single-file migration, human-readable status/UI session views with IDs secondary, source/skeleton parity, and verification against fixtures plus an available old Claude transcript without launching Claude. Preserve report default, model/network-free hook execution, privacy, atomicity, replay safety, and latency bounds. Explicitly exclude a server, embeddings, model calls, raw transcript persistence, live Claude execution before the user permits it, and downstream repository edits.",
            "source_refs": [
              "REQ-176",
              ".prd_plugin/state/artifacts/prd/PRD-011.json",
              ".prd_plugin/state/artifacts/architecture/ARCH-011.json",
              ".prd_plugin/state/artifacts/implementation_plan/IMP-015.json",
              "wiki/hooks/reasoning-guard.md",
              "docs/REASONING-GUARD.md",
              ".prd_plugin/hooks/prd_reason_guard.py",
              "tests/test_reason_guard.py"
            ],
            "source_hashes": {
              ".prd_plugin/state/artifacts/prd/PRD-011.json": "ebaa94a9e05f626a40a2a5bed9b449fbe2d8004eb5cb0fb9f1278001b80b5998",
              ".prd_plugin/state/artifacts/architecture/ARCH-011.json": "14859fe8e98f2b0e034265d81713b3ebf5add84996ca73ea1555c88fce6a936f",
              ".prd_plugin/state/artifacts/implementation_plan/IMP-015.json": "cf7d9e08d4d573e40ca1b39c309075be0138a4c1d55630a6c3d60587f08754de",
              "wiki/hooks/reasoning-guard.md": "44517ec26a42f15c9ff26a7c6688b864a69bdf7b8c75ab87a72af27b9aabd861",
              "docs/REASONING-GUARD.md": "befc4a5ad597bf18e2b66bdfc27f38728b41dcc66f4972385ff569729ab5798a",
              ".prd_plugin/hooks/prd_reason_guard.py": "103c3eff657a5a1304a9bfb07ddedef58e1558c91dcc9ff9c0a4ac5331d93ffc",
              "tests/test_reason_guard.py": "4f8aafa02f8987bfc19670e09731b651c10f72a9ec10c5f6f06565e7cc3f88c5"
            },
            "result_schema": {
              "type": "object",
              "required": [
                "summary",
                "requirements",
                "source_refs"
              ],
              "properties": {
                "summary": {
                  "type": "string"
                },
                "requirements": {
                  "type": "array",
                  "items": {
                    "type": "object"
                  }
                },
                "source_refs": {
                  "type": "array",
                  "items": {
                    "type": "string"
                  }
                }
              }
            },
            "executor": "ai-collab",
            "profile": "fast-capable",
            "constraints": {
              "no_project_state_writes": true,
              "require_source_refs": true
            },
            "request_hash": "cb9e6e2ac5eb9a6e077237127d6474e2555bfa522e2695ab69f350b90a54402c"
          },
          "output": {
            "summary": "Extend the existing kernel with host-scoped ledgers and session-scoped records, plus a Claude visible-assistant transcript adapter. Preserve one classifier and one state schema while preventing host or session overwrite. Use bounded retention, safe migration, and offline-only Claude validation.",
            "requirements": [
              {
                "id": "R1",
                "requirement": "Persist one local report per supported host runtime: claude_reasoning_guard.json, codex_reasoning_guard.json, and opencode_reasoning_guard.json. Host names describe transport contracts, not currently selected models."
              },
              {
                "id": "R2",
                "requirement": "Each host report stores a bounded sessions collection keyed by sanitized session_id, with active session, started/updated timestamps, coverage, ingestion metadata, obligations, diagnostics, telemetry, and clearance per session. A new session must not reset or overwrite prior sessions."
              },
              {
                "id": "R3",
                "requirement": "Add a trusted Claude transcript resolver limited to JSONL files below the configured Claude projects root. Parse only assistant records with message.role=assistant and content blocks of type=text; ignore thinking, signatures, user records, attachments, tool payloads, and every unknown shape."
              },
              {
                "id": "R4",
                "requirement": "Apply live, recent-X, and full startup history modes consistently to Claude visible assistant text and Codex visible summary_text records. Preserve append cursors, complete-record handling, source anchors, exactly-once processing, and truthful coverage per host session."
              },
              {
                "id": "R5",
                "requirement": "Migrate the supported legacy single reason_guard.json into the matching host/session ledger atomically and idempotently; do not delete the legacy file until the new host report is safely committed, and fail safely on malformed/future state."
              },
              {
                "id": "R6",
                "requirement": "Status, UI export, and operator docs expose readable host names and session dates/clearance, with session IDs secondary and copyable. Default current-host behavior remains backward compatible while a sessions view exposes longitudinal history."
              },
              {
                "id": "R7",
                "requirement": "Keep state local-only, bounded, sanitized, atomic, concurrency-safe, model-free, network-free, and replay-safe. Persist no raw transcript, prompt, thinking block, signature, credential, or raw tool output."
              },
              {
                "id": "R8",
                "requirement": "Test first with fixtures for Claude/Codex/OpenCode, migration, session isolation, retention, replay, concurrency, privacy sentinels, status/UI, source/skeleton parity, installer output, and latency. Run an offline backfill against an existing old Claude transcript through the allowlisted parser without starting Claude; do not claim live Claude E2E coverage."
              }
            ],
            "source_refs": [
              "REQ-176",
              ".prd_plugin/state/artifacts/prd/PRD-011.json",
              ".prd_plugin/state/artifacts/architecture/ARCH-011.json",
              ".prd_plugin/state/artifacts/implementation_plan/IMP-015.json",
              "wiki/hooks/reasoning-guard.md",
              "docs/REASONING-GUARD.md",
              ".prd_plugin/hooks/prd_reason_guard.py",
              "tests/test_reason_guard.py"
            ]
          },
          "output_hash": "a9c5fa42db5eb99373c834c6149f83d14f5e26677d0b6ff1fbce7e1324aa25bf",
          "completed_at": "2026-07-25T10:31:53Z",
          "judgment_result": {
            "request_hash": "cb9e6e2ac5eb9a6e077237127d6474e2555bfa522e2695ab69f350b90a54402c",
            "executor": "ai-collab",
            "profile": "fast-capable"
          }
        }
      ],
      "completed_at": "2026-07-25T10:31:53Z"
    },
    {
      "id": "WFR-446",
      "schema_version": "1.0",
      "workflow_id": "engineering.code-review",
      "workflow_version": 1,
      "definition_hash": "ad3df68a0ff3c3ede35fe5266dcfbffbe7b1ba3e8ada5fc4b9012db9f451212f",
      "plan_hash": "522614a0a3a2069b12d20cfd275adc1965d426740a20318b5df955c9cbaf7b12",
      "input_hash": "12349acd3afb08f44683eabf76eb5a0366cd395f2f82be79475920cfe65e8f44",
      "inputs": {
        "base_ref": "main",
        "source_refs": [
          ".prd_plugin/hooks/prd_reason_guard.py",
          "scripts/prd_status.py",
          "scripts/prd_ui_export.py",
          "tests/test_reason_guard.py",
          "tests/test_tracking_commands.py",
          "tests/test_prd_ui_export.py",
          "docs/REASONING-GUARD.md",
          "raw/hooks/2026-07-25-reason-guard-host-session-parity.md",
          "wiki/hooks/reasoning-guard.md",
          ".prd_plugin/state/artifacts/prd/PRD-011.json",
          ".prd_plugin/state/artifacts/architecture/ARCH-011.json",
          ".prd_plugin/state/artifacts/implementation_plan/IMP-016.json"
        ]
      },
      "idempotency_key": "req-176-code-review-v1",
      "status": "cancelled",
      "attempt": 1,
      "created_at": "2026-07-25T11:01:13Z",
      "updated_at": "2026-07-25T11:02:24Z",
      "receipts": [
        {
          "step_id": "diff",
          "action": "git.diff_check",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "11c11db30f4b3f6c758722ba3e27eea08145b7d212f6a157451e364b48475280",
          "completed_at": "2026-07-25T11:01:13Z"
        },
        {
          "step_id": "verification",
          "action": "verification.plan",
          "input_hash": "9c8856776a7db6455fee675768cfc615a0fe2a04fb88b9a4fd8e3fce515eaf08",
          "output_hash": "c1ca369ee589ae0214cb6930c933f055925b234bb78a909c800d786cc2ea1fec",
          "completed_at": "2026-07-25T11:01:13Z"
        },
        {
          "step_id": "context",
          "action": "substrate.enrich",
          "input_hash": "b39db7ed73c17ff0d18c402d49b3cb3c5fd087659a4985a647b73fd84aeebb87",
          "output_hash": "070c6d025ae9af0305d90191fdf78f250f81d2e1fa0f56a565a9ae6cbf7f0ca3",
          "completed_at": "2026-07-25T11:01:14Z"
        }
      ],
      "steps": [
        {
          "id": "diff",
          "action": "git.diff_check",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-25T11:01:13Z",
          "output": {
            "passed": true
          },
          "output_hash": "11c11db30f4b3f6c758722ba3e27eea08145b7d212f6a157451e364b48475280",
          "completed_at": "2026-07-25T11:01:13Z"
        },
        {
          "id": "verification",
          "action": "verification.plan",
          "status": "completed",
          "resolved_input_hash": "9c8856776a7db6455fee675768cfc615a0fe2a04fb88b9a4fd8e3fce515eaf08",
          "started_at": "2026-07-25T11:01:13Z",
          "output": {
            "schema_version": "1.0",
            "contract_version": 1,
            "executor": "ai-collab",
            "changed_files": [
              ".claude-plugin/marketplace.json",
              ".claude-plugin/plugin.json",
              ".codex-plugin/plugin.json",
              ".opencode/plugin.json",
              ".prd_plugin/config.json",
              ".prd_plugin/hooks/prd_reason_guard.py",
              ".prd_plugin/ids/registry.json",
              ".prd_plugin/state/artifacts/architecture/ARCH-011.json",
              ".prd_plugin/state/artifacts/implementation_plan/IMP-016.json",
              ".prd_plugin/state/artifacts/prd/PRD-011.json",
              ".prd_plugin/state/project.json",
              ".prd_plugin/state/releases.json",
              ".prd_plugin/state/requests.json",
              ".prd_plugin/state/tracking.json",
              ".prd_plugin/state/workflow-runs.json",
              "docs/doc-branches/DBR-002-reason-guard-host-session-parity/BRANCH.json",
              "docs/doc-branches/DBR-002-reason-guard-host-session-parity/BRANCH.md",
              "docs/doc-branches/DBR-002-reason-guard-host-session-parity/EVIDENCE.md",
              "docs/doc-branches/DBR-002-reason-guard-host-session-parity/MERGE-CHECKLIST.md",
              "docs/doc-branches/DBR-002-reason-guard-host-session-parity/PRD-ARCH-PLAN-DELTA.md",
              "docs/REASONING-GUARD.md",
              "index.js",
              "mcp/server.cjs",
              "package-lock.json",
              "package.json",
              "raw/hooks/2026-07-25-reason-guard-host-session-parity.md",
              "scripts/prd_status.py",
              "scripts/prd_ui_export.py",
              "skills-manifest.json",
              "templates/config.json",
              "templates/project.json",
              "templates/releases.json",
              "templates/repo-skeleton/.claude-plugin/plugin.json",
              "templates/repo-skeleton/.codex-plugin/plugin.json",
              "templates/repo-skeleton/.opencode/plugin.json",
              "templates/repo-skeleton/.prd_plugin/config.json",
              "templates/repo-skeleton/.prd_plugin/hooks/prd_reason_guard.py",
              "templates/repo-skeleton/.prd_plugin/state/project.json",
              "templates/repo-skeleton/.prd_plugin/templates/config.json",
              "templates/repo-skeleton/.prd_plugin/templates/project.json",
              "tests/test_prd_ui_export.py",
              "tests/test_reason_guard.py",
              "tests/test_tracking_commands.py",
              "wiki/hooks/claude-code-hooks.md",
              "wiki/hooks/reasoning-guard.md",
              "wiki/index.md",
              "wiki/log.md"
            ],
            "change_fingerprint": "7342166842be5d9f6a67975b461f23d1333deddc84f809747b3b13e3c053c1b4",
            "policy": {
              "enabled": true,
              "executor": "ai-collab",
              "neighbor_limit": 12,
              "max_changed_files": 25,
              "fallback": "full",
              "full_suite_triggers": [
                "release",
                "core_change",
                "impact_unavailable",
                "impact_degraded",
                "unmapped_change"
              ],
              "core_paths": [
                "package.json",
                "package-lock.json",
                "pyproject.toml",
                "Cargo.toml",
                "go.mod",
                ".github/workflows/**"
              ],
              "test_patterns": [
                "tests/**",
                "test/**",
                "spec/**",
                "**/*.test.*",
                "**/*.spec.*",
                "test_*.py",
                "*_test.py",
                "*_test.go",
                "**/test_*.py",
                "**/*_test.py",
                "**/*_test.go"
              ],
              "max_selected_tests": 200,
              "execution_timeout_seconds": 600,
              "focused_commands": [],
              "full_commands": [],
              "allowed_executables": [
                "python",
                "python3",
                "py",
                "pytest",
                "npm",
                "npx",
                "node",
                "go",
                "cargo",
                "dotnet",
                "mvn",
                "gradle",
                "gradlew",
                "make"
              ]
            },
            "selection_rules": {
              "precedence": [
                "exact_changed",
                "explicit_test_ownership",
                "structural_dependencies",
                "predictive_impact"
              ],
              "require_all_changed_files_mapped": true,
              "widen_before_full": true,
              "predictive_signal_is_sufficient_alone": false
            },
            "fallback": {
              "strategy": "full",
              "conditions": [
                "release",
                "core_change",
                "impact_unavailable",
                "impact_degraded",
                "unmapped_change"
              ]
            },
            "strategy": "full",
            "reason": "core_change",
            "runtime_requests": {},
            "plan_hash": "fc1fe888702d4bdc0da77da1415dd15161d1731c3746a469a0e73cbf51b76471"
          },
          "output_hash": "c1ca369ee589ae0214cb6930c933f055925b234bb78a909c800d786cc2ea1fec",
          "completed_at": "2026-07-25T11:01:13Z"
        },
        {
          "id": "context",
          "action": "substrate.enrich",
          "status": "completed",
          "resolved_input_hash": "b39db7ed73c17ff0d18c402d49b3cb3c5fd087659a4985a647b73fd84aeebb87",
          "started_at": "2026-07-25T11:01:14Z",
          "output": {
            "status": "disabled",
            "results": [],
            "local_source_refs": [
              ".prd_plugin/hooks/prd_reason_guard.py",
              "scripts/prd_status.py",
              "scripts/prd_ui_export.py",
              "tests/test_reason_guard.py",
              "tests/test_tracking_commands.py",
              "tests/test_prd_ui_export.py",
              "docs/REASONING-GUARD.md",
              "raw/hooks/2026-07-25-reason-guard-host-session-parity.md",
              "wiki/hooks/reasoning-guard.md",
              ".prd_plugin/state/artifacts/prd/PRD-011.json",
              ".prd_plugin/state/artifacts/architecture/ARCH-011.json",
              ".prd_plugin/state/artifacts/implementation_plan/IMP-016.json"
            ]
          },
          "output_hash": "070c6d025ae9af0305d90191fdf78f250f81d2e1fa0f56a565a9ae6cbf7f0ca3",
          "completed_at": "2026-07-25T11:01:14Z"
        },
        {
          "id": "review",
          "action": "judgment.request",
          "status": "waiting_judgment",
          "resolved_input_hash": "ae83cfbc507e5dbc83674b47ebca1cf42e33bc967d54a653a48fd776d6db75d0",
          "started_at": "2026-07-25T11:01:14Z",
          "judgment_request": {
            "contract_version": 1,
            "run_id": "WFR-446",
            "step_id": "review",
            "task": "code_review",
            "instructions": "Find material correctness, robustness, security, compatibility, or test gaps; do not restate mechanical facts.",
            "source_refs": [
              ".prd_plugin/hooks/prd_reason_guard.py",
              "scripts/prd_status.py",
              "scripts/prd_ui_export.py",
              "tests/test_reason_guard.py",
              "tests/test_tracking_commands.py",
              "tests/test_prd_ui_export.py",
              "docs/REASONING-GUARD.md",
              "raw/hooks/2026-07-25-reason-guard-host-session-parity.md",
              "wiki/hooks/reasoning-guard.md",
              ".prd_plugin/state/artifacts/prd/PRD-011.json",
              ".prd_plugin/state/artifacts/architecture/ARCH-011.json",
              ".prd_plugin/state/artifacts/implementation_plan/IMP-016.json"
            ],
            "source_hashes": {
              ".prd_plugin/hooks/prd_reason_guard.py": "574ae73edae44b81ad41680e6a38a11edea8c18eb11bc6bf7aa85fc7d6caf7c5",
              "scripts/prd_status.py": "082683a846891c8cad5865e2f9a03604912e6ae8253a5a3c2aebf7f78c678685",
              "scripts/prd_ui_export.py": "e4a8b8b162111405aa9afc7ac3ec955eb193102717c233d2e95711d3802cc160",
              "tests/test_reason_guard.py": "58aa6c89e53a4b3ac67b15f2e1ef244136fb36a6230378f6756922036dccacc4",
              "tests/test_tracking_commands.py": "33b43bfc2fbda0216f03a455657eb40f4c99fc30eed4d4e443bf3e098011c405",
              "tests/test_prd_ui_export.py": "2dfab9c4cd19f941c92f4a228ec48ec9076e1c8b27c315dc09c583aef216660f",
              "docs/REASONING-GUARD.md": "fbaaae2eb99cdff2a9c5f18bb14e112948bcbc56af785880f97e30772bed8686",
              "raw/hooks/2026-07-25-reason-guard-host-session-parity.md": "44f14dd981909735b36a7c0fc4e371df57b55d13d6c48b8709dd605d6c8804b7",
              "wiki/hooks/reasoning-guard.md": "be358641342ad1f37d97db90eb18015359395e22b842ab634ab72194747ed4e8",
              ".prd_plugin/state/artifacts/prd/PRD-011.json": "7a1a52a9ca3dafd0a5675d758dbcd16175858490da7d26c01f2fe62bf7b4500d",
              ".prd_plugin/state/artifacts/architecture/ARCH-011.json": "9979c5f44ae585a8b8626808c586b7fdb27cc454da3b2224fc4a9e66492a66d1",
              ".prd_plugin/state/artifacts/implementation_plan/IMP-016.json": "608806bb4b572ac171f2596ddc1a4db9fb158082fa9d76749b0189949763eb0d"
            },
            "result_schema": {
              "type": "object",
              "required": [
                "summary",
                "findings",
                "source_refs"
              ],
              "properties": {
                "summary": {
                  "type": "string"
                },
                "findings": {
                  "type": "array",
                  "items": {
                    "type": "object"
                  }
                },
                "source_refs": {
                  "type": "array",
                  "items": {
                    "type": "string"
                  }
                }
              }
            },
            "executor": "ai-collab",
            "profile": "fast-capable",
            "constraints": {
              "no_project_state_writes": true,
              "require_source_refs": true
            },
            "request_hash": "848ce49920c29a211795956a270fda6f3b0a784971b7a649142bf58db36721bb"
          }
        }
      ],
      "pending_judgment": {
        "contract_version": 1,
        "run_id": "WFR-446",
        "step_id": "review",
        "task": "code_review",
        "instructions": "Find material correctness, robustness, security, compatibility, or test gaps; do not restate mechanical facts.",
        "source_refs": [
          ".prd_plugin/hooks/prd_reason_guard.py",
          "scripts/prd_status.py",
          "scripts/prd_ui_export.py",
          "tests/test_reason_guard.py",
          "tests/test_tracking_commands.py",
          "tests/test_prd_ui_export.py",
          "docs/REASONING-GUARD.md",
          "raw/hooks/2026-07-25-reason-guard-host-session-parity.md",
          "wiki/hooks/reasoning-guard.md",
          ".prd_plugin/state/artifacts/prd/PRD-011.json",
          ".prd_plugin/state/artifacts/architecture/ARCH-011.json",
          ".prd_plugin/state/artifacts/implementation_plan/IMP-016.json"
        ],
        "source_hashes": {
          ".prd_plugin/hooks/prd_reason_guard.py": "574ae73edae44b81ad41680e6a38a11edea8c18eb11bc6bf7aa85fc7d6caf7c5",
          "scripts/prd_status.py": "082683a846891c8cad5865e2f9a03604912e6ae8253a5a3c2aebf7f78c678685",
          "scripts/prd_ui_export.py": "e4a8b8b162111405aa9afc7ac3ec955eb193102717c233d2e95711d3802cc160",
          "tests/test_reason_guard.py": "58aa6c89e53a4b3ac67b15f2e1ef244136fb36a6230378f6756922036dccacc4",
          "tests/test_tracking_commands.py": "33b43bfc2fbda0216f03a455657eb40f4c99fc30eed4d4e443bf3e098011c405",
          "tests/test_prd_ui_export.py": "2dfab9c4cd19f941c92f4a228ec48ec9076e1c8b27c315dc09c583aef216660f",
          "docs/REASONING-GUARD.md": "fbaaae2eb99cdff2a9c5f18bb14e112948bcbc56af785880f97e30772bed8686",
          "raw/hooks/2026-07-25-reason-guard-host-session-parity.md": "44f14dd981909735b36a7c0fc4e371df57b55d13d6c48b8709dd605d6c8804b7",
          "wiki/hooks/reasoning-guard.md": "be358641342ad1f37d97db90eb18015359395e22b842ab634ab72194747ed4e8",
          ".prd_plugin/state/artifacts/prd/PRD-011.json": "7a1a52a9ca3dafd0a5675d758dbcd16175858490da7d26c01f2fe62bf7b4500d",
          ".prd_plugin/state/artifacts/architecture/ARCH-011.json": "9979c5f44ae585a8b8626808c586b7fdb27cc454da3b2224fc4a9e66492a66d1",
          ".prd_plugin/state/artifacts/implementation_plan/IMP-016.json": "608806bb4b572ac171f2596ddc1a4db9fb158082fa9d76749b0189949763eb0d"
        },
        "result_schema": {
          "type": "object",
          "required": [
            "summary",
            "findings",
            "source_refs"
          ],
          "properties": {
            "summary": {
              "type": "string"
            },
            "findings": {
              "type": "array",
              "items": {
                "type": "object"
              }
            },
            "source_refs": {
              "type": "array",
              "items": {
                "type": "string"
              }
            }
          }
        },
        "executor": "ai-collab",
        "profile": "fast-capable",
        "constraints": {
          "no_project_state_writes": true,
          "require_source_refs": true
        },
        "request_hash": "848ce49920c29a211795956a270fda6f3b0a784971b7a649142bf58db36721bb"
      },
      "cancelled_at": "2026-07-25T11:02:24Z",
      "cancel_reason": "Owner expanded REQ-176 to distinguish CLI and Desktop surfaces; source-bound review must be regenerated after the added implementation."
    },
    {
      "id": "WFR-447",
      "schema_version": "1.0",
      "workflow_id": "engineering.code-review",
      "workflow_version": 1,
      "definition_hash": "ad3df68a0ff3c3ede35fe5266dcfbffbe7b1ba3e8ada5fc4b9012db9f451212f",
      "plan_hash": "5fff54f3ad7ae698ed097a19260bff82f625fa9dc1b4e7785753ff88619d0d37",
      "input_hash": "224059da6ed3faa2f32be78f1dce757f8d2b84626f07c5e10b861df9efbd794d",
      "inputs": {
        "base_ref": "origin/main",
        "source_refs": [
          ".prd_plugin/hooks/prd_reason_guard.py",
          ".opencode/plugins/prd-hooks.js",
          "scripts/prd_status.py",
          "scripts/prd_ui_export.py",
          "tests/test_reason_guard.py",
          "tests/test_cross_host_hook_parity.py",
          "tests/test_prd_ui_export.py",
          "tests/test_tracking_commands.py",
          "docs/REASONING-GUARD.md",
          ".prd_plugin/state/artifacts/prd/PRD-011.json",
          ".prd_plugin/state/artifacts/architecture/ARCH-011.json",
          ".prd_plugin/state/artifacts/implementation_plan/IMP-016.json"
        ]
      },
      "idempotency_key": "req-176-review-surface-model-effort-v2",
      "status": "completed",
      "attempt": 1,
      "created_at": "2026-07-25T11:33:57Z",
      "updated_at": "2026-07-25T11:38:41Z",
      "receipts": [
        {
          "step_id": "diff",
          "action": "git.diff_check",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "11c11db30f4b3f6c758722ba3e27eea08145b7d212f6a157451e364b48475280",
          "completed_at": "2026-07-25T11:33:58Z"
        },
        {
          "step_id": "verification",
          "action": "verification.plan",
          "input_hash": "896ba721326661835264dfc8b368f18e4c2f504219052efc7dded35d5e5da01f",
          "output_hash": "eabcb179ab2e36c23e9273c19f286b3dc36da505db50f54689bf57f0396827ad",
          "completed_at": "2026-07-25T11:33:58Z"
        },
        {
          "step_id": "context",
          "action": "substrate.enrich",
          "input_hash": "a9e211f0dbf3eefab8443fab7e21757e8b4d33a3ad2c06c8444d58abeb7de587",
          "output_hash": "8a9dcda2d264c76986f0562cafab7be27fe6983a021e1f92b81c0b762ebd6a5f",
          "completed_at": "2026-07-25T11:33:58Z"
        },
        {
          "step_id": "review",
          "action": "judgment.request",
          "input_hash": "5b982fcb48d68ad236bf7f9b2118223e512c4f675d9459633a1cc32b64d73db3",
          "output_hash": "0aac4d23ad700ce699e9d6eff678d7dadc41362a14f6a8f48d0ad67c37cf2605",
          "request_hash": "4be75974067e2d372a5655fec44efccb1902e01a97e580f4a3e05f9e8bb5bc7e",
          "completed_at": "2026-07-25T11:38:41Z"
        }
      ],
      "steps": [
        {
          "id": "diff",
          "action": "git.diff_check",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-25T11:33:57Z",
          "output": {
            "passed": true
          },
          "output_hash": "11c11db30f4b3f6c758722ba3e27eea08145b7d212f6a157451e364b48475280",
          "completed_at": "2026-07-25T11:33:58Z"
        },
        {
          "id": "verification",
          "action": "verification.plan",
          "status": "completed",
          "resolved_input_hash": "896ba721326661835264dfc8b368f18e4c2f504219052efc7dded35d5e5da01f",
          "started_at": "2026-07-25T11:33:58Z",
          "output": {
            "schema_version": "1.0",
            "contract_version": 1,
            "executor": "ai-collab",
            "changed_files": [
              ".claude-plugin/marketplace.json",
              ".claude-plugin/plugin.json",
              ".codex-plugin/plugin.json",
              ".opencode/plugin.json",
              ".opencode/plugins/prd-hooks.js",
              ".prd_plugin/config.json",
              ".prd_plugin/hooks/prd_reason_guard.py",
              ".prd_plugin/ids/registry.json",
              ".prd_plugin/state/artifacts/architecture/ARCH-011.json",
              ".prd_plugin/state/artifacts/implementation_plan/IMP-016.json",
              ".prd_plugin/state/artifacts/prd/PRD-011.json",
              ".prd_plugin/state/project.json",
              ".prd_plugin/state/releases.json",
              ".prd_plugin/state/requests.json",
              ".prd_plugin/state/tracking.json",
              ".prd_plugin/state/workflow-runs.json",
              "docs/doc-branches/DBR-002-reason-guard-host-session-parity/BRANCH.json",
              "docs/doc-branches/DBR-002-reason-guard-host-session-parity/BRANCH.md",
              "docs/doc-branches/DBR-002-reason-guard-host-session-parity/EVIDENCE.md",
              "docs/doc-branches/DBR-002-reason-guard-host-session-parity/MERGE-CHECKLIST.md",
              "docs/doc-branches/DBR-002-reason-guard-host-session-parity/PRD-ARCH-PLAN-DELTA.md",
              "docs/REASONING-GUARD.md",
              "index.js",
              "mcp/server.cjs",
              "package-lock.json",
              "package.json",
              "raw/hooks/2026-07-25-reason-guard-host-session-parity.md",
              "scripts/prd_status.py",
              "scripts/prd_ui_export.py",
              "skills-manifest.json",
              "templates/config.json",
              "templates/project.json",
              "templates/releases.json",
              "templates/repo-skeleton/.claude-plugin/plugin.json",
              "templates/repo-skeleton/.codex-plugin/plugin.json",
              "templates/repo-skeleton/.opencode/plugin.json",
              "templates/repo-skeleton/.opencode/plugins/prd-hooks.js",
              "templates/repo-skeleton/.prd_plugin/config.json",
              "templates/repo-skeleton/.prd_plugin/hooks/prd_reason_guard.py",
              "templates/repo-skeleton/.prd_plugin/state/project.json",
              "templates/repo-skeleton/.prd_plugin/templates/config.json",
              "templates/repo-skeleton/.prd_plugin/templates/project.json",
              "tests/test_cross_host_hook_parity.py",
              "tests/test_prd_ui_export.py",
              "tests/test_reason_guard.py",
              "tests/test_tracking_commands.py",
              "wiki/hooks/claude-code-hooks.md",
              "wiki/hooks/reasoning-guard.md",
              "wiki/index.md",
              "wiki/log.md"
            ],
            "change_fingerprint": "a8dfb50f21749253afd9165bf753b1bfbd8e76436c2ef3f1810dc4c575d72ddb",
            "policy": {
              "enabled": true,
              "executor": "ai-collab",
              "neighbor_limit": 12,
              "max_changed_files": 25,
              "fallback": "full",
              "full_suite_triggers": [
                "release",
                "core_change",
                "impact_unavailable",
                "impact_degraded",
                "unmapped_change"
              ],
              "core_paths": [
                "package.json",
                "package-lock.json",
                "pyproject.toml",
                "Cargo.toml",
                "go.mod",
                ".github/workflows/**"
              ],
              "test_patterns": [
                "tests/**",
                "test/**",
                "spec/**",
                "**/*.test.*",
                "**/*.spec.*",
                "test_*.py",
                "*_test.py",
                "*_test.go",
                "**/test_*.py",
                "**/*_test.py",
                "**/*_test.go"
              ],
              "max_selected_tests": 200,
              "execution_timeout_seconds": 600,
              "focused_commands": [],
              "full_commands": [],
              "allowed_executables": [
                "python",
                "python3",
                "py",
                "pytest",
                "npm",
                "npx",
                "node",
                "go",
                "cargo",
                "dotnet",
                "mvn",
                "gradle",
                "gradlew",
                "make"
              ]
            },
            "selection_rules": {
              "precedence": [
                "exact_changed",
                "explicit_test_ownership",
                "structural_dependencies",
                "predictive_impact"
              ],
              "require_all_changed_files_mapped": true,
              "widen_before_full": true,
              "predictive_signal_is_sufficient_alone": false
            },
            "fallback": {
              "strategy": "full",
              "conditions": [
                "release",
                "core_change",
                "impact_unavailable",
                "impact_degraded",
                "unmapped_change"
              ]
            },
            "strategy": "full",
            "reason": "core_change",
            "runtime_requests": {},
            "plan_hash": "555e0a77d52061138314d6d0705ff20e2cd855f93a4de3844624ee69b458e2bb"
          },
          "output_hash": "eabcb179ab2e36c23e9273c19f286b3dc36da505db50f54689bf57f0396827ad",
          "completed_at": "2026-07-25T11:33:58Z"
        },
        {
          "id": "context",
          "action": "substrate.enrich",
          "status": "completed",
          "resolved_input_hash": "a9e211f0dbf3eefab8443fab7e21757e8b4d33a3ad2c06c8444d58abeb7de587",
          "started_at": "2026-07-25T11:33:58Z",
          "output": {
            "status": "disabled",
            "results": [],
            "local_source_refs": [
              ".prd_plugin/hooks/prd_reason_guard.py",
              ".opencode/plugins/prd-hooks.js",
              "scripts/prd_status.py",
              "scripts/prd_ui_export.py",
              "tests/test_reason_guard.py",
              "tests/test_cross_host_hook_parity.py",
              "tests/test_prd_ui_export.py",
              "tests/test_tracking_commands.py",
              "docs/REASONING-GUARD.md",
              ".prd_plugin/state/artifacts/prd/PRD-011.json",
              ".prd_plugin/state/artifacts/architecture/ARCH-011.json",
              ".prd_plugin/state/artifacts/implementation_plan/IMP-016.json"
            ]
          },
          "output_hash": "8a9dcda2d264c76986f0562cafab7be27fe6983a021e1f92b81c0b762ebd6a5f",
          "completed_at": "2026-07-25T11:33:58Z"
        },
        {
          "id": "review",
          "action": "judgment.request",
          "status": "completed",
          "resolved_input_hash": "5b982fcb48d68ad236bf7f9b2118223e512c4f675d9459633a1cc32b64d73db3",
          "started_at": "2026-07-25T11:33:58Z",
          "judgment_request": {
            "contract_version": 1,
            "run_id": "WFR-447",
            "step_id": "review",
            "task": "code_review",
            "instructions": "Find material correctness, robustness, security, compatibility, or test gaps; do not restate mechanical facts.",
            "source_refs": [
              ".prd_plugin/hooks/prd_reason_guard.py",
              ".opencode/plugins/prd-hooks.js",
              "scripts/prd_status.py",
              "scripts/prd_ui_export.py",
              "tests/test_reason_guard.py",
              "tests/test_cross_host_hook_parity.py",
              "tests/test_prd_ui_export.py",
              "tests/test_tracking_commands.py",
              "docs/REASONING-GUARD.md",
              ".prd_plugin/state/artifacts/prd/PRD-011.json",
              ".prd_plugin/state/artifacts/architecture/ARCH-011.json",
              ".prd_plugin/state/artifacts/implementation_plan/IMP-016.json"
            ],
            "source_hashes": {
              ".prd_plugin/hooks/prd_reason_guard.py": "4e79530d427bdd847404d0eb5601b39fb30d99e8f0c707c9c2473625e7d9b108",
              ".opencode/plugins/prd-hooks.js": "1d2f687db7ed4500998e1117c0c34f606390bb9fe44e80f5161f0ec236d778bd",
              "scripts/prd_status.py": "2e06f454eb91b7fc5d8c44c0c3e1cc5d6ee725f479243be880e081e839d672aa",
              "scripts/prd_ui_export.py": "1ba6313526426235e5d4c23ffc1321b9bd7fc5b81927b0dcb161b0b802eaaa81",
              "tests/test_reason_guard.py": "bb20e94ad675487391eb83973f9af25974c644ff86d0562df679e75a7b1b7c42",
              "tests/test_cross_host_hook_parity.py": "3910b77d8d13c571d20e7e48274797d6acbcf1d5370b29e7017a8e2ac277c447",
              "tests/test_prd_ui_export.py": "31e5fcebcb00cad8f0d3c88525d2af1e25539b344fffc5d980b3d2183fe47956",
              "tests/test_tracking_commands.py": "e29f468cab5d1509981f5a9630281b29b74b38d3d24fdab252e8d123e64ec91b",
              "docs/REASONING-GUARD.md": "db0bcdf8e55a25a8185c143acd4cafb7719a208aea34ba743b4b567e26b5d302",
              ".prd_plugin/state/artifacts/prd/PRD-011.json": "2a316e64d7c36a44a4d294f9cc7bbe19404f36915b2670563e9ba1aaf3c2b69e",
              ".prd_plugin/state/artifacts/architecture/ARCH-011.json": "deddb014d6f73d819c829f6dfbcfe9c1b289f736dcebf850671ca3ea9d038dbf",
              ".prd_plugin/state/artifacts/implementation_plan/IMP-016.json": "198dfec18fe682918ad6d3577fd400908c9fb9b6e90145731ba4018c73f4035a"
            },
            "result_schema": {
              "type": "object",
              "required": [
                "summary",
                "findings",
                "source_refs"
              ],
              "properties": {
                "summary": {
                  "type": "string"
                },
                "findings": {
                  "type": "array",
                  "items": {
                    "type": "object"
                  }
                },
                "source_refs": {
                  "type": "array",
                  "items": {
                    "type": "string"
                  }
                }
              }
            },
            "executor": "ai-collab",
            "profile": "fast-capable",
            "constraints": {
              "no_project_state_writes": true,
              "require_source_refs": true
            },
            "request_hash": "4be75974067e2d372a5655fec44efccb1902e01a97e580f4a3e05f9e8bb5bc7e"
          },
          "output": {
            "summary": "No material correctness, robustness, security, compatibility, or test gaps found. Provider-specific transcript adapters remain path-confined and content-allowlisted; surface, model, and effort values are allowlisted and bounded; legacy schema-3 records remain readable; per-host session ledgers are bounded; OpenCode forwards only assistant session metadata; focused cross-host, migration, privacy, UI, and runtime tests pass.",
            "findings": [],
            "source_refs": [
              ".prd_plugin/hooks/prd_reason_guard.py",
              ".opencode/plugins/prd-hooks.js",
              "scripts/prd_status.py",
              "scripts/prd_ui_export.py",
              "tests/test_reason_guard.py",
              "tests/test_cross_host_hook_parity.py",
              "tests/test_prd_ui_export.py",
              "tests/test_tracking_commands.py",
              "docs/REASONING-GUARD.md",
              ".prd_plugin/state/artifacts/prd/PRD-011.json",
              ".prd_plugin/state/artifacts/architecture/ARCH-011.json",
              ".prd_plugin/state/artifacts/implementation_plan/IMP-016.json"
            ]
          },
          "output_hash": "0aac4d23ad700ce699e9d6eff678d7dadc41362a14f6a8f48d0ad67c37cf2605",
          "completed_at": "2026-07-25T11:38:41Z",
          "judgment_result": {
            "request_hash": "4be75974067e2d372a5655fec44efccb1902e01a97e580f4a3e05f9e8bb5bc7e",
            "executor": "ai-collab",
            "profile": "fast-capable"
          }
        }
      ],
      "completed_at": "2026-07-25T11:38:41Z"
    },
    {
      "id": "WFR-448",
      "schema_version": "1.0",
      "workflow_id": "engineering.verify",
      "workflow_version": 1,
      "definition_hash": "82a795fafbc550f124ec781ea9c5b6170d95b5e687fffadf6939f1f160df5ce1",
      "plan_hash": "fe5f0e2afeb50c18f1065c31bf50b912024b5ed78c9edf9f680812929eab8808",
      "input_hash": "896ba721326661835264dfc8b368f18e4c2f504219052efc7dded35d5e5da01f",
      "inputs": {
        "base_ref": "origin/main",
        "release": false
      },
      "idempotency_key": "req-176-engineering-verify-v2",
      "status": "completed",
      "attempt": 1,
      "created_at": "2026-07-25T11:39:45Z",
      "updated_at": "2026-07-25T11:41:46Z",
      "receipts": [
        {
          "step_id": "plan",
          "action": "verification.plan",
          "input_hash": "896ba721326661835264dfc8b368f18e4c2f504219052efc7dded35d5e5da01f",
          "output_hash": "eabcb179ab2e36c23e9273c19f286b3dc36da505db50f54689bf57f0396827ad",
          "completed_at": "2026-07-25T11:39:46Z"
        },
        {
          "step_id": "execute",
          "action": "verification.execute",
          "input_hash": "24c6d7a8a007a41fbfbd80c6a70f7ebc1f56b16f044e1c90715cd1f2543fcef4",
          "output_hash": "15b975debdb5a7518833a976c4f1a4b6b9852834d3643ec4ff2a329f54164fb8",
          "completed_at": "2026-07-25T11:41:44Z"
        },
        {
          "step_id": "diff",
          "action": "git.diff_check",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "11c11db30f4b3f6c758722ba3e27eea08145b7d212f6a157451e364b48475280",
          "completed_at": "2026-07-25T11:41:44Z"
        },
        {
          "step_id": "state",
          "action": "state.consistency",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "9963110856ca8182da0dfdbb22f6960618b55dbc121be0dce0066a7c7a389b10",
          "completed_at": "2026-07-25T11:41:45Z"
        },
        {
          "step_id": "gate",
          "action": "state.gate",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "6a0ed3d65779be265214a0e8395ab03978b9f7b91da9ffb59b257b73f82d087d",
          "completed_at": "2026-07-25T11:41:46Z"
        }
      ],
      "steps": [
        {
          "id": "plan",
          "action": "verification.plan",
          "status": "completed",
          "resolved_input_hash": "896ba721326661835264dfc8b368f18e4c2f504219052efc7dded35d5e5da01f",
          "started_at": "2026-07-25T11:39:45Z",
          "output": {
            "schema_version": "1.0",
            "contract_version": 1,
            "executor": "ai-collab",
            "changed_files": [
              ".claude-plugin/marketplace.json",
              ".claude-plugin/plugin.json",
              ".codex-plugin/plugin.json",
              ".opencode/plugin.json",
              ".opencode/plugins/prd-hooks.js",
              ".prd_plugin/config.json",
              ".prd_plugin/hooks/prd_reason_guard.py",
              ".prd_plugin/ids/registry.json",
              ".prd_plugin/state/artifacts/architecture/ARCH-011.json",
              ".prd_plugin/state/artifacts/implementation_plan/IMP-016.json",
              ".prd_plugin/state/artifacts/prd/PRD-011.json",
              ".prd_plugin/state/project.json",
              ".prd_plugin/state/releases.json",
              ".prd_plugin/state/requests.json",
              ".prd_plugin/state/tracking.json",
              ".prd_plugin/state/workflow-runs.json",
              "docs/doc-branches/DBR-002-reason-guard-host-session-parity/BRANCH.json",
              "docs/doc-branches/DBR-002-reason-guard-host-session-parity/BRANCH.md",
              "docs/doc-branches/DBR-002-reason-guard-host-session-parity/EVIDENCE.md",
              "docs/doc-branches/DBR-002-reason-guard-host-session-parity/MERGE-CHECKLIST.md",
              "docs/doc-branches/DBR-002-reason-guard-host-session-parity/PRD-ARCH-PLAN-DELTA.md",
              "docs/REASONING-GUARD.md",
              "index.js",
              "mcp/server.cjs",
              "package-lock.json",
              "package.json",
              "raw/hooks/2026-07-25-reason-guard-host-session-parity.md",
              "scripts/prd_status.py",
              "scripts/prd_ui_export.py",
              "skills-manifest.json",
              "templates/config.json",
              "templates/project.json",
              "templates/releases.json",
              "templates/repo-skeleton/.claude-plugin/plugin.json",
              "templates/repo-skeleton/.codex-plugin/plugin.json",
              "templates/repo-skeleton/.opencode/plugin.json",
              "templates/repo-skeleton/.opencode/plugins/prd-hooks.js",
              "templates/repo-skeleton/.prd_plugin/config.json",
              "templates/repo-skeleton/.prd_plugin/hooks/prd_reason_guard.py",
              "templates/repo-skeleton/.prd_plugin/state/project.json",
              "templates/repo-skeleton/.prd_plugin/templates/config.json",
              "templates/repo-skeleton/.prd_plugin/templates/project.json",
              "tests/test_cross_host_hook_parity.py",
              "tests/test_prd_ui_export.py",
              "tests/test_reason_guard.py",
              "tests/test_tracking_commands.py",
              "wiki/hooks/claude-code-hooks.md",
              "wiki/hooks/reasoning-guard.md",
              "wiki/index.md",
              "wiki/log.md"
            ],
            "change_fingerprint": "a8dfb50f21749253afd9165bf753b1bfbd8e76436c2ef3f1810dc4c575d72ddb",
            "policy": {
              "enabled": true,
              "executor": "ai-collab",
              "neighbor_limit": 12,
              "max_changed_files": 25,
              "fallback": "full",
              "full_suite_triggers": [
                "release",
                "core_change",
                "impact_unavailable",
                "impact_degraded",
                "unmapped_change"
              ],
              "core_paths": [
                "package.json",
                "package-lock.json",
                "pyproject.toml",
                "Cargo.toml",
                "go.mod",
                ".github/workflows/**"
              ],
              "test_patterns": [
                "tests/**",
                "test/**",
                "spec/**",
                "**/*.test.*",
                "**/*.spec.*",
                "test_*.py",
                "*_test.py",
                "*_test.go",
                "**/test_*.py",
                "**/*_test.py",
                "**/*_test.go"
              ],
              "max_selected_tests": 200,
              "execution_timeout_seconds": 600,
              "focused_commands": [],
              "full_commands": [],
              "allowed_executables": [
                "python",
                "python3",
                "py",
                "pytest",
                "npm",
                "npx",
                "node",
                "go",
                "cargo",
                "dotnet",
                "mvn",
                "gradle",
                "gradlew",
                "make"
              ]
            },
            "selection_rules": {
              "precedence": [
                "exact_changed",
                "explicit_test_ownership",
                "structural_dependencies",
                "predictive_impact"
              ],
              "require_all_changed_files_mapped": true,
              "widen_before_full": true,
              "predictive_signal_is_sufficient_alone": false
            },
            "fallback": {
              "strategy": "full",
              "conditions": [
                "release",
                "core_change",
                "impact_unavailable",
                "impact_degraded",
                "unmapped_change"
              ]
            },
            "strategy": "full",
            "reason": "core_change",
            "runtime_requests": {},
            "plan_hash": "555e0a77d52061138314d6d0705ff20e2cd855f93a4de3844624ee69b458e2bb"
          },
          "output_hash": "eabcb179ab2e36c23e9273c19f286b3dc36da505db50f54689bf57f0396827ad",
          "completed_at": "2026-07-25T11:39:46Z"
        },
        {
          "id": "execute",
          "action": "verification.execute",
          "status": "completed",
          "resolved_input_hash": "24c6d7a8a007a41fbfbd80c6a70f7ebc1f56b16f044e1c90715cd1f2543fcef4",
          "started_at": "2026-07-25T11:39:46Z",
          "output": {
            "status": "passed",
            "strategy": "full",
            "reason": "core_change",
            "selected_tests": [],
            "change_fingerprint": "a8dfb50f21749253afd9165bf753b1bfbd8e76436c2ef3f1810dc4c575d72ddb",
            "plan_hash": "555e0a77d52061138314d6d0705ff20e2cd855f93a4de3844624ee69b458e2bb",
            "impact_receipts": [],
            "receipts": [
              {
                "command": [
                  "npm",
                  "test"
                ],
                "exit_code": 0,
                "stdout": "\n> prd-plugin@0.16.60 test\n> python -m unittest discover -s tests -v\n\n{\n  \"status\": \"fail\",\n  \"repo_root\": \"C:\\\\Users\\\\marku\\\\AppData\\\\Local\\\\Temp\\\\tmp0ehohvp8\",\n  \"summary\": {\n    \"errors\": 1,\n    \"warnings\": 0\n  },\n  \"findings\": [\n    {\n      \"check\": \"duplicate_id\",\n      \"severity\": \"error\",\n      \"summary\": \"Duplicate id REQ-002 in .prd_plugin/state/requests.json.\",\n      \"required_action\": \"Renumber one record so REQ-002 is unique. Allocate IDs with the MCP tool prd_next_id (or the record tools like prd_open_goal) instead of hand-computing them.\"\n    }\n  ]\n}\nautonomy_level set to guided\nautonomy_level set to autonomous\nDESTRUCTIVE RESET REQUESTED: --force --yes will erase protected PRD Plugin project data.\nThe following existing state/configuration files would be replaced with skeleton defaults:\n  - .prd_plugin/state/tracking.json\nThis may erase IDs, tracking, requests, decisions, health findings, configuration, and session memory.\nFor a normal safe update, remove --yes and run: npx prd-install . --force\nPRD Plugin safe update: preserving existing state/config and refreshing plugin files only. Never add --yes to a routine update; it requests a destructive reset.\nPRD Plugin safe update: preserving existing state/config and refreshing plugin files only. Never add --yes to a routine update; it requests a destructive reset.\nPRD Plugin safe update: preserving existing state/config and refreshing plugin files only. Never add --yes to a routine update; it requests a destructive reset.\nPRD Plugin safe update: preserving existing state/config and refreshing plugin files only. Never add --yes to a routine update; it requests a destructive reset.\nPRD Plugin safe update: preserving existing state/config and refreshing plugin files only. Never add --yes to a routine update; it requests a destructive reset.\nPRD Plugin safe update: preserving existing state/config and refreshing plugin files only. Never add --yes to a routine update; it requests a destructive reset.\nPRD Plugin safe update: preserving existing state/config and refreshing plugin files only. Never add --yes to a routine update; it requests a destructive reset.\nPRD Plugin safe update: preserving existing state/config and refreshing plugin files only. Never add --yes to a routine update; it requests a destructive reset.\nPRD Plugin safe update: preserving existing state/config and refreshing plugin files only. Never add --yes to a routine update; it requests a destructive reset.\nPRD Plugin safe update: preserving existing state/config and refreshing plugin files only. Never add --yes to a routine update; it requests a destructive reset.\nPRD Plugin safe update: preserving existing state/config and refreshing plugin files only. Never add --yes to a routine update; it requests a destructive reset.\nPRD Plugin safe update: preserving existing state/config and refreshing plugin files only. Never add --yes to a routine update; it requests a destructive reset.\nPRD Plugin safe update: preserving existing state/config and refreshing plugin files only. Never add --yes to a routine update; it requests a destructive reset.\nPRD Plugin safe update: preserving existing state/config and refreshing plugin files only. Never add --yes to a routine update; it requests a destructive reset.\nPRD Plugin safe update: preserving existing state/config and refreshing plugin files only. Never add --yes to a routine update; it requests a destructive reset.\nPRD Plugin safe update: preserving existing state/config and refreshing plugin files only. Never add --yes to a routine update; it requests a destructive reset.\nPRD Plugin safe update: preserving existing state/config and refreshing plugin files only. Never add --yes to a routine update; it requests a destructive reset.\n{\n  \"published\": false,\n  \"package\": \"prd-plugin\",\n  \"version\": \"9.9.9\",\n  \"version_seen\": null,\n  \"latest_seen\": null,\n  \"attempts_used\": 1\n}\n{\n  \"published\": true,\n  \"package\": \"prd-plugin\",\n  \"version\": \"1.2.3\",\n  \"version_seen\": \"1.2.3\",\n  \"latest_seen\": \"1.2.3\",\n  \"attempts_used\": 1\n}\n{\"decision\": \"block\", \"reason\": \"Autonomous run-until-done: goal TRK-163 is still active. Continue with the next incomplete step toward it \\u2014 do not stop to ask 'shall I proceed?'. If you genuinely need the user (consent floor: push/merge/publish/secrets, or a real blocker), create the file .prd_plugin/local/autonomy-pause with a one-line reason and then stop; the guard will let you. Otherwise keep going.\"}\n",
                "stderr": "es (test_unified_config.MutationTests.test_audit_reports_unknown_and_invalid_values) ... ok\ntest_enable_disable_only_accept_mutable_booleans (test_unified_config.MutationTests.test_enable_disable_only_accept_mutable_booleans) ... ok\ntest_failed_atomic_replace_leaves_original_config_untouched (test_unified_config.MutationTests.test_failed_atomic_replace_leaves_original_config_untouched) ... ok\ntest_malformed_config_is_never_replaced_by_a_mutation (test_unified_config.MutationTests.test_malformed_config_is_never_replaced_by_a_mutation) ... ok\ntest_manual_set_marks_profile_custom_and_preserves_style (test_unified_config.MutationTests.test_manual_set_marks_profile_custom_and_preserves_style) ... ok\ntest_scalar_parent_is_not_clobbered_by_nested_set (test_unified_config.MutationTests.test_scalar_parent_is_not_clobbered_by_nested_set) ... ok\ntest_builtin_profile_dry_run_then_atomic_apply (test_unified_config.ProfileTests.test_builtin_profile_dry_run_then_atomic_apply) ... ok\ntest_invalid_custom_profile_never_partially_writes (test_unified_config.ProfileTests.test_invalid_custom_profile_never_partially_writes) ... ok\ntest_save_show_diff_and_delete_custom_profile (test_unified_config.ProfileTests.test_save_show_diff_and_delete_custom_profile) ... ok\ntest_does_not_flag_canonical_prd_state_paths (test_unsubmitted_plugin_request.UnsubmittedPluginRequestTests.test_does_not_flag_canonical_prd_state_paths) ... ok\ntest_does_not_flag_ordinary_project_requests (test_unsubmitted_plugin_request.UnsubmittedPluginRequestTests.test_does_not_flag_ordinary_project_requests) ... ok\ntest_does_not_flag_rejected_requests (test_unsubmitted_plugin_request.UnsubmittedPluginRequestTests.test_does_not_flag_rejected_requests) ... ok\ntest_does_not_flag_when_already_marked_upstream (test_unsubmitted_plugin_request.UnsubmittedPluginRequestTests.test_does_not_flag_when_already_marked_upstream) ... ok\ntest_flags_a_local_request_about_a_plugin_script (test_unsubmitted_plugin_request.UnsubmittedPluginRequestTests.test_flags_a_local_request_about_a_plugin_script) ... ok\ntest_flags_a_request_that_names_itself_upstream (test_unsubmitted_plugin_request.UnsubmittedPluginRequestTests.test_flags_a_request_that_names_itself_upstream) ... ok\ntest_never_fires_in_the_hub_repo_itself (test_unsubmitted_plugin_request.UnsubmittedPluginRequestTests.test_never_fires_in_the_hub_repo_itself) ... ok\ntest_wired_into_run_checks (test_unsubmitted_plugin_request.UnsubmittedPluginRequestTests.test_wired_into_run_checks) ... ok\ntest_output_writes_lf_and_a_trailing_newline (test_utcp_first_authority.GeneratedArtifactsAreByteStableTests.test_output_writes_lf_and_a_trailing_newline) ... ok\ntest_the_committed_manual_matches_a_fresh_generation (test_utcp_first_authority.GeneratedArtifactsAreByteStableTests.test_the_committed_manual_matches_a_fresh_generation) ... ok\ntest_every_spec_tool_maps_to_a_catalog_capability (test_utcp_first_authority.ParityDirectionTests.test_every_spec_tool_maps_to_a_catalog_capability) ... ok\ntest_server_metadata_matches_the_spec (test_utcp_first_authority.ParityDirectionTests.test_server_metadata_matches_the_spec) ... ok\ntest_python_entry_points_share_the_same_lock (test_utcp_first_authority.SafetyUnchangedTests.test_python_entry_points_share_the_same_lock)\nThe migration target already exists and is proven: prd_reflections ... ok\ntest_the_state_lock_is_still_held_for_mutations (test_utcp_first_authority.SafetyUnchangedTests.test_the_state_lock_is_still_held_for_mutations) ... ok\ntest_no_shipped_tool_metadata_carries_mojibake (test_utcp_first_authority.ShippedTextIsCleanTests.test_no_shipped_tool_metadata_carries_mojibake) ... ok\ntest_shipped_tool_metadata_is_valid_utf8 (test_utcp_first_authority.ShippedTextIsCleanTests.test_shipped_tool_metadata_is_valid_utf8)\nA file written through a cp1252 layer either fails to decode or ... ok\ntest_each_tool_declares_name_description_and_schema (test_utcp_first_authority.SpecIsTheSourceTests.test_each_tool_declares_name_description_and_schema) ... ok\ntest_the_manual_is_generated_from_the_spec_not_the_server (test_utcp_first_authority.SpecIsTheSourceTests.test_the_manual_is_generated_from_the_spec_not_the_server) ... ok\ntest_the_server_no_longer_authors_descriptions (test_utcp_first_authority.SpecIsTheSourceTests.test_the_server_no_longer_authors_descriptions)\nserver.cjs must READ definitions, not declare them. While a tool ... ok\ntest_the_spec_exists_and_declares_every_tool (test_utcp_first_authority.SpecIsTheSourceTests.test_the_spec_exists_and_declares_every_tool) ... ok\ntest_official_bridge_round_trips_cli_and_mcp_templates (test_utcp_first_catalog.BridgeParityTests.test_official_bridge_round_trips_cli_and_mcp_templates) ... ok\ntest_bridged_entries_reuse_server_metadata_verbatim (test_utcp_first_catalog.GeneratedProjectionTests.test_bridged_entries_reuse_server_metadata_verbatim)\nEach bridged manual entry's description and inputs equal the server's ... ok\ntest_checked_in_metadata_matches_live_server (test_utcp_first_catalog.GeneratedProjectionTests.test_checked_in_metadata_matches_live_server)\nThe pinned metadata projection cannot drift behind the live server. ... ok\ntest_mutations_keep_the_validated_handler_path (test_utcp_first_catalog.GuardedMutationTests.test_mutations_keep_the_validated_handler_path)\nEvery manual tool in a non-read capability calls the plugin state ... ok\ntest_read_only_cli_tools_stay_cli (test_utcp_first_catalog.GuardedMutationTests.test_read_only_cli_tools_stay_cli)\nThe 12 cli-native observe/recall tools keep their cli templates. ... ok\ntest_checked_in_metadata_projection_exists (test_utcp_first_catalog.ManualCompletenessTests.test_checked_in_metadata_projection_exists)\nThe server's tool metadata is a checked-in generated artifact so the ... ok\ntest_manual_covers_every_capability_on_both_transports (test_utcp_first_catalog.ManualCompletenessTests.test_manual_covers_every_capability_on_both_transports)\nEvery UTCP and MCP registration in the tool-surface catalog appears ... ok\ntest_appends_version_change_request (test_version_advice.VersionAdviceTests.test_appends_version_change_request) ... ok\ntest_builds_safe_update_advice_for_low_risk_releases (test_version_advice.VersionAdviceTests.test_builds_safe_update_advice_for_low_risk_releases) ... ok\ntest_cli_uses_hub_releases_when_downstream_repo_has_no_releases_file (test_version_advice.VersionAdviceTests.test_cli_uses_hub_releases_when_downstream_repo_has_no_releases_file) ... ok\ntest_detects_installed_version_from_bom_json (test_version_advice.VersionAdviceTests.test_detects_installed_version_from_bom_json) ... ok\ntest_detects_installed_version_from_opencode_plugin_manifest (test_version_advice.VersionAdviceTests.test_detects_installed_version_from_opencode_plugin_manifest) ... ok\ntest_detects_installed_version_from_prd_plugin_config (test_version_advice.VersionAdviceTests.test_detects_installed_version_from_prd_plugin_config) ... ok\ntest_detects_latest_version_from_plugin_manifest (test_version_advice.VersionAdviceTests.test_detects_latest_version_from_plugin_manifest) ... ok\ntest_installed_version_priority_prefers_config_then_codex_then_opencode (test_version_advice.VersionAdviceTests.test_installed_version_priority_prefers_config_then_codex_then_opencode) ... ok\ntest_orders_prerelease_before_final_release (test_version_advice.VersionAdviceTests.test_orders_prerelease_before_final_release) ... ok\ntest_recommends_review_first_for_medium_or_high_risk_release (test_version_advice.VersionAdviceTests.test_recommends_review_first_for_medium_or_high_risk_release) ... ok\ntest_disabled_returns_disabled_and_no_fetch (test_version_check.CheckTests.test_disabled_returns_disabled_and_no_fetch) ... ok\ntest_force_refetches_within_ttl (test_version_check.CheckTests.test_force_refetches_within_ttl) ... ok\ntest_network_failure_is_fail_open (test_version_check.CheckTests.test_network_failure_is_fail_open) ... ok\ntest_no_update_when_current (test_version_check.CheckTests.test_no_update_when_current) ... ok\ntest_status_is_cache_only_no_fetch (test_version_check.CheckTests.test_status_is_cache_only_no_fetch) ... ok\ntest_ttl_cache_avoids_refetch (test_version_check.CheckTests.test_ttl_cache_avoids_refetch) ... ok\ntest_ttl_expiry_refetches (test_version_check.CheckTests.test_ttl_expiry_refetches) ... ok\ntest_update_available_when_npm_is_ahead (test_version_check.CheckTests.test_update_available_when_npm_is_ahead) ... ok\ntest_status_cli_exits_zero (test_version_check.CliTests.test_status_cli_exits_zero) ... ok\ntest_default_ttl_is_responsive_not_a_day (test_version_check.FreshnessTests.test_default_ttl_is_responsive_not_a_day) ... ok\ntest_fetch_latest_accepts_a_timeout (test_version_check.FreshnessTests.test_fetch_latest_accepts_a_timeout) ... ok\ntest_nudge_refreshes_in_session_not_cache_only (test_version_check.FreshnessTests.test_nudge_refreshes_in_session_not_cache_only) ... ok\ntest_registry_default_ttl_matches (test_version_check.FreshnessTests.test_registry_default_ttl_matches) ... ok\ntest_semver_ordering (test_version_check.ParseTests.test_semver_ordering) ... ok\ntest_set_enabled_writes_config (test_version_check.ToggleTests.test_set_enabled_writes_config) ... ok\ntest_config_has_version_check_default_on (test_version_check.WiringTests.test_config_has_version_check_default_on) ... ok\ntest_nudge_surfaces_update_available (test_version_check.WiringTests.test_nudge_surfaces_update_available) ... ok\ntest_prd_version_command_exists (test_version_check.WiringTests.test_prd_version_command_exists) ... ok\ntest_script_registered_downstream (test_version_check.WiringTests.test_script_registered_downstream) ... ok\ntest_plan_cli_emits_json (test_wiki_backfill.CliTests.test_plan_cli_emits_json) ... ok\ntest_status_cli (test_wiki_backfill.CliTests.test_status_cli) ... ok\ntest_marker_written_for_established_repo_gaining_wiki (test_wiki_backfill.InstallerMarkerTests.test_marker_written_for_established_repo_gaining_wiki) ... ok\ntest_no_marker_for_empty_scaffold (test_wiki_backfill.InstallerMarkerTests.test_no_marker_for_empty_scaffold) ... ok\ntest_no_marker_when_wiki_already_exists (test_wiki_backfill.InstallerMarkerTests.test_no_marker_when_wiki_already_exists) ... ok\ntest_no_marker_when_wiki_disabled (test_wiki_backfill.InstallerMarkerTests.test_no_marker_when_wiki_disabled) ... ok\ntest_pending_false_when_absent (test_wiki_backfill.StatusTests.test_pending_false_when_absent) ... ok\ntest_pending_false_when_wiki_already_exists (test_wiki_backfill.StatusTests.test_pending_false_when_wiki_already_exists) ... ok\ntest_pending_true_when_marker_present (test_wiki_backfill.StatusTests.test_pending_true_when_marker_present) ... ok\ntest_plan_excludes_generated_report_artifacts (test_wiki_backfill.SurveyPlanTests.test_plan_excludes_generated_report_artifacts)\nrequest-report/ (incl. its calibration report trees) and docs/evidence/ ... ok\ntest_plan_excludes_plugin_and_vendor_noise (test_wiki_backfill.SurveyPlanTests.test_plan_excludes_plugin_and_vendor_noise) ... ok\ntest_plan_inventories_code_docs_and_state (test_wiki_backfill.SurveyPlanTests.test_plan_inventories_code_docs_and_state) ... ok\ntest_plan_is_read_only (test_wiki_backfill.SurveyPlanTests.test_plan_is_read_only) ... ok\ntest_wiki_drift_in_on_stop_and_default_sets (test_wiki_backfill.WikiDriftMonitorWiringTests.test_wiki_drift_in_on_stop_and_default_sets) ... ok\ntest_current_article_no_drift (test_wiki_backfill.WikiDriftTests.test_current_article_no_drift) ... ok\ntest_drift_cli (test_wiki_backfill.WikiDriftTests.test_drift_cli) ... ok\ntest_far_behind_article_flagged (test_wiki_backfill.WikiDriftTests.test_far_behind_article_flagged) ... ok\ntest_no_wiki_is_ok (test_wiki_backfill.WikiDriftTests.test_no_wiki_is_ok) ... ok\ntest_unlinked_markdown_reference_is_part_of_wiki_drift (test_wiki_backfill.WikiDriftTests.test_unlinked_markdown_reference_is_part_of_wiki_drift) ... ok\ntest_unstamped_article_flagged (test_wiki_backfill.WikiDriftTests.test_unstamped_article_flagged) ... ok\ntest_wiki_drift_uses_configured_wiki_directory (test_wiki_backfill.WikiDriftTests.test_wiki_drift_uses_configured_wiki_directory) ... ok\ntest_ambiguous_reference_is_reported_but_never_guessed (test_wiki_backfill.WikiInlineMarkdownLinkTests.test_ambiguous_reference_is_reported_but_never_guessed) ... ok\ntest_cli_check_fails_and_fix_then_passes (test_wiki_backfill.WikiInlineMarkdownLinkTests.test_cli_check_fails_and_fix_then_passes) ... ok\ntest_existing_inline_links_and_fenced_examples_are_not_findings (test_wiki_backfill.WikiInlineMarkdownLinkTests.test_existing_inline_links_and_fenced_examples_are_not_findings) ... ok\ntest_fix_rewrites_only_unambiguous_references_to_relative_inline_links (test_wiki_backfill.WikiInlineMarkdownLinkTests.test_fix_rewrites_only_unambiguous_references_to_relative_inline_links) ... ok\ntest_reports_resolvable_bare_and_code_wrapped_markdown_references (test_wiki_backfill.WikiInlineMarkdownLinkTests.test_reports_resolvable_bare_and_code_wrapped_markdown_references) ... ok\ntest_nudge_surfaces_pending_backfill (test_wiki_backfill.WiringTests.test_nudge_surfaces_pending_backfill) ... ok\ntest_script_registered_downstream (test_wiki_backfill.WiringTests.test_script_registered_downstream) ... ok\ntest_skill_has_backfill_mode (test_wiki_backfill.WiringTests.test_skill_has_backfill_mode) ... ok\ntest_copy_and_download_controls_are_wired (test_wiki_html_export.WikiHtmlExportTests.test_copy_and_download_controls_are_wired) ... ok\ntest_default_output_lands_in_the_local_runtime_dir (test_wiki_html_export.WikiHtmlExportTests.test_default_output_lands_in_the_local_runtime_dir) ... ok\ntest_every_page_is_embedded_with_exact_markdown (test_wiki_html_export.WikiHtmlExportTests.test_every_page_is_embedded_with_exact_markdown) ... ok\ntest_export_all_generates_viewers_and_super_index (test_wiki_html_export.WikiHtmlExportTests.test_export_all_generates_viewers_and_super_index) ... ok\ntest_export_is_one_self_contained_offline_file (test_wiki_html_export.WikiHtmlExportTests.test_export_is_one_self_contained_offline_file) ... ok\ntest_guest_repo_viewer_is_hosted_by_the_host_repo (test_wiki_html_export.WikiHtmlExportTests.test_guest_repo_viewer_is_hosted_by_the_host_repo)\nA repo without .prd_plugin gets NO new files in its own tree; its ... ok\ntest_hub_repo_exports_all_pages (test_wiki_html_export.WikiHtmlExportTests.test_hub_repo_exports_all_pages) ... ok\ntest_parse_wiki_log_extracts_dated_entries_with_bodies (test_wiki_html_export.WikiHtmlExportTests.test_parse_wiki_log_extracts_dated_entries_with_bodies)\nREQ-112: every workspace log follows '## [date] mode | text'. ... ok\ntest_parse_wiki_log_tolerates_missing_log (test_wiki_html_export.WikiHtmlExportTests.test_parse_wiki_log_tolerates_missing_log) ... ok\ntest_script_content_cannot_break_the_payload (test_wiki_html_export.WikiHtmlExportTests.test_script_content_cannot_break_the_payload) ... ok\ntest_super_index_has_a_combined_changelog (test_wiki_html_export.WikiHtmlExportTests.test_super_index_has_a_combined_changelog) ... ok\ntest_super_index_reports_page_counts (test_wiki_html_export.WikiHtmlExportTests.test_super_index_reports_page_counts) ... ok\ntest_workspace_discovery_uses_the_wiki_convention_marker (test_wiki_html_export.WikiHtmlExportTests.test_workspace_discovery_uses_the_wiki_convention_marker)\nREQ-110 + REQ-111: any immediate child whose wiki follows the ... ok\ntest_a_repo_without_a_wiki_is_not_in_drift (test_wiki_ingest_drift.DetectionTests.test_a_repo_without_a_wiki_is_not_in_drift)\nNo wiki is a legitimate state, not a failure to ingest. ... ok\ntest_fully_ingested_repo_is_clean (test_wiki_ingest_drift.DetectionTests.test_fully_ingested_repo_is_clean) ... ok\ntest_malformed_state_degrades_rather_than_raising (test_wiki_ingest_drift.DetectionTests.test_malformed_state_degrades_rather_than_raising) ... ok\ntest_non_implemented_requests_are_never_expected_in_the_log (test_wiki_ingest_drift.DetectionTests.test_non_implemented_requests_are_never_expected_in_the_log) ... ok\ntest_only_work_since_the_last_ingest_is_actionable (test_wiki_ingest_drift.DetectionTests.test_only_work_since_the_last_ingest_is_actionable)\nRaw counting flags pre-wiki history as drift � ~70 items in the hub, ... ok\ntest_reports_implemented_requests_absent_from_the_log (test_wiki_ingest_drift.DetectionTests.test_reports_implemented_requests_absent_from_the_log) ... ok\ntest_it_runs_against_this_repo_and_returns_a_usable_report (test_wiki_ingest_drift.RealRepoTests.test_it_runs_against_this_repo_and_returns_a_usable_report)\nGrounded against real state, but NOT pinned to a specific gap: a test ... ok\ntest_prd_status_omits_it_when_clean (test_wiki_ingest_drift.SurfaceTests.test_prd_status_omits_it_when_clean) ... ok\ntest_prd_status_reports_the_drift (test_wiki_ingest_drift.SurfaceTests.test_prd_status_reports_the_drift) ... ok\ntest_this_repos_wiki_reads_byte_exact (test_wiki_page_contract.HubRepoSmokeTests.test_this_repos_wiki_reads_byte_exact) ... ok\ntest_list_enumerates_canonical_pages_with_titles (test_wiki_page_contract.WikiPageListTests.test_list_enumerates_canonical_pages_with_titles) ... ok\ntest_boundaries_are_hard (test_wiki_page_contract.WikiPageReadTests.test_boundaries_are_hard) ... ok\ntest_drift_remains_the_default_action (test_wiki_page_contract.WikiPageReadTests.test_drift_remains_the_default_action) ... ok\ntest_read_page_without_stamps_reports_null_provenance (test_wiki_page_contract.WikiPageReadTests.test_read_page_without_stamps_reports_null_provenance) ... ok\ntest_read_requires_a_path (test_wiki_page_contract.WikiPageReadTests.test_read_requires_a_path) ... ok\ntest_read_returns_exact_markdown_with_provenance (test_wiki_page_contract.WikiPageReadTests.test_read_returns_exact_markdown_with_provenance) ... ok\ntest_no_cp1252_unencodable_chars_in_agent_facing_tools (test_windows_console_safe.SourceScanTests.test_no_cp1252_unencodable_chars_in_agent_facing_tools) ... ok\ntest_backfill_pending_status_renders_cp1252_safe (test_windows_console_safe.StatusRenderTests.test_backfill_pending_status_renders_cp1252_safe) ... ok\ntest_json_output_escapes_non_console_characters (test_windows_console_safe.WorkflowCliRenderTests.test_json_output_escapes_non_console_characters) ... ok\ntest_repository_workflow_surfaces_are_chml_zero (test_workflow_chml_audit.WorkflowChmlAuditTests.test_repository_workflow_surfaces_are_chml_zero) ... ok\ntest_semantic_skill_finding_is_part_of_workflow_chml (test_workflow_chml_audit.WorkflowChmlAuditTests.test_semantic_skill_finding_is_part_of_workflow_chml) ... ok\ntest_git_workflow_pushes_clean_verified_commits_in_autonomous (test_workflow_consistency.AutonomyConflictResolutionTests.test_git_workflow_pushes_clean_verified_commits_in_autonomous) ... ok\ntest_request_intake_defers_autonomy_and_owns_graduation (test_workflow_consistency.AutonomyConflictResolutionTests.test_request_intake_defers_autonomy_and_owns_graduation) ... ok\ntest_evidence_pair_states_create_vs_review_boundary (test_workflow_consistency.BoundaryClarityTests.test_evidence_pair_states_create_vs_review_boundary) ... ok\ntest_session_close_states_memory_boundary (test_workflow_consistency.BoundaryClarityTests.test_session_close_states_memory_boundary) ... ok\ntest_document_branch_has_promotion_owner (test_workflow_consistency.DeadEndOwnerTests.test_document_branch_has_promotion_owner) ... ok\ntest_health_findings_have_triage_dispositions (test_workflow_consistency.DeadEndOwnerTests.test_health_findings_have_triage_dispositions) ... ok\ntest_memory_owns_schema_version_changes (test_workflow_consistency.DeadEndOwnerTests.test_memory_owns_schema_version_changes) ... ok\ntest_planning_lifecycle_has_stage_readiness_checkpoints (test_workflow_consistency.DeadEndOwnerTests.test_planning_lifecycle_has_stage_readiness_checkpoints) ... ok\ntest_session_close_runs_traceability_sync (test_workflow_consistency.DeadEndOwnerTests.test_session_close_runs_traceability_sync) ... ok\n\n----------------------------------------------------------------------\nRan 1289 tests in 117.192s\n\nOK\n",
                "receipt_hash": "4e26037005addb02a9b89b014d3ba77d0f42f7e5efd1152b259c3fc6dcf9ed40"
              }
            ],
            "execution_hash": "d603210c5601bc50caf6223f5d4f391c2fe2c1513dfe7df503533513f544e7ab"
          },
          "output_hash": "15b975debdb5a7518833a976c4f1a4b6b9852834d3643ec4ff2a329f54164fb8",
          "completed_at": "2026-07-25T11:41:44Z"
        },
        {
          "id": "diff",
          "action": "git.diff_check",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-25T11:41:44Z",
          "output": {
            "passed": true
          },
          "output_hash": "11c11db30f4b3f6c758722ba3e27eea08145b7d212f6a157451e364b48475280",
          "completed_at": "2026-07-25T11:41:44Z"
        },
        {
          "id": "state",
          "action": "state.consistency",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-25T11:41:44Z",
          "output": {
            "status": "ok",
            "repo_root": "D:\\Projects\\prd-plugin",
            "summary": {
              "errors": 0,
              "warnings": 0,
              "infos": 1
            },
            "findings": [
              {
                "id": "CONS-INFO-001",
                "severity": "info",
                "path": "docs/evidence/EV-200.md",
                "summary": "File references 2 canonical IDs across 2 prefix(es); treated as a positive signal of extra work.",
                "referenced_prefixes": [
                  "CHG",
                  "TRK"
                ],
                "referenced_id_count": 2,
                "required_action": "No action required; this is an informational signal."
              }
            ]
          },
          "output_hash": "9963110856ca8182da0dfdbb22f6960618b55dbc121be0dce0066a7c7a389b10",
          "completed_at": "2026-07-25T11:41:45Z"
        },
        {
          "id": "gate",
          "action": "state.gate",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-25T11:41:45Z",
          "output": {
            "status": "attention",
            "repo_root": "D:\\Projects\\prd-plugin",
            "summary": {
              "errors": 0,
              "warnings": 0
            },
            "findings": [
              {
                "check": "state_consistency",
                "severity": "info",
                "summary": "File references 2 canonical IDs across 2 prefix(es); treated as a positive signal of extra work.",
                "required_action": "No action required; this is an informational signal."
              }
            ]
          },
          "output_hash": "6a0ed3d65779be265214a0e8395ab03978b9f7b91da9ffb59b257b73f82d087d",
          "completed_at": "2026-07-25T11:41:46Z"
        }
      ],
      "completed_at": "2026-07-25T11:41:46Z"
    },
    {
      "id": "WFR-449",
      "schema_version": "1.0",
      "workflow_id": "evidence.record",
      "workflow_version": 1,
      "definition_hash": "a6dfcb8faadb669d5c097a0d7fa9a738f20ee98e03b552c9557259a94a197e88",
      "plan_hash": "e618b9b4ba84efade0a48641a39209d64594c4342ab02857b8957cef2b25c69f",
      "input_hash": "3a66364f8983fb46ca1f05ed27a6d916cb86b4c2f6f8d7f3e6a7f5ac01ff5989",
      "inputs": {
        "summary": "Host-specific Reason Guard ledgers retain provider, surface, model, effort, and session identity; bounded offline Claude and Codex historical fixtures backfill visible summaries without private blocks; OpenCode metadata forwarding, migrations, UI reporting, and source/skeleton parity are verified. Focused 139 tests and the full 1,289-test suite passed; benchmark budget passed; state consistency is 0 errors/0 warnings; deterministic workflow CHML is 0/0/0/0.",
        "type": "validation",
        "linked_ids": [
          "REQ-176",
          "TRK-163",
          "PRD-011",
          "ARCH-011",
          "IMP-016",
          "DBR-002"
        ],
        "commands": [
          "python -m unittest tests.test_reason_guard tests.test_hook_dispatcher tests.test_reason_guard_benchmark tests.test_prd_ui_export tests.test_tracking_commands tests.test_cross_host_hook_parity -q (139 passed)",
          "engineering.verify WFR-448 (npm test: 1289 passed)",
          "python scripts/reason_guard_benchmark.py --samples 100 --warmup 10 --json (budget passed; structured p95 39.289 ms; delta 7.147 ms)",
          "python scripts/workflow_chml_audit.py --format json (critical/high/medium/low all 0)",
          "python scripts/state_consistency_check.py --format json (0 errors, 0 warnings)",
          "node --check .opencode/plugins/prd-hooks.js (passed)"
        ],
        "limitations": "No live Claude session was run, as requested. Claude behavior was exercised against old trusted transcript fixtures and synthetic privacy/adversarial fixtures; live Claude validation remains intentionally deferred until usage limits permit."
      },
      "idempotency_key": "req-176-evidence-host-surface-model-effort-v1",
      "status": "blocked",
      "attempt": 1,
      "created_at": "2026-07-25T11:43:09Z",
      "updated_at": "2026-07-25T11:43:10Z",
      "receipts": [],
      "steps": [
        {
          "id": "record",
          "action": "state.mutate",
          "status": "outcome_unknown",
          "resolved_input_hash": "4f9dd8420a1723d3f3176b5b71293a5a3bb7632a9e18aa8c0730e0b5d851b789",
          "started_at": "2026-07-25T11:43:09Z",
          "execution_token": "3909230e60f5ad587cefa0787881a91bdf0a5eb87e1a074b2cc184bc162e615f"
        },
        {
          "id": "confirm",
          "action": "state.query",
          "status": "pending"
        }
      ],
      "error": {
        "type": "ActionError",
        "message": "D:\\Projects\\prd-plugin\\mcp\\server.cjs:453\n            throw new ToolError(`${tool}: '${name}' entries must be plain objects.`);\n            ^\n\nError: prd_record_evidence: 'commands' entries must be plain objects.\n    at checkArgs (D:\\Projects\\prd-plugin\\mcp\\server.cjs:453:19)\n    at Object.handler (D:\\Projects\\prd-plugin\\mcp\\server.cjs:1832:17)\n    at Object.callTool (D:\\Projects\\prd-plugin\\mcp\\server.cjs:2522:15)\n    at [eval]:1:44\n    at runScriptInThisContext (node:internal/vm:219:10)\n    at node:internal/process/execution:483:12\n    at [eval]-wrapper:6:24\n    at runScriptInContext (node:internal/process/execution:481:60)\n    at evalFunction (node:internal/process/execution:315:30)\n    at evalTypeScript (node:internal/process/execution:327:3)\n\nNode.js v26.3.0"
      }
    },
    {
      "id": "WFR-450",
      "schema_version": "1.0",
      "workflow_id": "evidence.record",
      "workflow_version": 1,
      "definition_hash": "a6dfcb8faadb669d5c097a0d7fa9a738f20ee98e03b552c9557259a94a197e88",
      "plan_hash": "5989f6d967e55595a61d333da629d8ca38acffc7ec09815117aa1428b851fc68",
      "input_hash": "ef6a2f3a6ce78acb88bad1e42916f937748c7d407c88e36c7ba8c5fed8a626bf",
      "inputs": {
        "summary": "Host-specific Reason Guard ledgers retain provider, surface, model, effort, and session identity; bounded offline Claude and Codex historical fixtures backfill visible summaries without private blocks; OpenCode metadata forwarding, migrations, UI reporting, and source/skeleton parity are verified. Focused 139 tests and the full 1,289-test suite passed; benchmark budget passed; state consistency is 0 errors/0 warnings; deterministic workflow CHML is 0/0/0/0.",
        "type": "validation",
        "linked_ids": [
          "REQ-176",
          "TRK-163",
          "PRD-011",
          "ARCH-011",
          "IMP-016",
          "DBR-002"
        ],
        "commands": [
          {
            "command": "focused Reason Guard unittest suite",
            "outcome": "ok",
            "tests_run": 139,
            "failures": 0,
            "errors": 0
          },
          {
            "command": "engineering.verify WFR-448 / npm test",
            "outcome": "ok",
            "tests_run": 1289,
            "failures": 0,
            "errors": 0
          },
          {
            "command": "reason_guard_benchmark.py --samples 100 --warmup 10 --json",
            "outcome": "budget passed",
            "structured_p95_ms": 39.289,
            "delta_p95_ms": 7.147
          },
          {
            "command": "workflow_chml_audit.py --format json",
            "outcome": "ok",
            "critical": 0,
            "high": 0,
            "medium": 0,
            "low": 0
          },
          {
            "command": "state_consistency_check.py --format json",
            "outcome": "ok",
            "errors": 0,
            "warnings": 0
          },
          {
            "command": "node --check .opencode/plugins/prd-hooks.js",
            "outcome": "ok"
          }
        ],
        "limitations": "No live Claude session was run, as requested. Claude behavior was exercised against old trusted transcript fixtures and synthetic privacy/adversarial fixtures; live Claude validation remains intentionally deferred until usage limits permit."
      },
      "idempotency_key": "req-176-evidence-host-surface-model-effort-v2",
      "status": "completed",
      "attempt": 1,
      "created_at": "2026-07-25T11:43:33Z",
      "updated_at": "2026-07-25T11:43:34Z",
      "receipts": [
        {
          "step_id": "record",
          "action": "state.mutate",
          "input_hash": "6e2e82b1dd2927ea68a281afee2ad489e3d22bbb823da478083cd32269169b7d",
          "output_hash": "0d279bf0e3ccca21152eb185232990238afa20e7f349cdecd695972f70f3ca2d",
          "completed_at": "2026-07-25T11:43:34Z"
        },
        {
          "step_id": "confirm",
          "action": "state.query",
          "input_hash": "30860ab244885bb8017f57da725a1c2f8ecd9cdbfe5872f7b65cf4e61c0b126b",
          "output_hash": "0ed7ace86eacf6c56fb60fc071db6ad8b62ccd03199cb2734bf614553e2f2f3e",
          "completed_at": "2026-07-25T11:43:34Z"
        }
      ],
      "steps": [
        {
          "id": "record",
          "action": "state.mutate",
          "status": "completed",
          "resolved_input_hash": "6e2e82b1dd2927ea68a281afee2ad489e3d22bbb823da478083cd32269169b7d",
          "started_at": "2026-07-25T11:43:33Z",
          "execution_token": "b3a4c8d026a0321bc47cdf8dcf8b1b936ad6e33c5e516a3150320c1771333d95",
          "output": {
            "id": "EV-216"
          },
          "output_hash": "0d279bf0e3ccca21152eb185232990238afa20e7f349cdecd695972f70f3ca2d",
          "completed_at": "2026-07-25T11:43:34Z"
        },
        {
          "id": "confirm",
          "action": "state.query",
          "status": "completed",
          "resolved_input_hash": "30860ab244885bb8017f57da725a1c2f8ecd9cdbfe5872f7b65cf4e61c0b126b",
          "started_at": "2026-07-25T11:43:34Z",
          "output": {
            "kind": "EV",
            "record": {
              "id": "EV-216",
              "type": "validation",
              "summary": "Host-specific Reason Guard ledgers retain provider, surface, model, effort, and session identity; bounded offline Claude and Codex historical fixtures backfill visible summaries without private blocks; OpenCode metadata forwarding, migrations, UI reporting, and source/skeleton parity are verified. Focused 139 tests and the full 1,289-test suite passed; benchmark budget passed; state consistency is 0 errors/0 warnings; deterministic workflow CHML is 0/0/0/0.",
              "linked_ids": [
                "REQ-176",
                "TRK-163",
                "PRD-011",
                "ARCH-011",
                "IMP-016",
                "DBR-002"
              ],
              "created_at": "2026-07-25",
              "commands": [
                {
                  "command": "focused Reason Guard unittest suite",
                  "outcome": "ok",
                  "tests_run": 139,
                  "failures": 0,
                  "errors": 0
                },
                {
                  "command": "engineering.verify WFR-448 / npm test",
                  "outcome": "ok",
                  "tests_run": 1289,
                  "failures": 0,
                  "errors": 0
                },
                {
                  "command": "reason_guard_benchmark.py --samples 100 --warmup 10 --json",
                  "outcome": "budget passed",
                  "structured_p95_ms": 39.289,
                  "delta_p95_ms": 7.147
                },
                {
                  "command": "workflow_chml_audit.py --format json",
                  "outcome": "ok",
                  "critical": 0,
                  "high": 0,
                  "medium": 0,
                  "low": 0
                },
                {
                  "command": "state_consistency_check.py --format json",
                  "outcome": "ok",
                  "errors": 0,
                  "warnings": 0
                },
                {
                  "command": "node --check .opencode/plugins/prd-hooks.js",
                  "outcome": "ok"
                }
              ],
              "limitations": "No live Claude session was run, as requested. Claude behavior was exercised against old trusted transcript fixtures and synthetic privacy/adversarial fixtures; live Claude validation remains intentionally deferred until usage limits permit."
            }
          },
          "output_hash": "0ed7ace86eacf6c56fb60fc071db6ad8b62ccd03199cb2734bf614553e2f2f3e",
          "completed_at": "2026-07-25T11:43:34Z"
        }
      ],
      "completed_at": "2026-07-25T11:43:34Z"
    },
    {
      "id": "WFR-451",
      "schema_version": "1.0",
      "workflow_id": "hub.release",
      "workflow_version": 1,
      "definition_hash": "ab6ae2afcb0128db8d994b6b397e543c7490017bd3d1b15309079edc6be94d9a",
      "plan_hash": "02bcb9cb71ca5641cc12e6270fee67758c0051b183e4204137993cd57b89a7bd",
      "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
      "inputs": {},
      "idempotency_key": "release-0.16.60-req-176-v1",
      "status": "completed",
      "attempt": 2,
      "created_at": "2026-07-25T11:48:00Z",
      "updated_at": "2026-07-25T11:50:13Z",
      "receipts": [
        {
          "step_id": "diff",
          "action": "git.diff_check",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "11c11db30f4b3f6c758722ba3e27eea08145b7d212f6a157451e364b48475280",
          "completed_at": "2026-07-25T11:48:01Z"
        },
        {
          "step_id": "config",
          "action": "config.audit",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "9cbf27cbac0de8a8eb0ed2dd07eae4f75908186aa645194b551c48f999ebb1b5",
          "completed_at": "2026-07-25T11:48:01Z"
        },
        {
          "step_id": "state",
          "action": "state.consistency",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "9963110856ca8182da0dfdbb22f6960618b55dbc121be0dce0066a7c7a389b10",
          "completed_at": "2026-07-25T11:48:02Z"
        },
        {
          "step_id": "workflow_audit",
          "action": "process.fixed",
          "input_hash": "edf19b269a54d72753f1abc2b8ffcb810c2b7bc377cee7e1698c939f17e0be94",
          "output_hash": "231b43ed70e09c4e7cbcda1094b00e0274dd4a22ff8324da2eb907f705c1316a",
          "completed_at": "2026-07-25T11:48:02Z"
        },
        {
          "step_id": "substrate_audit",
          "action": "process.fixed",
          "input_hash": "4998f71d2d3f6ac7dd50e10d37f60ae32d54898949950e484da9de113e18a979",
          "output_hash": "4176fd7e9d2d33bd61e5fd6bb8d392a63eaa5b2cb65b750eeb348b9dd55fe220",
          "completed_at": "2026-07-25T11:48:02Z"
        },
        {
          "step_id": "suite",
          "action": "process.fixed",
          "input_hash": "954e575e48145853f5681eda189186c95a053267158fae669114320f2e53794a",
          "output_hash": "44e222e5829c62103596685d2131e2b47ce922132068f7fc8f9c3d3e316ef570",
          "completed_at": "2026-07-25T11:50:09Z"
        },
        {
          "step_id": "release",
          "action": "process.fixed",
          "input_hash": "1e5b0c18d93eb4c2248f9a00adbd438e52f3ef02137477fb8376c69cfe86fc9b",
          "output_hash": "7e0e71eb0e827ab8e085fafa55e9b65d900cccf6819244a3d86e92d06e3427d7",
          "completed_at": "2026-07-25T11:50:09Z"
        },
        {
          "step_id": "gaps",
          "action": "process.fixed",
          "input_hash": "577241909238eeb55683f89d2d2216648dad2e3127397993e22493829a1307a4",
          "output_hash": "1f611dc8def7f906a5c346f5ed3d8c90fdb9894a686e40ea460a5d67999fe081",
          "completed_at": "2026-07-25T11:50:10Z"
        },
        {
          "step_id": "package",
          "action": "process.fixed",
          "input_hash": "06cd12e1f3db3d985f9150520afa60f288297ff0ca01a8e813e9bb6291aa8836",
          "output_hash": "5e7ced9722e50e185f7a470781c4a40c80c2fb7e15eb60d3a26bbe1fa56320b9",
          "completed_at": "2026-07-25T11:50:11Z"
        },
        {
          "step_id": "gate",
          "action": "state.gate",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "6a0ed3d65779be265214a0e8395ab03978b9f7b91da9ffb59b257b73f82d087d",
          "completed_at": "2026-07-25T11:50:12Z"
        }
      ],
      "steps": [
        {
          "id": "diff",
          "action": "git.diff_check",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-25T11:48:01Z",
          "output": {
            "passed": true
          },
          "output_hash": "11c11db30f4b3f6c758722ba3e27eea08145b7d212f6a157451e364b48475280",
          "completed_at": "2026-07-25T11:48:01Z"
        },
        {
          "id": "config",
          "action": "config.audit",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-25T11:48:01Z",
          "output": {
            "status": "ok",
            "summary": {
              "settings": 216,
              "mutable": 206,
              "read_only_or_managed": 10,
              "unclassified": 0,
              "unknown": 0,
              "invalid": 0,
              "missing_using_defaults": 0
            },
            "unclassified_keys": [],
            "unknown_keys": [],
            "invalid_values": [],
            "missing_using_defaults": []
          },
          "output_hash": "9cbf27cbac0de8a8eb0ed2dd07eae4f75908186aa645194b551c48f999ebb1b5",
          "completed_at": "2026-07-25T11:48:01Z"
        },
        {
          "id": "state",
          "action": "state.consistency",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-25T11:48:01Z",
          "output": {
            "status": "ok",
            "repo_root": "D:\\Projects\\prd-plugin",
            "summary": {
              "errors": 0,
              "warnings": 0,
              "infos": 1
            },
            "findings": [
              {
                "id": "CONS-INFO-001",
                "severity": "info",
                "path": "docs/evidence/EV-200.md",
                "summary": "File references 2 canonical IDs across 2 prefix(es); treated as a positive signal of extra work.",
                "referenced_prefixes": [
                  "CHG",
                  "TRK"
                ],
                "referenced_id_count": 2,
                "required_action": "No action required; this is an informational signal."
              }
            ]
          },
          "output_hash": "9963110856ca8182da0dfdbb22f6960618b55dbc121be0dce0066a7c7a389b10",
          "completed_at": "2026-07-25T11:48:02Z"
        },
        {
          "id": "workflow_audit",
          "action": "process.fixed",
          "status": "completed",
          "resolved_input_hash": "edf19b269a54d72753f1abc2b8ffcb810c2b7bc377cee7e1698c939f17e0be94",
          "started_at": "2026-07-25T11:48:02Z",
          "output": {
            "operation": "workflow_chml_audit",
            "command": [
              "python",
              "scripts/workflow_chml_audit.py",
              "--repo-root",
              ".",
              "--format",
              "json"
            ],
            "exit_code": 0,
            "stdout": "{\n  \"status\": \"ok\",\n  \"repo_root\": \"D:\\\\Projects\\\\prd-plugin\",\n  \"summary\": {\n    \"critical\": 0,\n    \"high\": 0,\n    \"medium\": 0,\n    \"low\": 0\n  },\n  \"findings\": []\n}\n",
            "stderr": ""
          },
          "output_hash": "231b43ed70e09c4e7cbcda1094b00e0274dd4a22ff8324da2eb907f705c1316a",
          "completed_at": "2026-07-25T11:48:02Z"
        },
        {
          "id": "substrate_audit",
          "action": "process.fixed",
          "status": "completed",
          "resolved_input_hash": "4998f71d2d3f6ac7dd50e10d37f60ae32d54898949950e484da9de113e18a979",
          "started_at": "2026-07-25T11:48:02Z",
          "output": {
            "operation": "substrate_capability_audit",
            "command": [
              "python",
              "scripts/prd_substrate_catalog.py",
              "--repo-root",
              ".",
              "audit"
            ],
            "exit_code": 0,
            "stdout": "{\n  \"status\": \"ok\",\n  \"schema_version\": \"1.0\",\n  \"capability_count\": 26,\n  \"runtime_tool_count\": 103,\n  \"intent_count\": 31,\n  \"summary\": {\n    \"critical\": 0,\n    \"high\": 0,\n    \"medium\": 0,\n    \"low\": 0\n  },\n  \"findings\": []\n}\n",
            "stderr": ""
          },
          "output_hash": "4176fd7e9d2d33bd61e5fd6bb8d392a63eaa5b2cb65b750eeb348b9dd55fe220",
          "completed_at": "2026-07-25T11:48:02Z"
        },
        {
          "id": "suite",
          "action": "process.fixed",
          "status": "completed",
          "resolved_input_hash": "954e575e48145853f5681eda189186c95a053267158fae669114320f2e53794a",
          "started_at": "2026-07-25T11:48:13Z",
          "output": {
            "operation": "local_workflow_check",
            "command": [
              "python",
              "scripts/local_workflow_check.py"
            ],
            "exit_code": 0,
            "stdout": "Structured file validation passed.\n$ python -m unittest discover -s tests -v\n{\n  \"status\": \"fail\",\n  \"repo_root\": \"C:\\\\Users\\\\marku\\\\AppData\\\\Local\\\\Temp\\\\tmpfhag0v0y\",\n  \"summary\": {\n    \"errors\": 1,\n    \"warnings\": 0\n  },\n  \"findings\": [\n    {\n      \"check\": \"duplicate_id\",\n      \"severity\": \"error\",\n      \"summary\": \"Duplicate id REQ-002 in .prd_plugin/state/requests.json.\",\n      \"required_action\": \"Renumber one record so REQ-002 is unique. Allocate IDs with the MCP tool prd_next_id (or the record tools like prd_open_goal) instead of hand-computing them.\"\n    }\n  ]\n}\nautonomy_level set to guided\nautonomy_level set to autonomous\nDESTRUCTIVE RESET REQUESTED: --force --yes will erase protected PRD Plugin project data.\nThe following existing state/configuration files would be replaced with skeleton defaults:\n  - .prd_plugin/state/tracking.json\nThis may erase IDs, tracking, requests, decisions, health findings, configuration, and session memory.\nFor a normal safe update, remove --yes and run: npx prd-install . --force\nPRD Plugin safe update: preserving existing state/config and refreshing plugin files only. Never add --yes to a routine update; it requests a destructive reset.\nPRD Plugin safe update: preserving existing state/config and refreshing plugin files only. Never add --yes to a routine update; it requests a destructive reset.\nPRD Plugin safe update: preserving existing state/config and refreshing plugin files only. Never add --yes to a routine update; it requests a destructive reset.\nPRD Plugin safe update: preserving existing state/config and refreshing plugin files only. Never add --yes to a routine update; it requests a destructive reset.\nPRD Plugin safe update: preserving existing state/config and refreshing plugin files only. Never add --yes to a routine update; it requests a destructive reset.\nPRD Plugin safe update: preserving existing state/config and refreshing plugin files only. Never add --yes to a routine update; it requests a destructive reset.\nPRD Plugin safe update: preserving existing state/config and refreshing plugin files only. Never add --yes to a routine update; it requests a destructive reset.\nPRD Plugin safe update: preserving existing state/config and refreshing plugin files only. Never add --yes to a routine update; it requests a destructive reset.\nPRD Plugin safe update: preserving existing state/config and refreshing plugin files only. Never add --yes to a routine update; it requests a destructive reset.\nPRD Plugin safe update: preserving existing state/config and refreshing plugin files only. Never add --yes to a routine update; it requests a destructive reset.\nPRD Plugin safe update: preserving existing state/config and refreshing plugin files only. Never add --yes to a routine update; it requests a destructive reset.\nPRD Plugin safe update: preserving existing state/config and refreshing plugin files only. Never add --yes to a routine update; it requests a destructive reset.\nPRD Plugin safe update: preserving existing state/config and refreshing plugin files only. Never add --yes to a routine update; it requests a destructive reset.\nPRD Plugin safe update: preserving existing state/config and refreshing plugin files only. Never add --yes to a routine update; it requests a destructive reset.\nPRD Plugin safe update: preserving existing state/config and refreshing plugin files only. Never add --yes to a routine update; it requests a destructive reset.\nPRD Plugin safe update: preserving existing state/config and refreshing plugin files only. Never add --yes to a routine update; it requests a destructive reset.\nPRD Plugin safe update: preserving existing state/config and refreshing plugin files only. Never add --yes to a routine update; it requests a destructive reset.\n{\n  \"published\": false,\n  \"package\": \"prd-plugin\",\n  \"version\": \"9.9.9\",\n  \"version_seen\": null,\n  \"latest_seen\": null,\n  \"attempts_used\": 1\n}\n{\n  \"published\": true,\n  \"package\": \"prd-plugin\",\n  \"version\": \"1.2.3\",\n  \"version_seen\": \"1.2.3\",\n  \"latest_seen\": \"1.2.3\",\n  \"attempts_used\": 1\n}\n{\"decision\": \"block\", \"reason\": \"Autonomous run-until-done: goal TRK-160 is still active. Continue with the next incomplete step toward it \\u2014 do not stop to ask 'shall I proceed?'. If you genuinely need the user (consent floor: push/merge/publish/secrets, or a real blocker), create the file .prd_plugin/local/autonomy-pause with a one-line reason and then stop; the guard will let you. Otherwise keep going.\"}\n$ python scripts/feature_skill_audit.py --repo-root . --format json\n{\n  \"status\": \"ok\",\n  \"repo_root\": \"D:\\\\Projects\\\\prd-plugin\",\n  \"contract\": \"templates/feature-skill-map.json\",\n  \"feature_count\": 29,\n  \"summary\": {\n    \"critical\": 0,\n    \"high\": 0,\n    \"medium\": 0,\n    \"low\": 0\n  },\n  \"findings\": []\n}\n$ python scripts/gap_audit.py --target-version 0.16.60\n# PRD Plugin Gap Audit\n\nTarget version: `0.16.60`\n\n## Findings\n\n- None\n$ python scripts/version_advice.py --installed-repo . --format json --output request-report/version-advice.json\n$ python scripts/release_check.py --output request-report/release-hygiene.md\n$ python scripts/prd_doctor.py --repo-root . --format json --output request-report/prd-doctor.json\n$ python scripts/state_consistency_check.py --repo-root . --format json --output request-report/state-consistency.json\n$ python scripts/prd_install_skills.py --repo-root . --dry-run\n{\n  \"status\": \"dry_run\",\n  \"target_agent\": \"codex\",\n  \"targets\": [\n    {\n      \"agent\": \"codex\",\n      \"target\": \".agents\\\\skills\",\n      \"would_install\": [\n        \"project-architecture\",\n        \"project-blocker-resolution\",\n        \"project-brainstorm\",\n        \"project-change-request\",\n        \"project-code-review\",\n        \"project-decision-ledger\",\n        \"project-decision-policy\",\n        \"project-deterministic-workflows\",\n        \"project-document-branch\",\n        \"project-evidence\",\n        \"project-evidence-ledger\",\n        \"project-git-workflow\",\n        \"project-health\",\n        \"project-implementation-plan\",\n        \"project-llm-wiki\",\n        \"project-local-integration\",\n        \"project-memory\",\n        \"project-planning-lifecycle\",\n        \"project-prd\",\n        \"project-prd-plugin-setup\",\n        \"project-request-intake\",\n        \"project-session-close\",\n        \"project-systematic-debugging\",\n        \"project-test-driven-implementation\",\n        \"project-traceability-review\",\n        \"project-traceability-sync\",\n        \"project-verification-before-completion\",\n        \"source-command-prd-autonomy\",\n        \"source-command-prd-close\",\n        \"source-command-prd-config\",\n        \"source-command-prd-drift\",\n        \"source-command-prd-graph\",\n        \"source-command-prd-hooks\",\n        \"source-command-prd-new\",\n        \"source-command-prd-off\",\n        \"source-command-prd-on\",\n        \"source-command-prd-reflections\",\n        \"source-command-prd-report\",\n        \"source-command-prd-status\",\n        \"source-command-prd-track\",\n        \"source-command-prd-version\",\n        \"source-command-prd-workflow\"\n      ],\n      \"would_remove\": [\n        \"project-fold-it-in\",\n        \"project-self-audit\"\n      ]\n    }\n  ],\n  \"installed_count\": 0,\n  \"target\": \".agents\\\\skills\",\n  \"installed\": [],\n  \"removed\": [],\n  \"would_install\": [\n    \"project-architecture\",\n    \"project-blocker-resolution\",\n    \"project-brainstorm\",\n    \"project-change-request\",\n    \"project-code-review\",\n    \"project-decision-ledger\",\n    \"project-decision-policy\",\n    \"project-deterministic-workflows\",\n    \"project-document-branch\",\n    \"project-evidence\",\n    \"project-evidence-ledger\",\n    \"project-git-workflow\",\n    \"project-health\",\n    \"project-implementation-plan\",\n    \"project-llm-wiki\",\n    \"project-local-integration\",\n    \"project-memory\",\n    \"project-planning-lifecycle\",\n    \"project-prd\",\n    \"project-prd-plugin-setup\",\n    \"project-request-intake\",\n    \"project-session-close\",\n    \"project-systematic-debugging\",\n    \"project-test-driven-implementation\",\n    \"project-traceability-review\",\n    \"project-traceability-sync\",\n    \"project-verification-before-completion\",\n    \"source-command-prd-autonomy\",\n    \"source-command-prd-close\",\n    \"source-command-prd-config\",\n    \"source-command-prd-drift\",\n    \"source-command-prd-graph\",\n    \"source-command-prd-hooks\",\n    \"source-command-prd-new\",\n    \"source-command-prd-off\",\n    \"source-command-prd-on\",\n    \"source-command-prd-reflections\",\n    \"source-command-prd-report\",\n    \"source-command-prd-status\",\n    \"source-command-prd-track\",\n    \"source-command-prd-version\",\n    \"source-command-prd-workflow\"\n  ],\n  \"would_remove\": [\n    \"project-fold-it-in\",\n    \"project-self-audit\"\n  ]\n}\n$ python scripts/request_report.py --config .prd_plugin/config.json --format markdown --output request-report/request-report.md\n$ python scripts/request_report.py --config .prd_plugin/config.json --format json --output request-report/request-report.json\n$ python scripts/message_check.py --config .prd_plugin/config.json --format json --output request-report/message-check.json\nLocal workflow check completed.\n",
            "stderr": "es (test_unified_config.MutationTests.test_audit_reports_unknown_and_invalid_values) ... ok\ntest_enable_disable_only_accept_mutable_booleans (test_unified_config.MutationTests.test_enable_disable_only_accept_mutable_booleans) ... ok\ntest_failed_atomic_replace_leaves_original_config_untouched (test_unified_config.MutationTests.test_failed_atomic_replace_leaves_original_config_untouched) ... ok\ntest_malformed_config_is_never_replaced_by_a_mutation (test_unified_config.MutationTests.test_malformed_config_is_never_replaced_by_a_mutation) ... ok\ntest_manual_set_marks_profile_custom_and_preserves_style (test_unified_config.MutationTests.test_manual_set_marks_profile_custom_and_preserves_style) ... ok\ntest_scalar_parent_is_not_clobbered_by_nested_set (test_unified_config.MutationTests.test_scalar_parent_is_not_clobbered_by_nested_set) ... ok\ntest_builtin_profile_dry_run_then_atomic_apply (test_unified_config.ProfileTests.test_builtin_profile_dry_run_then_atomic_apply) ... ok\ntest_invalid_custom_profile_never_partially_writes (test_unified_config.ProfileTests.test_invalid_custom_profile_never_partially_writes) ... ok\ntest_save_show_diff_and_delete_custom_profile (test_unified_config.ProfileTests.test_save_show_diff_and_delete_custom_profile) ... ok\ntest_does_not_flag_canonical_prd_state_paths (test_unsubmitted_plugin_request.UnsubmittedPluginRequestTests.test_does_not_flag_canonical_prd_state_paths) ... ok\ntest_does_not_flag_ordinary_project_requests (test_unsubmitted_plugin_request.UnsubmittedPluginRequestTests.test_does_not_flag_ordinary_project_requests) ... ok\ntest_does_not_flag_rejected_requests (test_unsubmitted_plugin_request.UnsubmittedPluginRequestTests.test_does_not_flag_rejected_requests) ... ok\ntest_does_not_flag_when_already_marked_upstream (test_unsubmitted_plugin_request.UnsubmittedPluginRequestTests.test_does_not_flag_when_already_marked_upstream) ... ok\ntest_flags_a_local_request_about_a_plugin_script (test_unsubmitted_plugin_request.UnsubmittedPluginRequestTests.test_flags_a_local_request_about_a_plugin_script) ... ok\ntest_flags_a_request_that_names_itself_upstream (test_unsubmitted_plugin_request.UnsubmittedPluginRequestTests.test_flags_a_request_that_names_itself_upstream) ... ok\ntest_never_fires_in_the_hub_repo_itself (test_unsubmitted_plugin_request.UnsubmittedPluginRequestTests.test_never_fires_in_the_hub_repo_itself) ... ok\ntest_wired_into_run_checks (test_unsubmitted_plugin_request.UnsubmittedPluginRequestTests.test_wired_into_run_checks) ... ok\ntest_output_writes_lf_and_a_trailing_newline (test_utcp_first_authority.GeneratedArtifactsAreByteStableTests.test_output_writes_lf_and_a_trailing_newline) ... ok\ntest_the_committed_manual_matches_a_fresh_generation (test_utcp_first_authority.GeneratedArtifactsAreByteStableTests.test_the_committed_manual_matches_a_fresh_generation) ... ok\ntest_every_spec_tool_maps_to_a_catalog_capability (test_utcp_first_authority.ParityDirectionTests.test_every_spec_tool_maps_to_a_catalog_capability) ... ok\ntest_server_metadata_matches_the_spec (test_utcp_first_authority.ParityDirectionTests.test_server_metadata_matches_the_spec) ... ok\ntest_python_entry_points_share_the_same_lock (test_utcp_first_authority.SafetyUnchangedTests.test_python_entry_points_share_the_same_lock)\nThe migration target already exists and is proven: prd_reflections ... ok\ntest_the_state_lock_is_still_held_for_mutations (test_utcp_first_authority.SafetyUnchangedTests.test_the_state_lock_is_still_held_for_mutations) ... ok\ntest_no_shipped_tool_metadata_carries_mojibake (test_utcp_first_authority.ShippedTextIsCleanTests.test_no_shipped_tool_metadata_carries_mojibake) ... ok\ntest_shipped_tool_metadata_is_valid_utf8 (test_utcp_first_authority.ShippedTextIsCleanTests.test_shipped_tool_metadata_is_valid_utf8)\nA file written through a cp1252 layer either fails to decode or ... ok\ntest_each_tool_declares_name_description_and_schema (test_utcp_first_authority.SpecIsTheSourceTests.test_each_tool_declares_name_description_and_schema) ... ok\ntest_the_manual_is_generated_from_the_spec_not_the_server (test_utcp_first_authority.SpecIsTheSourceTests.test_the_manual_is_generated_from_the_spec_not_the_server) ... ok\ntest_the_server_no_longer_authors_descriptions (test_utcp_first_authority.SpecIsTheSourceTests.test_the_server_no_longer_authors_descriptions)\nserver.cjs must READ definitions, not declare them. While a tool ... ok\ntest_the_spec_exists_and_declares_every_tool (test_utcp_first_authority.SpecIsTheSourceTests.test_the_spec_exists_and_declares_every_tool) ... ok\ntest_official_bridge_round_trips_cli_and_mcp_templates (test_utcp_first_catalog.BridgeParityTests.test_official_bridge_round_trips_cli_and_mcp_templates) ... ok\ntest_bridged_entries_reuse_server_metadata_verbatim (test_utcp_first_catalog.GeneratedProjectionTests.test_bridged_entries_reuse_server_metadata_verbatim)\nEach bridged manual entry's description and inputs equal the server's ... ok\ntest_checked_in_metadata_matches_live_server (test_utcp_first_catalog.GeneratedProjectionTests.test_checked_in_metadata_matches_live_server)\nThe pinned metadata projection cannot drift behind the live server. ... ok\ntest_mutations_keep_the_validated_handler_path (test_utcp_first_catalog.GuardedMutationTests.test_mutations_keep_the_validated_handler_path)\nEvery manual tool in a non-read capability calls the plugin state ... ok\ntest_read_only_cli_tools_stay_cli (test_utcp_first_catalog.GuardedMutationTests.test_read_only_cli_tools_stay_cli)\nThe 12 cli-native observe/recall tools keep their cli templates. ... ok\ntest_checked_in_metadata_projection_exists (test_utcp_first_catalog.ManualCompletenessTests.test_checked_in_metadata_projection_exists)\nThe server's tool metadata is a checked-in generated artifact so the ... ok\ntest_manual_covers_every_capability_on_both_transports (test_utcp_first_catalog.ManualCompletenessTests.test_manual_covers_every_capability_on_both_transports)\nEvery UTCP and MCP registration in the tool-surface catalog appears ... ok\ntest_appends_version_change_request (test_version_advice.VersionAdviceTests.test_appends_version_change_request) ... ok\ntest_builds_safe_update_advice_for_low_risk_releases (test_version_advice.VersionAdviceTests.test_builds_safe_update_advice_for_low_risk_releases) ... ok\ntest_cli_uses_hub_releases_when_downstream_repo_has_no_releases_file (test_version_advice.VersionAdviceTests.test_cli_uses_hub_releases_when_downstream_repo_has_no_releases_file) ... ok\ntest_detects_installed_version_from_bom_json (test_version_advice.VersionAdviceTests.test_detects_installed_version_from_bom_json) ... ok\ntest_detects_installed_version_from_opencode_plugin_manifest (test_version_advice.VersionAdviceTests.test_detects_installed_version_from_opencode_plugin_manifest) ... ok\ntest_detects_installed_version_from_prd_plugin_config (test_version_advice.VersionAdviceTests.test_detects_installed_version_from_prd_plugin_config) ... ok\ntest_detects_latest_version_from_plugin_manifest (test_version_advice.VersionAdviceTests.test_detects_latest_version_from_plugin_manifest) ... ok\ntest_installed_version_priority_prefers_config_then_codex_then_opencode (test_version_advice.VersionAdviceTests.test_installed_version_priority_prefers_config_then_codex_then_opencode) ... ok\ntest_orders_prerelease_before_final_release (test_version_advice.VersionAdviceTests.test_orders_prerelease_before_final_release) ... ok\ntest_recommends_review_first_for_medium_or_high_risk_release (test_version_advice.VersionAdviceTests.test_recommends_review_first_for_medium_or_high_risk_release) ... ok\ntest_disabled_returns_disabled_and_no_fetch (test_version_check.CheckTests.test_disabled_returns_disabled_and_no_fetch) ... ok\ntest_force_refetches_within_ttl (test_version_check.CheckTests.test_force_refetches_within_ttl) ... ok\ntest_network_failure_is_fail_open (test_version_check.CheckTests.test_network_failure_is_fail_open) ... ok\ntest_no_update_when_current (test_version_check.CheckTests.test_no_update_when_current) ... ok\ntest_status_is_cache_only_no_fetch (test_version_check.CheckTests.test_status_is_cache_only_no_fetch) ... ok\ntest_ttl_cache_avoids_refetch (test_version_check.CheckTests.test_ttl_cache_avoids_refetch) ... ok\ntest_ttl_expiry_refetches (test_version_check.CheckTests.test_ttl_expiry_refetches) ... ok\ntest_update_available_when_npm_is_ahead (test_version_check.CheckTests.test_update_available_when_npm_is_ahead) ... ok\ntest_status_cli_exits_zero (test_version_check.CliTests.test_status_cli_exits_zero) ... ok\ntest_default_ttl_is_responsive_not_a_day (test_version_check.FreshnessTests.test_default_ttl_is_responsive_not_a_day) ... ok\ntest_fetch_latest_accepts_a_timeout (test_version_check.FreshnessTests.test_fetch_latest_accepts_a_timeout) ... ok\ntest_nudge_refreshes_in_session_not_cache_only (test_version_check.FreshnessTests.test_nudge_refreshes_in_session_not_cache_only) ... ok\ntest_registry_default_ttl_matches (test_version_check.FreshnessTests.test_registry_default_ttl_matches) ... ok\ntest_semver_ordering (test_version_check.ParseTests.test_semver_ordering) ... ok\ntest_set_enabled_writes_config (test_version_check.ToggleTests.test_set_enabled_writes_config) ... ok\ntest_config_has_version_check_default_on (test_version_check.WiringTests.test_config_has_version_check_default_on) ... ok\ntest_nudge_surfaces_update_available (test_version_check.WiringTests.test_nudge_surfaces_update_available) ... ok\ntest_prd_version_command_exists (test_version_check.WiringTests.test_prd_version_command_exists) ... ok\ntest_script_registered_downstream (test_version_check.WiringTests.test_script_registered_downstream) ... ok\ntest_plan_cli_emits_json (test_wiki_backfill.CliTests.test_plan_cli_emits_json) ... ok\ntest_status_cli (test_wiki_backfill.CliTests.test_status_cli) ... ok\ntest_marker_written_for_established_repo_gaining_wiki (test_wiki_backfill.InstallerMarkerTests.test_marker_written_for_established_repo_gaining_wiki) ... ok\ntest_no_marker_for_empty_scaffold (test_wiki_backfill.InstallerMarkerTests.test_no_marker_for_empty_scaffold) ... ok\ntest_no_marker_when_wiki_already_exists (test_wiki_backfill.InstallerMarkerTests.test_no_marker_when_wiki_already_exists) ... ok\ntest_no_marker_when_wiki_disabled (test_wiki_backfill.InstallerMarkerTests.test_no_marker_when_wiki_disabled) ... ok\ntest_pending_false_when_absent (test_wiki_backfill.StatusTests.test_pending_false_when_absent) ... ok\ntest_pending_false_when_wiki_already_exists (test_wiki_backfill.StatusTests.test_pending_false_when_wiki_already_exists) ... ok\ntest_pending_true_when_marker_present (test_wiki_backfill.StatusTests.test_pending_true_when_marker_present) ... ok\ntest_plan_excludes_generated_report_artifacts (test_wiki_backfill.SurveyPlanTests.test_plan_excludes_generated_report_artifacts)\nrequest-report/ (incl. its calibration report trees) and docs/evidence/ ... ok\ntest_plan_excludes_plugin_and_vendor_noise (test_wiki_backfill.SurveyPlanTests.test_plan_excludes_plugin_and_vendor_noise) ... ok\ntest_plan_inventories_code_docs_and_state (test_wiki_backfill.SurveyPlanTests.test_plan_inventories_code_docs_and_state) ... ok\ntest_plan_is_read_only (test_wiki_backfill.SurveyPlanTests.test_plan_is_read_only) ... ok\ntest_wiki_drift_in_on_stop_and_default_sets (test_wiki_backfill.WikiDriftMonitorWiringTests.test_wiki_drift_in_on_stop_and_default_sets) ... ok\ntest_current_article_no_drift (test_wiki_backfill.WikiDriftTests.test_current_article_no_drift) ... ok\ntest_drift_cli (test_wiki_backfill.WikiDriftTests.test_drift_cli) ... ok\ntest_far_behind_article_flagged (test_wiki_backfill.WikiDriftTests.test_far_behind_article_flagged) ... ok\ntest_no_wiki_is_ok (test_wiki_backfill.WikiDriftTests.test_no_wiki_is_ok) ... ok\ntest_unlinked_markdown_reference_is_part_of_wiki_drift (test_wiki_backfill.WikiDriftTests.test_unlinked_markdown_reference_is_part_of_wiki_drift) ... ok\ntest_unstamped_article_flagged (test_wiki_backfill.WikiDriftTests.test_unstamped_article_flagged) ... ok\ntest_wiki_drift_uses_configured_wiki_directory (test_wiki_backfill.WikiDriftTests.test_wiki_drift_uses_configured_wiki_directory) ... ok\ntest_ambiguous_reference_is_reported_but_never_guessed (test_wiki_backfill.WikiInlineMarkdownLinkTests.test_ambiguous_reference_is_reported_but_never_guessed) ... ok\ntest_cli_check_fails_and_fix_then_passes (test_wiki_backfill.WikiInlineMarkdownLinkTests.test_cli_check_fails_and_fix_then_passes) ... ok\ntest_existing_inline_links_and_fenced_examples_are_not_findings (test_wiki_backfill.WikiInlineMarkdownLinkTests.test_existing_inline_links_and_fenced_examples_are_not_findings) ... ok\ntest_fix_rewrites_only_unambiguous_references_to_relative_inline_links (test_wiki_backfill.WikiInlineMarkdownLinkTests.test_fix_rewrites_only_unambiguous_references_to_relative_inline_links) ... ok\ntest_reports_resolvable_bare_and_code_wrapped_markdown_references (test_wiki_backfill.WikiInlineMarkdownLinkTests.test_reports_resolvable_bare_and_code_wrapped_markdown_references) ... ok\ntest_nudge_surfaces_pending_backfill (test_wiki_backfill.WiringTests.test_nudge_surfaces_pending_backfill) ... ok\ntest_script_registered_downstream (test_wiki_backfill.WiringTests.test_script_registered_downstream) ... ok\ntest_skill_has_backfill_mode (test_wiki_backfill.WiringTests.test_skill_has_backfill_mode) ... ok\ntest_copy_and_download_controls_are_wired (test_wiki_html_export.WikiHtmlExportTests.test_copy_and_download_controls_are_wired) ... ok\ntest_default_output_lands_in_the_local_runtime_dir (test_wiki_html_export.WikiHtmlExportTests.test_default_output_lands_in_the_local_runtime_dir) ... ok\ntest_every_page_is_embedded_with_exact_markdown (test_wiki_html_export.WikiHtmlExportTests.test_every_page_is_embedded_with_exact_markdown) ... ok\ntest_export_all_generates_viewers_and_super_index (test_wiki_html_export.WikiHtmlExportTests.test_export_all_generates_viewers_and_super_index) ... ok\ntest_export_is_one_self_contained_offline_file (test_wiki_html_export.WikiHtmlExportTests.test_export_is_one_self_contained_offline_file) ... ok\ntest_guest_repo_viewer_is_hosted_by_the_host_repo (test_wiki_html_export.WikiHtmlExportTests.test_guest_repo_viewer_is_hosted_by_the_host_repo)\nA repo without .prd_plugin gets NO new files in its own tree; its ... ok\ntest_hub_repo_exports_all_pages (test_wiki_html_export.WikiHtmlExportTests.test_hub_repo_exports_all_pages) ... ok\ntest_parse_wiki_log_extracts_dated_entries_with_bodies (test_wiki_html_export.WikiHtmlExportTests.test_parse_wiki_log_extracts_dated_entries_with_bodies)\nREQ-112: every workspace log follows '## [date] mode | text'. ... ok\ntest_parse_wiki_log_tolerates_missing_log (test_wiki_html_export.WikiHtmlExportTests.test_parse_wiki_log_tolerates_missing_log) ... ok\ntest_script_content_cannot_break_the_payload (test_wiki_html_export.WikiHtmlExportTests.test_script_content_cannot_break_the_payload) ... ok\ntest_super_index_has_a_combined_changelog (test_wiki_html_export.WikiHtmlExportTests.test_super_index_has_a_combined_changelog) ... ok\ntest_super_index_reports_page_counts (test_wiki_html_export.WikiHtmlExportTests.test_super_index_reports_page_counts) ... ok\ntest_workspace_discovery_uses_the_wiki_convention_marker (test_wiki_html_export.WikiHtmlExportTests.test_workspace_discovery_uses_the_wiki_convention_marker)\nREQ-110 + REQ-111: any immediate child whose wiki follows the ... ok\ntest_a_repo_without_a_wiki_is_not_in_drift (test_wiki_ingest_drift.DetectionTests.test_a_repo_without_a_wiki_is_not_in_drift)\nNo wiki is a legitimate state, not a failure to ingest. ... ok\ntest_fully_ingested_repo_is_clean (test_wiki_ingest_drift.DetectionTests.test_fully_ingested_repo_is_clean) ... ok\ntest_malformed_state_degrades_rather_than_raising (test_wiki_ingest_drift.DetectionTests.test_malformed_state_degrades_rather_than_raising) ... ok\ntest_non_implemented_requests_are_never_expected_in_the_log (test_wiki_ingest_drift.DetectionTests.test_non_implemented_requests_are_never_expected_in_the_log) ... ok\ntest_only_work_since_the_last_ingest_is_actionable (test_wiki_ingest_drift.DetectionTests.test_only_work_since_the_last_ingest_is_actionable)\nRaw counting flags pre-wiki history as drift � ~70 items in the hub, ... ok\ntest_reports_implemented_requests_absent_from_the_log (test_wiki_ingest_drift.DetectionTests.test_reports_implemented_requests_absent_from_the_log) ... ok\ntest_it_runs_against_this_repo_and_returns_a_usable_report (test_wiki_ingest_drift.RealRepoTests.test_it_runs_against_this_repo_and_returns_a_usable_report)\nGrounded against real state, but NOT pinned to a specific gap: a test ... ok\ntest_prd_status_omits_it_when_clean (test_wiki_ingest_drift.SurfaceTests.test_prd_status_omits_it_when_clean) ... ok\ntest_prd_status_reports_the_drift (test_wiki_ingest_drift.SurfaceTests.test_prd_status_reports_the_drift) ... ok\ntest_this_repos_wiki_reads_byte_exact (test_wiki_page_contract.HubRepoSmokeTests.test_this_repos_wiki_reads_byte_exact) ... ok\ntest_list_enumerates_canonical_pages_with_titles (test_wiki_page_contract.WikiPageListTests.test_list_enumerates_canonical_pages_with_titles) ... ok\ntest_boundaries_are_hard (test_wiki_page_contract.WikiPageReadTests.test_boundaries_are_hard) ... ok\ntest_drift_remains_the_default_action (test_wiki_page_contract.WikiPageReadTests.test_drift_remains_the_default_action) ... ok\ntest_read_page_without_stamps_reports_null_provenance (test_wiki_page_contract.WikiPageReadTests.test_read_page_without_stamps_reports_null_provenance) ... ok\ntest_read_requires_a_path (test_wiki_page_contract.WikiPageReadTests.test_read_requires_a_path) ... ok\ntest_read_returns_exact_markdown_with_provenance (test_wiki_page_contract.WikiPageReadTests.test_read_returns_exact_markdown_with_provenance) ... ok\ntest_no_cp1252_unencodable_chars_in_agent_facing_tools (test_windows_console_safe.SourceScanTests.test_no_cp1252_unencodable_chars_in_agent_facing_tools) ... ok\ntest_backfill_pending_status_renders_cp1252_safe (test_windows_console_safe.StatusRenderTests.test_backfill_pending_status_renders_cp1252_safe) ... ok\ntest_json_output_escapes_non_console_characters (test_windows_console_safe.WorkflowCliRenderTests.test_json_output_escapes_non_console_characters) ... ok\ntest_repository_workflow_surfaces_are_chml_zero (test_workflow_chml_audit.WorkflowChmlAuditTests.test_repository_workflow_surfaces_are_chml_zero) ... ok\ntest_semantic_skill_finding_is_part_of_workflow_chml (test_workflow_chml_audit.WorkflowChmlAuditTests.test_semantic_skill_finding_is_part_of_workflow_chml) ... ok\ntest_git_workflow_pushes_clean_verified_commits_in_autonomous (test_workflow_consistency.AutonomyConflictResolutionTests.test_git_workflow_pushes_clean_verified_commits_in_autonomous) ... ok\ntest_request_intake_defers_autonomy_and_owns_graduation (test_workflow_consistency.AutonomyConflictResolutionTests.test_request_intake_defers_autonomy_and_owns_graduation) ... ok\ntest_evidence_pair_states_create_vs_review_boundary (test_workflow_consistency.BoundaryClarityTests.test_evidence_pair_states_create_vs_review_boundary) ... ok\ntest_session_close_states_memory_boundary (test_workflow_consistency.BoundaryClarityTests.test_session_close_states_memory_boundary) ... ok\ntest_document_branch_has_promotion_owner (test_workflow_consistency.DeadEndOwnerTests.test_document_branch_has_promotion_owner) ... ok\ntest_health_findings_have_triage_dispositions (test_workflow_consistency.DeadEndOwnerTests.test_health_findings_have_triage_dispositions) ... ok\ntest_memory_owns_schema_version_changes (test_workflow_consistency.DeadEndOwnerTests.test_memory_owns_schema_version_changes) ... ok\ntest_planning_lifecycle_has_stage_readiness_checkpoints (test_workflow_consistency.DeadEndOwnerTests.test_planning_lifecycle_has_stage_readiness_checkpoints) ... ok\ntest_session_close_runs_traceability_sync (test_workflow_consistency.DeadEndOwnerTests.test_session_close_runs_traceability_sync) ... ok\n\n----------------------------------------------------------------------\nRan 1289 tests in 112.225s\n\nOK\n"
          },
          "output_hash": "44e222e5829c62103596685d2131e2b47ce922132068f7fc8f9c3d3e316ef570",
          "completed_at": "2026-07-25T11:50:09Z"
        },
        {
          "id": "release",
          "action": "process.fixed",
          "status": "completed",
          "resolved_input_hash": "1e5b0c18d93eb4c2248f9a00adbd438e52f3ef02137477fb8376c69cfe86fc9b",
          "started_at": "2026-07-25T11:50:09Z",
          "output": {
            "operation": "release_check",
            "command": [
              "python",
              "scripts/release_check.py"
            ],
            "exit_code": 0,
            "stdout": "# Release Hygiene Report\n\nBase version: `0.16.59`\nHead version: `0.16.60`\nChanged files checked: 54\n\n## Findings\n\n- None\n",
            "stderr": ""
          },
          "output_hash": "7e0e71eb0e827ab8e085fafa55e9b65d900cccf6819244a3d86e92d06e3427d7",
          "completed_at": "2026-07-25T11:50:09Z"
        },
        {
          "id": "gaps",
          "action": "process.fixed",
          "status": "completed",
          "resolved_input_hash": "577241909238eeb55683f89d2d2216648dad2e3127397993e22493829a1307a4",
          "started_at": "2026-07-25T11:50:09Z",
          "output": {
            "operation": "gap_audit",
            "command": [
              "python",
              "scripts/gap_audit.py",
              "--target-version",
              "0.16.60",
              "--config",
              ".prd_plugin/config.json",
              "--releases",
              ".prd_plugin/state/releases.json"
            ],
            "exit_code": 0,
            "stdout": "# PRD Plugin Gap Audit\n\nTarget version: `0.16.60`\n\n## Findings\n\n- None\n",
            "stderr": ""
          },
          "output_hash": "1f611dc8def7f906a5c346f5ed3d8c90fdb9894a686e40ea460a5d67999fe081",
          "completed_at": "2026-07-25T11:50:10Z"
        },
        {
          "id": "package",
          "action": "process.fixed",
          "status": "completed",
          "resolved_input_hash": "06cd12e1f3db3d985f9150520afa60f288297ff0ca01a8e813e9bb6291aa8836",
          "started_at": "2026-07-25T11:50:10Z",
          "output": {
            "operation": "package_check",
            "command": [
              "npm",
              "pack",
              "--dry-run"
            ],
            "exit_code": 0,
            "stdout": "prd-plugin-0.16.60.tgz\n",
            "stderr": "e.md\nnpm notice 17.0kB templates/repo-skeleton/.agents/skills/project-llm-wiki/SKILL.md\nnpm notice 7.4kB templates/repo-skeleton/.agents/skills/project-local-integration/SKILL.md\nnpm notice 8.1kB templates/repo-skeleton/.agents/skills/project-memory/SKILL.md\nnpm notice 6.2kB templates/repo-skeleton/.agents/skills/project-planning-lifecycle/SKILL.md\nnpm notice 6.0kB templates/repo-skeleton/.agents/skills/project-prd-plugin-setup/SKILL.md\nnpm notice 3.5kB templates/repo-skeleton/.agents/skills/project-prd/SKILL.md\nnpm notice 27.5kB templates/repo-skeleton/.agents/skills/project-request-intake/SKILL.md\nnpm notice 4.8kB templates/repo-skeleton/.agents/skills/project-session-close/SKILL.md\nnpm notice 10.3kB templates/repo-skeleton/.agents/skills/project-systematic-debugging/SKILL.md\nnpm notice 4.8kB templates/repo-skeleton/.agents/skills/project-test-driven-implementation/SKILL.md\nnpm notice 3.7kB templates/repo-skeleton/.agents/skills/project-traceability-review/SKILL.md\nnpm notice 2.5kB templates/repo-skeleton/.agents/skills/project-traceability-sync/SKILL.md\nnpm notice 6.6kB templates/repo-skeleton/.agents/skills/project-verification-before-completion/SKILL.md\nnpm notice 1.5kB templates/repo-skeleton/.agents/skills/source-command-prd-autonomy/SKILL.md\nnpm notice 1.2kB templates/repo-skeleton/.agents/skills/source-command-prd-close/SKILL.md\nnpm notice 3.3kB templates/repo-skeleton/.agents/skills/source-command-prd-config/SKILL.md\nnpm notice 2.4kB templates/repo-skeleton/.agents/skills/source-command-prd-drift/SKILL.md\nnpm notice 2.1kB templates/repo-skeleton/.agents/skills/source-command-prd-graph/SKILL.md\nnpm notice 2.2kB templates/repo-skeleton/.agents/skills/source-command-prd-hooks/SKILL.md\nnpm notice 1.3kB templates/repo-skeleton/.agents/skills/source-command-prd-new/SKILL.md\nnpm notice 2.0kB templates/repo-skeleton/.agents/skills/source-command-prd-off/SKILL.md\nnpm notice 1.5kB templates/repo-skeleton/.agents/skills/source-command-prd-on/SKILL.md\nnpm notice 2.3kB templates/repo-skeleton/.agents/skills/source-command-prd-reflections/SKILL.md\nnpm notice 2.5kB templates/repo-skeleton/.agents/skills/source-command-prd-report/SKILL.md\nnpm notice 1.2kB templates/repo-skeleton/.agents/skills/source-command-prd-status/SKILL.md\nnpm notice 1.7kB templates/repo-skeleton/.agents/skills/source-command-prd-track/SKILL.md\nnpm notice 1.8kB templates/repo-skeleton/.agents/skills/source-command-prd-version/SKILL.md\nnpm notice 1.7kB templates/repo-skeleton/.agents/skills/source-command-prd-workflow/SKILL.md\nnpm notice 764B templates/repo-skeleton/.claude-plugin/plugin.json\nnpm notice 772B templates/repo-skeleton/.claude/commands/prd-autonomy.md\nnpm notice 493B templates/repo-skeleton/.claude/commands/prd-close.md\nnpm notice 2.5kB templates/repo-skeleton/.claude/commands/prd-config.md\nnpm notice 1.6kB templates/repo-skeleton/.claude/commands/prd-drift.md\nnpm notice 1.4kB templates/repo-skeleton/.claude/commands/prd-graph.md\nnpm notice 1.6kB templates/repo-skeleton/.claude/commands/prd-hooks.md\nnpm notice 639B templates/repo-skeleton/.claude/commands/prd-new.md\nnpm notice 1.4kB templates/repo-skeleton/.claude/commands/prd-off.md\nnpm notice 862B templates/repo-skeleton/.claude/commands/prd-on.md\nnpm notice 1.6kB templates/repo-skeleton/.claude/commands/prd-reflections.md\nnpm notice 1.8kB templates/repo-skeleton/.claude/commands/prd-report.md\nnpm notice 549B templates/repo-skeleton/.claude/commands/prd-status.md\nnpm notice 974B templates/repo-skeleton/.claude/commands/prd-track.md\nnpm notice 1.0kB templates/repo-skeleton/.claude/commands/prd-version.md\nnpm notice 938B templates/repo-skeleton/.claude/commands/prd-workflow.md\nnpm notice 1.6kB templates/repo-skeleton/.claude/hooks/prd_drift_check.py\nnpm notice 2.0kB templates/repo-skeleton/.claude/hooks/prd_log_skill.py\nnpm notice 4.1kB templates/repo-skeleton/.claude/hooks/prd_nudge.py\nnpm notice 3.7kB templates/repo-skeleton/.claude/hooks/prd_precommit_gate.py\nnpm notice 6.1kB templates/repo-skeleton/.claude/hooks/prd_reflection.py\nnpm notice 3.5kB templates/repo-skeleton/.claude/hooks/prd_session_report.py\nnpm notice 15.8kB templates/repo-skeleton/.claude/hooks/prd_stop_guard.py\nnpm notice 1.2kB templates/repo-skeleton/.claude/settings.json\nnpm notice 3.0kB templates/repo-skeleton/.claude/skills/project-architecture/SKILL.md\nnpm notice 7.4kB templates/repo-skeleton/.claude/skills/project-blocker-resolution/SKILL.md\nnpm notice 2.8kB templates/repo-skeleton/.claude/skills/project-brainstorm/SKILL.md\nnpm notice 5.5kB templates/repo-skeleton/.claude/skills/project-change-request/SKILL.md\nnpm notice 6.3kB templates/repo-skeleton/.claude/skills/project-code-review/SKILL.md\nnpm notice 2.7kB templates/repo-skeleton/.claude/skills/project-decision-ledger/SKILL.md\nnpm notice 23.6kB templates/repo-skeleton/.claude/skills/project-decision-policy/SKILL.md\nnpm notice 4.4kB templates/repo-skeleton/.claude/skills/project-deterministic-workflows/SKILL.md\nnpm notice 5.2kB templates/repo-skeleton/.claude/skills/project-document-branch/SKILL.md\nnpm notice 2.8kB templates/repo-skeleton/.claude/skills/project-evidence-ledger/SKILL.md\nnpm notice 3.3kB templates/repo-skeleton/.claude/skills/project-evidence/SKILL.md\nnpm notice 11.9kB templates/repo-skeleton/.claude/skills/project-git-workflow/SKILL.md\nnpm notice 7.4kB templates/repo-skeleton/.claude/skills/project-health/SKILL.md\nnpm notice 6.0kB templates/repo-skeleton/.claude/skills/project-implementation-plan/SKILL.md\nnpm notice 1.1kB templates/repo-skeleton/.claude/skills/project-llm-wiki/LICENSE\nnpm notice 842B templates/repo-skeleton/.claude/skills/project-llm-wiki/references/archive-template.md\nnpm notice 843B templates/repo-skeleton/.claude/skills/project-llm-wiki/references/article-template.md\nnpm notice 559B templates/repo-skeleton/.claude/skills/project-llm-wiki/references/index-template.md\nnpm notice 317B templates/repo-skeleton/.claude/skills/project-llm-wiki/references/raw-template.md\nnpm notice 17.0kB templates/repo-skeleton/.claude/skills/project-llm-wiki/SKILL.md\nnpm notice 7.4kB templates/repo-skeleton/.claude/skills/project-local-integration/SKILL.md\nnpm notice 8.1kB templates/repo-skeleton/.claude/skills/project-memory/SKILL.md\nnpm notice 6.2kB templates/repo-skeleton/.claude/skills/project-planning-lifecycle/SKILL.md\nnpm notice 6.0kB templates/repo-skeleton/.claude/skills/project-prd-plugin-setup/SKILL.md\nnpm notice 3.5kB templates/repo-skeleton/.claude/skills/project-prd/SKILL.md\nnpm notice 27.5kB templates/repo-skeleton/.claude/skills/project-request-intake/SKILL.md\nnpm notice 4.8kB templates/repo-skeleton/.claude/skills/project-session-close/SKILL.md\nnpm notice 10.3kB templates/repo-skeleton/.claude/skills/project-systematic-debugging/SKILL.md\nnpm notice 4.8kB templates/repo-skeleton/.claude/skills/project-test-driven-implementation/SKILL.md\nnpm notice 3.7kB templates/repo-skeleton/.claude/skills/project-traceability-review/SKILL.md\nnpm notice 2.5kB templates/repo-skeleton/.claude/skills/project-traceability-sync/SKILL.md\nnpm notice 6.6kB templates/repo-skeleton/.claude/skills/project-verification-before-completion/SKILL.md\nnpm notice 1.5kB templates/repo-skeleton/.claude/skills/source-command-prd-autonomy/SKILL.md\nnpm notice 1.2kB templates/repo-skeleton/.claude/skills/source-command-prd-close/SKILL.md\nnpm notice 3.3kB templates/repo-skeleton/.claude/skills/source-command-prd-config/SKILL.md\nnpm notice 2.4kB templates/repo-skeleton/.claude/skills/source-command-prd-drift/SKILL.md\nnpm notice 2.1kB templates/repo-skeleton/.claude/skills/source-command-prd-graph/SKILL.md\nnpm notice 2.2kB templates/repo-skeleton/.claude/skills/source-command-prd-hooks/SKILL.md\nnpm notice 1.3kB templates/repo-skeleton/.claude/skills/source-command-prd-new/SKILL.md\nnpm notice 2.0kB templates/repo-skeleton/.claude/skills/source-command-prd-off/SKILL.md\nnpm notice 1.5kB templates/repo-skeleton/.claude/skills/source-command-prd-on/SKILL.md\nnpm notice 2.3kB templates/repo-skeleton/.claude/skills/source-command-prd-reflections/SKILL.md\nnpm notice 2.5kB templates/repo-skeleton/.claude/skills/source-command-prd-report/SKILL.md\nnpm notice 1.2kB templates/repo-skeleton/.claude/skills/source-command-prd-status/SKILL.md\nnpm notice 1.7kB templates/repo-skeleton/.claude/skills/source-command-prd-track/SKILL.md\nnpm notice 1.8kB templates/repo-skeleton/.claude/skills/source-command-prd-version/SKILL.md\nnpm notice 1.7kB templates/repo-skeleton/.claude/skills/source-command-prd-workflow/SKILL.md\nnpm notice 3.2kB templates/repo-skeleton/.codex-plugin/plugin.json\nnpm notice 3.3kB templates/repo-skeleton/.codex/hooks.json\nnpm notice 743B templates/repo-skeleton/.githooks/pre-commit\nnpm notice 734B templates/repo-skeleton/.github/workflows/prd-gate.yml\nnpm notice 3.2kB templates/repo-skeleton/.opencode/plugin.json\nnpm notice 5.5kB templates/repo-skeleton/.opencode/plugins/prd-hooks.js\nnpm notice 3.0kB templates/repo-skeleton/.opencode/skill/project-architecture/SKILL.md\nnpm notice 7.4kB templates/repo-skeleton/.opencode/skill/project-blocker-resolution/SKILL.md\nnpm notice 2.8kB templates/repo-skeleton/.opencode/skill/project-brainstorm/SKILL.md\nnpm notice 5.5kB templates/repo-skeleton/.opencode/skill/project-change-request/SKILL.md\nnpm notice 6.3kB templates/repo-skeleton/.opencode/skill/project-code-review/SKILL.md\nnpm notice 2.7kB templates/repo-skeleton/.opencode/skill/project-decision-ledger/SKILL.md\nnpm notice 23.6kB templates/repo-skeleton/.opencode/skill/project-decision-policy/SKILL.md\nnpm notice 4.4kB templates/repo-skeleton/.opencode/skill/project-deterministic-workflows/SKILL.md\nnpm notice 5.2kB templates/repo-skeleton/.opencode/skill/project-document-branch/SKILL.md\nnpm notice 2.8kB templates/repo-skeleton/.opencode/skill/project-evidence-ledger/SKILL.md\nnpm notice 3.3kB templates/repo-skeleton/.opencode/skill/project-evidence/SKILL.md\nnpm notice 11.9kB templates/repo-skeleton/.opencode/skill/project-git-workflow/SKILL.md\nnpm notice 7.4kB templates/repo-skeleton/.opencode/skill/project-health/SKILL.md\nnpm notice 6.0kB templates/repo-skeleton/.opencode/skill/project-implementation-plan/SKILL.md\nnpm notice 1.1kB templates/repo-skeleton/.opencode/skill/project-llm-wiki/LICENSE\nnpm notice 842B templates/repo-skeleton/.opencode/skill/project-llm-wiki/references/archive-template.md\nnpm notice 843B templates/repo-skeleton/.opencode/skill/project-llm-wiki/references/article-template.md\nnpm notice 559B templates/repo-skeleton/.opencode/skill/project-llm-wiki/references/index-template.md\nnpm notice 317B templates/repo-skeleton/.opencode/skill/project-llm-wiki/references/raw-template.md\nnpm notice 17.0kB templates/repo-skeleton/.opencode/skill/project-llm-wiki/SKILL.md\nnpm notice 7.4kB templates/repo-skeleton/.opencode/skill/project-local-integration/SKILL.md\nnpm notice 8.1kB templates/repo-skeleton/.opencode/skill/project-memory/SKILL.md\nnpm notice 6.2kB templates/repo-skeleton/.opencode/skill/project-planning-lifecycle/SKILL.md\nnpm notice 6.0kB templates/repo-skeleton/.opencode/skill/project-prd-plugin-setup/SKILL.md\nnpm notice 3.5kB templates/repo-skeleton/.opencode/skill/project-prd/SKILL.md\nnpm notice 27.5kB templates/repo-skeleton/.opencode/skill/project-request-intake/SKILL.md\nnpm notice 4.8kB templates/repo-skeleton/.opencode/skill/project-session-close/SKILL.md\nnpm notice 10.3kB templates/repo-skeleton/.opencode/skill/project-systematic-debugging/SKILL.md\nnpm notice 4.8kB templates/repo-skeleton/.opencode/skill/project-test-driven-implementation/SKILL.md\nnpm notice 3.7kB templates/repo-skeleton/.opencode/skill/project-traceability-review/SKILL.md\nnpm notice 2.5kB templates/repo-skeleton/.opencode/skill/project-traceability-sync/SKILL.md\nnpm notice 6.6kB templates/repo-skeleton/.opencode/skill/project-verification-before-completion/SKILL.md\nnpm notice 1.5kB templates/repo-skeleton/.opencode/skill/source-command-prd-autonomy/SKILL.md\nnpm notice 1.2kB templates/repo-skeleton/.opencode/skill/source-command-prd-close/SKILL.md\nnpm notice 3.3kB templates/repo-skeleton/.opencode/skill/source-command-prd-config/SKILL.md\nnpm notice 2.4kB templates/repo-skeleton/.opencode/skill/source-command-prd-drift/SKILL.md\nnpm notice 2.1kB templates/repo-skeleton/.opencode/skill/source-command-prd-graph/SKILL.md\nnpm notice 2.2kB templates/repo-skeleton/.opencode/skill/source-command-prd-hooks/SKILL.md\nnpm notice 1.3kB templates/repo-skeleton/.opencode/skill/source-command-prd-new/SKILL.md\nnpm notice 2.0kB templates/repo-skeleton/.opencode/skill/source-command-prd-off/SKILL.md\nnpm notice 1.5kB templates/repo-skeleton/.opencode/skill/source-command-prd-on/SKILL.md\nnpm notice 2.3kB templates/repo-skeleton/.opencode/skill/source-command-prd-reflections/SKILL.md\nnpm notice 2.5kB templates/repo-skeleton/.opencode/skill/source-command-prd-report/SKILL.md\nnpm notice 1.2kB templates/repo-skeleton/.opencode/skill/source-command-prd-status/SKILL.md\nnpm notice 1.7kB templates/repo-skeleton/.opencode/skill/source-command-prd-track/SKILL.md\nnpm notice 1.8kB templates/repo-skeleton/.opencode/skill/source-command-prd-version/SKILL.md\nnpm notice 1.7kB templates/repo-skeleton/.opencode/skill/source-command-prd-workflow/SKILL.md\nnpm notice 14.9kB templates/repo-skeleton/.prd_plugin/config.json\nnpm notice 1.6kB templates/repo-skeleton/.prd_plugin/hooks/prd_drift_check.py\nnpm notice 12.0kB templates/repo-skeleton/.prd_plugin/hooks/prd_hook_dispatch.py\nnpm notice 2.0kB templates/repo-skeleton/.prd_plugin/hooks/prd_log_skill.py\nnpm notice 4.1kB templates/repo-skeleton/.prd_plugin/hooks/prd_nudge.py\nnpm notice 3.7kB templates/repo-skeleton/.prd_plugin/hooks/prd_precommit_gate.py\nnpm notice 108.7kB templates/repo-skeleton/.prd_plugin/hooks/prd_reason_guard.py\nnpm notice 6.1kB templates/repo-skeleton/.prd_plugin/hooks/prd_reflection.py\nnpm notice 3.5kB templates/repo-skeleton/.prd_plugin/hooks/prd_session_report.py\nnpm notice 15.8kB templates/repo-skeleton/.prd_plugin/hooks/prd_stop_guard.py\nnpm notice 8.0kB templates/repo-skeleton/.prd_plugin/hooks/prd_test_scope_guard.py\nnpm notice 3.7kB templates/repo-skeleton/.prd_plugin/ID-SCHEME.md\nnpm notice 581B templates/repo-skeleton/.prd_plugin/ids/registry.json\nnpm notice 12.6kB templates/repo-skeleton/.prd_plugin/METHOD.md\nnpm notice 725B templates/repo-skeleton/.prd_plugin/method/artifact-format.md\nnpm notice 1.5kB templates/repo-skeleton/.prd_plugin/method/completion-gate.md\nnpm notice 3.6kB templates/repo-skeleton/.prd_plugin/method/deterministic-workflows.md\nnpm notice 1.2kB templates/repo-skeleton/.prd_plugin/method/estimation.md\nnpm notice 2.1kB templates/repo-skeleton/.prd_plugin/method/grounding.md\nnpm notice 3.2kB templates/repo-skeleton/.prd_plugin/method/reporting.md\nnpm notice 4.1kB templates/repo-skeleton/.prd_plugin/method/self-service.md\nnpm notice 1.6kB templates/repo-skeleton/.prd_plugin/method/staleness-rules.md\nnpm notice 1.0kB templates/repo-skeleton/.prd_plugin/method/state-validation.md\nnpm notice 3.0kB templates/repo-skeleton/.prd_plugin/method/subagents.md\nnpm notice 1.3kB templates/repo-skeleton/.prd_plugin/services.json\nnpm notice 47B templates/repo-skeleton/.prd_plugin/state/changelog.json\nnpm notice 49B templates/repo-skeleton/.prd_plugin/state/decisions.json\nnpm notice 157B templates/repo-skeleton/.prd_plugin/state/health.json\nnpm notice 47B templates/repo-skeleton/.prd_plugin/state/memory.json\nnpm notice 287B templates/repo-skeleton/.prd_plugin/state/project.json\nnpm notice 48B templates/repo-skeleton/.prd_plugin/state/releases.json\nnpm notice 48B templates/repo-skeleton/.prd_plugin/state/requests.json\nnpm notice 214B templates/repo-skeleton/.prd_plugin/state/sessions/shared/promoted-session-summaries.jsonl\nnpm notice 49B templates/repo-skeleton/.prd_plugin/state/substrate-links.json\nnpm notice 51B templates/repo-skeleton/.prd_plugin/state/tracking.json\nnpm notice 48B templates/repo-skeleton/.prd_plugin/state/workflow-runs.json\nnpm notice 167B templates/repo-skeleton/.prd_plugin/templates/architecture-delta.md\nnpm notice 1.4kB templates/repo-skeleton/.prd_plugin/templates/architecture.json\nnpm notice 368B templates/repo-skeleton/.prd_plugin/templates/brainstorm.md\nnpm notice 274B templates/repo-skeleton/.prd_plugin/templates/changelog.json\nnpm notice 15.1kB templates/repo-skeleton/.prd_plugin/templates/config.json\nnpm notice 265B templates/repo-skeleton/.prd_plugin/templates/decision-record.md\nnpm notice 398B templates/repo-skeleton/.prd_plugin/templates/decisions.json\nnpm notice 372B templates/repo-skeleton/.prd_plugin/templates/doc-branch.json\nnpm notice 313B templates/repo-skeleton/.prd_plugin/templates/doc-branch.md\nnpm notice 115B templates/repo-skeleton/.prd_plugin/templates/evidence.md\nnpm notice 249B templates/repo-skeleton/.prd_plugin/templates/handoff.json\nnpm notice 407B templates/repo-skeleton/.prd_plugin/templates/health.json\nnpm notice 695B templates/repo-skeleton/.prd_plugin/templates/human-exports/architecture.md\nnpm notice 626B templates/repo-skeleton/.prd_plugin/templates/human-exports/implementation-plan.md\nnpm notice 580B templates/repo-skeleton/.prd_plugin/templates/human-exports/prd.md\nnpm notice 1.4kB templates/repo-skeleton/.prd_plugin/templates/implementation-plan.json\nnpm notice 65B templates/repo-skeleton/.prd_plugin/templates/mailbox.json\nnpm notice 348B templates/repo-skeleton/.prd_plugin/templates/memory.json\nnpm notice 471B templates/repo-skeleton/.prd_plugin/templates/merge-checklist.md\nnpm notice 163B templates/repo-skeleton/.prd_plugin/templates/plan-delta.md\nnpm notice 139B templates/repo-skeleton/.prd_plugin/templates/prd-delta.md\nnpm notice 1.3kB templates/repo-skeleton/.prd_plugin/templates/prd.json\nnpm notice 455B templates/repo-skeleton/.prd_plugin/templates/project.json\nnpm notice 125B templates/repo-skeleton/.prd_plugin/templates/promoted-session-summary.jsonl\nnpm notice 923B templates/repo-skeleton/.prd_plugin/templates/releases.json\nnpm notice 1.4kB templates/repo-skeleton/.prd_plugin/templates/request.json\nnpm notice 1.7kB templates/repo-skeleton/.prd_plugin/templates/requests.json\nnpm notice 23.4kB templates/repo-skeleton/.prd_plugin/templates/script-install-scope.json\nnpm notice 235B templates/repo-skeleton/.prd_plugin/templates/session.json\nnpm notice 15.6kB templates/repo-skeleton/.prd_plugin/templates/skill-install-scope.json\nnpm notice 317B templates/repo-skeleton/.prd_plugin/templates/submission-package.json\nnpm notice 5.7kB templates/repo-skeleton/.prd_plugin/templates/tool-surface.json\nnpm notice 225B templates/repo-skeleton/.prd_plugin/templates/traceability-matrix.md\nnpm notice 321B templates/repo-skeleton/.prd_plugin/templates/tracking.json\nnpm notice 375B templates/repo-skeleton/.prd_plugin/templates/utcp-config.json\nnpm notice 22.2kB templates/repo-skeleton/.prd_plugin/workflows.json\nnpm notice 15.2kB templates/repo-skeleton/AGENTS.md\nnpm notice 11.6kB templates/repo-skeleton/CLAUDE.md\nnpm notice 12.0kB templates/repo-skeleton/docs/INSTALL-MATRIX.md\nnpm notice 2.7kB templates/repo-skeleton/hooks/hooks.json\nnpm notice 1.4kB templates/request.json\nnpm notice 1.7kB templates/requests.json\nnpm notice 23.4kB templates/script-install-scope.json\nnpm notice 1.3kB templates/services.json\nnpm notice 235B templates/session.json\nnpm notice 15.6kB templates/skill-install-scope.json\nnpm notice 317B templates/submission-package.json\nnpm notice 10.4kB templates/substrate-capabilities.json\nnpm notice 48.5kB templates/tool-spec.json\nnpm notice 7.9kB templates/tool-surface.json\nnpm notice 225B templates/traceability-matrix.md\nnpm notice 321B templates/tracking.json\nnpm notice 375B templates/utcp-config.json\nnpm notice 22.2kB templates/workflows.json\nnpm notice Tarball Details\nnpm notice name: prd-plugin\nnpm notice version: 0.16.60\nnpm notice filename: prd-plugin-0.16.60.tgz\nnpm notice package size: 1.9 MB\nnpm notice unpacked size: 11.7 MB\nnpm notice shasum: a6076291058a8e81b71682a62e22648818ee3a38\nnpm notice integrity: sha512-tA4+bslfWAaJz[...]+hqoMASUGiDRA==\nnpm notice total files: 658\nnpm notice\n"
          },
          "output_hash": "5e7ced9722e50e185f7a470781c4a40c80c2fb7e15eb60d3a26bbe1fa56320b9",
          "completed_at": "2026-07-25T11:50:11Z"
        },
        {
          "id": "gate",
          "action": "state.gate",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-25T11:50:12Z",
          "output": {
            "status": "attention",
            "repo_root": "D:\\Projects\\prd-plugin",
            "summary": {
              "errors": 0,
              "warnings": 0
            },
            "findings": [
              {
                "check": "state_consistency",
                "severity": "info",
                "summary": "File references 2 canonical IDs across 2 prefix(es); treated as a positive signal of extra work.",
                "required_action": "No action required; this is an informational signal."
              }
            ]
          },
          "output_hash": "6a0ed3d65779be265214a0e8395ab03978b9f7b91da9ffb59b257b73f82d087d",
          "completed_at": "2026-07-25T11:50:12Z"
        }
      ],
      "completed_at": "2026-07-25T11:50:13Z"
    },
    {
      "id": "WFR-452",
      "schema_version": "1.0",
      "workflow_id": "evidence.record",
      "workflow_version": 1,
      "definition_hash": "a6dfcb8faadb669d5c097a0d7fa9a738f20ee98e03b552c9557259a94a197e88",
      "plan_hash": "90da130c6813a51fb86c961ce16b74cc4ae88cbe28200d1ffc1d806fcaaf4720",
      "input_hash": "8af7657072c5e978fdfc6a30e1a9e82a280baeb3c8638394c80dd85dc6c1293e",
      "inputs": {
        "summary": "The release-boundary workflow completed on its deterministic retry after a transient Windows receipt-save denial. It re-proved CHML zero, Substrate capability parity, the full local workflow suite, release hygiene, version gap hygiene, package contents for prd-plugin 0.16.60, and the canonical state gate.",
        "type": "validation",
        "linked_ids": [
          "REQ-176",
          "TRK-163",
          "IMP-016",
          "EV-216",
          "CHG-141",
          "WFR-451"
        ],
        "commands": [
          {
            "command": "hub.release WFR-451 attempt 2",
            "outcome": "completed"
          },
          {
            "command": "workflow_chml_audit",
            "outcome": "ok",
            "critical": 0,
            "high": 0,
            "medium": 0,
            "low": 0
          },
          {
            "command": "prd_substrate_catalog audit",
            "outcome": "ok",
            "capabilities": 26,
            "runtime_tools": 103,
            "intents": 31
          },
          {
            "command": "local_workflow_check",
            "outcome": "ok",
            "tests_run": 1289,
            "failures": 0,
            "errors": 0
          },
          {
            "command": "release_check and gap_audit",
            "outcome": "ok"
          },
          {
            "command": "npm pack --dry-run package check",
            "outcome": "ok",
            "version": "0.16.60",
            "files": 658
          }
        ],
        "limitations": "No live Claude session was run, as requested. The first release-workflow attempt was interrupted only by a transient Windows atomic replacement denial while persisting workflow-runs.json; deterministic retry completed every release step."
      },
      "idempotency_key": "req-176-release-evidence-v1",
      "status": "completed",
      "attempt": 1,
      "created_at": "2026-07-25T11:50:41Z",
      "updated_at": "2026-07-25T11:50:42Z",
      "receipts": [
        {
          "step_id": "record",
          "action": "state.mutate",
          "input_hash": "6b35f03591c91b95da4b8e11dc0330bc464cc50d12f6d817725396a428eb8332",
          "output_hash": "eb5c6bc3f9446f2480d86e1338819bcd9291a2b245e35fa8d35ac7ed114a8368",
          "completed_at": "2026-07-25T11:50:41Z"
        },
        {
          "step_id": "confirm",
          "action": "state.query",
          "input_hash": "cea986084f070be317dbe078619a39303f336991cf7fbfd46de483f93399623d",
          "output_hash": "2c4dd9e8abfdb6622188e26502ce35f09e1ab0545e557070c9ff933d7df75ee0",
          "completed_at": "2026-07-25T11:50:42Z"
        }
      ],
      "steps": [
        {
          "id": "record",
          "action": "state.mutate",
          "status": "completed",
          "resolved_input_hash": "6b35f03591c91b95da4b8e11dc0330bc464cc50d12f6d817725396a428eb8332",
          "started_at": "2026-07-25T11:50:41Z",
          "execution_token": "ebc866c747984a1dd6ebecb3dfa167f59d4951e443243b429b03a4b9684a854e",
          "output": {
            "id": "EV-217"
          },
          "output_hash": "eb5c6bc3f9446f2480d86e1338819bcd9291a2b245e35fa8d35ac7ed114a8368",
          "completed_at": "2026-07-25T11:50:41Z"
        },
        {
          "id": "confirm",
          "action": "state.query",
          "status": "completed",
          "resolved_input_hash": "cea986084f070be317dbe078619a39303f336991cf7fbfd46de483f93399623d",
          "started_at": "2026-07-25T11:50:41Z",
          "output": {
            "kind": "EV",
            "record": {
              "id": "EV-217",
              "type": "validation",
              "summary": "The release-boundary workflow completed on its deterministic retry after a transient Windows receipt-save denial. It re-proved CHML zero, Substrate capability parity, the full local workflow suite, release hygiene, version gap hygiene, package contents for prd-plugin 0.16.60, and the canonical state gate.",
              "linked_ids": [
                "REQ-176",
                "TRK-163",
                "IMP-016",
                "EV-216",
                "CHG-141",
                "WFR-451"
              ],
              "created_at": "2026-07-25",
              "commands": [
                {
                  "command": "hub.release WFR-451 attempt 2",
                  "outcome": "completed"
                },
                {
                  "command": "workflow_chml_audit",
                  "outcome": "ok",
                  "critical": 0,
                  "high": 0,
                  "medium": 0,
                  "low": 0
                },
                {
                  "command": "prd_substrate_catalog audit",
                  "outcome": "ok",
                  "capabilities": 26,
                  "runtime_tools": 103,
                  "intents": 31
                },
                {
                  "command": "local_workflow_check",
                  "outcome": "ok",
                  "tests_run": 1289,
                  "failures": 0,
                  "errors": 0
                },
                {
                  "command": "release_check and gap_audit",
                  "outcome": "ok"
                },
                {
                  "command": "npm pack --dry-run package check",
                  "outcome": "ok",
                  "version": "0.16.60",
                  "files": 658
                }
              ],
              "limitations": "No live Claude session was run, as requested. The first release-workflow attempt was interrupted only by a transient Windows atomic replacement denial while persisting workflow-runs.json; deterministic retry completed every release step."
            }
          },
          "output_hash": "2c4dd9e8abfdb6622188e26502ce35f09e1ab0545e557070c9ff933d7df75ee0",
          "completed_at": "2026-07-25T11:50:42Z"
        }
      ],
      "completed_at": "2026-07-25T11:50:42Z"
    },
    {
      "id": "WFR-453",
      "schema_version": "1.0",
      "workflow_id": "session.start",
      "workflow_version": 1,
      "definition_hash": "dd0de9444af7b094cc93673d0844fb78c801d87d978cc5f6dd6bf3e3e863917d",
      "plan_hash": "1f4ae0cd6be8385f8a9310e49978bd8d93baa729842eb6df9243665a1b581277",
      "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
      "inputs": {},
      "idempotency_key": "codex-20260725-reason-guard-claude-report",
      "status": "completed",
      "attempt": 1,
      "created_at": "2026-07-25T12:41:58Z",
      "updated_at": "2026-07-25T12:42:01Z",
      "receipts": [
        {
          "step_id": "mailbox",
          "action": "requests.pull",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "ab8a35139cfd3f5821ebc5138c9a44c899b54e4036790654ff120e79c7ab6223",
          "completed_at": "2026-07-25T12:41:58Z"
        },
        {
          "step_id": "config",
          "action": "config.audit",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "9cbf27cbac0de8a8eb0ed2dd07eae4f75908186aa645194b551c48f999ebb1b5",
          "completed_at": "2026-07-25T12:41:58Z"
        },
        {
          "step_id": "services",
          "action": "services.audit",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "13dcc58bd528f3efa3e6e0fa0853a6eedc376f1f3685fbd4869cbb2b60382ee3",
          "completed_at": "2026-07-25T12:41:58Z"
        },
        {
          "step_id": "state",
          "action": "state.consistency",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "9963110856ca8182da0dfdbb22f6960618b55dbc121be0dce0066a7c7a389b10",
          "completed_at": "2026-07-25T12:41:59Z"
        },
        {
          "step_id": "status",
          "action": "state.query",
          "input_hash": "a15231a2142a2a9a85355a8b9cbbccffe01a9c9c2c2fd8c2bc2987cdc481564a",
          "output_hash": "dca99024f624f9b23ab74834e9db8e3e8b11b20d09f4f7c4c964bea9a4681675",
          "completed_at": "2026-07-25T12:42:00Z"
        },
        {
          "step_id": "substrate",
          "action": "substrate.preflight",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "a6df426290b4549a59eecaa0519ead9bcc50b7fcb25bd2185ff6047960f19ccb",
          "completed_at": "2026-07-25T12:42:00Z"
        },
        {
          "step_id": "notices",
          "action": "substrate.notices",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "38b904a1cf83df048360fb2480571b749fd98d57e11f1afdffb5a74a78166fea",
          "completed_at": "2026-07-25T12:42:00Z"
        },
        {
          "step_id": "goals",
          "action": "substrate.goals",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "cdfd4de44a28140e686159f34f7b47975954c67e1d1efcef666e985acb136ed8",
          "completed_at": "2026-07-25T12:42:00Z"
        }
      ],
      "steps": [
        {
          "id": "mailbox",
          "action": "requests.pull",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-25T12:41:58Z",
          "output": {
            "applied": 0,
            "resolved_ids": [],
            "unmatched": [],
            "mailboxes": [],
            "pruned_outbox": [],
            "consumed_mailboxes": [],
            "outbound": {
              "delivered": 0,
              "mailboxes_published": [],
              "undeliverable": [],
              "pending": []
            },
            "addressed": {
              "delivered": 0,
              "destinations": [],
              "undelivered": [
                {
                  "id": "REQ-030",
                  "state": "not_ours_to_send",
                  "target_repo": "prd-plugin",
                  "reason": "REQ-030 was imported from 'ZeusGrid'; its target_repo records who it was addressed to, not somewhere for us to send it. Reply on its thread instead."
                },
                {
                  "id": "REQ-003",
                  "state": "not_ours_to_send",
                  "target_repo": "prd-plugin",
                  "reason": "REQ-003 was imported from 'ZeusGrid'; its target_repo records who it was addressed to, not somewhere for us to send it. Reply on its thread instead."
                },
                {
                  "id": "REQ-004",
                  "state": "not_ours_to_send",
                  "target_repo": "prd-plugin",
                  "reason": "REQ-004 was imported from 'ZeusGrid'; its target_repo records who it was addressed to, not somewhere for us to send it. Reply on its thread instead."
                },
                {
                  "id": "REQ-005",
                  "state": "not_ours_to_send",
                  "target_repo": "prd-plugin",
                  "reason": "REQ-005 was imported from 'GRAPH_LANG'; its target_repo records who it was addressed to, not somewhere for us to send it. Reply on its thread instead."
                },
                {
                  "id": "REQ-002",
                  "state": "self_addressed",
                  "target_repo": "prd-plugin",
                  "reason": "REQ-002 is addressed to this repo ('prd-plugin'); it is already here."
                },
                {
                  "id": "REQ-028",
                  "state": "self_addressed",
                  "target_repo": "prd-plugin",
                  "reason": "REQ-028 is addressed to this repo ('prd-plugin'); it is already here."
                },
                {
                  "id": "REQ-029",
                  "state": "not_ours_to_send",
                  "target_repo": "ai-collab-v3",
                  "reason": "REQ-029 was imported from 'ai-collab-v3'; its target_repo records who it was addressed to, not somewhere for us to send it. Reply on its thread instead."
                },
                {
                  "id": "REQ-138",
                  "state": "terminal",
                  "target_repo": "no-such-repo",
                  "reason": "REQ-138 is 'rejected'; a closed request is not delivered. Reopen it or file a new one if it still needs to travel."
                }
              ],
              "advisories": []
            }
          },
          "output_hash": "ab8a35139cfd3f5821ebc5138c9a44c899b54e4036790654ff120e79c7ab6223",
          "completed_at": "2026-07-25T12:41:58Z"
        },
        {
          "id": "config",
          "action": "config.audit",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-25T12:41:58Z",
          "output": {
            "status": "ok",
            "summary": {
              "settings": 216,
              "mutable": 206,
              "read_only_or_managed": 10,
              "unclassified": 0,
              "unknown": 0,
              "invalid": 0,
              "missing_using_defaults": 0
            },
            "unclassified_keys": [],
            "unknown_keys": [],
            "invalid_values": [],
            "missing_using_defaults": []
          },
          "output_hash": "9cbf27cbac0de8a8eb0ed2dd07eae4f75908186aa645194b551c48f999ebb1b5",
          "completed_at": "2026-07-25T12:41:58Z"
        },
        {
          "id": "services",
          "action": "services.audit",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-25T12:41:58Z",
          "output": {
            "status": "ok",
            "summary": {
              "critical": 0,
              "high": 0,
              "medium": 0,
              "low": 0
            },
            "findings": []
          },
          "output_hash": "13dcc58bd528f3efa3e6e0fa0853a6eedc376f1f3685fbd4869cbb2b60382ee3",
          "completed_at": "2026-07-25T12:41:58Z"
        },
        {
          "id": "state",
          "action": "state.consistency",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-25T12:41:59Z",
          "output": {
            "status": "ok",
            "repo_root": "D:\\Projects\\prd-plugin",
            "summary": {
              "errors": 0,
              "warnings": 0,
              "infos": 1
            },
            "findings": [
              {
                "id": "CONS-INFO-001",
                "severity": "info",
                "path": "docs/evidence/EV-200.md",
                "summary": "File references 2 canonical IDs across 2 prefix(es); treated as a positive signal of extra work.",
                "referenced_prefixes": [
                  "CHG",
                  "TRK"
                ],
                "referenced_id_count": 2,
                "required_action": "No action required; this is an informational signal."
              }
            ]
          },
          "output_hash": "9963110856ca8182da0dfdbb22f6960618b55dbc121be0dce0066a7c7a389b10",
          "completed_at": "2026-07-25T12:41:59Z"
        },
        {
          "id": "status",
          "action": "state.query",
          "status": "completed",
          "resolved_input_hash": "a15231a2142a2a9a85355a8b9cbbccffe01a9c9c2c2fd8c2bc2987cdc481564a",
          "started_at": "2026-07-25T12:42:00Z",
          "output": {
            "repo_root": "D:\\Projects\\prd-plugin",
            "autonomy_level": "autonomous",
            "reasoning_guard": {
              "mode": "report",
              "backfill": {
                "mode": "recent",
                "limit": 20
              },
              "categories": {
                "evidence_follow_through": "inherit",
                "causal_claims": "inherit",
                "permanent_mutations": "inherit",
                "completion_claims": "inherit"
              },
              "effective_modes": {
                "evidence_follow_through": "report",
                "causal_claims": "report",
                "permanent_mutations": "report",
                "completion_claims": "report"
              },
              "report_available": true,
              "host_count": 2,
              "session_count": 4,
              "sessions": [
                {
                  "host": "codex",
                  "host_name": "Codex",
                  "surface": "codex_desktop",
                  "surface_name": "Codex Desktop",
                  "model": "gpt-5.6-sol",
                  "effort": "high",
                  "effort_name": "High",
                  "session_label": "Codex Desktop session / 25 Jul 2026 12:41 UTC",
                  "session_id": "019f8f2a-71a4-7920-94a0-66cf3307c73b",
                  "active": true,
                  "started_at": "2026-07-25T11:24:58.264093Z",
                  "updated_at": "2026-07-25T12:41:57.754468Z",
                  "coverage": "recent_backfill",
                  "clearance": "conditional",
                  "open_obligations": 0,
                  "findings": 0,
                  "summaries_processed": 58,
                  "p95_ms": 45.791
                },
                {
                  "host": "codex",
                  "host_name": "Codex",
                  "surface": "codex_desktop",
                  "surface_name": "Codex Desktop",
                  "model": "gpt-5.6-sol",
                  "effort": "medium",
                  "effort_name": "Medium",
                  "session_label": "Codex Desktop session / 25 Jul 2026 11:28 UTC",
                  "session_id": "019f6284-ddca-7261-ae3c-a2248f859e6a",
                  "active": false,
                  "started_at": "2026-07-25T11:28:10.655158Z",
                  "updated_at": "2026-07-25T11:28:10.710241Z",
                  "coverage": "recent_backfill",
                  "clearance": "conditional",
                  "open_obligations": 0,
                  "findings": 0,
                  "summaries_processed": 20,
                  "p95_ms": 70.948
                },
                {
                  "host": "claude",
                  "host_name": "Claude",
                  "surface": "claude_desktop",
                  "surface_name": "Claude Desktop",
                  "model": "claude-opus-4-8",
                  "effort": "xhigh",
                  "effort_name": "Extra high",
                  "session_label": "Claude Desktop session / 25 Jul 2026 11:26 UTC",
                  "session_id": "60ee1cdb-bbe1-4398-a446-f583252e726a",
                  "active": true,
                  "started_at": "2026-07-25T11:26:11.326023Z",
                  "updated_at": "2026-07-25T11:26:11.522601Z",
                  "coverage": "recent_backfill",
                  "clearance": "conditional",
                  "open_obligations": 1,
                  "findings": 1,
                  "summaries_processed": 20,
                  "p95_ms": 207.168
                },
                {
                  "host": "claude",
                  "host_name": "Claude",
                  "surface": "claude_desktop",
                  "surface_name": "Claude Desktop",
                  "model": "claude-opus-4-8",
                  "effort": "unknown",
                  "effort_name": "Not reported",
                  "session_label": "Claude Desktop session / 25 Jul 2026 11:25 UTC",
                  "session_id": "ec2bf58f-23e6-41fd-b57b-706f44e5d271",
                  "active": false,
                  "started_at": "2026-07-25T10:48:49.742231Z",
                  "updated_at": "2026-07-25T11:25:37.985391Z",
                  "coverage": "recent_backfill",
                  "clearance": "conditional",
                  "open_obligations": 0,
                  "findings": 0,
                  "summaries_processed": 20,
                  "p95_ms": 20.57
                }
              ],
              "coverage": {
                "history": {
                  "backfill_complete": true,
                  "historically_complete": false,
                  "limit": 20,
                  "mode": "recent"
                },
                "host": "codex",
                "level": "recent_backfill",
                "missing": [
                  "historical visible reasoning coverage is limited to the last 20 summaries"
                ],
                "observed": [
                  "visible hook events",
                  "visible reasoning summaries",
                  "tool inputs",
                  "tool results"
                ]
              },
              "summary": {
                "blocked": 0,
                "deferred": 0,
                "open": 0,
                "violations": 0
              },
              "latency": {
                "samples_ms": [
                  30.817,
                  31.254,
                  30.925,
                  31.293,
                  33.959,
                  32.364,
                  36.66,
                  25.96,
                  33.095,
                  28.629,
                  31.157,
                  27.708,
                  28.576,
                  29.748,
                  31.824,
                  70.021,
                  113.586,
                  153.971,
                  31.672,
                  54.121,
                  30.125,
                  31.988,
                  27.51,
                  30.121,
                  26.548,
                  28.614,
                  31.905,
                  27.958,
                  27.052,
                  21.504,
                  30.523,
                  29.958,
                  30.926,
                  31.515,
                  27.654,
                  30.8,
                  30.858,
                  76.268,
                  146.005,
                  40.724,
                  44.377,
                  34.171,
                  29.887,
                  31.041,
                  30.787,
                  35.403,
                  29.486,
                  35.739,
                  30.152,
                  30.535,
                  30.533,
                  25.682,
                  28.713,
                  28.237,
                  28.94,
                  27.194,
                  45.791,
                  28.913,
                  33.757,
                  29.509,
                  28.644,
                  27.987,
                  32.276,
                  31.246,
                  33.657,
                  35.532,
                  28.307,
                  29.941,
                  31.059,
                  26.242,
                  30.188,
                  28.035,
                  29.895,
                  28.781,
                  31.1,
                  27.518,
                  29.604,
                  30.534,
                  37.253,
                  31.514,
                  39.591,
                  34.962,
                  36.197,
                  26.755,
                  32.707,
                  29.571,
                  32.019,
                  27.584,
                  37.854,
                  29.067,
                  33.731,
                  30.92,
                  37.388,
                  29.708,
                  34.083,
                  27.684,
                  29.558,
                  27.986,
                  26.505,
                  26.855,
                  31.472,
                  26.504,
                  34.729,
                  30.043,
                  26.089,
                  30.518,
                  32.34,
                  31.091,
                  30.46,
                  26.9,
                  29.732,
                  27.464,
                  35.581,
                  32.562,
                  32.26,
                  30.687,
                  27.725,
                  29.96,
                  33.348,
                  26.964,
                  33.997,
                  30.538,
                  32.003,
                  26.062,
                  30.493,
                  27.232,
                  29.253,
                  27.047
                ],
                "p50_ms": 30.534,
                "p95_ms": 45.791
              },
              "classification": {
                "candidates": 0,
                "created": 0,
                "ignored": 38,
                "reconciled": 0,
                "summaries_seen": 58,
                "uncertain": 20
              },
              "ingestion": {
                "backfill_complete": true,
                "covered_from_bytes": 39238550,
                "covered_through_bytes": 42431125,
                "cursor_bytes": 42431125,
                "effort": "high",
                "has_covered_interval": true,
                "historically_complete": false,
                "initialized": true,
                "last_error": "",
                "limit": 20,
                "metadata_initialized": true,
                "mode": "recent",
                "model": "gpt-5.6-sol",
                "source_anchor_bytes": 42431125,
                "source_anchor_digest": "42baca84f5408156576b86b612582129f34560db4ff3ef94f1af75ba0143f246",
                "source_digest": "f5c9e413e4ff62d24c4af13b45bc8b47aa09fd470bf57da76b146268b629ae2c",
                "summaries_discovered": 58,
                "summaries_processed": 58,
                "surface": "codex_desktop"
              },
              "clearance": {
                "active_blocking_diagnostics": [],
                "coverage": {
                  "host": "codex",
                  "level": "recent_backfill"
                },
                "deferred_blocking_obligations": [],
                "deferred_count": 0,
                "issued_at": "2026-07-25T12:41:57.754540Z",
                "limitations": [
                  "historical visible reasoning coverage is limited to the last 20 summaries",
                  "20 visible active summaries could not be classified confidently."
                ],
                "mode": "report",
                "open_blocking_obligations": [],
                "report_digest": "0c7a97b1d3f56e5f0dc244335d3cdc2d97d560c89b1942a07695b4d155459031",
                "status": "conditional"
              }
            },
            "requests_by_status": {
              "accepted": 2,
              "deferred": 1,
              "implemented": 146,
              "in_review": 2,
              "proposed": 4,
              "rejected": 3
            },
            "active_tracking": [
              "TRK-160"
            ],
            "tracking_branches": [],
            "tracking_branch_counts": {},
            "tracking_branch_errors": [],
            "open_health": [
              "HLT-020",
              "HLT-021",
              "HLT-022",
              "HLT-023"
            ],
            "stale_count": 0,
            "skill_usage": {
              "project-llm-wiki": 2,
              "project-decision-policy": 1,
              "project-request-intake": 1,
              "project-test-driven-implementation": 1,
              "project-verification-before-completion": 1,
              "artifact-design": 1
            },
            "wiki_backfill_pending": false,
            "wiki_ingest_drift": null,
            "version_update": null
          },
          "output_hash": "dca99024f624f9b23ab74834e9db8e3e8b11b20d09f4f7c4c964bea9a4681675",
          "completed_at": "2026-07-25T12:42:00Z"
        },
        {
          "id": "substrate",
          "action": "substrate.preflight",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-25T12:42:00Z",
          "output": {
            "status": "disabled",
            "services": {
              "status": "ok",
              "summary": {
                "critical": 0,
                "high": 0,
                "medium": 0,
                "low": 0
              },
              "findings": []
            },
            "policy": {
              "configured": {
                "enabled": false,
                "mode": "off",
                "capabilities": [
                  "records",
                  "graph",
                  "events"
                ],
                "contract_version": 2,
                "require_source_refs": true,
                "endpoint": "http://127.0.0.1:47124",
                "manual_url": "http://127.0.0.1:47124/utcp.json",
                "knowledge_browse_url": "http://127.0.0.1:5276",
                "auth_env": "AI_COLLAB_API_KEY",
                "timeout_seconds": 5,
                "max_result_bytes": 1048576,
                "cache_ttl_seconds": 60,
                "fallback": "local",
                "automation": {
                  "discovery_on_session_start": true,
                  "knowledge_recall": true,
                  "memory_recall": true,
                  "context_enrichment": true,
                  "notices_on_session_start": false,
                  "goals_sync": false,
                  "telemetry_on_maintenance": false,
                  "reporting_dispatch": true,
                  "judgment_dispatch": true,
                  "verification_execution": true
                }
              },
              "active": false,
              "effective_mode": "off",
              "effective_capabilities": []
            }
          },
          "output_hash": "a6df426290b4549a59eecaa0519ead9bcc50b7fcb25bd2185ff6047960f19ccb",
          "completed_at": "2026-07-25T12:42:00Z"
        },
        {
          "id": "notices",
          "action": "substrate.notices",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-25T12:42:00Z",
          "output": {
            "status": "disabled"
          },
          "output_hash": "38b904a1cf83df048360fb2480571b749fd98d57e11f1afdffb5a74a78166fea",
          "completed_at": "2026-07-25T12:42:00Z"
        },
        {
          "id": "goals",
          "action": "substrate.goals",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-25T12:42:00Z",
          "output": {
            "status": "disabled",
            "created": 0,
            "observed": 0,
            "results": []
          },
          "output_hash": "cdfd4de44a28140e686159f34f7b47975954c67e1d1efcef666e985acb136ed8",
          "completed_at": "2026-07-25T12:42:00Z"
        }
      ],
      "completed_at": "2026-07-25T12:42:01Z"
    },
    {
      "id": "WFR-454",
      "schema_version": "1.0",
      "workflow_id": "engineering.debug",
      "workflow_version": 1,
      "definition_hash": "b32f3f2fbbbd7474e05e983730ae4143048466f42364e34d7391312132c2dbf8",
      "plan_hash": "a95b00899201e56b532057b8949f8a21e8132b1734192111a3ea88216b9204a8",
      "input_hash": "d1f5a173bbee9da051d391d9e5f58aad84c4fe46a733b3411486a3e0fbfe48d9",
      "inputs": {
        "instructions": "Diagnose the five reproduced Reason Guard defects from the Claude visible-summary report: cross-clause false obligation creation, weak heuristic tool/evidence affinity, misleading EVIDENCED boundary wording, unchanged-state occurrence inflation, and mojibake in trusted Claude visible text. Keep capture, report-only inferred authority, and standalone RLP scope unchanged.",
        "source_refs": [
          "REQ-174",
          "REQ-176",
          "TRK-164",
          "PRD-011",
          "ARCH-011",
          ".prd_plugin/hooks/prd_reason_guard.py",
          "tests/test_reason_guard.py"
        ]
      },
      "idempotency_key": "codex-20260725-req174-claude-findings",
      "status": "completed",
      "attempt": 1,
      "created_at": "2026-07-25T12:47:29Z",
      "updated_at": "2026-07-25T12:48:11Z",
      "receipts": [
        {
          "step_id": "git",
          "action": "git.status",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "f96327c65909d19cc798214ea6627f4bdef15e049c25a9c8627ab7413994f765",
          "completed_at": "2026-07-25T12:47:30Z"
        },
        {
          "step_id": "state",
          "action": "state.consistency",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "9963110856ca8182da0dfdbb22f6960618b55dbc121be0dce0066a7c7a389b10",
          "completed_at": "2026-07-25T12:47:31Z"
        },
        {
          "step_id": "context",
          "action": "substrate.enrich",
          "input_hash": "19e0a5c506dc6d4d6af792d8a60d60e08b5cb54e463f569a2c1aa300ee07a80a",
          "output_hash": "24854fde5ae963ae707e035ae9ed7307e421ce81837b5740b1f72cb15ebb31b0",
          "completed_at": "2026-07-25T12:47:31Z"
        },
        {
          "step_id": "diagnosis",
          "action": "judgment.request",
          "input_hash": "7d60e3a086944ccd79e3ec14fc6eb351a3da73c8443e693c9df54a997cccac6b",
          "output_hash": "4c450dc7e8293ffaf44058b2a476f3bb9fc39bd93e5177c2b3726fb8573754c1",
          "request_hash": "35d0deafb419d54db92094f710983e129598bade351c3a2adb34e570cf7164e1",
          "completed_at": "2026-07-25T12:48:11Z"
        }
      ],
      "steps": [
        {
          "id": "git",
          "action": "git.status",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-25T12:47:30Z",
          "output": {
            "clean": false,
            "changed_files": [
              ".prd_plugin/drift/events.jsonl",
              ".prd_plugin/ids/registry.json",
              ".prd_plugin/state/requests.json",
              ".prd_plugin/state/tracking.json",
              ".prd_plugin/state/workflow-runs.json"
            ]
          },
          "output_hash": "f96327c65909d19cc798214ea6627f4bdef15e049c25a9c8627ab7413994f765",
          "completed_at": "2026-07-25T12:47:30Z"
        },
        {
          "id": "state",
          "action": "state.consistency",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-25T12:47:30Z",
          "output": {
            "status": "ok",
            "repo_root": "D:\\Projects\\prd-plugin",
            "summary": {
              "errors": 0,
              "warnings": 0,
              "infos": 1
            },
            "findings": [
              {
                "id": "CONS-INFO-001",
                "severity": "info",
                "path": "docs/evidence/EV-200.md",
                "summary": "File references 2 canonical IDs across 2 prefix(es); treated as a positive signal of extra work.",
                "referenced_prefixes": [
                  "CHG",
                  "TRK"
                ],
                "referenced_id_count": 2,
                "required_action": "No action required; this is an informational signal."
              }
            ]
          },
          "output_hash": "9963110856ca8182da0dfdbb22f6960618b55dbc121be0dce0066a7c7a389b10",
          "completed_at": "2026-07-25T12:47:31Z"
        },
        {
          "id": "context",
          "action": "substrate.enrich",
          "status": "completed",
          "resolved_input_hash": "19e0a5c506dc6d4d6af792d8a60d60e08b5cb54e463f569a2c1aa300ee07a80a",
          "started_at": "2026-07-25T12:47:31Z",
          "output": {
            "status": "disabled",
            "results": [],
            "local_source_refs": [
              "REQ-174",
              "REQ-176",
              "TRK-164",
              "PRD-011",
              "ARCH-011",
              ".prd_plugin/hooks/prd_reason_guard.py",
              "tests/test_reason_guard.py"
            ]
          },
          "output_hash": "24854fde5ae963ae707e035ae9ed7307e421ce81837b5740b1f72cb15ebb31b0",
          "completed_at": "2026-07-25T12:47:31Z"
        },
        {
          "id": "diagnosis",
          "action": "judgment.request",
          "status": "completed",
          "resolved_input_hash": "7d60e3a086944ccd79e3ec14fc6eb351a3da73c8443e693c9df54a997cccac6b",
          "started_at": "2026-07-25T12:47:31Z",
          "judgment_request": {
            "contract_version": 1,
            "run_id": "WFR-454",
            "step_id": "diagnosis",
            "task": "debugging",
            "instructions": "Diagnose the five reproduced Reason Guard defects from the Claude visible-summary report: cross-clause false obligation creation, weak heuristic tool/evidence affinity, misleading EVIDENCED boundary wording, unchanged-state occurrence inflation, and mojibake in trusted Claude visible text. Keep capture, report-only inferred authority, and standalone RLP scope unchanged.",
            "source_refs": [
              "REQ-174",
              "REQ-176",
              "TRK-164",
              "PRD-011",
              "ARCH-011",
              ".prd_plugin/hooks/prd_reason_guard.py",
              "tests/test_reason_guard.py"
            ],
            "source_hashes": {
              ".prd_plugin/hooks/prd_reason_guard.py": "9e5fb009c3fca1edd959e2753a470c08d6ab827b4527d9baf7e9c9cda564aca4",
              "tests/test_reason_guard.py": "9fa9539fad6312addeb7dcac41dc7173fc39ed341cb47ace290b56c003c5a616"
            },
            "result_schema": {
              "type": "object",
              "required": [
                "summary",
                "hypotheses",
                "source_refs"
              ],
              "properties": {
                "summary": {
                  "type": "string"
                },
                "hypotheses": {
                  "type": "array",
                  "items": {
                    "type": "object"
                  }
                },
                "source_refs": {
                  "type": "array",
                  "items": {
                    "type": "string"
                  }
                }
              }
            },
            "executor": "ai-collab",
            "profile": "fast-capable",
            "constraints": {
              "no_project_state_writes": true,
              "require_source_refs": true
            },
            "request_hash": "35d0deafb419d54db92094f710983e129598bade351c3a2adb34e570cf7164e1"
          },
          "output": {
            "summary": "The defects come from three bounded root conditions: classification and matching operate on whole-summary token presence instead of same-clause action/subject relationships; diagnostic occurrence accounting is event-based instead of obligation-transition-based; and the Claude adapter trusts already-mojibaked Unicode strings without a conservative repair step before sanitization and hashing. EVIDENCED intentionally remains open until reconciliation, but its generic open-evidence wording is state-blind.",
            "hypotheses": [
              {
                "claim": "Cross-clause token mixing turns reporting promises or conclusions into obligations.",
                "discriminator": "A summary whose analysis sentence contains check/decision tokens and whose separate promise only says it will report must classify ignored; an actual same-clause compare-before-change commitment must still classify."
              },
              {
                "claim": "Heuristic tool execution matches on one generic consequential token, allowing unrelated results to evidence the obligation once the tool-use ID is bound.",
                "discriminator": "Require a shared check action and a shared non-generic subject before binding execution; PostToolUse must retain exact tool-use correlation."
              },
              {
                "claim": "Violation occurrences increment for every event while state is unchanged.",
                "discriminator": "Two equivalent Stop boundaries in the same obligation state should retain one occurrence; a later state transition may create one new occurrence."
              },
              {
                "claim": "The EVIDENCED lifecycle is correct but the boundary message is not.",
                "discriminator": "An EVIDENCED Stop should say evidence exists but explicit reconciliation is missing, while PLANNED/EXECUTED retain evidence-check wording."
              },
              {
                "claim": "Valid JSON can carry text that was decoded incorrectly upstream, and the adapter hashes that damaged form.",
                "discriminator": "Conservatively reverse only recognizable CP1252/Latin-1-to-UTF-8 mojibake before sanitize/hash; preserve ordinary Unicode and malformed byte rejection."
              }
            ],
            "source_refs": [
              "REQ-174",
              "REQ-176",
              "TRK-164",
              ".prd_plugin/hooks/prd_reason_guard.py",
              "tests/test_reason_guard.py"
            ]
          },
          "output_hash": "4c450dc7e8293ffaf44058b2a476f3bb9fc39bd93e5177c2b3726fb8573754c1",
          "completed_at": "2026-07-25T12:48:11Z",
          "judgment_result": {
            "request_hash": "35d0deafb419d54db92094f710983e129598bade351c3a2adb34e570cf7164e1",
            "executor": "ai-collab",
            "profile": "fast-capable"
          }
        }
      ],
      "completed_at": "2026-07-25T12:48:11Z"
    },
    {
      "id": "WFR-455",
      "schema_version": "1.0",
      "workflow_id": "engineering.code-review",
      "workflow_version": 1,
      "definition_hash": "ad3df68a0ff3c3ede35fe5266dcfbffbe7b1ba3e8ada5fc4b9012db9f451212f",
      "plan_hash": "f59320b78cdc04d4a31c17044e3353a85381c3294ddc1564766f12473275d2e4",
      "input_hash": "b374b4babc930f642aa741f0550457ee3a2cf9494b96d62757e0615302818d4c",
      "inputs": {
        "base_ref": "0424254143314897b1781a5505347c6fdc1fc99e",
        "source_refs": [
          "REQ-174",
          "REQ-176",
          "TRK-164",
          "WFR-454",
          ".prd_plugin/hooks/prd_reason_guard.py",
          "tests/test_reason_guard.py",
          "docs/REASONING-GUARD.md"
        ]
      },
      "idempotency_key": "codex-20260725-req174-review",
      "status": "cancelled",
      "attempt": 1,
      "created_at": "2026-07-25T13:03:36Z",
      "updated_at": "2026-07-25T13:05:21Z",
      "receipts": [
        {
          "step_id": "diff",
          "action": "git.diff_check",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "11c11db30f4b3f6c758722ba3e27eea08145b7d212f6a157451e364b48475280",
          "completed_at": "2026-07-25T13:03:36Z"
        },
        {
          "step_id": "verification",
          "action": "verification.plan",
          "input_hash": "27e4e7c87d5e5e722620c7bfc2af153cac363ee98404204abf6fa6cfb0aac64b",
          "output_hash": "05686b260cb4b60694aa87b59b5500bf48c025bf057f265effa20a550ef818de",
          "completed_at": "2026-07-25T13:03:36Z"
        },
        {
          "step_id": "context",
          "action": "substrate.enrich",
          "input_hash": "27cb97ff61f573c157e504afefeef71f04056b262af5623eb33f8265b65cf50d",
          "output_hash": "f398b13af952c545c41db5e8520e4a3f7f15d5074b56673df8dac1c06e40c200",
          "completed_at": "2026-07-25T13:03:37Z"
        }
      ],
      "steps": [
        {
          "id": "diff",
          "action": "git.diff_check",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-25T13:03:36Z",
          "output": {
            "passed": true
          },
          "output_hash": "11c11db30f4b3f6c758722ba3e27eea08145b7d212f6a157451e364b48475280",
          "completed_at": "2026-07-25T13:03:36Z"
        },
        {
          "id": "verification",
          "action": "verification.plan",
          "status": "completed",
          "resolved_input_hash": "27e4e7c87d5e5e722620c7bfc2af153cac363ee98404204abf6fa6cfb0aac64b",
          "started_at": "2026-07-25T13:03:36Z",
          "output": {
            "schema_version": "1.0",
            "contract_version": 1,
            "executor": "ai-collab",
            "changed_files": [
              ".claude-plugin/marketplace.json",
              ".claude-plugin/plugin.json",
              ".codex-plugin/plugin.json",
              ".opencode/plugin.json",
              ".prd_plugin/drift/events.jsonl",
              ".prd_plugin/hooks/prd_reason_guard.py",
              ".prd_plugin/ids/registry.json",
              ".prd_plugin/state/releases.json",
              ".prd_plugin/state/requests.json",
              ".prd_plugin/state/tracking.json",
              ".prd_plugin/state/workflow-runs.json",
              "docs/REASONING-GUARD.md",
              "index.js",
              "mcp/server.cjs",
              "package-lock.json",
              "package.json",
              "templates/config.json",
              "templates/project.json",
              "templates/releases.json",
              "templates/repo-skeleton/.prd_plugin/hooks/prd_reason_guard.py",
              "tests/test_reason_guard.py",
              "wiki/hooks/claude-code-hooks.md",
              "wiki/hooks/reasoning-guard.md"
            ],
            "change_fingerprint": "66fe27a0623df8aa26c7db8a6f4d90cfced83d92ab7fb7ad060145f5d897d82f",
            "policy": {
              "enabled": true,
              "executor": "ai-collab",
              "neighbor_limit": 12,
              "max_changed_files": 25,
              "fallback": "full",
              "full_suite_triggers": [
                "release",
                "core_change",
                "impact_unavailable",
                "impact_degraded",
                "unmapped_change"
              ],
              "core_paths": [
                "package.json",
                "package-lock.json",
                "pyproject.toml",
                "Cargo.toml",
                "go.mod",
                ".github/workflows/**"
              ],
              "test_patterns": [
                "tests/**",
                "test/**",
                "spec/**",
                "**/*.test.*",
                "**/*.spec.*",
                "test_*.py",
                "*_test.py",
                "*_test.go",
                "**/test_*.py",
                "**/*_test.py",
                "**/*_test.go"
              ],
              "max_selected_tests": 200,
              "execution_timeout_seconds": 600,
              "focused_commands": [],
              "full_commands": [],
              "allowed_executables": [
                "python",
                "python3",
                "py",
                "pytest",
                "npm",
                "npx",
                "node",
                "go",
                "cargo",
                "dotnet",
                "mvn",
                "gradle",
                "gradlew",
                "make"
              ]
            },
            "selection_rules": {
              "precedence": [
                "exact_changed",
                "explicit_test_ownership",
                "structural_dependencies",
                "predictive_impact"
              ],
              "require_all_changed_files_mapped": true,
              "widen_before_full": true,
              "predictive_signal_is_sufficient_alone": false
            },
            "fallback": {
              "strategy": "full",
              "conditions": [
                "release",
                "core_change",
                "impact_unavailable",
                "impact_degraded",
                "unmapped_change"
              ]
            },
            "strategy": "full",
            "reason": "core_change",
            "runtime_requests": {},
            "plan_hash": "629a02b5b70891dcad6bfb615fab3f1436850384916bf207eca5a9bb0a4b61af"
          },
          "output_hash": "05686b260cb4b60694aa87b59b5500bf48c025bf057f265effa20a550ef818de",
          "completed_at": "2026-07-25T13:03:36Z"
        },
        {
          "id": "context",
          "action": "substrate.enrich",
          "status": "completed",
          "resolved_input_hash": "27cb97ff61f573c157e504afefeef71f04056b262af5623eb33f8265b65cf50d",
          "started_at": "2026-07-25T13:03:37Z",
          "output": {
            "status": "disabled",
            "results": [],
            "local_source_refs": [
              "REQ-174",
              "REQ-176",
              "TRK-164",
              "WFR-454",
              ".prd_plugin/hooks/prd_reason_guard.py",
              "tests/test_reason_guard.py",
              "docs/REASONING-GUARD.md"
            ]
          },
          "output_hash": "f398b13af952c545c41db5e8520e4a3f7f15d5074b56673df8dac1c06e40c200",
          "completed_at": "2026-07-25T13:03:37Z"
        },
        {
          "id": "review",
          "action": "judgment.request",
          "status": "waiting_judgment",
          "resolved_input_hash": "a5e662cf78602f872aa65438c459cca470e6a53fdcb34228d4408d5979f68c3d",
          "started_at": "2026-07-25T13:03:37Z",
          "judgment_request": {
            "contract_version": 1,
            "run_id": "WFR-455",
            "step_id": "review",
            "task": "code_review",
            "instructions": "Find material correctness, robustness, security, compatibility, or test gaps; do not restate mechanical facts.",
            "source_refs": [
              "REQ-174",
              "REQ-176",
              "TRK-164",
              "WFR-454",
              ".prd_plugin/hooks/prd_reason_guard.py",
              "tests/test_reason_guard.py",
              "docs/REASONING-GUARD.md"
            ],
            "source_hashes": {
              ".prd_plugin/hooks/prd_reason_guard.py": "dd1e11ab0f4226dc75176748446de02fde20e91e9e79ac92236288cac675c037",
              "tests/test_reason_guard.py": "49967f1638f6b86381d642cfd22608e0350f3995290e7eec9d5c34d8e9c2aa87",
              "docs/REASONING-GUARD.md": "c7cf212bca09fda8d06f4e92dcc96dd07f60cc11229911a9007d667a89faa069"
            },
            "result_schema": {
              "type": "object",
              "required": [
                "summary",
                "findings",
                "source_refs"
              ],
              "properties": {
                "summary": {
                  "type": "string"
                },
                "findings": {
                  "type": "array",
                  "items": {
                    "type": "object"
                  }
                },
                "source_refs": {
                  "type": "array",
                  "items": {
                    "type": "string"
                  }
                }
              }
            },
            "executor": "ai-collab",
            "profile": "fast-capable",
            "constraints": {
              "no_project_state_writes": true,
              "require_source_refs": true
            },
            "request_hash": "d56f20cc3f47b964180bdf13f6e07118c5126f039c04db42ac3f73a67c0fd2ca"
          }
        }
      ],
      "pending_judgment": {
        "contract_version": 1,
        "run_id": "WFR-455",
        "step_id": "review",
        "task": "code_review",
        "instructions": "Find material correctness, robustness, security, compatibility, or test gaps; do not restate mechanical facts.",
        "source_refs": [
          "REQ-174",
          "REQ-176",
          "TRK-164",
          "WFR-454",
          ".prd_plugin/hooks/prd_reason_guard.py",
          "tests/test_reason_guard.py",
          "docs/REASONING-GUARD.md"
        ],
        "source_hashes": {
          ".prd_plugin/hooks/prd_reason_guard.py": "dd1e11ab0f4226dc75176748446de02fde20e91e9e79ac92236288cac675c037",
          "tests/test_reason_guard.py": "49967f1638f6b86381d642cfd22608e0350f3995290e7eec9d5c34d8e9c2aa87",
          "docs/REASONING-GUARD.md": "c7cf212bca09fda8d06f4e92dcc96dd07f60cc11229911a9007d667a89faa069"
        },
        "result_schema": {
          "type": "object",
          "required": [
            "summary",
            "findings",
            "source_refs"
          ],
          "properties": {
            "summary": {
              "type": "string"
            },
            "findings": {
              "type": "array",
              "items": {
                "type": "object"
              }
            },
            "source_refs": {
              "type": "array",
              "items": {
                "type": "string"
              }
            }
          }
        },
        "executor": "ai-collab",
        "profile": "fast-capable",
        "constraints": {
          "no_project_state_writes": true,
          "require_source_refs": true
        },
        "request_hash": "d56f20cc3f47b964180bdf13f6e07118c5126f039c04db42ac3f73a67c0fd2ca"
      },
      "cancelled_at": "2026-07-25T13:05:21Z",
      "cancel_reason": "Source changed after review exposed a conclusion-led false-positive gap; superseded by fresh review."
    },
    {
      "id": "WFR-456",
      "schema_version": "1.0",
      "workflow_id": "engineering.code-review",
      "workflow_version": 1,
      "definition_hash": "ad3df68a0ff3c3ede35fe5266dcfbffbe7b1ba3e8ada5fc4b9012db9f451212f",
      "plan_hash": "f59320b78cdc04d4a31c17044e3353a85381c3294ddc1564766f12473275d2e4",
      "input_hash": "b374b4babc930f642aa741f0550457ee3a2cf9494b96d62757e0615302818d4c",
      "inputs": {
        "base_ref": "0424254143314897b1781a5505347c6fdc1fc99e",
        "source_refs": [
          "REQ-174",
          "REQ-176",
          "TRK-164",
          "WFR-454",
          ".prd_plugin/hooks/prd_reason_guard.py",
          "tests/test_reason_guard.py",
          "docs/REASONING-GUARD.md"
        ]
      },
      "idempotency_key": "codex-20260725-req174-review-v2",
      "status": "cancelled",
      "attempt": 1,
      "created_at": "2026-07-25T13:05:21Z",
      "updated_at": "2026-07-25T13:10:06Z",
      "receipts": [
        {
          "step_id": "diff",
          "action": "git.diff_check",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "11c11db30f4b3f6c758722ba3e27eea08145b7d212f6a157451e364b48475280",
          "completed_at": "2026-07-25T13:05:22Z"
        },
        {
          "step_id": "verification",
          "action": "verification.plan",
          "input_hash": "27e4e7c87d5e5e722620c7bfc2af153cac363ee98404204abf6fa6cfb0aac64b",
          "output_hash": "05686b260cb4b60694aa87b59b5500bf48c025bf057f265effa20a550ef818de",
          "completed_at": "2026-07-25T13:05:22Z"
        },
        {
          "step_id": "context",
          "action": "substrate.enrich",
          "input_hash": "27cb97ff61f573c157e504afefeef71f04056b262af5623eb33f8265b65cf50d",
          "output_hash": "f398b13af952c545c41db5e8520e4a3f7f15d5074b56673df8dac1c06e40c200",
          "completed_at": "2026-07-25T13:05:22Z"
        }
      ],
      "steps": [
        {
          "id": "diff",
          "action": "git.diff_check",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-25T13:05:21Z",
          "output": {
            "passed": true
          },
          "output_hash": "11c11db30f4b3f6c758722ba3e27eea08145b7d212f6a157451e364b48475280",
          "completed_at": "2026-07-25T13:05:22Z"
        },
        {
          "id": "verification",
          "action": "verification.plan",
          "status": "completed",
          "resolved_input_hash": "27e4e7c87d5e5e722620c7bfc2af153cac363ee98404204abf6fa6cfb0aac64b",
          "started_at": "2026-07-25T13:05:22Z",
          "output": {
            "schema_version": "1.0",
            "contract_version": 1,
            "executor": "ai-collab",
            "changed_files": [
              ".claude-plugin/marketplace.json",
              ".claude-plugin/plugin.json",
              ".codex-plugin/plugin.json",
              ".opencode/plugin.json",
              ".prd_plugin/drift/events.jsonl",
              ".prd_plugin/hooks/prd_reason_guard.py",
              ".prd_plugin/ids/registry.json",
              ".prd_plugin/state/releases.json",
              ".prd_plugin/state/requests.json",
              ".prd_plugin/state/tracking.json",
              ".prd_plugin/state/workflow-runs.json",
              "docs/REASONING-GUARD.md",
              "index.js",
              "mcp/server.cjs",
              "package-lock.json",
              "package.json",
              "templates/config.json",
              "templates/project.json",
              "templates/releases.json",
              "templates/repo-skeleton/.prd_plugin/hooks/prd_reason_guard.py",
              "tests/test_reason_guard.py",
              "wiki/hooks/claude-code-hooks.md",
              "wiki/hooks/reasoning-guard.md"
            ],
            "change_fingerprint": "66fe27a0623df8aa26c7db8a6f4d90cfced83d92ab7fb7ad060145f5d897d82f",
            "policy": {
              "enabled": true,
              "executor": "ai-collab",
              "neighbor_limit": 12,
              "max_changed_files": 25,
              "fallback": "full",
              "full_suite_triggers": [
                "release",
                "core_change",
                "impact_unavailable",
                "impact_degraded",
                "unmapped_change"
              ],
              "core_paths": [
                "package.json",
                "package-lock.json",
                "pyproject.toml",
                "Cargo.toml",
                "go.mod",
                ".github/workflows/**"
              ],
              "test_patterns": [
                "tests/**",
                "test/**",
                "spec/**",
                "**/*.test.*",
                "**/*.spec.*",
                "test_*.py",
                "*_test.py",
                "*_test.go",
                "**/test_*.py",
                "**/*_test.py",
                "**/*_test.go"
              ],
              "max_selected_tests": 200,
              "execution_timeout_seconds": 600,
              "focused_commands": [],
              "full_commands": [],
              "allowed_executables": [
                "python",
                "python3",
                "py",
                "pytest",
                "npm",
                "npx",
                "node",
                "go",
                "cargo",
                "dotnet",
                "mvn",
                "gradle",
                "gradlew",
                "make"
              ]
            },
            "selection_rules": {
              "precedence": [
                "exact_changed",
                "explicit_test_ownership",
                "structural_dependencies",
                "predictive_impact"
              ],
              "require_all_changed_files_mapped": true,
              "widen_before_full": true,
              "predictive_signal_is_sufficient_alone": false
            },
            "fallback": {
              "strategy": "full",
              "conditions": [
                "release",
                "core_change",
                "impact_unavailable",
                "impact_degraded",
                "unmapped_change"
              ]
            },
            "strategy": "full",
            "reason": "core_change",
            "runtime_requests": {},
            "plan_hash": "629a02b5b70891dcad6bfb615fab3f1436850384916bf207eca5a9bb0a4b61af"
          },
          "output_hash": "05686b260cb4b60694aa87b59b5500bf48c025bf057f265effa20a550ef818de",
          "completed_at": "2026-07-25T13:05:22Z"
        },
        {
          "id": "context",
          "action": "substrate.enrich",
          "status": "completed",
          "resolved_input_hash": "27cb97ff61f573c157e504afefeef71f04056b262af5623eb33f8265b65cf50d",
          "started_at": "2026-07-25T13:05:22Z",
          "output": {
            "status": "disabled",
            "results": [],
            "local_source_refs": [
              "REQ-174",
              "REQ-176",
              "TRK-164",
              "WFR-454",
              ".prd_plugin/hooks/prd_reason_guard.py",
              "tests/test_reason_guard.py",
              "docs/REASONING-GUARD.md"
            ]
          },
          "output_hash": "f398b13af952c545c41db5e8520e4a3f7f15d5074b56673df8dac1c06e40c200",
          "completed_at": "2026-07-25T13:05:22Z"
        },
        {
          "id": "review",
          "action": "judgment.request",
          "status": "waiting_judgment",
          "resolved_input_hash": "a5e662cf78602f872aa65438c459cca470e6a53fdcb34228d4408d5979f68c3d",
          "started_at": "2026-07-25T13:05:22Z",
          "judgment_request": {
            "contract_version": 1,
            "run_id": "WFR-456",
            "step_id": "review",
            "task": "code_review",
            "instructions": "Find material correctness, robustness, security, compatibility, or test gaps; do not restate mechanical facts.",
            "source_refs": [
              "REQ-174",
              "REQ-176",
              "TRK-164",
              "WFR-454",
              ".prd_plugin/hooks/prd_reason_guard.py",
              "tests/test_reason_guard.py",
              "docs/REASONING-GUARD.md"
            ],
            "source_hashes": {
              ".prd_plugin/hooks/prd_reason_guard.py": "fd5dc1f9e4c1ea8605ab1e826aa4e7cbe8bf12dc312f4d8853308270ceaa6fb4",
              "tests/test_reason_guard.py": "13a075f718e040998db252c9789413caa3a5860fb060ef5fc6a2247f23e3e398",
              "docs/REASONING-GUARD.md": "c7cf212bca09fda8d06f4e92dcc96dd07f60cc11229911a9007d667a89faa069"
            },
            "result_schema": {
              "type": "object",
              "required": [
                "summary",
                "findings",
                "source_refs"
              ],
              "properties": {
                "summary": {
                  "type": "string"
                },
                "findings": {
                  "type": "array",
                  "items": {
                    "type": "object"
                  }
                },
                "source_refs": {
                  "type": "array",
                  "items": {
                    "type": "string"
                  }
                }
              }
            },
            "executor": "ai-collab",
            "profile": "fast-capable",
            "constraints": {
              "no_project_state_writes": true,
              "require_source_refs": true
            },
            "request_hash": "0817729a335d4f225dc711b91709491d051769a8c69b7fd7540ce82bf760f983"
          }
        }
      ],
      "pending_judgment": {
        "contract_version": 1,
        "run_id": "WFR-456",
        "step_id": "review",
        "task": "code_review",
        "instructions": "Find material correctness, robustness, security, compatibility, or test gaps; do not restate mechanical facts.",
        "source_refs": [
          "REQ-174",
          "REQ-176",
          "TRK-164",
          "WFR-454",
          ".prd_plugin/hooks/prd_reason_guard.py",
          "tests/test_reason_guard.py",
          "docs/REASONING-GUARD.md"
        ],
        "source_hashes": {
          ".prd_plugin/hooks/prd_reason_guard.py": "fd5dc1f9e4c1ea8605ab1e826aa4e7cbe8bf12dc312f4d8853308270ceaa6fb4",
          "tests/test_reason_guard.py": "13a075f718e040998db252c9789413caa3a5860fb060ef5fc6a2247f23e3e398",
          "docs/REASONING-GUARD.md": "c7cf212bca09fda8d06f4e92dcc96dd07f60cc11229911a9007d667a89faa069"
        },
        "result_schema": {
          "type": "object",
          "required": [
            "summary",
            "findings",
            "source_refs"
          ],
          "properties": {
            "summary": {
              "type": "string"
            },
            "findings": {
              "type": "array",
              "items": {
                "type": "object"
              }
            },
            "source_refs": {
              "type": "array",
              "items": {
                "type": "string"
              }
            }
          }
        },
        "executor": "ai-collab",
        "profile": "fast-capable",
        "constraints": {
          "no_project_state_writes": true,
          "require_source_refs": true
        },
        "request_hash": "0817729a335d4f225dc711b91709491d051769a8c69b7fd7540ce82bf760f983"
      },
      "cancelled_at": "2026-07-25T13:10:06Z",
      "cancel_reason": "Review identified a cross-clause alternatives fallback; source changed after the regression test and bounded fix."
    },
    {
      "id": "WFR-457",
      "schema_version": "1.0",
      "workflow_id": "engineering.code-review",
      "workflow_version": 1,
      "definition_hash": "ad3df68a0ff3c3ede35fe5266dcfbffbe7b1ba3e8ada5fc4b9012db9f451212f",
      "plan_hash": "f59320b78cdc04d4a31c17044e3353a85381c3294ddc1564766f12473275d2e4",
      "input_hash": "b374b4babc930f642aa741f0550457ee3a2cf9494b96d62757e0615302818d4c",
      "inputs": {
        "base_ref": "0424254143314897b1781a5505347c6fdc1fc99e",
        "source_refs": [
          "REQ-174",
          "REQ-176",
          "TRK-164",
          "WFR-454",
          ".prd_plugin/hooks/prd_reason_guard.py",
          "tests/test_reason_guard.py",
          "docs/REASONING-GUARD.md"
        ]
      },
      "idempotency_key": "codex-20260725-req174-review-v3",
      "status": "completed",
      "attempt": 2,
      "created_at": "2026-07-25T13:10:14Z",
      "updated_at": "2026-07-25T13:11:36Z",
      "receipts": [
        {
          "step_id": "diff",
          "action": "git.diff_check",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "11c11db30f4b3f6c758722ba3e27eea08145b7d212f6a157451e364b48475280",
          "completed_at": "2026-07-25T13:10:14Z"
        },
        {
          "step_id": "verification",
          "action": "verification.plan",
          "input_hash": "27e4e7c87d5e5e722620c7bfc2af153cac363ee98404204abf6fa6cfb0aac64b",
          "output_hash": "05686b260cb4b60694aa87b59b5500bf48c025bf057f265effa20a550ef818de",
          "completed_at": "2026-07-25T13:10:15Z"
        },
        {
          "step_id": "context",
          "action": "substrate.enrich",
          "input_hash": "27cb97ff61f573c157e504afefeef71f04056b262af5623eb33f8265b65cf50d",
          "output_hash": "f398b13af952c545c41db5e8520e4a3f7f15d5074b56673df8dac1c06e40c200",
          "completed_at": "2026-07-25T13:10:25Z"
        },
        {
          "step_id": "review",
          "action": "judgment.request",
          "input_hash": "a5e662cf78602f872aa65438c459cca470e6a53fdcb34228d4408d5979f68c3d",
          "output_hash": "a793bab6661984776f83b522ce6d4eb3eb383602a2e2ff53cfa356c788f661b5",
          "request_hash": "6edb85a434a19beb97a8e8491ac90fb048a0d7349bda521ec83d3bed6f5eda5a",
          "completed_at": "2026-07-25T13:11:36Z"
        }
      ],
      "steps": [
        {
          "id": "diff",
          "action": "git.diff_check",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-25T13:10:14Z",
          "output": {
            "passed": true
          },
          "output_hash": "11c11db30f4b3f6c758722ba3e27eea08145b7d212f6a157451e364b48475280",
          "completed_at": "2026-07-25T13:10:14Z"
        },
        {
          "id": "verification",
          "action": "verification.plan",
          "status": "completed",
          "resolved_input_hash": "27e4e7c87d5e5e722620c7bfc2af153cac363ee98404204abf6fa6cfb0aac64b",
          "started_at": "2026-07-25T13:10:14Z",
          "output": {
            "schema_version": "1.0",
            "contract_version": 1,
            "executor": "ai-collab",
            "changed_files": [
              ".claude-plugin/marketplace.json",
              ".claude-plugin/plugin.json",
              ".codex-plugin/plugin.json",
              ".opencode/plugin.json",
              ".prd_plugin/drift/events.jsonl",
              ".prd_plugin/hooks/prd_reason_guard.py",
              ".prd_plugin/ids/registry.json",
              ".prd_plugin/state/releases.json",
              ".prd_plugin/state/requests.json",
              ".prd_plugin/state/tracking.json",
              ".prd_plugin/state/workflow-runs.json",
              "docs/REASONING-GUARD.md",
              "index.js",
              "mcp/server.cjs",
              "package-lock.json",
              "package.json",
              "templates/config.json",
              "templates/project.json",
              "templates/releases.json",
              "templates/repo-skeleton/.prd_plugin/hooks/prd_reason_guard.py",
              "tests/test_reason_guard.py",
              "wiki/hooks/claude-code-hooks.md",
              "wiki/hooks/reasoning-guard.md"
            ],
            "change_fingerprint": "66fe27a0623df8aa26c7db8a6f4d90cfced83d92ab7fb7ad060145f5d897d82f",
            "policy": {
              "enabled": true,
              "executor": "ai-collab",
              "neighbor_limit": 12,
              "max_changed_files": 25,
              "fallback": "full",
              "full_suite_triggers": [
                "release",
                "core_change",
                "impact_unavailable",
                "impact_degraded",
                "unmapped_change"
              ],
              "core_paths": [
                "package.json",
                "package-lock.json",
                "pyproject.toml",
                "Cargo.toml",
                "go.mod",
                ".github/workflows/**"
              ],
              "test_patterns": [
                "tests/**",
                "test/**",
                "spec/**",
                "**/*.test.*",
                "**/*.spec.*",
                "test_*.py",
                "*_test.py",
                "*_test.go",
                "**/test_*.py",
                "**/*_test.py",
                "**/*_test.go"
              ],
              "max_selected_tests": 200,
              "execution_timeout_seconds": 600,
              "focused_commands": [],
              "full_commands": [],
              "allowed_executables": [
                "python",
                "python3",
                "py",
                "pytest",
                "npm",
                "npx",
                "node",
                "go",
                "cargo",
                "dotnet",
                "mvn",
                "gradle",
                "gradlew",
                "make"
              ]
            },
            "selection_rules": {
              "precedence": [
                "exact_changed",
                "explicit_test_ownership",
                "structural_dependencies",
                "predictive_impact"
              ],
              "require_all_changed_files_mapped": true,
              "widen_before_full": true,
              "predictive_signal_is_sufficient_alone": false
            },
            "fallback": {
              "strategy": "full",
              "conditions": [
                "release",
                "core_change",
                "impact_unavailable",
                "impact_degraded",
                "unmapped_change"
              ]
            },
            "strategy": "full",
            "reason": "core_change",
            "runtime_requests": {},
            "plan_hash": "629a02b5b70891dcad6bfb615fab3f1436850384916bf207eca5a9bb0a4b61af"
          },
          "output_hash": "05686b260cb4b60694aa87b59b5500bf48c025bf057f265effa20a550ef818de",
          "completed_at": "2026-07-25T13:10:15Z"
        },
        {
          "id": "context",
          "action": "substrate.enrich",
          "status": "completed",
          "resolved_input_hash": "27cb97ff61f573c157e504afefeef71f04056b262af5623eb33f8265b65cf50d",
          "started_at": "2026-07-25T13:10:25Z",
          "output": {
            "status": "disabled",
            "results": [],
            "local_source_refs": [
              "REQ-174",
              "REQ-176",
              "TRK-164",
              "WFR-454",
              ".prd_plugin/hooks/prd_reason_guard.py",
              "tests/test_reason_guard.py",
              "docs/REASONING-GUARD.md"
            ]
          },
          "output_hash": "f398b13af952c545c41db5e8520e4a3f7f15d5074b56673df8dac1c06e40c200",
          "completed_at": "2026-07-25T13:10:25Z"
        },
        {
          "id": "review",
          "action": "judgment.request",
          "status": "completed",
          "resolved_input_hash": "a5e662cf78602f872aa65438c459cca470e6a53fdcb34228d4408d5979f68c3d",
          "started_at": "2026-07-25T13:10:26Z",
          "judgment_request": {
            "contract_version": 1,
            "run_id": "WFR-457",
            "step_id": "review",
            "task": "code_review",
            "instructions": "Find material correctness, robustness, security, compatibility, or test gaps; do not restate mechanical facts.",
            "source_refs": [
              "REQ-174",
              "REQ-176",
              "TRK-164",
              "WFR-454",
              ".prd_plugin/hooks/prd_reason_guard.py",
              "tests/test_reason_guard.py",
              "docs/REASONING-GUARD.md"
            ],
            "source_hashes": {
              ".prd_plugin/hooks/prd_reason_guard.py": "1581692b12f8c0fd1a27cfded589b726ad6b56c253debdd2b120fb971d797393",
              "tests/test_reason_guard.py": "28d83f883f60092a012e9f2aa2a812a908df4823bd6dc1e47475705aae534ee9",
              "docs/REASONING-GUARD.md": "c7cf212bca09fda8d06f4e92dcc96dd07f60cc11229911a9007d667a89faa069"
            },
            "result_schema": {
              "type": "object",
              "required": [
                "summary",
                "findings",
                "source_refs"
              ],
              "properties": {
                "summary": {
                  "type": "string"
                },
                "findings": {
                  "type": "array",
                  "items": {
                    "type": "object"
                  }
                },
                "source_refs": {
                  "type": "array",
                  "items": {
                    "type": "string"
                  }
                }
              }
            },
            "executor": "ai-collab",
            "profile": "fast-capable",
            "constraints": {
              "no_project_state_writes": true,
              "require_source_refs": true
            },
            "request_hash": "6edb85a434a19beb97a8e8491ac90fb048a0d7349bda521ec83d3bed6f5eda5a"
          },
          "output": {
            "summary": "No material correctness, robustness, security, compatibility, or test gaps remain in the reviewed source. Clause-local candidate classification now rejects the reproduced cross-sentence narration cases while retaining the existing semicolon-linked alternatives lifecycle; inferred evidence requires same-session action and subject affinity with exact tool-result binding when an ID is present; diagnostic counts follow obligation-state transitions; and Claude normalization is conservative and bounded before sanitization and hashing.",
            "findings": [],
            "source_refs": [
              "REQ-174",
              "REQ-176",
              "TRK-164",
              "WFR-454",
              ".prd_plugin/hooks/prd_reason_guard.py",
              "tests/test_reason_guard.py",
              "docs/REASONING-GUARD.md"
            ]
          },
          "output_hash": "a793bab6661984776f83b522ce6d4eb3eb383602a2e2ff53cfa356c788f661b5",
          "completed_at": "2026-07-25T13:11:36Z",
          "judgment_result": {
            "request_hash": "6edb85a434a19beb97a8e8491ac90fb048a0d7349bda521ec83d3bed6f5eda5a",
            "executor": "ai-collab",
            "profile": "fast-capable"
          }
        }
      ],
      "completed_at": "2026-07-25T13:11:36Z"
    },
    {
      "id": "WFR-458",
      "schema_version": "1.0",
      "workflow_id": "hub.release",
      "workflow_version": 1,
      "definition_hash": "ab6ae2afcb0128db8d994b6b397e543c7490017bd3d1b15309079edc6be94d9a",
      "plan_hash": "02bcb9cb71ca5641cc12e6270fee67758c0051b183e4204137993cd57b89a7bd",
      "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
      "inputs": {},
      "idempotency_key": "codex-20260725-v01661-release-v1",
      "status": "failed",
      "attempt": 1,
      "created_at": "2026-07-25T13:14:29Z",
      "updated_at": "2026-07-25T13:16:33Z",
      "receipts": [
        {
          "step_id": "diff",
          "action": "git.diff_check",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "11c11db30f4b3f6c758722ba3e27eea08145b7d212f6a157451e364b48475280",
          "completed_at": "2026-07-25T13:14:29Z"
        },
        {
          "step_id": "config",
          "action": "config.audit",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "9cbf27cbac0de8a8eb0ed2dd07eae4f75908186aa645194b551c48f999ebb1b5",
          "completed_at": "2026-07-25T13:14:30Z"
        },
        {
          "step_id": "state",
          "action": "state.consistency",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "9963110856ca8182da0dfdbb22f6960618b55dbc121be0dce0066a7c7a389b10",
          "completed_at": "2026-07-25T13:14:31Z"
        },
        {
          "step_id": "workflow_audit",
          "action": "process.fixed",
          "input_hash": "edf19b269a54d72753f1abc2b8ffcb810c2b7bc377cee7e1698c939f17e0be94",
          "output_hash": "231b43ed70e09c4e7cbcda1094b00e0274dd4a22ff8324da2eb907f705c1316a",
          "completed_at": "2026-07-25T13:14:31Z"
        },
        {
          "step_id": "substrate_audit",
          "action": "process.fixed",
          "input_hash": "4998f71d2d3f6ac7dd50e10d37f60ae32d54898949950e484da9de113e18a979",
          "output_hash": "4176fd7e9d2d33bd61e5fd6bb8d392a63eaa5b2cb65b750eeb348b9dd55fe220",
          "completed_at": "2026-07-25T13:14:31Z"
        }
      ],
      "steps": [
        {
          "id": "diff",
          "action": "git.diff_check",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-25T13:14:29Z",
          "output": {
            "passed": true
          },
          "output_hash": "11c11db30f4b3f6c758722ba3e27eea08145b7d212f6a157451e364b48475280",
          "completed_at": "2026-07-25T13:14:29Z"
        },
        {
          "id": "config",
          "action": "config.audit",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-25T13:14:30Z",
          "output": {
            "status": "ok",
            "summary": {
              "settings": 216,
              "mutable": 206,
              "read_only_or_managed": 10,
              "unclassified": 0,
              "unknown": 0,
              "invalid": 0,
              "missing_using_defaults": 0
            },
            "unclassified_keys": [],
            "unknown_keys": [],
            "invalid_values": [],
            "missing_using_defaults": []
          },
          "output_hash": "9cbf27cbac0de8a8eb0ed2dd07eae4f75908186aa645194b551c48f999ebb1b5",
          "completed_at": "2026-07-25T13:14:30Z"
        },
        {
          "id": "state",
          "action": "state.consistency",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-25T13:14:30Z",
          "output": {
            "status": "ok",
            "repo_root": "D:\\Projects\\prd-plugin",
            "summary": {
              "errors": 0,
              "warnings": 0,
              "infos": 1
            },
            "findings": [
              {
                "id": "CONS-INFO-001",
                "severity": "info",
                "path": "docs/evidence/EV-200.md",
                "summary": "File references 2 canonical IDs across 2 prefix(es); treated as a positive signal of extra work.",
                "referenced_prefixes": [
                  "CHG",
                  "TRK"
                ],
                "referenced_id_count": 2,
                "required_action": "No action required; this is an informational signal."
              }
            ]
          },
          "output_hash": "9963110856ca8182da0dfdbb22f6960618b55dbc121be0dce0066a7c7a389b10",
          "completed_at": "2026-07-25T13:14:31Z"
        },
        {
          "id": "workflow_audit",
          "action": "process.fixed",
          "status": "completed",
          "resolved_input_hash": "edf19b269a54d72753f1abc2b8ffcb810c2b7bc377cee7e1698c939f17e0be94",
          "started_at": "2026-07-25T13:14:31Z",
          "output": {
            "operation": "workflow_chml_audit",
            "command": [
              "python",
              "scripts/workflow_chml_audit.py",
              "--repo-root",
              ".",
              "--format",
              "json"
            ],
            "exit_code": 0,
            "stdout": "{\n  \"status\": \"ok\",\n  \"repo_root\": \"D:\\\\Projects\\\\prd-plugin\",\n  \"summary\": {\n    \"critical\": 0,\n    \"high\": 0,\n    \"medium\": 0,\n    \"low\": 0\n  },\n  \"findings\": []\n}\n",
            "stderr": ""
          },
          "output_hash": "231b43ed70e09c4e7cbcda1094b00e0274dd4a22ff8324da2eb907f705c1316a",
          "completed_at": "2026-07-25T13:14:31Z"
        },
        {
          "id": "substrate_audit",
          "action": "process.fixed",
          "status": "completed",
          "resolved_input_hash": "4998f71d2d3f6ac7dd50e10d37f60ae32d54898949950e484da9de113e18a979",
          "started_at": "2026-07-25T13:14:31Z",
          "output": {
            "operation": "substrate_capability_audit",
            "command": [
              "python",
              "scripts/prd_substrate_catalog.py",
              "--repo-root",
              ".",
              "audit"
            ],
            "exit_code": 0,
            "stdout": "{\n  \"status\": \"ok\",\n  \"schema_version\": \"1.0\",\n  \"capability_count\": 26,\n  \"runtime_tool_count\": 103,\n  \"intent_count\": 31,\n  \"summary\": {\n    \"critical\": 0,\n    \"high\": 0,\n    \"medium\": 0,\n    \"low\": 0\n  },\n  \"findings\": []\n}\n",
            "stderr": ""
          },
          "output_hash": "4176fd7e9d2d33bd61e5fd6bb8d392a63eaa5b2cb65b750eeb348b9dd55fe220",
          "completed_at": "2026-07-25T13:14:31Z"
        },
        {
          "id": "suite",
          "action": "process.fixed",
          "status": "failed",
          "resolved_input_hash": "954e575e48145853f5681eda189186c95a053267158fae669114320f2e53794a",
          "started_at": "2026-07-25T13:14:31Z"
        },
        {
          "id": "release",
          "action": "process.fixed",
          "status": "pending"
        },
        {
          "id": "gaps",
          "action": "process.fixed",
          "status": "pending"
        },
        {
          "id": "package",
          "action": "process.fixed",
          "status": "pending"
        },
        {
          "id": "gate",
          "action": "state.gate",
          "status": "pending"
        }
      ],
      "error": {
        "type": "ActionError",
        "message": "fixed operation local_workflow_check failed (1): manifest.SkillsManifestTests.test_committed_manifest_matches_generated)\nThe manifest cannot lag the skills � regenerate on any skill change:\n----------------------------------------------------------------------\nTraceback (most recent call last):\n  File \"D:\\Projects\\prd-plugin\\tests\\test_skills_manifest.py\", line 27, in test_committed_manifest_matches_generated\n    self.assertEqual(committed, build_manifest(ROOT))\n    ~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\nAssertionError: {'sch[41 chars].16.60', 'skill_count': 44, 'bundle_sha256': '[8971 chars] 1}}} != {'sch[41 chars].16.61', 'skill_count': 44, 'bundle_sha256': '[8971 chars] 1}}}\nDiff is 13495 characters long. Set self.maxDiff to None to see it.\n\n----------------------------------------------------------------------\nRan 1294 tests in 118.502s\n\nFAILED (failures=5)\nLocal workflow check failed:\n- exit 1: python -m unittest discover -s tests -v\n- exit 1: python scripts/release_check.py --output request-report/release-hygiene.md"
      }
    },
    {
      "id": "WFR-459",
      "schema_version": "1.0",
      "workflow_id": "hub.release",
      "workflow_version": 1,
      "definition_hash": "ab6ae2afcb0128db8d994b6b397e543c7490017bd3d1b15309079edc6be94d9a",
      "plan_hash": "02bcb9cb71ca5641cc12e6270fee67758c0051b183e4204137993cd57b89a7bd",
      "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
      "inputs": {},
      "idempotency_key": "codex-20260725-v01661-release-v2",
      "status": "completed",
      "attempt": 3,
      "created_at": "2026-07-25T13:15:20Z",
      "updated_at": "2026-07-25T13:25:53Z",
      "receipts": [
        {
          "step_id": "diff",
          "action": "git.diff_check",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "11c11db30f4b3f6c758722ba3e27eea08145b7d212f6a157451e364b48475280",
          "completed_at": "2026-07-25T13:15:20Z"
        },
        {
          "step_id": "config",
          "action": "config.audit",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "9cbf27cbac0de8a8eb0ed2dd07eae4f75908186aa645194b551c48f999ebb1b5",
          "completed_at": "2026-07-25T13:15:20Z"
        },
        {
          "step_id": "state",
          "action": "state.consistency",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "9963110856ca8182da0dfdbb22f6960618b55dbc121be0dce0066a7c7a389b10",
          "completed_at": "2026-07-25T13:15:21Z"
        },
        {
          "step_id": "workflow_audit",
          "action": "process.fixed",
          "input_hash": "edf19b269a54d72753f1abc2b8ffcb810c2b7bc377cee7e1698c939f17e0be94",
          "output_hash": "231b43ed70e09c4e7cbcda1094b00e0274dd4a22ff8324da2eb907f705c1316a",
          "completed_at": "2026-07-25T13:15:22Z"
        },
        {
          "step_id": "substrate_audit",
          "action": "process.fixed",
          "input_hash": "4998f71d2d3f6ac7dd50e10d37f60ae32d54898949950e484da9de113e18a979",
          "output_hash": "4176fd7e9d2d33bd61e5fd6bb8d392a63eaa5b2cb65b750eeb348b9dd55fe220",
          "completed_at": "2026-07-25T13:15:22Z"
        },
        {
          "step_id": "suite",
          "action": "process.fixed",
          "input_hash": "954e575e48145853f5681eda189186c95a053267158fae669114320f2e53794a",
          "output_hash": "246db079b45f00537ea8b32d828cd9fcbe318f40bade5757dc8eb298a6a83124",
          "completed_at": "2026-07-25T13:25:49Z"
        },
        {
          "step_id": "release",
          "action": "process.fixed",
          "input_hash": "1e5b0c18d93eb4c2248f9a00adbd438e52f3ef02137477fb8376c69cfe86fc9b",
          "output_hash": "7863fd29074d307289cf69dff268bd691a55e33fa665018ce86cd0528e86e1a9",
          "completed_at": "2026-07-25T13:25:49Z"
        },
        {
          "step_id": "gaps",
          "action": "process.fixed",
          "input_hash": "577241909238eeb55683f89d2d2216648dad2e3127397993e22493829a1307a4",
          "output_hash": "a1d30ab8da6d59cafe6c47133009d0fe8843e993358a69a64264944ad3071960",
          "completed_at": "2026-07-25T13:25:49Z"
        },
        {
          "step_id": "package",
          "action": "process.fixed",
          "input_hash": "06cd12e1f3db3d985f9150520afa60f288297ff0ca01a8e813e9bb6291aa8836",
          "output_hash": "26955fe8782ae1f432d56794046f2e8d775b30edfd4a01a341367b7e8079e0db",
          "completed_at": "2026-07-25T13:25:52Z"
        },
        {
          "step_id": "gate",
          "action": "state.gate",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "6a0ed3d65779be265214a0e8395ab03978b9f7b91da9ffb59b257b73f82d087d",
          "completed_at": "2026-07-25T13:25:53Z"
        }
      ],
      "steps": [
        {
          "id": "diff",
          "action": "git.diff_check",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-25T13:15:20Z",
          "output": {
            "passed": true
          },
          "output_hash": "11c11db30f4b3f6c758722ba3e27eea08145b7d212f6a157451e364b48475280",
          "completed_at": "2026-07-25T13:15:20Z"
        },
        {
          "id": "config",
          "action": "config.audit",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-25T13:15:20Z",
          "output": {
            "status": "ok",
            "summary": {
              "settings": 216,
              "mutable": 206,
              "read_only_or_managed": 10,
              "unclassified": 0,
              "unknown": 0,
              "invalid": 0,
              "missing_using_defaults": 0
            },
            "unclassified_keys": [],
            "unknown_keys": [],
            "invalid_values": [],
            "missing_using_defaults": []
          },
          "output_hash": "9cbf27cbac0de8a8eb0ed2dd07eae4f75908186aa645194b551c48f999ebb1b5",
          "completed_at": "2026-07-25T13:15:20Z"
        },
        {
          "id": "state",
          "action": "state.consistency",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-25T13:15:20Z",
          "output": {
            "status": "ok",
            "repo_root": "D:\\Projects\\prd-plugin",
            "summary": {
              "errors": 0,
              "warnings": 0,
              "infos": 1
            },
            "findings": [
              {
                "id": "CONS-INFO-001",
                "severity": "info",
                "path": "docs/evidence/EV-200.md",
                "summary": "File references 2 canonical IDs across 2 prefix(es); treated as a positive signal of extra work.",
                "referenced_prefixes": [
                  "CHG",
                  "TRK"
                ],
                "referenced_id_count": 2,
                "required_action": "No action required; this is an informational signal."
              }
            ]
          },
          "output_hash": "9963110856ca8182da0dfdbb22f6960618b55dbc121be0dce0066a7c7a389b10",
          "completed_at": "2026-07-25T13:15:21Z"
        },
        {
          "id": "workflow_audit",
          "action": "process.fixed",
          "status": "completed",
          "resolved_input_hash": "edf19b269a54d72753f1abc2b8ffcb810c2b7bc377cee7e1698c939f17e0be94",
          "started_at": "2026-07-25T13:15:21Z",
          "output": {
            "operation": "workflow_chml_audit",
            "command": [
              "python",
              "scripts/workflow_chml_audit.py",
              "--repo-root",
              ".",
              "--format",
              "json"
            ],
            "exit_code": 0,
            "stdout": "{\n  \"status\": \"ok\",\n  \"repo_root\": \"D:\\\\Projects\\\\prd-plugin\",\n  \"summary\": {\n    \"critical\": 0,\n    \"high\": 0,\n    \"medium\": 0,\n    \"low\": 0\n  },\n  \"findings\": []\n}\n",
            "stderr": ""
          },
          "output_hash": "231b43ed70e09c4e7cbcda1094b00e0274dd4a22ff8324da2eb907f705c1316a",
          "completed_at": "2026-07-25T13:15:22Z"
        },
        {
          "id": "substrate_audit",
          "action": "process.fixed",
          "status": "completed",
          "resolved_input_hash": "4998f71d2d3f6ac7dd50e10d37f60ae32d54898949950e484da9de113e18a979",
          "started_at": "2026-07-25T13:15:22Z",
          "output": {
            "operation": "substrate_capability_audit",
            "command": [
              "python",
              "scripts/prd_substrate_catalog.py",
              "--repo-root",
              ".",
              "audit"
            ],
            "exit_code": 0,
            "stdout": "{\n  \"status\": \"ok\",\n  \"schema_version\": \"1.0\",\n  \"capability_count\": 26,\n  \"runtime_tool_count\": 103,\n  \"intent_count\": 31,\n  \"summary\": {\n    \"critical\": 0,\n    \"high\": 0,\n    \"medium\": 0,\n    \"low\": 0\n  },\n  \"findings\": []\n}\n",
            "stderr": ""
          },
          "output_hash": "4176fd7e9d2d33bd61e5fd6bb8d392a63eaa5b2cb65b750eeb348b9dd55fe220",
          "completed_at": "2026-07-25T13:15:22Z"
        },
        {
          "id": "suite",
          "action": "process.fixed",
          "status": "completed",
          "resolved_input_hash": "954e575e48145853f5681eda189186c95a053267158fae669114320f2e53794a",
          "started_at": "2026-07-25T13:23:47Z",
          "output": {
            "operation": "local_workflow_check",
            "command": [
              "python",
              "scripts/local_workflow_check.py"
            ],
            "exit_code": 0,
            "stdout": "Structured file validation passed.\n$ python -m unittest discover -s tests -v\n{\n  \"status\": \"fail\",\n  \"repo_root\": \"C:\\\\Users\\\\marku\\\\AppData\\\\Local\\\\Temp\\\\tmppew_touv\",\n  \"summary\": {\n    \"errors\": 1,\n    \"warnings\": 0\n  },\n  \"findings\": [\n    {\n      \"check\": \"duplicate_id\",\n      \"severity\": \"error\",\n      \"summary\": \"Duplicate id REQ-002 in .prd_plugin/state/requests.json.\",\n      \"required_action\": \"Renumber one record so REQ-002 is unique. Allocate IDs with the MCP tool prd_next_id (or the record tools like prd_open_goal) instead of hand-computing them.\"\n    }\n  ]\n}\nautonomy_level set to guided\nautonomy_level set to autonomous\nDESTRUCTIVE RESET REQUESTED: --force --yes will erase protected PRD Plugin project data.\nThe following existing state/configuration files would be replaced with skeleton defaults:\n  - .prd_plugin/state/tracking.json\nThis may erase IDs, tracking, requests, decisions, health findings, configuration, and session memory.\nFor a normal safe update, remove --yes and run: npx prd-install . --force\nPRD Plugin safe update: preserving existing state/config and refreshing plugin files only. Never add --yes to a routine update; it requests a destructive reset.\nPRD Plugin safe update: preserving existing state/config and refreshing plugin files only. Never add --yes to a routine update; it requests a destructive reset.\nPRD Plugin safe update: preserving existing state/config and refreshing plugin files only. Never add --yes to a routine update; it requests a destructive reset.\nPRD Plugin safe update: preserving existing state/config and refreshing plugin files only. Never add --yes to a routine update; it requests a destructive reset.\nPRD Plugin safe update: preserving existing state/config and refreshing plugin files only. Never add --yes to a routine update; it requests a destructive reset.\nPRD Plugin safe update: preserving existing state/config and refreshing plugin files only. Never add --yes to a routine update; it requests a destructive reset.\nPRD Plugin safe update: preserving existing state/config and refreshing plugin files only. Never add --yes to a routine update; it requests a destructive reset.\nPRD Plugin safe update: preserving existing state/config and refreshing plugin files only. Never add --yes to a routine update; it requests a destructive reset.\nPRD Plugin safe update: preserving existing state/config and refreshing plugin files only. Never add --yes to a routine update; it requests a destructive reset.\nPRD Plugin safe update: preserving existing state/config and refreshing plugin files only. Never add --yes to a routine update; it requests a destructive reset.\nPRD Plugin safe update: preserving existing state/config and refreshing plugin files only. Never add --yes to a routine update; it requests a destructive reset.\nPRD Plugin safe update: preserving existing state/config and refreshing plugin files only. Never add --yes to a routine update; it requests a destructive reset.\nPRD Plugin safe update: preserving existing state/config and refreshing plugin files only. Never add --yes to a routine update; it requests a destructive reset.\nPRD Plugin safe update: preserving existing state/config and refreshing plugin files only. Never add --yes to a routine update; it requests a destructive reset.\nPRD Plugin safe update: preserving existing state/config and refreshing plugin files only. Never add --yes to a routine update; it requests a destructive reset.\nPRD Plugin safe update: preserving existing state/config and refreshing plugin files only. Never add --yes to a routine update; it requests a destructive reset.\nPRD Plugin safe update: preserving existing state/config and refreshing plugin files only. Never add --yes to a routine update; it requests a destructive reset.\n{\n  \"published\": false,\n  \"package\": \"prd-plugin\",\n  \"version\": \"9.9.9\",\n  \"version_seen\": null,\n  \"latest_seen\": null,\n  \"attempts_used\": 1\n}\n{\n  \"published\": true,\n  \"package\": \"prd-plugin\",\n  \"version\": \"1.2.3\",\n  \"version_seen\": \"1.2.3\",\n  \"latest_seen\": \"1.2.3\",\n  \"attempts_used\": 1\n}\n{\"decision\": \"block\", \"reason\": \"Autonomous run-until-done: goal TRK-164 is still active. Continue with the next incomplete step toward it \\u2014 do not stop to ask 'shall I proceed?'. If you genuinely need the user (consent floor: push/merge/publish/secrets, or a real blocker), create the file .prd_plugin/local/autonomy-pause with a one-line reason and then stop; the guard will let you. Otherwise keep going.\"}\n$ python scripts/feature_skill_audit.py --repo-root . --format json\n{\n  \"status\": \"ok\",\n  \"repo_root\": \"D:\\\\Projects\\\\prd-plugin\",\n  \"contract\": \"templates/feature-skill-map.json\",\n  \"feature_count\": 29,\n  \"summary\": {\n    \"critical\": 0,\n    \"high\": 0,\n    \"medium\": 0,\n    \"low\": 0\n  },\n  \"findings\": []\n}\n$ python scripts/gap_audit.py --target-version 0.16.61\n# PRD Plugin Gap Audit\n\nTarget version: `0.16.61`\n\n## Findings\n\n- None\n$ python scripts/version_advice.py --installed-repo . --format json --output request-report/version-advice.json\n$ python scripts/release_check.py --output request-report/release-hygiene.md\n$ python scripts/prd_doctor.py --repo-root . --format json --output request-report/prd-doctor.json\n$ python scripts/state_consistency_check.py --repo-root . --format json --output request-report/state-consistency.json\n$ python scripts/prd_install_skills.py --repo-root . --dry-run\n{\n  \"status\": \"dry_run\",\n  \"target_agent\": \"codex\",\n  \"targets\": [\n    {\n      \"agent\": \"codex\",\n      \"target\": \".agents\\\\skills\",\n      \"would_install\": [\n        \"project-architecture\",\n        \"project-blocker-resolution\",\n        \"project-brainstorm\",\n        \"project-change-request\",\n        \"project-code-review\",\n        \"project-decision-ledger\",\n        \"project-decision-policy\",\n        \"project-deterministic-workflows\",\n        \"project-document-branch\",\n        \"project-evidence\",\n        \"project-evidence-ledger\",\n        \"project-git-workflow\",\n        \"project-health\",\n        \"project-implementation-plan\",\n        \"project-llm-wiki\",\n        \"project-local-integration\",\n        \"project-memory\",\n        \"project-planning-lifecycle\",\n        \"project-prd\",\n        \"project-prd-plugin-setup\",\n        \"project-request-intake\",\n        \"project-session-close\",\n        \"project-systematic-debugging\",\n        \"project-test-driven-implementation\",\n        \"project-traceability-review\",\n        \"project-traceability-sync\",\n        \"project-verification-before-completion\",\n        \"source-command-prd-autonomy\",\n        \"source-command-prd-close\",\n        \"source-command-prd-config\",\n        \"source-command-prd-drift\",\n        \"source-command-prd-graph\",\n        \"source-command-prd-hooks\",\n        \"source-command-prd-new\",\n        \"source-command-prd-off\",\n        \"source-command-prd-on\",\n        \"source-command-prd-reflections\",\n        \"source-command-prd-report\",\n        \"source-command-prd-status\",\n        \"source-command-prd-track\",\n        \"source-command-prd-version\",\n        \"source-command-prd-workflow\"\n      ],\n      \"would_remove\": [\n        \"project-fold-it-in\",\n        \"project-self-audit\"\n      ]\n    }\n  ],\n  \"installed_count\": 0,\n  \"target\": \".agents\\\\skills\",\n  \"installed\": [],\n  \"removed\": [],\n  \"would_install\": [\n    \"project-architecture\",\n    \"project-blocker-resolution\",\n    \"project-brainstorm\",\n    \"project-change-request\",\n    \"project-code-review\",\n    \"project-decision-ledger\",\n    \"project-decision-policy\",\n    \"project-deterministic-workflows\",\n    \"project-document-branch\",\n    \"project-evidence\",\n    \"project-evidence-ledger\",\n    \"project-git-workflow\",\n    \"project-health\",\n    \"project-implementation-plan\",\n    \"project-llm-wiki\",\n    \"project-local-integration\",\n    \"project-memory\",\n    \"project-planning-lifecycle\",\n    \"project-prd\",\n    \"project-prd-plugin-setup\",\n    \"project-request-intake\",\n    \"project-session-close\",\n    \"project-systematic-debugging\",\n    \"project-test-driven-implementation\",\n    \"project-traceability-review\",\n    \"project-traceability-sync\",\n    \"project-verification-before-completion\",\n    \"source-command-prd-autonomy\",\n    \"source-command-prd-close\",\n    \"source-command-prd-config\",\n    \"source-command-prd-drift\",\n    \"source-command-prd-graph\",\n    \"source-command-prd-hooks\",\n    \"source-command-prd-new\",\n    \"source-command-prd-off\",\n    \"source-command-prd-on\",\n    \"source-command-prd-reflections\",\n    \"source-command-prd-report\",\n    \"source-command-prd-status\",\n    \"source-command-prd-track\",\n    \"source-command-prd-version\",\n    \"source-command-prd-workflow\"\n  ],\n  \"would_remove\": [\n    \"project-fold-it-in\",\n    \"project-self-audit\"\n  ]\n}\n$ python scripts/request_report.py --config .prd_plugin/config.json --format markdown --output request-report/request-report.md\n$ python scripts/request_report.py --config .prd_plugin/config.json --format json --output request-report/request-report.json\n$ python scripts/message_check.py --config .prd_plugin/config.json --format json --output request-report/message-check.json\nLocal workflow check completed.\n",
            "stderr": "es (test_unified_config.MutationTests.test_audit_reports_unknown_and_invalid_values) ... ok\ntest_enable_disable_only_accept_mutable_booleans (test_unified_config.MutationTests.test_enable_disable_only_accept_mutable_booleans) ... ok\ntest_failed_atomic_replace_leaves_original_config_untouched (test_unified_config.MutationTests.test_failed_atomic_replace_leaves_original_config_untouched) ... ok\ntest_malformed_config_is_never_replaced_by_a_mutation (test_unified_config.MutationTests.test_malformed_config_is_never_replaced_by_a_mutation) ... ok\ntest_manual_set_marks_profile_custom_and_preserves_style (test_unified_config.MutationTests.test_manual_set_marks_profile_custom_and_preserves_style) ... ok\ntest_scalar_parent_is_not_clobbered_by_nested_set (test_unified_config.MutationTests.test_scalar_parent_is_not_clobbered_by_nested_set) ... ok\ntest_builtin_profile_dry_run_then_atomic_apply (test_unified_config.ProfileTests.test_builtin_profile_dry_run_then_atomic_apply) ... ok\ntest_invalid_custom_profile_never_partially_writes (test_unified_config.ProfileTests.test_invalid_custom_profile_never_partially_writes) ... ok\ntest_save_show_diff_and_delete_custom_profile (test_unified_config.ProfileTests.test_save_show_diff_and_delete_custom_profile) ... ok\ntest_does_not_flag_canonical_prd_state_paths (test_unsubmitted_plugin_request.UnsubmittedPluginRequestTests.test_does_not_flag_canonical_prd_state_paths) ... ok\ntest_does_not_flag_ordinary_project_requests (test_unsubmitted_plugin_request.UnsubmittedPluginRequestTests.test_does_not_flag_ordinary_project_requests) ... ok\ntest_does_not_flag_rejected_requests (test_unsubmitted_plugin_request.UnsubmittedPluginRequestTests.test_does_not_flag_rejected_requests) ... ok\ntest_does_not_flag_when_already_marked_upstream (test_unsubmitted_plugin_request.UnsubmittedPluginRequestTests.test_does_not_flag_when_already_marked_upstream) ... ok\ntest_flags_a_local_request_about_a_plugin_script (test_unsubmitted_plugin_request.UnsubmittedPluginRequestTests.test_flags_a_local_request_about_a_plugin_script) ... ok\ntest_flags_a_request_that_names_itself_upstream (test_unsubmitted_plugin_request.UnsubmittedPluginRequestTests.test_flags_a_request_that_names_itself_upstream) ... ok\ntest_never_fires_in_the_hub_repo_itself (test_unsubmitted_plugin_request.UnsubmittedPluginRequestTests.test_never_fires_in_the_hub_repo_itself) ... ok\ntest_wired_into_run_checks (test_unsubmitted_plugin_request.UnsubmittedPluginRequestTests.test_wired_into_run_checks) ... ok\ntest_output_writes_lf_and_a_trailing_newline (test_utcp_first_authority.GeneratedArtifactsAreByteStableTests.test_output_writes_lf_and_a_trailing_newline) ... ok\ntest_the_committed_manual_matches_a_fresh_generation (test_utcp_first_authority.GeneratedArtifactsAreByteStableTests.test_the_committed_manual_matches_a_fresh_generation) ... ok\ntest_every_spec_tool_maps_to_a_catalog_capability (test_utcp_first_authority.ParityDirectionTests.test_every_spec_tool_maps_to_a_catalog_capability) ... ok\ntest_server_metadata_matches_the_spec (test_utcp_first_authority.ParityDirectionTests.test_server_metadata_matches_the_spec) ... ok\ntest_python_entry_points_share_the_same_lock (test_utcp_first_authority.SafetyUnchangedTests.test_python_entry_points_share_the_same_lock)\nThe migration target already exists and is proven: prd_reflections ... ok\ntest_the_state_lock_is_still_held_for_mutations (test_utcp_first_authority.SafetyUnchangedTests.test_the_state_lock_is_still_held_for_mutations) ... ok\ntest_no_shipped_tool_metadata_carries_mojibake (test_utcp_first_authority.ShippedTextIsCleanTests.test_no_shipped_tool_metadata_carries_mojibake) ... ok\ntest_shipped_tool_metadata_is_valid_utf8 (test_utcp_first_authority.ShippedTextIsCleanTests.test_shipped_tool_metadata_is_valid_utf8)\nA file written through a cp1252 layer either fails to decode or ... ok\ntest_each_tool_declares_name_description_and_schema (test_utcp_first_authority.SpecIsTheSourceTests.test_each_tool_declares_name_description_and_schema) ... ok\ntest_the_manual_is_generated_from_the_spec_not_the_server (test_utcp_first_authority.SpecIsTheSourceTests.test_the_manual_is_generated_from_the_spec_not_the_server) ... ok\ntest_the_server_no_longer_authors_descriptions (test_utcp_first_authority.SpecIsTheSourceTests.test_the_server_no_longer_authors_descriptions)\nserver.cjs must READ definitions, not declare them. While a tool ... ok\ntest_the_spec_exists_and_declares_every_tool (test_utcp_first_authority.SpecIsTheSourceTests.test_the_spec_exists_and_declares_every_tool) ... ok\ntest_official_bridge_round_trips_cli_and_mcp_templates (test_utcp_first_catalog.BridgeParityTests.test_official_bridge_round_trips_cli_and_mcp_templates) ... ok\ntest_bridged_entries_reuse_server_metadata_verbatim (test_utcp_first_catalog.GeneratedProjectionTests.test_bridged_entries_reuse_server_metadata_verbatim)\nEach bridged manual entry's description and inputs equal the server's ... ok\ntest_checked_in_metadata_matches_live_server (test_utcp_first_catalog.GeneratedProjectionTests.test_checked_in_metadata_matches_live_server)\nThe pinned metadata projection cannot drift behind the live server. ... ok\ntest_mutations_keep_the_validated_handler_path (test_utcp_first_catalog.GuardedMutationTests.test_mutations_keep_the_validated_handler_path)\nEvery manual tool in a non-read capability calls the plugin state ... ok\ntest_read_only_cli_tools_stay_cli (test_utcp_first_catalog.GuardedMutationTests.test_read_only_cli_tools_stay_cli)\nThe 12 cli-native observe/recall tools keep their cli templates. ... ok\ntest_checked_in_metadata_projection_exists (test_utcp_first_catalog.ManualCompletenessTests.test_checked_in_metadata_projection_exists)\nThe server's tool metadata is a checked-in generated artifact so the ... ok\ntest_manual_covers_every_capability_on_both_transports (test_utcp_first_catalog.ManualCompletenessTests.test_manual_covers_every_capability_on_both_transports)\nEvery UTCP and MCP registration in the tool-surface catalog appears ... ok\ntest_appends_version_change_request (test_version_advice.VersionAdviceTests.test_appends_version_change_request) ... ok\ntest_builds_safe_update_advice_for_low_risk_releases (test_version_advice.VersionAdviceTests.test_builds_safe_update_advice_for_low_risk_releases) ... ok\ntest_cli_uses_hub_releases_when_downstream_repo_has_no_releases_file (test_version_advice.VersionAdviceTests.test_cli_uses_hub_releases_when_downstream_repo_has_no_releases_file) ... ok\ntest_detects_installed_version_from_bom_json (test_version_advice.VersionAdviceTests.test_detects_installed_version_from_bom_json) ... ok\ntest_detects_installed_version_from_opencode_plugin_manifest (test_version_advice.VersionAdviceTests.test_detects_installed_version_from_opencode_plugin_manifest) ... ok\ntest_detects_installed_version_from_prd_plugin_config (test_version_advice.VersionAdviceTests.test_detects_installed_version_from_prd_plugin_config) ... ok\ntest_detects_latest_version_from_plugin_manifest (test_version_advice.VersionAdviceTests.test_detects_latest_version_from_plugin_manifest) ... ok\ntest_installed_version_priority_prefers_config_then_codex_then_opencode (test_version_advice.VersionAdviceTests.test_installed_version_priority_prefers_config_then_codex_then_opencode) ... ok\ntest_orders_prerelease_before_final_release (test_version_advice.VersionAdviceTests.test_orders_prerelease_before_final_release) ... ok\ntest_recommends_review_first_for_medium_or_high_risk_release (test_version_advice.VersionAdviceTests.test_recommends_review_first_for_medium_or_high_risk_release) ... ok\ntest_disabled_returns_disabled_and_no_fetch (test_version_check.CheckTests.test_disabled_returns_disabled_and_no_fetch) ... ok\ntest_force_refetches_within_ttl (test_version_check.CheckTests.test_force_refetches_within_ttl) ... ok\ntest_network_failure_is_fail_open (test_version_check.CheckTests.test_network_failure_is_fail_open) ... ok\ntest_no_update_when_current (test_version_check.CheckTests.test_no_update_when_current) ... ok\ntest_status_is_cache_only_no_fetch (test_version_check.CheckTests.test_status_is_cache_only_no_fetch) ... ok\ntest_ttl_cache_avoids_refetch (test_version_check.CheckTests.test_ttl_cache_avoids_refetch) ... ok\ntest_ttl_expiry_refetches (test_version_check.CheckTests.test_ttl_expiry_refetches) ... ok\ntest_update_available_when_npm_is_ahead (test_version_check.CheckTests.test_update_available_when_npm_is_ahead) ... ok\ntest_status_cli_exits_zero (test_version_check.CliTests.test_status_cli_exits_zero) ... ok\ntest_default_ttl_is_responsive_not_a_day (test_version_check.FreshnessTests.test_default_ttl_is_responsive_not_a_day) ... ok\ntest_fetch_latest_accepts_a_timeout (test_version_check.FreshnessTests.test_fetch_latest_accepts_a_timeout) ... ok\ntest_nudge_refreshes_in_session_not_cache_only (test_version_check.FreshnessTests.test_nudge_refreshes_in_session_not_cache_only) ... ok\ntest_registry_default_ttl_matches (test_version_check.FreshnessTests.test_registry_default_ttl_matches) ... ok\ntest_semver_ordering (test_version_check.ParseTests.test_semver_ordering) ... ok\ntest_set_enabled_writes_config (test_version_check.ToggleTests.test_set_enabled_writes_config) ... ok\ntest_config_has_version_check_default_on (test_version_check.WiringTests.test_config_has_version_check_default_on) ... ok\ntest_nudge_surfaces_update_available (test_version_check.WiringTests.test_nudge_surfaces_update_available) ... ok\ntest_prd_version_command_exists (test_version_check.WiringTests.test_prd_version_command_exists) ... ok\ntest_script_registered_downstream (test_version_check.WiringTests.test_script_registered_downstream) ... ok\ntest_plan_cli_emits_json (test_wiki_backfill.CliTests.test_plan_cli_emits_json) ... ok\ntest_status_cli (test_wiki_backfill.CliTests.test_status_cli) ... ok\ntest_marker_written_for_established_repo_gaining_wiki (test_wiki_backfill.InstallerMarkerTests.test_marker_written_for_established_repo_gaining_wiki) ... ok\ntest_no_marker_for_empty_scaffold (test_wiki_backfill.InstallerMarkerTests.test_no_marker_for_empty_scaffold) ... ok\ntest_no_marker_when_wiki_already_exists (test_wiki_backfill.InstallerMarkerTests.test_no_marker_when_wiki_already_exists) ... ok\ntest_no_marker_when_wiki_disabled (test_wiki_backfill.InstallerMarkerTests.test_no_marker_when_wiki_disabled) ... ok\ntest_pending_false_when_absent (test_wiki_backfill.StatusTests.test_pending_false_when_absent) ... ok\ntest_pending_false_when_wiki_already_exists (test_wiki_backfill.StatusTests.test_pending_false_when_wiki_already_exists) ... ok\ntest_pending_true_when_marker_present (test_wiki_backfill.StatusTests.test_pending_true_when_marker_present) ... ok\ntest_plan_excludes_generated_report_artifacts (test_wiki_backfill.SurveyPlanTests.test_plan_excludes_generated_report_artifacts)\nrequest-report/ (incl. its calibration report trees) and docs/evidence/ ... ok\ntest_plan_excludes_plugin_and_vendor_noise (test_wiki_backfill.SurveyPlanTests.test_plan_excludes_plugin_and_vendor_noise) ... ok\ntest_plan_inventories_code_docs_and_state (test_wiki_backfill.SurveyPlanTests.test_plan_inventories_code_docs_and_state) ... ok\ntest_plan_is_read_only (test_wiki_backfill.SurveyPlanTests.test_plan_is_read_only) ... ok\ntest_wiki_drift_in_on_stop_and_default_sets (test_wiki_backfill.WikiDriftMonitorWiringTests.test_wiki_drift_in_on_stop_and_default_sets) ... ok\ntest_current_article_no_drift (test_wiki_backfill.WikiDriftTests.test_current_article_no_drift) ... ok\ntest_drift_cli (test_wiki_backfill.WikiDriftTests.test_drift_cli) ... ok\ntest_far_behind_article_flagged (test_wiki_backfill.WikiDriftTests.test_far_behind_article_flagged) ... ok\ntest_no_wiki_is_ok (test_wiki_backfill.WikiDriftTests.test_no_wiki_is_ok) ... ok\ntest_unlinked_markdown_reference_is_part_of_wiki_drift (test_wiki_backfill.WikiDriftTests.test_unlinked_markdown_reference_is_part_of_wiki_drift) ... ok\ntest_unstamped_article_flagged (test_wiki_backfill.WikiDriftTests.test_unstamped_article_flagged) ... ok\ntest_wiki_drift_uses_configured_wiki_directory (test_wiki_backfill.WikiDriftTests.test_wiki_drift_uses_configured_wiki_directory) ... ok\ntest_ambiguous_reference_is_reported_but_never_guessed (test_wiki_backfill.WikiInlineMarkdownLinkTests.test_ambiguous_reference_is_reported_but_never_guessed) ... ok\ntest_cli_check_fails_and_fix_then_passes (test_wiki_backfill.WikiInlineMarkdownLinkTests.test_cli_check_fails_and_fix_then_passes) ... ok\ntest_existing_inline_links_and_fenced_examples_are_not_findings (test_wiki_backfill.WikiInlineMarkdownLinkTests.test_existing_inline_links_and_fenced_examples_are_not_findings) ... ok\ntest_fix_rewrites_only_unambiguous_references_to_relative_inline_links (test_wiki_backfill.WikiInlineMarkdownLinkTests.test_fix_rewrites_only_unambiguous_references_to_relative_inline_links) ... ok\ntest_reports_resolvable_bare_and_code_wrapped_markdown_references (test_wiki_backfill.WikiInlineMarkdownLinkTests.test_reports_resolvable_bare_and_code_wrapped_markdown_references) ... ok\ntest_nudge_surfaces_pending_backfill (test_wiki_backfill.WiringTests.test_nudge_surfaces_pending_backfill) ... ok\ntest_script_registered_downstream (test_wiki_backfill.WiringTests.test_script_registered_downstream) ... ok\ntest_skill_has_backfill_mode (test_wiki_backfill.WiringTests.test_skill_has_backfill_mode) ... ok\ntest_copy_and_download_controls_are_wired (test_wiki_html_export.WikiHtmlExportTests.test_copy_and_download_controls_are_wired) ... ok\ntest_default_output_lands_in_the_local_runtime_dir (test_wiki_html_export.WikiHtmlExportTests.test_default_output_lands_in_the_local_runtime_dir) ... ok\ntest_every_page_is_embedded_with_exact_markdown (test_wiki_html_export.WikiHtmlExportTests.test_every_page_is_embedded_with_exact_markdown) ... ok\ntest_export_all_generates_viewers_and_super_index (test_wiki_html_export.WikiHtmlExportTests.test_export_all_generates_viewers_and_super_index) ... ok\ntest_export_is_one_self_contained_offline_file (test_wiki_html_export.WikiHtmlExportTests.test_export_is_one_self_contained_offline_file) ... ok\ntest_guest_repo_viewer_is_hosted_by_the_host_repo (test_wiki_html_export.WikiHtmlExportTests.test_guest_repo_viewer_is_hosted_by_the_host_repo)\nA repo without .prd_plugin gets NO new files in its own tree; its ... ok\ntest_hub_repo_exports_all_pages (test_wiki_html_export.WikiHtmlExportTests.test_hub_repo_exports_all_pages) ... ok\ntest_parse_wiki_log_extracts_dated_entries_with_bodies (test_wiki_html_export.WikiHtmlExportTests.test_parse_wiki_log_extracts_dated_entries_with_bodies)\nREQ-112: every workspace log follows '## [date] mode | text'. ... ok\ntest_parse_wiki_log_tolerates_missing_log (test_wiki_html_export.WikiHtmlExportTests.test_parse_wiki_log_tolerates_missing_log) ... ok\ntest_script_content_cannot_break_the_payload (test_wiki_html_export.WikiHtmlExportTests.test_script_content_cannot_break_the_payload) ... ok\ntest_super_index_has_a_combined_changelog (test_wiki_html_export.WikiHtmlExportTests.test_super_index_has_a_combined_changelog) ... ok\ntest_super_index_reports_page_counts (test_wiki_html_export.WikiHtmlExportTests.test_super_index_reports_page_counts) ... ok\ntest_workspace_discovery_uses_the_wiki_convention_marker (test_wiki_html_export.WikiHtmlExportTests.test_workspace_discovery_uses_the_wiki_convention_marker)\nREQ-110 + REQ-111: any immediate child whose wiki follows the ... ok\ntest_a_repo_without_a_wiki_is_not_in_drift (test_wiki_ingest_drift.DetectionTests.test_a_repo_without_a_wiki_is_not_in_drift)\nNo wiki is a legitimate state, not a failure to ingest. ... ok\ntest_fully_ingested_repo_is_clean (test_wiki_ingest_drift.DetectionTests.test_fully_ingested_repo_is_clean) ... ok\ntest_malformed_state_degrades_rather_than_raising (test_wiki_ingest_drift.DetectionTests.test_malformed_state_degrades_rather_than_raising) ... ok\ntest_non_implemented_requests_are_never_expected_in_the_log (test_wiki_ingest_drift.DetectionTests.test_non_implemented_requests_are_never_expected_in_the_log) ... ok\ntest_only_work_since_the_last_ingest_is_actionable (test_wiki_ingest_drift.DetectionTests.test_only_work_since_the_last_ingest_is_actionable)\nRaw counting flags pre-wiki history as drift � ~70 items in the hub, ... ok\ntest_reports_implemented_requests_absent_from_the_log (test_wiki_ingest_drift.DetectionTests.test_reports_implemented_requests_absent_from_the_log) ... ok\ntest_it_runs_against_this_repo_and_returns_a_usable_report (test_wiki_ingest_drift.RealRepoTests.test_it_runs_against_this_repo_and_returns_a_usable_report)\nGrounded against real state, but NOT pinned to a specific gap: a test ... ok\ntest_prd_status_omits_it_when_clean (test_wiki_ingest_drift.SurfaceTests.test_prd_status_omits_it_when_clean) ... ok\ntest_prd_status_reports_the_drift (test_wiki_ingest_drift.SurfaceTests.test_prd_status_reports_the_drift) ... ok\ntest_this_repos_wiki_reads_byte_exact (test_wiki_page_contract.HubRepoSmokeTests.test_this_repos_wiki_reads_byte_exact) ... ok\ntest_list_enumerates_canonical_pages_with_titles (test_wiki_page_contract.WikiPageListTests.test_list_enumerates_canonical_pages_with_titles) ... ok\ntest_boundaries_are_hard (test_wiki_page_contract.WikiPageReadTests.test_boundaries_are_hard) ... ok\ntest_drift_remains_the_default_action (test_wiki_page_contract.WikiPageReadTests.test_drift_remains_the_default_action) ... ok\ntest_read_page_without_stamps_reports_null_provenance (test_wiki_page_contract.WikiPageReadTests.test_read_page_without_stamps_reports_null_provenance) ... ok\ntest_read_requires_a_path (test_wiki_page_contract.WikiPageReadTests.test_read_requires_a_path) ... ok\ntest_read_returns_exact_markdown_with_provenance (test_wiki_page_contract.WikiPageReadTests.test_read_returns_exact_markdown_with_provenance) ... ok\ntest_no_cp1252_unencodable_chars_in_agent_facing_tools (test_windows_console_safe.SourceScanTests.test_no_cp1252_unencodable_chars_in_agent_facing_tools) ... ok\ntest_backfill_pending_status_renders_cp1252_safe (test_windows_console_safe.StatusRenderTests.test_backfill_pending_status_renders_cp1252_safe) ... ok\ntest_json_output_escapes_non_console_characters (test_windows_console_safe.WorkflowCliRenderTests.test_json_output_escapes_non_console_characters) ... ok\ntest_repository_workflow_surfaces_are_chml_zero (test_workflow_chml_audit.WorkflowChmlAuditTests.test_repository_workflow_surfaces_are_chml_zero) ... ok\ntest_semantic_skill_finding_is_part_of_workflow_chml (test_workflow_chml_audit.WorkflowChmlAuditTests.test_semantic_skill_finding_is_part_of_workflow_chml) ... ok\ntest_git_workflow_pushes_clean_verified_commits_in_autonomous (test_workflow_consistency.AutonomyConflictResolutionTests.test_git_workflow_pushes_clean_verified_commits_in_autonomous) ... ok\ntest_request_intake_defers_autonomy_and_owns_graduation (test_workflow_consistency.AutonomyConflictResolutionTests.test_request_intake_defers_autonomy_and_owns_graduation) ... ok\ntest_evidence_pair_states_create_vs_review_boundary (test_workflow_consistency.BoundaryClarityTests.test_evidence_pair_states_create_vs_review_boundary) ... ok\ntest_session_close_states_memory_boundary (test_workflow_consistency.BoundaryClarityTests.test_session_close_states_memory_boundary) ... ok\ntest_document_branch_has_promotion_owner (test_workflow_consistency.DeadEndOwnerTests.test_document_branch_has_promotion_owner) ... ok\ntest_health_findings_have_triage_dispositions (test_workflow_consistency.DeadEndOwnerTests.test_health_findings_have_triage_dispositions) ... ok\ntest_memory_owns_schema_version_changes (test_workflow_consistency.DeadEndOwnerTests.test_memory_owns_schema_version_changes) ... ok\ntest_planning_lifecycle_has_stage_readiness_checkpoints (test_workflow_consistency.DeadEndOwnerTests.test_planning_lifecycle_has_stage_readiness_checkpoints) ... ok\ntest_session_close_runs_traceability_sync (test_workflow_consistency.DeadEndOwnerTests.test_session_close_runs_traceability_sync) ... ok\n\n----------------------------------------------------------------------\nRan 1294 tests in 118.647s\n\nOK\n"
          },
          "output_hash": "246db079b45f00537ea8b32d828cd9fcbe318f40bade5757dc8eb298a6a83124",
          "completed_at": "2026-07-25T13:25:49Z"
        },
        {
          "id": "release",
          "action": "process.fixed",
          "status": "completed",
          "resolved_input_hash": "1e5b0c18d93eb4c2248f9a00adbd438e52f3ef02137477fb8376c69cfe86fc9b",
          "started_at": "2026-07-25T13:25:49Z",
          "output": {
            "operation": "release_check",
            "command": [
              "python",
              "scripts/release_check.py"
            ],
            "exit_code": 0,
            "stdout": "# Release Hygiene Report\n\nBase version: `0.16.60`\nHead version: `0.16.61`\nChanged files checked: 37\n\n## Findings\n\n- None\n",
            "stderr": ""
          },
          "output_hash": "7863fd29074d307289cf69dff268bd691a55e33fa665018ce86cd0528e86e1a9",
          "completed_at": "2026-07-25T13:25:49Z"
        },
        {
          "id": "gaps",
          "action": "process.fixed",
          "status": "completed",
          "resolved_input_hash": "577241909238eeb55683f89d2d2216648dad2e3127397993e22493829a1307a4",
          "started_at": "2026-07-25T13:25:49Z",
          "output": {
            "operation": "gap_audit",
            "command": [
              "python",
              "scripts/gap_audit.py",
              "--target-version",
              "0.16.61",
              "--config",
              ".prd_plugin/config.json",
              "--releases",
              ".prd_plugin/state/releases.json"
            ],
            "exit_code": 0,
            "stdout": "# PRD Plugin Gap Audit\n\nTarget version: `0.16.61`\n\n## Findings\n\n- None\n",
            "stderr": ""
          },
          "output_hash": "a1d30ab8da6d59cafe6c47133009d0fe8843e993358a69a64264944ad3071960",
          "completed_at": "2026-07-25T13:25:49Z"
        },
        {
          "id": "package",
          "action": "process.fixed",
          "status": "completed",
          "resolved_input_hash": "06cd12e1f3db3d985f9150520afa60f288297ff0ca01a8e813e9bb6291aa8836",
          "started_at": "2026-07-25T13:25:50Z",
          "output": {
            "operation": "package_check",
            "command": [
              "npm",
              "pack",
              "--dry-run"
            ],
            "exit_code": 0,
            "stdout": "prd-plugin-0.16.61.tgz\n",
            "stderr": "e.md\nnpm notice 17.0kB templates/repo-skeleton/.agents/skills/project-llm-wiki/SKILL.md\nnpm notice 7.4kB templates/repo-skeleton/.agents/skills/project-local-integration/SKILL.md\nnpm notice 8.1kB templates/repo-skeleton/.agents/skills/project-memory/SKILL.md\nnpm notice 6.2kB templates/repo-skeleton/.agents/skills/project-planning-lifecycle/SKILL.md\nnpm notice 6.0kB templates/repo-skeleton/.agents/skills/project-prd-plugin-setup/SKILL.md\nnpm notice 3.5kB templates/repo-skeleton/.agents/skills/project-prd/SKILL.md\nnpm notice 27.5kB templates/repo-skeleton/.agents/skills/project-request-intake/SKILL.md\nnpm notice 4.8kB templates/repo-skeleton/.agents/skills/project-session-close/SKILL.md\nnpm notice 10.3kB templates/repo-skeleton/.agents/skills/project-systematic-debugging/SKILL.md\nnpm notice 4.8kB templates/repo-skeleton/.agents/skills/project-test-driven-implementation/SKILL.md\nnpm notice 3.7kB templates/repo-skeleton/.agents/skills/project-traceability-review/SKILL.md\nnpm notice 2.5kB templates/repo-skeleton/.agents/skills/project-traceability-sync/SKILL.md\nnpm notice 6.6kB templates/repo-skeleton/.agents/skills/project-verification-before-completion/SKILL.md\nnpm notice 1.5kB templates/repo-skeleton/.agents/skills/source-command-prd-autonomy/SKILL.md\nnpm notice 1.2kB templates/repo-skeleton/.agents/skills/source-command-prd-close/SKILL.md\nnpm notice 3.3kB templates/repo-skeleton/.agents/skills/source-command-prd-config/SKILL.md\nnpm notice 2.4kB templates/repo-skeleton/.agents/skills/source-command-prd-drift/SKILL.md\nnpm notice 2.1kB templates/repo-skeleton/.agents/skills/source-command-prd-graph/SKILL.md\nnpm notice 2.2kB templates/repo-skeleton/.agents/skills/source-command-prd-hooks/SKILL.md\nnpm notice 1.3kB templates/repo-skeleton/.agents/skills/source-command-prd-new/SKILL.md\nnpm notice 2.0kB templates/repo-skeleton/.agents/skills/source-command-prd-off/SKILL.md\nnpm notice 1.5kB templates/repo-skeleton/.agents/skills/source-command-prd-on/SKILL.md\nnpm notice 2.3kB templates/repo-skeleton/.agents/skills/source-command-prd-reflections/SKILL.md\nnpm notice 2.5kB templates/repo-skeleton/.agents/skills/source-command-prd-report/SKILL.md\nnpm notice 1.2kB templates/repo-skeleton/.agents/skills/source-command-prd-status/SKILL.md\nnpm notice 1.7kB templates/repo-skeleton/.agents/skills/source-command-prd-track/SKILL.md\nnpm notice 1.8kB templates/repo-skeleton/.agents/skills/source-command-prd-version/SKILL.md\nnpm notice 1.7kB templates/repo-skeleton/.agents/skills/source-command-prd-workflow/SKILL.md\nnpm notice 764B templates/repo-skeleton/.claude-plugin/plugin.json\nnpm notice 772B templates/repo-skeleton/.claude/commands/prd-autonomy.md\nnpm notice 493B templates/repo-skeleton/.claude/commands/prd-close.md\nnpm notice 2.5kB templates/repo-skeleton/.claude/commands/prd-config.md\nnpm notice 1.6kB templates/repo-skeleton/.claude/commands/prd-drift.md\nnpm notice 1.4kB templates/repo-skeleton/.claude/commands/prd-graph.md\nnpm notice 1.6kB templates/repo-skeleton/.claude/commands/prd-hooks.md\nnpm notice 639B templates/repo-skeleton/.claude/commands/prd-new.md\nnpm notice 1.4kB templates/repo-skeleton/.claude/commands/prd-off.md\nnpm notice 862B templates/repo-skeleton/.claude/commands/prd-on.md\nnpm notice 1.6kB templates/repo-skeleton/.claude/commands/prd-reflections.md\nnpm notice 1.8kB templates/repo-skeleton/.claude/commands/prd-report.md\nnpm notice 549B templates/repo-skeleton/.claude/commands/prd-status.md\nnpm notice 974B templates/repo-skeleton/.claude/commands/prd-track.md\nnpm notice 1.0kB templates/repo-skeleton/.claude/commands/prd-version.md\nnpm notice 938B templates/repo-skeleton/.claude/commands/prd-workflow.md\nnpm notice 1.6kB templates/repo-skeleton/.claude/hooks/prd_drift_check.py\nnpm notice 2.0kB templates/repo-skeleton/.claude/hooks/prd_log_skill.py\nnpm notice 4.1kB templates/repo-skeleton/.claude/hooks/prd_nudge.py\nnpm notice 3.7kB templates/repo-skeleton/.claude/hooks/prd_precommit_gate.py\nnpm notice 6.1kB templates/repo-skeleton/.claude/hooks/prd_reflection.py\nnpm notice 3.5kB templates/repo-skeleton/.claude/hooks/prd_session_report.py\nnpm notice 15.8kB templates/repo-skeleton/.claude/hooks/prd_stop_guard.py\nnpm notice 1.2kB templates/repo-skeleton/.claude/settings.json\nnpm notice 3.0kB templates/repo-skeleton/.claude/skills/project-architecture/SKILL.md\nnpm notice 7.4kB templates/repo-skeleton/.claude/skills/project-blocker-resolution/SKILL.md\nnpm notice 2.8kB templates/repo-skeleton/.claude/skills/project-brainstorm/SKILL.md\nnpm notice 5.5kB templates/repo-skeleton/.claude/skills/project-change-request/SKILL.md\nnpm notice 6.3kB templates/repo-skeleton/.claude/skills/project-code-review/SKILL.md\nnpm notice 2.7kB templates/repo-skeleton/.claude/skills/project-decision-ledger/SKILL.md\nnpm notice 23.6kB templates/repo-skeleton/.claude/skills/project-decision-policy/SKILL.md\nnpm notice 4.4kB templates/repo-skeleton/.claude/skills/project-deterministic-workflows/SKILL.md\nnpm notice 5.2kB templates/repo-skeleton/.claude/skills/project-document-branch/SKILL.md\nnpm notice 2.8kB templates/repo-skeleton/.claude/skills/project-evidence-ledger/SKILL.md\nnpm notice 3.3kB templates/repo-skeleton/.claude/skills/project-evidence/SKILL.md\nnpm notice 11.9kB templates/repo-skeleton/.claude/skills/project-git-workflow/SKILL.md\nnpm notice 7.4kB templates/repo-skeleton/.claude/skills/project-health/SKILL.md\nnpm notice 6.0kB templates/repo-skeleton/.claude/skills/project-implementation-plan/SKILL.md\nnpm notice 1.1kB templates/repo-skeleton/.claude/skills/project-llm-wiki/LICENSE\nnpm notice 842B templates/repo-skeleton/.claude/skills/project-llm-wiki/references/archive-template.md\nnpm notice 843B templates/repo-skeleton/.claude/skills/project-llm-wiki/references/article-template.md\nnpm notice 559B templates/repo-skeleton/.claude/skills/project-llm-wiki/references/index-template.md\nnpm notice 317B templates/repo-skeleton/.claude/skills/project-llm-wiki/references/raw-template.md\nnpm notice 17.0kB templates/repo-skeleton/.claude/skills/project-llm-wiki/SKILL.md\nnpm notice 7.4kB templates/repo-skeleton/.claude/skills/project-local-integration/SKILL.md\nnpm notice 8.1kB templates/repo-skeleton/.claude/skills/project-memory/SKILL.md\nnpm notice 6.2kB templates/repo-skeleton/.claude/skills/project-planning-lifecycle/SKILL.md\nnpm notice 6.0kB templates/repo-skeleton/.claude/skills/project-prd-plugin-setup/SKILL.md\nnpm notice 3.5kB templates/repo-skeleton/.claude/skills/project-prd/SKILL.md\nnpm notice 27.5kB templates/repo-skeleton/.claude/skills/project-request-intake/SKILL.md\nnpm notice 4.8kB templates/repo-skeleton/.claude/skills/project-session-close/SKILL.md\nnpm notice 10.3kB templates/repo-skeleton/.claude/skills/project-systematic-debugging/SKILL.md\nnpm notice 4.8kB templates/repo-skeleton/.claude/skills/project-test-driven-implementation/SKILL.md\nnpm notice 3.7kB templates/repo-skeleton/.claude/skills/project-traceability-review/SKILL.md\nnpm notice 2.5kB templates/repo-skeleton/.claude/skills/project-traceability-sync/SKILL.md\nnpm notice 6.6kB templates/repo-skeleton/.claude/skills/project-verification-before-completion/SKILL.md\nnpm notice 1.5kB templates/repo-skeleton/.claude/skills/source-command-prd-autonomy/SKILL.md\nnpm notice 1.2kB templates/repo-skeleton/.claude/skills/source-command-prd-close/SKILL.md\nnpm notice 3.3kB templates/repo-skeleton/.claude/skills/source-command-prd-config/SKILL.md\nnpm notice 2.4kB templates/repo-skeleton/.claude/skills/source-command-prd-drift/SKILL.md\nnpm notice 2.1kB templates/repo-skeleton/.claude/skills/source-command-prd-graph/SKILL.md\nnpm notice 2.2kB templates/repo-skeleton/.claude/skills/source-command-prd-hooks/SKILL.md\nnpm notice 1.3kB templates/repo-skeleton/.claude/skills/source-command-prd-new/SKILL.md\nnpm notice 2.0kB templates/repo-skeleton/.claude/skills/source-command-prd-off/SKILL.md\nnpm notice 1.5kB templates/repo-skeleton/.claude/skills/source-command-prd-on/SKILL.md\nnpm notice 2.3kB templates/repo-skeleton/.claude/skills/source-command-prd-reflections/SKILL.md\nnpm notice 2.5kB templates/repo-skeleton/.claude/skills/source-command-prd-report/SKILL.md\nnpm notice 1.2kB templates/repo-skeleton/.claude/skills/source-command-prd-status/SKILL.md\nnpm notice 1.7kB templates/repo-skeleton/.claude/skills/source-command-prd-track/SKILL.md\nnpm notice 1.8kB templates/repo-skeleton/.claude/skills/source-command-prd-version/SKILL.md\nnpm notice 1.7kB templates/repo-skeleton/.claude/skills/source-command-prd-workflow/SKILL.md\nnpm notice 3.2kB templates/repo-skeleton/.codex-plugin/plugin.json\nnpm notice 3.3kB templates/repo-skeleton/.codex/hooks.json\nnpm notice 743B templates/repo-skeleton/.githooks/pre-commit\nnpm notice 734B templates/repo-skeleton/.github/workflows/prd-gate.yml\nnpm notice 3.2kB templates/repo-skeleton/.opencode/plugin.json\nnpm notice 5.6kB templates/repo-skeleton/.opencode/plugins/prd-hooks.js\nnpm notice 3.0kB templates/repo-skeleton/.opencode/skill/project-architecture/SKILL.md\nnpm notice 7.4kB templates/repo-skeleton/.opencode/skill/project-blocker-resolution/SKILL.md\nnpm notice 2.8kB templates/repo-skeleton/.opencode/skill/project-brainstorm/SKILL.md\nnpm notice 5.5kB templates/repo-skeleton/.opencode/skill/project-change-request/SKILL.md\nnpm notice 6.3kB templates/repo-skeleton/.opencode/skill/project-code-review/SKILL.md\nnpm notice 2.7kB templates/repo-skeleton/.opencode/skill/project-decision-ledger/SKILL.md\nnpm notice 23.6kB templates/repo-skeleton/.opencode/skill/project-decision-policy/SKILL.md\nnpm notice 4.4kB templates/repo-skeleton/.opencode/skill/project-deterministic-workflows/SKILL.md\nnpm notice 5.2kB templates/repo-skeleton/.opencode/skill/project-document-branch/SKILL.md\nnpm notice 2.8kB templates/repo-skeleton/.opencode/skill/project-evidence-ledger/SKILL.md\nnpm notice 3.3kB templates/repo-skeleton/.opencode/skill/project-evidence/SKILL.md\nnpm notice 11.9kB templates/repo-skeleton/.opencode/skill/project-git-workflow/SKILL.md\nnpm notice 7.4kB templates/repo-skeleton/.opencode/skill/project-health/SKILL.md\nnpm notice 6.0kB templates/repo-skeleton/.opencode/skill/project-implementation-plan/SKILL.md\nnpm notice 1.1kB templates/repo-skeleton/.opencode/skill/project-llm-wiki/LICENSE\nnpm notice 842B templates/repo-skeleton/.opencode/skill/project-llm-wiki/references/archive-template.md\nnpm notice 843B templates/repo-skeleton/.opencode/skill/project-llm-wiki/references/article-template.md\nnpm notice 559B templates/repo-skeleton/.opencode/skill/project-llm-wiki/references/index-template.md\nnpm notice 317B templates/repo-skeleton/.opencode/skill/project-llm-wiki/references/raw-template.md\nnpm notice 17.0kB templates/repo-skeleton/.opencode/skill/project-llm-wiki/SKILL.md\nnpm notice 7.4kB templates/repo-skeleton/.opencode/skill/project-local-integration/SKILL.md\nnpm notice 8.1kB templates/repo-skeleton/.opencode/skill/project-memory/SKILL.md\nnpm notice 6.2kB templates/repo-skeleton/.opencode/skill/project-planning-lifecycle/SKILL.md\nnpm notice 6.0kB templates/repo-skeleton/.opencode/skill/project-prd-plugin-setup/SKILL.md\nnpm notice 3.5kB templates/repo-skeleton/.opencode/skill/project-prd/SKILL.md\nnpm notice 27.5kB templates/repo-skeleton/.opencode/skill/project-request-intake/SKILL.md\nnpm notice 4.8kB templates/repo-skeleton/.opencode/skill/project-session-close/SKILL.md\nnpm notice 10.3kB templates/repo-skeleton/.opencode/skill/project-systematic-debugging/SKILL.md\nnpm notice 4.8kB templates/repo-skeleton/.opencode/skill/project-test-driven-implementation/SKILL.md\nnpm notice 3.7kB templates/repo-skeleton/.opencode/skill/project-traceability-review/SKILL.md\nnpm notice 2.5kB templates/repo-skeleton/.opencode/skill/project-traceability-sync/SKILL.md\nnpm notice 6.6kB templates/repo-skeleton/.opencode/skill/project-verification-before-completion/SKILL.md\nnpm notice 1.5kB templates/repo-skeleton/.opencode/skill/source-command-prd-autonomy/SKILL.md\nnpm notice 1.2kB templates/repo-skeleton/.opencode/skill/source-command-prd-close/SKILL.md\nnpm notice 3.3kB templates/repo-skeleton/.opencode/skill/source-command-prd-config/SKILL.md\nnpm notice 2.4kB templates/repo-skeleton/.opencode/skill/source-command-prd-drift/SKILL.md\nnpm notice 2.1kB templates/repo-skeleton/.opencode/skill/source-command-prd-graph/SKILL.md\nnpm notice 2.2kB templates/repo-skeleton/.opencode/skill/source-command-prd-hooks/SKILL.md\nnpm notice 1.3kB templates/repo-skeleton/.opencode/skill/source-command-prd-new/SKILL.md\nnpm notice 2.0kB templates/repo-skeleton/.opencode/skill/source-command-prd-off/SKILL.md\nnpm notice 1.5kB templates/repo-skeleton/.opencode/skill/source-command-prd-on/SKILL.md\nnpm notice 2.3kB templates/repo-skeleton/.opencode/skill/source-command-prd-reflections/SKILL.md\nnpm notice 2.5kB templates/repo-skeleton/.opencode/skill/source-command-prd-report/SKILL.md\nnpm notice 1.2kB templates/repo-skeleton/.opencode/skill/source-command-prd-status/SKILL.md\nnpm notice 1.7kB templates/repo-skeleton/.opencode/skill/source-command-prd-track/SKILL.md\nnpm notice 1.8kB templates/repo-skeleton/.opencode/skill/source-command-prd-version/SKILL.md\nnpm notice 1.7kB templates/repo-skeleton/.opencode/skill/source-command-prd-workflow/SKILL.md\nnpm notice 14.9kB templates/repo-skeleton/.prd_plugin/config.json\nnpm notice 1.6kB templates/repo-skeleton/.prd_plugin/hooks/prd_drift_check.py\nnpm notice 12.0kB templates/repo-skeleton/.prd_plugin/hooks/prd_hook_dispatch.py\nnpm notice 2.0kB templates/repo-skeleton/.prd_plugin/hooks/prd_log_skill.py\nnpm notice 4.1kB templates/repo-skeleton/.prd_plugin/hooks/prd_nudge.py\nnpm notice 3.7kB templates/repo-skeleton/.prd_plugin/hooks/prd_precommit_gate.py\nnpm notice 113.4kB templates/repo-skeleton/.prd_plugin/hooks/prd_reason_guard.py\nnpm notice 6.1kB templates/repo-skeleton/.prd_plugin/hooks/prd_reflection.py\nnpm notice 3.5kB templates/repo-skeleton/.prd_plugin/hooks/prd_session_report.py\nnpm notice 15.8kB templates/repo-skeleton/.prd_plugin/hooks/prd_stop_guard.py\nnpm notice 8.0kB templates/repo-skeleton/.prd_plugin/hooks/prd_test_scope_guard.py\nnpm notice 3.7kB templates/repo-skeleton/.prd_plugin/ID-SCHEME.md\nnpm notice 581B templates/repo-skeleton/.prd_plugin/ids/registry.json\nnpm notice 12.6kB templates/repo-skeleton/.prd_plugin/METHOD.md\nnpm notice 725B templates/repo-skeleton/.prd_plugin/method/artifact-format.md\nnpm notice 1.5kB templates/repo-skeleton/.prd_plugin/method/completion-gate.md\nnpm notice 3.6kB templates/repo-skeleton/.prd_plugin/method/deterministic-workflows.md\nnpm notice 1.2kB templates/repo-skeleton/.prd_plugin/method/estimation.md\nnpm notice 2.1kB templates/repo-skeleton/.prd_plugin/method/grounding.md\nnpm notice 3.2kB templates/repo-skeleton/.prd_plugin/method/reporting.md\nnpm notice 4.1kB templates/repo-skeleton/.prd_plugin/method/self-service.md\nnpm notice 1.6kB templates/repo-skeleton/.prd_plugin/method/staleness-rules.md\nnpm notice 1.0kB templates/repo-skeleton/.prd_plugin/method/state-validation.md\nnpm notice 3.0kB templates/repo-skeleton/.prd_plugin/method/subagents.md\nnpm notice 1.3kB templates/repo-skeleton/.prd_plugin/services.json\nnpm notice 47B templates/repo-skeleton/.prd_plugin/state/changelog.json\nnpm notice 49B templates/repo-skeleton/.prd_plugin/state/decisions.json\nnpm notice 157B templates/repo-skeleton/.prd_plugin/state/health.json\nnpm notice 47B templates/repo-skeleton/.prd_plugin/state/memory.json\nnpm notice 287B templates/repo-skeleton/.prd_plugin/state/project.json\nnpm notice 48B templates/repo-skeleton/.prd_plugin/state/releases.json\nnpm notice 48B templates/repo-skeleton/.prd_plugin/state/requests.json\nnpm notice 214B templates/repo-skeleton/.prd_plugin/state/sessions/shared/promoted-session-summaries.jsonl\nnpm notice 49B templates/repo-skeleton/.prd_plugin/state/substrate-links.json\nnpm notice 51B templates/repo-skeleton/.prd_plugin/state/tracking.json\nnpm notice 48B templates/repo-skeleton/.prd_plugin/state/workflow-runs.json\nnpm notice 167B templates/repo-skeleton/.prd_plugin/templates/architecture-delta.md\nnpm notice 1.4kB templates/repo-skeleton/.prd_plugin/templates/architecture.json\nnpm notice 368B templates/repo-skeleton/.prd_plugin/templates/brainstorm.md\nnpm notice 274B templates/repo-skeleton/.prd_plugin/templates/changelog.json\nnpm notice 15.1kB templates/repo-skeleton/.prd_plugin/templates/config.json\nnpm notice 265B templates/repo-skeleton/.prd_plugin/templates/decision-record.md\nnpm notice 398B templates/repo-skeleton/.prd_plugin/templates/decisions.json\nnpm notice 372B templates/repo-skeleton/.prd_plugin/templates/doc-branch.json\nnpm notice 313B templates/repo-skeleton/.prd_plugin/templates/doc-branch.md\nnpm notice 115B templates/repo-skeleton/.prd_plugin/templates/evidence.md\nnpm notice 249B templates/repo-skeleton/.prd_plugin/templates/handoff.json\nnpm notice 407B templates/repo-skeleton/.prd_plugin/templates/health.json\nnpm notice 695B templates/repo-skeleton/.prd_plugin/templates/human-exports/architecture.md\nnpm notice 626B templates/repo-skeleton/.prd_plugin/templates/human-exports/implementation-plan.md\nnpm notice 580B templates/repo-skeleton/.prd_plugin/templates/human-exports/prd.md\nnpm notice 1.4kB templates/repo-skeleton/.prd_plugin/templates/implementation-plan.json\nnpm notice 65B templates/repo-skeleton/.prd_plugin/templates/mailbox.json\nnpm notice 348B templates/repo-skeleton/.prd_plugin/templates/memory.json\nnpm notice 471B templates/repo-skeleton/.prd_plugin/templates/merge-checklist.md\nnpm notice 163B templates/repo-skeleton/.prd_plugin/templates/plan-delta.md\nnpm notice 139B templates/repo-skeleton/.prd_plugin/templates/prd-delta.md\nnpm notice 1.3kB templates/repo-skeleton/.prd_plugin/templates/prd.json\nnpm notice 455B templates/repo-skeleton/.prd_plugin/templates/project.json\nnpm notice 125B templates/repo-skeleton/.prd_plugin/templates/promoted-session-summary.jsonl\nnpm notice 923B templates/repo-skeleton/.prd_plugin/templates/releases.json\nnpm notice 1.4kB templates/repo-skeleton/.prd_plugin/templates/request.json\nnpm notice 1.7kB templates/repo-skeleton/.prd_plugin/templates/requests.json\nnpm notice 23.4kB templates/repo-skeleton/.prd_plugin/templates/script-install-scope.json\nnpm notice 235B templates/repo-skeleton/.prd_plugin/templates/session.json\nnpm notice 15.6kB templates/repo-skeleton/.prd_plugin/templates/skill-install-scope.json\nnpm notice 317B templates/repo-skeleton/.prd_plugin/templates/submission-package.json\nnpm notice 5.7kB templates/repo-skeleton/.prd_plugin/templates/tool-surface.json\nnpm notice 225B templates/repo-skeleton/.prd_plugin/templates/traceability-matrix.md\nnpm notice 321B templates/repo-skeleton/.prd_plugin/templates/tracking.json\nnpm notice 375B templates/repo-skeleton/.prd_plugin/templates/utcp-config.json\nnpm notice 22.2kB templates/repo-skeleton/.prd_plugin/workflows.json\nnpm notice 15.2kB templates/repo-skeleton/AGENTS.md\nnpm notice 11.6kB templates/repo-skeleton/CLAUDE.md\nnpm notice 12.0kB templates/repo-skeleton/docs/INSTALL-MATRIX.md\nnpm notice 2.7kB templates/repo-skeleton/hooks/hooks.json\nnpm notice 1.4kB templates/request.json\nnpm notice 1.7kB templates/requests.json\nnpm notice 23.4kB templates/script-install-scope.json\nnpm notice 1.3kB templates/services.json\nnpm notice 235B templates/session.json\nnpm notice 15.6kB templates/skill-install-scope.json\nnpm notice 317B templates/submission-package.json\nnpm notice 10.4kB templates/substrate-capabilities.json\nnpm notice 48.5kB templates/tool-spec.json\nnpm notice 7.9kB templates/tool-surface.json\nnpm notice 225B templates/traceability-matrix.md\nnpm notice 321B templates/tracking.json\nnpm notice 375B templates/utcp-config.json\nnpm notice 22.2kB templates/workflows.json\nnpm notice Tarball Details\nnpm notice name: prd-plugin\nnpm notice version: 0.16.61\nnpm notice filename: prd-plugin-0.16.61.tgz\nnpm notice package size: 1.9 MB\nnpm notice unpacked size: 11.8 MB\nnpm notice shasum: c9ebb10e91af56567e2768c95a7d242de9b6cb77\nnpm notice integrity: sha512-gf04A/cLvxwRe[...]mGyKOtLJVVD/w==\nnpm notice total files: 658\nnpm notice\n"
          },
          "output_hash": "26955fe8782ae1f432d56794046f2e8d775b30edfd4a01a341367b7e8079e0db",
          "completed_at": "2026-07-25T13:25:52Z"
        },
        {
          "id": "gate",
          "action": "state.gate",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-25T13:25:52Z",
          "output": {
            "status": "attention",
            "repo_root": "D:\\Projects\\prd-plugin",
            "summary": {
              "errors": 0,
              "warnings": 0
            },
            "findings": [
              {
                "check": "state_consistency",
                "severity": "info",
                "summary": "File references 2 canonical IDs across 2 prefix(es); treated as a positive signal of extra work.",
                "required_action": "No action required; this is an informational signal."
              }
            ]
          },
          "output_hash": "6a0ed3d65779be265214a0e8395ab03978b9f7b91da9ffb59b257b73f82d087d",
          "completed_at": "2026-07-25T13:25:53Z"
        }
      ],
      "completed_at": "2026-07-25T13:25:53Z"
    },
    {
      "id": "WFR-460",
      "schema_version": "1.0",
      "workflow_id": "evidence.record",
      "workflow_version": 1,
      "definition_hash": "a6dfcb8faadb669d5c097a0d7fa9a738f20ee98e03b552c9557259a94a197e88",
      "plan_hash": "d29bd383d81812e59136d790c8f1511b810f2b430e3d782bb5fd6a28899b425b",
      "input_hash": "e60f34031ee2a69b1b3141a9e13daaf3782dcfa1034596e5a7e2ed37ae2b77dc",
      "inputs": {
        "summary": "Reason Guard precision and evidence affinity shipped at implementation commit 1d1bbe4 with release corrections 6d66ec9 and 347db00. Focused Reason Guard tests passed (94 tests); the benchmark passed with 1.00 candidate precision, 1.00 safety recall, 0.8941 representative-neutral specificity, 0.020 ms classifier p95, 42.541 ms structured p95, and 12.627 ms p95 delta. Hub release workflow WFR-459 passed 1,294 tests, config/state consistency, workflow CHML 0/0/0/0, Substrate capability CHML 0/0/0/0, release hygiene, 0.16.61 gap audit, npm package dry-run, and the state gate with zero errors and warnings.",
        "type": "validation",
        "linked_ids": [
          "REQ-174",
          "REQ-176",
          "TRK-164",
          "WFR-454",
          "WFR-457",
          "WFR-459",
          "IMP-014",
          "IMP-TASK-115",
          "IMP-016",
          "IMP-TASK-117"
        ],
        "commands": [
          "python -m unittest tests.test_reason_guard tests.test_reason_guard_benchmark tests.test_hook_dispatcher",
          "python scripts/reason_guard_benchmark.py --samples 200 --warmup 20 --evaluation-split all --json",
          "python scripts/prd_workflows.py retry WFR-459 --json"
        ],
        "limitations": "No new live Claude session was started. Claude normalization and ingestion behavior were verified with trusted transcript fixtures and the existing captured-session defect corpus; the implementation adds no model, network, service, dependency, or configuration."
      },
      "idempotency_key": "codex-20260725-req174-evidence-v1",
      "status": "blocked",
      "attempt": 1,
      "created_at": "2026-07-25T13:27:04Z",
      "updated_at": "2026-07-25T13:27:04Z",
      "receipts": [],
      "steps": [
        {
          "id": "record",
          "action": "state.mutate",
          "status": "outcome_unknown",
          "resolved_input_hash": "fde401dd908be5d9dad98d0422eea7f321df1962edd6941626b27f23cdf1d8c1",
          "started_at": "2026-07-25T13:27:04Z",
          "execution_token": "fc1bed38462bfd23d490d8d52678fe367916365055cd1ddc11c92e8eaaa12cb4"
        },
        {
          "id": "confirm",
          "action": "state.query",
          "status": "pending"
        }
      ],
      "error": {
        "type": "ActionError",
        "message": "D:\\Projects\\prd-plugin\\mcp\\server.cjs:453\n            throw new ToolError(`${tool}: '${name}' entries must be plain objects.`);\n            ^\n\nError: prd_record_evidence: 'commands' entries must be plain objects.\n    at checkArgs (D:\\Projects\\prd-plugin\\mcp\\server.cjs:453:19)\n    at Object.handler (D:\\Projects\\prd-plugin\\mcp\\server.cjs:1832:17)\n    at Object.callTool (D:\\Projects\\prd-plugin\\mcp\\server.cjs:2522:15)\n    at [eval]:1:44\n    at runScriptInThisContext (node:internal/vm:219:10)\n    at node:internal/process/execution:483:12\n    at [eval]-wrapper:6:24\n    at runScriptInContext (node:internal/process/execution:481:60)\n    at evalFunction (node:internal/process/execution:315:30)\n    at evalTypeScript (node:internal/process/execution:327:3)\n\nNode.js v26.3.0"
      }
    },
    {
      "id": "WFR-461",
      "schema_version": "1.0",
      "workflow_id": "evidence.record",
      "workflow_version": 1,
      "definition_hash": "a6dfcb8faadb669d5c097a0d7fa9a738f20ee98e03b552c9557259a94a197e88",
      "plan_hash": "3d8c7bfd8b395bbd257bfdefe4d422c728cbd0cedb012b8ddf6d05fed0c96fcb",
      "input_hash": "da34d9e2cef55b63861ef1970684a83f66d5f7f9f34d2618630029f7a6a45d79",
      "inputs": {
        "summary": "Reason Guard precision and evidence affinity shipped at implementation commit 1d1bbe4 with release corrections 6d66ec9 and 347db00. Focused Reason Guard tests passed (94 tests); the benchmark passed with 1.00 candidate precision, 1.00 safety recall, 0.8941 representative-neutral specificity, 0.020 ms classifier p95, 42.541 ms structured p95, and 12.627 ms p95 delta. Hub release workflow WFR-459 passed 1,294 tests, config/state consistency, workflow CHML 0/0/0/0, Substrate capability CHML 0/0/0/0, release hygiene, 0.16.61 gap audit, npm package dry-run, and the state gate with zero errors and warnings.",
        "type": "validation",
        "linked_ids": [
          "REQ-174",
          "REQ-176",
          "TRK-164",
          "WFR-454",
          "WFR-457",
          "WFR-459",
          "IMP-014",
          "IMP-TASK-115",
          "IMP-016",
          "IMP-TASK-117"
        ],
        "commands": [
          {
            "command": "python -m unittest tests.test_reason_guard tests.test_reason_guard_benchmark tests.test_hook_dispatcher",
            "outcome": "94 tests passed"
          },
          {
            "command": "python scripts/reason_guard_benchmark.py --samples 200 --warmup 20 --evaluation-split all --json",
            "outcome": "budget passed; precision 1.00; safety recall 1.00; representative-neutral specificity 0.8941; p95 delta 12.627 ms"
          },
          {
            "command": "python scripts/prd_workflows.py retry WFR-459 --json",
            "outcome": "hub.release completed; 1,294 tests passed; all release/package/state/audit steps completed"
          }
        ],
        "limitations": "No new live Claude session was started. Claude normalization and ingestion behavior were verified with trusted transcript fixtures and the existing captured-session defect corpus; the implementation adds no model, network, service, dependency, or configuration."
      },
      "idempotency_key": "codex-20260725-req174-evidence-v2",
      "status": "completed",
      "attempt": 1,
      "created_at": "2026-07-25T13:27:55Z",
      "updated_at": "2026-07-25T13:27:56Z",
      "receipts": [
        {
          "step_id": "record",
          "action": "state.mutate",
          "input_hash": "01294f8fd2a7af59dc6ec9e040a3847cfc7d0f9f87e8060b7b2b7c6ac4dab62d",
          "output_hash": "24d789f088cf446d17488efeff97c6420da035471d3180283d50592b789d8ec6",
          "completed_at": "2026-07-25T13:27:55Z"
        },
        {
          "step_id": "confirm",
          "action": "state.query",
          "input_hash": "99cac78784a04da34b5be6aad27398ca4cd8443a6b71c7020207a71381f0f392",
          "output_hash": "95b2d95aced4c80107b15feac0dcdfcfee760d56a1d7b72a4578e5da59c529e3",
          "completed_at": "2026-07-25T13:27:56Z"
        }
      ],
      "steps": [
        {
          "id": "record",
          "action": "state.mutate",
          "status": "completed",
          "resolved_input_hash": "01294f8fd2a7af59dc6ec9e040a3847cfc7d0f9f87e8060b7b2b7c6ac4dab62d",
          "started_at": "2026-07-25T13:27:55Z",
          "execution_token": "53c3091500046bb0c65cde08ce56e8d20a5ad0c7a96ebb9895f8d85dcd3fe54d",
          "output": {
            "id": "EV-218"
          },
          "output_hash": "24d789f088cf446d17488efeff97c6420da035471d3180283d50592b789d8ec6",
          "completed_at": "2026-07-25T13:27:55Z"
        },
        {
          "id": "confirm",
          "action": "state.query",
          "status": "completed",
          "resolved_input_hash": "99cac78784a04da34b5be6aad27398ca4cd8443a6b71c7020207a71381f0f392",
          "started_at": "2026-07-25T13:27:55Z",
          "output": {
            "kind": "EV",
            "record": {
              "id": "EV-218",
              "type": "validation",
              "summary": "Reason Guard precision and evidence affinity shipped at implementation commit 1d1bbe4 with release corrections 6d66ec9 and 347db00. Focused Reason Guard tests passed (94 tests); the benchmark passed with 1.00 candidate precision, 1.00 safety recall, 0.8941 representative-neutral specificity, 0.020 ms classifier p95, 42.541 ms structured p95, and 12.627 ms p95 delta. Hub release workflow WFR-459 passed 1,294 tests, config/state consistency, workflow CHML 0/0/0/0, Substrate capability CHML 0/0/0/0, release hygiene, 0.16.61 gap audit, npm package dry-run, and the state gate with zero errors and warnings.",
              "linked_ids": [
                "REQ-174",
                "REQ-176",
                "TRK-164",
                "WFR-454",
                "WFR-457",
                "WFR-459",
                "IMP-014",
                "IMP-TASK-115",
                "IMP-016",
                "IMP-TASK-117"
              ],
              "created_at": "2026-07-25",
              "commands": [
                {
                  "command": "python -m unittest tests.test_reason_guard tests.test_reason_guard_benchmark tests.test_hook_dispatcher",
                  "outcome": "94 tests passed"
                },
                {
                  "command": "python scripts/reason_guard_benchmark.py --samples 200 --warmup 20 --evaluation-split all --json",
                  "outcome": "budget passed; precision 1.00; safety recall 1.00; representative-neutral specificity 0.8941; p95 delta 12.627 ms"
                },
                {
                  "command": "python scripts/prd_workflows.py retry WFR-459 --json",
                  "outcome": "hub.release completed; 1,294 tests passed; all release/package/state/audit steps completed"
                }
              ],
              "limitations": "No new live Claude session was started. Claude normalization and ingestion behavior were verified with trusted transcript fixtures and the existing captured-session defect corpus; the implementation adds no model, network, service, dependency, or configuration."
            }
          },
          "output_hash": "95b2d95aced4c80107b15feac0dcdfcfee760d56a1d7b72a4578e5da59c529e3",
          "completed_at": "2026-07-25T13:27:56Z"
        }
      ],
      "completed_at": "2026-07-25T13:27:56Z"
    },
    {
      "id": "WFR-462",
      "schema_version": "1.0",
      "workflow_id": "project.closeout",
      "workflow_version": 1,
      "definition_hash": "96b2abc83bdad966a1401fe20d5670102161a186e77dda410aaa86b710fcc200",
      "plan_hash": "64ee5955d622d34b59004b288b69c10ad500bb5b3750faafcb9b414edfd909be",
      "input_hash": "e08a9bfe1d7321518d25688e534a7cefb04967690c87deb89eb706aab2789fdd",
      "inputs": {
        "source_refs": [
          "REQ-174",
          "TRK-164",
          "EV-218",
          "CHG-142",
          "WFR-457",
          "WFR-459",
          "REQ-177"
        ]
      },
      "idempotency_key": "codex-20260725-req174-closeout-v1",
      "status": "completed",
      "attempt": 1,
      "created_at": "2026-07-25T13:30:33Z",
      "updated_at": "2026-07-25T13:30:49Z",
      "receipts": [
        {
          "step_id": "gate",
          "action": "state.gate",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "6a0ed3d65779be265214a0e8395ab03978b9f7b91da9ffb59b257b73f82d087d",
          "completed_at": "2026-07-25T13:30:34Z"
        },
        {
          "step_id": "state",
          "action": "state.consistency",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "9963110856ca8182da0dfdbb22f6960618b55dbc121be0dce0066a7c7a389b10",
          "completed_at": "2026-07-25T13:30:35Z"
        },
        {
          "step_id": "summary",
          "action": "judgment.request",
          "input_hash": "8741539b6aa3b42232b9ca1351a654907ce33fa1c13aa7e9bfc27ccc0bd59a03",
          "output_hash": "e6dc5bbb3101ff6b3129b7a0a09e3820797628825a5c099da69e784257125a34",
          "request_hash": "2ce212f4f0036ba0a648b413c21321335c107d4cc58784851294c730f8939451",
          "completed_at": "2026-07-25T13:30:49Z"
        }
      ],
      "steps": [
        {
          "id": "gate",
          "action": "state.gate",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-25T13:30:34Z",
          "output": {
            "status": "attention",
            "repo_root": "D:\\Projects\\prd-plugin",
            "summary": {
              "errors": 0,
              "warnings": 0
            },
            "findings": [
              {
                "check": "state_consistency",
                "severity": "info",
                "summary": "File references 2 canonical IDs across 2 prefix(es); treated as a positive signal of extra work.",
                "required_action": "No action required; this is an informational signal."
              }
            ]
          },
          "output_hash": "6a0ed3d65779be265214a0e8395ab03978b9f7b91da9ffb59b257b73f82d087d",
          "completed_at": "2026-07-25T13:30:34Z"
        },
        {
          "id": "state",
          "action": "state.consistency",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-25T13:30:35Z",
          "output": {
            "status": "ok",
            "repo_root": "D:\\Projects\\prd-plugin",
            "summary": {
              "errors": 0,
              "warnings": 0,
              "infos": 1
            },
            "findings": [
              {
                "id": "CONS-INFO-001",
                "severity": "info",
                "path": "docs/evidence/EV-200.md",
                "summary": "File references 2 canonical IDs across 2 prefix(es); treated as a positive signal of extra work.",
                "referenced_prefixes": [
                  "CHG",
                  "TRK"
                ],
                "referenced_id_count": 2,
                "required_action": "No action required; this is an informational signal."
              }
            ]
          },
          "output_hash": "9963110856ca8182da0dfdbb22f6960618b55dbc121be0dce0066a7c7a389b10",
          "completed_at": "2026-07-25T13:30:35Z"
        },
        {
          "id": "summary",
          "action": "judgment.request",
          "status": "completed",
          "resolved_input_hash": "8741539b6aa3b42232b9ca1351a654907ce33fa1c13aa7e9bfc27ccc0bd59a03",
          "started_at": "2026-07-25T13:30:35Z",
          "judgment_request": {
            "contract_version": 1,
            "run_id": "WFR-462",
            "step_id": "summary",
            "task": "closeout",
            "instructions": "Summarize verified outcomes, limitations, and remaining work using only the supplied evidence.",
            "source_refs": [
              "REQ-174",
              "TRK-164",
              "EV-218",
              "CHG-142",
              "WFR-457",
              "WFR-459",
              "REQ-177"
            ],
            "source_hashes": {},
            "result_schema": {
              "type": "object",
              "required": [
                "summary",
                "remaining_work",
                "source_refs"
              ],
              "properties": {
                "summary": {
                  "type": "string"
                },
                "remaining_work": {
                  "type": "array",
                  "items": {
                    "type": "string"
                  }
                },
                "source_refs": {
                  "type": "array",
                  "items": {
                    "type": "string"
                  }
                }
              }
            },
            "executor": "ai-collab",
            "profile": "fast-capable",
            "constraints": {
              "no_project_state_writes": true,
              "require_source_refs": true
            },
            "request_hash": "2ce212f4f0036ba0a648b413c21321335c107d4cc58784851294c730f8939451"
          },
          "output": {
            "summary": "Reason Guard now applies sentence-local inferred-obligation classification, same-session action-and-subject evidence affinity with exact tool-result binding, lifecycle-accurate EVIDENCED diagnostics, transition-based occurrence telemetry, and bounded Claude visible-text Unicode repair. The implementation goal and request are complete with recorded validation: focused tests and the accuracy/latency benchmark passed, and the v0.16.61 release workflow passed 1,294 tests plus config/state, CHML, Substrate capability, release hygiene, gap, package, and gate checks with zero errors and warnings. No new live Claude session was started; trusted transcript fixtures and the captured-session defect corpus cover that adapter path.",
            "remaining_work": [
              "Merge the verified branch to main, push main, and publish v0.16.61 by pushing its annotated tag.",
              "Address the separately filed evidence.record command-entry prevalidation bug without expanding this completed Reason Guard change."
            ],
            "source_refs": [
              "REQ-174",
              "TRK-164",
              "EV-218",
              "CHG-142",
              "WFR-457",
              "WFR-459",
              "REQ-177"
            ]
          },
          "output_hash": "e6dc5bbb3101ff6b3129b7a0a09e3820797628825a5c099da69e784257125a34",
          "completed_at": "2026-07-25T13:30:49Z",
          "judgment_result": {
            "request_hash": "2ce212f4f0036ba0a648b413c21321335c107d4cc58784851294c730f8939451",
            "executor": "ai-collab",
            "profile": "fast-capable"
          }
        }
      ],
      "completed_at": "2026-07-25T13:30:49Z"
    },
    {
      "id": "WFR-463",
      "schema_version": "1.0",
      "workflow_id": "engineering.code-review",
      "workflow_version": 1,
      "definition_hash": "ad3df68a0ff3c3ede35fe5266dcfbffbe7b1ba3e8ada5fc4b9012db9f451212f",
      "plan_hash": "22f6c66144e2da51ef52478121dad43bee5fa569c9ec4dd5607563a593ab8c84",
      "input_hash": "8b3c9829e4820994f2c69be95a67acc5d9070c5c221a98ec4ed2c6b444851359",
      "inputs": {
        "base_ref": "origin/main",
        "source_refs": [
          "REQ-007",
          "TRK-165",
          "mcp/server.cjs",
          "templates/tool-spec.json",
          "templates/script-install-scope.json",
          "AGENTS.md",
          "CLAUDE.md",
          "skills/project-request-intake/SKILL.md",
          "tests/node/server.test.cjs",
          "tests/test_instruction_parity.py",
          "tests/test_script_install_scope_policy.py"
        ]
      },
      "idempotency_key": "2026-07-28-req-007-check-messages-code-review",
      "status": "completed",
      "attempt": 1,
      "created_at": "2026-07-28T13:19:52Z",
      "updated_at": "2026-07-28T13:20:37Z",
      "receipts": [
        {
          "step_id": "diff",
          "action": "git.diff_check",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "11c11db30f4b3f6c758722ba3e27eea08145b7d212f6a157451e364b48475280",
          "completed_at": "2026-07-28T13:19:53Z"
        },
        {
          "step_id": "verification",
          "action": "verification.plan",
          "input_hash": "896ba721326661835264dfc8b368f18e4c2f504219052efc7dded35d5e5da01f",
          "output_hash": "b92033af89dbc8ce0faa05a03e3172d11ba26b1cd0638963b4bafda6708c2527",
          "completed_at": "2026-07-28T13:19:53Z"
        },
        {
          "step_id": "context",
          "action": "substrate.enrich",
          "input_hash": "4a7a45764c48931ed799fc253c1bad64587f708a8a1c204ebdf5fa7aa6bdab4a",
          "output_hash": "53a630f4a8175ad3b6d352da203c2961e0e6cf3dc1cbe6eb7242bfa598659f08",
          "completed_at": "2026-07-28T13:19:54Z"
        },
        {
          "step_id": "review",
          "action": "judgment.request",
          "input_hash": "e640ee2a8fc9ac58ac6f66f46d8c51ffb4e7f739e1e5e53c97a499e05c4b4cf2",
          "output_hash": "8c04d50d68276f3c88eb7158672562837e54f74f9b739af1dbea71234bd81d59",
          "request_hash": "3a41ff4e50009fdf4d5825547c993f652940e80ffff0da457b5c02c8621b04fe",
          "completed_at": "2026-07-28T13:20:37Z"
        }
      ],
      "steps": [
        {
          "id": "diff",
          "action": "git.diff_check",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-28T13:19:53Z",
          "output": {
            "passed": true
          },
          "output_hash": "11c11db30f4b3f6c758722ba3e27eea08145b7d212f6a157451e364b48475280",
          "completed_at": "2026-07-28T13:19:53Z"
        },
        {
          "id": "verification",
          "action": "verification.plan",
          "status": "completed",
          "resolved_input_hash": "896ba721326661835264dfc8b368f18e4c2f504219052efc7dded35d5e5da01f",
          "started_at": "2026-07-28T13:19:53Z",
          "output": {
            "schema_version": "1.0",
            "contract_version": 1,
            "executor": "ai-collab",
            "changed_files": [
              ".agents/skills/project-request-intake/SKILL.md",
              ".claude-plugin/marketplace.json",
              ".claude-plugin/plugin.json",
              ".claude/skills/project-request-intake/SKILL.md",
              ".codex-plugin/plugin.json",
              ".opencode/plugin.json",
              ".opencode/skill/project-request-intake/SKILL.md",
              ".prd_plugin/config.json",
              ".prd_plugin/ids/registry.json",
              ".prd_plugin/state/project.json",
              ".prd_plugin/state/releases.json",
              ".prd_plugin/state/requests.json",
              ".prd_plugin/state/tracking.json",
              ".prd_plugin/state/workflow-runs.json",
              "AGENTS.md",
              "CLAUDE.md",
              "docs/INSTALL-MATRIX.md",
              "docs/METHOD.md",
              "index.js",
              "mcp/server.cjs",
              "mcp/tool-metadata.json",
              "package-lock.json",
              "package.json",
              "README.md",
              "skills-manifest.json",
              "skills/project-request-intake/SKILL.md",
              "templates/agent-rule-parity.json",
              "templates/config.json",
              "templates/feature-skill-map.json",
              "templates/project.json",
              "templates/releases.json",
              "templates/repo-skeleton/.agents/skills/project-request-intake/SKILL.md",
              "templates/repo-skeleton/.claude-plugin/plugin.json",
              "templates/repo-skeleton/.claude/skills/project-request-intake/SKILL.md",
              "templates/repo-skeleton/.codex-plugin/plugin.json",
              "templates/repo-skeleton/.opencode/plugin.json",
              "templates/repo-skeleton/.opencode/skill/project-request-intake/SKILL.md",
              "templates/repo-skeleton/.prd_plugin/config.json",
              "templates/repo-skeleton/.prd_plugin/state/project.json",
              "templates/repo-skeleton/.prd_plugin/templates/config.json",
              "templates/repo-skeleton/.prd_plugin/templates/project.json",
              "templates/repo-skeleton/.prd_plugin/templates/script-install-scope.json",
              "templates/repo-skeleton/.prd_plugin/templates/tool-surface.json",
              "templates/repo-skeleton/AGENTS.md",
              "templates/repo-skeleton/CLAUDE.md",
              "templates/repo-skeleton/docs/INSTALL-MATRIX.md",
              "templates/script-install-scope.json",
              "templates/tool-spec.json",
              "templates/tool-surface.json",
              "tests/node/server.test.cjs",
              "tests/test_instruction_parity.py",
              "tests/test_mcp_server.py",
              "tests/test_script_install_scope_policy.py",
              "utcp.json"
            ],
            "change_fingerprint": "a08655899cf7972c8146965105030543cbf5469b0459634db8a7f0ee9889177d",
            "policy": {
              "enabled": true,
              "executor": "ai-collab",
              "neighbor_limit": 12,
              "max_changed_files": 25,
              "fallback": "full",
              "full_suite_triggers": [
                "release",
                "core_change",
                "impact_unavailable",
                "impact_degraded",
                "unmapped_change"
              ],
              "core_paths": [
                "package.json",
                "package-lock.json",
                "pyproject.toml",
                "Cargo.toml",
                "go.mod",
                ".github/workflows/**"
              ],
              "test_patterns": [
                "tests/**",
                "test/**",
                "spec/**",
                "**/*.test.*",
                "**/*.spec.*",
                "test_*.py",
                "*_test.py",
                "*_test.go",
                "**/test_*.py",
                "**/*_test.py",
                "**/*_test.go"
              ],
              "max_selected_tests": 200,
              "execution_timeout_seconds": 600,
              "focused_commands": [],
              "full_commands": [],
              "allowed_executables": [
                "python",
                "python3",
                "py",
                "pytest",
                "npm",
                "npx",
                "node",
                "go",
                "cargo",
                "dotnet",
                "mvn",
                "gradle",
                "gradlew",
                "make"
              ]
            },
            "selection_rules": {
              "precedence": [
                "exact_changed",
                "explicit_test_ownership",
                "structural_dependencies",
                "predictive_impact"
              ],
              "require_all_changed_files_mapped": true,
              "widen_before_full": true,
              "predictive_signal_is_sufficient_alone": false
            },
            "fallback": {
              "strategy": "full",
              "conditions": [
                "release",
                "core_change",
                "impact_unavailable",
                "impact_degraded",
                "unmapped_change"
              ]
            },
            "strategy": "full",
            "reason": "core_change",
            "runtime_requests": {},
            "plan_hash": "e5a5b14af83c687a07586ecd8d94b9aeb7ace07aa3c3d9efc5b9033a74d0e1b2"
          },
          "output_hash": "b92033af89dbc8ce0faa05a03e3172d11ba26b1cd0638963b4bafda6708c2527",
          "completed_at": "2026-07-28T13:19:53Z"
        },
        {
          "id": "context",
          "action": "substrate.enrich",
          "status": "completed",
          "resolved_input_hash": "4a7a45764c48931ed799fc253c1bad64587f708a8a1c204ebdf5fa7aa6bdab4a",
          "started_at": "2026-07-28T13:19:53Z",
          "output": {
            "status": "disabled",
            "results": [],
            "local_source_refs": [
              "REQ-007",
              "TRK-165",
              "mcp/server.cjs",
              "templates/tool-spec.json",
              "templates/script-install-scope.json",
              "AGENTS.md",
              "CLAUDE.md",
              "skills/project-request-intake/SKILL.md",
              "tests/node/server.test.cjs",
              "tests/test_instruction_parity.py",
              "tests/test_script_install_scope_policy.py"
            ]
          },
          "output_hash": "53a630f4a8175ad3b6d352da203c2961e0e6cf3dc1cbe6eb7242bfa598659f08",
          "completed_at": "2026-07-28T13:19:54Z"
        },
        {
          "id": "review",
          "action": "judgment.request",
          "status": "completed",
          "resolved_input_hash": "e640ee2a8fc9ac58ac6f66f46d8c51ffb4e7f739e1e5e53c97a499e05c4b4cf2",
          "started_at": "2026-07-28T13:19:54Z",
          "judgment_request": {
            "contract_version": 1,
            "run_id": "WFR-463",
            "step_id": "review",
            "task": "code_review",
            "instructions": "Find material correctness, robustness, security, compatibility, or test gaps; do not restate mechanical facts.",
            "source_refs": [
              "REQ-007",
              "TRK-165",
              "mcp/server.cjs",
              "templates/tool-spec.json",
              "templates/script-install-scope.json",
              "AGENTS.md",
              "CLAUDE.md",
              "skills/project-request-intake/SKILL.md",
              "tests/node/server.test.cjs",
              "tests/test_instruction_parity.py",
              "tests/test_script_install_scope_policy.py"
            ],
            "source_hashes": {
              "mcp/server.cjs": "921e25e234a309d4307fd18eaf4b4dd458e833a1b1849a1dfb1c903dc6392255",
              "templates/tool-spec.json": "f87f549f9bda7f0eba9d153fa2779e47f7d0b7dd59678c356abee58277c44ddc",
              "templates/script-install-scope.json": "6735221f844f86be84f6ea83676cb901da6bba17fce0776a212fa7e7e031318e",
              "AGENTS.md": "7a0edf7d582cf9dd442f34639f3c95dd2456d7840ad5eb05b9159921142e465e",
              "CLAUDE.md": "12e94032fc80e880c67e1910c9185d2508be010bf8d4b5279a09d226e5ca7b6b",
              "skills/project-request-intake/SKILL.md": "66c447832b395c40855ac591c74a23168fb116213cdb67aec15579e3c47a6ea3",
              "tests/node/server.test.cjs": "3f21b59fa49f043af59156d58e0c254648fe549be7a9dfb7abce627760d3479b",
              "tests/test_instruction_parity.py": "6c20e39dd70d3568367243185f43bd5a49ac142a76bce3256702e6ea14dd0622",
              "tests/test_script_install_scope_policy.py": "26571aab53f46a13dd5c9a2293ba9e9e3cea5c55d53772e633832cb57850f83d"
            },
            "result_schema": {
              "type": "object",
              "required": [
                "summary",
                "findings",
                "source_refs"
              ],
              "properties": {
                "summary": {
                  "type": "string"
                },
                "findings": {
                  "type": "array",
                  "items": {
                    "type": "object"
                  }
                },
                "source_refs": {
                  "type": "array",
                  "items": {
                    "type": "string"
                  }
                }
              }
            },
            "executor": "ai-collab",
            "profile": "fast-capable",
            "constraints": {
              "no_project_state_writes": true,
              "require_source_refs": true
            },
            "request_hash": "3a41ff4e50009fdf4d5825547c993f652940e80ffff0da457b5c02c8621b04fe"
          },
          "output": {
            "summary": "No material defects found. The implementation routes the exact user phrases through one current-repo read surface, preserves the existing message-check computation, installs its runtime by default, keeps tool metadata and host instructions aligned, and adds regression coverage for tool reachability, real inbox detection, install scope, and cross-host rule parity.",
            "findings": [],
            "source_refs": [
              "mcp/server.cjs",
              "templates/tool-spec.json",
              "templates/script-install-scope.json",
              "AGENTS.md",
              "CLAUDE.md",
              "skills/project-request-intake/SKILL.md",
              "tests/node/server.test.cjs",
              "tests/test_instruction_parity.py",
              "tests/test_script_install_scope_policy.py"
            ]
          },
          "output_hash": "8c04d50d68276f3c88eb7158672562837e54f74f9b739af1dbea71234bd81d59",
          "completed_at": "2026-07-28T13:20:37Z",
          "judgment_result": {
            "request_hash": "3a41ff4e50009fdf4d5825547c993f652940e80ffff0da457b5c02c8621b04fe",
            "executor": "ai-collab",
            "profile": "fast-capable"
          }
        }
      ],
      "completed_at": "2026-07-28T13:20:37Z"
    },
    {
      "id": "WFR-464",
      "schema_version": "1.0",
      "workflow_id": "hub.release",
      "workflow_version": 1,
      "definition_hash": "ab6ae2afcb0128db8d994b6b397e543c7490017bd3d1b15309079edc6be94d9a",
      "plan_hash": "02bcb9cb71ca5641cc12e6270fee67758c0051b183e4204137993cd57b89a7bd",
      "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
      "inputs": {},
      "idempotency_key": "req-007-v0.16.62-release",
      "status": "completed",
      "attempt": 2,
      "created_at": "2026-07-28T13:22:56Z",
      "updated_at": "2026-07-28T13:27:17Z",
      "receipts": [
        {
          "step_id": "diff",
          "action": "git.diff_check",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "11c11db30f4b3f6c758722ba3e27eea08145b7d212f6a157451e364b48475280",
          "completed_at": "2026-07-28T13:22:57Z"
        },
        {
          "step_id": "config",
          "action": "config.audit",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "9cbf27cbac0de8a8eb0ed2dd07eae4f75908186aa645194b551c48f999ebb1b5",
          "completed_at": "2026-07-28T13:22:57Z"
        },
        {
          "step_id": "state",
          "action": "state.consistency",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "a29eb75fbbdc777fa00b6b7c7e4118f60b4f2920001e5eb42e3112173c25b42b",
          "completed_at": "2026-07-28T13:22:57Z"
        },
        {
          "step_id": "workflow_audit",
          "action": "process.fixed",
          "input_hash": "edf19b269a54d72753f1abc2b8ffcb810c2b7bc377cee7e1698c939f17e0be94",
          "output_hash": "f72dc4c211a69f205ca6088a5dbcf501f2c2a692bc669fda720a8836676be7f5",
          "completed_at": "2026-07-28T13:22:58Z"
        },
        {
          "step_id": "substrate_audit",
          "action": "process.fixed",
          "input_hash": "4998f71d2d3f6ac7dd50e10d37f60ae32d54898949950e484da9de113e18a979",
          "output_hash": "4176fd7e9d2d33bd61e5fd6bb8d392a63eaa5b2cb65b750eeb348b9dd55fe220",
          "completed_at": "2026-07-28T13:22:58Z"
        },
        {
          "step_id": "suite",
          "action": "process.fixed",
          "input_hash": "954e575e48145853f5681eda189186c95a053267158fae669114320f2e53794a",
          "output_hash": "a72c82bc962722fe4595bf74eca3ca155e0e05cf300274b1f528fbcb8d271ea2",
          "completed_at": "2026-07-28T13:27:14Z"
        },
        {
          "step_id": "release",
          "action": "process.fixed",
          "input_hash": "1e5b0c18d93eb4c2248f9a00adbd438e52f3ef02137477fb8376c69cfe86fc9b",
          "output_hash": "d16cfa3e71ef24fb29101e8ff8513342032924ed092e993918cfa83a1c932bb3",
          "completed_at": "2026-07-28T13:27:14Z"
        },
        {
          "step_id": "gaps",
          "action": "process.fixed",
          "input_hash": "577241909238eeb55683f89d2d2216648dad2e3127397993e22493829a1307a4",
          "output_hash": "91d5a20b56695b28c81effa09ce820b793cb91f1c148c0cc72933fce6bfadb4e",
          "completed_at": "2026-07-28T13:27:15Z"
        },
        {
          "step_id": "package",
          "action": "process.fixed",
          "input_hash": "06cd12e1f3db3d985f9150520afa60f288297ff0ca01a8e813e9bb6291aa8836",
          "output_hash": "1a7707216a1b839982d9e6bcdf1dfb854c473f35f5a38d90e4f018262160569b",
          "completed_at": "2026-07-28T13:27:17Z"
        },
        {
          "step_id": "gate",
          "action": "state.gate",
          "input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "output_hash": "fa280774a16a4aca63ac1ce47c5f086fdf9208473822a11376a143c1689d1723",
          "completed_at": "2026-07-28T13:27:17Z"
        }
      ],
      "steps": [
        {
          "id": "diff",
          "action": "git.diff_check",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-28T13:22:57Z",
          "output": {
            "passed": true
          },
          "output_hash": "11c11db30f4b3f6c758722ba3e27eea08145b7d212f6a157451e364b48475280",
          "completed_at": "2026-07-28T13:22:57Z"
        },
        {
          "id": "config",
          "action": "config.audit",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-28T13:22:57Z",
          "output": {
            "status": "ok",
            "summary": {
              "settings": 216,
              "mutable": 206,
              "read_only_or_managed": 10,
              "unclassified": 0,
              "unknown": 0,
              "invalid": 0,
              "missing_using_defaults": 0
            },
            "unclassified_keys": [],
            "unknown_keys": [],
            "invalid_values": [],
            "missing_using_defaults": []
          },
          "output_hash": "9cbf27cbac0de8a8eb0ed2dd07eae4f75908186aa645194b551c48f999ebb1b5",
          "completed_at": "2026-07-28T13:22:57Z"
        },
        {
          "id": "state",
          "action": "state.consistency",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-28T13:22:57Z",
          "output": {
            "status": "ok",
            "repo_root": "D:\\Projects\\prd-plugin-worktrees\\req-007-enforce-check-messages",
            "summary": {
              "errors": 0,
              "warnings": 0,
              "infos": 1
            },
            "findings": [
              {
                "id": "CONS-INFO-001",
                "severity": "info",
                "path": "docs/evidence/EV-200.md",
                "summary": "File references 2 canonical IDs across 2 prefix(es); treated as a positive signal of extra work.",
                "referenced_prefixes": [
                  "CHG",
                  "TRK"
                ],
                "referenced_id_count": 2,
                "required_action": "No action required; this is an informational signal."
              }
            ]
          },
          "output_hash": "a29eb75fbbdc777fa00b6b7c7e4118f60b4f2920001e5eb42e3112173c25b42b",
          "completed_at": "2026-07-28T13:22:57Z"
        },
        {
          "id": "workflow_audit",
          "action": "process.fixed",
          "status": "completed",
          "resolved_input_hash": "edf19b269a54d72753f1abc2b8ffcb810c2b7bc377cee7e1698c939f17e0be94",
          "started_at": "2026-07-28T13:22:57Z",
          "output": {
            "operation": "workflow_chml_audit",
            "command": [
              "python",
              "scripts/workflow_chml_audit.py",
              "--repo-root",
              ".",
              "--format",
              "json"
            ],
            "exit_code": 0,
            "stdout": "{\n  \"status\": \"ok\",\n  \"repo_root\": \"D:\\\\Projects\\\\prd-plugin-worktrees\\\\req-007-enforce-check-messages\",\n  \"summary\": {\n    \"critical\": 0,\n    \"high\": 0,\n    \"medium\": 0,\n    \"low\": 0\n  },\n  \"findings\": []\n}\n",
            "stderr": ""
          },
          "output_hash": "f72dc4c211a69f205ca6088a5dbcf501f2c2a692bc669fda720a8836676be7f5",
          "completed_at": "2026-07-28T13:22:58Z"
        },
        {
          "id": "substrate_audit",
          "action": "process.fixed",
          "status": "completed",
          "resolved_input_hash": "4998f71d2d3f6ac7dd50e10d37f60ae32d54898949950e484da9de113e18a979",
          "started_at": "2026-07-28T13:22:58Z",
          "output": {
            "operation": "substrate_capability_audit",
            "command": [
              "python",
              "scripts/prd_substrate_catalog.py",
              "--repo-root",
              ".",
              "audit"
            ],
            "exit_code": 0,
            "stdout": "{\n  \"status\": \"ok\",\n  \"schema_version\": \"1.0\",\n  \"capability_count\": 26,\n  \"runtime_tool_count\": 103,\n  \"intent_count\": 31,\n  \"summary\": {\n    \"critical\": 0,\n    \"high\": 0,\n    \"medium\": 0,\n    \"low\": 0\n  },\n  \"findings\": []\n}\n",
            "stderr": ""
          },
          "output_hash": "4176fd7e9d2d33bd61e5fd6bb8d392a63eaa5b2cb65b750eeb348b9dd55fe220",
          "completed_at": "2026-07-28T13:22:58Z"
        },
        {
          "id": "suite",
          "action": "process.fixed",
          "status": "completed",
          "resolved_input_hash": "954e575e48145853f5681eda189186c95a053267158fae669114320f2e53794a",
          "started_at": "2026-07-28T13:25:20Z",
          "output": {
            "operation": "local_workflow_check",
            "command": [
              "python",
              "scripts/local_workflow_check.py"
            ],
            "exit_code": 0,
            "stdout": "Structured file validation passed.\n$ python -m unittest discover -s tests -v\n{\n  \"status\": \"fail\",\n  \"repo_root\": \"C:\\\\Users\\\\marku\\\\AppData\\\\Local\\\\Temp\\\\tmp5a8eeczb\",\n  \"summary\": {\n    \"errors\": 1,\n    \"warnings\": 0\n  },\n  \"findings\": [\n    {\n      \"check\": \"duplicate_id\",\n      \"severity\": \"error\",\n      \"summary\": \"Duplicate id REQ-002 in .prd_plugin/state/requests.json.\",\n      \"required_action\": \"Renumber one record so REQ-002 is unique. Allocate IDs with the MCP tool prd_next_id (or the record tools like prd_open_goal) instead of hand-computing them.\"\n    }\n  ]\n}\nautonomy_level set to guided\nautonomy_level set to autonomous\nDESTRUCTIVE RESET REQUESTED: --force --yes will erase protected PRD Plugin project data.\nThe following existing state/configuration files would be replaced with skeleton defaults:\n  - .prd_plugin/state/tracking.json\nThis may erase IDs, tracking, requests, decisions, health findings, configuration, and session memory.\nFor a normal safe update, remove --yes and run: npx prd-install . --force\nPRD Plugin safe update: preserving existing state/config and refreshing plugin files only. Never add --yes to a routine update; it requests a destructive reset.\nPRD Plugin safe update: preserving existing state/config and refreshing plugin files only. Never add --yes to a routine update; it requests a destructive reset.\nPRD Plugin safe update: preserving existing state/config and refreshing plugin files only. Never add --yes to a routine update; it requests a destructive reset.\nPRD Plugin safe update: preserving existing state/config and refreshing plugin files only. Never add --yes to a routine update; it requests a destructive reset.\nPRD Plugin safe update: preserving existing state/config and refreshing plugin files only. Never add --yes to a routine update; it requests a destructive reset.\nPRD Plugin safe update: preserving existing state/config and refreshing plugin files only. Never add --yes to a routine update; it requests a destructive reset.\nPRD Plugin safe update: preserving existing state/config and refreshing plugin files only. Never add --yes to a routine update; it requests a destructive reset.\nPRD Plugin safe update: preserving existing state/config and refreshing plugin files only. Never add --yes to a routine update; it requests a destructive reset.\nPRD Plugin safe update: preserving existing state/config and refreshing plugin files only. Never add --yes to a routine update; it requests a destructive reset.\nPRD Plugin safe update: preserving existing state/config and refreshing plugin files only. Never add --yes to a routine update; it requests a destructive reset.\nPRD Plugin safe update: preserving existing state/config and refreshing plugin files only. Never add --yes to a routine update; it requests a destructive reset.\nPRD Plugin safe update: preserving existing state/config and refreshing plugin files only. Never add --yes to a routine update; it requests a destructive reset.\nPRD Plugin safe update: preserving existing state/config and refreshing plugin files only. Never add --yes to a routine update; it requests a destructive reset.\nPRD Plugin safe update: preserving existing state/config and refreshing plugin files only. Never add --yes to a routine update; it requests a destructive reset.\nPRD Plugin safe update: preserving existing state/config and refreshing plugin files only. Never add --yes to a routine update; it requests a destructive reset.\nPRD Plugin safe update: preserving existing state/config and refreshing plugin files only. Never add --yes to a routine update; it requests a destructive reset.\nPRD Plugin safe update: preserving existing state/config and refreshing plugin files only. Never add --yes to a routine update; it requests a destructive reset.\n{\n  \"published\": false,\n  \"package\": \"prd-plugin\",\n  \"version\": \"9.9.9\",\n  \"version_seen\": null,\n  \"latest_seen\": null,\n  \"attempts_used\": 1\n}\n{\n  \"published\": true,\n  \"package\": \"prd-plugin\",\n  \"version\": \"1.2.3\",\n  \"version_seen\": \"1.2.3\",\n  \"latest_seen\": \"1.2.3\",\n  \"attempts_used\": 1\n}\n{\"decision\": \"block\", \"reason\": \"Autonomous run-until-done: goal TRK-165 is still active. Continue with the next incomplete step toward it \\u2014 do not stop to ask 'shall I proceed?'. If you genuinely need the user (consent floor: push/merge/publish/secrets, or a real blocker), create the file .prd_plugin/local/autonomy-pause with a one-line reason and then stop; the guard will let you. Otherwise keep going.\"}\n$ python scripts/feature_skill_audit.py --repo-root . --format json\n{\n  \"status\": \"ok\",\n  \"repo_root\": \"D:\\\\Projects\\\\prd-plugin-worktrees\\\\req-007-enforce-check-messages\",\n  \"contract\": \"templates/feature-skill-map.json\",\n  \"feature_count\": 30,\n  \"summary\": {\n    \"critical\": 0,\n    \"high\": 0,\n    \"medium\": 0,\n    \"low\": 0\n  },\n  \"findings\": []\n}\n$ python scripts/gap_audit.py --target-version 0.16.62\n# PRD Plugin Gap Audit\n\nTarget version: `0.16.62`\n\n## Findings\n\n- None\n$ python scripts/version_advice.py --installed-repo . --format json --output request-report/version-advice.json\n$ python scripts/release_check.py --output request-report/release-hygiene.md\n$ python scripts/prd_doctor.py --repo-root . --format json --output request-report/prd-doctor.json\n$ python scripts/state_consistency_check.py --repo-root . --format json --output request-report/state-consistency.json\n$ python scripts/prd_install_skills.py --repo-root . --dry-run\n{\n  \"status\": \"dry_run\",\n  \"target_agent\": \"codex\",\n  \"targets\": [\n    {\n      \"agent\": \"codex\",\n      \"target\": \".agents\\\\skills\",\n      \"would_install\": [\n        \"project-architecture\",\n        \"project-blocker-resolution\",\n        \"project-brainstorm\",\n        \"project-change-request\",\n        \"project-code-review\",\n        \"project-decision-ledger\",\n        \"project-decision-policy\",\n        \"project-deterministic-workflows\",\n        \"project-document-branch\",\n        \"project-evidence\",\n        \"project-evidence-ledger\",\n        \"project-git-workflow\",\n        \"project-health\",\n        \"project-implementation-plan\",\n        \"project-llm-wiki\",\n        \"project-local-integration\",\n        \"project-memory\",\n        \"project-planning-lifecycle\",\n        \"project-prd\",\n        \"project-prd-plugin-setup\",\n        \"project-request-intake\",\n        \"project-session-close\",\n        \"project-systematic-debugging\",\n        \"project-test-driven-implementation\",\n        \"project-traceability-review\",\n        \"project-traceability-sync\",\n        \"project-verification-before-completion\",\n        \"source-command-prd-autonomy\",\n        \"source-command-prd-close\",\n        \"source-command-prd-config\",\n        \"source-command-prd-drift\",\n        \"source-command-prd-graph\",\n        \"source-command-prd-hooks\",\n        \"source-command-prd-new\",\n        \"source-command-prd-off\",\n        \"source-command-prd-on\",\n        \"source-command-prd-reflections\",\n        \"source-command-prd-report\",\n        \"source-command-prd-status\",\n        \"source-command-prd-track\",\n        \"source-command-prd-version\",\n        \"source-command-prd-workflow\"\n      ],\n      \"would_remove\": [\n        \"project-fold-it-in\",\n        \"project-self-audit\"\n      ]\n    }\n  ],\n  \"installed_count\": 0,\n  \"target\": \".agents\\\\skills\",\n  \"installed\": [],\n  \"removed\": [],\n  \"would_install\": [\n    \"project-architecture\",\n    \"project-blocker-resolution\",\n    \"project-brainstorm\",\n    \"project-change-request\",\n    \"project-code-review\",\n    \"project-decision-ledger\",\n    \"project-decision-policy\",\n    \"project-deterministic-workflows\",\n    \"project-document-branch\",\n    \"project-evidence\",\n    \"project-evidence-ledger\",\n    \"project-git-workflow\",\n    \"project-health\",\n    \"project-implementation-plan\",\n    \"project-llm-wiki\",\n    \"project-local-integration\",\n    \"project-memory\",\n    \"project-planning-lifecycle\",\n    \"project-prd\",\n    \"project-prd-plugin-setup\",\n    \"project-request-intake\",\n    \"project-session-close\",\n    \"project-systematic-debugging\",\n    \"project-test-driven-implementation\",\n    \"project-traceability-review\",\n    \"project-traceability-sync\",\n    \"project-verification-before-completion\",\n    \"source-command-prd-autonomy\",\n    \"source-command-prd-close\",\n    \"source-command-prd-config\",\n    \"source-command-prd-drift\",\n    \"source-command-prd-graph\",\n    \"source-command-prd-hooks\",\n    \"source-command-prd-new\",\n    \"source-command-prd-off\",\n    \"source-command-prd-on\",\n    \"source-command-prd-reflections\",\n    \"source-command-prd-report\",\n    \"source-command-prd-status\",\n    \"source-command-prd-track\",\n    \"source-command-prd-version\",\n    \"source-command-prd-workflow\"\n  ],\n  \"would_remove\": [\n    \"project-fold-it-in\",\n    \"project-self-audit\"\n  ]\n}\n$ python scripts/request_report.py --config .prd_plugin/config.json --format markdown --output request-report/request-report.md\n$ python scripts/request_report.py --config .prd_plugin/config.json --format json --output request-report/request-report.json\n$ python scripts/message_check.py --config .prd_plugin/config.json --format json --output request-report/message-check.json\nLocal workflow check completed.\n",
            "stderr": "lid_values) ... ok\ntest_enable_disable_only_accept_mutable_booleans (test_unified_config.MutationTests.test_enable_disable_only_accept_mutable_booleans) ... ok\ntest_failed_atomic_replace_leaves_original_config_untouched (test_unified_config.MutationTests.test_failed_atomic_replace_leaves_original_config_untouched) ... ok\ntest_malformed_config_is_never_replaced_by_a_mutation (test_unified_config.MutationTests.test_malformed_config_is_never_replaced_by_a_mutation) ... ok\ntest_manual_set_marks_profile_custom_and_preserves_style (test_unified_config.MutationTests.test_manual_set_marks_profile_custom_and_preserves_style) ... ok\ntest_scalar_parent_is_not_clobbered_by_nested_set (test_unified_config.MutationTests.test_scalar_parent_is_not_clobbered_by_nested_set) ... ok\ntest_builtin_profile_dry_run_then_atomic_apply (test_unified_config.ProfileTests.test_builtin_profile_dry_run_then_atomic_apply) ... ok\ntest_invalid_custom_profile_never_partially_writes (test_unified_config.ProfileTests.test_invalid_custom_profile_never_partially_writes) ... ok\ntest_save_show_diff_and_delete_custom_profile (test_unified_config.ProfileTests.test_save_show_diff_and_delete_custom_profile) ... ok\ntest_does_not_flag_canonical_prd_state_paths (test_unsubmitted_plugin_request.UnsubmittedPluginRequestTests.test_does_not_flag_canonical_prd_state_paths) ... ok\ntest_does_not_flag_ordinary_project_requests (test_unsubmitted_plugin_request.UnsubmittedPluginRequestTests.test_does_not_flag_ordinary_project_requests) ... ok\ntest_does_not_flag_rejected_requests (test_unsubmitted_plugin_request.UnsubmittedPluginRequestTests.test_does_not_flag_rejected_requests) ... ok\ntest_does_not_flag_when_already_marked_upstream (test_unsubmitted_plugin_request.UnsubmittedPluginRequestTests.test_does_not_flag_when_already_marked_upstream) ... ok\ntest_flags_a_local_request_about_a_plugin_script (test_unsubmitted_plugin_request.UnsubmittedPluginRequestTests.test_flags_a_local_request_about_a_plugin_script) ... ok\ntest_flags_a_request_that_names_itself_upstream (test_unsubmitted_plugin_request.UnsubmittedPluginRequestTests.test_flags_a_request_that_names_itself_upstream) ... ok\ntest_never_fires_in_the_hub_repo_itself (test_unsubmitted_plugin_request.UnsubmittedPluginRequestTests.test_never_fires_in_the_hub_repo_itself) ... ok\ntest_wired_into_run_checks (test_unsubmitted_plugin_request.UnsubmittedPluginRequestTests.test_wired_into_run_checks) ... ok\ntest_output_writes_lf_and_a_trailing_newline (test_utcp_first_authority.GeneratedArtifactsAreByteStableTests.test_output_writes_lf_and_a_trailing_newline) ... ok\ntest_the_committed_manual_matches_a_fresh_generation (test_utcp_first_authority.GeneratedArtifactsAreByteStableTests.test_the_committed_manual_matches_a_fresh_generation) ... ok\ntest_every_spec_tool_maps_to_a_catalog_capability (test_utcp_first_authority.ParityDirectionTests.test_every_spec_tool_maps_to_a_catalog_capability) ... ok\ntest_server_metadata_matches_the_spec (test_utcp_first_authority.ParityDirectionTests.test_server_metadata_matches_the_spec) ... ok\ntest_python_entry_points_share_the_same_lock (test_utcp_first_authority.SafetyUnchangedTests.test_python_entry_points_share_the_same_lock)\nThe migration target already exists and is proven: prd_reflections ... ok\ntest_the_state_lock_is_still_held_for_mutations (test_utcp_first_authority.SafetyUnchangedTests.test_the_state_lock_is_still_held_for_mutations) ... ok\ntest_no_shipped_tool_metadata_carries_mojibake (test_utcp_first_authority.ShippedTextIsCleanTests.test_no_shipped_tool_metadata_carries_mojibake) ... ok\ntest_shipped_tool_metadata_is_valid_utf8 (test_utcp_first_authority.ShippedTextIsCleanTests.test_shipped_tool_metadata_is_valid_utf8)\nA file written through a cp1252 layer either fails to decode or ... ok\ntest_each_tool_declares_name_description_and_schema (test_utcp_first_authority.SpecIsTheSourceTests.test_each_tool_declares_name_description_and_schema) ... ok\ntest_the_manual_is_generated_from_the_spec_not_the_server (test_utcp_first_authority.SpecIsTheSourceTests.test_the_manual_is_generated_from_the_spec_not_the_server) ... ok\ntest_the_server_no_longer_authors_descriptions (test_utcp_first_authority.SpecIsTheSourceTests.test_the_server_no_longer_authors_descriptions)\nserver.cjs must READ definitions, not declare them. While a tool ... ok\ntest_the_spec_exists_and_declares_every_tool (test_utcp_first_authority.SpecIsTheSourceTests.test_the_spec_exists_and_declares_every_tool) ... ok\ntest_official_bridge_round_trips_cli_and_mcp_templates (test_utcp_first_catalog.BridgeParityTests.test_official_bridge_round_trips_cli_and_mcp_templates) ... skipped 'official @utcp/mcp-bridge not installed (npm install)'\ntest_bridged_entries_reuse_server_metadata_verbatim (test_utcp_first_catalog.GeneratedProjectionTests.test_bridged_entries_reuse_server_metadata_verbatim)\nEach bridged manual entry's description and inputs equal the server's ... ok\ntest_checked_in_metadata_matches_live_server (test_utcp_first_catalog.GeneratedProjectionTests.test_checked_in_metadata_matches_live_server)\nThe pinned metadata projection cannot drift behind the live server. ... ok\ntest_mutations_keep_the_validated_handler_path (test_utcp_first_catalog.GuardedMutationTests.test_mutations_keep_the_validated_handler_path)\nEvery manual tool in a non-read capability calls the plugin state ... ok\ntest_read_only_cli_tools_stay_cli (test_utcp_first_catalog.GuardedMutationTests.test_read_only_cli_tools_stay_cli)\nThe 12 cli-native observe/recall tools keep their cli templates. ... ok\ntest_checked_in_metadata_projection_exists (test_utcp_first_catalog.ManualCompletenessTests.test_checked_in_metadata_projection_exists)\nThe server's tool metadata is a checked-in generated artifact so the ... ok\ntest_manual_covers_every_capability_on_both_transports (test_utcp_first_catalog.ManualCompletenessTests.test_manual_covers_every_capability_on_both_transports)\nEvery UTCP and MCP registration in the tool-surface catalog appears ... ok\ntest_appends_version_change_request (test_version_advice.VersionAdviceTests.test_appends_version_change_request) ... ok\ntest_builds_safe_update_advice_for_low_risk_releases (test_version_advice.VersionAdviceTests.test_builds_safe_update_advice_for_low_risk_releases) ... ok\ntest_cli_uses_hub_releases_when_downstream_repo_has_no_releases_file (test_version_advice.VersionAdviceTests.test_cli_uses_hub_releases_when_downstream_repo_has_no_releases_file) ... ok\ntest_detects_installed_version_from_bom_json (test_version_advice.VersionAdviceTests.test_detects_installed_version_from_bom_json) ... ok\ntest_detects_installed_version_from_opencode_plugin_manifest (test_version_advice.VersionAdviceTests.test_detects_installed_version_from_opencode_plugin_manifest) ... ok\ntest_detects_installed_version_from_prd_plugin_config (test_version_advice.VersionAdviceTests.test_detects_installed_version_from_prd_plugin_config) ... ok\ntest_detects_latest_version_from_plugin_manifest (test_version_advice.VersionAdviceTests.test_detects_latest_version_from_plugin_manifest) ... ok\ntest_installed_version_priority_prefers_config_then_codex_then_opencode (test_version_advice.VersionAdviceTests.test_installed_version_priority_prefers_config_then_codex_then_opencode) ... ok\ntest_orders_prerelease_before_final_release (test_version_advice.VersionAdviceTests.test_orders_prerelease_before_final_release) ... ok\ntest_recommends_review_first_for_medium_or_high_risk_release (test_version_advice.VersionAdviceTests.test_recommends_review_first_for_medium_or_high_risk_release) ... ok\ntest_disabled_returns_disabled_and_no_fetch (test_version_check.CheckTests.test_disabled_returns_disabled_and_no_fetch) ... ok\ntest_force_refetches_within_ttl (test_version_check.CheckTests.test_force_refetches_within_ttl) ... ok\ntest_network_failure_is_fail_open (test_version_check.CheckTests.test_network_failure_is_fail_open) ... ok\ntest_no_update_when_current (test_version_check.CheckTests.test_no_update_when_current) ... ok\ntest_status_is_cache_only_no_fetch (test_version_check.CheckTests.test_status_is_cache_only_no_fetch) ... ok\ntest_ttl_cache_avoids_refetch (test_version_check.CheckTests.test_ttl_cache_avoids_refetch) ... ok\ntest_ttl_expiry_refetches (test_version_check.CheckTests.test_ttl_expiry_refetches) ... ok\ntest_update_available_when_npm_is_ahead (test_version_check.CheckTests.test_update_available_when_npm_is_ahead) ... ok\ntest_status_cli_exits_zero (test_version_check.CliTests.test_status_cli_exits_zero) ... ok\ntest_default_ttl_is_responsive_not_a_day (test_version_check.FreshnessTests.test_default_ttl_is_responsive_not_a_day) ... ok\ntest_fetch_latest_accepts_a_timeout (test_version_check.FreshnessTests.test_fetch_latest_accepts_a_timeout) ... ok\ntest_nudge_refreshes_in_session_not_cache_only (test_version_check.FreshnessTests.test_nudge_refreshes_in_session_not_cache_only) ... ok\ntest_registry_default_ttl_matches (test_version_check.FreshnessTests.test_registry_default_ttl_matches) ... ok\ntest_semver_ordering (test_version_check.ParseTests.test_semver_ordering) ... ok\ntest_set_enabled_writes_config (test_version_check.ToggleTests.test_set_enabled_writes_config) ... ok\ntest_config_has_version_check_default_on (test_version_check.WiringTests.test_config_has_version_check_default_on) ... ok\ntest_nudge_surfaces_update_available (test_version_check.WiringTests.test_nudge_surfaces_update_available) ... ok\ntest_prd_version_command_exists (test_version_check.WiringTests.test_prd_version_command_exists) ... ok\ntest_script_registered_downstream (test_version_check.WiringTests.test_script_registered_downstream) ... ok\ntest_plan_cli_emits_json (test_wiki_backfill.CliTests.test_plan_cli_emits_json) ... ok\ntest_status_cli (test_wiki_backfill.CliTests.test_status_cli) ... ok\ntest_marker_written_for_established_repo_gaining_wiki (test_wiki_backfill.InstallerMarkerTests.test_marker_written_for_established_repo_gaining_wiki) ... ok\ntest_no_marker_for_empty_scaffold (test_wiki_backfill.InstallerMarkerTests.test_no_marker_for_empty_scaffold) ... ok\ntest_no_marker_when_wiki_already_exists (test_wiki_backfill.InstallerMarkerTests.test_no_marker_when_wiki_already_exists) ... ok\ntest_no_marker_when_wiki_disabled (test_wiki_backfill.InstallerMarkerTests.test_no_marker_when_wiki_disabled) ... ok\ntest_pending_false_when_absent (test_wiki_backfill.StatusTests.test_pending_false_when_absent) ... ok\ntest_pending_false_when_wiki_already_exists (test_wiki_backfill.StatusTests.test_pending_false_when_wiki_already_exists) ... ok\ntest_pending_true_when_marker_present (test_wiki_backfill.StatusTests.test_pending_true_when_marker_present) ... ok\ntest_plan_excludes_generated_report_artifacts (test_wiki_backfill.SurveyPlanTests.test_plan_excludes_generated_report_artifacts)\nrequest-report/ (incl. its calibration report trees) and docs/evidence/ ... ok\ntest_plan_excludes_plugin_and_vendor_noise (test_wiki_backfill.SurveyPlanTests.test_plan_excludes_plugin_and_vendor_noise) ... ok\ntest_plan_inventories_code_docs_and_state (test_wiki_backfill.SurveyPlanTests.test_plan_inventories_code_docs_and_state) ... ok\ntest_plan_is_read_only (test_wiki_backfill.SurveyPlanTests.test_plan_is_read_only) ... ok\ntest_wiki_drift_in_on_stop_and_default_sets (test_wiki_backfill.WikiDriftMonitorWiringTests.test_wiki_drift_in_on_stop_and_default_sets) ... ok\ntest_current_article_no_drift (test_wiki_backfill.WikiDriftTests.test_current_article_no_drift) ... ok\ntest_drift_cli (test_wiki_backfill.WikiDriftTests.test_drift_cli) ... ok\ntest_far_behind_article_flagged (test_wiki_backfill.WikiDriftTests.test_far_behind_article_flagged) ... ok\ntest_no_wiki_is_ok (test_wiki_backfill.WikiDriftTests.test_no_wiki_is_ok) ... ok\ntest_unlinked_markdown_reference_is_part_of_wiki_drift (test_wiki_backfill.WikiDriftTests.test_unlinked_markdown_reference_is_part_of_wiki_drift) ... ok\ntest_unstamped_article_flagged (test_wiki_backfill.WikiDriftTests.test_unstamped_article_flagged) ... ok\ntest_wiki_drift_uses_configured_wiki_directory (test_wiki_backfill.WikiDriftTests.test_wiki_drift_uses_configured_wiki_directory) ... ok\ntest_ambiguous_reference_is_reported_but_never_guessed (test_wiki_backfill.WikiInlineMarkdownLinkTests.test_ambiguous_reference_is_reported_but_never_guessed) ... ok\ntest_cli_check_fails_and_fix_then_passes (test_wiki_backfill.WikiInlineMarkdownLinkTests.test_cli_check_fails_and_fix_then_passes) ... ok\ntest_existing_inline_links_and_fenced_examples_are_not_findings (test_wiki_backfill.WikiInlineMarkdownLinkTests.test_existing_inline_links_and_fenced_examples_are_not_findings) ... ok\ntest_fix_rewrites_only_unambiguous_references_to_relative_inline_links (test_wiki_backfill.WikiInlineMarkdownLinkTests.test_fix_rewrites_only_unambiguous_references_to_relative_inline_links) ... ok\ntest_reports_resolvable_bare_and_code_wrapped_markdown_references (test_wiki_backfill.WikiInlineMarkdownLinkTests.test_reports_resolvable_bare_and_code_wrapped_markdown_references) ... ok\ntest_nudge_surfaces_pending_backfill (test_wiki_backfill.WiringTests.test_nudge_surfaces_pending_backfill) ... ok\ntest_script_registered_downstream (test_wiki_backfill.WiringTests.test_script_registered_downstream) ... ok\ntest_skill_has_backfill_mode (test_wiki_backfill.WiringTests.test_skill_has_backfill_mode) ... ok\ntest_copy_and_download_controls_are_wired (test_wiki_html_export.WikiHtmlExportTests.test_copy_and_download_controls_are_wired) ... ok\ntest_default_output_lands_in_the_local_runtime_dir (test_wiki_html_export.WikiHtmlExportTests.test_default_output_lands_in_the_local_runtime_dir) ... ok\ntest_every_page_is_embedded_with_exact_markdown (test_wiki_html_export.WikiHtmlExportTests.test_every_page_is_embedded_with_exact_markdown) ... ok\ntest_export_all_generates_viewers_and_super_index (test_wiki_html_export.WikiHtmlExportTests.test_export_all_generates_viewers_and_super_index) ... ok\ntest_export_is_one_self_contained_offline_file (test_wiki_html_export.WikiHtmlExportTests.test_export_is_one_self_contained_offline_file) ... ok\ntest_guest_repo_viewer_is_hosted_by_the_host_repo (test_wiki_html_export.WikiHtmlExportTests.test_guest_repo_viewer_is_hosted_by_the_host_repo)\nA repo without .prd_plugin gets NO new files in its own tree; its ... ok\ntest_hub_repo_exports_all_pages (test_wiki_html_export.WikiHtmlExportTests.test_hub_repo_exports_all_pages) ... ok\ntest_parse_wiki_log_extracts_dated_entries_with_bodies (test_wiki_html_export.WikiHtmlExportTests.test_parse_wiki_log_extracts_dated_entries_with_bodies)\nREQ-112: every workspace log follows '## [date] mode | text'. ... ok\ntest_parse_wiki_log_tolerates_missing_log (test_wiki_html_export.WikiHtmlExportTests.test_parse_wiki_log_tolerates_missing_log) ... ok\ntest_script_content_cannot_break_the_payload (test_wiki_html_export.WikiHtmlExportTests.test_script_content_cannot_break_the_payload) ... ok\ntest_super_index_has_a_combined_changelog (test_wiki_html_export.WikiHtmlExportTests.test_super_index_has_a_combined_changelog) ... ok\ntest_super_index_reports_page_counts (test_wiki_html_export.WikiHtmlExportTests.test_super_index_reports_page_counts) ... ok\ntest_workspace_discovery_uses_the_wiki_convention_marker (test_wiki_html_export.WikiHtmlExportTests.test_workspace_discovery_uses_the_wiki_convention_marker)\nREQ-110 + REQ-111: any immediate child whose wiki follows the ... ok\ntest_a_repo_without_a_wiki_is_not_in_drift (test_wiki_ingest_drift.DetectionTests.test_a_repo_without_a_wiki_is_not_in_drift)\nNo wiki is a legitimate state, not a failure to ingest. ... ok\ntest_fully_ingested_repo_is_clean (test_wiki_ingest_drift.DetectionTests.test_fully_ingested_repo_is_clean) ... ok\ntest_malformed_state_degrades_rather_than_raising (test_wiki_ingest_drift.DetectionTests.test_malformed_state_degrades_rather_than_raising) ... ok\ntest_non_implemented_requests_are_never_expected_in_the_log (test_wiki_ingest_drift.DetectionTests.test_non_implemented_requests_are_never_expected_in_the_log) ... ok\ntest_only_work_since_the_last_ingest_is_actionable (test_wiki_ingest_drift.DetectionTests.test_only_work_since_the_last_ingest_is_actionable)\nRaw counting flags pre-wiki history as drift � ~70 items in the hub, ... ok\ntest_reports_implemented_requests_absent_from_the_log (test_wiki_ingest_drift.DetectionTests.test_reports_implemented_requests_absent_from_the_log) ... ok\ntest_it_runs_against_this_repo_and_returns_a_usable_report (test_wiki_ingest_drift.RealRepoTests.test_it_runs_against_this_repo_and_returns_a_usable_report)\nGrounded against real state, but NOT pinned to a specific gap: a test ... ok\ntest_prd_status_omits_it_when_clean (test_wiki_ingest_drift.SurfaceTests.test_prd_status_omits_it_when_clean) ... ok\ntest_prd_status_reports_the_drift (test_wiki_ingest_drift.SurfaceTests.test_prd_status_reports_the_drift) ... ok\ntest_this_repos_wiki_reads_byte_exact (test_wiki_page_contract.HubRepoSmokeTests.test_this_repos_wiki_reads_byte_exact) ... ok\ntest_list_enumerates_canonical_pages_with_titles (test_wiki_page_contract.WikiPageListTests.test_list_enumerates_canonical_pages_with_titles) ... ok\ntest_boundaries_are_hard (test_wiki_page_contract.WikiPageReadTests.test_boundaries_are_hard) ... ok\ntest_drift_remains_the_default_action (test_wiki_page_contract.WikiPageReadTests.test_drift_remains_the_default_action) ... ok\ntest_read_page_without_stamps_reports_null_provenance (test_wiki_page_contract.WikiPageReadTests.test_read_page_without_stamps_reports_null_provenance) ... ok\ntest_read_requires_a_path (test_wiki_page_contract.WikiPageReadTests.test_read_requires_a_path) ... ok\ntest_read_returns_exact_markdown_with_provenance (test_wiki_page_contract.WikiPageReadTests.test_read_returns_exact_markdown_with_provenance) ... ok\ntest_no_cp1252_unencodable_chars_in_agent_facing_tools (test_windows_console_safe.SourceScanTests.test_no_cp1252_unencodable_chars_in_agent_facing_tools) ... ok\ntest_backfill_pending_status_renders_cp1252_safe (test_windows_console_safe.StatusRenderTests.test_backfill_pending_status_renders_cp1252_safe) ... ok\ntest_json_output_escapes_non_console_characters (test_windows_console_safe.WorkflowCliRenderTests.test_json_output_escapes_non_console_characters) ... ok\ntest_repository_workflow_surfaces_are_chml_zero (test_workflow_chml_audit.WorkflowChmlAuditTests.test_repository_workflow_surfaces_are_chml_zero) ... ok\ntest_semantic_skill_finding_is_part_of_workflow_chml (test_workflow_chml_audit.WorkflowChmlAuditTests.test_semantic_skill_finding_is_part_of_workflow_chml) ... ok\ntest_git_workflow_pushes_clean_verified_commits_in_autonomous (test_workflow_consistency.AutonomyConflictResolutionTests.test_git_workflow_pushes_clean_verified_commits_in_autonomous) ... ok\ntest_request_intake_defers_autonomy_and_owns_graduation (test_workflow_consistency.AutonomyConflictResolutionTests.test_request_intake_defers_autonomy_and_owns_graduation) ... ok\ntest_evidence_pair_states_create_vs_review_boundary (test_workflow_consistency.BoundaryClarityTests.test_evidence_pair_states_create_vs_review_boundary) ... ok\ntest_session_close_states_memory_boundary (test_workflow_consistency.BoundaryClarityTests.test_session_close_states_memory_boundary) ... ok\ntest_document_branch_has_promotion_owner (test_workflow_consistency.DeadEndOwnerTests.test_document_branch_has_promotion_owner) ... ok\ntest_health_findings_have_triage_dispositions (test_workflow_consistency.DeadEndOwnerTests.test_health_findings_have_triage_dispositions) ... ok\ntest_memory_owns_schema_version_changes (test_workflow_consistency.DeadEndOwnerTests.test_memory_owns_schema_version_changes) ... ok\ntest_planning_lifecycle_has_stage_readiness_checkpoints (test_workflow_consistency.DeadEndOwnerTests.test_planning_lifecycle_has_stage_readiness_checkpoints) ... ok\ntest_session_close_runs_traceability_sync (test_workflow_consistency.DeadEndOwnerTests.test_session_close_runs_traceability_sync) ... ok\n\n----------------------------------------------------------------------\nRan 1296 tests in 112.091s\n\nOK (skipped=1)\n"
          },
          "output_hash": "a72c82bc962722fe4595bf74eca3ca155e0e05cf300274b1f528fbcb8d271ea2",
          "completed_at": "2026-07-28T13:27:14Z"
        },
        {
          "id": "release",
          "action": "process.fixed",
          "status": "completed",
          "resolved_input_hash": "1e5b0c18d93eb4c2248f9a00adbd438e52f3ef02137477fb8376c69cfe86fc9b",
          "started_at": "2026-07-28T13:27:14Z",
          "output": {
            "operation": "release_check",
            "command": [
              "python",
              "scripts/release_check.py"
            ],
            "exit_code": 0,
            "stdout": "# Release Hygiene Report\n\nBase version: `0.16.60`\nHead version: `0.16.62`\nChanged files checked: 39\n\n## Findings\n\n- None\n",
            "stderr": ""
          },
          "output_hash": "d16cfa3e71ef24fb29101e8ff8513342032924ed092e993918cfa83a1c932bb3",
          "completed_at": "2026-07-28T13:27:14Z"
        },
        {
          "id": "gaps",
          "action": "process.fixed",
          "status": "completed",
          "resolved_input_hash": "577241909238eeb55683f89d2d2216648dad2e3127397993e22493829a1307a4",
          "started_at": "2026-07-28T13:27:15Z",
          "output": {
            "operation": "gap_audit",
            "command": [
              "python",
              "scripts/gap_audit.py",
              "--target-version",
              "0.16.62",
              "--config",
              ".prd_plugin/config.json",
              "--releases",
              ".prd_plugin/state/releases.json"
            ],
            "exit_code": 0,
            "stdout": "# PRD Plugin Gap Audit\n\nTarget version: `0.16.62`\n\n## Findings\n\n- None\n",
            "stderr": ""
          },
          "output_hash": "91d5a20b56695b28c81effa09ce820b793cb91f1c148c0cc72933fce6bfadb4e",
          "completed_at": "2026-07-28T13:27:15Z"
        },
        {
          "id": "package",
          "action": "process.fixed",
          "status": "completed",
          "resolved_input_hash": "06cd12e1f3db3d985f9150520afa60f288297ff0ca01a8e813e9bb6291aa8836",
          "started_at": "2026-07-28T13:27:15Z",
          "output": {
            "operation": "package_check",
            "command": [
              "npm",
              "pack",
              "--dry-run"
            ],
            "exit_code": 0,
            "stdout": "prd-plugin-0.16.62.tgz\n",
            "stderr": "e.md\nnpm notice 17.0kB templates/repo-skeleton/.agents/skills/project-llm-wiki/SKILL.md\nnpm notice 7.4kB templates/repo-skeleton/.agents/skills/project-local-integration/SKILL.md\nnpm notice 8.1kB templates/repo-skeleton/.agents/skills/project-memory/SKILL.md\nnpm notice 6.2kB templates/repo-skeleton/.agents/skills/project-planning-lifecycle/SKILL.md\nnpm notice 6.0kB templates/repo-skeleton/.agents/skills/project-prd-plugin-setup/SKILL.md\nnpm notice 3.5kB templates/repo-skeleton/.agents/skills/project-prd/SKILL.md\nnpm notice 28.0kB templates/repo-skeleton/.agents/skills/project-request-intake/SKILL.md\nnpm notice 4.8kB templates/repo-skeleton/.agents/skills/project-session-close/SKILL.md\nnpm notice 10.3kB templates/repo-skeleton/.agents/skills/project-systematic-debugging/SKILL.md\nnpm notice 4.8kB templates/repo-skeleton/.agents/skills/project-test-driven-implementation/SKILL.md\nnpm notice 3.7kB templates/repo-skeleton/.agents/skills/project-traceability-review/SKILL.md\nnpm notice 2.5kB templates/repo-skeleton/.agents/skills/project-traceability-sync/SKILL.md\nnpm notice 6.6kB templates/repo-skeleton/.agents/skills/project-verification-before-completion/SKILL.md\nnpm notice 1.5kB templates/repo-skeleton/.agents/skills/source-command-prd-autonomy/SKILL.md\nnpm notice 1.2kB templates/repo-skeleton/.agents/skills/source-command-prd-close/SKILL.md\nnpm notice 3.3kB templates/repo-skeleton/.agents/skills/source-command-prd-config/SKILL.md\nnpm notice 2.4kB templates/repo-skeleton/.agents/skills/source-command-prd-drift/SKILL.md\nnpm notice 2.1kB templates/repo-skeleton/.agents/skills/source-command-prd-graph/SKILL.md\nnpm notice 2.2kB templates/repo-skeleton/.agents/skills/source-command-prd-hooks/SKILL.md\nnpm notice 1.3kB templates/repo-skeleton/.agents/skills/source-command-prd-new/SKILL.md\nnpm notice 2.0kB templates/repo-skeleton/.agents/skills/source-command-prd-off/SKILL.md\nnpm notice 1.5kB templates/repo-skeleton/.agents/skills/source-command-prd-on/SKILL.md\nnpm notice 2.3kB templates/repo-skeleton/.agents/skills/source-command-prd-reflections/SKILL.md\nnpm notice 2.5kB templates/repo-skeleton/.agents/skills/source-command-prd-report/SKILL.md\nnpm notice 1.2kB templates/repo-skeleton/.agents/skills/source-command-prd-status/SKILL.md\nnpm notice 1.7kB templates/repo-skeleton/.agents/skills/source-command-prd-track/SKILL.md\nnpm notice 1.8kB templates/repo-skeleton/.agents/skills/source-command-prd-version/SKILL.md\nnpm notice 1.7kB templates/repo-skeleton/.agents/skills/source-command-prd-workflow/SKILL.md\nnpm notice 764B templates/repo-skeleton/.claude-plugin/plugin.json\nnpm notice 772B templates/repo-skeleton/.claude/commands/prd-autonomy.md\nnpm notice 493B templates/repo-skeleton/.claude/commands/prd-close.md\nnpm notice 2.5kB templates/repo-skeleton/.claude/commands/prd-config.md\nnpm notice 1.6kB templates/repo-skeleton/.claude/commands/prd-drift.md\nnpm notice 1.4kB templates/repo-skeleton/.claude/commands/prd-graph.md\nnpm notice 1.6kB templates/repo-skeleton/.claude/commands/prd-hooks.md\nnpm notice 639B templates/repo-skeleton/.claude/commands/prd-new.md\nnpm notice 1.4kB templates/repo-skeleton/.claude/commands/prd-off.md\nnpm notice 862B templates/repo-skeleton/.claude/commands/prd-on.md\nnpm notice 1.6kB templates/repo-skeleton/.claude/commands/prd-reflections.md\nnpm notice 1.8kB templates/repo-skeleton/.claude/commands/prd-report.md\nnpm notice 549B templates/repo-skeleton/.claude/commands/prd-status.md\nnpm notice 974B templates/repo-skeleton/.claude/commands/prd-track.md\nnpm notice 1.0kB templates/repo-skeleton/.claude/commands/prd-version.md\nnpm notice 938B templates/repo-skeleton/.claude/commands/prd-workflow.md\nnpm notice 1.6kB templates/repo-skeleton/.claude/hooks/prd_drift_check.py\nnpm notice 2.0kB templates/repo-skeleton/.claude/hooks/prd_log_skill.py\nnpm notice 4.1kB templates/repo-skeleton/.claude/hooks/prd_nudge.py\nnpm notice 3.7kB templates/repo-skeleton/.claude/hooks/prd_precommit_gate.py\nnpm notice 6.1kB templates/repo-skeleton/.claude/hooks/prd_reflection.py\nnpm notice 3.5kB templates/repo-skeleton/.claude/hooks/prd_session_report.py\nnpm notice 15.8kB templates/repo-skeleton/.claude/hooks/prd_stop_guard.py\nnpm notice 1.2kB templates/repo-skeleton/.claude/settings.json\nnpm notice 3.0kB templates/repo-skeleton/.claude/skills/project-architecture/SKILL.md\nnpm notice 7.4kB templates/repo-skeleton/.claude/skills/project-blocker-resolution/SKILL.md\nnpm notice 2.8kB templates/repo-skeleton/.claude/skills/project-brainstorm/SKILL.md\nnpm notice 5.5kB templates/repo-skeleton/.claude/skills/project-change-request/SKILL.md\nnpm notice 6.3kB templates/repo-skeleton/.claude/skills/project-code-review/SKILL.md\nnpm notice 2.7kB templates/repo-skeleton/.claude/skills/project-decision-ledger/SKILL.md\nnpm notice 23.6kB templates/repo-skeleton/.claude/skills/project-decision-policy/SKILL.md\nnpm notice 4.4kB templates/repo-skeleton/.claude/skills/project-deterministic-workflows/SKILL.md\nnpm notice 5.2kB templates/repo-skeleton/.claude/skills/project-document-branch/SKILL.md\nnpm notice 2.8kB templates/repo-skeleton/.claude/skills/project-evidence-ledger/SKILL.md\nnpm notice 3.3kB templates/repo-skeleton/.claude/skills/project-evidence/SKILL.md\nnpm notice 11.9kB templates/repo-skeleton/.claude/skills/project-git-workflow/SKILL.md\nnpm notice 7.4kB templates/repo-skeleton/.claude/skills/project-health/SKILL.md\nnpm notice 6.0kB templates/repo-skeleton/.claude/skills/project-implementation-plan/SKILL.md\nnpm notice 1.1kB templates/repo-skeleton/.claude/skills/project-llm-wiki/LICENSE\nnpm notice 842B templates/repo-skeleton/.claude/skills/project-llm-wiki/references/archive-template.md\nnpm notice 843B templates/repo-skeleton/.claude/skills/project-llm-wiki/references/article-template.md\nnpm notice 559B templates/repo-skeleton/.claude/skills/project-llm-wiki/references/index-template.md\nnpm notice 317B templates/repo-skeleton/.claude/skills/project-llm-wiki/references/raw-template.md\nnpm notice 17.0kB templates/repo-skeleton/.claude/skills/project-llm-wiki/SKILL.md\nnpm notice 7.4kB templates/repo-skeleton/.claude/skills/project-local-integration/SKILL.md\nnpm notice 8.1kB templates/repo-skeleton/.claude/skills/project-memory/SKILL.md\nnpm notice 6.2kB templates/repo-skeleton/.claude/skills/project-planning-lifecycle/SKILL.md\nnpm notice 6.0kB templates/repo-skeleton/.claude/skills/project-prd-plugin-setup/SKILL.md\nnpm notice 3.5kB templates/repo-skeleton/.claude/skills/project-prd/SKILL.md\nnpm notice 28.0kB templates/repo-skeleton/.claude/skills/project-request-intake/SKILL.md\nnpm notice 4.8kB templates/repo-skeleton/.claude/skills/project-session-close/SKILL.md\nnpm notice 10.3kB templates/repo-skeleton/.claude/skills/project-systematic-debugging/SKILL.md\nnpm notice 4.8kB templates/repo-skeleton/.claude/skills/project-test-driven-implementation/SKILL.md\nnpm notice 3.7kB templates/repo-skeleton/.claude/skills/project-traceability-review/SKILL.md\nnpm notice 2.5kB templates/repo-skeleton/.claude/skills/project-traceability-sync/SKILL.md\nnpm notice 6.6kB templates/repo-skeleton/.claude/skills/project-verification-before-completion/SKILL.md\nnpm notice 1.5kB templates/repo-skeleton/.claude/skills/source-command-prd-autonomy/SKILL.md\nnpm notice 1.2kB templates/repo-skeleton/.claude/skills/source-command-prd-close/SKILL.md\nnpm notice 3.3kB templates/repo-skeleton/.claude/skills/source-command-prd-config/SKILL.md\nnpm notice 2.4kB templates/repo-skeleton/.claude/skills/source-command-prd-drift/SKILL.md\nnpm notice 2.1kB templates/repo-skeleton/.claude/skills/source-command-prd-graph/SKILL.md\nnpm notice 2.2kB templates/repo-skeleton/.claude/skills/source-command-prd-hooks/SKILL.md\nnpm notice 1.3kB templates/repo-skeleton/.claude/skills/source-command-prd-new/SKILL.md\nnpm notice 2.0kB templates/repo-skeleton/.claude/skills/source-command-prd-off/SKILL.md\nnpm notice 1.5kB templates/repo-skeleton/.claude/skills/source-command-prd-on/SKILL.md\nnpm notice 2.3kB templates/repo-skeleton/.claude/skills/source-command-prd-reflections/SKILL.md\nnpm notice 2.5kB templates/repo-skeleton/.claude/skills/source-command-prd-report/SKILL.md\nnpm notice 1.2kB templates/repo-skeleton/.claude/skills/source-command-prd-status/SKILL.md\nnpm notice 1.7kB templates/repo-skeleton/.claude/skills/source-command-prd-track/SKILL.md\nnpm notice 1.8kB templates/repo-skeleton/.claude/skills/source-command-prd-version/SKILL.md\nnpm notice 1.7kB templates/repo-skeleton/.claude/skills/source-command-prd-workflow/SKILL.md\nnpm notice 3.2kB templates/repo-skeleton/.codex-plugin/plugin.json\nnpm notice 3.3kB templates/repo-skeleton/.codex/hooks.json\nnpm notice 743B templates/repo-skeleton/.githooks/pre-commit\nnpm notice 734B templates/repo-skeleton/.github/workflows/prd-gate.yml\nnpm notice 3.2kB templates/repo-skeleton/.opencode/plugin.json\nnpm notice 5.6kB templates/repo-skeleton/.opencode/plugins/prd-hooks.js\nnpm notice 3.0kB templates/repo-skeleton/.opencode/skill/project-architecture/SKILL.md\nnpm notice 7.4kB templates/repo-skeleton/.opencode/skill/project-blocker-resolution/SKILL.md\nnpm notice 2.8kB templates/repo-skeleton/.opencode/skill/project-brainstorm/SKILL.md\nnpm notice 5.5kB templates/repo-skeleton/.opencode/skill/project-change-request/SKILL.md\nnpm notice 6.3kB templates/repo-skeleton/.opencode/skill/project-code-review/SKILL.md\nnpm notice 2.7kB templates/repo-skeleton/.opencode/skill/project-decision-ledger/SKILL.md\nnpm notice 23.6kB templates/repo-skeleton/.opencode/skill/project-decision-policy/SKILL.md\nnpm notice 4.4kB templates/repo-skeleton/.opencode/skill/project-deterministic-workflows/SKILL.md\nnpm notice 5.2kB templates/repo-skeleton/.opencode/skill/project-document-branch/SKILL.md\nnpm notice 2.8kB templates/repo-skeleton/.opencode/skill/project-evidence-ledger/SKILL.md\nnpm notice 3.3kB templates/repo-skeleton/.opencode/skill/project-evidence/SKILL.md\nnpm notice 11.9kB templates/repo-skeleton/.opencode/skill/project-git-workflow/SKILL.md\nnpm notice 7.4kB templates/repo-skeleton/.opencode/skill/project-health/SKILL.md\nnpm notice 6.0kB templates/repo-skeleton/.opencode/skill/project-implementation-plan/SKILL.md\nnpm notice 1.1kB templates/repo-skeleton/.opencode/skill/project-llm-wiki/LICENSE\nnpm notice 842B templates/repo-skeleton/.opencode/skill/project-llm-wiki/references/archive-template.md\nnpm notice 843B templates/repo-skeleton/.opencode/skill/project-llm-wiki/references/article-template.md\nnpm notice 559B templates/repo-skeleton/.opencode/skill/project-llm-wiki/references/index-template.md\nnpm notice 317B templates/repo-skeleton/.opencode/skill/project-llm-wiki/references/raw-template.md\nnpm notice 17.0kB templates/repo-skeleton/.opencode/skill/project-llm-wiki/SKILL.md\nnpm notice 7.4kB templates/repo-skeleton/.opencode/skill/project-local-integration/SKILL.md\nnpm notice 8.1kB templates/repo-skeleton/.opencode/skill/project-memory/SKILL.md\nnpm notice 6.2kB templates/repo-skeleton/.opencode/skill/project-planning-lifecycle/SKILL.md\nnpm notice 6.0kB templates/repo-skeleton/.opencode/skill/project-prd-plugin-setup/SKILL.md\nnpm notice 3.5kB templates/repo-skeleton/.opencode/skill/project-prd/SKILL.md\nnpm notice 28.0kB templates/repo-skeleton/.opencode/skill/project-request-intake/SKILL.md\nnpm notice 4.8kB templates/repo-skeleton/.opencode/skill/project-session-close/SKILL.md\nnpm notice 10.3kB templates/repo-skeleton/.opencode/skill/project-systematic-debugging/SKILL.md\nnpm notice 4.8kB templates/repo-skeleton/.opencode/skill/project-test-driven-implementation/SKILL.md\nnpm notice 3.7kB templates/repo-skeleton/.opencode/skill/project-traceability-review/SKILL.md\nnpm notice 2.5kB templates/repo-skeleton/.opencode/skill/project-traceability-sync/SKILL.md\nnpm notice 6.6kB templates/repo-skeleton/.opencode/skill/project-verification-before-completion/SKILL.md\nnpm notice 1.5kB templates/repo-skeleton/.opencode/skill/source-command-prd-autonomy/SKILL.md\nnpm notice 1.2kB templates/repo-skeleton/.opencode/skill/source-command-prd-close/SKILL.md\nnpm notice 3.3kB templates/repo-skeleton/.opencode/skill/source-command-prd-config/SKILL.md\nnpm notice 2.4kB templates/repo-skeleton/.opencode/skill/source-command-prd-drift/SKILL.md\nnpm notice 2.1kB templates/repo-skeleton/.opencode/skill/source-command-prd-graph/SKILL.md\nnpm notice 2.2kB templates/repo-skeleton/.opencode/skill/source-command-prd-hooks/SKILL.md\nnpm notice 1.3kB templates/repo-skeleton/.opencode/skill/source-command-prd-new/SKILL.md\nnpm notice 2.0kB templates/repo-skeleton/.opencode/skill/source-command-prd-off/SKILL.md\nnpm notice 1.5kB templates/repo-skeleton/.opencode/skill/source-command-prd-on/SKILL.md\nnpm notice 2.3kB templates/repo-skeleton/.opencode/skill/source-command-prd-reflections/SKILL.md\nnpm notice 2.5kB templates/repo-skeleton/.opencode/skill/source-command-prd-report/SKILL.md\nnpm notice 1.2kB templates/repo-skeleton/.opencode/skill/source-command-prd-status/SKILL.md\nnpm notice 1.7kB templates/repo-skeleton/.opencode/skill/source-command-prd-track/SKILL.md\nnpm notice 1.8kB templates/repo-skeleton/.opencode/skill/source-command-prd-version/SKILL.md\nnpm notice 1.7kB templates/repo-skeleton/.opencode/skill/source-command-prd-workflow/SKILL.md\nnpm notice 14.9kB templates/repo-skeleton/.prd_plugin/config.json\nnpm notice 1.6kB templates/repo-skeleton/.prd_plugin/hooks/prd_drift_check.py\nnpm notice 12.0kB templates/repo-skeleton/.prd_plugin/hooks/prd_hook_dispatch.py\nnpm notice 2.0kB templates/repo-skeleton/.prd_plugin/hooks/prd_log_skill.py\nnpm notice 4.1kB templates/repo-skeleton/.prd_plugin/hooks/prd_nudge.py\nnpm notice 3.7kB templates/repo-skeleton/.prd_plugin/hooks/prd_precommit_gate.py\nnpm notice 113.6kB templates/repo-skeleton/.prd_plugin/hooks/prd_reason_guard.py\nnpm notice 6.1kB templates/repo-skeleton/.prd_plugin/hooks/prd_reflection.py\nnpm notice 3.5kB templates/repo-skeleton/.prd_plugin/hooks/prd_session_report.py\nnpm notice 15.8kB templates/repo-skeleton/.prd_plugin/hooks/prd_stop_guard.py\nnpm notice 8.0kB templates/repo-skeleton/.prd_plugin/hooks/prd_test_scope_guard.py\nnpm notice 3.7kB templates/repo-skeleton/.prd_plugin/ID-SCHEME.md\nnpm notice 581B templates/repo-skeleton/.prd_plugin/ids/registry.json\nnpm notice 12.9kB templates/repo-skeleton/.prd_plugin/METHOD.md\nnpm notice 725B templates/repo-skeleton/.prd_plugin/method/artifact-format.md\nnpm notice 1.5kB templates/repo-skeleton/.prd_plugin/method/completion-gate.md\nnpm notice 3.6kB templates/repo-skeleton/.prd_plugin/method/deterministic-workflows.md\nnpm notice 1.2kB templates/repo-skeleton/.prd_plugin/method/estimation.md\nnpm notice 2.2kB templates/repo-skeleton/.prd_plugin/method/grounding.md\nnpm notice 3.2kB templates/repo-skeleton/.prd_plugin/method/reporting.md\nnpm notice 4.1kB templates/repo-skeleton/.prd_plugin/method/self-service.md\nnpm notice 1.6kB templates/repo-skeleton/.prd_plugin/method/staleness-rules.md\nnpm notice 1.0kB templates/repo-skeleton/.prd_plugin/method/state-validation.md\nnpm notice 3.0kB templates/repo-skeleton/.prd_plugin/method/subagents.md\nnpm notice 1.3kB templates/repo-skeleton/.prd_plugin/services.json\nnpm notice 51B templates/repo-skeleton/.prd_plugin/state/changelog.json\nnpm notice 53B templates/repo-skeleton/.prd_plugin/state/decisions.json\nnpm notice 165B templates/repo-skeleton/.prd_plugin/state/health.json\nnpm notice 51B templates/repo-skeleton/.prd_plugin/state/memory.json\nnpm notice 287B templates/repo-skeleton/.prd_plugin/state/project.json\nnpm notice 52B templates/repo-skeleton/.prd_plugin/state/releases.json\nnpm notice 52B templates/repo-skeleton/.prd_plugin/state/requests.json\nnpm notice 215B templates/repo-skeleton/.prd_plugin/state/sessions/shared/promoted-session-summaries.jsonl\nnpm notice 49B templates/repo-skeleton/.prd_plugin/state/substrate-links.json\nnpm notice 51B templates/repo-skeleton/.prd_plugin/state/tracking.json\nnpm notice 48B templates/repo-skeleton/.prd_plugin/state/workflow-runs.json\nnpm notice 180B templates/repo-skeleton/.prd_plugin/templates/architecture-delta.md\nnpm notice 1.5kB templates/repo-skeleton/.prd_plugin/templates/architecture.json\nnpm notice 396B templates/repo-skeleton/.prd_plugin/templates/brainstorm.md\nnpm notice 274B templates/repo-skeleton/.prd_plugin/templates/changelog.json\nnpm notice 15.1kB templates/repo-skeleton/.prd_plugin/templates/config.json\nnpm notice 265B templates/repo-skeleton/.prd_plugin/templates/decision-record.md\nnpm notice 398B templates/repo-skeleton/.prd_plugin/templates/decisions.json\nnpm notice 372B templates/repo-skeleton/.prd_plugin/templates/doc-branch.json\nnpm notice 343B templates/repo-skeleton/.prd_plugin/templates/doc-branch.md\nnpm notice 129B templates/repo-skeleton/.prd_plugin/templates/evidence.md\nnpm notice 262B templates/repo-skeleton/.prd_plugin/templates/handoff.json\nnpm notice 427B templates/repo-skeleton/.prd_plugin/templates/health.json\nnpm notice 729B templates/repo-skeleton/.prd_plugin/templates/human-exports/architecture.md\nnpm notice 652B templates/repo-skeleton/.prd_plugin/templates/human-exports/implementation-plan.md\nnpm notice 610B templates/repo-skeleton/.prd_plugin/templates/human-exports/prd.md\nnpm notice 1.5kB templates/repo-skeleton/.prd_plugin/templates/implementation-plan.json\nnpm notice 70B templates/repo-skeleton/.prd_plugin/templates/mailbox.json\nnpm notice 365B templates/repo-skeleton/.prd_plugin/templates/memory.json\nnpm notice 490B templates/repo-skeleton/.prd_plugin/templates/merge-checklist.md\nnpm notice 176B templates/repo-skeleton/.prd_plugin/templates/plan-delta.md\nnpm notice 152B templates/repo-skeleton/.prd_plugin/templates/prd-delta.md\nnpm notice 1.4kB templates/repo-skeleton/.prd_plugin/templates/prd.json\nnpm notice 455B templates/repo-skeleton/.prd_plugin/templates/project.json\nnpm notice 126B templates/repo-skeleton/.prd_plugin/templates/promoted-session-summary.jsonl\nnpm notice 923B templates/repo-skeleton/.prd_plugin/templates/releases.json\nnpm notice 1.4kB templates/repo-skeleton/.prd_plugin/templates/request.json\nnpm notice 1.7kB templates/repo-skeleton/.prd_plugin/templates/requests.json\nnpm notice 23.4kB templates/repo-skeleton/.prd_plugin/templates/script-install-scope.json\nnpm notice 247B templates/repo-skeleton/.prd_plugin/templates/session.json\nnpm notice 15.6kB templates/repo-skeleton/.prd_plugin/templates/skill-install-scope.json\nnpm notice 333B templates/repo-skeleton/.prd_plugin/templates/submission-package.json\nnpm notice 5.7kB templates/repo-skeleton/.prd_plugin/templates/tool-surface.json\nnpm notice 230B templates/repo-skeleton/.prd_plugin/templates/traceability-matrix.md\nnpm notice 321B templates/repo-skeleton/.prd_plugin/templates/tracking.json\nnpm notice 375B templates/repo-skeleton/.prd_plugin/templates/utcp-config.json\nnpm notice 22.2kB templates/repo-skeleton/.prd_plugin/workflows.json\nnpm notice 15.8kB templates/repo-skeleton/AGENTS.md\nnpm notice 12.2kB templates/repo-skeleton/CLAUDE.md\nnpm notice 12.0kB templates/repo-skeleton/docs/INSTALL-MATRIX.md\nnpm notice 2.7kB templates/repo-skeleton/hooks/hooks.json\nnpm notice 1.4kB templates/request.json\nnpm notice 1.7kB templates/requests.json\nnpm notice 23.4kB templates/script-install-scope.json\nnpm notice 1.3kB templates/services.json\nnpm notice 247B templates/session.json\nnpm notice 15.6kB templates/skill-install-scope.json\nnpm notice 333B templates/submission-package.json\nnpm notice 10.4kB templates/substrate-capabilities.json\nnpm notice 49.1kB templates/tool-spec.json\nnpm notice 7.9kB templates/tool-surface.json\nnpm notice 230B templates/traceability-matrix.md\nnpm notice 321B templates/tracking.json\nnpm notice 375B templates/utcp-config.json\nnpm notice 22.2kB templates/workflows.json\nnpm notice Tarball Details\nnpm notice name: prd-plugin\nnpm notice version: 0.16.62\nnpm notice filename: prd-plugin-0.16.62.tgz\nnpm notice package size: 1.9 MB\nnpm notice unpacked size: 11.9 MB\nnpm notice shasum: 45165c4b1f16e87f572d26dda816693fa1436266\nnpm notice integrity: sha512-161Ktwz+2cAOn[...]gmwUxffnJlSVg==\nnpm notice total files: 657\nnpm notice\n"
          },
          "output_hash": "1a7707216a1b839982d9e6bcdf1dfb854c473f35f5a38d90e4f018262160569b",
          "completed_at": "2026-07-28T13:27:17Z"
        },
        {
          "id": "gate",
          "action": "state.gate",
          "status": "completed",
          "resolved_input_hash": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",
          "started_at": "2026-07-28T13:27:17Z",
          "output": {
            "status": "attention",
            "repo_root": "D:\\Projects\\prd-plugin-worktrees\\req-007-enforce-check-messages",
            "summary": {
              "errors": 0,
              "warnings": 0
            },
            "findings": [
              {
                "check": "state_consistency",
                "severity": "info",
                "summary": "File references 2 canonical IDs across 2 prefix(es); treated as a positive signal of extra work.",
                "required_action": "No action required; this is an informational signal."
              }
            ]
          },
          "output_hash": "fa280774a16a4aca63ac1ce47c5f086fdf9208473822a11376a143c1689d1723",
          "completed_at": "2026-07-28T13:27:17Z"
        }
      ],
      "completed_at": "2026-07-28T13:27:17Z"
    }
  ]
}
