Commit Graph

16 Commits

Author SHA1 Message Date
e51dd58a6b Fix remaining ProjectListResponse reference in TimeEntryFormView 2026-02-19 19:07:36 +01:00
39d6ea00d9 Fix iOS list response decoding to match plain-array backend responses
GET /clients and GET /projects return bare arrays, not wrapped objects.
Remove ClientListResponse and ProjectListResponse wrapper structs and
update ClientsViewModel, ProjectsViewModel, and TimerViewModel to decode
[Client] and [Project] directly.
2026-02-19 19:05:43 +01:00
48cd82ab4f Fix token loss: cache JWT in-memory, log keychain errors
Keychain writes silently failed (missing keychain-access-groups entitlement
on simulator), causing the token to disappear between handleTokenResponse
and the first API call. The in-memory cache ensures the token is always
available within the session; the keychain still persists it across launches
when entitlements allow.
2026-02-19 19:00:16 +01:00
062af3b2da Add AuthManager OSLog tracing and fix URL construction in APIEndpoints 2026-02-19 18:58:31 +01:00
1aac76af4a Add detailed logging to auth flow on backend and iOS 2026-02-19 18:55:00 +01:00
946cd35832 Replace IDP token passthrough with backend-issued JWT for iOS auth
iOS clients now exchange the OIDC authorization code for a backend-signed
HS256 JWT via POST /auth/token. All subsequent API requests authenticate
using this JWT as a Bearer token, verified locally — no per-request IDP
call is needed. Web frontend session-cookie auth is unchanged.
2026-02-19 18:45:03 +01:00
1ca76b0fec fix 2026-02-18 22:58:41 +01:00
5f23961f50 fix 2026-02-18 22:43:08 +01:00
7e8e220e3b update 2026-02-18 22:37:49 +01:00
ed180500a6 fix 2026-02-18 21:54:21 +01:00
165b1b9c67 fix 2026-02-18 21:53:43 +01:00
2534011506 fix 2026-02-18 21:53:01 +01:00
4c0d8be018 fix 2026-02-18 21:51:43 +01:00
b66b433c08 fix 2026-02-18 21:48:55 +01:00
7659b01614 adds git ignore 2026-02-18 21:45:09 +01:00
4e49741dfa adds ios 2026-02-18 21:35:32 +01:00