fix(ci): stabilize state-dir dependent tests

This commit is contained in:
Peter Steinberger
2026-02-15 17:57:13 +00:00
parent 813b96a804
commit be9b5cefbd
4 changed files with 53 additions and 24 deletions

View File

@@ -2,25 +2,28 @@ import os from "node:os";
import path from "node:path";
import type { OpenClawConfig } from "../config/config.js";
import { resolveAgentWorkspaceDir } from "../agents/agent-scope.js";
import { STATE_DIR } from "../config/paths.js";
import { resolveStateDir } from "../config/paths.js";
const STATIC_LOCAL_ROOTS = [
os.tmpdir(),
path.join(STATE_DIR, "media"),
path.join(STATE_DIR, "agents"),
path.join(STATE_DIR, "workspace"),
path.join(STATE_DIR, "sandboxes"),
] as const;
function buildMediaLocalRoots(stateDir: string): string[] {
const resolvedStateDir = path.resolve(stateDir);
return [
os.tmpdir(),
path.join(resolvedStateDir, "media"),
path.join(resolvedStateDir, "agents"),
path.join(resolvedStateDir, "workspace"),
path.join(resolvedStateDir, "sandboxes"),
];
}
export function getDefaultMediaLocalRoots(): readonly string[] {
return STATIC_LOCAL_ROOTS;
return buildMediaLocalRoots(resolveStateDir());
}
export function getAgentScopedMediaLocalRoots(
cfg: OpenClawConfig,
agentId?: string,
): readonly string[] {
const roots = [...STATIC_LOCAL_ROOTS];
const roots = buildMediaLocalRoots(resolveStateDir());
if (!agentId?.trim()) {
return roots;
}