Login: add an in-memory per-IP throttle (8 failed attempts -> 15-min lockout, 429 + Retry-After), raise the change-password minimum to 8 with a 72-char cap, and apply the same minimum on the StartOS Set Login Password action.
Records: add a record_floor column for manually-pinned bests plus recomputeRecord(); the live record is now the direction-aware best of the best logged value and the floor, recomputed on entry edit/delete so it can drop again (never below the floor). Settings exposes the floor as an override and shows the live best as a placeholder.
Bump package 0.1.6:0 -> 0.1.7:0 and the service-worker cache to v7.
Cross-repo git-hygiene audit remediation: surface ~/Projects/standards/INBOX.md items at session start, and switch .gitignore to the deny-by-default .claude/* block (shared wiring allow-listed) plus the canonical secrets/env lines — per standards/portability.md.
The file held the literal text "@AGENTS.md" (a Claude-only @-mention)
instead of a symlink. Other agents read that as literal text; make it a
relative symlink to AGENTS.md, matching the root CLAUDE.md.
- AGENTS.md: add Current state section; record Gitea origin; scrub the
dev password example to a placeholder and the deploy host to a config
reference.
- Add ROADMAP.md for longer-term backlog and deferred decisions.
- New Settings editor: rename categories (emoji/color too), rename
metrics, change unit and type, add/remove metrics, set step + record
tracking, archive/unarchive, and permanently delete categories.
- Settings now lists archived categories so they can be restored/deleted.
- Backend: add DELETE /api/categories/:id (cascades metrics, entries,
entry_values, plans, goals).
- Bump StartOS package to 0.1.6:0; service worker cache to v6.
- EPA Agility & Speed: add Max Speed and Max Weighted Speed (mph),
decimal record-tracked metrics, per session.
- Logged sessions are editable: tapping a category or a logged entry
opens it pre-filled; saving updates that entry (PUT /api/entries/:id)
instead of creating a duplicate. Record auto-update runs on edit too.
- Every value field is now a tap-to-type number input (decimal keypad
for speeds) while keeping the +/- stepper buttons; native spinners
removed. New decimal metric kind; seed + idempotent migration add the
EPA speed metrics.
- Bump StartOS package to 0.1.5:0; service worker cache to v5.
App features:
- Personal-best records per metric: manually settable in Settings and
auto-updated when a session beats them; shown in the log modal and a
new dashboard "Personal records" card.
- Juggling now counts by 1 instead of 5.
- 1-on-1 with Elijah gains Technical Skill and Effort scores (out of 10)
as manual inputs, plus an optional per-session note.
- Service worker now uses a controlled update flow: an in-app
"new version ready" banner activates the update on tap and reloads.
Data model:
- category_metrics gains track_record + record; entries gains note.
- Idempotent migrations bring existing databases up to date (juggling
step/record, Elijah score metrics) alongside the updated seed.
StartOS package:
- Bump to 0.1.2:0 with release notes.
- Build x86_64 only (drop aarch64) per deployment target.