Skip to content

release: v3.10.10 - #948

Merged
Aurora Capital (auroracapital) merged 2 commits into
mainfrom
release/v3.10.10
Sep 9, 2026
Merged

release: v3.10.10#948
Aurora Capital (auroracapital) merged 2 commits into
mainfrom
release/v3.10.10

Conversation

@auroracapital

Copy link
Copy Markdown
Collaborator

Release v3.10.10 (was 3.10.9).

  • plugin.json + marketplace.json (registry) + claude-ops/package.json bumped
  • CHANGELOG updated

Fixed

  • The MCP watchdog no longer tells you to re-authenticate servers that work fine. It probed every HTTP MCP with an initialize POST and read a 401 as "no refresh token, the owner must re-consent". A 401 only means that when the probe actually presented a credential; with nothing to send it says only that the prober knocked with empty hands. Claude Code holds OAuth tokens for natively-authenticated HTTP MCPs in memory — not in ~/.mcp-auth, not in the keychain's mcpOAuth entries, not in the config's static headers — so those servers answer every session normally and probe 401 forever. Measured here: claude-design and openrouter both sat at needs_bootstrap while list_projects returned 13 projects and ping returned pong. The cost was not just a wrong line in a report — every tick dispatched the headless fix agent (10 runs logged) and attempted a Playwright OAuth flow that cannot succeed, because the consent page renders no button for an unauthenticated profile. The blind case is now its own state, no_probe_credential, and it is excluded from fix-agent dispatch, auto-reauth, the degradation diff and WhatsApp notify, the ops-doctor degraded>1h warning, and /ops:mcp advice. A healthyno_probe_credential transition is still logged, so a token that really did disappear leaves a trace instead of vanishing into a state the watchdog ignores. Guard: tests/test-mcp-watchdog-probe-credential.sh covers all four 401 paths plus the consumer guards — 11 passed against this change, 7 of them failing against the previous version.

🤖 Generated with Claude Code

ops-release hardcodes "### Changed" above --notes, so a fix-only entry
that carries its own "### Fixed" heading ships an empty section in the
generated release notes.

Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
@auroracapital
Aurora Capital (auroracapital) merged commit 1f5d168 into main Sep 9, 2026
11 checks passed
@auroracapital
Aurora Capital (auroracapital) deleted the release/v3.10.10 branch September 9, 2026 11:12
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant