Update story 60: add numbered work/ directory structure

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
This commit is contained in:
Dave
2026-02-20 16:53:28 +00:00
parent 9d884eaf28
commit ee20791a18

View File

@@ -27,41 +27,47 @@ As a developer, I want work items organized by pipeline status rather than by ty
``` ```
.story_kit/ .story_kit/
upcoming/ ← all work items waiting to start work/
current/ ← being coded 1_upcoming/ ← all work items waiting to start
qa/ ← being reviewed by QA agent 2_current/ ← being coded by agents
merge/ ← being merged to master 3_qa/ ← being reviewed by QA agent
archived/ ← done 4_merge/ ← being merged to master
specs/ ← long-lived project info (not a work item) 5_archived/ ← done
specs/ ← long-lived project info (not a workflow stage)
worktrees/ ← agent worktrees (unchanged) worktrees/ ← agent worktrees (unchanged)
project.toml ← config (unchanged) project.toml ← config (unchanged)
``` ```
The numbered `work/` subdirectories define the workflow pipeline. `ls` shows them in pipeline order. `specs/`, `worktrees/`, and `project.toml` are infrastructure outside the workflow.
## Naming Convention ## Naming Convention
All work items use: `{number}_{type}_{slug}.md` All work items use: `{number}_{type}_{slug}.md`
``` ```
upcoming/57_story_foo_bar_blah.md work/1_upcoming/57_story_foo_bar_blah.md
upcoming/58_spike_a_b_c.md work/1_upcoming/58_spike_a_b_c.md
upcoming/59_bug_flappapa.md work/1_upcoming/59_bug_flappapa.md
``` ```
Types: `story`, `bug`, `spike`. The number is the primary identifier, auto-incremented across all types. You say "story 57", "bug 59", etc. Types: `story`, `bug`, `spike`. The number is the primary identifier, auto-incremented across all types. You say "story 57", "bug 59", etc.
## Acceptance Criteria ## Acceptance Criteria
- [ ] Migrate existing `stories/upcoming/` `upcoming/`, renaming files to include `_story_` type prefix - [ ] Create `work/` directory with numbered subdirectories: `1_upcoming`, `2_current`, `3_qa`, `4_merge`, `5_archived`
- [ ] Migrate existing `stories/archived/``archived/`, renaming files to include `_story_` type prefix - [ ] Migrate existing `stories/upcoming/``work/1_upcoming/`, renaming files to include `_story_` type prefix
- [ ] Migrate existing `bugs/``archived/` (for closed) or `upcoming/` (for open), renaming to include `_bug_` type prefix - [ ] Migrate existing `stories/archived/``work/5_archived/`, renaming files to include `_story_` type prefix
- [ ] Remove old `stories/`, `bugs/` directories - [ ] Migrate existing `current/` contents → `work/2_current/`
- [ ] `create_story`, `create_bug` MCP tools use the new naming convention and write to `upcoming/` - [ ] Migrate existing `bugs/` `work/5_archived/` (for closed) or `work/1_upcoming/` (for open), renaming to include `_bug_` type prefix
- [ ] `start_agent` moves from `upcoming/` to `current/` - [ ] Remove old `stories/`, `bugs/`, `current/` directories
- [ ] `accept_story` and `close_bug` move from `current/` (or `merge/`) to `archived/` - [ ] `create_story`, `create_bug` MCP tools use the new naming convention and write to `work/1_upcoming/`
- [ ] `find_story_file()` and all path references updated to search by status dirs - [ ] `start_agent` moves from `work/1_upcoming/` to `work/2_current/`
- [ ] `next_story_number()` scans all status dirs for the highest number across all types - [ ] `accept_story` and `close_bug` move from `work/2_current/` (or `work/4_merge/`) to `work/5_archived/`
- [ ] `find_story_file()` and all path references updated to search `work/` status dirs
- [ ] `next_story_number()` scans all `work/` status dirs for the highest number across all types
- [ ] All agent prompts in `project.toml` updated to reference `work/` paths
- [ ] All existing tests updated for new paths - [ ] All existing tests updated for new paths
- [ ] Integration test: full lifecycle through upcoming → current → archived - [ ] Integration test: full lifecycle through `1_upcoming``2_current``5_archived`
## Supersedes ## Supersedes