Build LogiOS
#01
2026-07-055 min read

The back-nav went to Accounts. It should have gone to the calendar.

Weeks of Accounts build work passed SwiftUI preview on every check. The first hands-on device install found gaps the simulator had never reported. Round two found a navigation bug — Back from Day view landed in Accounts, not the calendar — that the simulator had never seen.

Read post
iOSSwift
#02
2026-07-015 min read

The check-in button opened a transaction form: how three device-QA bugs made bb-finance's Home gamification navigable

The three Home gamification blocks in bb-finance — Quests, Level, Streak — were pulling live data and doing nothing else. Tapping the Streak check-in opened the transaction form instead. Three bugs from the AnF device-QA round forced Phase N, which built the detail screens and routing that turned the blocks from decoration into navigation.

Read post
SwiftUIiOS
#03
2026-06-306 min read

Back from the day view landed on Accounts — the simulator had nothing to say about it

Phase O added a full-screen month calendar inside the Accounts tab, taking the navigation to three levels. Round-2 device QA found A8: tapping Back from a day view vaulted over the calendar entirely and returned to the Accounts screen. The simulator had approved the same flow without complaint.

Read post
SwiftUIiOS
#04
2026-06-295 min read

Calendar → Day → Back Landed on Accounts. The Stack Was Correct; the Model Wasn't.

A8 in the round-2 device QA pass: tapping Back from the day view skipped the full-screen calendar and landed on Accounts. The NavigationStack had done nothing wrong. The navigation model had no concept of levels.

Read post
iOSSwift
#05
2026-06-276 min read

One PR, three game systems: why pure generators kept the ledger honest

Shipping streaks, quests, and levels as a single PR forced a specific architecture: pure generators with no side effects, persisted targets decoupled from quest logic, and celebration overlays computed after state transitions. This is the constraint that produced those decisions.

Read post