Scouts fire immediately on OAuth connect instead of waiting for 5-minute cron cycle. New accounts get a 48-hour notification boost so useful nudges arrive right away.
Location-aware weather and scouts
User location now persisted from chat requests. Weather scout uses your actual coordinates instead of defaulting to NYC.
Fixes
Fixed 15 stale test failures across 7 test files
February 7, 2026
Fixes
Fixed APNS push delivery for TestFlight
Switched from sandbox to production APNS gateway. TestFlight builds use production push — sandbox tokens were silently failing.
Stale device token cleanup on all rejection types
Previously only caught "BadDeviceToken" — now handles all APNS rejection codes so old tokens don't keep retrying.
Improvements
Secured internal API endpoints
Moved internal API key from query parameters (logged in plaintext) to X-Internal-Key header. Rotated the exposed key.
February 5, 2026
New Features
Streaming chat responses
Streaming eliminates delayed responses. Words appear in real-time as Doris thinks. Tool calls handled server-side with stream pause/resume.
Doris got smarter
Upgraded to the latest language model for more nuanced, helpful conversations.
Fixes
Email scout now works in production
Email provider rewritten to use REST API with OAuth tokens directly, eliminating dependency on local token files that don't exist in production.
Email scout daemon actually runs in multi-tenant mode
EmailScout was missing from the daemon's scout class list — it never ran regardless of toggle state.
Fixed scout settings save crash
Wake time strings were being passed directly to asyncpg instead of as Python datetime.time objects, crashing the entire settings endpoint.
iOS location data now flows to backend
Location context from iOS client is wired into system prompt for both chat and streaming endpoints.
February 4, 2026
New Features
Per-user API usage tracking
Full cost tracking per user — token usage, embeddings, and background processing.
Wisdom-informed escalation
Doris learns from missed escalations. If an important email was suppressed before, she remembers and adjusts her threshold next time.
Cloud-synced reminders access
Doris can now read your Apple Reminders. Ask her what's on your list and she'll check.
iOS OAuth redirect flow
OAuth callbacks now redirect properly to the mydoris:// app scheme instead of showing a dead-end HTML page.
Improvements
Auto-cleanup stale device tokens on push failure
Bad APNS tokens are automatically deactivated so we stop retrying them on every notification cycle.
Scout notifications default to enabled for new users
Coding restriction added to WORM persona
Doris now redirects programming questions to Claude, ChatGPT, or Cursor.
Fixes
Fixed create_entity and store_memory tool errors
Entity descriptions now stored in metadata correctly. Memory category mapping fixed for backwards compatibility.
Logging switched to stdout
Railway was displaying normal INFO messages as red error logs because they were going to stderr.