WORK-049
ID:WORK-049Status:done

Dependency visualization for plan site

Surface cross-entity relationships by scanning content for ID references (WORK-XXX, SPEC-XXX, BUG-XXX, ADR-XXX). Build a bidirectional relationship index and render relationships in a dedicated layout slot on each entity page.

Priority:lowComplexity:complexSource:SPEC-015
changeset-release/main View source

Criteria completion

No incremental history — criteria tracking started on Apr 19.

Branches 3
History 6
  1. f2b3512
    Content editedby Claude
    Add {ID}-{slug}.md filename convention + migrate filenames subcommand
  2. 59ded4a
    Content editedby Claude
    Implement SPEC-037 plan package hardening: all 7 work items
  3. f262d7b
    Content editedby Claude
    Backfill source attributes on all 123 work items
  4. 1314ce1
    Content editedby Claude
    Add dependency visualization to plan site
  5. 3d8d331
    Content editedby Claude
    Add WORK-050: converge plan renderer with shared layout engine
  6. f5b8bf8
    Created (done)by Claude
    Add work items WORK-037 through WORK-049 for plan site specs

Acceptance Criteria

  • During the register pipeline phase, entity content is scanned for ID reference patterns
  • A bidirectional relationship index is built in the EntityRegistry
  • Each entity page displays a "Relationships" section showing linked entities
  • Each reference is a live link with an inline status badge
  • Relationships are categorized: "Blocked by", "Blocks", "Related"
  • Blocked items show a visual indicator in the sidebar when blockers are unresolved
  • Relationships render via a computed layout slot or region (not manual HTML injection)

Approach

Extend the plan package's pipeline hooks. In register(), scan each entity's content for (WORK|SPEC|BUG|ADR)-\d+ patterns and index relationships. The relationships section is surfaced via the shared layout engine — either as a computed slot in planLayout (similar to how computed.toc works) or as an injected region. This avoids manual HTML injection in postProcess() and keeps the rendering declarative.

Once WORK-050 converges the plan renderer with the shared layout engine, the relationships section can sit in the right-side panel alongside the ToC, providing an "on this page" + "related entities" sidebar similar to documentation sites.

References

  • SPEC-015 (Plan Site UX at Scale — Feature 6)
  • WORK-020 (entity registration — the registry this builds on)
  • WORK-050 (renderer convergence — provides the layout slot mechanism)