Review: Sprint planning UI -- dogfood the wave planner
Verdict: NEEDS_REFINEMENT
Template Completeness
- [x] Type -- Feature
- [x] Lineage -- depends on paldocs#49, supersedes paldocs#48
- [x] Repo -- ldraney/paldocs
- [x] User Story -- As Lucas, sprint planning interface
- [x] Context -- dogfood ticket, reads existing board data
- [x] File Targets -- 4 create/modify targets, 2 do-not-touch
- [x] Feature Flag -- none (justified: new route, no impact)
- [x] Acceptance Criteria -- 6 criteria
- [x] Test Expectations -- 3 test items + run command
- [x] Constraints -- 4 constraints listed
- [x] Checklist -- 7 items
- [x] Related -- project-paldocs, upstream ref, story label
Traceability
- [x] story:sprint-orchestration label present
- [ ] story note MISSING -- [SCOPE] The project-paldocs user-stories section lists kanban, project-pages, and auth stories only. No sprint-orchestration story entry exists. Create user story entry on project-paldocs.
- [x] arch:rails-views label present
- [ ] arch note MISSING -- [SCOPE] arch-rails-views is referenced on project-paldocs architecture section but the actual pal-e-docs note does not exist (search returned empty). Create architecture note arch-rails-views.
- [x] Forgejo issue -- https://forgejo.tail5b443a.ts.net/ldraney/paldocs/issues/50, open
File Targets
- [x] app/controllers/sprint_planning_controller.rb -- to be created. No existing sprint planning controller. Correct.
- [x] app/views/sprint_planning/ -- to be created. No existing directory. Correct.
- [x] config/routes.rb -- exists. Currently has resources for projects, notes, boards, board_items. Sprint planning route will be added here. Correct.
- [x] app/views/layouts/ -- exists with application.html.erb. Nav link to be added in header navbar. Correct.
- [x] app/models/project.rb -- do-not-touch is correct: currently has no status scopes (paldocs#49 dependency)
- [x] db/ -- do-not-touch is correct: no schema changes needed for this ticket
Repo Placement
OK. Issue filed on ldraney/paldocs, work targets ldraney/paldocs. Single repo. No mismatch.
Dependencies
- paldocs#49 (schema ownership transfer) -- BLOCKING. Issue is open. The projects table currently has no
statuscolumn. The Project model has no status scopes. The ticket explicitly says "Depends on paldocs#49 merging first (needs status scopes)" and the Context section says it "uses the new projects.status field from paldocs#49 to filter active projects." This dependency is real and verified. - Board item #1559 (paldocs#49) is in backlog column on board-paldocs. It has not been reviewed or moved to todo yet.
- paldocs#48 is superseded (closed).
- No other board items appear to block or be blocked by this ticket.
Acceptance Criteria
6 acceptance criteria. All are testable by an agent:
- AC1: navigate to sprint planning, see active projects -- verifiable via controller test + system test
- AC2: select projects, see board items by column -- verifiable via controller test
- AC3: multiple project boards side-by-side -- verifiable via system test
- AC4: backlog/todo items show points and labels -- verifiable via view test
- AC5: identify independent tickets for wave staging -- somewhat vague for v1 read-only; acceptable since Constraints say "read-only for v1"
- AC6: navigation link from main layout -- verifiable via view inspection
Test expectations are concrete: controller tests for active projects and board items, system test for navigation flow. Run command is
rails test.Blast Radius
Low blast radius. This is a new controller and new views -- no modification to existing controllers, models, or views beyond adding a route and a nav link. The layout change (adding a nav link) is minimal. No downstream consumers affected. No similar patterns to check for bugs.
Decomposition Assessment
4 file targets in 1 repo. 6 acceptance criteria (under the 5+ threshold but borderline). Estimated agent work: under 5 minutes for a new controller + 2-3 view templates + route + nav link. No decomposition needed.
Recommendations
- [SCOPE] Create user story entry
story-paldocs-sprint-orchestrationon project-paldocs user-stories section. The story:sprint-orchestration label exists but has no backing note. - [SCOPE] Create architecture note
arch-rails-viewsin pal-e-docs. Referenced on project-paldocs but note does not exist.