Purpose
Produce a dated, source-backed roadmap review across the confirmed project cohort.
Surface explicit blockers, alignment gaps, evidence freshness, and unknown status
without inventing an aggregate health judgment.
Usage
/roadmap — review the confirmed roadmap cohort
/roadmap [pillar] — filter by an exact configured pillar
Evidence, authority, and recovery
Treat the review as an evidence report, not a projection.
- Use the canonical status source and status date from each project record. Record the
path/ID, status date, and review as-of time. Filesystem modified time is only a
discovery clue, never a replacement status date.
- Cite source evidence for every status, blocker, milestone, pillar, alignment claim,
and feedback item. If sources contradict, show both source dates and leave the field
Unknown.
- Unknown is distinct from blocked. Use
Blocked only when the canonical source
explicitly identifies an unresolved dependency preventing progress.
- Define every denominator and disclose excluded projects. If the cohort or status is
incomplete, report counts and coverage rather than a percentage or health score.
- Never invent status, dates, blockers, dependencies, milestones, tags, feedback,
counts, or health scores.
- Keep analysis read-only. Preview requested changes, require explicit human authority,
read back the target, and fail honestly on any mismatch.
Method
1. Confirm scope
Confirm:
- review as-of date and timezone;
- canonical project locations;
- which project states belong on the roadmap;
- requested pillar filter;
- strategic pillar and quarterly-goal sources;
- review window for stakeholder feedback;
- configured freshness policy, if the user wants freshness labels.
Without a confirmed freshness policy, show the status age but label the assessment
Unknown — no confirmed freshness policy.
2. Build the project ledger
For every discovered project capture:
| Field |
Required evidence |
| Project identity |
stable path/ID |
| Status |
explicit value, status date, source |
| Milestone |
exact dated source or Unknown |
| Blocker |
explicit dependency and source, or Unknown |
| Pillar |
exact configured tag and source |
| Goal alignment |
cited relationship, not name similarity |
| Feedback |
dated speaker/source and quote-safe summary |
Keep an Unchecked projects section for unreadable, duplicate, or contradictory
records. Do not silently remove them from totals.
3. Classify without inference
In progress, Completed, and Blocked require an explicit canonical status.
- An old status remains the last observed status plus a freshness caveat; age alone
does not prove a blocker.
- A keyword match is a lead. Read the surrounding source and distinguish an actual
dependency from discussion or historical text.
- Missing pillar means
Unknown alignment, not automatically misaligned.
- Meeting feedback corroborates a project record; it does not silently replace it.
Apply a freshness or alignment label only through a configured or cited rule. Record
the rule's source and effective date.
4. Reconcile the roadmap
Verify:
- discovered = checked + unchecked;
- status counts reconcile to eligible checked projects;
- pillar counts reconcile to projects with known valid pillars;
- unknown-status and unknown-alignment projects are disclosed;
- every blocker count points to explicit blocker evidence;
- every percentage shows numerator, denominator, timeframe, and exclusions.
5. Recommend questions and actions
Separate:
- observed facts;
- contradictions and unknowns;
- policy-backed assessments;
- read-only recommendations;
- human decisions.
Do not infer priority from recency, meeting volume, or the number of mentions. If a
priority source is missing, ask which source governs it.
Output contract
# Roadmap review
**As of:** [timestamp and timezone]
**Cohort:** [definition and source]
**Projects discovered / checked / unchecked:** [N / n / u]
**Freshness policy:** [source/date or Unknown]
## Active initiatives
### [Project]
- Canonical status: [value + source/status date or Unknown]
- Evidence freshness: [elapsed time; policy-backed label or Unknown]
- Next milestone: [value/source or Unknown]
- Pillar and goal alignment: [evidence or Unknown]
- Explicit blockers: [evidence or None observed; never inferred from silence]
## Attention and unknowns
- [Contradiction, missing status, explicit blocker, or unknown alignment]
- Evidence needed: [specific source or human decision]
## Stakeholder feedback
- [dated source and quote-safe summary; relationship to project]
## Evidence summary
Render one row per observed canonical status, including `Completed` when it is
observed. Do not force projects into a fixed list. Add `Unknown` for projects
without canonical status evidence, and reconcile every row to the checked cohort.
| Status | Count | Eligible denominator | Exclusions |
|---|---:|---:|---|
| [Observed canonical status, for example Completed] | [n] | [n/N] | [unknown/unchecked] |
| Unknown | [n] | [N] | [reasons] |
## Recommended actions
1. [Evidence-backed question or action; no write performed]
The output has no aggregate health score unless the user supplies a configured,
source-backed rubric and explicitly asks for it.
Controlled changes
Before updating a project or creating a roadmap document:
- identify the authoritative target and current content;
- preview the exact operation and complete diff;
- name any linked project, goal, or pillar records that will remain unchanged;
- require explicit human confirmation;
- perform only the approved write;
- read back the target and compare it with the confirmed preview.
If writing fails or read-back differs, preserve prior content, report possible partial
state, re-read the target, and present a corrected preview for fresh confirmation.
1---2name: roadmap3description: Review roadmap status, evidence freshness, blockers, and alignment4---56<!-- Generated from `.claude/skills/_available/product/roadmap/SKILL.md` by `scripts/generate-agents-skills.py`. Do not edit. -->78## Purpose910Produce a dated, source-backed roadmap review across the confirmed project cohort.11Surface explicit blockers, alignment gaps, evidence freshness, and unknown status12without inventing an aggregate health judgment.1314## Usage1516- `/roadmap` — review the confirmed roadmap cohort17- `/roadmap [pillar]` — filter by an exact configured pillar1819## Evidence, authority, and recovery2021Treat the review as an evidence report, not a projection.2223- Use the canonical status source and status date from each project record. Record the24 path/ID, status date, and review as-of time. Filesystem modified time is only a25 discovery clue, never a replacement status date.26- Cite source evidence for every status, blocker, milestone, pillar, alignment claim,27 and feedback item. If sources contradict, show both source dates and leave the field28 `Unknown`.29- Unknown is distinct from blocked. Use `Blocked` only when the canonical source30 explicitly identifies an unresolved dependency preventing progress.31- Define every denominator and disclose excluded projects. If the cohort or status is32 incomplete, report counts and coverage rather than a percentage or health score.33- Never invent status, dates, blockers, dependencies, milestones, tags, feedback,34 counts, or health scores.35- Keep analysis read-only. Preview requested changes, require explicit human authority,36 read back the target, and fail honestly on any mismatch.3738## Method3940### 1. Confirm scope4142Confirm:4344- review as-of date and timezone;45- canonical project locations;46- which project states belong on the roadmap;47- requested pillar filter;48- strategic pillar and quarterly-goal sources;49- review window for stakeholder feedback;50- configured freshness policy, if the user wants freshness labels.5152Without a confirmed freshness policy, show the status age but label the assessment53`Unknown — no confirmed freshness policy`.5455### 2. Build the project ledger5657For every discovered project capture:5859| Field | Required evidence |60|---|---|61| Project identity | stable path/ID |62| Status | explicit value, status date, source |63| Milestone | exact dated source or `Unknown` |64| Blocker | explicit dependency and source, or `Unknown` |65| Pillar | exact configured tag and source |66| Goal alignment | cited relationship, not name similarity |67| Feedback | dated speaker/source and quote-safe summary |6869Keep an `Unchecked projects` section for unreadable, duplicate, or contradictory70records. Do not silently remove them from totals.7172### 3. Classify without inference7374- `In progress`, `Completed`, and `Blocked` require an explicit canonical status.75- An old status remains the last observed status plus a freshness caveat; age alone76 does not prove a blocker.77- A keyword match is a lead. Read the surrounding source and distinguish an actual78 dependency from discussion or historical text.79- Missing pillar means `Unknown alignment`, not automatically misaligned.80- Meeting feedback corroborates a project record; it does not silently replace it.8182Apply a freshness or alignment label only through a configured or cited rule. Record83the rule's source and effective date.8485### 4. Reconcile the roadmap8687Verify:8889- discovered = checked + unchecked;90- status counts reconcile to eligible checked projects;91- pillar counts reconcile to projects with known valid pillars;92- unknown-status and unknown-alignment projects are disclosed;93- every blocker count points to explicit blocker evidence;94- every percentage shows numerator, denominator, timeframe, and exclusions.9596### 5. Recommend questions and actions9798Separate:991001. observed facts;1012. contradictions and unknowns;1023. policy-backed assessments;1034. read-only recommendations;1045. human decisions.105106Do not infer priority from recency, meeting volume, or the number of mentions. If a107priority source is missing, ask which source governs it.108109## Output contract110111```markdown112# Roadmap review113114**As of:** [timestamp and timezone]115**Cohort:** [definition and source]116**Projects discovered / checked / unchecked:** [N / n / u]117**Freshness policy:** [source/date or Unknown]118119## Active initiatives120### [Project]121- Canonical status: [value + source/status date or Unknown]122- Evidence freshness: [elapsed time; policy-backed label or Unknown]123- Next milestone: [value/source or Unknown]124- Pillar and goal alignment: [evidence or Unknown]125- Explicit blockers: [evidence or None observed; never inferred from silence]126127## Attention and unknowns128- [Contradiction, missing status, explicit blocker, or unknown alignment]129- Evidence needed: [specific source or human decision]130131## Stakeholder feedback132- [dated source and quote-safe summary; relationship to project]133134## Evidence summary135Render one row per observed canonical status, including `Completed` when it is136observed. Do not force projects into a fixed list. Add `Unknown` for projects137without canonical status evidence, and reconcile every row to the checked cohort.138139| Status | Count | Eligible denominator | Exclusions |140|---|---:|---:|---|141| [Observed canonical status, for example Completed] | [n] | [n/N] | [unknown/unchecked] |142| Unknown | [n] | [N] | [reasons] |143144## Recommended actions1451. [Evidence-backed question or action; no write performed]146```147148The output has no aggregate health score unless the user supplies a configured,149source-backed rubric and explicitly asks for it.150151## Controlled changes152153Before updating a project or creating a roadmap document:1541551. identify the authoritative target and current content;1562. preview the exact operation and complete diff;1573. name any linked project, goal, or pillar records that will remain unchanged;1584. require explicit human confirmation;1595. perform only the approved write;1606. read back the target and compare it with the confirmed preview.161162If writing fails or read-back differs, preserve prior content, report possible partial163state, re-read the target, and present a corrected preview for fresh confirmation.