Skip to content

Add Neuralwatt provider#2220

Merged
steipete merged 18 commits into
steipete:mainfrom
joeVenner:codex/neuralwatt-provider
Jul 17, 2026
Merged

Add Neuralwatt provider#2220
steipete merged 18 commits into
steipete:mainfrom
joeVenner:codex/neuralwatt-provider

Conversation

@joeVenner

@joeVenner joeVenner commented Jul 16, 2026

Copy link
Copy Markdown
Contributor

Summary

  • Adds the Neuralwatt provider from Add Neuralwatt provider #1760.
  • Includes provider registration, docs, icon resources, quota/credit parsing, API key/token-account support, and menu/account refresh coverage.
  • Carries the hardening fixes for malformed responses, duplicate credit rows, quota limits, multi-account refresh behavior, split account-label helpers, and TTY working-directory test stability.

Verification

  • swift test --filter NeuralWattUsageFetcherTests
  • swift test --filter UsageStoreNeuralWattAccountRefreshTests
  • swift test --filter TTYCommandRunnerEnvTests
  • make check

@joeVenner

Copy link
Copy Markdown
Contributor Author

@clawsweeper re-review

The previous review placeholder for 079293f appears stale after its lease expired. PR body now includes the focused Neuralwatt tests, TTY working-directory stability test, and make check verification. Please re-review the current head.

@clawsweeper

clawsweeper Bot commented Jul 16, 2026

Copy link
Copy Markdown

🦞👀
ClawSweeper picked this up.

Command router queued. I will update this comment with the next step.

@joeVenner

Copy link
Copy Markdown
Contributor Author

@clawsweeper re-review

The current review placeholder for 079293f appears stale after its lease expired. Current head has the Neuralwatt parser/account hardening fixes and PR body includes focused tests plus make check verification. Please re-review current head.

@clawsweeper

clawsweeper Bot commented Jul 16, 2026

Copy link
Copy Markdown

🦞🧹
ClawSweeper re-review requested.

I asked ClawSweeper to review this item again.
Action: item re-review queued (workflow sweep.yml, event repository_dispatch).
Result: the existing ClawSweeper review comment will be edited in place when the review finishes.

Re-review progress:

@joeVenner

Copy link
Copy Markdown
Contributor Author

@clawsweeper re-review

The review placeholder for 079293f expired without a verdict. CI is clean and the PR body includes focused Neuralwatt tests plus make check verification. Please re-review current head.

@joeVenner

Copy link
Copy Markdown
Contributor Author

@clawsweeper re-review

The review placeholder for 079293f expired again without a verdict. CI is clean and the PR body includes focused Neuralwatt tests plus make check verification. Please re-review current head.

@clawsweeper

clawsweeper Bot commented Jul 16, 2026

Copy link
Copy Markdown

Codex review: needs real behavior proof before merge. Reviewed July 17, 2026, 6:44 AM ET / 10:44 UTC.

Summary
Adds Neuralwatt provider support across API-key configuration, quota and credit parsing, managed accounts, app and CLI presentation, tests, icons, widgets, and documentation.

Reproducibility: not applicable. as a current-main bug reproduction: this PR adds a new provider. The three review findings are source-reproducible from the new snapshot shape and existing generic picker, CLI, and status-item fallbacks.

Review metrics: 3 noteworthy metrics.

  • Patch size: 44 files; +1,772 / -126. The provider addition spans shared account refresh, CLI, app presentation, generated metadata, widgets, tests, and documentation.
  • Open correctness findings: 3 P2 findings. All three affect user-visible metric selection or prepaid-only balance presentation and remain unresolved from the previous review.
  • Real behavior artifacts: 0 exact-head live artifacts. The listed focused tests and checks do not establish the live API/auth and runtime presentation path.

Root-cause cluster
Relationship: canonical
Canonical: #2220
Summary: This PR is the newer mergeable landing candidate carrying the predecessor's Neuralwatt implementation and subsequent hardening, while the closed batch PR was only a broad aggregation attempt.

Members:

  • superseded: Add Neuralwatt provider #1760 - It implements the same Neuralwatt provider but is older, dirty against main, and is explicitly carried into this newer branch; it should remain open until maintainers confirm the canonical branch.
  • partial_overlap: Add provider usage integrations batch #2215 - The closed unmerged batch PR bundled Neuralwatt with several unrelated provider integrations and is not a viable canonical landing path.

Proposal only: this assessment does not dispatch repair, suppress jobs, mutate sibling items, close, or merge anything.

Merge readiness
Overall: 🧂 unranked krab
Proof: 🧂 unranked krab
Patch quality: 🦐 gold shrimp
Result: blocked until real behavior proof from a real setup is added.

Overall follows the weaker of proof and patch quality, so missing proof can cap an otherwise strong patch.

Rank-up moves:

  • [P1] Fix the Secondary selector and both prepaid-only presentation paths with focused regression coverage.
  • [P1] Add redacted exact-head live CLI output and freshly built app/menu proof from a real Neuralwatt account.

Proof guidance:

  • [P1] Needs real behavior proof before merge: The PR provides focused tests and make check but no redacted exact-head live Neuralwatt output. Add current-head text or JSON CLI output and preferably freshly built app/menu proof, redact credentials and private account details, then update the PR body to trigger review or ask a maintainer to comment @clawsweeper re-review.

Risk before merge

  • [P1] Prepaid-only accounts would show misleading Cost: balance / 0 CLI output and an icon-only menu-bar item despite having a usable balance.
  • [P1] The Secondary menu-bar preference currently maps to no Neuralwatt secondary window and silently falls back to subscription usage.
  • [P1] The new API-key, endpoint, and multi-account routing has extensive mocked coverage but no exact-head live proof against Neuralwatt's current service contract.
  • [P1] Two open Neuralwatt PRs create a branch-selection risk until maintainers designate one canonical landing path.

Maintainer options:

  1. Repair and prove the canonical branch (recommended)
    Fix all three presentation paths, add focused regression coverage, and provide redacted exact-head live CLI plus app/menu evidence before merge.
  2. Keep the predecessor canonical
    Pause this PR and move its unique improvements to the predecessor branch if maintainers prefer that branch history.

Next step before merge

  • [P1] A maintainer must designate the canonical Neuralwatt branch, and the contributor must supply real-account exact-head proof after resolving the three concrete presentation defects.

Maintainer decision needed

  • Question: Should this newer dual-surface branch become the canonical Neuralwatt implementation instead of Add Neuralwatt provider #1760?
  • Rationale: Both PRs implement the same provider, while this branch carries newer hardening and is mergeable but still needs presentation fixes and contributor proof; choosing the permanent landing branch is a maintainer ownership decision.
  • Likely owner: steipete — They performed most Neuralwatt hardening and repeated integration work across the relevant branches.
  • Options:
    • Adopt this branch (recommended): Treat this PR as canonical, require the three presentation repairs and exact-head live proof, then retire the predecessor branch.
    • Continue the predecessor: Keep Add Neuralwatt provider #1760 canonical and port any unique dual-surface, testing, and integration improvements from this branch before landing it.

Security
Cleared: No concrete security or supply-chain regression was found; the patch adds no dependency, workflow, script-execution, permission, or browser-cookie surface and follows existing provider-scoped API-key patterns.

Review findings

  • [P2] Remove the dead Neuralwatt Secondary selector — Tests/CodexBarTests/ProvidersPaneCoverageTests.swift:273
  • [P2] Render prepaid-only Neuralwatt CLI output as a balance — Tests/CodexBarTests/MenuCardNeuralWattTests.swift:22
  • [P2] Surface prepaid-only Neuralwatt balance in the menu bar — Tests/CodexBarTests/MenuCardNeuralWattTests.swift:22
Review details

Best possible solution:

Land one canonical Neuralwatt integration that presents subscription kWh, prepaid USD balance, and optional key allowance accurately across menu cards, menu-bar metrics, and CLI output, with exact-head redacted live proof; then close the competing branch as superseded.

Do we have a high-confidence way to reproduce the issue?

Not applicable as a current-main bug reproduction: this PR adds a new provider. The three review findings are source-reproducible from the new snapshot shape and existing generic picker, CLI, and status-item fallbacks.

Is this the best way to solve the issue?

No, not yet. The descriptor-based provider architecture and dual subscription/balance model fit the repository, but the selectable lanes and prepaid-only CLI/menu-bar fallbacks must be completed before this is the narrowest maintainable solution.

Full review comments:

  • [P2] Remove the dead Neuralwatt Secondary selector — Tests/CodexBarTests/ProvidersPaneCoverageTests.swift:273
    The picker test still exposes Secondary, but Neuralwatt stores its key allowance in extraRateWindows and never populates snapshot.secondary; selecting Secondary therefore falls back to the subscription window instead of selecting a distinct metric. Remove that option or implement a real selectable allowance lane.
    Confidence: 0.98
  • [P2] Render prepaid-only Neuralwatt CLI output as a balance — Tests/CodexBarTests/MenuCardNeuralWattTests.swift:22
    A prepaid-only response produces no primary window and keeps the USD balance in providerCost with a zero limit. The generic no-primary renderer consequently prints a cost ratio such as Cost: 4.5 / 0.0; add a Neuralwatt balance path and regression coverage for text and JSON output.
    Confidence: 0.97
  • [P2] Surface prepaid-only Neuralwatt balance in the menu bar — Tests/CodexBarTests/MenuCardNeuralWattTests.swift:22
    For the same no-subscription snapshot, automatic menu-bar selection only checks primary and secondary windows, leaving prepaid-only users with an icon-only status item. Add a provider-cost balance fallback or another explicitly selectable balance metric.
    Confidence: 0.97

Overall correctness: patch is incorrect
Overall confidence: 0.98

AGENTS.md: found and applied where relevant.

Codex review notes: model internal, reasoning high; reviewed against 63215da42575.

Label changes

Label changes:

  • add rating: 🧂 unranked krab: Overall readiness is 🧂 unranked krab; proof is 🧂 unranked krab and patch quality is 🦐 gold shrimp.
  • remove rating: 🦪 silver shellfish: Current PR rating is rating: 🧂 unranked krab, so this older rating label is no longer current.

Label justifications:

  • P2: This is a normal-priority provider feature with bounded user-visible presentation defects and no current-user regression because Neuralwatt is not on main.
  • merge-risk: 🚨 auth-provider: The PR introduces Neuralwatt API-key resolution, endpoint selection, and managed-account routing whose live exact-head behavior is not yet proven.
  • rating: 🧂 unranked krab: Overall readiness is 🧂 unranked krab; proof is 🧂 unranked krab and patch quality is 🦐 gold shrimp.
  • status: 📣 needs proof: The PR needs real behavior proof before ClawSweeper can clear the contributor ask. Needs real behavior proof before merge: The PR provides focused tests and make check but no redacted exact-head live Neuralwatt output. Add current-head text or JSON CLI output and preferably freshly built app/menu proof, redact credentials and private account details, then update the PR body to trigger review or ask a maintainer to comment @clawsweeper re-review.
Evidence reviewed

What I checked:

  • Prior findings remain: The previous review at 89befd1 identified a dead Secondary selector, incorrect prepaid-only CLI rendering, and a missing prepaid-only menu-bar value; the only later head commit hardens an unrelated Claude swap test, so those findings remain visible at 7b63ab4. (Tests/CodexBarTests/CLICardsClaudeSwapTests.swift:308, 7b63ab4f21cc)
  • Dead metric selector: The added picker coverage explicitly includes Secondary even though Neuralwatt stores the key allowance in extraRateWindows rather than snapshot.secondary, making that option select the wrong lane. (Tests/CodexBarTests/ProvidersPaneCoverageTests.swift:273, 7b63ab4f21cc)
  • Prepaid-only snapshot shape: The added prepaid-only test establishes that Neuralwatt can have no primary metric while retaining its USD balance solely as providerCost; generic CLI and status-item fallbacks do not render that shape as a balance. (Tests/CodexBarTests/MenuCardNeuralWattTests.swift:22, 7b63ab4f21cc)
  • Proof remains supplemental only: The PR body lists focused Swift tests and make check but contains no redacted exact-head live CLI output, runtime logs, or freshly built app/menu evidence from a real Neuralwatt account. (7b63ab4f21cc)
  • Canonical branch context: This PR explicitly carries the implementation from Add Neuralwatt provider #1760 plus later hardening and is currently mergeable; the predecessor remains open but dirty and lacks exact-head live proof. (7b63ab4f21cc)
  • Provider boundary alignment: The implementation uses the repository's descriptor, token resolver, provider-scoped configuration, HTTPS endpoint validation, and provider-specific identity paths rather than adding browser-cookie, Keychain, dependency, or workflow execution surfaces. (Sources/CodexBarCore/Providers/NeuralWatt/NeuralWattProviderDescriptor.swift:1, 7b63ab4f21cc)

Likely related people:

  • steipete: Authored the malformed-response, duplicate-credit, quota-limit, presentation, test, and repeated main-integration commits on the Neuralwatt branches. (role: recent Neuralwatt hardening contributor; confidence: high; commits: d40fbd766a25, ccc6c59202f1, c5d8f8bed052; files: Sources/CodexBarCore/Providers/NeuralWatt/NeuralWattUsageFetcher.swift, Sources/CodexBarCore/Providers/NeuralWatt/NeuralWattProviderDescriptor.swift, Sources/CodexBar/MenuCardView+Costs.swift)
  • jrimmer: Authored the original Neuralwatt provider implementation that this PR explicitly carries from the predecessor branch. (role: feature introducer; confidence: medium; commits: 479e12846e85; files: Sources/CodexBarCore/Providers/NeuralWatt/NeuralWattUsageFetcher.swift, Sources/CodexBarCore/Providers/NeuralWatt/NeuralWattProviderDescriptor.swift, docs/neuralwatt.md)
What the crustacean ranks mean
  • 🦀 challenger crab: rare, exceptional readiness with strong proof, clean implementation, and convincing validation.
  • 🦞 diamond lobster: very strong readiness with only minor maintainer review expected.
  • 🐚 platinum hermit: good normal PR, likely mergeable with ordinary maintainer review.
  • 🦐 gold shrimp: useful signal, but proof or patch confidence is still limited.
  • 🦪 silver shellfish: thin signal; proof, validation, or implementation needs work.
  • 🧂 unranked krab: not merge-ready because proof is missing/unusable or there are serious correctness or safety concerns.
  • 🌊 off-meta tidepool: rating does not apply to this item.

Shiny media proof means a screenshot, video, or linked artifact directly shows the changed behavior. Runtime, network, CSP, and security claims still need visible diagnostics.

How this review workflow works
  • ClawSweeper keeps one durable marker-backed review comment per issue or PR.
  • Re-runs edit this comment so the latest verdict, findings, and automation markers stay together instead of adding duplicate bot comments.
  • A fresh review can be triggered by eligible @clawsweeper re-review comments, exact-item GitHub events, scheduled/background review runs, or manual workflow dispatch.
  • PR/issue authors and users with repository write access can comment @clawsweeper re-review or @clawsweeper re-run on an open PR or issue to request a fresh review only.
  • Maintainers can also comment @clawsweeper review to request a fresh review only.
  • Fresh-review commands do not start repair, autofix, rebase, CI repair, or automerge.
  • Maintainer-only repair and merge flows require explicit commands such as @clawsweeper autofix, @clawsweeper automerge, @clawsweeper fix ci, or @clawsweeper address review.
  • Maintainers can comment @clawsweeper explain to ask for more context, or @clawsweeper stop to stop active automation.
Review history (12 earlier review cycles; latest 8 shown)
  • reviewed 2026-07-16T18:29:06.865Z sha 079293f :: needs real behavior proof before merge. :: none
  • reviewed 2026-07-16T19:15:36.461Z sha 079293f :: needs real behavior proof before merge. :: [P1] Surface subscription capacity before reporting exhaustion
  • reviewed 2026-07-16T20:03:01.227Z sha 079293f :: needs real behavior proof before merge. :: none
  • reviewed 2026-07-17T04:51:02.090Z sha 72e7013 :: needs real behavior proof before merge. :: none
  • reviewed 2026-07-17T06:19:54.706Z sha 979ec36 :: needs real behavior proof before merge. :: [P2] Remove or implement the Neuralwatt Secondary metric
  • reviewed 2026-07-17T08:44:02.381Z sha 4c0f8c4 :: needs real behavior proof before merge. :: [P2] Remove the dead Neuralwatt Secondary selector | [P2] Render prepaid-only Neuralwatt output as a balance
  • reviewed 2026-07-17T09:25:57.330Z sha 4c0f8c4 :: needs real behavior proof before merge. :: [P2] Remove the dead Neuralwatt Secondary selector | [P2] Render prepaid-only Neuralwatt CLI output as a balance
  • reviewed 2026-07-17T10:23:34.142Z sha 89befd1 :: needs real behavior proof before merge. :: [P2] Remove the dead Neuralwatt Secondary selector | [P2] Render prepaid-only Neuralwatt CLI output as a balance | [P2] Surface prepaid-only Neuralwatt balance in the menu bar

@joeVenner

Copy link
Copy Markdown
Contributor Author

@clawsweeper re-review

The review placeholder for 079293f expired again without a verdict. CI is clean; current head includes the Neuralwatt hardening fixes and PR verification. Please re-review current head.

1 similar comment
@joeVenner

Copy link
Copy Markdown
Contributor Author

@clawsweeper re-review

The review placeholder for 079293f expired again without a verdict. CI is clean; current head includes the Neuralwatt hardening fixes and PR verification. Please re-review current head.

@clawsweeper clawsweeper Bot added rating: 🦪 silver shellfish Thin PR readiness signal; proof, validation, or implementation needs work. status: 📣 needs proof The PR needs real behavior proof before ClawSweeper can clear the contributor ask. P2 Normal priority bug or improvement with limited blast radius. merge-risk: 🚨 auth-provider 🚨 Merging this PR could break OAuth, tokens, provider routing, model choice, or credentials. labels Jul 16, 2026
steipete added 2 commits July 17, 2026 05:38
…ider

# Conflicts:
#	README.md
#	Sources/CodexBar/UsageStore.swift
#	Sources/CodexBarCore/Generated/CodexParserHash.generated.swift
#	Sources/CodexBarCore/Vendored/CostUsage/CostUsageScanner.swift
#	docs/configuration.md
#	docs/index.html
#	docs/llms.txt
#	docs/providers.md
#	docs/site-locales.mjs
#	docs/social.html

@chatgpt-codex-connector chatgpt-codex-connector Bot left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

💡 Codex Review

Here are some automated review suggestions for this pull request.

Reviewed commit: 72e7013215

ℹ️ About Codex in GitHub

Your team has set up Codex to review pull requests in this repo. Reviews are triggered when you

  • Open a pull request for review
  • Mark a draft as ready
  • Comment "@codex review".

If Codex has suggestions, it will comment; otherwise it will react with 👍.

Codex can also answer questions or update the PR. Try commenting "@codex address that feedback".

Comment on lines +12 to +13
sessionLabel: "Subscription",
weeklyLabel: "Key allowance",

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

P2 Badge Prevent dead Neuralwatt metric options

Because .neuralwatt is not added to SettingsStore.isBalanceOnlyProvider or otherwise special-cased, PreferencesProvidersPane.menuBarMetricPicker takes the generic branch and uses these labels to expose Primary and Secondary choices. The secondary choice is misleading for Neuralwatt because the key allowance is stored in extraRateWindows, not snapshot.secondary, so selecting it falls back to the subscription window instead; this also contradicts the new coverage test that expects only Automatic. Add a Neuralwatt-specific/balance-only picker path or expose the allowance as a real selectable lane.

Useful? React with 👍 / 👎.

steipete added 2 commits July 17, 2026 07:14
…ider

# Conflicts:
#	README.md
#	Sources/CodexBar/Providers/Shared/ProviderImplementationRegistry.swift
#	Sources/CodexBarCore/Config/ProviderConfigEnvironment.swift
#	Sources/CodexBarCore/Generated/CodexParserHash.generated.swift
#	Sources/CodexBarCore/Providers/ProviderDescriptor.swift
#	Sources/CodexBarCore/Providers/Providers.swift
#	Sources/CodexBarCore/Vendored/CostUsage/CostUsageScanner.swift
#	Tests/CodexBarTests/CLIDiagnoseCommandTests.swift
#	Tests/CodexBarTests/ProviderSettingsDescriptorTests.swift
#	docs/configuration.md
#	docs/index.html
#	docs/llms.txt
#	docs/providers.md
#	docs/site-locales.mjs
#	docs/social.html
#	docs/social.png

@chatgpt-codex-connector chatgpt-codex-connector Bot left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

💡 Codex Review

Here are some automated review suggestions for this pull request.

Reviewed commit: 0ececf11c3

ℹ️ About Codex in GitHub

Your team has set up Codex to review pull requests in this repo. Reviews are triggered when you

  • Open a pull request for review
  • Mark a draft as ready
  • Comment "@codex review".

If Codex has suggestions, it will comment; otherwise it will react with 👍.

Codex can also answer questions or update the PR. Try commenting "@codex address that feedback".

secondary: nil,
tertiary: nil,
extraRateWindows: extras.isEmpty ? nil : extras,
providerCost: self.prepaidBalance,

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

P2 Badge Handle prepaid-only CLI balance display

When a Neuralwatt account has no active subscription, this snapshot has primary == nil but still carries the prepaid balance as providerCost with limit: 0. The existing CLI renderer falls back to rendering any no-primary providerCost as Cost: used / limit, so prepaid-only Neuralwatt users will see output like Cost: 4.5 / 0.0 instead of a balance line; add a Neuralwatt-specific CLI balance path or avoid the generic cost fallback for this balance snapshot.

Useful? React with 👍 / 👎.

@chatgpt-codex-connector chatgpt-codex-connector Bot left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

💡 Codex Review

Here are some automated review suggestions for this pull request.

Reviewed commit: 89befd19b3

ℹ️ About Codex in GitHub

Your team has set up Codex to review pull requests in this repo. Reviews are triggered when you

  • Open a pull request for review
  • Mark a draft as ready
  • Comment "@codex review".

If Codex has suggestions, it will comment; otherwise it will react with 👍.

Codex can also answer questions or update the PR. Try commenting "@codex address that feedback".

Comment on lines +253 to +257
primary: subscriptionWindow,
secondary: nil,
tertiary: nil,
extraRateWindows: extras.isEmpty ? nil : extras,
providerCost: self.prepaidBalance,

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

P2 Badge Surface prepaid-only Neuralwatt balance in the menu bar

When the API returns subscription: null, subscriptionWindow is nil but providerCost still carries the prepaid balance. I checked StatusItemController.menuBarDisplayText and MenuBarMetricWindowResolver: Neuralwatt has no balance special case, and automatic mode falls back to snapshot.primary ?? snapshot.secondary, so prepaid-only users get an icon-only status item despite having a balance. Add a Neuralwatt balance fallback or expose the balance as the selected menu-bar value for this case.

Useful? React with 👍 / 👎.

@clawsweeper clawsweeper Bot added rating: 🧂 unranked krab Not merge-ready due to missing proof or serious correctness/safety concerns. and removed rating: 🦪 silver shellfish Thin PR readiness signal; proof, validation, or implementation needs work. labels Jul 17, 2026
@steipete
steipete merged commit 82f161b into steipete:main Jul 17, 2026
8 checks passed
@steipete

Copy link
Copy Markdown
Owner

Merged as 82f161b.

Verification on exact PR head 7b63ab4:

  • swift test --filter NeuralWatt: 21 tests across 5 suites passed.
  • swift test --filter ProvidersPaneCoverageTests: 33 tests passed.
  • swift test --filter ProviderRegistryTests: 4 tests passed.
  • swift test --filter CLICardsClaudeSwapTests: 22 tests across the two package test targets passed; this also verifies the bounded Linux CI flake fix added after the first CI attempt.
  • make check: parser hash current (2d056ae5a24d5157), SwiftFormat 0/1525, SwiftLint 0 violations across 1524 files.
  • Autoreview: full provider and integration reviews clean; the final test-only CI fix review was clean at 0.99 confidence.
  • CI run 29574194749: lint, Linux x64, Linux ARM64, both macOS shards, aggregate gate, and GitGuardian all green on the exact head.

Reviewed the full provider diff and endpoint/security boundaries. The implementation uses the official HTTPS quota endpoint, keeps endpoint overrides HTTPS-only, validates overrides before credential use, does not log response bodies, and remains disabled by default. It displays subscription kWh and prepaid balance as separate pools and maps blocked=true as the exhausted-key signal.

Live Neuralwatt account verification was unavailable, so no live provider probe was run. Synthetic/captured payload coverage exercises both quota pools.

@jethac jethac mentioned this pull request Jul 17, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

merge-risk: 🚨 auth-provider 🚨 Merging this PR could break OAuth, tokens, provider routing, model choice, or credentials. P2 Normal priority bug or improvement with limited blast radius. rating: 🧂 unranked krab Not merge-ready due to missing proof or serious correctness/safety concerns. status: 📣 needs proof The PR needs real behavior proof before ClawSweeper can clear the contributor ask.

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants