perf: avoid global config loads in approval tests

This commit is contained in:
Peter Steinberger
2026-04-28 01:41:07 +01:00
parent 4cc42a1d69
commit 2fe213ebf2
2 changed files with 17 additions and 8 deletions

View File

@@ -1,5 +1,6 @@
import { resolveStorePath } from "../config/sessions/paths.js";
import { loadSessionStore } from "../config/sessions/store-load.js";
import { resolveMaintenanceConfigFromInput } from "../config/sessions/store-maintenance.js";
import type { SessionEntry } from "../config/sessions/types.js";
import type { OpenClawConfig } from "../config/types.openclaw.js";
import { normalizeOptionalAccountId } from "../routing/account-id.js";
@@ -36,7 +37,9 @@ export function resolvePersistedApprovalRequestSessionEntry(params: {
const parsed = parseAgentSessionKey(sessionKey);
const agentId = parsed?.agentId ?? params.request.request.agentId ?? "main";
const storePath = resolveStorePath(params.cfg.session?.store, { agentId });
const store = loadSessionStore(storePath);
const store = loadSessionStore(storePath, {
maintenanceConfig: resolveMaintenanceConfigFromInput(params.cfg.session?.maintenance),
});
const entry = store[sessionKey];
if (!entry) {
return null;

View File

@@ -7,6 +7,12 @@ import {
} from "./approval-native-helpers.js";
import type { OpenClawConfig } from "./config-runtime.js";
const EMPTY_SESSION_CFG = {
session: {
store: ".artifacts/test/approval-native-helpers-empty-sessions.json",
},
} satisfies OpenClawConfig;
describe("createChannelNativeOriginTargetResolver", () => {
it("reuses shared turn-source routing and respects shouldHandle gating", () => {
const resolveOriginTarget = createChannelNativeOriginTargetResolver<NativeApprovalTarget>({
@@ -24,7 +30,7 @@ describe("createChannelNativeOriginTargetResolver", () => {
expect(
resolveOriginTarget({
cfg: {} as OpenClawConfig,
cfg: EMPTY_SESSION_CFG,
accountId: "ops",
request: {
id: "plugin:req-1",
@@ -47,7 +53,7 @@ describe("createChannelNativeOriginTargetResolver", () => {
expect(
resolveOriginTarget({
cfg: {} as OpenClawConfig,
cfg: EMPTY_SESSION_CFG,
accountId: "other",
request: {
id: "plugin:req-1",
@@ -90,7 +96,7 @@ describe("createChannelNativeOriginTargetResolver", () => {
expect(
resolveOriginTarget({
cfg: {} as OpenClawConfig,
cfg: EMPTY_SESSION_CFG,
request: {
id: "req-1",
request: {
@@ -120,7 +126,7 @@ describe("createChannelNativeOriginTargetResolver", () => {
expect(
resolveOriginTarget({
cfg: {} as OpenClawConfig,
cfg: EMPTY_SESSION_CFG,
request: {
id: "req-1",
request: {
@@ -149,7 +155,7 @@ describe("createChannelNativeOriginTargetResolver", () => {
expect(
resolveOriginTarget({
cfg: {} as OpenClawConfig,
cfg: EMPTY_SESSION_CFG,
request: {
id: "req-1",
request: {
@@ -178,7 +184,7 @@ describe("createChannelNativeOriginTargetResolver", () => {
expect(
resolveOriginTarget({
cfg: {} as OpenClawConfig,
cfg: EMPTY_SESSION_CFG,
request: {
id: "req-1",
request: {
@@ -206,7 +212,7 @@ describe("createChannelNativeOriginTargetResolver", () => {
expect(
resolveOriginTarget({
cfg: {} as OpenClawConfig,
cfg: EMPTY_SESSION_CFG,
request: {
id: "req-1",
request: {