miracle.fyi Log in →

Deep bug hunt — 19 fixes, including a data-safety one

An eight-part sweep through the app — journaling, sync, routing, capture, settings — with each finding verified against the code before it was fixed.

Data safety

  • "Delete account data" now actually deletes it. The button previously cleared only part of your data on the server, so everything came back on reload. It now wipes your to-dos, goals, journal, and vision boards server-side (pacts are deliberately kept — they can involve money; archive those from the Pacts tab).
  • Signing out fully clears this browser, so the next person to sign in on the same device can't inherit — or accidentally upload — your data.
  • If the app couldn't reach the server at startup (offline, or during a deploy), it used to render a blank page and give up. It now shows your app and quietly retries, without ever pushing stale data over your saved data.

Journaling & streaks

  • Entries typed just after midnight — or after your device wakes from sleep — now land on the day you're looking at, instead of silently jumping to the new day and breaking your streak.
  • The rest-day message is honest now: a rest day only "preserves the streak" if the day's journal is already done — otherwise it just covers the goal, and it says so.
  • Pact stats no longer show your current streak as 0 in the evening or early morning (it was counting against a UTC clock instead of your timezone).

Little things that were quietly wrong

  • The "Update ready — tap to refresh" banner can no longer turn a later toast into a surprise reload.
  • Pressing Escape with two panels stacked now closes only the top one (it used to close both — and could lose a North Star edit).
  • The modal's "Today" star now visibly updates when you tap it; archiving from the modal closes the sheet so you can see the Undo.
  • Reopening the North Star builder no longer mangles custom text like "my wife and my two boys".
  • The Vision tab now keeps its place in your tab order; forwarded emails with a "+tag" address and evening "due tomorrow" captures resolve correctly.
Post on X Facebook

Get the next one by email

One short email when something meaningful ships. No streaks required.