Releases
v0.5.25
Compare
Sorry, something went wrong.
No results found
0.5.25 (2026-07-11)
Bug Fixes
activities: guard calendar day mini-charts for previewable structure (a6fe6fe )
activities: prevent calendar cell items from being clipped by flex layout. (7f17fba )
add Docker build dependencies (d3bb43c )
analytics: prevent server-side execution of data fetching (748d560 )
api: allow description on OpenAPI parameter schema (5877b3b )
api: harden streamed JSON export serialization (37ecfc9 )
api: improve workout search date range logic and test coverage (5f3bd4f )
api: stream JSON profile export to avoid string length crash (a609e32 ), closes #208
app: add fetch error UI, rollbacks, and admin stats i18n (0d6b649 )
app: harden chat and workout pages against teardown races (bbee6a2 )
app: harden profile settings state and admin user error UI (5b2a417 )
app: refresh nutrition analysis UI and improve plan polling feedback (549e731 )
app: resolve app-review bugs with error UI, i18n, and a11y improvements (7706435 )
app: retry polling errors and guard public presence edits (4f96a90 )
auth: reset client state on logout to prevent cross-user leaks (145, 146, 147, 041, 136) (#229 ) (4551481 )
build: skip chat turn runner during Nitro build and prerender (670017a )
calendar: align planned workout queries to viewer-local UTC range (d8348b4 )
calendar: declare calendar bounds before computing fetch range (9d30476 )
calendar: include late-day workouts on last visible grid day (e11eaa2 )
chat: declare pollStartedAt ref for planned-workout polling (062) (#226 ) (da5b727 )
chat: load errors, tool approval recovery, queue persistence (077, 079, 123, 165, 166) (#235 ) (af4cd68 )
clear trigger monitor runs on identity switch (a5f06f7 )
coaching: resolve message context, team delete, and overview gaps (125fc71 )
coach: move fieldError inside script block (2aa546f )
components/public: resolve index casting and TipTap API usage in profile editor (dc13414 )
components: resolve nuxt ui v4 property issues and refine filter types (99f5d58 )
feed: pagination refetch, sport filter, error state (131, 132, 133) (#234 ) (6fb731d )
harden integration syncs and satisfy Nuxt typecheck (3bb0be7 )
import planService for modify_training_plan_structure chat tool (a7391b6 )
ingest date windows, quota checks, and sync status guards (PR 6) (#231 ) (70b7f69 )
ingestion: avoid duplicate workout dedup triggers (d99754c )
ingestion: reject absurd Intervals altitude metadata (18daedb )
intervals: robust deleted event ID handling in sync webhook (96cef09 )
keep structured workout retries on flash (f25b802 )
llm: align usage tracking with schema fields and SDK v7 token paths (abf9158 )
llm: align usage tracking with schema fields and SDK v7 token paths. (321eeeb )
llm: migrate flash default to Gemini 3.1 Flash Lite preview (a1d908f )
navigation: refetch on route param change and sync profile tab URL (064, 065, 141, 186) (#228 ) (a673bb4 )
nutrition: correct hydration advice and harden nutrition API paths (8f418ea )
nutrition: honor sedentary energy target on rest days (710a951 )
onboarding: join flow and consent hardening (PR 8) (#233 ) (3d2f46c )
pages: improve type safety and handle edge cases in various page components (cb997b9 )
prisma: recover target muscle groups migration order (54b1b0d )
profile: restore profile settings save on basic and communication tabs (7e72112 )
profile: tab popper crash, autodetect thresholds, FAILED integrations (187, 190, 197) (#227 ) (896c8fc )
quota: chat TTS/transcribe/retry, recommendations, plan adherence (163, 164, 176, 179, 180, 181) (#237 ) (a6abd74 )
recommendations: use Prisma reasoning field for activity recommendations. (6a31bdf )
require admin auth on debug API routes and pages (aeeb034 )
share: privacy hardening batch for issues 066, 095-096, 155-160, 157 (#232 ) (08afce0 )
stats: correct timezone-aware date calculations for monthly comparisons (b319983 )
streams: complete WorkoutStreamV2 migration and unify stream access. (438b474 )
streams: harden V1→V2 migration for messy prod JSONB data. (9f30fc4 )
streams: serve WorkoutStreamV2 data on workout detail page (893ecca )
structure: allow strength-only manual structure saves (e3ef5c2 )
tasks: add onTaskFailed handlers to clear loading state on failure (039, 049-051, 073-074, 080-082, 119, 138, 216) (#230 ) (bf57d97 )
trigger: enforce explicit single-value targeting in workout targeting resolution (4b69fe8 )
types: resolve type errors in athlete invites api and strength editor (91096b7 )
ui: optimize default layout for printing (ac6cbff )
user-flows: coaching links, analytics save, sync spinner, recommendations, profile cache, nutrition id (068, 076, 134, 148, 150, 151, 067) (#236 ) (ded43ac )
utils: resolve type errors in strength workout utilities (1272b81 )
utils: resolve typecheck errors in planned workout linking (7e681cf )
wellness: round calorie fields to integers (7896d71 )
workout-chart: fix ramp logic condition (e7a76eb )
yazio: recover missing recipe macros from meal summaries (39ae727 )
Features
add pi commit-helper flow and fix test mocks (86a8eca )
admin: add account deactivation controls (1b33c90 )
admin: add support ticket prompt and clipboard helpers to issue detail (a05b220 )
analytics: add mmp computation and expanded explorer presets (0b3b17d )
analytics: add widget search and filtering functionality (8630974 )
analytics: instrument key app flows with GA4 events and supporting UX fixes. (bf697d9 )
api: add admin endpoint to update user feature flags (2dc83d2 )
api: add advanced analysis modes to workout explorer endpoints (973cf98 )
api: add endpoints for strength exercise library and block-based workouts (0514e61 )
api: add hydration quick add endpoint (1c532a6 )
api: add workout explorer stream, summary, and density endpoints (0333af6 )
api: allow creating new workout from untargeted recommendation on empty day (0964039 )
api: implement coach-athlete invitation endpoints and join flow (b5b554f )
api: implement public profile and coaching request endpoints (e61f005 )
api: support strength exercise aliases in library endpoints (97a0989 )
api: update profile endpoints with public presence fields (c78e574 )
athlete: apply threshold recommendations to profile on completion (410cc0b )
backfill: add inline Strava stream backfill CLI with rate limiting. (9a9e2e7 )
chat: add false missing-reply guard to skill router (6e2cc16 )
chat: add generation warnings for sport settings (fd8851c )
components: add density heatmap and map renderers to analytics widgets (e27cb81 )
components: add public presence settings and branded components (aa4d758 )
components: enhance analytics rendering with crosshair sync and area gradients (2b36509 )
components: implement hydration quick add and integration in dashboard cards (29fab51 )
components: update strength workout editor and view components (0e77a33 )
core: add strength exercise library and block-based workout persistence (52e6639 )
core: enhance workout duration and distance estimation with intensity factor improvements (727a760 )
core: implement user feature flags and compact workout generator infrastructure (f570504 )
db: add aliases to strength exercise library items (0814194 )
db: add coach-athlete invitation system models and repository (eaec635 )
db: add public presence and coaching request models (aef8afa )
frontend: add analytics bus and expand workout explorer presets (6d8e512 )
frontend: add strength workout visualizations and recommendation guardrail hints (af3d476 )
implement advanced segment analysis and peak power tracking in workout map (033d247 )
integrations: add rouvy workout publishing support (7865399 )
integrations: extract body battery as recovery score from garmin wellness data (314777c )
intervals: support wellness webhook ingestion (04bfe0f )
layout: add charts menu item to navigation (46781a4 )
mcp: add remote MCP server with OAuth resource binding (788c8fb )
nutrition: add customizable hydration quick-add volumes (5569f77 )
nutrition: implement weekly plan management and grocery list (07e939a )
oauth: add refresh token expiry to response (470a6af )
pages: add chart pinning to workout explorer (ed3a015 )
pages: add sport profile overlap alerts and generation explanation UI (7d92b8b )
pages: enhance coaching athlete management with invitation tools (9b2524e )
pages: integrate strength exercise library into layouts and pages (34a74fd )
pages: refactor analytics browse page with mobile drawer and selector component (4268e6b )
pages: update public and admin pages for enhanced coaching experience (baf9aea )
pages: update strength exercise library UI and athlete relative time format (46aaefa )
pages: update workout explorer with map support and segment analytics (3020fe3 )
pages: upgrade workout explorer with multi-stream support and zoom sync (026aad1 )
plans: trigger block generation on activation and clean up draft plans (936a628 )
profile: add visibility control and public profile preview to settings (207b03f )
profile: enhance goal suggestion and review UI (f04367d )
profile: enhance pace zone settings functionality (aad4665 )
profile: implement pagination and improved source picking for body measurements (3840d4c )
profile: improve athlete profile print layout (21ddec2 )
server: implement public presence utilities and coaching repository methods (eb4d1c0 )
streams: migrate WorkoutStream to native array storage (WorkoutStreamV2) (74487ea )
trigger: enhance strength workout generation with library defaults and validation (f6dc83b )
trigger: implement compact draft generator mode for structured workouts (36ff374 )
trigger: implement improved duration estimation and target fraction normalization (3c08690 )
trigger: link strava workouts to matching planned workouts during ingestion (d001b25 )
utils: add planned workout linking utility and tests (608bc12 )
utils: implement strength exercise matching and alias normalization (c218c61 )
wellness: expand wellness patch api and improve garmin readiness extraction (4ce3bed )
workout-parser: add ramp property to workout steps (b49cdc5 )
workout: add normalization for structured workouts (8fd41db )
workout: add swim-specific parameters and metrics (a723de3 )
workouts: add canonical structure contract (e9fe69b )
workouts: add strength exercise persistence and editor support (c136c21 )
workouts: add target policy section to planned workout (8fe9d55 )
workouts: implement ai-powered workout structure adjustment for library (4cda486 )
workouts: persist and sync canonical structures (037519c )
workouts: render canonical targets and conflicts (90e1154 )
workouts: track structure generation runs and guard publishing (06a7677 )
yazio: add record merging and improve hydration ingestion (5bce83a )
Performance Improvements
add context profiles, zone trimming, and renderable validation (231e4ec )
slim structure generation prompts and AI retries (02579a3 )
You can’t perform that action at this time.