Skip to content

v3.5.2

Choose a tag to compare

@PersephoneKarnstein PersephoneKarnstein released this 08 Feb 07:23

Blood test calibration + codebase-wide bug fix round

Blood test calibration

  • On-schedule toggle: When logging a blood test that predates dose history, a toggle asks whether you were on the same dosing schedule. If yes, virtual steady-state doses are generated to compute a meaningful predicted E2 for scaling factor calibration.
  • Baseline decay: Off-schedule tests contribute to endogenous baseline E2, which decays forward over time.
  • Database schema v2: Added on_schedule column to blood tests table.

Bug fixes (20+)

  • baselineDecay ReferenceError in chart — function was out of scope in _setupDoseSpikes
  • SQLite int identity check1 is not True evaluates to True; switched to truthiness checks
  • UTC→local timezone across coordinator, calendar, const.py, and JS card (setHours not setUTCHours)
  • Calendar phase offsets ignored — now reads from config and anchors correctly
  • compute_suggested_regimen dead loop — removed unnecessary variable, returns directly
  • config-changed eventsEventCustomEvent for proper detail property (all 3 card editors)
  • Stale spike listeners after DOM reconnect — tracks element reference
  • Plotly lifecycle cleanup in disconnectedCallback
  • Duplicate Plotly loading — global promise guard prevents multiple script tags
  • Change detection via last_updated to skip redundant renders
  • XSS escape in blood test notes hover template
  • Sensor name collision — now includes method name
  • Calendar ongoing eventse.end >= now instead of e.start >= now
  • Schema migration exception handling — only swallows "duplicate column" errors
  • lastrowid read moved inside database lock
  • Manifest metadataiot_class corrected to calculated, sorted keys, added issue_tracker
  • Removed unused imports, orphaned translation keys