Skip to main content

This week’s bug list for Vela iOS reads like the same mistake wearing five different outfits. SwiftUI lets you stack two .sheet modifiers on one view and it will not warn you, it just silently honours the last one and ignores the first. Settings had exactly that: two sheets, so tapping "Start fresh" did precisely nothing, no error, no crash, just a button that looked live and wasn’t. Home had the identical shape: two stacked sheets meant the Income, Fixed costs and Savings explain cards opened nothing when tapped. Same bug, different screen, caught only because I went and actually tapped every card rather than trusting that a build without red squiggles meant a working app.

The notifications bell had its own variant: an identity modifier was destroying and recreating its own state, so opening the bell and closing it happened in the same gesture, a loop that looked like a broken tap when the real cause was the view rebuilding itself out from under its own state. The plan-item status chip had a third shape of the same problem, a button sitting inside a row that also had its own tap gesture, and SwiftUI swallowed the button entirely. Fixed by making both siblings, both borderless buttons, no more competing gesture recognisers.

None of these threw an exception. All four looked fine in a screenshot. That’s the part worth saying plainly: in SwiftUI, compiles clean and works are not the same claim, and I only found these by clicking through the app like a user would, not by reading the diff.

Smaller fixes in the same sweep: the topbar’s privacy eye that did nothing got replaced with a working avatar, month nav and bell; the widget scheme was still selectable in Xcode and crashed on run if picked; and a CSV mis-categorisation where a card collectible filed itself under car costs, because the fallback matcher was matching a short substring inside the longer word. Small, and it would have been funny right up until it quietly wrecked a spending report.

Leave a Reply