Fixed Fitbit sleep data in Postgres to inherit correct fields.
v0.50.6 - Postgres migration follow-up
2025-12-30
Fixed Postgres experiences table to ensure substances are connected and only created if user adds substance use data.
Fixed Postgres to ensure created_by and updated_by are included in appropriate tables.
Fixed HEXL links to align with main app.
Enforced character limits and sanitization with admin controls in Citizen Science text fields.
Cleaned up context events cards on the Log Calendar.
v0.50.5 - UI cleanup and experience log auto-saving
2025-12-28
Returned dark background to the “You are here” text on the Typical Day chart.
Emboldened text on /entry beneath slider bars to make them more readable.
Added enforced character limits and admin settings to set them to experience logging, sleep data, context events, and relationships.
Ensured sanitization of fields to prevent arbitrary code injection.
Added server-side truncation and validation to ensure database consistency (this probably wasn’t necessary).
Introduced auto-saving of experience logs with a default 10 minute window. Experience logs will be saved for this amount of time so that a user may return to the entry page and finish their experience log.
Added completion_time_seconds to experience logs to provide metrics for development.
Added a Request Access feature to login page with admin settings.
Rearranged and organized admin settings to make them [slightly] easier to manage.
Removed SQLite setup now that it relies only on Postgres.
v0.50.1 - Fitbit integration fixes
2025-12-26
Fixed feedback report system to align with new postgres database.
Moved storage of feedback screenshots to a persistent, dedicated directory.
Merged Mental GPS and Typical Day pages with a dropdown to select between the two.
Added pagination controls to the bottom of the Logbook list of logs.
Deprecated the /zk/logbook/logs All Logs page to reduce redundancy and clutter in links.
Cleaned up and simplified pagination controls on /zk/logbook.
Removed link for Stroop Test results from Logbook. They are still linked to from the Stroop analytics page in the Observatory.
Added Fitbit connectors to the test environments to make troubleshooting easier.
Ensured Fitbit connection tokens remain persistent, which should prevent the need for users to reconnect every few days.
Added additional test scripts to ensure functionality of Fitbit connection.
v0.50.0 - Full Postgres Migration
2025-12-23
Migrated sqlite database to a postgres schema.
Rerouted logic for all pages to match the new schema.
Dumped all Stroop Test data to facilitate migration.
Corrected “State of self” to “Sense of self” on /observatory/typical-day
Reorganized admin dashboard stats to reduce redundancy.
Expanded login throttling safety and clinician schema handling.
Added helper scripts and documentation for Postgres integration, persistence checks, and Portainer setup.
Numerous schema and model updates including Postgres-safe defaults, audit fields, Stroop UUID shims, and model aliases.
Simplified titles and timestamps for Stroop Test Results page.
Fixed navbar for mobile view.
Fixed slider bars on experience logging page to not allow lines to extend beyond the thumb slider.
Fixed color gradients for slider bars and removed color changing cards.
Aligned clinician portal login’s design to main app’s login.
Fixed past and future event logic to prevent users from selecting past date for future or future date for past.