docs(work): close sandcastle-dispatch-v1 epic
This commit is contained in:
@@ -1,5 +1,5 @@
|
|||||||
{
|
{
|
||||||
"updated_at": "2026-05-13T06:16:11.738Z",
|
"updated_at": "2026-05-13T06:22:09.611Z",
|
||||||
"epics": {
|
"epics": {
|
||||||
"agent-workflow-docs-v1": {
|
"agent-workflow-docs-v1": {
|
||||||
"status": "done",
|
"status": "done",
|
||||||
@@ -255,24 +255,24 @@
|
|||||||
}
|
}
|
||||||
},
|
},
|
||||||
"sandcastle-dispatch-v1": {
|
"sandcastle-dispatch-v1": {
|
||||||
"status": "in-progress",
|
"status": "done",
|
||||||
"title": "Sandcastle dispatch v1 — pnpm work dispatch with planning + execute modes",
|
"title": "Sandcastle dispatch v1 — pnpm work dispatch with planning + execute modes",
|
||||||
"stories": {
|
"stories": {
|
||||||
"01-sandcastle-install": {
|
"01-sandcastle-install": {
|
||||||
"status": "in-progress",
|
"status": "done",
|
||||||
"title": "Install @ai-hero/sandcastle + Dockerfile",
|
"title": "Install @ai-hero/sandcastle + Dockerfile",
|
||||||
"ac_total": 4,
|
"ac_total": 4,
|
||||||
"ac_completed": 0,
|
"ac_completed": 4,
|
||||||
"depends_on": [],
|
"depends_on": [],
|
||||||
"blocks": [
|
"blocks": [
|
||||||
"02-dispatch-planner"
|
"02-dispatch-planner"
|
||||||
]
|
]
|
||||||
},
|
},
|
||||||
"02-dispatch-planner": {
|
"02-dispatch-planner": {
|
||||||
"status": "todo",
|
"status": "done",
|
||||||
"title": "Dispatch planner — finds next ready bullet, prints plan",
|
"title": "Dispatch planner — finds next ready bullet, prints plan",
|
||||||
"ac_total": 3,
|
"ac_total": 3,
|
||||||
"ac_completed": 0,
|
"ac_completed": 3,
|
||||||
"depends_on": [
|
"depends_on": [
|
||||||
"01-sandcastle-install"
|
"01-sandcastle-install"
|
||||||
],
|
],
|
||||||
@@ -282,10 +282,10 @@
|
|||||||
]
|
]
|
||||||
},
|
},
|
||||||
"03-dispatch-execute": {
|
"03-dispatch-execute": {
|
||||||
"status": "todo",
|
"status": "done",
|
||||||
"title": "Dispatch execute mode — invoke sandcastle.run for impl + review",
|
"title": "Dispatch execute mode — invoke sandcastle.run for impl + review",
|
||||||
"ac_total": 4,
|
"ac_total": 4,
|
||||||
"ac_completed": 0,
|
"ac_completed": 4,
|
||||||
"depends_on": [
|
"depends_on": [
|
||||||
"02-dispatch-planner"
|
"02-dispatch-planner"
|
||||||
],
|
],
|
||||||
@@ -294,10 +294,10 @@
|
|||||||
]
|
]
|
||||||
},
|
},
|
||||||
"04-dispatch-cli-wiring": {
|
"04-dispatch-cli-wiring": {
|
||||||
"status": "todo",
|
"status": "done",
|
||||||
"title": "pnpm work dispatch CLI wiring + smoke tests",
|
"title": "pnpm work dispatch CLI wiring + smoke tests",
|
||||||
"ac_total": 4,
|
"ac_total": 4,
|
||||||
"ac_completed": 0,
|
"ac_completed": 4,
|
||||||
"depends_on": [
|
"depends_on": [
|
||||||
"02-dispatch-planner",
|
"02-dispatch-planner",
|
||||||
"03-dispatch-execute"
|
"03-dispatch-execute"
|
||||||
@@ -321,38 +321,6 @@
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"ready": [
|
"ready": [],
|
||||||
{
|
"blocked": []
|
||||||
"epic": "sandcastle-dispatch-v1",
|
|
||||||
"story": "01-sandcastle-install",
|
|
||||||
"title": "Install @ai-hero/sandcastle + Dockerfile"
|
|
||||||
}
|
|
||||||
],
|
|
||||||
"blocked": [
|
|
||||||
{
|
|
||||||
"epic": "sandcastle-dispatch-v1",
|
|
||||||
"story": "02-dispatch-planner",
|
|
||||||
"title": "Dispatch planner — finds next ready bullet, prints plan",
|
|
||||||
"waiting_on": [
|
|
||||||
"sandcastle-dispatch-v1/01-sandcastle-install"
|
|
||||||
]
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"epic": "sandcastle-dispatch-v1",
|
|
||||||
"story": "03-dispatch-execute",
|
|
||||||
"title": "Dispatch execute mode — invoke sandcastle.run for impl + review",
|
|
||||||
"waiting_on": [
|
|
||||||
"sandcastle-dispatch-v1/02-dispatch-planner"
|
|
||||||
]
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"epic": "sandcastle-dispatch-v1",
|
|
||||||
"story": "04-dispatch-cli-wiring",
|
|
||||||
"title": "pnpm work dispatch CLI wiring + smoke tests",
|
|
||||||
"waiting_on": [
|
|
||||||
"sandcastle-dispatch-v1/02-dispatch-planner",
|
|
||||||
"sandcastle-dispatch-v1/03-dispatch-execute"
|
|
||||||
]
|
|
||||||
}
|
|
||||||
]
|
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -3,7 +3,7 @@ id: 01-sandcastle-install
|
|||||||
epic: sandcastle-dispatch-v1
|
epic: sandcastle-dispatch-v1
|
||||||
title: Install @ai-hero/sandcastle + Dockerfile
|
title: Install @ai-hero/sandcastle + Dockerfile
|
||||||
type: technical-story
|
type: technical-story
|
||||||
status: in-progress
|
status: done
|
||||||
feature: tooling
|
feature: tooling
|
||||||
depends-on: []
|
depends-on: []
|
||||||
blocks: [02-dispatch-planner]
|
blocks: [02-dispatch-planner]
|
||||||
@@ -11,7 +11,7 @@ blocks: [02-dispatch-planner]
|
|||||||
|
|
||||||
## Tasks
|
## Tasks
|
||||||
|
|
||||||
- [ ] Story scaffold
|
- [x] Story scaffold
|
||||||
- [ ] Add @ai-hero/sandcastle to devDependencies
|
- [x] Add @ai-hero/sandcastle to devDependencies
|
||||||
- [ ] Create .sandcastle/Dockerfile (minimal node + pnpm)
|
- [x] Create .sandcastle/Dockerfile (minimal node + pnpm)
|
||||||
- [ ] Verify install + import resolves
|
- [x] Verify install + import resolves
|
||||||
|
|||||||
@@ -3,7 +3,7 @@ id: 02-dispatch-planner
|
|||||||
epic: sandcastle-dispatch-v1
|
epic: sandcastle-dispatch-v1
|
||||||
title: Dispatch planner — finds next ready bullet, prints plan
|
title: Dispatch planner — finds next ready bullet, prints plan
|
||||||
type: technical-story
|
type: technical-story
|
||||||
status: todo
|
status: done
|
||||||
feature: scripts
|
feature: scripts
|
||||||
depends-on: [01-sandcastle-install]
|
depends-on: [01-sandcastle-install]
|
||||||
blocks: [03-dispatch-execute, 04-dispatch-cli-wiring]
|
blocks: [03-dispatch-execute, 04-dispatch-cli-wiring]
|
||||||
@@ -11,6 +11,6 @@ blocks: [03-dispatch-execute, 04-dispatch-cli-wiring]
|
|||||||
|
|
||||||
## Tasks
|
## Tasks
|
||||||
|
|
||||||
- [ ] findNextTask() — returns { epic, story, bullet, storyContent } or null
|
- [x] findNextTask() — returns { epic, story, bullet, storyContent } or null
|
||||||
- [ ] Tests
|
- [x] Tests
|
||||||
- [ ] CLI: printPlan() — prints the dispatch plan
|
- [x] CLI: printPlan() — prints the dispatch plan
|
||||||
|
|||||||
@@ -3,7 +3,7 @@ id: 03-dispatch-execute
|
|||||||
epic: sandcastle-dispatch-v1
|
epic: sandcastle-dispatch-v1
|
||||||
title: Dispatch execute mode — invoke sandcastle.run for impl + review
|
title: Dispatch execute mode — invoke sandcastle.run for impl + review
|
||||||
type: technical-story
|
type: technical-story
|
||||||
status: todo
|
status: done
|
||||||
feature: scripts
|
feature: scripts
|
||||||
depends-on: [02-dispatch-planner]
|
depends-on: [02-dispatch-planner]
|
||||||
blocks: [04-dispatch-cli-wiring]
|
blocks: [04-dispatch-cli-wiring]
|
||||||
@@ -11,7 +11,7 @@ blocks: [04-dispatch-cli-wiring]
|
|||||||
|
|
||||||
## Tasks
|
## Tasks
|
||||||
|
|
||||||
- [ ] dispatchImplementer() — calls sandcastle.run with implementer prompt
|
- [x] dispatchImplementer() — calls sandcastle.run with implementer prompt
|
||||||
- [ ] dispatchReviewer() — calls sandcastle.run with reviewer prompt + diff
|
- [x] dispatchReviewer() — calls sandcastle.run with reviewer prompt + diff
|
||||||
- [ ] applyReviewerDecision() — prints what state mutation WOULD happen
|
- [x] applyReviewerDecision() — prints what state mutation WOULD happen
|
||||||
- [ ] Tests with mocked sandcastle.run
|
- [x] Tests with mocked sandcastle.run
|
||||||
|
|||||||
@@ -3,7 +3,7 @@ id: 04-dispatch-cli-wiring
|
|||||||
epic: sandcastle-dispatch-v1
|
epic: sandcastle-dispatch-v1
|
||||||
title: pnpm work dispatch CLI wiring + smoke tests
|
title: pnpm work dispatch CLI wiring + smoke tests
|
||||||
type: technical-story
|
type: technical-story
|
||||||
status: todo
|
status: done
|
||||||
feature: scripts
|
feature: scripts
|
||||||
depends-on: [02-dispatch-planner, 03-dispatch-execute]
|
depends-on: [02-dispatch-planner, 03-dispatch-execute]
|
||||||
blocks: []
|
blocks: []
|
||||||
@@ -11,7 +11,7 @@ blocks: []
|
|||||||
|
|
||||||
## Tasks
|
## Tasks
|
||||||
|
|
||||||
- [ ] cli.mjs: add `dispatch` subcommand with `--execute` flag
|
- [x] cli.mjs: add `dispatch` subcommand with `--execute` flag
|
||||||
- [ ] CLI smoke tests
|
- [x] CLI smoke tests
|
||||||
- [ ] README / docs update
|
- [x] README / docs update
|
||||||
- [ ] Final verification + closeout
|
- [x] Final verification + closeout
|
||||||
|
|||||||
@@ -3,7 +3,7 @@ id: sandcastle-dispatch-v1
|
|||||||
prd: null
|
prd: null
|
||||||
title: Sandcastle dispatch v1 — pnpm work dispatch with planning + execute modes
|
title: Sandcastle dispatch v1 — pnpm work dispatch with planning + execute modes
|
||||||
type: epic
|
type: epic
|
||||||
status: in-progress
|
status: done
|
||||||
features: [tooling, scripts]
|
features: [tooling, scripts]
|
||||||
created: 2026-05-13
|
created: 2026-05-13
|
||||||
---
|
---
|
||||||
@@ -21,7 +21,7 @@ holds the prompts, and dispatch.mjs connects them to sandcastle.
|
|||||||
|
|
||||||
## Stories
|
## Stories
|
||||||
|
|
||||||
- [ ] [01 — Install @ai-hero/sandcastle + Dockerfile](01-sandcastle-install/_story.md)
|
- [x] [01 — Install @ai-hero/sandcastle + Dockerfile](01-sandcastle-install/_story.md)
|
||||||
- [ ] [02 — Dispatch planner (default mode)](02-dispatch-planner/_story.md)
|
- [x] [02 — Dispatch planner (default mode)](02-dispatch-planner/_story.md)
|
||||||
- [ ] [03 — Dispatch execute mode (sandcastle.run integration)](03-dispatch-execute/_story.md)
|
- [x] [03 — Dispatch execute mode (sandcastle.run integration)](03-dispatch-execute/_story.md)
|
||||||
- [ ] [04 — pnpm work dispatch wiring + tests](04-dispatch-cli-wiring/_story.md)
|
- [x] [04 — pnpm work dispatch wiring + tests](04-dispatch-cli-wiring/_story.md)
|
||||||
|
|||||||
Reference in New Issue
Block a user