2.6 KiB
2.6 KiB
Roadmap
Gate 0 — Project contract
Status: PASS
Gate 1 — Exchange format v1 freeze
Status: PASS
TRAINLOG_FORMAT_V1=FROZEN
Gate 2 — Persistence + usable TUI
Status: IN PROGRESS
FIRST_USABLE_TUI=PASS
TUI_V0_2_POLISH=IMPLEMENTED
GATE_2=IN_PROGRESS
Current TUI capabilities:
- direct workout entry;
- exercise catalog;
- body tracking;
- weight graph;
- colored dashboard;
- arrow/F-key navigation;
- navigable history;
- Unicode anti-duplicate exercise names.
Next TUI polish blocks:
- full session detail;
- exercise performance history and graphs;
- previous-session defaults;
- safe edit/delete flows.
Android remains deferred until the TUI daily workflow is satisfactory.
TUI v0.2 checkpoint
Current state:
FIRST_USABLE_TUI=PASS
TUI_V0_2_POLISH=IMPLEMENTED
TUI_SESSION_DETAILS=IMPLEMENTED
TUI_DURATION_HUMAN_INPUT=IMPLEMENTED
TUI_BODY_METRIC_GRAPHS=IMPLEMENTED
GATE_2=IN_PROGRESS
TRAINLOG_FORMAT_V1=FROZEN
Completed before this checkpoint:
- C17/Meson persistence core;
- SQLite schema v1 foundation;
- UUIDv4 generation;
- Unicode catalog normalization;
- direct workout recording;
- direct body observation recording;
- colored ncursesw dashboard;
- keyboard navigation;
- body-weight graph;
- flat-series graph rendering;
- navigable workout history;
- full read-only session detail.
Next implementation slice:
- shared duration parser accepting seconds and minute-oriented syntax;
- shared human duration formatter;
- generic body-metric history query;
- F4 metric selector;
- graphs for weight and every body measurement;
- left/right asymmetry presentation.
No incompatible change to frozen Trainlog JSON v1 is required.
Next TUI visualization slice
Canonical state after the current checkpoint:
FIRST_USABLE_TUI=PASS
TUI_V0_2_POLISH=IMPLEMENTED
TUI_SESSION_DETAILS=IMPLEMENTED
TUI_DURATION_HUMAN_INPUT=IMPLEMENTED
TUI_BODY_METRIC_GRAPHS=IMPLEMENTED
TUI_GLOBAL_BODY_OVERLAY=IMPLEMENTED
DASHBOARD_GRAPH_ONLY=IMPLEMENTED
GATE_2=IN_PROGRESS
TRAINLOG_FORMAT_V1=FROZEN
Next deliverables:
- normalized global body graph in
F4; - color + symbol identity for every overlaid metric;
- global percent-change summary;
- richer home weight graph;
- previous-measurement delta on dashboard;
- dashboard min/max weight;
- latest waist summary when available;
- compact asymmetry warning when relevant.
No database schema migration is expected. No Trainlog JSON v1 change is expected.
DASHBOARD_12_MONTHS=IMPLEMENTED