openclaw/test
Peter Steinberger e4a6d50073
fix(runtime): keep diagnostics and update usable on an unsupported Node (#143344)
* fix(runtime): keep diagnostics and update usable on an unsupported Node

Share CLI admission between the launcher and source guard, retain private-copy
SQLite recovery, and keep live database writers and repair agents refused.
Route plain Doctor to lint and refuse update before its run-ledger admission
when the CLI Node is unsupported. Report CLI/service runtime findings and the
reporting Node version in update-failure reports.

Refs #140672 #142742

* docs(install): explain private Node recovery and diagnostic access

* test(runtime): preserve Node recovery coverage with diagnostic admission

* fix(runtime): offer Node recovery once per update invocation

* fix(build): emit Node 22 syntax for recovery diagnostics

* fix(update): check runtime at the state preparation boundary

* fix(doctor): preserve migration order before runtime diagnostics

* fix(runtime): recover before admitting unsupported Node diagnostics

* fix(runtime): preserve capability admission in diagnostic recovery

* test(cli): retain capability checks in startup fixtures

* refactor(runtime): share Node findings across diagnostic commands

* fix(doctor): omit absent repair hints in lint errors
2026-09-09 15:26:27 -07:00
..
contracts fix: ask_user suggests tapping options without buttons (#137978) 2026-09-06 08:36:57 -07:00
e2e improve(test): reduce media QA startup overhead (#143326) 2026-09-10 04:05:59 +09:00
fixtures fix(agents): drop the blanket credential prompt that blocked owner-authorized logins (#143238) 2026-09-09 11:28:23 -07:00
helpers improve(test): reuse prepared repo CLI in Telegram QA (#143253) 2026-09-10 02:05:07 +09:00
mocks
plugins refactor(models): read published catalog inventory through the Gateway (#142063) 2026-09-08 16:51:57 +05:30
scripts fix(ci): reconcile omitted empty FRV inputs (#143421) 2026-09-09 14:57:14 -07:00
tsconfig chore: group TUI typechecks with command tests (#142385) 2026-09-08 11:04:03 -07:00
vitest test(agents): run the subagent announce seam test on an isolated module graph (#143251) 2026-09-09 10:13:10 -07:00
agent-exec-code-mode.live.test.ts fix: allow environment-only agent runs without a native harness (#138449) 2026-09-04 11:37:51 -07:00
AGENTS.md
appcast.test.ts fix(release): run Sparkle CLI through symlinked checkouts (#142315) 2026-09-08 09:27:03 -07:00
architecture-smells.test.ts fix(tooling): detect imports following regular expressions (#137804) 2026-09-04 04:28:06 -07:00
buzz-account-config-mutation.test.ts
canonical-descendant.integration.test.ts fix(tests): keep canonical transport fixtures on source plugins (#142171) 2026-09-08 06:56:24 -07:00
CLAUDE.md
clawrouter-managed-gateway.e2e.test.ts
cli-json-stdout.agents.e2e.test.ts
cli-json-stdout.automation.e2e.test.ts
cli-json-stdout.config.e2e.test.ts fix(cli): report invalid plugin configuration directly (#138131) 2026-09-04 03:32:36 -07:00
cli-json-stdout.e2e.test.ts fix(cli): keep qr --setup-code-only --json machine-readable (#137209) 2026-09-06 00:13:05 -07:00
cli-json-stdout.gateway.e2e.test.ts
cli-json-stdout.hooks.e2e.test.ts
cli-json-stdout.models.e2e.test.ts
cli-json-stdout.plugins.e2e.test.ts
cli-json-stdout.sessions.e2e.test.ts fix(sessions): unify target errors and reject blank agent selectors (#136664) 2026-09-02 15:29:54 -07:00
cli-json-stdout.skills.e2e.test.ts
cli-json-stdout.test-support.ts
cli-state-sqlite.e2e.test.ts fix(snapshot): preserve Git backup failure diagnostics (#135455) 2026-09-02 16:23:12 +05:30
copilot-tool-policy-handoff.integration.test.ts fix(agents): preserve disabled tools at plugin handoff (#142093) 2026-09-09 18:13:53 +05:30
copilot-tool-policy-handoff.live.test.ts fix(agents): preserve disabled tools at plugin handoff (#142093) 2026-09-09 18:13:53 +05:30
cron-edit-trigger-preservation.e2e.test.ts
discord-live-policy.integration.test.ts fix(discord): apply access policy during active Control UI turns (#140929) 2026-09-07 00:23:28 -07:00
doctor-copied-state-migration.e2e.test.ts
doctor-legacy-whatsapp-ack-migration.e2e.test.ts
dreaming-startup-cleanup.e2e.test.ts
embedded-transcript-cursor.e2e.test.ts
extension-import-boundaries.test.ts
extension-test-boundary.test.ts
external-script-modules.d.ts
gateway-account-history.e2e.test.ts
gateway-cold-agent-abort.e2e.test.ts fix: preserve catalog metadata and provider failure outcomes (#137063) 2026-09-02 23:19:02 -07:00
gateway-copied-codex-session-resume.e2e.test.ts fix(gateway): repair the Gateway E2E shard (browser suite project, skill resource argv, Codex diagnostic) (#137358) 2026-09-03 08:16:24 -07:00
gateway-external-state-ownership.e2e.test.ts fix(update): recover stale runs without stopping healthy gateways (#141562) 2026-09-07 16:04:25 -07:00
gateway-hook-concurrency.e2e.test.ts fix(gateway): expose agent hook completion outcomes (#139155) 2026-09-06 01:36:46 +09:00
gateway-no-op-mutation.e2e.test.ts fix(agents): stop treating no-op write/edit/apply_patch results as terminal (#137036) 2026-09-03 12:41:59 +05:30
gateway-openai-compaction-replay.e2e.test.ts fix(agents): preserve post-compaction continuation prompts (#136236) 2026-09-05 01:00:13 +08:00
gateway-queued-session-rotation.e2e.test.ts fix(agents): preserve post-compaction continuation prompts (#136236) 2026-09-05 01:00:13 +08:00
gateway-restored-requester-settle.e2e.test.ts fix(subagents): let requester follow-ups finish after child completion (#138966) 2026-09-05 14:05:14 -04:00
gateway-rpc-exporters.test.ts feat(diagnostics): retain completed event-loop observation windows (#138249) 2026-09-04 10:27:50 -07:00
gateway-session-end-shutdown.e2e.test.ts
gateway-steer-fifo.e2e.test.ts fix(gateway): preserve document context in active-run steering (#138275) 2026-09-07 00:54:04 +05:30
gateway-widget-restart.live.test.ts fix: preserve tool context across agent backends (#139840) 2026-09-06 00:12:50 -07:00
gateway.multi.e2e.test.ts fix(test): stop Gateways after client cleanup failures (#138187) 2026-09-04 03:48:19 -07:00
git-hooks-pre-commit-boundaries.test.ts fix(git-hooks): format ordinary commits with orphan rebase refs (#137997) 2026-09-04 01:26:56 -07:00
git-hooks-pre-commit.test-support.ts fix(git-hooks): format ordinary commits with orphan rebase refs (#137997) 2026-09-04 01:26:56 -07:00
git-hooks-pre-commit.test.ts fix(git-hooks): format ordinary commits with orphan rebase refs (#137997) 2026-09-04 01:26:56 -07:00
github-cli-preflight.e2e.test.ts fix(github): preflight CLI before device authorization (#135301) 2026-09-02 21:32:16 +05:30
huggingface-local-app-openclaw.e2e.test.ts
image-generation.infer-cli.live.test.ts
image-generation.runtime.live.test.ts
jsdom-custom-elements.test.ts
jsdom-custom-elements.ts
linux-dashboard-recovery.test.ts
linux-quickchat-stream.test.ts
loopback-ask-user-telegram-channel.test.ts fix(test): await Telegram loopback prompt reception (#141204) 2026-09-07 05:22:57 -07:00
mcp-show-redact.e2e.test.ts
non-isolated-runner.resolve-mocks.test.ts
non-isolated-runner.test-api-fixtures.ts refactor: simplify diagnostic, backup, and runtime ownership (#140369) 2026-09-06 11:54:33 -07:00
non-isolated-runner.test.ts chore(test): migrate to stable Vitest 5 (#138264) 2026-09-06 04:17:59 +09:00
non-isolated-runner.ts chore(test): migrate to stable Vitest 5 (#138264) 2026-09-06 04:17:59 +09:00
npm-publish-plan.test.ts
oauth-refresh-authority-chain.e2e.test.ts fix(auth): fence shared OAuth refresh generations (#141477) 2026-09-09 02:08:10 +08:00
official-channel-catalog.test.ts
onboard-plugin-warnings.e2e.test.ts
openai-model-discovery-auth-order.test.ts fix(auth): fence shared OAuth refresh generations (#141477) 2026-09-09 02:08:10 +08:00
openai-onboarding.live.test.ts
openclaw-launcher-version.e2e.test.ts fix(runtime): gate node:sqlite on a NUL round-trip capability probe (#143312) 2026-09-09 13:32:29 -07:00
openclaw-launcher.e2e.test.ts fix(runtime): keep diagnostics and update usable on an unsupported Node (#143344) 2026-09-09 15:26:27 -07:00
openclaw-npm-postpublish-verify.test.ts fix: close out stable releases after split publication recovery (#142291) 2026-09-08 10:23:45 -07:00
openclaw-npm-prepublish-verify.test.ts
openclaw-npm-release-check.test.ts fix(release): accept frozen targets before worker bundles (#136699) 2026-09-06 11:26:06 +09:00
openclaw-prepack.test.ts fix(update): keep old updaters able to restart the Gateway (#142195) 2026-09-08 10:43:46 -07:00
outbound-sanitize-text-delivery.test.ts fix: keep unspaced Slack/Google Chat angle-link labels (#136306) 2026-09-04 14:02:08 +05:30
package-manager-config.test.ts chore(test): migrate to stable Vitest 5 (#138264) 2026-09-06 04:17:59 +09:00
package-scripts.test.ts fix(build): publish declarations before smoke validation (#138621) 2026-09-04 16:04:18 -07:00
plugin-clawhub-release.test.ts fix(release): make plugin harness pin freshness advisory (#136918) 2026-09-02 20:42:32 -07:00
plugin-cron-registry-owner.e2e.test.ts fix(test): align recovery and history fixtures with runtime contracts (#139733) 2026-09-05 23:04:10 -07:00
plugin-extension-import-boundary.test.ts
plugin-npm-package-manifest.test.ts fix(release): resolve nested bundled optional dependencies (#142126) 2026-09-08 04:21:28 -07:00
plugin-npm-release.test.ts fix(release): make plugin harness pin freshness advisory (#136918) 2026-09-02 20:42:32 -07:00
plugin-npm-runtime-build.test.ts fix(plugins): resolve packaged setup and TSX build artifacts (#136458) 2026-09-02 16:31:00 -07:00
pr111899-accepted-run-transport-loss.e2e.test.ts fix(cli): identify accepted runs after agent transport loss (#111899) 2026-09-08 22:22:59 +05:30
pr119473-real-runtime-proof.e2e.test.ts
pr126853-heartbeat-visible-lane-proof.e2e.test.ts
pr142176-real-runtime-proof.e2e.test.ts fix(agents): retry silent malformed tool rejections (#142176) 2026-09-09 08:54:18 +05:30
qa-channel-message-tool-delivery.test.ts fix(qa-channel): keep implicit messages in their source thread (#137964) 2026-09-03 23:26:36 -07:00
qa-convex-credential-payload-validation.test.ts
release-check.test.ts fix(npm): verify plugin-owned runtime chunks (#141876) 2026-09-08 00:11:14 -07:00
release-version.test.ts refactor(release): share stable pin grammar (#135709) 2026-09-03 12:11:00 +08:00
repository-test-api-publications.ts refactor: simplify diagnostic, backup, and runtime ownership (#140369) 2026-09-06 11:54:33 -07:00
runtime-agent.codex-initialization.integration.test.ts
setup-home-isolation.test.ts
setup-openclaw-runtime.ts fix: close prepared model runtimes before auth teardown (#141280) 2026-09-07 09:08:23 -07:00
setup.env.ts
setup.extensions.ts
setup.shared.ts
setup.ts
skills-proposal-manual-target.e2e.test.ts fix(qa): align auth and Workshop proofs with runtime contracts (#142280) 2026-09-08 08:49:35 -07:00
slack-outbound-permanent-rejection-loopback.test.ts
stable-release-closeout.test.ts fix: close out stable releases after split publication recovery (#142291) 2026-09-08 10:23:45 -07:00
status-shared-state-readonly.e2e.test.ts
subagent-requester-owner.e2e.test.ts fix(subagents): completion can fail when requester key is unscoped (#141480) 2026-09-08 16:39:42 +05:30
system-agent-managed-auth.e2e.test.ts fix(setup): New Agent fails with protected provider credentials (#141586) 2026-09-07 17:40:04 -07:00
telegram-outbound-permanent-rejection-loopback.test.ts fix(telegram): replies are lost when the HTTP proxy refuses the tunnel (#140388) 2026-09-10 02:31:34 +05:30
telegram-question-gateway.test.ts
telegram-reply-conversation.test.ts fix(auto-reply): preserve automation conversation and delivery ownership (#133323) 2026-09-05 03:12:22 -07:00
test-env.state-lifetime.test.ts
test-env.test.ts
test-env.ts
test-helper-extension-import-boundary.test.ts
test-home-context.mts
test-home-policy.mts
transcripts-discord-audio.integration.test.ts fix(media): keep deferred audio and extraction providers discoverable (#139231) 2026-09-06 14:33:14 -07:00
transcripts-tool.discord-lifecycle.integration.test.ts fix(discord): keep recording independent of voice conversations (#139658) 2026-09-05 23:20:29 -07:00
transcripts-tool.discord-provider.integration.test.ts fix(discord): keep recording independent of voice conversations (#139658) 2026-09-05 23:20:29 -07:00
tsconfig.json
twitch-message-tool-delivery.test.ts
ui.presenter-next-run.test.ts
vitest-boundary-config.test.ts
vitest-cli-ownership.test.ts
vitest-dependency-resolution.test.ts
vitest-light-paths.test.ts
vitest-performance-config.test.ts chore(test): migrate to stable Vitest 5 (#138264) 2026-09-06 04:17:59 +09:00
vitest-projects-config.test-support.ts improve(test): avoid full builds for session history HTTP checks (#143096) 2026-09-09 22:04:58 +09:00
vitest-projects-config.test.ts perf(test): resolve the root project graph once in its owner (#141908) 2026-09-07 23:11:28 -07:00
vitest-reporters-config.test.ts perf(test): resolve the root project graph once in its owner (#141908) 2026-09-07 23:11:28 -07:00
vitest-scoped-config.test.ts improve(test): avoid full builds for session history HTTP checks (#143096) 2026-09-09 22:04:58 +09:00
vitest-ui-e2e-config.test.ts fix: worker input waits safely during setup and workspace sync (#137576) 2026-09-09 00:50:10 -07:00
vitest-ui-e2e-prebuilt.test.ts fix(update): keep old updaters able to restart the Gateway (#142195) 2026-09-08 10:43:46 -07:00
vitest-ui-package-config.test.ts chore(test): migrate to stable Vitest 5 (#138264) 2026-09-06 04:17:59 +09:00
vitest-unit-config.test.ts
vitest-unit-fast-config.test.ts perf(test): scope fast-test source analysis to CLI selections (#142912) 2026-09-09 00:41:31 -07:00
vitest-unit-paths.test.ts