# Changelog ## [1.8.0](https://github.com/gerfru/PulseBase/compare/v1.7.0...v1.8.0) (2026-09-28) ### Features * persist daily insights jobs ([#341](https://github.com/gerfru/PulseBase/issues/341)) ([218e10a](https://github.com/gerfru/PulseBase/commit/218e10a0ed22f4daca3ccfb1192fe14d4bc8d2f0)) * schedule daily insights at 05:00 Europe/Vienna ([#340](https://github.com/gerfru/PulseBase/issues/340)) ([fb813d8](https://github.com/gerfru/PulseBase/commit/fb813d8ae5aadc6a72d3e6efd86e46a65e9abbfc)) * unify insights into a single report ([#342](https://github.com/gerfru/PulseBase/issues/342)) ([1d596d6](https://github.com/gerfru/PulseBase/commit/1d596d68c00925c12d5039670468a8b7a7606c52)) ### Bug Fixes * harden Garmin linking and full sync ([#331](https://github.com/gerfru/PulseBase/issues/331)) ([0d0015d](https://github.com/gerfru/PulseBase/commit/0d0015d0feeb181351e7fb7a777c07aa67d258f0)) ## [1.7.0](https://github.com/gerfru/PulseBase/compare/v1.6.2...v1.7.0) (2026-08-28) ### Features * add feature-flagged ml event consumer ([#288](https://github.com/gerfru/PulseBase/issues/288)) ([5809688](https://github.com/gerfru/PulseBase/commit/58096883ac07418f3607110c04ef65a473b44a3b)) * add immutable release topology ([#306](https://github.com/gerfru/PulseBase/issues/306)) ([192fa56](https://github.com/gerfru/PulseBase/commit/192fa56d6e454da14ed04f43df6fdc6783faaf2d)) * add ml event listener recovery ([#289](https://github.com/gerfru/PulseBase/issues/289)) ([2e2914a](https://github.com/gerfru/PulseBase/commit/2e2914af71a6cd92bfe5eff3e564a195574f25ee)) * add provider circuit breakers ([#295](https://github.com/gerfru/PulseBase/issues/295)) ([794148e](https://github.com/gerfru/PulseBase/commit/794148ecdb53f9f7c84a5ad9c57348f30d6d2699)) * add sync event queue core ([#301](https://github.com/gerfru/PulseBase/issues/301)) ([b85135b](https://github.com/gerfru/PulseBase/commit/b85135ba73b27cbca1d50a242097158eeeceeb02)) * complete ML event consumer cutover ([#303](https://github.com/gerfru/PulseBase/issues/303)) ([5288ae3](https://github.com/gerfru/PulseBase/commit/5288ae3f3d48c023afa42d8d312b4c94aa1e4455)) * enable sync event consumer ([#302](https://github.com/gerfru/PulseBase/issues/302)) ([4ec3c88](https://github.com/gerfru/PulseBase/commit/4ec3c88dfc0bfdf7f7cc5a07847bad647b8f1b49)) * implement architecture review improvements ([#286](https://github.com/gerfru/PulseBase/issues/286)) ([a8f3ff7](https://github.com/gerfru/PulseBase/commit/a8f3ff7d21a0f5944b48de3f6dee2871f991a91b)) * make service event producers atomic ([#300](https://github.com/gerfru/PulseBase/issues/300)) ([f059a27](https://github.com/gerfru/PulseBase/commit/f059a271f2537d4f68fcdcfb4c7188b3d190c21f)) * prevent duplicate ml event processing ([#290](https://github.com/gerfru/PulseBase/issues/290)) ([f35fec5](https://github.com/gerfru/PulseBase/commit/f35fec545674f26d318acf8f9de4ab43c6bf3a04)) ## [1.6.2](https://github.com/gerfru/PulseBase/compare/v1.6.1...v1.6.2) (2026-08-18) ### Bug Fixes * explicitly delete both before the pip install. ([8777920](https://github.com/gerfru/PulseBase/commit/87779204d7d6f9339764029a0ccdc5df5f612647)) * **ml:** cast Decimal DB value to float in sleep consistency calculation ([#278](https://github.com/gerfru/PulseBase/issues/278)) ([92e89d7](https://github.com/gerfru/PulseBase/commit/92e89d71ee175398a339c7b721a158be212a69c7)) * **security:** add .trivyignore for base-image Python pkgs not in app venv ([#277](https://github.com/gerfru/PulseBase/issues/277)) ([9663e19](https://github.com/gerfru/PulseBase/commit/9663e19794fb8aee1a6c33d8b60aa50e12d81f94)) * **security:** remove stale ensurepip bundle and dist-info before pip upgrade ([#276](https://github.com/gerfru/PulseBase/issues/276)) ([8777920](https://github.com/gerfru/PulseBase/commit/87779204d7d6f9339764029a0ccdc5df5f612647)) * **security:** upgrade setuptools and msgpack to fix Trivy HIGH vulns ([#273](https://github.com/gerfru/PulseBase/issues/273)) ([6ea8bbc](https://github.com/gerfru/PulseBase/commit/6ea8bbc321f94db1fbe2d9bd3cf92ba70b59dfaf)) ## [1.6.1](https://github.com/gerfru/PulseBase/compare/v1.6.0...v1.6.1) (2026-07-09) ### Bug Fixes * **ci:** unblock PR queue — suppress gosu CVE-2026-27145 + pydantic-settings 2.14.2 ([#249](https://github.com/gerfru/PulseBase/issues/249)) ([dea2a1b](https://github.com/gerfru/PulseBase/commit/dea2a1baf4eed59fa9875f86eef7019f256f8de0)) ## [1.6.0](https://github.com/gerfru/PulseBase/compare/v1.5.0...v1.6.0) (2026-06-17) ### Features * **insights:** /insights page + JSON endpoints (P6) ([#232](https://github.com/gerfru/PulseBase/issues/232)) ([cf88d72](https://github.com/gerfru/PulseBase/commit/cf88d726d11ea1d31e841bc7050c6a6afdea2c17)) * **insights:** Feinschliff — Niveau-Kontext, Labels, Markdown ([#235](https://github.com/gerfru/PulseBase/issues/235)) ([90134f0](https://github.com/gerfru/PulseBase/commit/90134f0d57135969413c5390eac9a2d9183c0d54)) * **insights:** persistence + cache-aware generation (P5) ([#230](https://github.com/gerfru/PulseBase/issues/230)) ([5d25c47](https://github.com/gerfru/PulseBase/commit/5d25c477ffba1706abcab409af94eff4847535dc)) * **insights:** rolling 7-day window + lazy per-segment generation ([#236](https://github.com/gerfru/PulseBase/issues/236)) ([c857314](https://github.com/gerfru/PulseBase/commit/c857314531dbf54008172710cfe2442c455f3ac6)) * **insights:** wire real week-bounded metrics + reuse evidence catalog ([#234](https://github.com/gerfru/PulseBase/issues/234)) ([9875ba7](https://github.com/gerfru/PulseBase/commit/9875ba74673dde9a8359efeb5166cf0a2b3c2ccf)) ### Bug Fixes * **insights:** /insights live-fixes (Chart-Bug, Disclaimer, async generation) ([#233](https://github.com/gerfru/PulseBase/issues/233)) ([816251c](https://github.com/gerfru/PulseBase/commit/816251c2d8cf4f1f23b6a78d43d952d7f5d0cc77)) ## [1.5.0](https://github.com/gerfru/PulseBase/compare/v1.4.0...v1.5.0) (2026-06-17) ### Features * **insights:** local Ollama provider + generation orchestration (P4) ([#228](https://github.com/gerfru/PulseBase/issues/228)) ([51ea328](https://github.com/gerfru/PulseBase/commit/51ea3287cc84887e4bd8e96e6159906ae9378512)) ## [1.4.0](https://github.com/gerfru/PulseBase/compare/v1.3.0...v1.4.0) (2026-06-16) ### Features * **insights:** fail-secure post-check gate + fallback (P3) ([#225](https://github.com/gerfru/PulseBase/issues/225)) ([d9d7e9e](https://github.com/gerfru/PulseBase/commit/d9d7e9e9ea94809bc418e354bd9f8a2c8dcd4d93)) * **insights:** KI-Wochen-Insights — design docs + Schicht-1 (P0–P2) ([#223](https://github.com/gerfru/PulseBase/issues/223)) ([300fdf1](https://github.com/gerfru/PulseBase/commit/300fdf11950cd4eae3513fc0691fa4fca01f5b4b)) ## 1.3.0 (2026-06-14) ### Features * account deletion, data export, DSGVO consent (Art. 9/17/20) ([61f89e0](https://github.com/gerfru/PulseBase/commit/61f89e0e73739a18c87e8035199a86d3a5eadeee)) * account lockout after 5 failed logins (OWASP-compliant) ([1fe0c5f](https://github.com/gerfru/PulseBase/commit/1fe0c5f0fcb9932e3ad63b5ba41bf319b37cbae8)) * activity page glassmorphism, light mode fix, pre-commit + CI hardening ([a5cc16c](https://github.com/gerfru/PulseBase/commit/a5cc16c54fc4b9aa3488e9b1850b8a88b41a17dc)) * **activity:** synchronized chart crosshair, map layer selector, VO₂max sub-page ([#204](https://github.com/gerfru/PulseBase/issues/204)) ([e647409](https://github.com/gerfru/PulseBase/commit/e647409503cb7629a8b99f389a4c495c7d5c63ad)) * add abbreviation/unit explanations to RPE, Trainingswirkung and metric KPIs ([23ff299](https://github.com/gerfru/PulseBase/commit/23ff299b05af8d25f46e361b33a0b11d5c4bcb6d)) * add activity detail page with GPS map and training effect ([c585a34](https://github.com/gerfru/PulseBase/commit/c585a3440ca96726e7417c7303072daaef301b77)) * add central settings page with connection management ([c7ad182](https://github.com/gerfru/PulseBase/commit/c7ad182e1ded9e55dc075a2ba9d1475e53a49d87)) * add energy score backfill script + make target ([833b6be](https://github.com/gerfru/PulseBase/commit/833b6be7c2e7f8d1f3f63c41f64b814675210e9c)) * add epilepsy seizure diary (V15) ([8eeaed9](https://github.com/gerfru/PulseBase/commit/8eeaed912fb959505505f9bdd1297d7e7cc10cfa)) * add epilepsy seizure diary (V15) ([034fa5d](https://github.com/gerfru/PulseBase/commit/034fa5d6d3e9fdb4644dea08b48876d93d4e6af0)) * add intensity minutes, training status, fix HRV trend display ([401d103](https://github.com/gerfru/PulseBase/commit/401d10358a8e4d4a6dff8a69418d9449ca4fd950)) * add intensity minutes, training status, fix HRV trend display ([859f3ca](https://github.com/gerfru/PulseBase/commit/859f3caf117dc47f497e665a6dfedcdfb34e8870)) * add manual sync button with last-sync timestamp and error toasts ([18b8b67](https://github.com/gerfru/PulseBase/commit/18b8b6765a68488324e18a3292a82edd6ab68286)) * add new ML metrics for battery pattern and correlations ([30164eb](https://github.com/gerfru/PulseBase/commit/30164ebcc0fecd5765cbc958a228c9c4156ec2fc)) * add password reset request test and update password query test ([a1687e6](https://github.com/gerfru/PulseBase/commit/a1687e617bb7feabf7c04400f48682e4861456b1)) * add plain-language explanations to all ML detail pages ([8083992](https://github.com/gerfru/PulseBase/commit/8083992239a7255cf8f4dcc4a7e78901d367e8e0)) * add readiness score info tooltip ([19a259d](https://github.com/gerfru/PulseBase/commit/19a259d5f0a1a9fe6a8c6015fe1855ff84a39de7)) * add RF confidence intervals and API route tests ([642bb81](https://github.com/gerfru/PulseBase/commit/642bb8127edb69932e934096005393cd4e39db4e)) * add running economy metrics (V13) ([1f77323](https://github.com/gerfru/PulseBase/commit/1f77323e4529c0a838c50f0b44379d0c19033f0a)) * add science explanations and sources to all metric detail pages ([9f92f50](https://github.com/gerfru/PulseBase/commit/9f92f50a16a2d04bf1872895a92bd555462c7d87)) * add Sentry DSN configuration for error tracking in ml-service a… ([df7b646](https://github.com/gerfru/PulseBase/commit/df7b646628008c5fffa5d476a4697f80f9882328)) * add Sentry DSN configuration for error tracking in ml-service and sync-service ([4fb0a63](https://github.com/gerfru/PulseBase/commit/4fb0a6345eb7e77127c7f25abb1b44640f3a3781)) * add tests and configuration for sync-service activities and sleep mapping ([104ddb8](https://github.com/gerfru/PulseBase/commit/104ddb82476bb29e2e842b891c0b573f6e9aca8e)) * add weekly volume aggregation and readiness score endpoints to API ([af63969](https://github.com/gerfru/PulseBase/commit/af639699eb0a1603865814a0c42b11da18f4132b)) * aktualisiere Schlafberechnung und entferne Qualitätsfaktor für Tiefschlaf ([898343d](https://github.com/gerfru/PulseBase/commit/898343d6e2e12d9481220fbf06f7b23906a02a2c)) * aktualisiere Trainingsübersicht und verbessere Datenabfrage für Trainingslast ([aed6f38](https://github.com/gerfru/PulseBase/commit/aed6f38e8825b1c123d11655b71d69317e817b4a)) * **api:** einheitliche Fehlerform via globale Exception-Handler ([#170](https://github.com/gerfru/PulseBase/issues/170)) ([ce4b4b0](https://github.com/gerfru/PulseBase/commit/ce4b4b03b662439b98a7142d65676cb9e366165f)) * audit logging + remove garmin-tokens volume ([b074efd](https://github.com/gerfru/PulseBase/commit/b074efdfd9e94a99dd2a051ed4f734c861b891f6)) * auto-backfill energy history on ML run when gaps exist ([4d401d4](https://github.com/gerfru/PulseBase/commit/4d401d4a90eba6d3036a6e928fcec5281e9c62b6)) * body battery pattern analysis (k-means clustering) ([bcbed81](https://github.com/gerfru/PulseBase/commit/bcbed81ff553ff40bdf124a6843d3279c40a2098)) * body battery pattern analysis (k-means clustering) ([92011ba](https://github.com/gerfru/PulseBase/commit/92011ba9107660d6ed833cba2a07ffa974606f7d)) * CI/CD und Sicherheitsverbesserungen — Trivy Artefakte hochladen, CSP Nonce implementieren, Branch-Namen aktualisieren ([cdbf286](https://github.com/gerfru/PulseBase/commit/cdbf286c4643797a30d7cef6a3266fdf6aec62fb)) * CI/CD und Sicherheitsverbesserungen — Trivy Artefakte hochladen… ([bfc4d1e](https://github.com/gerfru/PulseBase/commit/bfc4d1e628c8c0e14ba045de701b7357fd2de731)) * **ci:** add JS quality gates — Biome lint, Vitest unit tests, Playwright E2E ([580b3c5](https://github.com/gerfru/PulseBase/commit/580b3c5c5eeb4cc8506ac3a00ae1cdfaea3e3708)) * consolidate dashboard metrics into hero + RPE rating on activity page ([0a362dd](https://github.com/gerfru/PulseBase/commit/0a362dde59fb58e543a5a06c3ca9364a787ece09)) * custom metrics replace Garmin black-box scores ([6eb533d](https://github.com/gerfru/PulseBase/commit/6eb533d243a52f6ef97ff700ebba5e0c14de5427)) * custom metrics replace Garmin black-box scores (#roadmap-1-6) ([ad5db2a](https://github.com/gerfru/PulseBase/commit/ad5db2a9619dda0ab7579fc6ae14795d6fc8bf78)) * **dashboard:** update styling for help button and sync action for improved UI ([dfca5bf](https://github.com/gerfru/PulseBase/commit/dfca5bfde80c91c0dc1aa01cf5516309e4a59f48)) * **db:** per-service DB roles with least privilege (ADR-0001) ([a8b6b1f](https://github.com/gerfru/PulseBase/commit/a8b6b1f0812fd0387d22ee07fcd4b2007419715d)) * **db:** per-service DB roles with least privilege (ADR-0001) ([e9d5738](https://github.com/gerfru/PulseBase/commit/e9d5738c20788a59c451c18685e7c3c9b6ee13d3)) * **e2e:** implement end-to-end testing workflow and update test configurations ([e0f0db1](https://github.com/gerfru/PulseBase/commit/e0f0db102ca57b8b3ad2e635188000a13778469b)) * email-verification at registration ([2c18d6d](https://github.com/gerfru/PulseBase/commit/2c18d6d709720ac27367a8b6a9e8614fe9f76479)) * encrypt Garmin/LibreLink tokens at rest in DB ([a06811e](https://github.com/gerfru/PulseBase/commit/a06811ed3e82736194706cadeca72078ebe71482)) * enhance backfill logic to include additional custom metrics for energy scores ([fd2b577](https://github.com/gerfru/PulseBase/commit/fd2b577c0bb6d84b8bc60fa45c2324d9e5caddb4)) * enhance body battery model with REM sleep data and improve backfill processes ([2f8fdb6](https://github.com/gerfru/PulseBase/commit/2f8fdb66376bacc62031c5f8b3e5c984947a5a3b)) * Enhance evidence catalog with EN 62366-inspired fields and update dashboard ([edc6519](https://github.com/gerfru/PulseBase/commit/edc65198e1610c5d2ff721152b36c81a546aff34)) * Enhance metrics rendering and improve sync-service shutdown handling ([8cc1cb4](https://github.com/gerfru/PulseBase/commit/8cc1cb4926679bc9211ec0988c2d4fcc1dec3b4a)) * erweitere Schlafmetriken um Einschlaf- und Aufwachzeiten sowie Diagramme für Schlafrhythmus ([8204484](https://github.com/gerfru/PulseBase/commit/82044843a0eb887d066154e515e2a98697a67589)) * erweitere Wochenparameter auf 56 und verbessere Body Battery-Diagramm-Logik ([7fe25e1](https://github.com/gerfru/PulseBase/commit/7fe25e140f37c8e42c957b6994481f08521c678b)) * EU compliance — consent_terms, consent_age, accessibility statement ([f52609e](https://github.com/gerfru/PulseBase/commit/f52609e629952117a01b28281bec17e70a6a2986)) * expand seizure risk indicator with HRV, body battery, resting HR and vigorous training flags ([cb9703d](https://github.com/gerfru/PulseBase/commit/cb9703d3a5ccdf04fa9bfded38a4d7a2dd510771)) * extend ML models + add scientific evidence transparency ([f5a50ac](https://github.com/gerfru/PulseBase/commit/f5a50acc9452fa98f28a00eb72d391f4f11af0f8)) * Extrahiere Token-Logik in auth_tokens.py und verbessere Sicherh… ([5c7eb67](https://github.com/gerfru/PulseBase/commit/5c7eb675420e47f749fb27e677bcb8148bec24cb)) * Extrahiere Token-Logik in auth_tokens.py und verbessere Sicherheitsüberprüfungen in auth.py und epilepsy.js ([0775ce7](https://github.com/gerfru/PulseBase/commit/0775ce74111a0c99a60ee92a04d7b83d2640dbe6)) * glassmorphism dashboard redesign and fix training status sync ([71e3d9b](https://github.com/gerfru/PulseBase/commit/71e3d9b8014cdbd2eb7fe4c3c67291b12b3580a7)) * **hardening:** app-rules compliance — structlog, caching, CSP, fonts, Docker ([96fb992](https://github.com/gerfru/PulseBase/commit/96fb9923618cac05879740dad32da97e4d28aac8)) * **help:** enhance help articles with improved search functionality and layout adjustments; add metrics overview script ([fbbfd96](https://github.com/gerfru/PulseBase/commit/fbbfd9660c6032e6a3de8db386752eb4e8272e7e)) * hero card permanent above tabs + fix stress label + 100% coverage ([ccaf546](https://github.com/gerfru/PulseBase/commit/ccaf546156ac0153362fdc600ac7e7ece9eb343e)) * hero card redesign + chart time navigation ([49aaab0](https://github.com/gerfru/PulseBase/commit/49aaab0939c813ad94283562f2b0ce57da1320e1)) * implement 4 quick-win ML metrics (ACWR, Training Monotony, Sleep Consistency, SpO2 Trend) ([b252bd2](https://github.com/gerfru/PulseBase/commit/b252bd2d7f4b502df837445479b15c1bd149e746)) * implement ACME/Let's Encrypt support for TLS certificates in Traefik ([adc9c7b](https://github.com/gerfru/PulseBase/commit/adc9c7ba589c8da16f97453205f7468ad19a1cc0)) * implement database structure and inference models for health metrics ([625149a](https://github.com/gerfru/PulseBase/commit/625149adb07d6b4f3b3ec04ddbaf6e33f74b66bc)) * implement epilepsy mode update and enhance risk indicator presentation ([c7bb1db](https://github.com/gerfru/PulseBase/commit/c7bb1db5a0bafe43c28fd87c285479de97ec7422)) * implement historical backfill for new ML metrics (body battery, stress, running economy, hrv recovery) ([7a513d2](https://github.com/gerfru/PulseBase/commit/7a513d22ccd6301ef916b48b0ff0932e44459688)) * implement password reset flow and update environment file structure ([6fad099](https://github.com/gerfru/PulseBase/commit/6fad0994b2fc86c53ec1680b494c4060a9d32270)) * implement training load calculation and update sync settings ([c86a99d](https://github.com/gerfru/PulseBase/commit/c86a99d967074bbffbbb8fd09de82021499c5ef5)) * implement V17 quick-win metrics (body battery, stress score, running economy, hrv recovery) + spo2 settings ([c25d7f0](https://github.com/gerfru/PulseBase/commit/c25d7f0a8f524a92b7f323957841ebf0d70287f3)) * implement weekly statistics and readiness score endpoints, update activity and dashboard templates ([d63229d](https://github.com/gerfru/PulseBase/commit/d63229dc16f15d0d88713e95a2bea0410f40e4a4)) * initial PulseBase commit ([2a9fb72](https://github.com/gerfru/PulseBase/commit/2a9fb72d0d73fb836a80e93733a0eb8546aec980)) * integrate LibreLinkUp glucose data from Libre 3 CGM sensor ([54ad402](https://github.com/gerfru/PulseBase/commit/54ad402609c06c6017fb1839219ca2063e3324d9)) * Konfidenzintervall auf der Readiness-Seite anzeigen ([cb95f64](https://github.com/gerfru/PulseBase/commit/cb95f64ebc32c5edf23745857be37fa580529b34)) * **metrics:** enhance metrics with summaries and recommendations ([f13399f](https://github.com/gerfru/PulseBase/commit/f13399ff0526f623c8f82ca307e14d7a58c31505)) * **metrics:** update readiness metrics to include training date and adjust training sample count display ([cdccc8c](https://github.com/gerfru/PulseBase/commit/cdccc8c14cfdc65ee42d61f1644ee5d35601f32b)) * ML Analytics Phase 1 — ml-service infrastructure ([5188d53](https://github.com/gerfru/PulseBase/commit/5188d533c3ba51b7dc13be3045c2ace7ea7c8c42)) * ML Analytics Phase 1 — ml-service infrastructure ([90367c6](https://github.com/gerfru/PulseBase/commit/90367c60bba51c8c4fa39b4fad3d8ecf5f0e6437)) * ML Einblicke Widget im Dashboard ([c8aeed6](https://github.com/gerfru/PulseBase/commit/c8aeed65f71a168043fb72552c333effa3d03c91)) * ML Einblicke Widget im Dashboard (PR B) ([cd235cc](https://github.com/gerfru/PulseBase/commit/cd235ccbc3c0a1fabe5b4f0e9f121d2870fb6bd8)) * mobile-first UI redesign and activity date-range filter ([90c56d0](https://github.com/gerfru/PulseBase/commit/90c56d023463a14d4ca11527edd8f0b910bc88f6)) * **ops:** verschlüsselter Backup-Container (age) + TimescaleDB-korrektes Restore (Wave 16 PR-B) ([#171](https://github.com/gerfru/PulseBase/issues/171)) ([757d7db](https://github.com/gerfru/PulseBase/commit/757d7dba756689037db6dc511642f7df742042dc)) * password-reset flow + per-service secrets isolation ([07cd943](https://github.com/gerfru/PulseBase/commit/07cd9431f292e90b9512ff7a9b8f716ad39eb7b0)) * Phase 1 chart polish — gradients, tick limits, pointRadius, touch UX ([6a86419](https://github.com/gerfru/PulseBase/commit/6a864194e017706c560022f9d38a0fa8621782c3)) * Phase 2 score-cards & surfaces — surface-elevated, scoreLabel, KPI delta ([90197d8](https://github.com/gerfru/PulseBase/commit/90197d807c66d12ed21c3906f854a291f25779a6)) * Phase 3 inline sparklines — 14-Tage-Trend in Hero-Tiles ([0de9f80](https://github.com/gerfru/PulseBase/commit/0de9f80a0092884f074cbe1252972d2cbe14a85e)) * Phase 4 navigation — bottom-nav, tab merge, /metrics overview ([e7fd3e8](https://github.com/gerfru/PulseBase/commit/e7fd3e83317495ecac021a9595d6e91304e647f0)) * **profile:** add weight_kg field for VO₂max and W/kg calculations ([#202](https://github.com/gerfru/PulseBase/issues/202)) ([052a4f8](https://github.com/gerfru/PulseBase/commit/052a4f8bec0f079953f71593c0ed0bb94897e173)) * readiness score info tooltip ([e059eb4](https://github.com/gerfru/PulseBase/commit/e059eb42c32e6e17f82869a869ff826636686788)) * redesign hero card + merge readiness sub-pages into combined view ([d42a689](https://github.com/gerfru/PulseBase/commit/d42a6891a8ec2ebad7a30462a59f77d601e8118a)) * redesign hero card + recalibrate energy metrics ([c7d815c](https://github.com/gerfru/PulseBase/commit/c7d815c425a66ff5a0afe31102868a0186bcd2ba)) * redesign UI — opaque cards, type scale, chart palette ([a905f6a](https://github.com/gerfru/PulseBase/commit/a905f6a5fb84cd3c9c031057a307e10cc588eceb)) * **refactor:** implement structured logging and Dockerfile improvements across services ([b9f582a](https://github.com/gerfru/PulseBase/commit/b9f582a096d1601a2ff7817d9a58445ccec53d24)) * replace dashboard hero with bento box layout and add metric detail pages ([745052a](https://github.com/gerfru/PulseBase/commit/745052afc91f6a9dea8ac9a2ea7ab36d3202ab4c)) * replace Garmin-based readiness with own energy metrics + add sleep quality factor to cognitive score ([dc33773](https://github.com/gerfru/PulseBase/commit/dc3377384803aed0ba820e52d232ce7a79d72ad0)) * **report:** add architecture review report for PulseBase ([e7b5701](https://github.com/gerfru/PulseBase/commit/e7b5701a314c7544b09f85075862cd66cd2df8bd)) * restore 4-tab layout (Heute/Training/Verlauf/Erholung) ([01a5fc4](https://github.com/gerfru/PulseBase/commit/01a5fc492c00f77c19db902bbcf094f50543d171)) * RF confidence intervals + API route tests ([45bbc8f](https://github.com/gerfru/PulseBase/commit/45bbc8f6863eed736e4e477ea31c2b7045fe8101)) * RF median imputation + extended correlations (sleep/BB → resting HR) ([e61d196](https://github.com/gerfru/PulseBase/commit/e61d196e76ba757ea4114fef5a4a76d4bf8adecc)) * RF median imputation + extended correlations (sleep/BB → resting HR) ([40dc257](https://github.com/gerfru/PulseBase/commit/40dc257ec40ae12011a9b7b8435963787474139d)) * security hardening, network isolation, Caddy integration ([c9899f2](https://github.com/gerfru/PulseBase/commit/c9899f2576464e77271da6a62c71516c13766054)) * separate ML detail pages with feature importance ([f49ceb9](https://github.com/gerfru/PulseBase/commit/f49ceb99545cb53ba3d6f1e08602e0056f0f93cc)) * show confidence interval on readiness ML page ([e44afaa](https://github.com/gerfru/PulseBase/commit/e44afaa915fd3734f1896d474ef6fcc2206880c1)) * **style:** Motion-Fundament (reduced-motion + Tokens) + Wow-Polish ([#162](https://github.com/gerfru/PulseBase/issues/162)) ([5599938](https://github.com/gerfru/PulseBase/commit/5599938ab6cd626003a7024e68894b4efa136a9a)) * **style:** Skeleton-Screens für Hero + Aktivitäten (kein Layout-Shift) ([#163](https://github.com/gerfru/PulseBase/issues/163)) ([1215a4c](https://github.com/gerfru/PulseBase/commit/1215a4c69293a33b74a1d9e1b8ed572843ab664a)) * **sync-service:** add health server and improve fernet key handling ([f2c5144](https://github.com/gerfru/PulseBase/commit/f2c5144a74cad15813879b47582abe7e07d3c120)) * **sync-service:** add health server and improve fernet key handling ([ddf1b16](https://github.com/gerfru/PulseBase/commit/ddf1b16b1c0b3f4d8908a4fe0113f68b8c2f2068)) * Tailwind CSS migration + Slate/Emerald redesign + sport type fix ([#45](https://github.com/gerfru/PulseBase/issues/45)) ([fb23449](https://github.com/gerfru/PulseBase/commit/fb234499991a76b06c5098f8c814a5d5f33e6735)) * **tests:** Wave 6 — Tests & Zuverlässigkeit (H-04, H-05, M-14, M-30, M-31, L-12, L-22, L-23) ([ac4d679](https://github.com/gerfru/PulseBase/commit/ac4d679d0d8e0eefe9a1c021ff0f8e05ed3c9996)) * **tests:** Wave 6 — Tests & Zuverlässigkeit (H-04, H-05, M-14, M-30… ([947e78a](https://github.com/gerfru/PulseBase/commit/947e78afd4e062ff52b7bcff6ae6886c41027e3b)) * trigger ML inference after sync + add training load as readiness feature ([0146622](https://github.com/gerfru/PulseBase/commit/0146622af4c1f5f812f1e2542ad008571ea5b52a)) * trigger ML inference after sync + training load as readiness feature ([e027f8b](https://github.com/gerfru/PulseBase/commit/e027f8b139451aa6a368e075c5d9916b29e52c6d)) * **ui:** clean up UI components and remove bottom navigation; enhance dashboard layout and ML insights display ([2689948](https://github.com/gerfru/PulseBase/commit/26899481dd2b20dd5a4974d0e2ae88dc4786b8b1)) * **ui:** Dashboard ↔ Metriken — klickbare Charts + kuratierte „Deine Metriken"-Leiste + Verwandte-Metriken-Block ([#179](https://github.com/gerfru/PulseBase/issues/179)) ([1171fc3](https://github.com/gerfru/PulseBase/commit/1171fc35f45c66c1ec45a296a1efa15e0bad16b1)) * **ui:** Dashboard-Kopfbereich neu — sticky Top-Bar, Segmented Zeitraum, Sync-Pill ([#176](https://github.com/gerfru/PulseBase/issues/176)) ([c9e02a9](https://github.com/gerfru/PulseBase/commit/c9e02a99037ee503a48f62e77c3aac96c4c63b4e)) * **ui:** hero card redesign + ML metrics consolidation ([0a46c1f](https://github.com/gerfru/PulseBase/commit/0a46c1f19bf8c8998f8cf4d9d5b5f63e1b442c99)) * **ui:** KI-Transparenz im Dashboard (UX-Review PR2) ([280c88b](https://github.com/gerfru/PulseBase/commit/280c88bdde6861ca3f1a7b8beaebbf628291ada7)) * update CI configuration, enhance security scanning, and improve error handling in database operations ([1b04e8a](https://github.com/gerfru/PulseBase/commit/1b04e8a2e28296a488a43a6c95eaf62c160155ac)) * update Dockerfiles to include apt-get update and upgrade ([8d3fde4](https://github.com/gerfru/PulseBase/commit/8d3fde4ae303f5e72e4e1a48f388b3ce446e0293)) * Update documentation for testing, security, and architecture improvements ([2ba45c7](https://github.com/gerfru/PulseBase/commit/2ba45c7f8a4603db470c4159e033a8acfe408a6c)) * update monitoring setup and external service configurations ([ac6f9b5](https://github.com/gerfru/PulseBase/commit/ac6f9b519624662c46c47e4a8989d666fdff849c)) * update security policy and documentation for public deployment ([5abd67a](https://github.com/gerfru/PulseBase/commit/5abd67ae2c89300ac0ed1eabe5b401ed1ba20c04)) * update sleep score metric routing and enhance metric descriptions ([4c53b73](https://github.com/gerfru/PulseBase/commit/4c53b737e27e31dd21898be9e37102caf035f1fb)) * **ux:** Item-Level-ML-Feedback (👍/👎) auf KI-Tiles — UX [D3-1] ([825a390](https://github.com/gerfru/PulseBase/commit/825a390d761f3892a323c3e608ed22ebb9108e9e)) * **ux:** PR3 — Anfälle editierbar, Bestätigungsdialoge, Onboarding-Hinweis ([4078f1d](https://github.com/gerfru/PulseBase/commit/4078f1d2e9c82d62b5af59f7ac9d5198de11f979)) * **ux:** PR3 — Anfälle editierbar, Bestätigungsdialoge, Onboarding-Hinweis ([5815fd6](https://github.com/gerfru/PulseBase/commit/5815fd6aac76990d7e868ee05a61a004129282dc)) * **ux:** PR4 — ML-Feedback (👍/👎) + Rest-Lows [A-6]/[D4-2] ([685f5f1](https://github.com/gerfru/PulseBase/commit/685f5f157edbf1a513de2819b1ec687fc30ae53d)) * **ux:** rename stress score to Autonomer Stressindex, consolidate Body Battery + Readiness ([#205](https://github.com/gerfru/PulseBase/issues/205)) ([be16ce5](https://github.com/gerfru/PulseBase/commit/be16ce5835aa0e6c18f69faf0f31510a23fe8c28)) * **ux:** Rohdaten-Hinweis bei ML-Leerzuständen — UX [D4-2] ([39c7e35](https://github.com/gerfru/PulseBase/commit/39c7e357ede2e3be713f01fbba073e1a4d2e453b)) * Verbesserte Protokollierung und Fehlerverarbeitung in allen Die… ([0bb883c](https://github.com/gerfru/PulseBase/commit/0bb883cac2781fb07b57524e0e27c1743f6756ff)) * Verbesserte Protokollierung und Fehlerverarbeitung in allen Diensten ([6624ea1](https://github.com/gerfru/PulseBase/commit/6624ea14cca6d4a32cabbc8bacd6d75239d98764)) * Wave 10 R1 — Security Quick Wins + 100% Coverage (alle 3 Services) ([b889cda](https://github.com/gerfru/PulseBase/commit/b889cdae0d8c82d10f775bd2d72af4cbb2a70970)) * Wave 10 R1 — Security Quick Wins + 100% Coverage (alle 3 Services) ([870ce4f](https://github.com/gerfru/PulseBase/commit/870ce4f6816f045de7aa8ff72ed039c747827153)) * Wave 10 R3 — Architektur & Betrieb ([c83c544](https://github.com/gerfru/PulseBase/commit/c83c5443ef9dcadf51030cbf9874788206fd9b6f)) * Wave 10 R3 — Architektur & Betrieb (M-45, M-46, M-48, M-49, L-40, L-43) ([effb1bc](https://github.com/gerfru/PulseBase/commit/effb1bc7383741e51a14228384e0b66d91431738)) * Wave 10 R4 — Tests (L-47–50, M-53, M-55) ([82cf3fe](https://github.com/gerfru/PulseBase/commit/82cf3fe12a5edee7402901e48c75216b28c6d7d2)) * Wave 10 R4 — Tests (L-47–50, M-53, M-55) ([0331ee4](https://github.com/gerfru/PulseBase/commit/0331ee4738c2e5e12611d18ce5ea9e464f8546cc)) * Wave 10 Runde 5 — Code-Qualität und neue Tests hinzugefügt ([6ea52d6](https://github.com/gerfru/PulseBase/commit/6ea52d6d30412f03e96239f8546403ee80a2a3a6)) * Wave 7 — Observability & Docker-Härtung (M-20, L-01–05, L-20, L-24, L-25) ([c27507e](https://github.com/gerfru/PulseBase/commit/c27507e252535818b368232bb80d10de40f97038)) * Wave 7 — Observability & Docker-Härtung (M-20, L-01–05, L-20, L… ([cbaaefd](https://github.com/gerfru/PulseBase/commit/cbaaefd6b587008acfa31783fffdfffe6ecfaa07)) * Wave 9 R4+5 — Code-Qualität, CI/CD & Observability ([340da7a](https://github.com/gerfru/PulseBase/commit/340da7a5204586435a03f40234df6c9c7c748b52)) * Wave 9 R4+5 — Code-Qualität, CI/CD & Observability ([2b87a16](https://github.com/gerfru/PulseBase/commit/2b87a1688a6ef2a6f7b5f6dd9cabc3feb10bf63b)) * Wave 9 Runde 2+3 — Graceful Shutdown, Tests, E2E Coverage ([1dfe4fc](https://github.com/gerfru/PulseBase/commit/1dfe4fc3be0301a51cc9c8888a52f2c4dba22f96)) * Wave 9 Runde 2+3 — Graceful Shutdown, Tests, E2E Coverage ([87c3b10](https://github.com/gerfru/PulseBase/commit/87c3b101ab1b32f4e8dcb1bd733d46bb4ac8a9cf)) * wire recovery chip to metrics page + chip UX fixes ([6020c2d](https://github.com/gerfru/PulseBase/commit/6020c2d28dc9638bad5bc535771d9b8926dcd920)) ### Bug Fixes * **a11y:** Fokus-Ring-Kontrast anheben — UX [A-6] ([0c2c0db](https://github.com/gerfru/PulseBase/commit/0c2c0dbee5c6f1e39ab9360f66dfcce7c58d62d4)) * **activity:** korrigiere Schrittlängenberechnung und erweitere Präzision in der Datenbank ([ad24f0c](https://github.com/gerfru/PulseBase/commit/ad24f0c997869cc4f76e75781964e4c4695951e0)) * add stress sparkline to hero card dots (avg_stress from daily data) ([248d9ec](https://github.com/gerfru/PulseBase/commit/248d9ec50e612ad3c51ca8f8bcc2f91c4d720d4c)) * add type ignore comments for Settings instantiation in db and main modules ([39b4f84](https://github.com/gerfru/PulseBase/commit/39b4f841c8a34860baec961908b93573fa863a25)) * Aktualisiere Importpfad für Authentifizierungseinstellungen in den Tests ([9a482f7](https://github.com/gerfru/PulseBase/commit/9a482f79f0b5ec3ce7f3019d01b0a9f88e5193e3)) * body_battery_custom KPIs — show '0' instead of '−0' for zero drains ([ee50f50](https://github.com/gerfru/PulseBase/commit/ee50f500d7c6d4b260813582293851ead24926cf)) * body_battery_custom metrics page — update KPIs + formula to fresh-state model v2 ([3d54abc](https://github.com/gerfru/PulseBase/commit/3d54abc3623275b25f8be2d5103f83dbc06a31b3)) * cast session user_id to int in require_user; switch to Renovate ([1cdabce](https://github.com/gerfru/PulseBase/commit/1cdabce18719052d2898fb05af6b28b14316aa2e)) * CI — mypy explicit-package-bases, trivy ignore-unfixed, bandit assert→raise ([ff546bf](https://github.com/gerfru/PulseBase/commit/ff546bf2d1119331199a462bd94df1a771d08030)) * CI e2e — env/.env.app + FERNET_KEY migration ([f4e8b10](https://github.com/gerfru/PulseBase/commit/f4e8b109b655b32de0aa31e50e10cac0665d7f78)) * **ci:** exclude *.md from PR size check ([525f589](https://github.com/gerfru/PulseBase/commit/525f5897c595741aef1216fe254159391f2bd736)) * **ci:** exclude lockfiles from PR size check, lower sync coverage gate to 50% ([938ccd1](https://github.com/gerfru/PulseBase/commit/938ccd1582215ee0ebb720ab7eeae12dab1663a4)) * **ci:** remove quiet flag from Playwright browser installation ([9d9aef6](https://github.com/gerfru/PulseBase/commit/9d9aef608ff7dc9ddcbf297eef2a37a48f5f4e8c)) * **ci:** suppress bandit B108 + semgrep false positives; move sync DB queries to repo layer ([1a1198d](https://github.com/gerfru/PulseBase/commit/1a1198d324210b8b8b3a8f5dd33aa27bb2ab8c89)) * **ci:** wave 3 — CI/CD hardening ([8afe713](https://github.com/gerfru/PulseBase/commit/8afe713d2219b65aac57d19d347e419eb68c62d5)) * correct docker image versions to match existing data ([04a0002](https://github.com/gerfru/PulseBase/commit/04a0002b5206f73669621d1b428a81cda9782444)) * **db:** drop hardcoded DB name in V24 (broke garmin_test) ([f295cb1](https://github.com/gerfru/PulseBase/commit/f295cb1e8bf8eaafceec0afbfb9133873bd06b08)) * **docker:** add missing networks configuration for db-test service ([0f1afa4](https://github.com/gerfru/PulseBase/commit/0f1afa4abef6f667d57ea4436f6898b01f5336bd)) * dynamic feature set for RF model when hrv_last_night has no data ([204023f](https://github.com/gerfru/PulseBase/commit/204023f59414dab0305cb43d08c1ea98a0fe4d64)) * ensure numeric rounding in weekly stats calculations for distance and duration ([c8b24f3](https://github.com/gerfru/PulseBase/commit/c8b24f30f832c676e397e12ecdfbdf43b8bda137)) * Entferne nicht verwendete pnpm-workspace.yaml Datei ([4bfdc9d](https://github.com/gerfru/PulseBase/commit/4bfdc9dfbfba537dd53595710feb60cf5480d28a)) * **epilepsy:** epilepsy.js als ES-Modul laden ([b295b28](https://github.com/gerfru/PulseBase/commit/b295b283a209aafce00ea30ba8f8f206333f4b96)) * exclude fastapi 0.136.3 (MAL-2026-4750 supply chain) ([7919484](https://github.com/gerfru/PulseBase/commit/79194844b992234aca6fa3124f533c24295ff4d1)) * gap detection checks each model independently (body_battery_custom + stress_score_custom) ([01e8e5e](https://github.com/gerfru/PulseBase/commit/01e8e5e619e0d458d5ad801223a2ccf093a97110)) * **infra:** Wave 2 — Docker reproducibility, healthchecks & security hardening ([#181](https://github.com/gerfru/PulseBase/issues/181)) ([c59e637](https://github.com/gerfru/PulseBase/commit/c59e637fe84e84be3578a05df22c522c6fce6a69)) * **logging:** prevent credential disclosure in Garmin and LibreLinkUp token logging ([d6b58db](https://github.com/gerfru/PulseBase/commit/d6b58db7eec76d5648fdaca027878dde96a683e4)) * **logging:** prevent credential disclosure in token login warning ([15fb257](https://github.com/gerfru/PulseBase/commit/15fb2575b067ed34b070d731a4e0dcbdf64a6b7f)) * make db + add make logs-ml, make build-ml ([50517f1](https://github.com/gerfru/PulseBase/commit/50517f1041363b7bf28f82bc92a50ba9c92f595a)) * **makefile:** remove quiet flag from Playwright browser installation ([1c374e2](https://github.com/gerfru/PulseBase/commit/1c374e2d2c8293e8a1b818cb7ca2c7b1392e06fc)) * median imputation for readiness inference + dedup sleep sessions + always refresh readiness today ([a1fb84c](https://github.com/gerfru/PulseBase/commit/a1fb84c3ac58f482b109f93a2a0abae60cee411e)) * **ml:** circular sleep std, HRV battery fallback, running economy thresholds, stress 75/25 blend ([#201](https://github.com/gerfru/PulseBase/issues/201)) ([767791e](https://github.com/gerfru/PulseBase/commit/767791e6087d7526a1dd7197559fe1cc429a32d0)) * mypy arg-type für sentry_sdk.capture_message level-Parameter ([a7689a0](https://github.com/gerfru/PulseBase/commit/a7689a04b7943c7f1c0907a6a54bd72112ef0967)) * mypy type: ignore[override] auf def-Zeile für NonceTemplates ([ab52e3d](https://github.com/gerfru/PulseBase/commit/ab52e3d21e988ba4631b79193bbc2f9dd8dea679)) * pass cutoff date as Python date object in ml-service queries ([50dbf75](https://github.com/gerfru/PulseBase/commit/50dbf753f6b532870e94e7eb2e953c6e3b8130a4)) * pnpm-workspace.yaml packages field + esbuild allowBuilds ([997680e](https://github.com/gerfru/PulseBase/commit/997680e0d293f7adc845f6f67e37547ab33061bf)) * readiness tooltip extends right instead of left ([b1bde64](https://github.com/gerfru/PulseBase/commit/b1bde64c0f44cc964fadcaac28ac1c5542735b7d)) * reduce test coverage failure threshold to 15% ([49e4fb9](https://github.com/gerfru/PulseBase/commit/49e4fb93c2fc41923a612de000277050d2ac7149)) * regenerate uv.lock after package rename garmin-* → pulsebase-* ([50572fc](https://github.com/gerfru/PulseBase/commit/50572fc4b5fa06650e86383a4cf8f5349920d4aa)) * resolve HRV sync bug, align RF labels with energy metrics, and clean up inconsistencies ([32f2d64](https://github.com/gerfru/PulseBase/commit/32f2d64fc0001369e84cf30f7569c95e4785912a)) * **security+bugs:** wave 1 — bug fixes & security quick wins ([798f0a8](https://github.com/gerfru/PulseBase/commit/798f0a8fdaf149b5c24fce17bcb116c7d15ce406)) * **security+bugs:** wave 1 — bug fixes & security quick wins ([3effe23](https://github.com/gerfru/PulseBase/commit/3effe23d9c931ac5541cacf9ff53255a77558f9e)) * **security:** address top-10 findings from app-eval audit ([7ede441](https://github.com/gerfru/PulseBase/commit/7ede441082cfe947ba1539fbb1322786d48d3cbe)) * **security:** address wave-2a findings from app-eval audit ([38650c5](https://github.com/gerfru/PulseBase/commit/38650c5e5d059dc29fd9c1b8d315dcbaa89f11a7)) * **security:** address wave-2b findings from app-eval audit ([a92756d](https://github.com/gerfru/PulseBase/commit/a92756d064853689444114b007d27323532f1f1d)) * **security:** address wave-2b findings from app-eval audit ([f2dfb08](https://github.com/gerfru/PulseBase/commit/f2dfb083962e7f716dac44b8aa549cb035c4c2c9)) * **security:** address wave-2b findings from app-eval audit ([7fb5f2f](https://github.com/gerfru/PulseBase/commit/7fb5f2f8258b8a8a9976990836db3f35d1447d67)) * **security:** address wave-2b findings from app-eval audit ([e9a00f0](https://github.com/gerfru/PulseBase/commit/e9a00f0fdb545a4627814e1c972c9d24c721e6ca)) * **security:** Wave 1 — token TTL, Sentry gaps, backup hygiene, GDPR consent audit ([#180](https://github.com/gerfru/PulseBase/issues/180)) ([b7300da](https://github.com/gerfru/PulseBase/commit/b7300da0ab14c4fa7a228081808cddb4a5cc8249)) * **security:** wave 2 — CSRF protection + reset token invalidation ([95025e9](https://github.com/gerfru/PulseBase/commit/95025e9857e79f377767405e7928570551ad093a)) * **semgrep:** drop exc arg from token-login warning to eliminate credential-leak rule ([26691bc](https://github.com/gerfru/PulseBase/commit/26691bc4b296d0e397af9386dcadd3fcf2640dd1)) * **semgrep:** move nosemgrep comments to preceding line for multiline logger calls ([3f6fec3](https://github.com/gerfru/PulseBase/commit/3f6fec3961cc84f99d7124ae73c0f24721fc443d)) * **semgrep:** remove PII and credential-leak false positives from logger calls ([08a26bf](https://github.com/gerfru/PulseBase/commit/08a26bf6c8d52d52da492a44c579a7294e381db0)) * specify type for password_hash in login function ([2d6b912](https://github.com/gerfru/PulseBase/commit/2d6b91268200a001797b97f0d0b96d86c3cfb134)) * starlette 1.0.0 → 1.2.1 (PYSEC-2026-161); exclude data/*.json from PR size check ([4a6ba78](https://github.com/gerfru/PulseBase/commit/4a6ba78150d642caeaf8b33ef0e3ff1596e63c23)) * **style:** Tailwind-Purge-Bug, Light-Mode-Kontrast + accent-Single-Source ([#161](https://github.com/gerfru/PulseBase/issues/161)) ([c685eb8](https://github.com/gerfru/PulseBase/commit/c685eb8f35060ae86d0da7024c82285fea7eac31)) * suppress bandit false positives in libre client ([258d58c](https://github.com/gerfru/PulseBase/commit/258d58c49c84597d54110cc7131a1ecec8372cf5)) * **sync:** support new Garmin API metric format + backfill script + make targets ([#203](https://github.com/gerfru/PulseBase/issues/203)) ([6e14788](https://github.com/gerfru/PulseBase/commit/6e1478816e29e1987d05058e98cdc5ff4053ae34)) * **tests:** update save_consent tests to use test IP hash instead of secret ([f594b12](https://github.com/gerfru/PulseBase/commit/f594b1266c6141611a556eb7b936f3156cff6a7a)) * **training-load:** correct EWM alpha factor + readiness arc redesign ([d136f35](https://github.com/gerfru/PulseBase/commit/d136f352074687bfc90c225b796b1a3720ce62fb)) * type=module ergaenzt, identisch zu dashboard/help/metrics. ([b295b28](https://github.com/gerfru/PulseBase/commit/b295b283a209aafce00ea30ba8f8f206333f4b96)) * **ui:** Zeitauswahl-Labels (1W·2W·1M·3M·1J) + Onboarding-Dismiss CSP-fest ([#178](https://github.com/gerfru/PulseBase/issues/178)) ([0388fb3](https://github.com/gerfru/PulseBase/commit/0388fb34501680afc5f25d0edece61aab505b8ec)) * update CI workflow to trigger on all branches and add concurrency settings ([b29f983](https://github.com/gerfru/PulseBase/commit/b29f9830cb9b25e219cc1e80969c2f471361ef93)) * update CI workflow to trigger on main branch only ([56302f3](https://github.com/gerfru/PulseBase/commit/56302f3da3e9252afa7f4506c9a6f48159f7bfe2)) * update logging configuration to write logs to stdout and add Sentry initialization ([4fb0a63](https://github.com/gerfru/PulseBase/commit/4fb0a6345eb7e77127c7f25abb1b44640f3a3781)) * update pip-audit commands to use directory paths ([897d20b](https://github.com/gerfru/PulseBase/commit/897d20b017f72a9c3a4dc2154195dca11f11a762)) * update readiness test fixture to use energy-based labels ([4acb433](https://github.com/gerfru/PulseBase/commit/4acb433af5c672cdcd18e58b1af12d4d7ad69094)) * update test import after anomaly function rename ([2fb83a8](https://github.com/gerfru/PulseBase/commit/2fb83a81d679b49b6dbc56e789272fa1be6607af)) * update test to reflect median imputation in predict_tomorrow ([e48542f](https://github.com/gerfru/PulseBase/commit/e48542f69925bb1adf50f7c3f5473133d679a156)) * Wave 8 — Code-Qualität: Rückmeldung zu fehlenden Return-Annotierungen in aktualisiert ([f6eda32](https://github.com/gerfru/PulseBase/commit/f6eda32558d222d4377b89cf565a7b83c220fa1d)) * **wave-6:** docs, cosmetics & minor fixes (L2, L5, L6, L18, L25–L28) ([#185](https://github.com/gerfru/PulseBase/issues/185)) ([3157502](https://github.com/gerfru/PulseBase/commit/31575026da3004f3907bbfb91413ea048dea4a36))