Scrum4Me/__tests__
Madhura68 9f8d41518a feat(ideas): upload-plan knop — short-circuit van Make-Plan AI-flow
Voegt een 'Upload plan' knop toe in idea-row-actions (verschijnt in zowel
list als idea-detail). Klik → file picker → kies .md → server-side parse +
opslaan; idea-status springt naar PLAN_READY. Vandaaruit de bestaande
'Maak PBI' knop voor materialize.

Server (uploadPlanMdAction):
- Toegestaan vanuit DRAFT, GRILLED, PLAN_FAILED, PLAN_READY
- DRAFT → skip-grill: status gaat direct naar PLAN_READY
- PLAN_READY overschrijft het bestaande plan (consistent met
  updatePlanMdAction, geen confirmation)
- Geblokkeerd in GRILLING/PLANNING (job loopt), PLANNED (al gematerialiseerd)
- Parse-failure → 422 + details (NIET opslaan, zodat een onparseerbaar plan
  nooit in de DB belandt)
- Empty / >100k chars → 422
- Schrijft IdeaLog NOTE met from_status + length
- Rate-limit + demo-guard + ownership-check via loadOwnedIdea (zelfde
  patroon als updatePlanMdAction)

UI (idea-row-actions.tsx):
- Hidden <input type=file accept=".md,.markdown,text/markdown,text/plain">
- FileReader → text → action
- Toast bij success + router.refresh()
- Blocked-tooltip in andere statussen

Tests: 10 nieuwe in __tests__/actions/ideas-crud.test.ts dekkend voor:
happy paths (DRAFT/GRILLED/PLAN_READY-overwrite/PLAN_FAILED), blocks
(PLANNED/GRILLING), validation (empty/oversized/parse-fail), 404.
Full suite groen: 849/849.

Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
2026-05-13 15:53:47 +02:00
..
actions feat(ideas): upload-plan knop — short-circuit van Make-Plan AI-flow 2026-05-13 15:53:47 +02:00
api feat(PBI-79): Product Backlog sprint-membership via vinkjes (#190) 2026-05-11 18:56:46 +02:00
app feat(ST-1138): mobile Solo-pagina + verify TaskDetailDialog (T-331/T-332/T-333) 2026-05-04 10:52:41 +02:00
components fix(sprint-conflicts): free stories from inactive sprints (CLOSED/ARCHIVED/FAILED) (#196) 2026-05-13 15:42:02 +02:00
lib fix(sprint-conflicts): free stories from inactive sprints (CLOSED/ARCHIVED/FAILED) (#196) 2026-05-13 15:42:02 +02:00
proxy proxy: add /ideas to protectedRoutes; verify demo-guard for /api/ideas (M12 T-501) 2026-05-04 19:56:41 +02:00
realtime feat(PBI-74): Zustand product-workspace rearchitecture (Stories 1-8) (#180) 2026-05-10 02:25:19 +02:00
stores feat(PBI-79): Product Backlog sprint-membership via vinkjes (#190) 2026-05-11 18:56:46 +02:00
lars-flow-checklist.md docs(ST-612): update Lars-flow checklist met todo Data Table stappen 2026-04-25 20:10:16 +02:00