diff --git a/CHANGELOG.md b/CHANGELOG.md index fe86bb74c568..6ff1c5cf22f9 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -7,6 +7,7 @@ Docs: https://docs.openclaw.ai ### Changes ### Fixes +- Tests: fail the kitchen-sink RPC Docker walk when gateway RSS sampling is unavailable instead of silently disabling the per-process memory guard. - Tests: suppress the current Rolldown plugin timing warning format in the Vitest wrapper so tiny focused runs do not drown useful stderr in repeated build-timing noise. - Crabbox: sync clean sparse-checkout remote changed gates from a temporary full checkout with local-only commits overlaid as worktree changes so git-backed script checks can seed the runner repository. - Tests: make startup memory and startup bench smoke scripts build CLI startup artifacts when run from a fresh source checkout. diff --git a/scripts/e2e/kitchen-sink-rpc-walk.mjs b/scripts/e2e/kitchen-sink-rpc-walk.mjs index 916363c12163..1803a3969a94 100644 --- a/scripts/e2e/kitchen-sink-rpc-walk.mjs +++ b/scripts/e2e/kitchen-sink-rpc-walk.mjs @@ -588,7 +588,7 @@ async function sampleWindowsProcess(pid, run) { export function assertResourceCeiling(sample) { if (!sample) { - return; + throw new Error("gateway RSS sample was not captured"); } if (sample.rssMiB > MAX_RSS_MIB) { throw new Error(`gateway RSS exceeded ${MAX_RSS_MIB} MiB: ${sample.rssMiB} MiB`); diff --git a/test/scripts/kitchen-sink-rpc-walk.test.ts b/test/scripts/kitchen-sink-rpc-walk.test.ts index b09173eb9100..421097f7fec4 100644 --- a/test/scripts/kitchen-sink-rpc-walk.test.ts +++ b/test/scripts/kitchen-sink-rpc-walk.test.ts @@ -52,4 +52,8 @@ describe("kitchen-sink RPC process sampling", () => { "gateway RSS exceeded 2048 MiB: 2049 MiB", ); }); + + it("fails when process sampling does not capture RSS", () => { + expect(() => assertResourceCeiling(null)).toThrow("gateway RSS sample was not captured"); + }); });