fix: resolve specificStadium achievement ID mismatch

The Green Monster (Fenway) and Ivy League (Wrigley) achievements
weren't working because:
1. Symbolic IDs use lowercase sport (stadium_mlb_bos)
2. Sport enum uses uppercase raw values (MLB)
3. Visits store stadium UUIDs, not symbolic IDs

Added resolveSymbolicStadiumId() helper that:
- Uppercases the sport string before Sport(rawValue:)
- Looks up team by abbreviation and sport
- Returns the team's stadiumId as UUID string

Also fixed:
- getStadiumIdsForLeague returns UUID strings (not symbolic IDs)
- AchievementProgress.isEarned computed from progress OR stored record
- getStadiumIdsForDivision queries CanonicalTeam properly

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
This commit is contained in:
Trey t
2026-01-11 22:22:29 -06:00
parent dcd5edb229
commit 5c13650742
20 changed files with 1619 additions and 141 deletions

View File

@@ -2,4 +2,18 @@
7. build ios in app purchase for storekit
8. build complete receipt checking system to check if the user has purchased any subscriptions setting a value that can easily be checked anywhere in the app
9. use frontend-design skill to redesign the app
9. use frontend-design skill to redesign the app
Issue: Follow team start/end city does not work
Issue: By game gives error date range required but no date range shows
Issue: Date range should always show current selected shit
Issue: By dates with Chicago selected as must stop doesnt find any game
Issue: Im not sure scenario is updating when switched
Issue: The follow team start/end should have the same lookup as must see
Issue: Need to add most cities as sort on all trips views
Issue: Must stop needs to be home team. Just did a search with Chicago as must stop and it had Chi as away team
Issue: Coast to coast on home should filter by most stops
Issue: Importing photo from iPhone, taken with iPhone does not import meta data
Issue: No map should be movable on any screen. It should show North America only and should not be movable
Issue: In schedule view today should be highlighted
Issue: Redesign all loading screens in the app - current loading spinner is ugly and feels unpolished