Version 0.83.4
All 1 change
Fixed
- On a wide window the fade above the tab bar spans the whole page, so no pale box shows over a photograph on Explore.
Loading RxDaily…
Every release, newest first. 176 so far.
Setup is a step shorter, a medicine's timing is chosen with one tap, and Care shows your clinician and clinic as one.
The clinic's plan reaches Today, a tour points at the real screens, and the content studio is tidy, validated and runs on Payload 4 beta.
allie opens with your day, the clinic sees every high reading, and administrators read a clinic without typing a reason.
The admin and clinic consoles are redesigned on one system: RxDaily color and glass, borderless cards, figures as cards, and a native bottom bar on phones.
allie answers every emergency with the emergency response, and the monthly billing build runs again.
allie's message field works on iPhone.
A natural voice on the phone, and never the robotic one.
A picture of its own for every Explore read, session, program and recording.
The whole app distilled to the essentials, a health book you can explore, and clinical data that only the right people read.
A redesigned app, medicines that count at once, safer clinic invitations, and a clinic that sees only what it should.
Privacy and safety: attachments deleted on schedule, a covered voice only, and quieter logs.
The RxDaily brand book at /brand, and the server side of error reports from the iPhone app.
Readings from Apple Health, an image-led first-run guide, and a moving ocean at sign-in.
The news desk writes a long read every day, and the iPhone build goes to TestFlight with Apple Health.
Practice sound in one tap with Lauren's breath cues, and one natural carousel everywhere.
RxDaily's own icons and pictures are back, and Explore opens on Walk more and the first sessions.
allie's Save reading works in the browser again.
Walk more asks its talk test aloud, and content pictures arrive smaller and faster.
The admin Enrollment desk opens about three times faster.
Walk more speaks its offer for next time, first sessions open on their own picture, and the health book's chapter lines read as sentences.
Lauren's first sessions are in the app, opened from a row in Explore.
Walk more for everyone in Lauren's voice, a cleaner setup, Today, Explore, Health and measure screens, and an allie that answers from your health book and plan.
Food quizzes, an allie that saves the readings you tell it and draws its cards from your data, When to get help in Health, and Lauren's voice across the guided sessions.
A Getting started card on Today shows a new person only what applies to them and ticks itself as they go.
Explore opens with fewer requests, a due medicine leads Today, allie speaks in US units, and the clinic sees its people and its own time zone first.
Setup is clearer to get through, the app opens with a short guide, and RxDaily's emails look like the app.
Joining from an invitation takes five screens instead of nine, and the clinic patient page opens on what the person just did, with times.
Breathing practices from the library run for their full length again.
allie's answers about your readings now speak in words and show your week, programs open with a cover and a Join you can always reach, and Health shows your own usual range. For clinics, the panel opens on the whole clinic for owners and admins, the patient page shows logged doses and blood pressure with its range, and the consoles read more clearly.
One player now runs every guided session. Meditations and other recordings play over a moving scene with Lauren's words filling in as she speaks, breathing and exercise share one footer with Stop in the same place on every step, and every session you finish or stop is saved to your record. Clinics can create patient invitations again.
Phone cards stack cleanly and Read aloud shows preparation and buffering. Background book updates now exclude old non-patient accounts without a health record.
Today, Explore and allie's program suggestions now use the same service. Each suggestion explains why it was chosen, and your recent choices help avoid repeats.
allie now follows the conversation and sees your recent readings and labs, the health book carries its personal letter and sources with titles on its pictures, and every suggestion has a picture of its own. News stories are longer and told as stories, the conditions list reads again when an onset is a year, and the app can now carry guided program days and meditations.
RxDaily is organized into Today, Health, Explore and allie, with three navigation styles and icons that respond to the day. Medicines are grouped by time of day, visit preparation brings questions and recent readings together, and chat, news, reading and exercise players have been redesigned. For clinic and admin teams, the update includes ACCESS enrollment and monthly billing implementation previews, an adapter-based billing architecture, and verified eligibility, enrollment and baseline acceptance in the CMS implementation environment.

RxDaily has a public front door, and a person's own numbers became something to read. rx-daily.com opens on the app's own scenery with a live Today card, and a clinics page explains how a clinic works with RxDaily. In the app, each measurement opens a year of the person's own readings, Your days shows every day as one square, and every insight is held to one rule: it may say what a pattern could mean in general, never what it means for this person. In the clinic, the care panel is ordered by rules a clinician can check. On the 25th the app took a new shape around it: onboarding stays in a person's own scene, Today opens on the week with the next meal's own photograph, recipes and reading got proper layouts, and the old web patient app left the codebase.

Allie's safety net was measured, found wanting and fixed the same day. The second crisis layer had returned nothing since the move to Vertex; it now runs on a model that answers inside its budget, and one widened vocabulary catches what the rules missed. An evaluation model now checks the places where the platform makes a judgment. Progress became something both sides can read: Your health in the app, and in the clinic a roster by condition, a progress panel on every record and a progress page with every reading against the guideline.

The console, one tool since v0.64, moved onto one component kit: every clinic and operator page in light and dark, and three audits of the result fixed what they found. A clinician can set a patient up before the person arrives, a person can bring their own record into setup, and Explore and Today became one loop.

The first release after the move to Expo, with 34 changes across the app, allie, the health record, clinic, admin and content tools. Explore brought the published library into the app, allie and Today started reading the same daily plan, readings became easier to add, and content gained review before publication.
RxPulse became RxDaily. The patient app was rebuilt in Expo and React Native for iOS, Android and the browser, with a simpler structure shaped by testing with older adults: platform tabs and sheets, gesture-driven task actions, your own to-dos and habits, moving scenes, and an allie closer to the day you are having.
The releases from the RxPulse years, kept as they were written.

Allie became something you can see and talk to from anywhere in the app, reacting to the conversation as it happens. Around that, the app stopped making claims it could not support: home dropped scores and streaks for one next action it can name a source for, profile stopped asserting readings it did not have, and the copy across the app describes what is on the screen rather than how it feels. Separately, for the accounts that hold more than one workspace, there is now an explicit choice instead of a guess.

Admin, clinic and practice were three separately invented tools with no shared sense of where you were or what you were allowed to do. They are one organization-aware console now. Operators get the ACCESS, consent, submission, deadline and pipeline views in a single frame instead of hunting across separate tools, and a provider working across two clinics can move between them without patient identifiers following along.

The operator side of the platform got its surfaces. The access log can answer "who opened this patient's record", and export a bounded, complete result when someone formally asks for it. Consent, HIE fetch, ACCESS submission, PCP notification, webhook and nudge paths that previously had no operator view have pages now. The console remains off by default, and vendor/CMS integrations keep their own go-live gates.

Two days, 27 commits, 235 files: the interface caught up with the machinery underneath it. Generic icon cards are gone from every patient surface, replaced by one image-led editorial system with real photography, porcelain surfaces and readable glass panels. Today is rebuilt as white period cards on a warm clay canvas, one explicit action per task, no hidden gestures. Explore is one calmer surface with Learning and Community each in their place, and enrolled programs moved into Plan where the day actually happens. And Allie got her voice back, literally: sessions start only once the live connection is confirmed, the conversation runs on one continuous canvas, and she can guide you to every patient-facing part of the app.
The last few releases built machinery: outcome tracking, proactive reminders, caregiver and clinician plumbing, photo capture. v0.61 is the first full pass on the front of the app that machinery serves. Circle folds into two panels behind one toggle, and reading is the default. A caregiver can hold a revocable, audited view of the day. A photograph of a cuff or a medication label becomes a confirmed reading. And the small things that decide whether a phone app feels usable, tap targets, dead ends, mislabeled cards, the word "quiet", were fixed one by one.

Every layer Pulse stands on moved up a generation at once: Next.js 16.3, React 19.2, TypeScript 7 with its new Go-based compiler, and version 7 of the toolkit behind Allie. On their own those are version numbers. Together they are the groundwork for the things we want to build next, from instant page transitions to real spending limits on Allie rather than estimates. The landing page now scales with the window instead of snapping between two fixed layouts, the breathing exercise lost a distraction and gained a sound that behaves like breath, and a clinical data adapter that would have failed in front of a patient now fails safely at startup instead.

Green finally stopped coming back. Mint had been chased out of one surface after another for two releases, and it kept returning, because it was only ever patched per component and never removed at the source. This release fixes it at the token root: the accent family rotates to the warm clay the app already anchors on, the two color tokens that were referenced everywhere but never actually defined become real, and the news categories stop shipping two greens that could not tell health apart from environment. Alongside it, the housekeeping that had been deferred: Next.js patched for four high advisories, production audit highs back to zero, patient report pages taken off static prerendering, and a build pipeline that had been red for two weeks made green again.

The Health Book stops being a document that was written once. It refreshes on demand, marks the chapters that changed since you last read them, remembers where you stopped, and prints a one-page summary you can hand to a clinician. Around it: the book is redesigned with ink chapter bands and white cards, recipe pages stop showing three different greens, and Allie's chat moves from green to ink and coral. Breathing, audio sessions and movement now take the whole screen with no nav on top. A set of layout bugs is fixed, from the desktop nav spanning twice the app column to a Start button sitting on its own label.

The platform release: work that was already true becomes visible. ACCESS is submission-ready on our side, and members now see their outcome track, with trends, right in the app. The iOS and Android shell passes its store-readiness audit (and the audit caught a real bug: voice sessions had no microphone permission on either platform). And programs, quietly shipped weeks ago, finally get their announcement.

A founder walkthrough turned into a deep cleanup pass. Two token aliases were quietly rendering mint green wherever coral or purple was asked for; both are fixed, and with them a long list of rough edges: low-contrast charts, a half-finished breathing screen, a dead Circle button, first-person poll answers that read in third person, a misfiring crisis disclaimer, and a profile preview that could show a broken image. The colors that remain (porcelain, ink, coral, copper) are the ones that were actually designed.

A same-day polish and fix wave shaped by founder and designer walkthroughs, on top of a quarter of shipped-but-unannounced platform work. Guided audio comes to the front: narrated meditations and wind-downs play on, screen locked, inside the new mobile shell. The app warms up visually (a porcelain ground replaces the green wash), Today's Plan grows purposeful icons, and staying signed in finally respects that you were, in fact, using the app.

v0.55 lays the mobile foundation. The secure iOS and Android shell that will carry the app into the stores is built: biometric sign-in enrollment, strict origin handling, universal links, offline recovery, and an update screen that stops an outdated shell before it meets web features it cannot handle. Account deletion, the store-compliance work that started last release, is hardened end to end with immediate lockout and atomic cancellation. Privacy moves with it: the language models behind Allie now work inside a boundary that never carries a patient's legal name, request-isolated opaque tokens stand in for identity, and database row-level security now covers every remaining patient-linked record. And behind flags, all off by default, the clinician side begins to take shape: a provenance-preserving clinical signal contract, fail-closed organization scoping for the clinician cockpit, confidence-aware trajectory evaluation for kidney, blood-pressure, and A1c outcomes, and the first renal nutrition intelligence.

v0.54 is the consolidation release. The engagement systems that grew up scattered across the app, XP, streaks, achievements, celebrations, now run as one server-side loop, and Allie joins it: logging a vital or a meal in conversation extends the same streak the home screen shows. Breathing and movement move onto the same clinician-gated content backbone as recipes and audio sessions, and two new foundations land behind flags: a measurement layer where momentum can only come from real outcomes, and an evidence pipeline that syncs published research through a fail-closed review queue. On the partner side, the CMS ACCESS pipeline now has everything it needs for go-live except the registration credentials: a persisted submission ledger, a scheduled dry-run rehearsal in production, and conformance hardening. The mobile wave starts with in-app account deletion and a native bridge layer, and the whole app sits on a refreshed light-mint visual foundation, deliberately name-agnostic ahead of the rebrand.

v0.53 gives the platform its first way to reach back. If an evening is passing and a streak is about to go quiet, the app can send one short, gain-framed email; a weekly digest sums the week up in plain counts. The notification settings page now tells the truth: every channel shown has a real switch, and each renders a live preview of the exact email it controls, with your name and your current streak, so what you see is what we send. The reminder channels ship dark behind a flag until the forgiving streak work lands, so the first nudge a patient ever receives will point at a streak that forgives a missed day. Underneath, Allie carries far less instruction text on every turn, the synthetic demo corpus can no longer reach a patient's browser, and clinic access grants are now organization-scoped at the database layer.

v0.52 turns attention from what the platform does to what it costs to run. Every AI turn now records its token counts against a per-model price table, and a cost report turns that into per-day, per-tier, per-provider dollar figures, so spend is something we can see rather than guess. On top of the measurement, a set of zero-risk savings lands: per-tier caps on the expensive output side of each turn, read-aloud audio cached by content hash so an identical line is never synthesized twice, and the background memory extractor held back on turns that cannot teach it anything. Around the AI work, the Circle gets a consume-first pass and a couple of quiet reading surfaces, Allie's orb now leads the home header and hands off cleanly as you scroll, and Gemini voice connects through a steadier path.
v0.51 stands up two backbones. The first is Studio, our own editorial workspace, and with it the app starts moving off the sample content it shipped with onto real content we manage. The articles, topics, news, and daily inspiration a patient sees are now written and published from one place, and every surface reads them live, so an edit lands in someone's hands right away rather than waiting on a release. Alongside it, a preview-as-patient tool shows exactly what any given person would see, by condition, journey stage, and role, so we always know who sees what. The other backbone is reporting: the path that rolls each attributed patient's monthly outcomes into the quality reports the CMS ACCESS model expects is now built end to end and proven against the published specification, ready to submit the day participant credentials arrive. Around the two, the Circle reads like a place you visit rather than a feed, sign-in hands you to Allie, and another pass of security hardening lands.
Our production-readiness release, and the foundation for going live. Underneath everything is safety: every table that holds health data now enforces row-level isolation in the database itself, so a query can only ever reach the patient it is authorized for, not by convention in app code but by Postgres. On top of that, Allie learns to see: attach a meal or lab photo in chat and she reads it, matches a meal to today's plan, or transcribes a lab for your confirmation. Allie also becomes yours to shape, and a long run of correctness, resilience, and safety hardening lands across the platform.
A hardening release: your data stays put and Allie answers reliably. Profile details, reflections and progress now stick to your own account across devices instead of drifting, and the health overview fills in with your real vitals, labs and conditions. Allie replies to clinical questions with clean, captioned cards of your actual numbers and trends, and the chat itself is steadier. Underneath: graceful production limits, repaired migrations, and a June 2026 model refresh.
The headline is The Circle: one closed community of neighbors on the same road. You join with a single warm opt-in, choosing your name and exactly what others see, read a weekly note and question from Allie, keep one small private promise drawn from your care plan, and watch a shared bar fill as everyone does their real daily tasks. Allie is always badged as a helper there, never a member, and a published charter says exactly what she does and never does. Around it, Allie gains a third voice, the health overview becomes a set of tappable widgets, the bottom navigation puts you at its center, and the redesigned pages now read correctly in Swedish and Bosnian.

A safety-and-solidity follow-up to v0.48. Allie's safety rules moved from guidance in her prompt to real enforcement: a reply that drifts toward telling you to stop a medication or implying a diagnosis is now stopped before you see it, a separate reviewer logs anything that strays for the care team, and a real emergency can no longer be hidden by an unrelated number. Photo meal logging, a headline of v0.48 that was quietly failing to save, now genuinely works, and a new daily Reflect moment sits on the home screen: one tap on a mood face, a warm word back from Allie, and a forgiving streak that never shames a hard day.

Our biggest release so far, and the change that matters most is one you grow into rather than spot at once: RxPulse now reads where you are on your path, from a brand-new diagnosis to steady momentum, and quietly reshapes the home, the daily plan, what you read, and how Allie speaks to fit. Two foundations moved with it. The numbers stopped pretending, so your health score, your streak, your medication adherence, and the read on any vital or lab you log are worked out from what you actually did, and a safety engine that was built but never switched on finally reaches your home screen. And logging got far easier: point your camera at a meal or a paper lab report and the app reads it back for you to confirm before anything is saved. Allie moved into a full-screen chat that handles the keyboard properly and talks more like a person, with a code-enforced safety layer underneath, and the writing grew up with honest authorship and a public security page. All of it lives in a warmer, lower-contrast look: a soft off-white background behind crisp white cards with one deep teal-green accent, and Allie's new glowing teal orb as her whole presence.

Our biggest refresh of the patient app yet. The home screen now opens with a short daily insight written for you, instead of the same fixed banner every day. Nutrition shows your carbs, protein, and fat as three simple rings. Lab and weight trends read in plain language, like 'your best week was six days ago'. You can finally see your progress as points and levels, a new Insights page gathers everything worth your attention in one place, and we laid the foundation for a real, moderated peer community, with Allie ready to introduce you to others walking a similar path. Across the app, things got simpler and easier to read.

A round of polish on Allie's chat surface, paired with a fifth orb skin and a live waveform on the voice surface. Every assistant message now carries copy / regenerate / thumbs feedback, suggested follow-ups appear under the latest turn, and the loading states feel composed rather than mechanical. Underneath: a tool-argument self-heal hook, a reusable cross-fade primitive, and a new Earth skin for the orb.

A second pass at the less-rounded, less-em-dash, more-custom direction the home tab started in v0.44. Three threads land together. The remaining inline hairlines across nine marketing routes are gone, replaced by a single shared Eyebrow component that uses the squircle title mark already running in the patient app. The canonical .card surface drops its inset 0 0 0 1px hairline so cards float on shadow alone, Apple Notes / Stocks style; about thirty-six decorative borders swept off marketing card surfaces where shadow was already doing the work. And the pulse-title-mark itself got upgraded from a flat dot to a themed radial-gradient orb that echoes Allie at micro scale, tinted per-surface so marketing keeps coral orbs, health-book lists keep sage orbs, and patient-app section anchors get purple ones.

Two architectural moves land alongside the polish that v0.43 started. A voice-first onboarding in test where allie introduces herself by voice and walks the patient through eight conversational steps, live at /onboarding/voice-preview. A written-down phi-free posture that the llm input layer never sees identifying patient data, with three implementation phases scoped. The health book engine moves from fall-through to compose so the hand-authored narrative keeps its tone and the dynamic data (live medications, condition-pack red flags, trial-citation chips) stays current. The home tab also finishes its scandinavian polish pass: 14px squircle radius across 18 surfaces, and a daily-plan editor that finally keeps completed tasks in place with strikethrough instead of having them vanish on tap.
First chunk of the CMS ACCESS API client scaffolding, the critical path to the July 5 Model launch via Testing Cycle 2 (May 26-29) or Cycle 3 (June 9-17). Two new modules: an OAuth 2.0 client-credentials TokenManager with proactive refresh + single-flight cache, and a submit-and-poll AccessApiClient that handles the async Content-Location pattern documented in the v0.9.8 Operations Manual. Token expiration buffer is 2 minutes; polling backs off exponentially from 5 to 30 seconds with a 5-minute timeout; HTTP 401 triggers one token-refresh retry; OperationOutcome bodies are parsed into typed AccessApiError. 17 mock-based tests, all green.

Home v2. The patient home tab is built around four timescale containers now: today, this week so far, your care team, for you. Each section reads as its own moment in one anchored scroll; the bottom nav steps out of the way when you scroll and reappears when you stop. Inside the today section, the daily plan card sits where the day actually lives; swiping a row right to mark it done takes a deliberate gesture now instead of a hair-trigger. WeeklyProgress shows the streak number as the headline of the tile so the rhythm of care is visible at a glance, and the care-team section lifts to a lighter editorial weight. First full accessibility audit on this surface returned 95, and two contrast fixes landed in the same release.
Hotfix for an Allie routing bug: asking 'show me my meal plan' (or 'what am I eating this week', or 'what's for dinner') was getting classified as a nutrition-focus haiku-tier question instead of routing directly to the show_meal_plan tool. The tool itself was fully wired (registry + builder + meta + system prompt all correct); the gap was in the tier-0 query classifier's TOOL_PATTERNS regex, which enumerated medications / labs / vitals / care plan but skipped meal plan, weekly menu, today's plan, and exercise plan. Patient got a haiku reasoning loop instead of the rendered 7-day meal grid. Fix extends both regex alternations in `packages/ai-context/src/query-classifier.ts` to cover the missing show_* tool surfaces.
Variant polish pass for the orb. Each of the three non-Aurora skins (Eleven, Vortex, Creative) was harbouring a Gemini-era one-off that the v0.42 hooks foundation finally lets us retire: hardcoded hex colors, an unmounted spectrum DataTexture leaking GPU memory, a fixed-speed CSS morph decoupled from amplitude. Aurora picks up the same status debounce so all four variants now cross-fade through state changes uniformly, and a new amplitude-tier attribute lets pulse.css pause the sweep rotation when the orb is fully idle, saving GPU on every default-skin patient.

A cohesion pass on the home tab and a foundation pass on the orb. The home now reads as one quiet surface: the edit pen moves off the cramped Today plan tabs row up to the section eyebrow ("Edit" sits inline-right of TODAY), three tiles drop redundant headers that were repeating their section eyebrow ("Your day", "This week"), the weekly progress tile no longer says "Today is a fresh start" while sitting inside the This week so far section, and a sweep of arbitrary inline values (text-[10px], rounded-[22px], fontSize: 9.5px, hardcoded #5B51B8 gradients) gets routed through the design system. Under the orb, three new shared hooks (useAlliePalette, useStatusTransition, detectGpuTier) replace inline duplicates that the v0.41.2 hotfix had to scaffold; Eleven wires up immediately, Vortex / Creative / Aurora pick them up in v0.43 alongside the Phase B arrival choreography.
Hotfix for the Eleven orb skin, which rendered as a fully white circle for some users instead of the shader-driven aurora-style sweep. Root cause was a one-line shader bug in `components/ui/orb.tsx`: the fragment alpha was set to `uOpacity` directly, so background pixels (outside the painted ovals) rendered at full opacity. In dark mode, the luminance-inversion mapped that empty background to the brightest color ramp stop, painting the entire orb white. Fix multiplies alpha by the pixel's drawn alpha so background stays transparent. Also added a 300ms cross-fade on the Eleven variant's status transitions so listening / thinking / talking blend instead of snap-cutting.
A quiet follow-on to v0.41 that re-shapes the home tab into a single anchored scroll. The Day/Week segmented toggle is gone; below the hero, modules now group into Today, This week so far, Your care team, and For you. Patient-added daily-plan items get a soft "you added" chip so the home reads as joint ownership of the day, not just the clinic's orders. The weekly tile is rebuilt as movement framing instead of a three-number scoreboard. Motivated by multi-lens analysis (UX, psychology, business, clinical) for the 65+ chronic-care cohort landing on ACCESS in July.
A refreshed visual layer for Allie and a quiet platform pass underneath. Allie now wears one of four skins, the home tab gets an immersive hero, and the codebase is brought up to current versions with turbopack as the production bundler. Aurora is the default; Eleven, Vortex and Creative load on demand so the main bundle stays light. The change is foundation for the broader visual refresh; phase B (choreographed arrival) and phase C (audio UI on non-Allie surfaces) follow in the next two releases.

Allie starts using the tools, and we begin experimenting with UX alternatives. v0.38 quietly moved your plans and your check-ins into your account; v0.39 was allie picking up the tools (read your record, write to it with a Yes / No gate); v0.40 closes some loose ends the first cohort would otherwise trip on and starts trying out a swipeable tab layout for the today plan with a real editor underneath. Every cohort attribution has a 10-day care-initiation clock running on it, identity-proofing is wired as an adapter (waiting on a vendor pick), and observability is in place with PII redaction first. Allie can also start drafting summaries for your doctor. The today-plan UX is being experimented with; the original accordion stays available in settings while we learn which variant fits best.

The release the last one was groundwork for. Allie has read tools to show you today's plan, your meal week, and your workouts in chat; write tools to log a vital, add a medication, or update a care-plan step on your behalf; and a plain Yes / No confirmation gate that puts a deliberate beat between her proposal and your record. Two new home tiles (your day + this week) glance you at how the day and the week are going, a once-per-locale modal confirms the right emergency numbers for where you live, and the production scaffolding for partner clinic onboarding is in place ahead of the Jul 1 cohort.

A quiet release that does loud things later. Your workout schedule and daily check-ins now live with your account instead of just in your browser, the foundation that lets allie remember them across conversations starting next release. Same release also lays the groundwork for integration with partner meal-plan sources, including a potential rxdiet plug-in down the road. We also pulled the Listen-to-article button off the article reader for now, it was misbehaving on iPhones and on some article routes (the personal-letter Listen pill in your health book is unchanged).

Safety hotfix. The English medical disclaimer used to hard-code "call 112 immediately" regardless of patient locale. A US-based patient in cardiac distress on the English surface was being told to dial a non-routing number. The emergency number now resolves per-locale from the CRISIS_RESOURCES map; US patients on both English and Spanish surfaces correctly get 911.

Smaller things across the health book that add up to a cleaner surface. Your Chapter 1 personal letter can now be read aloud. Every chapter shows when allie last refreshed it. Empty states across conditions, vitals, wellbeing, and the diary got a plainer editorial redesign. And a tiny but real fix: when you visit /es/ your health book stays in Spanish even if your account language is English.

Chapter prose migration from raw HTML to Markdown across the health book. Same content for the patient, but the new shape unblocks AI authoring of the personal letter (Ch01) and the wellbeing chapter (Ch09) behind feature flags. Four PRs landed in this wave: the deterministic composer started emitting Markdown (PR1), the LLM authoring path for Ch01 went live behind a flag (PR2), the LLM Ch09 mental-health + Ch07 schedule-notes paths went live behind a second flag (PR3), and the legacy ContentBlock html variant was deprecated alongside every dangerouslySetInnerHTML callsite in the chapter renderers (PR4). The content-security policy got tightened in the same wave.

Spanish in-app end-to-end. /es/* routes now resolve the deterministic health-book composer with locale=es; chapter copy, intro paragraphs, the index header, and the chrome (back button, top-nav, footer language switcher) all render Spanish without falling back to English. The locale also threads through CRISIS_RESOURCES so emergency-resource numbers route correctly for US-Spanish patients. This wave landed the foundation that v0.37.x polished and that v0.37.9 hot-fixed.

Marketing site V2 polish pass against the partner punch list. The homepage hero widget cycle gets a humane rework (longer fades, overlapping cards, ease-in-and-out) instead of abrupt pop-on/pop-off, and the trust chips below the CTAs lose the button shape they were borrowing. Coral hairlines that flagged "included" list items become coral check icons across Three movements, Outcomes, and the whats-included program cards, so a feature being included finally reads as a check, not a separator. New scroll-driven motion arrives across the marketing surface: SVG line glyphs draw in on the capabilities tiles, partner-proof badges pop in with an achievement-style bounce, glass cards floating over hero imagery drift on scroll, and the engagement-section feature dividers now vary in width so the row reads as four beats rather than four stamped copies. The journal hides categories with no posts. The insights Let's talk CTA splits onto two rows with equal-width pills. The auth submit button stops looking like an external link.

Clinical safety polish for the health-book compose engine. Two deterministic guardrail layers now run on every composed chapter set before persistence: a medication whitelist + dose check (Layer A) catches hallucinated drug names or mismatched doses against the patient's active medications; a contraindication fixture (Layer B) flags the top five interaction pairs (anticoagulant + NSAID, GLP-1 + insulin, ACE-I + ARB, SSRI + MAOI, beta-blocker + non-DHP CCB) that show up in chronic-care med stacks when the composed content does not acknowledge them. Rejected composes still persist (audit + replay), the read path falls back to the previous accepted version. Compose status is now persisted | rejected; v0.34.0's shadow-mode is over.
Engine plumbing for the persistent health book, shadow mode, plus an editorial design refresh of every health-book surface. Every onboarding completion, chat turn, and voice session now enqueues a compose job that writes the patient's composed health-book to a new health_book_versions table. The patient-visible read path stays live for v0.34.0; v0.34.1 will flip canonical to the persisted versions once a week of shadow corpus diff confirms the persisted rows agree with live compose. Alongside the engine, the health book index + every chapter page get a more refined editorial layout aligned with the rxpulse vibe.
Allie remembers across devices and channels. Three foundations land together: voice now teaches Allie about the patient the same way chat does, mood writes persist to a durable cross-device row instead of localStorage, and a Mastra-compatible working-memory blob seeds at onboarding completion and follows the account. A new /me/about page lets patients see what shapes how Allie speaks with them.
Cleanup wave on top of v0.32.0. Demo patient content (Robert, Jagoda, Sven, the template, the synthetic roster) consolidates under data/members/_demo/ so the real patient surfaces and the curated walkthrough live in clearly separate places. Chapter 8 (when to call) drops the last hardcoded contact name from its Bosnian copy in favor of a generic contact-person placeholder. The on-site package version finally catches up with the shipping artifacts.
Scheduled for May 14, 2026 (not yet announced; code deployed, formal release waits on a final polish pass). Health book stops being a static document. Every signed-in patient gets a personalized chapter set on every render, built from their onboarding answers + clinical snapshot + memory facts Allie has been accumulating across chat and voice. The hand-written prose in data/members/{id}/health-book.ts becomes reference material; the live view always composes from current data.
Real patients are first-class. The home, Allie, and health surfaces were defaulting to Robert Mitchell's data for any signed-in user whose pulse-mode cookie wasn't set, which turned out to be every authed session. Fixed by inferring me-mode from the auth state itself; the cookie remains as an override knob for admin and family preview. Same release rebuilds onboarding into a lean five-step flow (welcome with name + pronouns, focus picker, conditions, communication style, recap with Open-Allie deep-link) and adds three new user-record fields (pronouns, focus, tone) that follow the account across devices.
Voice + Allie modernization wave. ElevenLabs is now the primary voice provider (WebRTC, handles iOS Safari gesture rules cleanly), Hume drops to secondary. Voice on iPhone works reliably; the AudioContext is pre-unlocked on the mic button click before the SDK's AudioWorklet loads. Typed repair-phrase registry (mic-denied, mic-muted, mic-init-failed, network-drop, audio-blocked, config-missing) with en/sv/bs catalogs so a patient sees a clear next step instead of "something didn't connect." Voice transcripts now persist to the same conversation_messages table as chat, and the voice context route loads recent chat turns so Allie picks up where the patient left off in chat without an explicit recall step.
Post-v0.30.0 audit fixes. Administrative surfaces inherit the design system instead of fighting it, two new test suites cover RLS and authenticated accessibility, and the GitLab CI pipeline matches GitHub Actions parity.
Partner API surface. Clinic EHRs integrate with rxpulse over HTTP rather than the v0.29 portal: bearer-key auth, six endpoints covering attribution roster + Co-Management visits + appeals + outcome snapshots + dry-run submission export + marketplace lead intake, plus a signed webhook outbox going the other way. /admin/partners gives super-admin a per-org integration dashboard with one-click key issuance. Pack A foundation work on PROM persistence + performance-year ramp + Co-Management billable math + the audit-trigger extension lands underneath the partner surface.
Email invitations + mobile UX papercuts. Provider and patient invitation flows go email-first by default: the clinic admin enters name + email + role, Resend ships an accept link, and the recipient sets their own password at /accept-invitation. The v0.29 admin-types-temporary-password path is preserved as the alternative for the in-clinic helper scenario where the clinic admin is sitting next to the patient with an iPad. The Allie chat input no longer triggers iOS Safari's auto-zoom on focus, the bottom nav's Allie button shadow stops getting clipped at the viewport edge, and the banner-tile copy on the marketing pages reads cleanly across the full width.
Onboarding focus-step refresh and a small home surface for joined community events. The goals + cohort pickers were doing busywork (goals are obvious from conditions and the rest of the data; cohort gets derived downstream from conditions plus demographics). Step 2 now keeps the condition cards (positive framing) and adds a single optional freeform context field for what forms cannot predict. Separately, when a patient taps Join on a community event, the event now surfaces in their daily plan if it is today and on a new "you are going to" home module otherwise.
Multi-tenant admin. Partner clinics get their own scoped surface at /clinic/{slug} where the clinic admin invites practitioners, creates patient logins, and assigns a primary referring clinician plus a care team. Each provider sees only their panel at /practice/{slug}; cross-doctor coverage flows through time-boxed grants on patient_access. The Postgres RLS predicate now resolves org membership and honors the new expires_at, so the safety property holds at the database layer rather than only at the API.
Onboarding rebuild and public sign-up closed. New patients land in a three-step welcome → focus → ready flow that finishes server-side; the session cookie refreshes once the loop closes so the first screen they see is the home tab they just configured. The public POST /api/auth/sign-up/email endpoint is closed; admins create accounts from /admin and pre-approve them, ahead of the partner-clinic onboarding work landing in 0.29.
Modular home gets ordering. Each row on /me/settings/home gains a Move Up / Move Down arrow pair, and Allie can do the same conversationally ("move recipes up", "X should be higher"). Pin order still wins, then your chosen order, then the score-based default.
Modular home: each patient picks which cards show on their home tab. New /me/settings/home page with a Hidden/Visible/Pinned toggle per card, plus Allie can do the same conversationally ("hide the news", "pin my care plan to the top"). Required cards stay locked on so the home never breaks.

Active care log: finishing a breathing or movement session now round-trips into today's care plan in the right time-of-day cluster, with a +XP toast and a small celebration card on first-time unlocks. Same surface on /home (compact "just logged" ribbon) and inside Allie's chat widget so the round-trip stays visible wherever the patient looks.
Clinical safety substrate goes in. Allie now routes crisis phrases to per-locale emergency numbers and defers dose-change questions to the care team. Citation contract shipped at the schema layer; chat-route enforcement on Allie's actual output lands next release.
Generative UI lands across the rest of the chat. Labs, vitals, and care plan now render as live cards inside the conversation the same way medications did in v0.22, so most things you ask Allie to "show" you surface as a tappable widget instead of a navigation. Allie's instant pre-written replies got a wider voice so she no longer sounds like a phrase book. And we ran the longest partner-feedback list in a while as a single sweep through the patient app: Discover redesigned, dark mode actually toggles, Add to Calendar and Share work on desktop, the medication popup scrolls, badges look like pills again, and a dozen more small things. Tests at 1233 of 1233.
Allie is the headline. She talks back faster, she now shows interactive cards inside the chat instead of pushing you to a separate page, and the chat sheet itself was rebuilt on a battle-tested foundation so the typing flow feels natural again. Behind the scenes we put the AI cost on a sustainable footing for scale. Plus the original design polish, a cleaner repo, and the AWS deployment path documented alongside Vercel. Tests green at 1203 of 1203. Deeper engineering notes live in GitLab for anyone who wants the wiring detail.
Cross-device profile sync, a long Notion-feedback list closed in one pass, and a more comfortable rhythm on every patient-app surface. Profile data now follows the account, not the device. The Today page reads cleaner, news and meal cards open on first tap, and the Health Score arc sits where the eye expects it.
Wider accessibility coverage across the marketing site, a /brand surface that documents itself, and a few pages that had been accidentally hidden from search engines are public again. Every email a visitor sees now reads rx-pulse.com.
Accessibility, performance, and a leaner AI stack. A live /accessibility statement, axe-core wired into CI, a roughly 12x reduction in marketing image weight, and OpenAI removed from the chat and embedding paths.
Design system foundation. Every dimension across the app, text sizes, corner radii, heights, widths, is now editable from one CSS file instead of search-and-replace across hundreds. Plus more space between sections on the Discover, Health and News surfaces so the patient app feels editorial rather than stacked.
Allie grows up. Real conversations that survive a refresh, a voice that finally feels alive, and a chat surface that stops jumping around when you type on your phone.
Password recovery, a redesigned authentication surface, the RxPulse Journal, and invite-based onboarding for the measured first cohort.
The patient app home becomes a modular dashboard, the B2B site gets a credentialed content hub at /insights, and the full discovery layer (search plus AI answer engines) is in place.
The clinical engine under the patient app, modular condition protocols, regulator-ready outcome reports, and the data plumbing that keeps everything accountable.
Code quality hardening, test suite synchronization, and import refactoring.
Bottom nav polish, Allie chat reliability, smoother mobile keyboard behavior.
Editorial UI overhaul, tinted task CTAs, Discover rebrand, instagrammable Daily Reflection, real community avatars, Health Records, Mode toggle, and a profile redesign.
Allie Intelligence, smart navigation, and voice-first companion experience
Community ecosystem, personalized nutrition, and visual brand refinement
Infrastructure hardening, scroll performance, and layout stability
Production hardening, device integration layer, and health progress visualization
Chat performance, parallel DB calls, and Next.js 16.2
Streaming chat with markdown and Google-first AI routing
Gemini Live API voice, real-time conversational AI with ephemeral tokens
Postgres Row-Level Security, AI safety tools, and production database layer
Interactive meal tracking, multi-tenant security, and recipe UX
44 recipes with AI-generated step images and health insights per dish
Neon PostgreSQL persistence, patient data, AI memory, and context caching
4-phase AI personalization engine, nutrition autopilot, and navigation redesign
Multi-expert UX audit, dynamic patient ID, and navigation overhaul
Condition packs, health insights pipeline, and modular ICD-10 clinical engine
Community system, daily plan with gamification, and AI-generated recipe images
Admin panel, responsive layout, and Better Auth deployment
Better Auth, self-hosted authentication replacing Clerk
Pulse V2, complete patient app rebuild from scratch
AI cost optimization, HIPAA compliance, and 931 tests, board-ready engineering
Health book redesign, multi-patient architecture, and Allie AI rename
Next.js 16 upgrade, React 19 Compiler, and Universal Data Adapter foundation
VITAL design system migration and community features
Allie AI companion, voice system, and task redesign
Unified AI entry point, squircle cards, and Rx-Diet branding
Patient app UX overhaul, 30 items across 5 sprints from multi-expert audit
Dashboard overhaul with CRM interaction patterns
10-chapter health book written for the patient rather than the clinician
Internationalization, 3 locales
Complete 6-page clinical dashboard
Complete patient data migration, 2,600 lines of structured clinical TypeScript
Project initialized