oclaw/openclaw/test/helpers/plugins/directory.ts
oliver dbbe3add6a 重构主控编排与运行时预热链路,统一工作区提示词/专家调度协议并补齐 wiki 记忆注入与写回闭环。
同时收敛启动与运维脚本默认行为(含 wiki worker)、更新 Admin 可观测性与相关测试,降低首轮时延并提高运行稳定性。

Made-with: Cursor
2026-04-26 08:34:33 +08:00

33 lines
873 B
TypeScript

import type { ChannelDirectoryAdapter } from "openclaw/plugin-sdk/channel-contract";
type DirectorySurface = {
listPeers: NonNullable<ChannelDirectoryAdapter["listPeers"]>;
listGroups: NonNullable<ChannelDirectoryAdapter["listGroups"]>;
};
export function createDirectoryTestRuntime() {
return {
log: () => {},
error: () => {},
exit: (code: number): never => {
throw new Error(`exit ${code}`);
},
};
}
export function expectDirectorySurface(directory: unknown): DirectorySurface {
if (!directory || typeof directory !== "object") {
throw new Error("expected directory");
}
const { listPeers, listGroups } = directory as ChannelDirectoryAdapter;
if (!listPeers) {
throw new Error("expected listPeers");
}
if (!listGroups) {
throw new Error("expected listGroups");
}
return {
listPeers,
listGroups,
};
}