- apps/desktop: electron-vite + React + Tailwind mapped onto design tokens (preflight off; tokens/base.css owns the reset); boots to a Reginald placeholder proving fonts/tokens/core wiring - packages/core: pure TS; gitea label schema (est/*, p/*, deadline/hard) with pessimistic conflict resolution + 15 unit tests - docs/design: full design handoff (tokens, 16 component contracts, interactive 14-screen prototype, Reginald voice rules) - docs/PLAN.md: product plan (purity rule, pm-state repo, deterministic scheduler + Monte Carlo, directive log) - Deliberate deviation from novelpad stack: no ElectricSQL/PGlite — local store is a rebuildable cache over gitea REST/webhooks (better-sqlite3 in main process, arriving in P1) Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
18 lines
502 B
Markdown
18 lines
502 B
Markdown
Modal for propose-approve and destructive confirms; the title sits over a double stationery rule.
|
|
|
|
```jsx
|
|
<Dialog
|
|
open={open}
|
|
onClose={close}
|
|
title="Delete milestone"
|
|
footer={<>
|
|
<Button variant="ghost" onClick={close}>Keep it</Button>
|
|
<Button variant="danger" onClick={confirm}>Yes, delete</Button>
|
|
</>}
|
|
>
|
|
This deletes the milestone and unhouses 12 issues. I'd like to hear you say yes.
|
|
</Dialog>
|
|
```
|
|
|
|
Body copy may be Reginald's (serif if quoted). Escape and scrim-click close it.
|