fix(cli): skip memory eager context warmup

This commit is contained in:
Neerav Makwana
2026-04-27 21:22:57 -04:00
committed by Peter Steinberger
parent 1945389374
commit 1106cc7fd2
4 changed files with 6 additions and 0 deletions

View File

@@ -33,6 +33,7 @@ Docs: https://docs.openclaw.ai
### Fixes
- CLI/memory: skip eager context-window warmup for `openclaw memory` commands so memory search does not race unrelated model metadata discovery. Fixes #73123. Thanks @oalansilva.
- Cron/providers: preflight local Ollama and OpenAI-compatible provider endpoints before isolated cron agent turns, record unreachable local providers as skipped runs, and cache dead-endpoint probes so many jobs do not hammer the same stopped local server. Fixes #58584. Thanks @jpeghead.
- Gateway/config: let config reload continue in degraded mode when invalidity is scoped to plugin entries, so incompatible plugin configs can be skipped and the Gateway restart can still pick up the rest of the config after rollbacks. Fixes #73131. Thanks @Adam-Researchh.
- Doctor/channels: suppress disabled bundled-plugin blocker warnings when a trusted external plugin owns the configured channel, so Lark/Feishu installs no longer get Feishu repair noise after switching to `openclaw-lark`. Fixes #56794. Thanks @wuji-tech-dev.

View File

@@ -19,6 +19,7 @@ describe("agents/context eager warmup", () => {
it.each([
["models", ["node", "openclaw", "models", "set", "openai/gpt-5.4"]],
["agent", ["node", "openclaw", "agent", "--message", "ok"]],
["memory", ["node", "openclaw", "memory", "search", "--json"]],
])("does not eager-load config for %s commands on import", async (_label, argv) => {
process.argv = argv;
await importFreshModule(import.meta.url, `./context.js?scope=${_label}`);

View File

@@ -222,6 +222,9 @@ describe("lookupContextTokens", () => {
expect(shouldEagerWarmContextWindowCache(["node", "openclaw", "logs", "--limit", "5"])).toBe(
false,
);
expect(
shouldEagerWarmContextWindowCache(["node", "openclaw", "memory", "search", "--json"]),
).toBe(false);
expect(shouldEagerWarmContextWindowCache(["node", "openclaw", "status", "--json"])).toBe(false);
expect(shouldEagerWarmContextWindowCache(["node", "openclaw", "sessions", "--json"])).toBe(
false,

View File

@@ -151,6 +151,7 @@ const SKIP_EAGER_WARMUP_PRIMARY_COMMANDS = new Set([
"health",
"hooks",
"logs",
"memory",
"models",
"pairing",
"plugins",