What we're building
Re-scoped (v2.15.0, minor - new capability, NO migration, FRONTEND-ONLY). Todoist-style natural-language quick-add: the add-task title field parses inline tokens - free-form date (chrono-node), recurrence ("every week"), #project, @Label, p1-p4 - highlights them live, autosuggests #/@, and saves a clean title.
Scope
In scope (web AddTaskForm only): pure parser quickAdd.ts; parse-on-submit + live-fill of the structured controls; QuickAddInput backdrop-overlay highlight; #/@ autosuggest with keyboard nav; captured-chips row (type label + remove/unlink); chrono-node dep. Bare multi-weekday ("friday and saturday") = those days once via a UNTIL end date.
Out of scope: backend/MCP (Claude already does NL->rule), EditTaskModal, +assignee / !reminder / /section, a migration, inline contenteditable pills (used a backdrop overlay + chips instead).
Key decisions: chrono-node for one-off dates (first frontend dep, MIT) + hand-rolled recurrence/tokens; frontend-only; date-only vs timed via chrono isCertain; unknown #/@ left in title; controls live-fill from the parse + chips show what was captured ("both"); multi-weekday-once via UNTIL (user's insight, reuses v2.14.1 end conditions).
Plan
docs/plans/_archive/P72-natural-language-quick-add.md
Outcome
What was built:
- quickAdd.ts pure parser (chrono dates + hand-rolled recurrence/#/@/pN; cleaned title + token spans).
- AddTaskForm parse-on-submit + live-fill of Deadline/Project/Priority/Repeat controls.
- QuickAddInput: backdrop tint overlay, #/@ autosuggest (arrow keys + click), removable captured chips.
- Bare multi-weekday -> FREQ=WEEKLY;BYDAY=...;UNTIL= (those days once).
- chrono-node added (first frontend runtime dep).
Verified:
- 118 frontend tests; backend/MCP unchanged (216/92). Clean tsc + next build.
- Deployed to the phone (no migration; 25 tasks before/after). First deploy was broken by the committed doppel file:vendor dependency; fixed deploy-phone.sh to copy frontend/vendor into the standalone bundle; re-deploy succeeded, all 4 services fresh, frontend+MCP HTTP 200.
Issues raised during this work: none (deploy-script fix for vendored deps landed with this version).
What we're building
Re-scoped (v2.15.0, minor - new capability, NO migration, FRONTEND-ONLY). Todoist-style natural-language quick-add: the add-task title field parses inline tokens - free-form date (chrono-node), recurrence ("every week"), #project, @Label, p1-p4 - highlights them live, autosuggests #/@, and saves a clean title.
Scope
In scope (web AddTaskForm only): pure parser quickAdd.ts; parse-on-submit + live-fill of the structured controls; QuickAddInput backdrop-overlay highlight; #/@ autosuggest with keyboard nav; captured-chips row (type label + remove/unlink); chrono-node dep. Bare multi-weekday ("friday and saturday") = those days once via a UNTIL end date.
Out of scope: backend/MCP (Claude already does NL->rule), EditTaskModal, +assignee / !reminder / /section, a migration, inline contenteditable pills (used a backdrop overlay + chips instead).
Key decisions: chrono-node for one-off dates (first frontend dep, MIT) + hand-rolled recurrence/tokens; frontend-only; date-only vs timed via chrono isCertain; unknown #/@ left in title; controls live-fill from the parse + chips show what was captured ("both"); multi-weekday-once via UNTIL (user's insight, reuses v2.14.1 end conditions).
Plan
docs/plans/_archive/P72-natural-language-quick-add.md
Outcome
What was built:
Verified:
Issues raised during this work: none (deploy-script fix for vendored deps landed with this version).