docs(work): close dag-and-readiness-v1 epic
This commit is contained in:
@@ -1,5 +1,5 @@
|
||||
{
|
||||
"updated_at": "2026-05-13T05:59:55.392Z",
|
||||
"updated_at": "2026-05-13T06:06:23.176Z",
|
||||
"epics": {
|
||||
"agent-workflow-docs-v1": {
|
||||
"status": "done",
|
||||
@@ -9,7 +9,9 @@
|
||||
"status": "done",
|
||||
"title": "Surface conformance system across top-level docs",
|
||||
"ac_total": 8,
|
||||
"ac_completed": 8
|
||||
"ac_completed": 8,
|
||||
"depends_on": [],
|
||||
"blocks": []
|
||||
}
|
||||
}
|
||||
},
|
||||
@@ -21,13 +23,21 @@
|
||||
"status": "done",
|
||||
"title": "Replace regex manifest source parser with AST",
|
||||
"ac_total": 5,
|
||||
"ac_completed": 5
|
||||
"ac_completed": 5,
|
||||
"depends_on": [],
|
||||
"blocks": [
|
||||
"02-dev-seed-assertion"
|
||||
]
|
||||
},
|
||||
"02-dev-seed-assertion": {
|
||||
"status": "done",
|
||||
"title": "Extend assertFeatureConformance to all bind-dev-seed paths",
|
||||
"ac_total": 6,
|
||||
"ac_completed": 6
|
||||
"ac_completed": 6,
|
||||
"depends_on": [
|
||||
"01-ast-manifest-source"
|
||||
],
|
||||
"blocks": []
|
||||
}
|
||||
}
|
||||
},
|
||||
@@ -39,67 +49,119 @@
|
||||
"status": "done",
|
||||
"title": "defineFeature helper + Instrumented/Captured/Audited brands",
|
||||
"ac_total": 9,
|
||||
"ac_completed": 9
|
||||
"ac_completed": 9,
|
||||
"depends_on": [],
|
||||
"blocks": [
|
||||
"02-boot-assertions"
|
||||
]
|
||||
},
|
||||
"02-boot-assertions": {
|
||||
"status": "done",
|
||||
"title": "assertFeatureConformance + boot wiring",
|
||||
"ac_total": 11,
|
||||
"ac_completed": 11
|
||||
"ac_completed": 11,
|
||||
"depends_on": [
|
||||
"01-define-feature-helper"
|
||||
],
|
||||
"blocks": [
|
||||
"03-eslint-rules"
|
||||
]
|
||||
},
|
||||
"03-a-structural-eslint-rules": {
|
||||
"status": "done",
|
||||
"title": "Structural ESLint rules (feature-must-have-manifest, usecase-must-have-test-file, required-cores-installed)",
|
||||
"ac_total": 10,
|
||||
"ac_completed": 10
|
||||
"ac_completed": 10,
|
||||
"depends_on": [
|
||||
"02-boot-assertions"
|
||||
],
|
||||
"blocks": [
|
||||
"03-b-ast-aware-eslint-rules"
|
||||
]
|
||||
},
|
||||
"03-b-ast-eslint-rules": {
|
||||
"status": "done",
|
||||
"title": "AST-aware ESLint rules (no-undeclared-event-publish, no-undeclared-audit)",
|
||||
"ac_total": 8,
|
||||
"ac_completed": 8
|
||||
"ac_completed": 8,
|
||||
"depends_on": [
|
||||
"03-a-structural-eslint-rules"
|
||||
],
|
||||
"blocks": [
|
||||
"04-ci-drift-gate"
|
||||
]
|
||||
},
|
||||
"04-ci-drift-gate": {
|
||||
"status": "done",
|
||||
"title": "CI drift gate — pnpm conformance with cross-feature event closure",
|
||||
"ac_total": 6,
|
||||
"ac_completed": 6
|
||||
"ac_completed": 6,
|
||||
"depends_on": [
|
||||
"03-b-ast-eslint-rules"
|
||||
],
|
||||
"blocks": [
|
||||
"05-generator-updates"
|
||||
]
|
||||
},
|
||||
"05-generator-updates": {
|
||||
"status": "done",
|
||||
"title": "Generator updates — emit feature.manifest.ts + self-asserting bind-production",
|
||||
"ac_total": 7,
|
||||
"ac_completed": 7
|
||||
"ac_completed": 7,
|
||||
"depends_on": [
|
||||
"04-ci-drift-gate"
|
||||
],
|
||||
"blocks": [
|
||||
"06-feature-migrations"
|
||||
]
|
||||
},
|
||||
"06-feature-migrations": {
|
||||
"status": "done",
|
||||
"title": "Migrate blog/media/navigation/marketing-pages to conformance pattern",
|
||||
"ac_total": 7,
|
||||
"ac_completed": 7
|
||||
"ac_completed": 7,
|
||||
"depends_on": [
|
||||
"05-generator-updates"
|
||||
],
|
||||
"blocks": []
|
||||
}
|
||||
}
|
||||
},
|
||||
"dag-and-readiness-v1": {
|
||||
"status": "in-progress",
|
||||
"status": "done",
|
||||
"title": "DAG + readiness — depends-on / blocks parsing",
|
||||
"stories": {
|
||||
"01-extended-state": {
|
||||
"status": "in-progress",
|
||||
"status": "done",
|
||||
"title": "Frontmatter array parsing + extended state shape",
|
||||
"ac_total": 4,
|
||||
"ac_completed": 0
|
||||
"ac_completed": 4,
|
||||
"depends_on": [],
|
||||
"blocks": [
|
||||
"02-dag-computation"
|
||||
]
|
||||
},
|
||||
"02-dag-computation": {
|
||||
"status": "todo",
|
||||
"status": "done",
|
||||
"title": "DAG computation — ready + blocked story sets",
|
||||
"ac_total": 3,
|
||||
"ac_completed": 0
|
||||
"ac_completed": 3,
|
||||
"depends_on": [
|
||||
"01-extended-state"
|
||||
],
|
||||
"blocks": [
|
||||
"03-cli-subcommands"
|
||||
]
|
||||
},
|
||||
"03-cli-subcommands": {
|
||||
"status": "todo",
|
||||
"status": "done",
|
||||
"title": "CLI ready / blocked subcommands",
|
||||
"ac_total": 5,
|
||||
"ac_completed": 0
|
||||
"ac_completed": 5,
|
||||
"depends_on": [
|
||||
"02-dag-computation"
|
||||
],
|
||||
"blocks": []
|
||||
}
|
||||
}
|
||||
},
|
||||
@@ -111,7 +173,9 @@
|
||||
"status": "done",
|
||||
"title": "Three structural frontend conformance ESLint rules",
|
||||
"ac_total": 6,
|
||||
"ac_completed": 6
|
||||
"ac_completed": 6,
|
||||
"depends_on": [],
|
||||
"blocks": []
|
||||
}
|
||||
}
|
||||
},
|
||||
@@ -123,19 +187,33 @@
|
||||
"status": "done",
|
||||
"title": "Install husky + lint-staged",
|
||||
"ac_total": 3,
|
||||
"ac_completed": 3
|
||||
"ac_completed": 3,
|
||||
"depends_on": [],
|
||||
"blocks": [
|
||||
"02-pre-commit-hook"
|
||||
]
|
||||
},
|
||||
"02-pre-commit-hook": {
|
||||
"status": "done",
|
||||
"title": "Pre-commit hook script",
|
||||
"ac_total": 2,
|
||||
"ac_completed": 2
|
||||
"ac_completed": 2,
|
||||
"depends_on": [
|
||||
"01-husky-install"
|
||||
],
|
||||
"blocks": [
|
||||
"03-state-sync-guard"
|
||||
]
|
||||
},
|
||||
"03-state-sync-guard": {
|
||||
"status": "done",
|
||||
"title": "State-sync guard + tests",
|
||||
"ac_total": 4,
|
||||
"ac_completed": 4
|
||||
"ac_completed": 4,
|
||||
"depends_on": [
|
||||
"02-pre-commit-hook"
|
||||
],
|
||||
"blocks": []
|
||||
}
|
||||
}
|
||||
},
|
||||
@@ -147,9 +225,13 @@
|
||||
"status": "done",
|
||||
"title": "State builder + pnpm work CLI",
|
||||
"ac_total": 5,
|
||||
"ac_completed": 5
|
||||
"ac_completed": 5,
|
||||
"depends_on": [],
|
||||
"blocks": []
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
},
|
||||
"ready": [],
|
||||
"blocked": []
|
||||
}
|
||||
|
||||
@@ -3,7 +3,7 @@ id: 01-extended-state
|
||||
epic: dag-and-readiness-v1
|
||||
title: Frontmatter array parsing + extended state shape
|
||||
type: technical-story
|
||||
status: in-progress
|
||||
status: done
|
||||
feature: scripts
|
||||
depends-on: []
|
||||
blocks: [02-dag-computation]
|
||||
@@ -11,7 +11,7 @@ blocks: [02-dag-computation]
|
||||
|
||||
## Tasks
|
||||
|
||||
- [ ] Story scaffold
|
||||
- [ ] Extend parseFrontmatter to parse array values like `depends-on: [a, b]`
|
||||
- [ ] Extend buildState to include depends_on + blocks per story entry
|
||||
- [ ] Update existing tests; add new array-parsing tests
|
||||
- [x] Story scaffold
|
||||
- [x] Extend parseFrontmatter to parse array values like `depends-on: [a, b]`
|
||||
- [x] Extend buildState to include depends_on + blocks per story entry
|
||||
- [x] Update existing tests; add new array-parsing tests
|
||||
|
||||
@@ -3,7 +3,7 @@ id: 02-dag-computation
|
||||
epic: dag-and-readiness-v1
|
||||
title: DAG computation — ready + blocked story sets
|
||||
type: technical-story
|
||||
status: todo
|
||||
status: done
|
||||
feature: scripts
|
||||
depends-on: [01-extended-state]
|
||||
blocks: [03-cli-subcommands]
|
||||
@@ -11,6 +11,6 @@ blocks: [03-cli-subcommands]
|
||||
|
||||
## Tasks
|
||||
|
||||
- [ ] computeReadyBlocked(state) — pure function
|
||||
- [ ] Tests
|
||||
- [ ] Wire into buildState output
|
||||
- [x] computeReadyBlocked(state) — pure function
|
||||
- [x] Tests
|
||||
- [x] Wire into buildState output
|
||||
|
||||
@@ -3,7 +3,7 @@ id: 03-cli-subcommands
|
||||
epic: dag-and-readiness-v1
|
||||
title: CLI ready / blocked subcommands
|
||||
type: technical-story
|
||||
status: todo
|
||||
status: done
|
||||
feature: scripts
|
||||
depends-on: [02-dag-computation]
|
||||
blocks: []
|
||||
@@ -11,8 +11,8 @@ blocks: []
|
||||
|
||||
## Tasks
|
||||
|
||||
- [ ] `pnpm work ready` — prints ready stories
|
||||
- [ ] `pnpm work blocked` — prints blocked stories with waiting_on
|
||||
- [ ] Update `pnpm work next` to use the ready set
|
||||
- [ ] CLI smoke tests
|
||||
- [ ] Final verification + closeout
|
||||
- [x] `pnpm work ready` — prints ready stories
|
||||
- [x] `pnpm work blocked` — prints blocked stories with waiting_on
|
||||
- [x] Update `pnpm work next` to use the ready set
|
||||
- [x] CLI smoke tests
|
||||
- [x] Final verification + closeout
|
||||
|
||||
@@ -3,7 +3,7 @@ id: dag-and-readiness-v1
|
||||
prd: null
|
||||
title: DAG + readiness — depends-on / blocks parsing
|
||||
type: epic
|
||||
status: in-progress
|
||||
status: done
|
||||
features: [scripts]
|
||||
created: 2026-05-13
|
||||
---
|
||||
@@ -16,6 +16,6 @@ from the depends-on graph instead of just the first non-done story.
|
||||
|
||||
## Stories
|
||||
|
||||
- [ ] [01 — Frontmatter array parsing + extended state shape](01-extended-state/_story.md)
|
||||
- [ ] [02 — DAG computation: ready + blocked](02-dag-computation/_story.md)
|
||||
- [ ] [03 — CLI ready / blocked subcommands](03-cli-subcommands/_story.md)
|
||||
- [x] [01 — Frontmatter array parsing + extended state shape](01-extended-state/_story.md)
|
||||
- [x] [02 — DAG computation: ready + blocked](02-dag-computation/_story.md)
|
||||
- [x] [03 — CLI ready / blocked subcommands](03-cli-subcommands/_story.md)
|
||||
|
||||
Reference in New Issue
Block a user