MOTIR-1494Done
Add Edit-dates to the sprint ⋯ menu — wire the existing PATCH /api/sprints/[id] start/end (UI gap)
Verified against shipped motir-core. Backend COMPLETE — the gap is UI only (same disabled ⋯ menu as MOTIR-1492).
Reality
sprintsService.updateSprint()setsstartDate/endDateand validates the effective merged window viaassertWindow(lib/services/sprintsService.ts:216-226); complete frozen, active/planned editable.PATCH /api/sprints/[id]acceptsstartDate/endDate(app/api/sprints/[id]/route.ts:58,71-82) + MCPupdate_sprint(lib/mcp/tools/updateSprint.ts:29-38).- The gap: dates are only settable through
StartSprintDialogwhile STARTING the sprint (StartSprintDialog.tsx:132-137,172-173). No standalone date edit; the⋯menu is disabled.
Fix (UI only, motir-core)
Add Edit dates to the sprint ⋯ menu (reuse the shipped date-picker + FormField) → PATCH /api/sprints/[id] with { startDate, endDate }; validation end-after-start (the service's assertWindow enforces it server-side); re-render date-dependent surfaces. blocked_by MOTIR-1492.
Acceptance criteria
- Editing a planned/active sprint's start/end from the
⋯menu persists viaPATCHand re-renders; complete sprint's dates frozen; end-after-start enforced.
Context refs
- Service
lib/services/sprintsService.ts:216; routeapp/api/sprints/[id]/route.ts:58; start-only pathStartSprintDialog.tsx:132; disabled menuSprintContainer.tsx:198.