Open the dashboard at the published /dashboard/ route on a phone, tap Plan Today, choose/reorder work, then use Save & start. The planner is full-width at <=600px, has no horizontal grid overflow, and keeps its sticky actions above the safe area.
Closes #385
## What changed
- add a full-screen, capacity-guided Plan Today workspace
- let operators draft, remove, and reorder up to five My Work items without mutating the saved plan
- save the exact ordered plan through existing account-scoped Today sync, with an optional immediate work-session handoff
- ship the planner in a bumped offline shell with narrow-screen, safe-area, and 44px touch-target styling
## Verification
- strict RED witnessed: `pytest -q tests/test_plan_today.py` failed 3 tests before implementation
- focused: `pytest -q tests/test_plan_today.py tests/test_today_work.py tests/test_today_sync.py tests/test_service_worker.py tests/test_mobile_composer_integration.py` (60 passed)
- full: `pytest -q` (738 passed)
- syntax/diff: `node --check frontend/dashboard.js`, `node --check frontend/plan-today.js`, `git diff --check`
## Mobile test
Open the dashboard at the published `/dashboard/` route on a phone, tap **Plan Today**, choose/reorder work, then use **Save & start**. The planner is full-width at <=600px, has no horizontal grid overflow, and keeps its sticky actions above the safe area.
Blocking a user prevents them from interacting with repositories, such as opening or commenting on pull requests or issues. Learn more about blocking a user.
Closes #385
What changed
Verification
pytest -q tests/test_plan_today.pyfailed 3 tests before implementationpytest -q tests/test_plan_today.py tests/test_today_work.py tests/test_today_sync.py tests/test_service_worker.py tests/test_mobile_composer_integration.py(60 passed)pytest -q(738 passed)node --check frontend/dashboard.js,node --check frontend/plan-today.js,git diff --checkMobile test
Open the dashboard at the published
/dashboard/route on a phone, tap Plan Today, choose/reorder work, then use Save & start. The planner is full-width at <=600px, has no horizontal grid overflow, and keeps its sticky actions above the safe area.