Decisions

  • Pending: Trigger mechanism — on-demand skill, PostToolUse hook, or both?
  • Pending: Per-dashboard regeneration or single unified script?

User Tasks


Summary

Keep all dashboards in vault/00_system/dashboards/ accurate and up-to-date automatically, preventing drift as features are implemented and vault state changes.

Problem / Motivation

  • Six dashboards exist (feature, decision, capabilities, ideas, tasks, review) but nothing ensures they reflect current reality.
  • As FRs move through lifecycle stages, dashboards go stale within a single session.
  • Multiple FRs (briefings, kanban, priority scoring) consume dashboard data — stale dashboards cascade into stale briefings.
  • Manual updates are tedious and will be forgotten.

Proposed Solution

A /sync-dashboards skill that scans vault state and regenerates each dashboard from source data (FR files, decision log, etc.). Optionally triggered automatically via PostToolUse hook when FR files are modified.


Open Questions

1. Trigger Mechanism

Question: How should dashboard sync be triggered?

OptionDescription
A) Skill + hook/sync-dashboards on demand + PostToolUse hook on FR file changes
B) Skill onlyManual trigger, simpler to implement
C) Hook onlyFully automatic but no manual control

Recommendation: Option A — manual for initial rollout, add hook in Phase 2.

Decision:

2. Scope per Dashboard

Question: Should each dashboard have its own generator or one unified script?

OptionDescription
A) Per-dashboard generatorsEach dashboard has its own logic, easier to maintain independently
B) Unified generatorSingle script handles all, less code but more complex

Recommendation: Option A — dashboards have different data sources and formats.

Decision:


Phase Overview

PhaseDescriptionStatus
Phase 1/sync-dashboards skill — regenerate all dashboards on demand
Phase 2PostToolUse hook to auto-trigger on FR/vault changes
Phase 3Dashboard health check (detect stale data, warn in briefing)

Phase 1: Sync Skill —

Goal: A skill that regenerates all dashboards from current vault state.

File / FeatureDetailsOwnerStatus
.claude/skills/sync-dashboards/SKILL.mdSkill definitionopus
Dashboard: feature-dashboard.mdRegenerate from FR filesopus
Dashboard: decision-dashboard.mdRegenerate from decision log + FR decisionsopus
Dashboard: capabilities-dashboard.mdRegenerate from system stateopus
Dashboard: ideas-dashboard.mdRegenerate from ideas/ folderopus
Dashboard: user-tasks-dashboard.mdRegenerate from tasks/todosopus
Dashboard: user-review-dashboard.mdRegenerate from review itemsopus

Phase 2: Auto-Trigger Hook —

Goal: Automatically regenerate affected dashboards when FR files are created, moved, or edited.

File / FeatureDetailsOwnerStatus
.claude/hooks/post-dashboard-sync.shPostToolUse hook scriptopus
Hook registration in settings.jsonRegister the hookopus

Phase 3: Dashboard Health Check —

Goal: Detect stale dashboards and surface warnings in daily briefing.

File / FeatureDetailsOwnerStatus
Staleness detectionCompare dashboard timestamps vs source data timestampsopus
Briefing integrationFlag stale dashboards in daily briefing (FR-062)opus

Prerequisites / Gap Analysis

Requirements

RequirementDescription
REQ-1Dashboard files must exist (already do)
REQ-2Consistent FR frontmatter for parsing

Current State

ComponentStatusDetails
Dashboardsdone6 dashboards exist in vault/00_system/dashboards/
FR frontmatterdoneAll FRs use standard template
Sync mechanismNothing exists yet

Gap (What’s missing?)

GapEffortBlocker?
Skill definitionLowNo
Dashboard generation logicMediumNo
Hook integrationLowNo (Phase 2)

Test

Manual tests

TestExpectedActualLast
Check staleness after manual FR edit without syncHealth check flags stale dashboardpending-

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

  • vault/00_system/dashboards/ — the 6 existing dashboards
  • FR-019 (Kanban Feature Overview) — consumes dashboard data
  • FR-062 (Daily Briefing System) — Phase 3 integration
  • FR-037 (Feature Overview Sync Check) — overlapping scope for feature dashboard specifically