[Design] Unify destructive actions and error states
I maintainer di solito rispondono entro 1 giorno
Nessuno ha ancora preso questa issue.
Valutazione
- Difficoltà
- 5/5
- Tempo stimato
- Più di una settimana
- Idoneità per principianti
- 30/100
- Tipo di issue
- Funzionalità
- Chiarezza
- Abbastanza chiara
- Stato di attività
- Attiva
- Stack tecnologico
- typescript
- Ambito
- accessibility, design, frontend
Direzione di ricerca
Start with the design audit at /design-audit#surfaces and inspect TerminalAlert consumers in apps/web, plus the document deletion and other destructive dialogs. Review the existing focus, recovery, and announcement behavior before mapping the required states. Done means approved audit specimens, accessibility evidence, migrated consumers, screenshots, and passing bun run types, bun run ci, bun run design-audit:test, and bun test.
Scritto dal modello di indicizzazione a partire dal testo della issue.
Descrizione
Base branch: main
Branch: maggie/design-error-and-destructive-states
Depends on: None
Goal
Design a coherent system for destructive actions and inline, recoverable, and terminal errors across Chopin.
Context From Planning
- The destructive dialog and all error specimens in
/design-audit#surfacescurrently feel visually crude and inconsistent. - Destructive buttons, warnings, validation errors, retryable failures, and terminal failures need related semantics without making every error equally loud.
- This is a proper design pass requiring human review, not a CSS-only color adjustment.
Current Behavior
Errors are presented through a mix of plain destructive text, TerminalAlert, ad hoc banners, and dialog-local copy. Destructive actions use related colors but do not form a clear severity, placement, or recovery system.
Desired Behavior
Define reusable alert/status and destructive-action patterns with clear severity, readable hierarchy, consistent actions, accessible announcements, and calm visual weight appropriate to the consequence.
Acceptance Criteria
- The design audit covers inline validation, recoverable error with retry, terminal error, destructive confirmation, destructive failure, and disabled/busy destructive action.
- Each pattern defines icon, title/body hierarchy, action placement, color role, surface, spacing, and announcement semantics.
- Errors remain understandable without color alone and meet contrast requirements.
- Retry, cancel, and destructive confirmation keep their existing behavior and focus management.
- A shared primitive replaces duplicate presentation while retaining consumer-specific copy and recovery behavior.
- Maggie approves the audit specimens before production migration.
Verification Commands
bun run typesbun run cibun run design-audit:testbun test
Primary Surfaces
/design-audit#surfacesTerminalAlertconsumers inapps/web- Document deletion and other destructive dialogs
- Research, navigation, and composer failures
Expected PR Checks
- Repo required checks
Report Requirements
- State matrix and before/after screenshots
- Accessibility behavior for alerts and dialogs
- Production consumers migrated
- Deferred edge cases
Implementation Notes
- Preserve the distinction between validation, recoverable, and terminal failures.
- Preserve persistence-before-publication and existing action semantics; presentation must not acknowledge work early.
- Build on shared tokens/components rather than bespoke dialog and banner CSS.
Stop Conditions
- Severity semantics or copy require a product decision.
- A proposed shared component cannot preserve a consumer's focus or recovery contract.
- Lingua principale
- TypeScript
- Stelle
- 392
- Fork
- 22
- Merge medio
- 1g 7m
- PR unite (30g)
- 203
Preparare l'ambiente
- Include un Dockerfile o un file Docker Compose
- Nessun modello di pull request
- Nessuna guida per i contributori
Come iniziare
- Leggi tutta la issue e poi la guida ai contributi del progetto.
- Commenta sulla issue per dire che te ne occupi tu — evita che due persone facciano lo stesso lavoro.
- Fai un fork del repository e lavora su un branch.
- Apri una pull request che faccia riferimento al numero della issue.
Altre issue di githubnext/chopin
-
documentation triage/human-response
Difficoltà 2/5 1-3 ore Idoneità per principianti 74/100
githubnext/chopin#149 · 3 commenti ·
I maintainer di solito rispondono entro 1 giorno
-
enhancement triage/human-response
Difficoltà 4/5 3-5 giorni Idoneità per principianti 55/100
githubnext/chopin#203 · 2 commenti ·
I maintainer di solito rispondono entro 1 giorno
-
enhancement triage/human-response
Difficoltà 5/5 Più di una settimana Idoneità per principianti 35/100
githubnext/chopin#165 ·
I maintainer di solito rispondono entro 1 giorno
-
enhancement triage/human-response
Difficoltà 5/5 Più di una settimana Idoneità per principianti 35/100
githubnext/chopin#164 ·
I maintainer di solito rispondono entro 1 giorno
-
triage/human-response
Difficoltà 5/5 Più di una settimana Idoneità per principianti 38/100
githubnext/chopin#163 ·
I maintainer di solito rispondono entro 1 giorno
Tutte le issue di githubnext/chopin
Issue simili
-
Difficoltà 2/5 1-3 ore Idoneità per principianti 72/100
NousResearch/hermes-agent#136483 ·
I maintainer di solito rispondono entro 1 giorno
-
Difficoltà 2/5 1-3 ore Idoneità per principianti 86/100
I maintainer di solito rispondono entro 1 giorno
-
Tool errors containing cycles or BigInt crash getErrorMessage and replace the original failureApertafactory-active factory-automatic task-bug-reproduction-success task-identify-harness-labels-done task-identify-issue-type-done
Difficoltà 2/5 1-3 ore Idoneità per principianti 62/100
vercel/ai#22796 · 2 commenti ·
I maintainer di solito rispondono entro 1 giorno
-
[Bug]: Web chat input doesn't regain focus after a reply finishesForse già presa @GaijinSystems l’ha presa oggi. Aperta
Difficoltà 2/5 1-3 ore Idoneità per principianti 76/100
zeroclaw-labs/zeroclaw#11658 ·
I maintainer di solito rispondono entro 2 giorni
-
Difficoltà 2/5 1-3 ore Idoneità per principianti 75/100
babylonlabs-io/babylon-toolkit#2711 ·
I maintainer di solito rispondono entro 1 giorno