From e6c3dc11b3cc29447beef1886237bae448748f1b Mon Sep 17 00:00:00 2001 From: Madhura68 Date: Sat, 2 May 2026 02:28:42 +0200 Subject: [PATCH] docs(dialog-pattern): convert task spec + add pbi/story entity-profiles Reduceert docs/scrum4me-task-dialog.md van 507 naar ~140 regels: alle gedeelde regels verhuisd naar docs/patterns/dialog.md, dit document bevat nu alleen Task-specifieke velden, URL-pattern, status-veld, server actions, triggers en bewuste out-of-scope-keuzes. Voegt twee nieuwe entity-profielen toe voor bestaande dialogen: - docs/scrum4me-pbi-dialog.md (PbiDialog: state-based, code+title-rij, PbiStatusSelect, geen delete in v1) - docs/scrum4me-story-dialog.md (StoryDialog: state-based, header met status/priority badges, inline activity-log, demo-readonly-fallback, inline-delete-confirm i.p.v. AlertDialog) Beide profielen documenteren expliciet de "Bekende gaps t.o.v. generieke spec" zodat opvolgende PR's de afwijkingen kunnen rechtzetten of bewust kunnen accorderen. Co-Authored-By: Claude Opus 4.7 (1M context) --- docs/scrum4me-pbi-dialog.md | 120 ++++++++ docs/scrum4me-story-dialog.md | 163 ++++++++++ docs/scrum4me-task-dialog.md | 557 ++++++---------------------------- 3 files changed, 372 insertions(+), 468 deletions(-) create mode 100644 docs/scrum4me-pbi-dialog.md create mode 100644 docs/scrum4me-story-dialog.md diff --git a/docs/scrum4me-pbi-dialog.md b/docs/scrum4me-pbi-dialog.md new file mode 100644 index 0000000..79fb5ae --- /dev/null +++ b/docs/scrum4me-pbi-dialog.md @@ -0,0 +1,120 @@ +# PbiDialog Profiel + +> Volgt **`docs/patterns/dialog.md`** (de generieke spec voor élke entity-dialog in Scrum4Me). +> Dit document beschrijft alleen de PBI-specifieke afwijkingen en keuzes — alle gedeelde regels (layout, motion, demo-policy, foutcodes, validatie, theming, dialog-gedrag) staan in de generieke spec en worden hier niet herhaald. + +> **Belangrijk:** als een regel in dit profiel botst met de generieke spec, wint de generieke spec. Documenteer hier de afwijking + reden, of pas de generieke spec aan. + +--- + +## Velden + +| Veld | Type | Mode | Validatie | +|---|---|---|---| +| `code` | `string \| null` | beide | optional, max 30 chars, mono-font, placeholder `auto` op create (server kent dan zelf een code toe) | +| `title` | `string` (required) | beide | trim, 1-200 chars | +| `priority` | `int` (1-4, P1 = hoogste) | beide | int 1-4, default 2 (kan via `defaultPriority`-prop bij create) | +| `status` | `PbiStatusApi` enum | beide | enum, default `'ready'` | +| `description` | `string \| null` | beide | optional, max 2000 chars, plain textarea (geen markdown rendering binnen de dialog) | + +`PbiStatusApi` enum (lowercase, mapped via `lib/task-status.ts`): zie `` voor de waarden. + +### Veld-specifiek gedrag + +- **Code + Titel** in één rij (`grid-cols-[6rem_1fr]`) +- **Prioriteit + Status** in één rij (`grid-cols-2`) +- **Prioriteit** via `` (gedeelde primitive, géén segmented buttons in deze dialog) +- **Status** via `` (PBI-specifieke wrapper rond gedeelde select) +- **Description** is `