fix: make Claude Store takeover self-healing#9
Open
damonleelcx wants to merge 1 commit into
Open
Conversation
Author
|
CI baseline note: both this PR and the latest This change’s focused suite is green (28/28), the monorepo-local full library suite is green (1140 passed, 5 ignored), Clippy is green, and the Windows release cross-build plus us-west-1 Store/Claude Code E2E passed. |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Summary
configLibrary/_meta.json.entries, preserve foreign entries, deduplicate stale AiKey entries, and remove only AiKey metadata on restoreappliedId-only configuration self-heal on the next takeover instead of being treated as unchangedaikey desktop statusand the not-installed errorRoot-cause evidence
The Windows 10 Store install (
Claude_pzs8sxrjxfjjc, Claude 1.24012.9.0) has no standalone%LOCALAPPDATA%\AnthropicClaudedirectory. Alpha.5 therefore refused takeover unless an empty marker directory was created manually. Alpha.5 also wrote onlyappliedId; current Claude expects a matching{id,name}entry in_meta.json.entries.The observed
/api/hello404 is not the blocking bug: in one fresh Claude Code 2.1.219 session it was followed by two successful/v1/messagescalls (HTTP 200, modelclaude-sonnet-5, 766 and 54,291 tokens). The OAuth identity waskelton_quibusdammu@technologist.com, and both requests used mihomo egress. No proxy endpoint shim is included.Verification
cargo test claude_desktop --lib: 28 passedcargo test --lib: 1140 passed, 5 ignoredcargo clippy --lib -- -D warningsx86_64-pc-windows-gnuinstalled: true,state: aikey,gateway_probe: ok_meta.jsonto alpha.5appliedId-only form;aikey desktop installrestored exactly one AiKey entry and exited 03P mode active,provider: gateway, healthy config, andapiHost=http://127.0.0.1:27200/anthropic