v0.4.26 - 0.4.54compliancesuperauthmobileemailsobservability

Division 296 warning, sign-in polish, mobile and email fixes

·4 min read

It has been a few weeks since the last update – not for lack of activity, just nothing that felt headline-worthy on its own. The main focus has been on a big update due out very soon. In the meantime plenty has landed in prod across compliance, sign-in, mobile, and the bits you do not normally see. Here is the rundown.

Division 296 warning

If your projection crosses the $3M (or $10M) Division 296 threshold, the calculator now flags it inline with the relevant disclaimer.

Division 296 is the new tax on super earnings attributable to balances above $3M (an extra 15%, on top of the usual 15% earnings tax), with a further 10% step for the portion above $10M. It comes into effect at the start of FY27, which is just around the corner.

The warning surfaces the year you cross the threshold so you can see it coming rather than discovering it as a quiet line in the projection table.

A note on what is and is not modelled: the tax only applies to earnings on the portion of your balance above the threshold, not to earnings on the portion below it. We have not wired that proportional calculation into the engine yet, so the warning is there to flag the threshold crossing visually until it is.

Sign-in and session polish

A round of work to make signing in and out feel like one app rather than three.

Cross-tab sync - sign in or sign out in one tab and every other tab updates immediately.

Federated Auth0 logout - signing out now properly clears your session at the identity provider too, not just locally. Sign-in goes through the right flow next time.

Expired sessions get an explicit message - if your session has expired the app now tells you and signs you out cleanly, instead of silently freezing the UI.

Mobile polish on the Freedom Calculator

A bunch of small mobile fixes that add up:

  • Scenario buttons now collapse into an overflow menu on small screens instead of wrapping awkwardly
  • The Reset button shows the label alongside the icon again
  • The Export and Import buttons no longer stretch full-width on desktop
  • General button layout tidied so nothing fights for space

We also fixed two pesky page-level bugs: dropdown menus no longer toggle body overflow, and opening a modal or dropdown no longer causes a scrollbar layout shift behind it.

Email fixes

A few annoying email rendering issues are now resolved:

  • The CTA button renders correctly in Outlook desktop (it was falling back to a transparent background)
  • Email backgrounds survive email-client dark mode properly
  • A premium welcome email now goes out automatically when a free user upgrades

Pricing displays GST inclusive

Pricing is now shown GST inclusive to match what you actually pay. No change to the underlying price - just clearer presentation.

Smaller fixes

  • Duplicate signup prevention - the checkout flow now checks for an existing subscription before letting you start a new one
  • Instant premium unlock after a successful checkout, with a feedback email alert so we know it landed
  • Savings Rate tile shows a skeleton while the backend computes it, then uses the backend value (no more flicker between two numbers)
  • The What's New modal no longer pops up mid-checkout

Under the hood

  • Full-stack observability is now wired in. Datastore tracing flows through pgx with proper transaction context, so we can see exactly where time goes inside a request.
  • A site-wide maintenance mode toggle has been added so we can take the app offline gracefully when we need to.

If anything feels off, hit Feedback in the bottom-right - it lands straight with us.