feat(solo-dialogs): layout-conformance + entity-profielen
Story 6 van PBI "Alle dialogen conform docs/patterns/dialog.md". - batch-enqueue-blocker-dialog: entityDialog* layout-classes - task-detail-dialog: entityDialog* layout-classes (rest van interne layout blijft custom — hybride detail+blur-save view) - docs/specs/dialogs/task-detail.md — profiel dat het blur-save + PATCH-route patroon documenteert (afwijking van klassieke Server-Action+form flow) - docs/specs/dialogs/batch-enqueue-blocker.md — profiel voor informational confirm-dialog Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
This commit is contained in:
parent
784791d8f9
commit
0a58557e9d
5 changed files with 157 additions and 34 deletions
48
docs/specs/dialogs/batch-enqueue-blocker.md
Normal file
48
docs/specs/dialogs/batch-enqueue-blocker.md
Normal file
|
|
@ -0,0 +1,48 @@
|
|||
---
|
||||
title: "BatchEnqueueBlockerDialog Profiel"
|
||||
status: active
|
||||
audience: [ai-agent, contributor]
|
||||
language: nl
|
||||
last_updated: 2026-05-04
|
||||
---
|
||||
|
||||
# BatchEnqueueBlockerDialog Profiel
|
||||
|
||||
> Volgt `docs/patterns/dialog.md`. Dit is een **informational / confirm-dialog** zonder eigen entiteit — geen schema, geen demo-policy, geen server actions.
|
||||
|
||||
## Doel
|
||||
|
||||
Wanneer de gebruiker in solo-mode "stuur volgende N taken naar Claude" probeert maar er een blokkade voor de N-de taak ligt (een PBI op `blocked` of een taak op `review`), stopt de UI het in deze dialog en biedt aan om alleen de taken **vóór** de blokkade te queuen.
|
||||
|
||||
## Modus
|
||||
|
||||
Confirm-dialog. Geen create/edit/detail. Geen form.
|
||||
|
||||
## Props
|
||||
|
||||
```ts
|
||||
{
|
||||
open: boolean
|
||||
onOpenChange: (v: boolean) => void
|
||||
prefixCount: number // hoeveel taken vóór de blokkade liggen
|
||||
blockerReason: 'task-review' | 'pbi-blocked'
|
||||
blockerLabel: string // titel van de blokkerende PBI/taak
|
||||
onConfirm: () => void // alleen taken vóór de blokkade queuen
|
||||
onCancel: () => void // helemaal annuleren
|
||||
}
|
||||
```
|
||||
|
||||
## URL- of state-pattern
|
||||
|
||||
- Gekozen: **state-based** — gerendeerd door `solo-board` met een `BatchEnqueueState | null`-prop.
|
||||
|
||||
## Layout
|
||||
|
||||
Gebruikt `entityDialogContentClasses` voor responsive sizing.
|
||||
|
||||
## Bewust NIET in v1
|
||||
|
||||
- ❌ **Geen demo-policy** — de dialog schrijft niet zelf; demo-blokkering vindt plaats wanneer `onConfirm` de daadwerkelijke `enqueueClaudeJobAction` aanroept (laag 2 demo-check zit daar).
|
||||
- ❌ **Geen schema** — geen veldwaarden in/uit; alleen confirm/cancel.
|
||||
- ❌ **Geen dirty-close-guard** — geen state om dirty te raken.
|
||||
- ❌ **Geen Cmd/Ctrl+Enter** — niet zinvol voor confirm-only.
|
||||
Loading…
Add table
Add a link
Reference in a new issue