Add OpenClaw update incident diagnostics and 2026.4.26 coverage#2
Open
arcabotai wants to merge 2 commits into
Open
Add OpenClaw update incident diagnostics and 2026.4.26 coverage#2arcabotai wants to merge 2 commits into
arcabotai wants to merge 2 commits into
Conversation
Hit two independent failure modes running `openclaw update` on a
production Mac mini (from 2026.4.15 to 2026.4.21). Added three
patterns plus the CLI signals they need.
New known_issues patterns:
- redacted-placeholder-corruption (critical)
literal "__OPENCLAW_REDACTED__" persisted as a real value in
openclaw.json. Observed after the macOS app auto-updated to a
newer version and rewrote shared config. Blocks `openclaw update`.
- incomplete-npm-install (high)
openclaw's node_modules has >1 unmet deps after a bad upstream
publish (e.g. 2026.4.21 omitted discord-api-types, @buape/carbon,
@discordjs/opus, opusscript from declared deps). Discord plugin
can't load. Fix installs missing modules with --no-save into the
global install.
- config-written-by-newer-version (medium)
openclaw.json.meta.lastTouchedVersion > installed CLI version.
Warns on version drift, usually from macOS app running ahead.
CLI changes (cli/index.js):
- scanConfigCorruption(): new pre-sanitize scan that flags paths
holding the "__OPENCLAW_REDACTED__" literal. Must run BEFORE
sanitizeConfig() because clawfix's own sanitization would replace
corrupted values on keys named "token"/"apiKey"/etc before the
signal could be detected.
- inspectOpenclawInstall(): new helper running `npm ls --prefix
<openclaw-dir> --depth=0` to count unmet deps. One unmet is
tolerable (node-llama-cpp is optional); more is a broken install.
- Added diagnostic.install and diagnostic.configDiagnostics to the
payload so detect functions can see the new signals.
Version bump: 0.9.0 -> 0.10.0 in cli/package.json, cli/index.js
VERSION const, landing.js JSON metadata, and README detection-list
version marker. Landing-page pricing card updated 40+ -> 45+ (actual
count: 45). README bullet list + landing-page grid got 3 new cards.
Smoke test: node --check on both files passes; synthetic diag
triggers all 3 new patterns with correct severities.
Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
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
Extends the existing OpenClaw update-incident branch with the 2026-04-28
2026.4.26maintenance findings, while preserving the earlier 2026-04-22 patterns.Added in this push
plugins.load.pathsaliases that point back into.../openclaw/dist/extensions/*.openclaw update status --jsonin both the CLI and curl diagnostic payloads.meta.lastTouchedVersion, persisted__OPENCLAW_REDACTED__placeholders, and bundled plugin load paths.incomplete-npm-installcan fire from real payload data.permissionMode=approve-alland Codex runtime routing through auto/PI.openclaw nodes remove --node <id|name|ip>command when available.0.11.0and refresh the published curl script hash.Existing branch coverage
redacted-placeholder-corruptionincomplete-npm-installconfig-written-by-newer-versionValidation
node --check src/known-issues.jsnode --check src/routes/diagnose.jsnode --check src/routes/script.jsnode --check cli/bin/clawfix.jsbash -nnode cli/bin/clawfix.js --versionreportsclawfix v0.11.0git diff --checkpasses