Skip to content

[Follow-up] Progressive disclosure in plan.md (sub-agents read only relevant sections) #80

@davidarce

Description

@davidarce

Part of #74. Deferred until Phase 1 + 2 ship and stabilize.

Goal

Sub-agents (especially in the implement phase) currently read the full `plan.md` even when they only work one wave / batch. For plans of 500+ lines (which happens in real sessions), this wastes input tokens and bloats context. Progressive disclosure: structure plan.md so sub-agents can read only the relevant section.

Inspired by

ObjectGraph paper (arXiv 2604.27820, 2026) — formalizes the Document Consumption Problem and shows that LLMs achieve 60-95% token reduction with no accuracy penalty when documents are structured as typed knowledge graphs traversable by query, vs full-document injection. ObjectGraph is a strict superset of Markdown — every `.md` file is a valid `.og` file — so the migration cost is low.

Scope (draft)

Two complementary approaches; pick the one with best cost/benefit at impl time:

Option A: Section-id targeting

  • plan.md uses standardized section IDs (`## Wave 2 {#wave-2}`)
  • Implement sub-agent for wave 2 receives a launch prompt: "Read only the section identified by `#wave-2` in plan.md"
  • Sub-agent uses Read tool with offset/limit informed by section markers
  • Low cost, no new format

Option B: ObjectGraph adoption

  • plan.md becomes plan.og (still markdown-compatible)
  • Adopt ObjectGraph's two-primitive query protocol (Read + Query)
  • Sub-agents query for typed nodes by role/topic
  • Higher cost, larger token reduction at scale, future-proof

Out of scope

  • Migrating exploration.md, review.md (start with plan.md, where waves are largest)
  • Replacing markdown wholesale

Open questions

Acceptance criteria (sketch)

  • Spec the section-id convention or ObjectGraph adoption decision
  • Update orchestrator launch templates to inject section-aware read instructions
  • Measure input token reduction on a representative plan (target: 30%+)
  • Tests
  • Docs

Estimate

~5-8 days when picked up. Defer until Phase 1 + 2 land and we have measurements showing this is a real pain.

Metadata

Metadata

Assignees

No one assigned

    Labels

    enhancementNew feature or requestfollow-upPost-MVP work — defer until core shipssddSDD workflow related

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions