---
phase: 156-hypothesis-route-transition-resolution-surface
plan: 01
type: execute
wave: 1
depends_on:
  - v1.81-closure
files_modified:
  - research/knowledge-hub/knowledge_hub/runtime_read_path_support.py
  - research/knowledge-hub/knowledge_hub/runtime_bundle_support.py
  - research/knowledge-hub/knowledge_hub/topic_replay.py
  - research/knowledge-hub/runtime/schemas/progressive-disclosure-runtime-bundle.schema.json
  - research/knowledge-hub/runtime/scripts/run_hypothesis_route_transition_resolution_acceptance.py
  - research/knowledge-hub/tests/test_hypothesis_route_transition_resolution_contracts.py
  - research/knowledge-hub/tests/test_runtime_scripts.py
  - research/knowledge-hub/tests/test_topic_replay.py
  - research/knowledge-hub/tests/test_schema_contracts.py
  - research/knowledge-hub/README.md
  - research/knowledge-hub/runtime/README.md
  - research/knowledge-hub/runtime/AITP_TEST_RUNBOOK.md
autonomous: true
requirements:
  - REQ-HRESOLVE-01
  - REQ-HRESOLVE-02
  - REQ-HRESOLVE-03
  - REQ-VERIFY-01
must_haves:
  truths:
    - extend existing route transition-intent, transition-receipt, and helper contracts instead of inventing a disconnected transition ledger
    - keep the first slice bounded to declarative transition-resolution visibility rather than fresh runtime mutation
    - coexist with the current action queue and helper mechanisms
---

<objective>
Make the resolved bounded handoff outcome explicit on the active topic surface
so operators can see how transition intent, transition receipt, and current
active route reconcile, without widening into fresh runtime mutation.
</objective>

<tasks>

<task type="auto">
  <name>Task 1: Add hypothesis route transition-resolution summary to runtime/replay surfaces</name>
  <files>research/knowledge-hub/knowledge_hub/runtime_read_path_support.py, research/knowledge-hub/knowledge_hub/runtime_bundle_support.py, research/knowledge-hub/knowledge_hub/topic_replay.py, research/knowledge-hub/runtime/schemas/progressive-disclosure-runtime-bundle.schema.json</files>
  <read_first>research/knowledge-hub/knowledge_hub/runtime_read_path_support.py</read_first>
  <action>Add one explicit route transition-resolution summary derived from route transition intent, route transition receipt, and current active route state.</action>
  <verify>python -m pytest research/knowledge-hub/tests/test_hypothesis_route_transition_resolution_contracts.py -q</verify>
  <acceptance_criteria>
    - runtime surfaces expose the resolved handoff outcome directly
    - replay/read paths surface the route-transition resolution directly
    - the resolution surface coexists with transition receipt and helper mechanisms
  </acceptance_criteria>
  <done>The route transition-resolution surface is durable and operator-visible.</done>
</task>

<task type="auto">
  <name>Task 2: Add isolated acceptance and docs</name>
  <files>research/knowledge-hub/runtime/scripts/run_hypothesis_route_transition_resolution_acceptance.py, research/knowledge-hub/tests/test_runtime_scripts.py, research/knowledge-hub/tests/test_topic_replay.py, research/knowledge-hub/tests/test_schema_contracts.py, research/knowledge-hub/README.md, research/knowledge-hub/runtime/README.md, research/knowledge-hub/runtime/AITP_TEST_RUNBOOK.md</files>
  <read_first>research/knowledge-hub/runtime/scripts/run_hypothesis_route_transition_receipt_acceptance.py</read_first>
  <action>Add one isolated acceptance lane and align docs so the route transition-resolution surface is testable and discoverable.</action>
  <verify>python research/knowledge-hub/runtime/scripts/run_hypothesis_route_transition_resolution_acceptance.py --json</verify>
  <acceptance_criteria>
    - docs and runbook reference the route transition-resolution acceptance lane
    - isolated acceptance proves declarative route-transition resolution visibility on a temp kernel root without widening into fresh mutation
  </acceptance_criteria>
  <done>Phase `156` is ready to execute and verify.</done>
</task>

</tasks>
