Show usage stats for OpenAI Codex and Claude Code, without having to login.
267 matches across 9 categories. Click a row to expand file-level details.
| Severity | File | Line | Snippet |
|---|---|---|---|
| HIGH | …s/CodexBarTests/ClaudeOAuthCredentialsStoreTests.swift | 0 | { "claudeaioauth": { "accesstoken": "\(accesstoken)", "expiresat": \(millis), "scopes": ["user:profile"]\(refreshfield) |
| HIGH | …ests/ClaudeOAuthCredentialsStoreSecurityCLITests.swift | 0 | { "claudeaioauth": { "accesstoken": "\(accesstoken)", "expiresat": \(millis), "scopes": ["user:profile"]\(refreshfield) |
| HIGH | …OAuthCredentialsStoreTemporaryKeychainCacheTests.swift | 0 | { "claudeaioauth": { "accesstoken": "\(accesstoken)", "expiresat": \(millis), "scopes": ["user:profile"]\(refreshfield) |
| HIGH | …arTests/ClaudeOAuthDelegatedRefreshRecoveryTests.swift | 0 | { "claudeaioauth": { "accesstoken": "\(accesstoken)", "expiresat": \(millis), "scopes": ["user:profile"]\(refreshfield) |
| HIGH | …sts/ClaudeOAuthCredentialsStorePromptPolicyTests.swift | 0 | { "claudeaioauth": { "accesstoken": "\(accesstoken)", "expiresat": \(millis), "scopes": ["user:profile"]\(refreshfield) |
| HIGH | Tests/CodexBarTests/DeepSeekUsageCostParserTests.swift | 0 | { "code": 0, "msg": "", "data": { "biz_code": 0, "biz_msg": "", "biz_data": [ { "total": [], "days": [], "currency": "cn |
| HIGH | Tests/CodexBarTests/DeepSeekUsageCostParserTests.swift | 0 | { "code": 0, "msg": "", "data": { "biz_code": 0, "biz_msg": "", "biz_data": [ { "total": [], "days": [], "currency": "cn |
| HIGH | Tests/CodexBarTests/DeepSeekUsageCostParserTests.swift | 0 | { "code": 0, "msg": "", "data": { "biz_code": 0, "biz_msg": "", "biz_data": [ { "total": [], "days": [], "currency": "cn |
| HIGH | Tests/CodexBarTests/DeepSeekUsageCostParserTests.swift | 0 | { "code": 0, "msg": "", "data": { "biz_code": 0, "biz_msg": "", "biz_data": [ { "total": [], "days": [], "currency": "cn |
| HIGH | Tests/CodexBarTests/StepFunUsageFetcherTests.swift | 0 | { "accesstoken": {"raw": "new-access"}, "refreshtoken": {"raw": "new-refresh"} } |
| HIGH | Tests/CodexBarTests/StepFunUsageFetcherTests.swift | 0 | { "accesstoken": {"raw": "new-access"}, "refreshtoken": {"raw": "new-refresh"} } |
| HIGH | Tests/CodexBarTests/StepFunUsageFetcherTests.swift | 0 | { "accesstoken": {"raw": "new-access"}, "refreshtoken": {"raw": "new-refresh"} } |
| HIGH | Tests/CodexBarTests/StepFunUsageFetcherTests.swift | 0 | { "accesstoken": {"raw": "new-access"}, "refreshtoken": {"raw": "new-refresh"} } |
| HIGH | Tests/CodexBarTests/ClaudeUsageTests.swift | 0 | { "five_hour": { "utilization": 7, "resets_at": "2025-12-23t16:00:00.000z" }, "seven_day": { "utilization": 21, "resets_ |
| HIGH | Tests/CodexBarTests/ClaudeUsageTests.swift | 0 | { "five_hour": { "utilization": 7, "resets_at": "2025-12-23t16:00:00.000z" }, "seven_day": { "utilization": 21, "resets_ |
| HIGH | …arTests/ClaudeOAuthDelegatedRefreshRecoveryTests.swift | 0 | { "five_hour": { "utilization": 7, "resets_at": "2025-12-23t16:00:00.000z" }, "seven_day": { "utilization": 21, "resets_ |
| HIGH | Tests/CodexBarTests/MiniMaxProviderTests.swift | 0 | { "base_resp": { "status_code": 0 }, "current_subscribe_title": "max", "model_remains": [ { "current_interval_total_coun |
| HIGH | Tests/CodexBarTests/MiniMaxAPITokenFetchTests.swift | 0 | { "base_resp": { "status_code": 0 }, "current_subscribe_title": "max", "model_remains": [ { "current_interval_total_coun |
| HIGH | Tests/CodexBarTests/MiniMaxAPITokenFetchTests.swift | 0 | { "base_resp": { "status_code": 0 }, "current_subscribe_title": "max", "model_remains": [ { "current_interval_total_coun |
| HIGH | Tests/CodexBarTests/DeepSeekUsageFetcherTests.swift | 0 | { "is_available": true, "balance_infos": [ { "currency": "usd", "total_balance": "50.00", "granted_balance": "10.00", "t |
| HIGH | Tests/CodexBarTests/DeepSeekUsageFetcherTests.swift | 0 | { "is_available": true, "balance_infos": [ { "currency": "usd", "total_balance": "50.00", "granted_balance": "10.00", "t |
| HIGH | Tests/CodexBarTests/DeepSeekUsageFetcherTests.swift | 0 | { "is_available": true, "balance_infos": [ { "currency": "usd", "total_balance": "50.00", "granted_balance": "10.00", "t |
| HIGH | Tests/CodexBarTests/DeepSeekUsageFetcherTests.swift | 0 | { "is_available": true, "balance_infos": [ { "currency": "usd", "total_balance": "50.00", "granted_balance": "10.00", "t |
| HIGH | Tests/CodexBarTests/FactoryStatusProbeFetchTests.swift | 0 | { "organization": { "id": "org_1", "name": "acme", "subscription": { "factorytier": "team", "orbsubscription": { "plan": |
| HIGH | Tests/CodexBarTests/FactoryStatusProbeFetchTests.swift | 0 | { "organization": { "id": "org_1", "name": "acme", "subscription": { "factorytier": "team", "orbsubscription": { "plan": |
| HIGH | Tests/CodexBarTests/FactoryStatusProbeFetchTests.swift | 0 | { "organization": { "id": "org_1", "name": "acme", "subscription": { "factorytier": "team", "orbsubscription": { "plan": |
| HIGH | Tests/CodexBarTests/FactoryStatusProbeFetchTests.swift | 0 | { "organization": { "id": "org_1", "name": "acme", "subscription": { "factorytier": "team", "orbsubscription": { "plan": |
| HIGH | Tests/CodexBarTests/FactoryStatusProbeFetchTests.swift | 0 | { "organization": { "id": "org_1", "name": "acme", "subscription": { "factorytier": "team", "orbsubscription": { "plan": |
| HIGH | Tests/CodexBarTests/FactoryStatusProbeFetchTests.swift | 0 | { "organization": { "id": "org_1", "name": "acme", "subscription": { "factorytier": "team", "orbsubscription": { "plan": |
| HIGH | Tests/CodexBarTests/FactoryStatusProbeFetchTests.swift | 0 | { "organization": { "id": "org_1", "name": "acme", "subscription": { "factorytier": "team", "orbsubscription": { "plan": |
| HIGH | Tests/CodexBarTests/JetBrainsStatusProbeTests.swift | 0 | <?xml version="1.0" encoding="utf-8"?> <application> <component name="aiassistantquotamanager2"> <option name="quotainfo |
| HIGH | Tests/CodexBarTests/JetBrainsStatusProbeTests.swift | 0 | <?xml version="1.0" encoding="utf-8"?> <application> <component name="aiassistantquotamanager2"> <option name="quotainfo |
| HIGH | TestsLinux/JetBrainsParserLinuxTests.swift | 0 | <?xml version="1.0" encoding="utf-8"?> <application> <component name="aiassistantquotamanager2"> <option name="quotainfo |
| HIGH | Tests/CodexBarTests/JetBrainsStatusProbeTests.swift | 0 | <?xml version="1.0" encoding="utf-8"?> <application> <component name="aiassistantquotamanager2"> <option name="quotainfo |
| HIGH | Tests/CodexBarTests/JetBrainsStatusProbeTests.swift | 0 | <?xml version="1.0" encoding="utf-8"?> <application> <component name="aiassistantquotamanager2"> <option name="quotainfo |
| HIGH | TestsLinux/JetBrainsParserLinuxTests.swift | 0 | <?xml version="1.0" encoding="utf-8"?> <application> <component name="aiassistantquotamanager2"> <option name="quotainfo |
| HIGH | TestsLinux/JetBrainsParserLinuxTests.swift | 0 | <?xml version="1.0" encoding="utf-8"?> <application> <component name="aiassistantquotamanager2"> <option name="quotainfo |
| Severity | File | Line | Snippet |
|---|---|---|---|
| LOW | …xBarTests/OpenAIDashboardFetcherCreditsWaitTests.swift | 124 | signedInEmail: "user@example.com", |
| LOW | …xBarTests/OpenAIDashboardFetcherCreditsWaitTests.swift | 136 | signedInEmail: "user@example.com", |
| LOW | Tests/CodexBarTests/KiroStatusProbeTests.swift | 464 | #expect(account.email == "user@example.com") |
| LOW | Tests/CodexBarTests/KiroStatusProbeTests.swift | 472 | stdout: "user@example.com", |
| LOW | Tests/CodexBarTests/KiroStatusProbeTests.swift | 477 | #expect(account.email == "user@example.com") |
| LOW | …odexBarTests/ClaudeBaselineCharacterizationTests.swift | 231 | accountEmail: "user@example.com", |
| LOW | …odexBarTests/ClaudeBaselineCharacterizationTests.swift | 253 | #expect(result.usage.identity?.accountEmail == "user@example.com") |
| LOW | …ts/CodexBarTests/CodexAccountReconciliationTests.swift | 262 | email: "user@example.com", |
| LOW | …ts/CodexBarTests/CodexAccountReconciliationTests.swift | 270 | email: "user@example.com", |
| LOW | …ts/CodexBarTests/CodexAccountReconciliationTests.swift | 297 | #expect(baseProjection.visibleAccounts.first?.displayName == "user@example.com") |
| LOW | …ts/CodexBarTests/CodexAccountReconciliationTests.swift | 305 | email: "user@example.com", |
| LOW | …ts/CodexBarTests/CodexAccountReconciliationTests.swift | 324 | #expect(projection.activeVisibleAccountID == "user@example.com") |
| LOW | …ts/CodexBarTests/CodexAccountReconciliationTests.swift | 325 | #expect(projection.liveVisibleAccountID == "user@example.com") |
| LOW | …ts/CodexBarTests/CodexAccountReconciliationTests.swift | 332 | email: "user@example.com", |
| LOW | …ts/CodexBarTests/CodexAccountReconciliationTests.swift | 355 | storedAccountRuntimeEmails: [stored.id: "user@example.com"]) |
| LOW | …ts/CodexBarTests/CodexAccountReconciliationTests.swift | 371 | storedAccountRuntimeEmails: [stored.id: "user@example.com"]) |
| LOW | …ts/CodexBarTests/CodexAccountReconciliationTests.swift | 387 | storedAccountRuntimeEmails: [stored.id: "user@example.com"]) |
| LOW | …ts/CodexBarTests/CodexAccountReconciliationTests.swift | 408 | email: "user@example.com", |
| LOW | …ts/CodexBarTests/CodexAccountReconciliationTests.swift | 431 | #expect(projection.activeVisibleAccountID == "user@example.com") |
| LOW | …ts/CodexBarTests/CodexAccountReconciliationTests.swift | 432 | #expect(projection.source(forVisibleAccountID: "user@example.com") == .liveSystem) |
| LOW | …ts/CodexBarTests/CodexAccountReconciliationTests.swift | 443 | email: "user@example.com", |
| LOW | …ts/CodexBarTests/CodexAccountReconciliationTests.swift | 449 | email: "user@example.com", |
| LOW | …ts/CodexBarTests/CodexAccountReconciliationTests.swift | 459 | identity: .emailOnly(normalizedEmail: "user@example.com")) |
| LOW | …ts/CodexBarTests/CodexAccountReconciliationTests.swift | 473 | #expect(Set(projection.visibleAccounts.map(\.email)) == Set(["user@example.com"])) |
| LOW | Tests/CodexBarTests/ProviderStorageFootprintTests.swift | 69 | email: "user@example.com", |
| LOW | Tests/CodexBarTests/FactoryStatusProbeTests.swift | 33 | accountEmail: "user@example.com", |
| LOW | …odexBarTests/ManagedCodexAccountCoordinatorTests.swift | 21 | identityReader: CoordinatorStubManagedCodexIdentityReader(email: "user@example.com")) |
| LOW | …odexBarTests/ManagedCodexAccountCoordinatorTests.swift | 37 | #expect(account.email == "user@example.com") |
| LOW | …s/CodexBarTests/CodexCLIWindowNormalizationTests.swift | 133 | account: AccountInfo(email: "user@example.com", plan: nil), |
| LOW | …s/CodexBarTests/CodexCLIWindowNormalizationTests.swift | 154 | accountEmail: "user@example.com", |
| LOW | Tests/CodexBarTests/CodexVisibleAccountTests.swift | 11 | email: "user@example.com", |
| LOW | Tests/CodexBarTests/CodexVisibleAccountTests.swift | 22 | email: "user@example.com", |
| LOW | Tests/CodexBarTests/CodexVisibleAccountTests.swift | 33 | #expect(personal.menuDisplayName == "user@example.com") |
| LOW | Tests/CodexBarTests/MenuCardModelTests.swift | 47 | account: AccountInfo(email: "user@example.com", plan: "pro"), |
| LOW | Tests/CodexBarTests/UsageStoreCoverageTests.swift | 60 | signedInEmail: "user@example.com", |
| LOW | Tests/CodexBarTests/StepFunUsageFetcherTests.swift | 14 | let env = ["STEPFUN_USERNAME": "user@example.com"] |
| LOW | Tests/CodexBarTests/StepFunUsageFetcherTests.swift | 15 | #expect(StepFunSettingsReader.username(environment: env) == "user@example.com") |
| LOW | Tests/CodexBarTests/StepFunUsageFetcherTests.swift | 521 | "STEPFUN_USERNAME": "user@example.com", |
| LOW | …odexBarTests/StatusMenuHostedSubmenuRefreshTests.swift | 247 | accountEmail: "user@example.com", |
| LOW | Tests/CodexBarTests/GrokAuthTests.swift | 15 | "email": "user@example.com", |
| LOW | Tests/CodexBarTests/GrokAuthTests.swift | 31 | #expect(creds.email == "user@example.com") |
| LOW | Tests/CodexBarTests/KiloOrganizationTests.swift | 9 | { "id": "org_123", "name": "Acme Corp", "role": "owner" } |
| LOW | Tests/CodexBarTests/KiloOrganizationTests.swift | 14 | #expect(org.name == "Acme Corp") |
| LOW | Tests/CodexBarTests/OpenAIDashboardParserTests.swift | 104 | {"session":{"user":{"email":"user@example.com"}},"planType":"plus"} |
| LOW | Tests/CodexBarTests/OpenAIDashboardParserTests.swift | 118 | {"session":{"user":{"email":"user@example.com"}},"planType":"prolite"} |
| LOW | Tests/CodexBarTests/OpenAIDashboardParserTests.swift | 192 | "signedInEmail": "user@example.com", |
| LOW | Tests/CodexBarTests/OpenAIDashboardParserTests.swift | 208 | signedInEmail: "user@example.com", |
| LOW | Tests/CodexBarTests/OpenAIDashboardParserTests.swift | 230 | #expect(usage?.identity?.accountEmail == "user@example.com") |
| LOW | Tests/CodexBarTests/OpenAIDashboardParserTests.swift | 236 | signedInEmail: "user@example.com", |
| LOW | Tests/CodexBarTests/CodexHistoryOwnershipTests.swift | 7 | private let normalizedEmail = "user@example.com" |
| LOW | Tests/CodexBarTests/CLISnapshotTests.swift | 60 | accountEmail: "user@example.com", |
| LOW | Tests/CodexBarTests/CLISnapshotTests.swift | 98 | accountEmail: "user@example.com", |
| LOW | Tests/CodexBarTests/CLISnapshotTests.swift | 127 | accountEmail: "user@example.com", |
| LOW | Tests/CodexBarTests/MiniMaxLogRedactorTests.swift | 62 | #expect(redacted.contains("user@example.com") == false) |
| LOW | Tests/CodexBarTests/StatusProbeTests.swift | 93 | #expect(snap.accountEmail == "user@example.com") |
| LOW | Tests/CodexBarTests/StatusProbeTests.swift | 229 | #expect(snap.accountEmail == "user@example.com") |
| LOW | …CodexBarTests/AntigravityRemoteUsageFetcherTests.swift | 38 | idToken: GeminiAPITestHelpers.makeIDToken(email: "user@example.com"), |
| LOW | …CodexBarTests/AntigravityRemoteUsageFetcherTests.swift | 39 | email: "user@example.com", |
| LOW | …CodexBarTests/AntigravityRemoteUsageFetcherTests.swift | 348 | idToken: GeminiAPITestHelpers.makeIDToken(email: "user@example.com"), |
| LOW | …CodexBarTests/AntigravityRemoteUsageFetcherTests.swift | 349 | email: "user@example.com") |
| 113 more matches not shown… | |||
| Severity | File | Line | Snippet |
|---|---|---|---|
| LOW | Tests/CodexBarTests/KiroStatusProbeTests.swift | 221 | |
| LOW | …ts/CodexBarTests/CodexAccountReconciliationTests.swift | 41 | defer { |
| LOW | Tests/CodexBarTests/LLMProxyUsageFetcherTests.swift | 61 | #expect(parsed.totalRequests == 160) |
| LOW | Tests/CodexBarTests/T3ChatUsageFetcherTests.swift | 21 | // 2026-05-21T12:23:36Z, the usage-window reset that must not drive overage reset display. |
| LOW | …sts/CodexBarTests/CodexAccountScopedRefreshTests.swift | 41 | defer { store._test_widgetSnapshotSaveOverride = nil } |
| LOW | Tests/CodexBarTests/OpenCodeGoUsageParserTests.swift | 441 | #expect(usage.extraRateWindows?.count == 1) |
| LOW | Tests/CodexBarTests/UsageStoreCoverageTests.swift | 541 | #expect(statusAttempts == 2) |
| LOW | Tests/CodexBarTests/MistralUsageParserTests.swift | 21 | let snapshot = try MistralUsageFetcher.parseResponse(data: data, updatedAt: Date()) |
| LOW | Tests/CodexBarTests/MistralUsageParserTests.swift | 41 | // mistral-large-2411 input: 11121 * 0.0000017 = 0.0189057 |
| LOW | …xBarTests/TokenAccountEnvironmentPrecedenceTests.swift | 981 | fileprivate static func expectSnapshotFieldsPreserved(before: UsageSnapshot, after: UsageSnapshot) { |
| LOW | Tests/CodexBarTests/OpenAIAPIUsageFetcherTests.swift | 101 | #expect(snapshot.daily.count == 2) |
| LOW | Tests/CodexBarTests/OpenAIAPIUsageFetcherTests.swift | 321 | #expect(usage.identity?.accountOrganization == "Project: proj_abc") |
| LOW | Tests/CodexBarTests/WidgetSnapshotTests.swift | 201 | #expect(decoded.entries.first?.tokenUsage?.currencyCode == "USD") |
| LOW | Tests/CodexBarTests/OpenAIDashboardSparkTests.swift | 41 | #expect(apiData.accountPlan == "pro") |
| LOW | Tests/CodexBarTests/CodebuffUsageFetcherTests.swift | 241 | weeklyUsed: 100, |
| LOW | Tests/CodexBarTests/CursorEnterpriseUsageTests.swift | 41 | } |
| LOW | Tests/CodexBarTests/StatusMenuTests.swift | 741 | preferencesSelection: PreferencesSelection(), |
| LOW | …/CodexBarTests/MenuCardModelCodexProjectionTests.swift | 681 | hidePersonalInfo: false, |
| LOW | Tests/CodexBarTests/ManusProviderTests.swift | 261 | "refreshInterval": "daily", |
| LOW | …ts/CodexBarTests/ManagedCodexAccountServiceTests.swift | 101 | let storedTeam = try #require( |
| LOW | …ts/CodexBarTests/ManagedCodexAccountServiceTests.swift | 341 | #expect(account.id == storedBob.id) |
| LOW | Tests/CodexBarTests/SyntheticProviderTests.swift | 181 | #expect(usage.primary?.nextRegenPercent == nil) |
| LOW | Tests/CodexBarTests/OpenAIAPIMenuCardModelTests.swift | 161 | #expect(ProviderDescriptorRegistry.descriptor(for: .openai).tokenCost.supportsTokenCost) |
| LOW | Tests/CodexBarTests/FactoryStatusProbeFetchTests.swift | 661 | } |
| LOW | Tests/CodexBarTests/ClaudeOAuthTests.swift | 221 | #expect(snap.primary.windowMinutes == nil) |
| LOW | Tests/CodexBarTests/CLIProviderSelectionTests.swift | 21 | "|kiro|", |
| LOW | Tests/CodexBarTests/WindsurfStatusProbeTests.swift | 41 | #expect(info.endTimestamp == 1_774_029_950_000) |
| LOW | Tests/CodexBarTests/CodexOAuthTests.swift | 621 | |
| LOW | Tests/CodexBarTests/ZaiProviderTests.swift | 501 | |
| LOW | Tests/CodexBarTests/ClaudePlanResolverTests.swift | 41 | #expect(ClaudePlan.fromCompatibilityLoginMethod("Claude Enterprise") == .enterprise) |
| LOW | Tests/CodexBarTests/ClaudePlanResolverTests.swift | 61 | #expect(!ClaudePlan.isSubscriptionLoginMethod("Claude Enterprise")) |
| LOW | Tests/CodexBarTests/AntigravityStatusProbeTests.swift | 1001 | #expect(claudeRange.allSatisfy { $0.lowercased().contains("claude") }) |
| LOW | Tests/CodexBarTests/AntigravityStatusProbeTests.swift | 1121 | accountPlan: nil, |
| LOW | TestsLinux/PlatformGatingTests.swift | 41 | #expect(isExpectedError) |
| LOW | TestsLinux/SettingsReaderQuoteUnwrapTrapTests.swift | 1 | import CodexBarCore |
| LOW | …e/Providers/Claude/ClaudeWeb/ClaudeWebAPIFetcher.swift | 1 | import Foundation |
| LOW | …dexBarCore/Providers/MiniMax/MiniMaxServiceUsage.swift | 1 | // |
| LOW | …dexBarCore/Providers/MiniMax/MiniMaxServiceUsage.swift | 81 | } |
| LOW | …odexBarCore/Providers/Factory/FactoryStatusProbe.swift | 341 | /// Falls back to percent-scale (0.0-100.0) when allowance is unavailable. |
| LOW | …arCore/OpenAIWeb/OpenAIDashboardWebsiteDataStore.swift | 1 | #if os(macOS) |
| Severity | File | Line | Snippet |
|---|---|---|---|
| LOW | Tests/CodexBarTests/StatusMenuSwitcherClickTests.swift | 108 | // Step 1: provider → Overview via the runtime click path. |
| LOW | Tests/CodexBarTests/StatusMenuSwitcherClickTests.swift | 113 | // Step 2: Overview → provider via the runtime click path. Tag 2 is the second provider |
| LOW | Tests/CodexBarTests/StatusMenuSwitcherClickTests.swift | 120 | // Step 3: provider → Overview again. |
| LOW | Tests/CodexBarTests/StatusMenuSwitcherClickTests.swift | 125 | // Step 4: Overview → other provider. This is the click that previously got dropped. |
| LOW | …arCore/Providers/Augment/AugmentSessionKeepalive.swift | 207 | // Step 1: Ping the session endpoint to trigger cookie refresh |
| LOW | …arCore/Providers/Augment/AugmentSessionKeepalive.swift | 211 | // Step 2: Re-import cookies from browser |
| LOW | …dexBarCore/Providers/StepFun/StepFunUsageFetcher.swift | 276 | // Step 1: Get INGRESSCOOKIE by visiting the platform homepage |
| LOW | …dexBarCore/Providers/StepFun/StepFunUsageFetcher.swift | 279 | // Step 2: RegisterDevice → get anonymous token |
| LOW | …dexBarCore/Providers/StepFun/StepFunUsageFetcher.swift | 282 | // Step 3: SignInByPassword → get authenticated token |
| Severity | File | Line | Snippet |
|---|---|---|---|
| MEDIUM | Scripts/setup_dev_signing.sh | 27 | # Create a temporary config file for the certificate |
| MEDIUM | Scripts/review_upstream.sh | 2 | # Create a review branch for upstream changes |
| MEDIUM | Scripts/review_upstream.sh | 127 | # Create a review log file |
| Severity | File | Line | Snippet |
|---|---|---|---|
| MEDIUM | Sources/CodexBarCore/UsageFormatter.swift | 195 | /// Uses Swift's modern FormatStyle API (iOS 15+/macOS 12+) for robust, locale-aware formatting. |
| MEDIUM | …/CodexBarCore/Providers/Claude/ClaudeStatusProbe.swift | 275 | // Use a more robust capture configuration than the standard `/status` scrape: |
| Severity | File | Line | Snippet |
|---|---|---|---|
| LOW | Scripts/setup_dev_signing.sh | 11 | # Check if we already have a CodexBar development certificate |
| Severity | File | Line | Snippet |
|---|---|---|---|
| LOW | Scripts/ci_swift_test_by_suite.py | 65 | def filtered_suites_for_environment(suites: list[str]) -> list[str]: |
| Severity | File | Line | Snippet |
|---|---|---|---|
| LOW | Scripts/ci_swift_test_by_suite.py | 4 |