Compare commits

...
6 changed files with 18 additions and 29 deletions
+4 -2
View File
@@ -75,5 +75,7 @@ jobs:
git config user.email "github-actions[bot]@users.noreply.github.com"
git add version-beta.json README.md
git commit -m "Beta release ${{ github.ref_name }}"
git pull --rebase origin main
git push origin HEAD:main
for i in 1 2 3 4 5; do
git pull --rebase origin main && git push origin HEAD:main && break
echo "Push attempt $i failed, retrying..."; sleep 3
done
+7 -16
View File
@@ -38,7 +38,7 @@ struct DiagnosticsView: View {
Divider()
Text("Email and org IDs are redacted when copied.")
Text("Org IDs are redacted when copied.")
.font(.system(size: 10))
.foregroundColor(.secondary)
.frame(maxWidth: .infinity, alignment: .leading)
@@ -74,17 +74,6 @@ struct DiagnosticsView: View {
Divider()
// Cookie summary
DiagSection(title: "Cookie Store") {
DiagRow("Total cookies", "\(vm.diagCookieCount)")
DiagRow("claude.ai cookies", "\(vm.diagClaudeCookieCount)")
DiagRow("All domains", vm.diagCookieDomains.isEmpty
? "(none — never fetched)"
: vm.diagCookieDomains.joined(separator: ", "))
}
Divider()
// Live cookie list
DiagSection(title: "Live Cookie Names (WKWebsiteDataStore.default)") {
if loadingCookies {
@@ -156,14 +145,16 @@ struct DiagnosticsView: View {
lines.append("=== ClaudeChecker Diagnostics ===")
lines.append("Version: \(Bundle.main.infoDictionary?["CFBundleShortVersionString"] as? String ?? "?") (\(Bundle.main.infoDictionary?["CFBundleVersion"] as? String ?? "?"))")
lines.append("Signed in: \(vm.isSignedIn ? "Yes" : "No")")
lines.append("Org ID: \(UserDefaults.standard.string(forKey: \"claude_org_id\") ?? \"(none)\")")
lines.append("lastActiveOrg: \(vm.diagLastActiveOrg.isEmpty ? \"(not read)\" : vm.diagLastActiveOrg)")
lines.append("Error: \(vm.errorMessage ?? "(none)")")
lines.append("")
lines.append("Last path: \(vm.diagLastPath)")
lines.append("Last status: \(vm.diagLastStatus)")
lines.append("Last error: \(vm.diagLastError)")
lines.append("Total cookies: \(vm.diagCookieCount)")
lines.append("Claude cookies: \(vm.diagClaudeCookieCount)")
lines.append("Domains: \(vm.diagCookieDomains.joined(separator: ", "))")
lines.append("Last error: \(vm.diagLastError.isEmpty ? \"(none)\" : vm.diagLastError)")
if let t = vm.diagLastFetch {
lines.append("Time: \(t.formatted(date: .omitted, time: .standard))")
}
lines.append("")
lines.append("")
lines.append("Live cookies:")
+2 -2
View File
@@ -15,9 +15,9 @@
<key>CFBundlePackageType</key>
<string>APPL</string>
<key>CFBundleShortVersionString</key>
<string>1.3.3-beta.2</string>
<string>1.3.3-beta.4</string>
<key>CFBundleVersion</key>
<string>78</string>
<string>80</string>
<key>LSMinimumSystemVersion</key>
<string>13.0</string>
<key>LSUIElement</key>
+2 -2
View File
@@ -12,8 +12,8 @@
[![License](https://img.shields.io/badge/license-MIT-blue?style=flat)](LICENSE)
<br/>
[![macOS Stable](https://img.shields.io/badge/macOS_Stable-1.3.2-orange?style=flat)](https://github.com/superdooper86/claudechecker/releases)
[![macOS Beta](https://img.shields.io/badge/macOS_Beta-1.3.3--beta.1-orange?style=flat)](https://github.com/superdooper86/claudechecker/releases/tag/v1.3.3-beta.1) <!-- BETA_BADGE -->
[![Win Beta](https://img.shields.io/badge/Win_Beta-0.0.1--beta.52-blue?style=flat)](https://github.com/superdooper86/claudechecker/releases/tag/win-v0.0.1-beta.52) <!-- WIN_BETA_BADGE --> <!-- WIN_STABLE_BADGE -->
[![macOS Beta](https://img.shields.io/badge/macOS_Beta-1.3.3--beta.3-orange?style=flat)](https://github.com/superdooper86/claudechecker/releases/tag/v1.3.3-beta.3) <!-- BETA_BADGE -->
[![Win Beta](https://img.shields.io/badge/Win_Beta-0.0.1--beta.54-blue?style=flat)](https://github.com/superdooper86/claudechecker/releases/tag/win-v0.0.1-beta.54) <!-- WIN_BETA_BADGE -->
</div>
+1 -5
View File
@@ -1,5 +1 @@
{
"version": "1.3.3-beta.1",
"url": "https://github.com/superdooper86/claudechecker/releases/download/v1.3.3-beta.1/ClaudeChecker.zip",
"notes": "## What's new in v1.3.2\n\n### Reliability\n- Data now loads automatically on every app launch without requiring manual re-authentication. The background WebView is anchored in a hidden window so macOS no longer throttles its JavaScript execution."
}
{"version": "1.3.3-beta.3", "url": "https://github.com/superdooper86/claudechecker/releases/download/v1.3.3-beta.3/ClaudeChecker.zip", "notes": "## What's new in v1.3.2\n\n### Reliability\n- Data now loads automatically on every app launch without requiring manual re-authentication. The background WebView is anchored in a hidden window so macOS no longer throttles its JavaScript execution."}
+2 -2
View File
@@ -1,5 +1,5 @@
{
"version": "0.0.1-beta.52",
"url": "https://github.com/superdooper86/claudechecker/releases/download/win-v0.0.1-beta.52/ClaudeChecker-Windows.zip",
"version": "0.0.1-beta.54",
"url": "https://github.com/superdooper86/claudechecker/releases/download/win-v0.0.1-beta.54/ClaudeChecker-Windows.zip",
"notes": "## What's new in beta.49\r\n\r\n### Architecture\r\n- All data (usage, plan, overage, prepaid credits) now fetched via the persistent background WebView2 — the same always-live session as the macOS app, so Cloudflare cookies never expire between refreshes\r\n- HttpClient path kept only as a brief startup fallback before the browser is ready\r\n- Settings file simplified: only stores session signal, burn history, and user preferences — no more cached API responses\r\n\r\n### Bug fixes\r\n- Plan label (e.g. \"Pro\") now updates on every refresh, not just at login\r\n- Extra Usage Credits values now correct (were 100× too large)\r\n- Limit and balance now update live on every refresh\r\n- Refresh interval dropdown now shows \"1 min\", \"2 min\" etc. correctly\r\n- ComboBox no longer flashes bright blue when clicked\r\n- Buttons now show a visible pressed state\r\n- Footer \"Updated X ago\" counter now ticks every second; shows \"X min, Y sec ago\" past 60 s\r\n- Removed stray sparkline bars from the 5 h and 7 d limit cards\r\n- App window now shown on launch\r\n\r\n### UI improvements\r\n- Gauge percentage larger, \"used\" label removed\r\n- Each limit card now shows an \"after reset\" or \"today HH:MM\" badge\r\n- Session Diary card redesigned to match macOS layout (stats row + sparkline, no Claude header)\r\n- Reset date moved inline with time remaining"
}