feat: rewrite bootstrap, fix CloudKit sync, update canonical data, and UI fixes

- Rewrite BootstrapService: remove all legacy code paths (JSONStadium,
  JSONGame, bootstrapStadiumsLegacy, bootstrapGamesLegacy, venue aliases,
  createDefaultLeagueStructure), require canonical JSON files only
- Add clearCanonicalData() to handle partial bootstrap recovery (prevents
  duplicate key crashes from interrupted first-launch)
- Fix nullable stadium_canonical_id in games (4 MLS games have null)
- Fix CKModels: logoUrl case, conference/division field keys
- Fix CanonicalSyncService: sync conferenceCanonicalId/divisionCanonicalId
- Add sports_canonical.json and DemoMode.swift
- Delete legacy stadiums.json and games.json
- Update all canonical resource JSON files with latest data
- Fix TripWizardView horizontal scrolling with GeometryReader constraint
- Update RegionMapSelector, TripDetailView, TripOptionsView UI improvements
- Add DateRangePicker, PlanningModeStep, SportsStep enhancements
- Update UI tests and marketing-videos config

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
This commit is contained in:
Trey t
2026-02-06 00:06:19 -06:00
parent 12f959ab8d
commit fdcecafaa3
29 changed files with 93279 additions and 157943 deletions

View File

@@ -10,7 +10,31 @@
"render:bucketlist": "remotion render TheBucketList out/the-bucket-list.mp4",
"render:squad": "remotion render TheSquad out/the-squad.mp4",
"render:handoff": "remotion render TheHandoff out/the-handoff.mp4",
"render:all": "npm run render:route && npm run render:checklist && npm run render:bucketlist && npm run render:squad && npm run render:handoff"
"render:fantest": "remotion render TheFanTest out/the-fan-test.mp4",
"render:groupchat": "remotion render TheGroupChat out/the-group-chat.mp4",
"render:all-originals": "npm run render:route && npm run render:checklist && npm run render:bucketlist && npm run render:squad && npm run render:handoff && npm run render:fantest && npm run render:groupchat",
"render:V03_H01": "remotion render V03_H01 out/week1/V03_H01.mp4",
"render:V10_H01": "remotion render V10_H01 out/week1/V10_H01.mp4",
"render:V03_H02": "remotion render V03_H02 out/week1/V03_H02.mp4",
"render:V10_H02": "remotion render V10_H02 out/week1/V10_H02.mp4",
"render:V03_H03": "remotion render V03_H03 out/week1/V03_H03.mp4",
"render:V17_H01": "remotion render V17_H01 out/week1/V17_H01.mp4",
"render:V17_H02": "remotion render V17_H02 out/week1/V17_H02.mp4",
"render:V06_H01": "remotion render V06_H01 out/week1/V06_H01.mp4",
"render:V08_H01": "remotion render V08_H01 out/week1/V08_H01.mp4",
"render:V05_LA_01": "remotion render V05_LA_01 out/week1/V05_LA_01.mp4",
"render:V05_NY_01": "remotion render V05_NY_01 out/week1/V05_NY_01.mp4",
"render:V05_TX_01": "remotion render V05_TX_01 out/week1/V05_TX_01.mp4",
"render:V05_CA_01": "remotion render V05_CA_01 out/week1/V05_CA_01.mp4",
"render:V08_LA_01": "remotion render V08_LA_01 out/week1/V08_LA_01.mp4",
"render:V04_H01": "remotion render V04_H01 out/week1/V04_H01.mp4",
"render:V20_H01": "remotion render V20_H01 out/week1/V20_H01.mp4",
"render:V14_H01": "remotion render V14_H01 out/week1/V14_H01.mp4",
"render:V04_H02": "remotion render V04_H02 out/week1/V04_H02.mp4",
"render:V02_H01": "remotion render V02_H01 out/week1/V02_H01.mp4",
"render:V19_H01": "remotion render V19_H01 out/week1/V19_H01.mp4",
"render:week1": "bash scripts/render-week1.sh",
"render:all": "npm run render:all-originals && npm run render:week1"
},
"type": "module",
"dependencies": {