Changelog

v0.40.3 - Clinician portal update

2025-12-01

  • Updated Clinician portal to include user Statistics, a search function with tags, time range selection, and cleaner graph and chart visuals.

v0.40.2 - Fitbit fix and UI adjustments

2025-11-30

  • Appended a “Δ After vs Before” column to Context Events.
  • Added a fallback refresh step that uses stored Fitbit refresh tokens when access tokens are missing, keeping connections active for experience log syncing.
  • Restyled the experience logs in the /logs/calendar page as the /logs page.
  • Fixed color gradient for Z valence (feeling) in experience logs so that negative is red and positive is green.

v0.40.1 - Hotfix HEXL sync error

2025-11-24

  • Added error checking for so HEXL synchronization can detect invalid sessions before querying to prevent query failures.
  • Added simple logic to ensure users can log in even if the HEXL sync fails. Since the HEXL syncs missing logs automatically whenever a user logs in to CommonFrame, this should keep things moving smoothly.

v0.40.0 - Postgres HEXL migration

2025-11-22

  • Replaced SQLite HEXL.db with a Postgres database schema, marking the first major step toward migration to a scalable system.
  • Automated setup and migration of HEXL data from legacy SQLite to Postgres.
  • Reworked user profile data to be pushed as a snapshot to the HEXL upon creation of a new experience log.
  • Replaced AWS VM’s local instance of Portainer with Portainer-agent to reduce load on the very small AWS VM.
  • Introduced profile data coarsing when sending profile snapshot to HEXL. Included admin controls for refinement.
  • Fixed admin settings to allow text fields to expand horizontally.
  • Added safeguards to prevent duplicate users and preserve existing timestamps.
  • Limited updates to only the newest matching experience to avoid overwriting history.
  • Automated populating HEXL statistics with the most recent profile snapshots for more accurate reporting.
  • Fixed handling of Stroop test tags so they correctly link to stored test results.
  • Preserved Stroop trial timestamps and improved result ordering.
  • Ensured Stroop tags match and align with HEXL test identifiers.
  • Removed the need for placeholder experiences when tagging Stroop data.
  • Added guards to avoid repeat HEXL syncs during routine flows.
  • Added horizontal resizing for admin text areas.
  • Wired in Sentry endpoints to monitor errors and outages externally.
  • Corrected mail environment variable fallbacks for reliability.

v0.36.2 - App Monitoring

2025-11-18

  • Added a healthcheck /health endpoint.
  • Introduced a status page on https://status.cframe.co and included Discord webhooks to allow real time app monitoring.
  • Replaced entire backend docker stacks with more reliable and easier-to-read compose files.
  • Added backups for backend files to CFrame documentation.
  • Made a bunch of mistakes that shouldn't happen again.