superdooper86
aaed64484c
fix: include anthropic.com cookies in all auth checks and API requests
...
Claude session cookies are on anthropic.com, not claude.ai. The login
window was not detecting auth (Cancel stayed, no Done) and API calls
were sent without the actual session token.
- claudeCookieHeader: include anthropic.com cookies so the token is
sent to the usage/bootstrap endpoints
- checkInitialSignInState: detect anthropic.com cookies on startup
- didFinish in LoginView: fire auth when anthropic.com cookies found
- signOut: clear anthropic.com data alongside claude.ai
- notAuthenticated catch: set isSignedIn = false so Settings stays
in sync with the main panel
2026-05-11 09:49:57 +02:00
superdooper86
e939bdb88b
fix: add browser headers to all API requests to resolve 403 on usage endpoint
...
Claude's usage/prepaid/overage endpoints require Origin, Referer, and
User-Agent headers to pass CORS/auth checks. Without them, bootstrap
succeeds (more permissive) but usage returns 403 -> 'Not signed in'.
Added claudeAPIRequest(for:) helper that sets all required browser-like
headers on every request. Bootstrap, usage, prepaid, overage, and the
orgs fallback all go through it.
2026-05-11 09:36:35 +02:00
superdooper86
de71ec2794
fix: load /login instead of root so premature auth detection is prevented
...
Loading https://claude.ai as the start URL caused didFinish to fire on
the landing page while stale/tracking cookies were already in
WKWebsiteDataStore. The 'any claude.ai cookie' check then fired
immediately, closing the login sheet before the user could sign in.
Loading /login ensures the URL-guard catches the initial page load and
only checks cookies after the real post-login redirect.
2026-05-11 09:25:45 +02:00
SuperDooper
d2eac62897
chore: bump to v1.2.1-beta.4
2026-05-11 08:58:05 +02:00
SuperDooper
8c64fc50ad
fix: checkInitialSignInState uses any claude.ai cookie, not specific names
2026-05-11 08:58:04 +02:00
SuperDooper
b2c138f665
fix: detect auth by any claude.ai cookie, not specific cookie names
2026-05-11 08:58:02 +02:00
SuperDooper
37a039e1d3
chore: bump to v1.2.1-beta.3
2026-05-10 23:40:30 +02:00
SuperDooper
8f3ead2f65
fix: replace stale 'No API key configured' with correct signed-out message
2026-05-10 23:40:29 +02:00
SuperDooper
7b0368b001
chore: bump to v1.2.1-beta.2
2026-05-10 23:28:39 +02:00
SuperDooper
4629aeffbc
fix: load claude.ai instead of /login so already-signed-in users are detected
2026-05-10 23:28:38 +02:00
SuperDooper
7bab6a0df0
chore: bump to v1.2.1-beta.1
2026-05-10 23:14:47 +02:00
SuperDooper
db6380fa66
fix: detect sign-in state from cookies on startup, add orgs API fallback for org ID
2026-05-10 23:14:45 +02:00
SuperDooper
a0fb6eabcf
chore: bump to v1.2.0
2026-05-08 23:19:23 +02:00
SuperDooper
44be1649a1
chore: bump to 1.1.4-beta.7
2026-05-08 23:10:34 +02:00
SuperDooper
1160712e1b
fix: remove ScrollView from main panel so popover auto-sizes to content
2026-05-08 23:10:22 +02:00
SuperDooper
a2d983b555
chore: bump to 1.1.4-beta.6
2026-05-08 23:04:53 +02:00
SuperDooper
0d807c2285
fix: Session Diary — remove Claude icon/header, split stats left/right
2026-05-08 23:04:52 +02:00
SuperDooper
5ad7bb26f0
Bump version to 1.1.4-beta.5
2026-05-08 19:31:18 +02:00
SuperDooper
132a2a8f8d
Consolidate bootstrap into single fetchBootstrap() call
2026-05-08 19:31:06 +02:00
SuperDooper
c9384f6424
Bump version to 1.1.4-beta.4
2026-05-08 19:26:57 +02:00
SuperDooper
e4693fc18f
Fix fetchUserEmail return type and capabilities subscript
2026-05-08 19:26:48 +02:00
SuperDooper
fd61face77
Bump version to 1.1.4-beta.3
2026-05-08 19:22:50 +02:00
SuperDooper
1f58a81a26
Parse plan label from bootstrap on every refresh via fetchUserEmail
2026-05-08 19:22:41 +02:00
SuperDooper
01d268c3e5
Bump version to 1.1.4-beta.2
2026-05-08 19:19:49 +02:00
SuperDooper
871d5245ac
Parse plan label from capabilities array instead of plan_type
2026-05-08 19:14:53 +02:00
SuperDooper
0524f9b791
Parse plan label from bootstrap API instead of hardcoding
2026-05-08 19:09:06 +02:00
SuperDooper
a8c2083397
fix: remove hardcoded orgId from cookie primer URL
2026-05-08 16:54:48 +02:00
SuperDooper
d8b75d279c
chore: bump version to 1.1.4-beta.1
2026-05-08 16:52:16 +02:00
SuperDooper
e10d79e5a6
fix: fetch org ID dynamically from bootstrap instead of hardcoding it
2026-05-08 16:49:44 +02:00
SuperDooper
06755de91d
chore: bump to 1.1.3 stable (build 40)
2026-05-08 11:19:38 +02:00
SuperDooper
e613ace503
chore: bump to 1.1.3-beta.5 (build 39)
2026-05-08 09:57:05 +02:00
SuperDooper
38d7683843
fix: fill popover background during resize animation
2026-05-08 09:56:41 +02:00
SuperDooper
a1bb186af2
chore: bump to 1.1.3-beta.4 (build 38)
2026-05-08 09:52:27 +02:00
SuperDooper
e93a4e6df5
fix: auto-resize popover to match SwiftUI content height
2026-05-08 09:52:04 +02:00
SuperDooper
90acbcb968
chore: bump to 1.1.3-beta.3 (build 37)
2026-05-08 09:34:52 +02:00
SuperDooper
f2f2be1305
fix: render sparkline with a single data point (flat line)
2026-05-08 09:34:38 +02:00
SuperDooper
f17694622c
fix: persist burn history across launches; show sparkline from first refresh
2026-05-08 09:34:33 +02:00
SuperDooper
1f357b9123
chore: bump to 1.1.3-beta.2 (build 36)
2026-05-08 09:21:42 +02:00
SuperDooper
9dee674ff0
fix: update banner label to '5 Hour Limit' and make banner tappable
2026-05-08 09:19:16 +02:00
james
c18054a810
Compact update banner — remove release notes, fix scroll issue; start 1.1.3 beta
2026-05-07 23:24:52 +02:00
james
d3dabc7843
v1.1.2 stable release
2026-05-07 23:14:32 +02:00
james
cfcb74f32b
Bump to 1.1.2-beta.7
2026-05-07 23:06:46 +02:00
james
76a8f433a7
Bump to 1.1.2-beta.6
2026-05-07 23:03:11 +02:00
james
26312290ac
Move update badge to own line to prevent name/version truncation; bump to 1.1.2-beta.5
2026-05-07 22:58:19 +02:00
james
235ab81efb
Fix crash in isNewer when latestVersion is empty; bump to 1.1.2-beta.4
2026-05-07 22:56:12 +02:00
james
d1ab5206bd
Set bundle version to 1.1.2-beta.3
2026-05-07 22:50:59 +02:00
james
7fc78d5a83
Set bundle version to 1.1.2-beta.2
2026-05-07 22:46:06 +02:00
james
818d4aa6c2
Set bundle version to 1.1.2-beta.1
2026-05-07 22:45:39 +02:00
james
2a01d6f5b8
Handle semver pre-release versions in isNewer; restore full version string in beta workflow
2026-05-07 22:42:35 +02:00
james
9be5069aac
v1.1.2-beta.1 — remove redundant window labels from card rows
2026-05-07 22:36:02 +02:00