← ClaudeAtlas

lamina-controls-and-menuslisted

Actions and reversibility in contracts — primary/destructive actions, undo policy, confirmations. Use when destructive ops lack scenarios.
aryaniyaps/lamina · ★ 114 · AI & Automation · score 80
Install: claude install-skill aryaniyaps/lamina
# Controls and Actions (agent-native) Specify **action semantics** in screen and workflow contracts — destructive, reversible, confirmation policy — not menu widget styling. ## Contract encoding Per action on `surfaces[]`: - `id`, `label`, `destructive: true|false` - `reversible: true|false` → if true, confirmation usually unnecessary - `confirmation_required` only when undo impossible + scenario documents - `undo_scope`: step | session | none Working-set actions on primary toolbar area in screen spec; full catalog in nav/menus. ## Frameworks - **Ask forgiveness, not permission**: undo replaces confirm dialogs for recoverable ops. - **Rich modeless feedback**: status in view, not modal for normalcy. - **Preview/compare**: before irreversible-feeling changes — note in workflow step. ## Design checklists 1. Destructive ops have `scenarios[]` + recovery or undo policy. 2. Daily working-set actions ≤1-2 clicks from working screen. 3. Confirm only when invariant violation risk and undo absent. 4. Selection + manipulation pattern documented for sovereign apps. 5. Platform conventions noted in `implement.md` (web vs desktop) — Lamina stays unopinionated on library. ## Verify checks - Actor walk: destructive op matches contract confirmation/undo behavior. - Accidental click recovery — undo or cancel path exists per contract. ## Anti-patterns - Confirm dialog for undoable delete. - Modal error for recoverable validation. - All actions equal weight on crowded screen spec. -