---
phase: 149-hypothesis-route-activation-surface
plan: 01
type: execute
wave: 1
depends_on:
  - v1.74-closure
files_modified:
  - research/knowledge-hub/knowledge_hub/runtime_read_path_support.py
  - research/knowledge-hub/knowledge_hub/topic_shell_support.py
  - research/knowledge-hub/knowledge_hub/runtime_bundle_support.py
  - research/knowledge-hub/knowledge_hub/topic_replay.py
  - research/knowledge-hub/runtime/scripts/run_hypothesis_route_activation_acceptance.py
  - research/knowledge-hub/tests/test_hypothesis_route_activation_contracts.py
  - research/knowledge-hub/tests/test_runtime_scripts.py
  - research/knowledge-hub/tests/test_topic_replay.py
  - research/knowledge-hub/README.md
  - research/knowledge-hub/runtime/README.md
  - research/knowledge-hub/runtime/AITP_TEST_RUNBOOK.md
autonomous: true
requirements:
  - REQ-HACT-01
  - REQ-HACT-02
  - REQ-HACT-03
  - REQ-VERIFY-01
must_haves:
  truths:
    - extend the existing hypothesis route metadata instead of inventing a disconnected activation ledger
    - keep the first slice bounded to declarative route activation visibility rather than automatic branch spawning
    - coexist with the current action queue, steering, deferred parking, and follow-up subtopics instead of replacing them
---

<objective>
Make the concrete activation of the current local route versus parked routes
explicit on the active topic surface so operators can see what the routed
hypotheses imply for immediate work without reconstructing that activation from
separate runtime artifacts.
</objective>

<tasks>

<task type="auto">
  <name>Task 1: Add hypothesis route-activation summary to runtime/replay surfaces</name>
  <files>research/knowledge-hub/knowledge_hub/runtime_read_path_support.py, research/knowledge-hub/knowledge_hub/topic_shell_support.py, research/knowledge-hub/knowledge_hub/runtime_bundle_support.py, research/knowledge-hub/knowledge_hub/topic_replay.py</files>
  <read_first>research/knowledge-hub/knowledge_hub/runtime_bundle_support.py</read_first>
  <action>Add one explicit activation summary derived from hypothesis routes, including current local-route action and parked-route obligations.</action>
  <verify>python -m pytest research/knowledge-hub/tests/test_hypothesis_route_activation_contracts.py -q</verify>
  <acceptance_criteria>
    - runtime surfaces expose one concrete activation summary for the active local route
    - replay/read paths expose parked-route obligations directly
    - the activation surface coexists with queue, steering, deferred, and follow-up mechanisms
  </acceptance_criteria>
  <done>The route-activation 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_activation_acceptance.py, research/knowledge-hub/tests/test_runtime_scripts.py, research/knowledge-hub/tests/test_topic_replay.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/tests/test_topic_replay.py</read_first>
  <action>Add one isolated acceptance lane and align docs so the route-activation surface is testable and discoverable.</action>
  <verify>python research/knowledge-hub/runtime/scripts/run_hypothesis_route_activation_acceptance.py --json</verify>
  <acceptance_criteria>
    - docs and runbook reference the route-activation acceptance lane
    - isolated acceptance proves active-route action and parked-route obligations on a temp kernel root without automatic branch spawning
  </acceptance_criteria>
  <done>Phase `149` is ready to execute and verify.</done>
</task>

</tasks>
