Introduces a SwiftUI companion app for the Fail Well PWA: menu bar
status item, popover with task list / record / history views, command
palette, and a Dynamic Island-style notch overlay that shows the active
step and timer beside the hardware notch and expands on hover to reveal
pause/next controls.
Vertical-slice plan with five slices across four phases, each with
acceptance criteria, manual verification, and human-review checkpoints
between phases. Surfaces and orders the inconsistencies between the
current code and the per-task loop language. Flat todo.md mirrors the
plan as a checkable task list.
Captures the four coupled commitments that define Fail Well's per-task
loop: Initial Plan anchored at Start-of-Execution, Failure Signal with
three named modes (Estimation Variance, Discovered Scope, Abandoned
Scope), distinct affordances for Re-estimation vs Re-planning, and a
dedicated Closing Ceremony. Also records the alternatives considered
and rejected so future readers don't relitigate them.
Establishes the shared vocabulary for Fail Well: Task, Step, Plan,
Step History, Initial Plan, Execution, Step Record, Notes, plus the
Failure Signal (with its three named modes), Step-Back Signal, Closing
Ceremony, Re-estimation, and Re-planning. The glossary anchors all
downstream decisions about the per-task feedback loop.
- Upgrade vite from 5.1.3 to 5.4.21 to support modern sass API option
- Configure sass preprocessor with api: 'modern' to silence legacy-js-api warning
- Silence bulma-sourced deprecation warnings (import, global-builtin, color-functions, if-function)
Explain Fail Well's purpose, its origins from Toyota Production System's
standardized work, and how it differs from micromanagement. Include
author attribution and footer navigation link.
* refactor: ♻️ edit steps
* add md5 hash lib
* now step ids are generated based on titles and estimation
* feat: ✨ edit steps
now add steps will be a modal for editing all steps
* chore(commitizen): init cz changelog
* chore(changelog): init git cliff
* feat(edit steps): add a message to alert on the fact that the record may change
* feat(task): task link is a normal button now
* with the good ids
* remove column
* autofocus to title
* --wip-- [skip ci]
* lint
* can modify the whole task when recording