- Rename waitForExistence() to waitForAppearance() in UI test helpers
to fix infinite recursion caused by shadowing XCUIElement's built-in method
- Add else branch in fetchItemPrice() so watchlist items show "Parse Error"
instead of staying stuck in loading state when JSON parsing fails
- Change AttackResult.id from computed property (generating new UUID on
every access) to stored property assigned once at init, preventing
SwiftUI re-render thrashing in ForEach