feat(framework): a task document has no end of life, and a superseded one has no forward pointer
Nobody has claimed this yet.
Assessment
- Difficulty
- 4/5
- Estimated time
- 3-5 days
- Newbie friendliness
- 64/100
- Issue type
- Feature
- Clarity
- Mostly clear
- Activity status
- Active
- Tech stack
- markdown
- Domain
- documentation, tooling
Research direction
Start with plugins/aidd-dev/skills/01-plan/references/plan-status.md and plugins/aidd-pm/skills/06-product-brief/references/persistence.md to compare the existing status and supersede vocabularies. Then inspect the four listed task write sites and document the new fields and folder-update behavior there. Done means the acceptance criteria are met for task documents, specs, plans, and the relevant skills.
Written by the indexing model from the issue text.
Description
Issue-first, no PR opened. Reported from a repository running aidd-context 2.6.2, aidd-dev 2.4.1, aidd-orchestrator 2.2.1, aidd-pm 2.4.2, aidd-refine 3.0.0 and aidd-vcs 2.3.1 on Claude Code.
Problem
Four skills write working documents into aidd_docs/tasks/<yyyy_mm>/<yyyy_mm_dd>_<slug>/, and none of them ever returns to a folder it created.
The only status such a document carries is the plan lifecycle: pending → in-progress → implemented → reviewed, plus blocked. Every one of those values describes how far the work got. None describes whether the document is still true. A plan that reached reviewed six months ago and a plan written yesterday read identically — same shape, same present tense, no signal between them.
The framework does have a supersede mechanism, but it is scoped to product briefs, unavailable to specs and plans, and it points backwards only: a reader who opens a superseded document gets no pointer to what replaced it, and would have to grep the tree for a supersedes naming the file they are holding.
What that costs. A repository following this framework accumulated 56 documents and 37,041 lines under a pre-AIDD equivalent of tasks/. A field renamed during one epic survived, described in the present tense, in five of them. Nothing marked those five, so agents reading the directory built a model of the system that had not been true for months — and two blind spots in a later plan came from exactly that.
The documents ageing is not the defect. The defect is that nothing in the framework asks anyone to notice.
Scope
- Extend the
statusvocabulary beyond the kanban axis, so a document can state whether it still describes the design in force:currentfor one that does,supersededfor one wholly replaced. These sit beside the work-tracking values rather than replacing them — a document can be bothreviewedandsuperseded, and the two answer different questions. - Add a forward pointer,
superseded_by, naming the replacement as a project-relative path. Backwards-only linking makes the reader do a repository-wide search at the exact moment they have least reason to suspect they need one. - Add a partial-invalidation field,
amended_by, for a document still broadly current whose specific claims a later effort overturned. This is the common case in practice and the one a binarycurrent/supersededcannot express without lying in one direction or the other. - State, in the skills that create task folders, what becomes of an existing folder when the work it describes changes. Today the answer is nothing, which is why the gap reopens on its own.
Acceptance criteria
- A reader opening any document under
aidd_docs/tasks/can tell from its frontmatter alone whether it describes the design in force, without consulting the code. - A document marked
supersedednames its replacement in the document itself; no repository-wide search is needed to find it. - A document invalidated in part can say so without being marked wholly superseded.
- The supersede vocabulary is reachable from specs and plans, not from product briefs alone.
- A skill that creates or updates a task folder has documented instructions for what to do with the documents already in it.
Prior art in this repo
plugins/aidd-dev/skills/01-plan/references/plan-status.md:12-23— the five status values and the linear rule. Purely kanban; line 20 confirms the intended progression ends atreviewed.plugins/aidd-pm/skills/06-product-brief/references/persistence.md:7-9— the only supersede mechanism in the framework:current/supersededplussupersedes. This proposal borrows its vocabulary rather than inventing a competing one.- The four write sites this would cover:
plugins/aidd-refine/skills/01-brainstorm/references/persistence.md:7,plugins/aidd-pm/skills/04-spec/actions/01-build.md:21,plugins/aidd-dev/skills/01-plan/actions/04-plan.md:11,plugins/aidd-dev/skills/05-review/SKILL.md:26.
Out of scope
- Whether a shipped document is deleted or kept. That is a project decision, not a framework one; the repository this came from deletes plans at
reviewedand keeps specs, and either policy needs the status field this issue asks for. - A CI check enforcing the header. Worth having, but it depends on the vocabulary existing first.
- Migrating existing task folders. A project's own concern once the fields are defined.
- Dominant language
- TypeScript
- Stars
- 481
- Forks
- 45
- Avg merge
- 14h 36m
- Merged PRs (30d)
- 110
Contributor guide
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- Open a pull request that references the issue number.
More from ai-driven-dev/framework
-
refactor(aidd-orchestrator): the check zone says when to stop, and reviews its axes in one round Open
Difficulty 2/5 1-3 hours Newbie friendliness 76/100
ai-driven-dev/framework#887 ·
-
Difficulty 2/5 1-3 hours Newbie friendliness 84/100
ai-driven-dev/framework#873 ·
-
Difficulty 2/5 1-3 hours Newbie friendliness 85/100
ai-driven-dev/framework#872 ·
-
Difficulty 2/5 1-3 hours Newbie friendliness 75/100
ai-driven-dev/framework#625 ·
-
Difficulty 2/5 1-3 hours Newbie friendliness 76/100
ai-driven-dev/framework#467 · 1 comment ·
All issues in ai-driven-dev/framework
Similar issues
-
Difficulty 2/5 1-3 hours Newbie friendliness 84/100
copse-dev/agent-pane#2953 ·
-
Difficulty 2/5 1-3 hours Newbie friendliness 84/100
Eynzof/Hermes-CN-Desktop#610 ·
-
bug clawsweeper:linked-pr-open clawsweeper:needs-live-repro clawsweeper:no-new-fix-pr impact:message-loss issue-rating: 🐚 platinum hermit P2 regression
Difficulty 2/5 1-3 hours Newbie friendliness 78/100
-
enhancement
Difficulty 2/5 1-3 hours Newbie friendliness 68/100
-
calcite-components needs triage refactor
Difficulty 2/5 1-3 hours Newbie friendliness 75/100
Esri/calcite-design-system#15203 ·