v4.0
v4.0 — Security, Performance & Coach Expansion
Shipped: 2026-06-06 | Phases: 4 | Plans: 12 | Requirements: 8/10
What's New
Deep-link security guard, full @Observable migration, four-provider AI Coach, and complete pt-PT translations.
Security
allowsRemoteInvocationguard blocks state-changing BLE commands from externalgooseswift://deep links (SEC-01; upstream PR #15)
Performance — @Observable migration
- 68
@Publishedproperties removed acrossGooseAppModel,HealthDataStore,GooseBLEClient NavigationRequestObserverwarning eliminated; proper@Environmentconsumption in all views
AI Coach (multi-provider)
CoachProviderprotocol +CoachProviderRegistry- Four backends: ChatGPT, Claude, Custom endpoint, Gemini (OAuth PKCE)
- Provider picker UI in Coach Settings; isolated per-provider Keychain storage
Localisation — 128 new pt-PT strings for all Coach UI; 0 untranslated after gap-closure commit
Limitations
- Gemini OAuth, provider switching, and credential isolation require live API keys for human verification