# Phase 165.5-02 Progressive Reading Summary

Status: implemented in working tree

## Goal

Close the next `165.5-02` slice by making `L0 -> L1` distillation actually use
DeepXiv progressive-reading artifacts by runtime mode, instead of treating
`deepxiv_tldr` and `deepxiv_sections` as inert metadata.

## What Landed

- `source_distillation_support.py` now supports a mode-aware progressive-reading
  chain for enriched sources:
  - `discussion` -> brief only (`deepxiv_tldr`)
  - `explore` -> brief + head sections
  - `verify` -> brief + head + relevant sections
  - `promote` -> full progressive bundle plus fallback preview/summary
- `L1` distillation now uses DeepXiv material for both:
  - `distilled_initial_idea`
  - `distilled_l1_source_intake` assumption/regime/method-specificity extraction
- reading-depth rows now expose the progressive-reading basis explicitly:
  - `deepxiv_brief`
  - `deepxiv_head`
  - `deepxiv_sections`
  - `deepxiv_full`
- `AITPService._distill_from_sources()` now accepts an explicit `runtime_mode`
  and, when omitted, falls back to the current
  `runtime_protocol.generated.json` mode for shell-surface materialization
- isolated acceptance now exists for the new verify-mode path:
  - `runtime/scripts/run_l1_progressive_reading_acceptance.py`

## Verification

- `python -m pytest research/knowledge-hub/tests/test_topic_start_regressions.py -q`
- `python -m pytest research/knowledge-hub/tests/test_aitp_service.py -q -k "projects_l1_concept_graph_into_contract_and_notes or uses_runtime_mode_for_deepxiv_progressive_reading"`
- `python -m pytest research/knowledge-hub/tests/test_runtime_scripts.py -q -k "l1_concept_graph_acceptance_script_runs_on_isolated_work_root or l1_assumption_depth_acceptance_script_runs_on_isolated_work_root or l1_progressive_reading_acceptance_script_runs_on_isolated_work_root"`
- `python research/knowledge-hub/runtime/scripts/run_l1_progressive_reading_acceptance.py --json`

## Outcome

The `999.82` backlog item is now materially live in the current AITP runtime:

- DeepXiv enrichment is no longer passive metadata at `L0`
- `ensure_topic_shell_surfaces()` can now distill different `L1` views from the
  same enriched source depending on the current runtime mode
- verify-mode intake can surface section-local regimes and assumptions that do
  not exist in the abstract/summary fallback

## Remaining Open Work Inside 165.5-02

- graph-based analysis tools for the `L1 -> L2` connection (`999.83`)
- richer graph ingestion beyond the current bounded summary projection
- any future live or targeted section-fetch behavior beyond the stored
  `deepxiv_tldr` + `deepxiv_sections` artifacts
