Decisions

  • Pending: Frontmatter field format for dependencies
  • Pending: Visualization format — text tree, mermaid, or markdown table?

User Tasks


Summary

Track and visualize dependencies between FRs so blocked work is never started and the optimal implementation order is always clear.

Problem / Motivation

  • Many FRs reference prerequisites buried in prose (e.g. “depends on FR-015” in a paragraph).
  • No structured way to query “what can I work on right now?” or “what does FR-067 need first?”
  • Starting a blocked FR wastes a full session discovering the blocker mid-implementation.
  • The proposed renumbering groups FRs by phase, but cross-phase dependencies still exist and aren’t tracked.

Proposed Solution

Add a depends-on frontmatter field to FR files. Build a /deps skill that reads all FRs and outputs: (1) a dependency graph, (2) a “ready to implement” list (all deps satisfied), and (3) blockers for a specific FR.


Open Questions

1. Frontmatter Format

Question: How should dependencies be expressed in FR frontmatter?

OptionDescription
A) depends-on: [FR-015, FR-011]Simple YAML list, easy to parse
B) Inline references onlyKeep in prose, parse with regex
C) Separate dependency fileCentral dependencies.yaml

Recommendation: Option A — lives with the FR, easy to maintain, parseable.

Decision:

2. Visualization

Question: How should the dependency graph be displayed?

OptionDescription
A) Mermaid diagramVisual graph, renders in Obsidian and GitHub
B) Markdown treeText-based indented tree
C) TableSimple table with “blocked by” and “blocks” columns

Recommendation: Option A — Mermaid renders natively in Obsidian, best visual clarity.

Decision:


Phase Overview

PhaseDescriptionStatus
Phase 1Add depends-on frontmatter to all FRs + /deps skill
Phase 2”Ready to implement” list + blocker warnings
Phase 3Auto-check before implementation (PreToolUse or skill gate)

Phase 1: Frontmatter & Skill —

Goal: Structured dependency data in all FRs and a skill to query it.

File / FeatureDetailsOwnerStatus
FR frontmatterAdd depends-on: [] to all FR filesopus
.claude/skills/deps/SKILL.md/deps — show full graph; /deps FR-XXX — show deps for one FRopus
Dependency graph outputMermaid diagram in vault/00_system/dashboards/dependency-graph.mdopus

Phase 2: Ready List & Blockers —

Goal: Answer “what can I work on now?” and “what’s blocking FR-X?”

File / FeatureDetailsOwnerStatus
Ready list/deps ready — list FRs with all deps in done statusopus
Blocker trace/deps FR-XXX shows chain of unsatisfied depsopus
Dashboard integrationAdd “ready to implement” section to feature dashboardopus

Phase 3: Implementation Gate —

Goal: Warn or block when trying to implement an FR with unmet dependencies.

File / FeatureDetailsOwnerStatus
Pre-implementation check/implement skill (FR-043) checks deps before startingopus
Warning in /statusSurface blocked FRs in status skill outputopus

Prerequisites / Gap Analysis

Current State

ComponentStatusDetails
Dependency infopartialExists in prose in ~15 FRs, not structured
Frontmatter depends-onField doesn’t exist yet
QueryingNo tooling

Gap (What’s missing?)

GapEffortBlocker?
Add frontmatter field to all FRsMedium (batch edit)No
Skill to parse and displayMediumNo
Mermaid generationLowNo

Test

Manual tests

TestExpectedActualLast
Run /depsFull dependency graph renderedpending-
Run /deps FR-067Shows FR-015 as prerequisitepending-
Run /deps readyLists only FRs with all deps satisfied or no depspending-
FR with unmet depWarning when trying to implementpending-

AI-verified tests

ScenarioExpected behaviorVerification method

E2E tests

ScenarioAssertion

Integration tests

ComponentCoverage

Unit tests

ComponentTestsCoverage

History

DateEventDetails
2026-03-12CreatedIdentified as gap during FR renumbering review

References

  • FR-033 (Feature Workflow Automation) — lifecycle tooling, could host dep checks
  • FR-043 (Approve & Implement Skills) — Phase 3 gate integration
  • FR-022 (Priority Scoring) — dependency depth could factor into priority
  • FR-037 (Feature Overview Sync Check) — could validate dep consistency